From cec5307b60c8a6b4776897b6527ab632090bde8a Mon Sep 17 00:00:00 2001 From: xzl Date: Fri, 25 Apr 2025 14:37:01 +0800 Subject: [PATCH] feat: update flatpak to 1.16.0 Application deployment framework for desktop apps Issue: https://github.com/deepin-community/sig-deepin-sysdev-team/issues/558 Log: update repo --- .devcontainer/devcontainer.json | 10 + .editorconfig | 17 + ABOUT-NLS | 1282 - CODE_OF_CONDUCT.md | 84 + CONTRIBUTING.md | 145 + INSTALL | 0 Makefile.am | 222 - Makefile.in | 7969 ----- NEWS | 540 +- README.md | 4 + SECURITY.md | 46 + acinclude.m4 | 429 - aclocal.m4 | 2103 -- app/Makefile.am.inc | 160 - app/flatpak-builtins-build-bundle.c | 1 + app/flatpak-builtins-build-commit-from.c | 7 +- app/flatpak-builtins-build-export.c | 9 +- app/flatpak-builtins-build-finish.c | 24 +- app/flatpak-builtins-build-import-bundle.c | 3 +- app/flatpak-builtins-build-sign.c | 1 + app/flatpak-builtins-build-update-repo.c | 3 +- app/flatpak-builtins-build.c | 6 +- app/flatpak-builtins-create-usb.c | 12 +- app/flatpak-builtins-info.c | 14 +- app/flatpak-builtins-install.c | 1 + app/flatpak-builtins-kill.c | 2 +- app/flatpak-builtins-list.c | 5 +- app/flatpak-builtins-permission-list.c | 4 +- app/flatpak-builtins-ps.c | 2 +- app/flatpak-builtins-remote-add.c | 2 + app/flatpak-builtins-remote-info.c | 5 +- app/flatpak-builtins-remote-ls.c | 16 +- app/flatpak-builtins-repair.c | 34 +- app/flatpak-builtins-repo.c | 9 +- app/flatpak-builtins-run.c | 4 + app/flatpak-builtins-search.c | 12 +- app/flatpak-builtins-uninstall.c | 10 +- app/flatpak-builtins-utils.c | 53 +- app/flatpak-builtins.h | 3 + app/flatpak-cli-transaction.c | 103 +- app/flatpak-complete.c | 7 +- app/flatpak-complete.h | 2 +- app/flatpak-main.c | 30 +- app/flatpak-polkit-agent-text-listener.c | 1 + app/flatpak-quiet-transaction.c | 20 +- app/flatpak-table-printer.c | 10 +- app/flatpak-tty-utils-private.h | 89 + app/flatpak-tty-utils.c | 558 + app/meson.build | 144 + autogen.sh | 44 - buildutil/glib-tap.mk | 131 - buildutil/tap-driver.sh | 652 - common/Makefile.am.inc | 318 - common/flatpak-bundle-ref.c | 1 + common/flatpak-bwrap-private.h | 4 + common/flatpak-bwrap.c | 49 +- common/flatpak-context-private.h | 35 +- common/flatpak-context.c | 609 +- common/flatpak-dir-private.h | 64 +- common/flatpak-dir-utils-private.h | 85 + common/flatpak-dir-utils.c | 586 + common/flatpak-dir.c | 906 +- common/flatpak-exports-private.h | 2 + common/flatpak-exports.c | 84 +- common/flatpak-glib-backports-private.h | 175 + common/flatpak-glib-backports.c | 866 + common/flatpak-installation.c | 75 +- common/flatpak-instance-private.h | 8 +- common/flatpak-instance.c | 182 +- common/flatpak-json-backports-private.h | 35 + common/flatpak-json-oci.c | 3 + common/flatpak-locale-utils-private.h | 44 + common/flatpak-locale-utils.c | 384 + common/flatpak-metadata-private.h | 112 + common/flatpak-oci-registry-private.h | 41 +- common/flatpak-oci-registry.c | 475 +- common/flatpak-parental-controls.c | 8 +- common/flatpak-progress.c | 2 +- common/flatpak-prune-private.h | 2 + common/flatpak-prune.c | 26 +- common/flatpak-ref-utils-private.h | 1 - common/flatpak-ref-utils.c | 48 +- common/flatpak-ref.c | 1 + common/flatpak-remote-ref.c | 7 +- common/flatpak-remote.c | 3 +- common/flatpak-repo-utils-private.h | 294 + common/flatpak-repo-utils.c | 3947 +++ .../flatpak-run-cups-private.h | 22 +- common/flatpak-run-cups.c | 127 + common/flatpak-run-dbus-private.h | 53 + common/flatpak-run-dbus.c | 464 + common/flatpak-run-private.h | 134 +- common/flatpak-run-pulseaudio-private.h | 34 + common/flatpak-run-pulseaudio.c | 338 + common/flatpak-run-sockets-private.h | 39 + common/flatpak-run-sockets.c | 240 + common/flatpak-run-wayland-private.h | 37 + common/flatpak-run-wayland.c | 328 + common/flatpak-run-x11-private.h | 42 + common/flatpak-run-x11.c | 333 + common/flatpak-run.c | 1765 +- common/flatpak-transaction.c | 267 +- common/flatpak-transaction.h | 8 + common/flatpak-usb-private.h | 97 + common/flatpak-usb.c | 449 + common/flatpak-utils-base-private.h | 5 +- common/flatpak-utils-base.c | 44 +- common/flatpak-utils-http.c | 16 +- common/flatpak-utils-private.h | 618 +- common/flatpak-utils.c | 7796 +---- common/flatpak-version-macros.h | 75 - common/flatpak-xml-utils-private.h | 63 + common/flatpak-xml-utils.c | 560 + common/meson.build | 307 + compile | 348 - completion/meson.build | 15 + config.guess | 1754 -- config.h.in | 257 - config.rpath | 690 - config.sub | 1890 -- configure | 24534 ---------------- configure.ac | 653 - data/Makefile.am.inc | 19 - data/meson.build | 13 + data/org.freedesktop.portal.Flatpak.xml | 15 +- debian/changelog | 187 + debian/control | 19 +- debian/copyright | 87 +- debian/flathub.flatpakrepo | 9 + debian/flatpak.README.Debian | 7 + debian/flatpak.examples | 1 + debian/flatpak.install | 1 - debian/flatpak.lintian-overrides | 1 - debian/gbp.conf | 2 +- debian/libflatpak0.symbols | 457 +- debian/org.freedesktop.Flatpak.pkla | 11 - ...ian-s-canonical-home-directory-for-s.patch | 17 + debian/patches/series | 1 + debian/rules | 44 +- debian/salsa-ci.yml | 4 +- debian/test.sh | 16 +- debian/upstream/metadata | 5 +- debian/watch | 4 +- depcomp | 791 - doc/Makefile.am | 111 - doc/Makefile.in | 1015 - doc/flatpak-build-finish.xml | 112 +- doc/flatpak-build.xml | 8 +- doc/flatpak-config.xml | 2 +- doc/flatpak-docs.xml.in | 4 +- doc/flatpak-install.xml | 2 +- doc/flatpak-metadata.xml | 63 +- doc/flatpak-override.xml | 11 +- doc/flatpak-remote-add.xml | 2 +- doc/flatpak-remote.xml | 6 +- doc/flatpak-run.xml | 112 +- doc/flatpak-summaries.txt | 52 + doc/flatpak.xml | 32 +- ...{flatpak-flatpakref.xml => flatpakref.xml} | 6 +- ...latpak-flatpakrepo.xml => flatpakrepo.xml} | 16 +- doc/meson.build | 155 + doc/reference/.gitignore | 19 + doc/reference/Makefile.am | 97 - doc/reference/Makefile.in | 1335 - doc/reference/flatpak-overrides.txt | 0 doc/reference/flatpak-sections.txt | 1 + doc/reference/flatpak.types | 11 - doc/reference/html/FlatpakBundleRef.html | 401 - doc/reference/html/FlatpakInstallation.html | 4175 --- doc/reference/html/FlatpakInstalledRef.html | 906 - doc/reference/html/FlatpakInstance.html | 503 - doc/reference/html/FlatpakRef.html | 529 - doc/reference/html/FlatpakRelatedRef.html | 355 - doc/reference/html/FlatpakRemote.html | 1636 -- doc/reference/html/FlatpakRemoteRef.html | 394 - doc/reference/html/FlatpakTransaction.html | 2345 -- .../html/FlatpakTransactionOperation.html | 463 - .../html/FlatpakTransactionProgress.html | 350 - doc/reference/html/annotation-glossary.html | 69 - doc/reference/html/ch01.html | 70 - doc/reference/html/ch02.html | 58 - doc/reference/html/flatpak-Error-codes.html | 356 - .../html/flatpak-Version-information.html | 141 - doc/reference/html/flatpak.devhelp2 | 447 - doc/reference/html/full-api-index.html | 1174 - ...org.freedesktop.Flatpak.Authenticator.html | 271 - ...edesktop.Flatpak.AuthenticatorRequest.html | 266 - ...s-org.freedesktop.Flatpak.Development.html | 294 - ...org.freedesktop.Flatpak.SessionHelper.html | 117 - ...-org.freedesktop.Flatpak.SystemHelper.html | 977 - ...eedesktop.impl.portal.PermissionStore.html | 483 - ...dbus-org.freedesktop.portal.Documents.html | 653 - ...edesktop.portal.Flatpak.UpdateMonitor.html | 277 - .../gdbus-org.freedesktop.portal.Flatpak.html | 399 - doc/reference/html/home.png | Bin 256 -> 0 bytes doc/reference/html/index.html | 105 - doc/reference/html/left-insensitive.png | Bin 395 -> 0 bytes doc/reference/html/left.png | Bin 262 -> 0 bytes doc/reference/html/object-tree.html | 43 - doc/reference/html/right-insensitive.png | Bin 373 -> 0 bytes doc/reference/html/right.png | Bin 261 -> 0 bytes doc/reference/html/style.css | 531 - doc/reference/html/up-insensitive.png | Bin 374 -> 0 bytes doc/reference/html/up.png | Bin 260 -> 0 bytes doc/reference/meson.build | 74 + doc/release-checklist.md | 31 + env.d/meson.build | 23 + flatpak.pc.in | 19 - gtk-doc.make | 322 - icon-validator/Makefile.am.inc | 7 - icon-validator/meson.build | 12 + icon-validator/validate-icon.c | 8 +- install-sh | 541 - ltmain.sh | 11436 ------- m4/attributes.m4 | 292 - m4/gettext.m4 | 401 - m4/glibtests.m4 | 28 - m4/gtk-doc.m4 | 113 - m4/iconv.m4 | 268 - m4/intlmacosx.m4 | 56 - m4/lib-ld.m4 | 119 - m4/lib-link.m4 | 777 - m4/lib-prefix.m4 | 224 - m4/libtool.m4 | 8427 ------ m4/ltoptions.m4 | 437 - m4/ltsugar.m4 | 124 - m4/ltversion.m4 | 24 - m4/lt~obsolete.m4 | 99 - m4/nls.m4 | 32 - m4/po.m4 | 452 - m4/progtest.m4 | 91 - meson.build | 547 + meson_options.txt | 246 + missing | 215 - oci-authenticator/Makefile.am.inc | 28 - oci-authenticator/flatpak-oci-authenticator.c | 38 +- oci-authenticator/meson.build | 35 + po/LINGUAS | 2 + po/Makefile.in.in | 453 - po/POTFILES.in | 5 + po/POTFILES.skip | 3 + po/Rules-quot | 47 - po/boldquot.sed | 10 - po/cs.gmo | Bin 100014 -> 0 bytes po/cs.po | 2274 +- po/da.gmo | Bin 101035 -> 0 bytes po/da.po | 2209 +- po/de.gmo | Bin 72168 -> 0 bytes po/de.po | 2189 +- po/en@boldquot.header | 25 - po/en@quot.header | 22 - po/en_GB.gmo | Bin 79288 -> 0 bytes po/en_GB.po | 2217 +- po/es.gmo | Bin 82298 -> 0 bytes po/es.po | 3176 +- po/fr.gmo | Bin 2735 -> 0 bytes po/fr.po | 2120 +- po/gl.gmo | Bin 42023 -> 0 bytes po/gl.po | 2188 +- po/hi.gmo | Bin 152964 -> 0 bytes po/hi.po | 4655 ++- po/hr.gmo | Bin 105323 -> 0 bytes po/hr.po | 2212 +- po/hu.gmo | Bin 47294 -> 0 bytes po/hu.po | 2189 +- po/id.gmo | Bin 109618 -> 0 bytes po/id.po | 2249 +- po/insert-header.sin | 23 - po/ka.po | 6126 ++++ po/meson.build | 10 + po/{flatpak.pot => nl.po} | 4089 +-- po/oc.gmo | Bin 7529 -> 0 bytes po/oc.po | 2379 +- po/pl.gmo | Bin 120611 -> 0 bytes po/pl.po | 2185 +- po/pt.gmo | Bin 107149 -> 0 bytes po/pt.po | 2211 +- po/pt_BR.gmo | Bin 113399 -> 0 bytes po/pt_BR.po | 2253 +- po/quot.sed | 6 - po/remove-potcdate.sin | 19 - po/ro.gmo | Bin 100838 -> 0 bytes po/ro.po | 2219 +- po/ru.gmo | Bin 145549 -> 0 bytes po/ru.po | 2498 +- po/sk.gmo | Bin 10870 -> 0 bytes po/sk.po | 2170 +- po/stamp-po | 1 - po/sv.gmo | Bin 111968 -> 0 bytes po/sv.po | 2255 +- po/tr.gmo | Bin 106371 -> 0 bytes po/tr.po | 2686 +- po/uk.gmo | Bin 153759 -> 0 bytes po/uk.po | 2215 +- po/zh_CN.gmo | Bin 97979 -> 0 bytes po/zh_CN.po | 2583 +- po/zh_TW.gmo | Bin 86977 -> 0 bytes po/zh_TW.po | 2207 +- portal/Makefile.am.inc | 64 - portal/flatpak-portal-app-info.c | 11 +- portal/flatpak-portal-app-info.h | 18 +- portal/flatpak-portal.c | 231 +- portal/meson.build | 59 + portal/portal-impl.c | 12 +- profile/flatpak.csh | 20 + profile/meson.build | 12 + revokefs/Makefile.am.inc | 32 - revokefs/demo.c | 8 +- revokefs/main.c | 31 +- revokefs/meson.build | 24 + scripts/meson.build | 9 + selinux/Makefile.am.inc | 22 - selinux/meson.build | 21 + session-helper/Makefile.am.inc | 17 - session-helper/flatpak-session-helper.c | 46 +- session-helper/meson.build | 29 + sideload-repos-systemd/Makefile.am.inc | 19 - sideload-repos-systemd/meson.build | 27 + subprojects/.gitignore | 2 + subprojects/Makefile-bwrap.am.inc | 12 - subprojects/README.md | 60 + subprojects/bubblewrap.wrap | 5 + subprojects/bubblewrap/bind-mount.c | 547 - subprojects/bubblewrap/bind-mount.h | 55 - subprojects/bubblewrap/bubblewrap.c | 3292 --- subprojects/bubblewrap/network.c | 199 - subprojects/bubblewrap/utils.c | 891 - subprojects/bubblewrap/utils.h | 183 - subprojects/dbus-proxy.wrap | 5 + subprojects/dbus-proxy/backport-autoptr.h | 234 - subprojects/dbus-proxy/dbus-proxy.c | 433 - subprojects/dbus-proxy/flatpak-proxy.c | 2875 -- subprojects/dbus-proxy/flatpak-proxy.h | 68 - subprojects/libglnx/.gitignore | 21 + subprojects/libglnx/.gitlab-ci.yml | 41 + .../LICENSES/LicenseRef-old-glib-tests.txt | 16 + .../Makefile-libglnx.am} | 74 +- subprojects/libglnx/glnx-backport-testutils.c | 162 + subprojects/libglnx/glnx-backport-testutils.h | 209 + subprojects/libglnx/glnx-backports.c | 446 +- subprojects/libglnx/glnx-backports.h | 113 +- subprojects/libglnx/glnx-dirfd.c | 4 +- subprojects/libglnx/glnx-fdio.c | 21 +- subprojects/libglnx/glnx-local-alloc.h | 15 +- subprojects/libglnx/glnx-lockfile.c | 2 +- subprojects/libglnx/glnx-missing-syscall.h | 81 + subprojects/libglnx/glnx-missing.h | 8 + subprojects/libglnx/glnx-shutil.c | 4 +- subprojects/libglnx/glnx-xattrs.c | 2 +- subprojects/libglnx/libglnx.doap | 35 + subprojects/libglnx/libglnx.h | 1 + subprojects/libglnx/libglnx.m4 | 4 + subprojects/libglnx/meson.build | 113 + subprojects/libglnx/meson_options.txt | 9 + subprojects/libglnx/tests/libglnx-testlib.c | 3 +- subprojects/libglnx/tests/meson.build | 58 + .../libglnx/tests/test-libglnx-backports.c | 299 + .../libglnx/tests/test-libglnx-macros.c | 8 + .../libglnx/tests/test-libglnx-shutil.c | 42 +- .../libglnx/tests/test-libglnx-testing.c | 371 + subprojects/libglnx/tests/testing-helper.c | 342 + .../tests/use-as-subproject/.gitignore | 5 + .../libglnx/tests/use-as-subproject/README | 8 + .../libglnx/tests/use-as-subproject/config.h | 6 + .../tests/use-as-subproject/dummy-config.h.in | 6 + .../tests/use-as-subproject/meson.build | 48 + .../libglnx/tests/use-as-subproject/trivial.c | 15 + .../tests/use-as-subproject/use-libglnx.c | 16 + .../tests/use-as-subproject/use-testlib.c | 17 + .../variant-schema-compiler/.gitignore | 6 + subprojects/variant-schema-compiler/COPYING | 23 + subprojects/variant-schema-compiler/Makefile | 41 + subprojects/variant-schema-compiler/README.md | 104 + subprojects/variant-schema-compiler/TODO.md | 6 + subprojects/variant-schema-compiler/ostree.gv | 100 + .../variant-schema-compiler/ostree_test.c | 55 + .../variant-schema-compiler/performance.c | 127 + .../variant-schema-compiler/performance.gv | 14 + subprojects/variant-schema-compiler/sample.c | 122 + subprojects/variant-schema-compiler/sample.gv | 53 + .../variant-schema-compiler/selftests.c | 52 + system-helper/Makefile.am.inc | 50 - system-helper/flatpak-system-helper.c | 64 +- system-helper/meson.build | 64 + test-driver | 153 - tests/Makefile-test-matrix.am.inc | 61 - tests/Makefile.am.inc | 318 - tests/can-use-fuse.c | 6 +- tests/expand-test-matrix.sh | 27 +- tests/flatpak-asan.supp | 10 + tests/flatpak.supp | 8 + tests/gphoto2-list | 2598 ++ tests/httpcache.c | 4 +- tests/installed-services/meson.build | 47 + tests/installed-tests.sh.in | 4 + tests/libtest.sh | 10 +- tests/list-unused.c | 13 +- tests/make-test-app.sh | 18 +- tests/meson.build | 416 + tests/mock-flatpak.c | 2 +- tests/package_version.txt | 1 - tests/package_version.txt.in | 1 + tests/services/meson.build | 28 + .../xdg-desktop-portal/portals/meson.build | 6 + tests/tap.test.in | 4 + tests/test-authenticator.c | 26 +- tests/test-context.c | 404 +- tests/test-exports.c | 42 +- tests/test-instance.c | 2 +- tests/test-keyring/meson.build | 17 + tests/test-keyring2/meson.build | 17 + tests/test-locale-utils.c | 212 + tests/test-matrix/meson.build | 45 + tests/test-portal-impl.c | 6 +- tests/test-portal.c | 7 +- tests/test-prune.sh | 22 +- tests/test-repo.sh | 24 +- tests/test-run.sh | 19 +- tests/test-unused.sh | 16 +- tests/test-update-portal.c | 8 +- tests/testapp.c | 589 + tests/testcommon.c | 650 +- tests/testlib.h | 53 +- tests/testlibrary.c | 225 +- tests/update-test-matrix | 2 +- tools/usb/README.md | 24 + tools/usb/epsonscan2-parse.py | 43 + tools/usb/gphoto2-parse.py | 38 + tools/usb/libsane-parse.py | 37 + tools/usb/utsushi-parse.py | 36 + triggers/meson.build | 9 + uncrustify.cfg | 139 + uncrustify.sh | 2 + 433 files changed, 63127 insertions(+), 140926 deletions(-) create mode 100644 .devcontainer/devcontainer.json create mode 100644 .editorconfig delete mode 100644 ABOUT-NLS create mode 100644 CODE_OF_CONDUCT.md create mode 100644 CONTRIBUTING.md delete mode 100644 INSTALL delete mode 100644 Makefile.am delete mode 100644 Makefile.in create mode 100644 SECURITY.md delete mode 100644 acinclude.m4 delete mode 100644 aclocal.m4 delete mode 100644 app/Makefile.am.inc create mode 100644 app/flatpak-tty-utils-private.h create mode 100644 app/flatpak-tty-utils.c create mode 100644 app/meson.build delete mode 100755 autogen.sh delete mode 100644 buildutil/glib-tap.mk delete mode 100755 buildutil/tap-driver.sh delete mode 100644 common/Makefile.am.inc create mode 100644 common/flatpak-dir-utils-private.h create mode 100644 common/flatpak-dir-utils.c create mode 100644 common/flatpak-glib-backports-private.h create mode 100644 common/flatpak-glib-backports.c create mode 100644 common/flatpak-json-backports-private.h create mode 100644 common/flatpak-locale-utils-private.h create mode 100644 common/flatpak-locale-utils.c create mode 100644 common/flatpak-metadata-private.h create mode 100644 common/flatpak-repo-utils-private.h create mode 100644 common/flatpak-repo-utils.c rename subprojects/bubblewrap/network.h => common/flatpak-run-cups-private.h (57%) create mode 100644 common/flatpak-run-cups.c create mode 100644 common/flatpak-run-dbus-private.h create mode 100644 common/flatpak-run-dbus.c create mode 100644 common/flatpak-run-pulseaudio-private.h create mode 100644 common/flatpak-run-pulseaudio.c create mode 100644 common/flatpak-run-sockets-private.h create mode 100644 common/flatpak-run-sockets.c create mode 100644 common/flatpak-run-wayland-private.h create mode 100644 common/flatpak-run-wayland.c create mode 100644 common/flatpak-run-x11-private.h create mode 100644 common/flatpak-run-x11.c create mode 100644 common/flatpak-usb-private.h create mode 100644 common/flatpak-usb.c delete mode 100644 common/flatpak-version-macros.h create mode 100644 common/flatpak-xml-utils-private.h create mode 100644 common/flatpak-xml-utils.c create mode 100644 common/meson.build delete mode 100755 compile create mode 100644 completion/meson.build delete mode 100755 config.guess delete mode 100644 config.h.in delete mode 100755 config.rpath delete mode 100755 config.sub delete mode 100755 configure delete mode 100644 configure.ac delete mode 100644 data/Makefile.am.inc create mode 100644 data/meson.build create mode 100644 debian/flathub.flatpakrepo delete mode 100644 debian/org.freedesktop.Flatpak.pkla create mode 100644 debian/patches/debian/system-helper-Set-Debian-s-canonical-home-directory-for-s.patch create mode 100644 debian/patches/series delete mode 100755 depcomp delete mode 100644 doc/Makefile.am delete mode 100644 doc/Makefile.in create mode 100644 doc/flatpak-summaries.txt rename doc/{flatpak-flatpakref.xml => flatpakref.xml} (97%) rename doc/{flatpak-flatpakrepo.xml => flatpakrepo.xml} (92%) create mode 100644 doc/meson.build create mode 100644 doc/reference/.gitignore delete mode 100644 doc/reference/Makefile.am delete mode 100644 doc/reference/Makefile.in delete mode 100644 doc/reference/flatpak-overrides.txt delete mode 100644 doc/reference/flatpak.types delete mode 100644 doc/reference/html/FlatpakBundleRef.html delete mode 100644 doc/reference/html/FlatpakInstallation.html delete mode 100644 doc/reference/html/FlatpakInstalledRef.html delete mode 100644 doc/reference/html/FlatpakInstance.html delete mode 100644 doc/reference/html/FlatpakRef.html delete mode 100644 doc/reference/html/FlatpakRelatedRef.html delete mode 100644 doc/reference/html/FlatpakRemote.html delete mode 100644 doc/reference/html/FlatpakRemoteRef.html delete mode 100644 doc/reference/html/FlatpakTransaction.html delete mode 100644 doc/reference/html/FlatpakTransactionOperation.html delete mode 100644 doc/reference/html/FlatpakTransactionProgress.html delete mode 100644 doc/reference/html/annotation-glossary.html delete mode 100644 doc/reference/html/ch01.html delete mode 100644 doc/reference/html/ch02.html delete mode 100644 doc/reference/html/flatpak-Error-codes.html delete mode 100644 doc/reference/html/flatpak-Version-information.html delete mode 100644 doc/reference/html/flatpak.devhelp2 delete mode 100644 doc/reference/html/full-api-index.html delete mode 100644 doc/reference/html/gdbus-org.freedesktop.Flatpak.Authenticator.html delete mode 100644 doc/reference/html/gdbus-org.freedesktop.Flatpak.AuthenticatorRequest.html delete mode 100644 doc/reference/html/gdbus-org.freedesktop.Flatpak.Development.html delete mode 100644 doc/reference/html/gdbus-org.freedesktop.Flatpak.SessionHelper.html delete mode 100644 doc/reference/html/gdbus-org.freedesktop.Flatpak.SystemHelper.html delete mode 100644 doc/reference/html/gdbus-org.freedesktop.impl.portal.PermissionStore.html delete mode 100644 doc/reference/html/gdbus-org.freedesktop.portal.Documents.html delete mode 100644 doc/reference/html/gdbus-org.freedesktop.portal.Flatpak.UpdateMonitor.html delete mode 100644 doc/reference/html/gdbus-org.freedesktop.portal.Flatpak.html delete mode 100644 doc/reference/html/home.png delete mode 100644 doc/reference/html/index.html delete mode 100644 doc/reference/html/left-insensitive.png delete mode 100644 doc/reference/html/left.png delete mode 100644 doc/reference/html/object-tree.html delete mode 100644 doc/reference/html/right-insensitive.png delete mode 100644 doc/reference/html/right.png delete mode 100644 doc/reference/html/style.css delete mode 100644 doc/reference/html/up-insensitive.png delete mode 100644 doc/reference/html/up.png create mode 100644 doc/reference/meson.build create mode 100644 doc/release-checklist.md create mode 100644 env.d/meson.build delete mode 100644 flatpak.pc.in delete mode 100644 gtk-doc.make delete mode 100644 icon-validator/Makefile.am.inc create mode 100644 icon-validator/meson.build delete mode 100755 install-sh delete mode 100755 ltmain.sh delete mode 100644 m4/attributes.m4 delete mode 100644 m4/gettext.m4 delete mode 100644 m4/glibtests.m4 delete mode 100644 m4/gtk-doc.m4 delete mode 100644 m4/iconv.m4 delete mode 100644 m4/intlmacosx.m4 delete mode 100644 m4/lib-ld.m4 delete mode 100644 m4/lib-link.m4 delete mode 100644 m4/lib-prefix.m4 delete mode 100644 m4/libtool.m4 delete mode 100644 m4/ltoptions.m4 delete mode 100644 m4/ltsugar.m4 delete mode 100644 m4/ltversion.m4 delete mode 100644 m4/lt~obsolete.m4 delete mode 100644 m4/nls.m4 delete mode 100644 m4/po.m4 delete mode 100644 m4/progtest.m4 create mode 100644 meson.build create mode 100644 meson_options.txt delete mode 100755 missing delete mode 100644 oci-authenticator/Makefile.am.inc create mode 100644 oci-authenticator/meson.build delete mode 100644 po/Makefile.in.in create mode 100644 po/POTFILES.skip delete mode 100644 po/Rules-quot delete mode 100644 po/boldquot.sed delete mode 100644 po/cs.gmo delete mode 100644 po/da.gmo delete mode 100644 po/de.gmo delete mode 100644 po/en@boldquot.header delete mode 100644 po/en@quot.header delete mode 100644 po/en_GB.gmo delete mode 100644 po/es.gmo delete mode 100644 po/fr.gmo delete mode 100644 po/gl.gmo delete mode 100644 po/hi.gmo delete mode 100644 po/hr.gmo delete mode 100644 po/hu.gmo delete mode 100644 po/id.gmo delete mode 100644 po/insert-header.sin create mode 100644 po/ka.po create mode 100644 po/meson.build rename po/{flatpak.pot => nl.po} (56%) delete mode 100644 po/oc.gmo delete mode 100644 po/pl.gmo delete mode 100644 po/pt.gmo delete mode 100644 po/pt_BR.gmo delete mode 100644 po/quot.sed delete mode 100644 po/remove-potcdate.sin delete mode 100644 po/ro.gmo delete mode 100644 po/ru.gmo delete mode 100644 po/sk.gmo delete mode 100644 po/stamp-po delete mode 100644 po/sv.gmo delete mode 100644 po/tr.gmo delete mode 100644 po/uk.gmo delete mode 100644 po/zh_CN.gmo delete mode 100644 po/zh_TW.gmo delete mode 100644 portal/Makefile.am.inc create mode 100644 portal/meson.build create mode 100644 profile/flatpak.csh create mode 100644 profile/meson.build delete mode 100644 revokefs/Makefile.am.inc create mode 100644 revokefs/meson.build create mode 100644 scripts/meson.build delete mode 100644 selinux/Makefile.am.inc create mode 100644 selinux/meson.build delete mode 100644 session-helper/Makefile.am.inc create mode 100644 session-helper/meson.build delete mode 100644 sideload-repos-systemd/Makefile.am.inc create mode 100644 sideload-repos-systemd/meson.build create mode 100644 subprojects/.gitignore delete mode 100644 subprojects/Makefile-bwrap.am.inc create mode 100644 subprojects/README.md create mode 100644 subprojects/bubblewrap.wrap delete mode 100644 subprojects/bubblewrap/bind-mount.c delete mode 100644 subprojects/bubblewrap/bind-mount.h delete mode 100644 subprojects/bubblewrap/bubblewrap.c delete mode 100644 subprojects/bubblewrap/network.c delete mode 100644 subprojects/bubblewrap/utils.c delete mode 100644 subprojects/bubblewrap/utils.h create mode 100644 subprojects/dbus-proxy.wrap delete mode 100644 subprojects/dbus-proxy/backport-autoptr.h delete mode 100644 subprojects/dbus-proxy/dbus-proxy.c delete mode 100644 subprojects/dbus-proxy/flatpak-proxy.c delete mode 100644 subprojects/dbus-proxy/flatpak-proxy.h create mode 100644 subprojects/libglnx/.gitignore create mode 100644 subprojects/libglnx/.gitlab-ci.yml create mode 100644 subprojects/libglnx/LICENSES/LicenseRef-old-glib-tests.txt rename subprojects/{Makefile-libglnx.am.inc => libglnx/Makefile-libglnx.am} (52%) create mode 100644 subprojects/libglnx/glnx-backport-testutils.c create mode 100644 subprojects/libglnx/glnx-backport-testutils.h create mode 100644 subprojects/libglnx/libglnx.doap create mode 100644 subprojects/libglnx/meson.build create mode 100644 subprojects/libglnx/meson_options.txt create mode 100644 subprojects/libglnx/tests/meson.build create mode 100644 subprojects/libglnx/tests/test-libglnx-backports.c create mode 100644 subprojects/libglnx/tests/test-libglnx-testing.c create mode 100644 subprojects/libglnx/tests/testing-helper.c create mode 100644 subprojects/libglnx/tests/use-as-subproject/.gitignore create mode 100644 subprojects/libglnx/tests/use-as-subproject/README create mode 100644 subprojects/libglnx/tests/use-as-subproject/config.h create mode 100644 subprojects/libglnx/tests/use-as-subproject/dummy-config.h.in create mode 100644 subprojects/libglnx/tests/use-as-subproject/meson.build create mode 100644 subprojects/libglnx/tests/use-as-subproject/trivial.c create mode 100644 subprojects/libglnx/tests/use-as-subproject/use-libglnx.c create mode 100644 subprojects/libglnx/tests/use-as-subproject/use-testlib.c create mode 100644 subprojects/variant-schema-compiler/.gitignore create mode 100644 subprojects/variant-schema-compiler/COPYING create mode 100644 subprojects/variant-schema-compiler/Makefile create mode 100644 subprojects/variant-schema-compiler/README.md create mode 100644 subprojects/variant-schema-compiler/TODO.md create mode 100644 subprojects/variant-schema-compiler/ostree.gv create mode 100644 subprojects/variant-schema-compiler/ostree_test.c create mode 100644 subprojects/variant-schema-compiler/performance.c create mode 100644 subprojects/variant-schema-compiler/performance.gv create mode 100644 subprojects/variant-schema-compiler/sample.c create mode 100644 subprojects/variant-schema-compiler/sample.gv create mode 100644 subprojects/variant-schema-compiler/selftests.c delete mode 100644 system-helper/Makefile.am.inc create mode 100644 system-helper/meson.build delete mode 100755 test-driver delete mode 100644 tests/Makefile-test-matrix.am.inc delete mode 100644 tests/Makefile.am.inc create mode 100644 tests/flatpak-asan.supp create mode 100644 tests/gphoto2-list create mode 100644 tests/installed-services/meson.build create mode 100644 tests/installed-tests.sh.in create mode 100644 tests/meson.build delete mode 100644 tests/package_version.txt create mode 100644 tests/package_version.txt.in create mode 100644 tests/services/meson.build create mode 100644 tests/share/xdg-desktop-portal/portals/meson.build create mode 100644 tests/tap.test.in create mode 100644 tests/test-keyring/meson.build create mode 100644 tests/test-keyring2/meson.build create mode 100644 tests/test-locale-utils.c create mode 100644 tests/test-matrix/meson.build create mode 100644 tests/testapp.c create mode 100644 tools/usb/README.md create mode 100755 tools/usb/epsonscan2-parse.py create mode 100755 tools/usb/gphoto2-parse.py create mode 100755 tools/usb/libsane-parse.py create mode 100755 tools/usb/utsushi-parse.py create mode 100644 triggers/meson.build create mode 100644 uncrustify.cfg create mode 100755 uncrustify.sh diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 0000000..9f3ed1f --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,10 @@ +{ + "name": "Ubuntu", + "image": "mcr.microsoft.com/devcontainers/base:jammy", + "features": { + "ghcr.io/rocker-org/devcontainer-features/apt-packages:1": { + "packages": "policykit-1,libappstream-dev,bison,meson,attr,autopoint,bubblewrap,debhelper,desktop-file-utils,dh-autoreconf,dh-exec,dh-strip-nondeterminism,docbook,docbook-to-man,docbook-xml,docbook-xsl,dwz,fuse,gir1.2-appstreamglib-1.0,gir1.2-freedesktop,gir1.2-gcab-1.0,gir1.2-gdkpixbuf-2.0,gir1.2-json-1.0,gir1.2-ostree-1.0,gir1.2-polkit-1.0,gir1.2-soup-2.4,gobject-introspection,gtk-doc-tools,intltool-debian,libappstream-glib-dev,libappstream-glib8,libarchive-dev,libarchive-zip-perl,libassuan-dev,libattr1-dev,libavahi-glib1,libbrotli-dev,libcap-dev,libdconf-dev,libdebhelper-perl,libdw-dev,libelf-dev,libfile-stripnondeterminism-perl,libfuse-dev,libfuse2,libgcab-1.0-0,libgcab-dev,libgdk-pixbuf2.0-bin,libgdk-pixbuf2.0-dev,libgirepository1.0-dev,libglib2.0-doc,libgpgme-dev,libgpgme11,libjson-glib-dev,libosp5,libostree-1-1,libostree-dev,libostree-doc,libpolkit-agent-1-dev,libpolkit-gobject-1-dev,libpsl-dev,libseccomp-dev,libsoup2.4-dev,libsub-override-perl,libsystemd-dev,libxml2-utils,opensp,ostree,po-debconf,python3-lxml,python3-mako,python3-markdown,python3-markupsafe,python3-packaging,python3-pyparsing,sgml-base,sgml-data,socat,xdg-dbus-proxy,xml-core,xmlto,xsltproc" + } + }, + "runArgs": ["--privileged"] +} \ No newline at end of file diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..a982b78 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,17 @@ +root = true + +[*] +charset = utf-8 +end_of_line = lf + +[*.[ch]] +indent_size = 2 +indent_style = space +insert_final_newline = true +# For any stray tabs that may sneak in: +tab_width = 8 + +[meson.build] +indent_size = 2 +indent_style = space + diff --git a/ABOUT-NLS b/ABOUT-NLS deleted file mode 100644 index b1de1b6..0000000 --- a/ABOUT-NLS +++ /dev/null @@ -1,1282 +0,0 @@ -1 Notes on the Free Translation Project -*************************************** - -Free software is going international! The Free Translation Project is -a way to get maintainers of free software, translators, and users all -together, so that free software will gradually become able to speak many -languages. A few packages already provide translations for their -messages. - - If you found this `ABOUT-NLS' file inside a distribution, you may -assume that the distributed package does use GNU `gettext' internally, -itself available at your nearest GNU archive site. But you do _not_ -need to install GNU `gettext' prior to configuring, installing or using -this package with messages translated. - - Installers will find here some useful hints. These notes also -explain how users should proceed for getting the programs to use the -available translations. They tell how people wanting to contribute and -work on translations can contact the appropriate team. - -1.1 INSTALL Matters -=================== - -Some packages are "localizable" when properly installed; the programs -they contain can be made to speak your own native language. Most such -packages use GNU `gettext'. Other packages have their own ways to -internationalization, predating GNU `gettext'. - - By default, this package will be installed to allow translation of -messages. It will automatically detect whether the system already -provides the GNU `gettext' functions. Installers may use special -options at configuration time for changing the default behaviour. The -command: - - ./configure --disable-nls - -will _totally_ disable translation of messages. - - When you already have GNU `gettext' installed on your system and run -configure without an option for your new package, `configure' will -probably detect the previously built and installed `libintl' library -and will decide to use it. If not, you may have to to use the -`--with-libintl-prefix' option to tell `configure' where to look for it. - - Internationalized packages usually have many `po/LL.po' files, where -LL gives an ISO 639 two-letter code identifying the language. Unless -translations have been forbidden at `configure' time by using the -`--disable-nls' switch, all available translations are installed -together with the package. However, the environment variable `LINGUAS' -may be set, prior to configuration, to limit the installed set. -`LINGUAS' should then contain a space separated list of two-letter -codes, stating which languages are allowed. - -1.2 Using This Package -====================== - -As a user, if your language has been installed for this package, you -only have to set the `LANG' environment variable to the appropriate -`LL_CC' combination. If you happen to have the `LC_ALL' or some other -`LC_xxx' environment variables set, you should unset them before -setting `LANG', otherwise the setting of `LANG' will not have the -desired effect. Here `LL' is an ISO 639 two-letter language code, and -`CC' is an ISO 3166 two-letter country code. For example, let's -suppose that you speak German and live in Germany. At the shell -prompt, merely execute `setenv LANG de_DE' (in `csh'), -`export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash'). -This can be done from your `.login' or `.profile' file, once and for -all. - - You might think that the country code specification is redundant. -But in fact, some languages have dialects in different countries. For -example, `de_AT' is used for Austria, and `pt_BR' for Brazil. The -country code serves to distinguish the dialects. - - The locale naming convention of `LL_CC', with `LL' denoting the -language and `CC' denoting the country, is the one use on systems based -on GNU libc. On other systems, some variations of this scheme are -used, such as `LL' or `LL_CC.ENCODING'. You can get the list of -locales supported by your system for your language by running the -command `locale -a | grep '^LL''. - - Not all programs have translations for all languages. By default, an -English message is shown in place of a nonexistent translation. If you -understand other languages, you can set up a priority list of languages. -This is done through a different environment variable, called -`LANGUAGE'. GNU `gettext' gives preference to `LANGUAGE' over `LANG' -for the purpose of message handling, but you still need to have `LANG' -set to the primary language; this is required by other parts of the -system libraries. For example, some Swedish users who would rather -read translations in German than English for when Swedish is not -available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'. - - Special advice for Norwegian users: The language code for Norwegian -bokma*l changed from `no' to `nb' recently (in 2003). During the -transition period, while some message catalogs for this language are -installed under `nb' and some older ones under `no', it's recommended -for Norwegian users to set `LANGUAGE' to `nb:no' so that both newer and -older translations are used. - - In the `LANGUAGE' environment variable, but not in the `LANG' -environment variable, `LL_CC' combinations can be abbreviated as `LL' -to denote the language's main dialect. For example, `de' is equivalent -to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT' -(Portuguese as spoken in Portugal) in this context. - -1.3 Translating Teams -===================== - -For the Free Translation Project to be a success, we need interested -people who like their own language and write it well, and who are also -able to synergize with other translators speaking the same language. -Each translation team has its own mailing list. The up-to-date list of -teams can be found at the Free Translation Project's homepage, -`http://translationproject.org/', in the "Teams" area. - - If you'd like to volunteer to _work_ at translating messages, you -should become a member of the translating team for your own language. -The subscribing address is _not_ the same as the list itself, it has -`-request' appended. For example, speakers of Swedish can send a -message to `sv-request@li.org', having this message body: - - subscribe - - Keep in mind that team members are expected to participate -_actively_ in translations, or at solving translational difficulties, -rather than merely lurking around. If your team does not exist yet and -you want to start one, or if you are unsure about what to do or how to -get started, please write to `coordinator@translationproject.org' to -reach the coordinator for all translator teams. - - The English team is special. It works at improving and uniformizing -the terminology in use. Proven linguistic skills are praised more than -programming skills, here. - -1.4 Available Packages -====================== - -Languages are not equally supported in all packages. The following -matrix shows the current state of internationalization, as of June -2010. The matrix shows, in regard of each package, for which languages -PO files have been submitted to translation coordination, with a -translation percentage of at least 50%. - - Ready PO files af am an ar as ast az be be@latin bg bn_IN bs ca - +--------------------------------------------------+ - a2ps | [] [] | - aegis | | - ant-phone | | - anubis | | - aspell | [] [] | - bash | | - bfd | | - bibshelf | [] | - binutils | | - bison | | - bison-runtime | [] | - bluez-pin | [] [] | - bombono-dvd | | - buzztard | | - cflow | | - clisp | | - coreutils | [] [] | - cpio | | - cppi | | - cpplib | [] | - cryptsetup | | - dfarc | | - dialog | [] [] | - dico | | - diffutils | [] | - dink | | - doodle | | - e2fsprogs | [] | - enscript | [] | - exif | | - fetchmail | [] | - findutils | [] | - flex | [] | - freedink | | - gas | | - gawk | [] [] | - gcal | [] | - gcc | | - gettext-examples | [] [] [] [] | - gettext-runtime | [] [] | - gettext-tools | [] [] | - gip | [] | - gjay | | - gliv | [] | - glunarclock | [] [] | - gnubiff | | - gnucash | [] | - gnuedu | | - gnulib | | - gnunet | | - gnunet-gtk | | - gnutls | | - gold | | - gpe-aerial | | - gpe-beam | | - gpe-bluetooth | | - gpe-calendar | | - gpe-clock | [] | - gpe-conf | | - gpe-contacts | | - gpe-edit | | - gpe-filemanager | | - gpe-go | | - gpe-login | | - gpe-ownerinfo | [] | - gpe-package | | - gpe-sketchbook | | - gpe-su | [] | - gpe-taskmanager | [] | - gpe-timesheet | [] | - gpe-today | [] | - gpe-todo | | - gphoto2 | | - gprof | [] | - gpsdrive | | - gramadoir | | - grep | | - grub | [] [] | - gsasl | | - gss | | - gst-plugins-bad | [] | - gst-plugins-base | [] | - gst-plugins-good | [] | - gst-plugins-ugly | [] | - gstreamer | [] [] [] | - gtick | | - gtkam | [] | - gtkorphan | [] | - gtkspell | [] [] [] | - gutenprint | | - hello | [] | - help2man | | - hylafax | | - idutils | | - indent | [] [] | - iso_15924 | | - iso_3166 | [] [] [] [] [] [] [] | - iso_3166_2 | | - iso_4217 | | - iso_639 | [] [] [] [] | - iso_639_3 | | - jwhois | | - kbd | | - keytouch | [] | - keytouch-editor | | - keytouch-keyboa... | [] | - klavaro | [] | - latrine | | - ld | [] | - leafpad | [] [] | - libc | [] [] | - libexif | () | - libextractor | | - libgnutls | | - libgpewidget | | - libgpg-error | | - libgphoto2 | | - libgphoto2_port | | - libgsasl | | - libiconv | [] | - libidn | | - lifelines | | - liferea | [] [] | - lilypond | | - linkdr | [] | - lordsawar | | - lprng | | - lynx | [] | - m4 | | - mailfromd | | - mailutils | | - make | | - man-db | | - man-db-manpages | | - minicom | | - mkisofs | | - myserver | | - nano | [] [] | - opcodes | | - parted | | - pies | | - popt | | - psmisc | | - pspp | [] | - pwdutils | | - radius | [] | - recode | [] [] | - rosegarden | | - rpm | | - rush | | - sarg | | - screem | | - scrollkeeper | [] [] [] | - sed | [] [] | - sharutils | [] [] | - shishi | | - skencil | | - solfege | | - solfege-manual | | - soundtracker | | - sp | | - sysstat | | - tar | [] | - texinfo | | - tin | | - unicode-han-tra... | | - unicode-transla... | | - util-linux-ng | [] | - vice | | - vmm | | - vorbis-tools | | - wastesedge | | - wdiff | | - wget | [] [] | - wyslij-po | | - xchat | [] [] [] [] | - xdg-user-dirs | [] [] [] [] [] [] [] [] [] | - xkeyboard-config | [] [] | - +--------------------------------------------------+ - af am an ar as ast az be be@latin bg bn_IN bs ca - 6 0 1 2 3 19 1 10 3 28 3 1 38 - - crh cs da de el en en_GB en_ZA eo es et eu fa - +-------------------------------------------------+ - a2ps | [] [] [] [] [] [] [] | - aegis | [] [] [] | - ant-phone | [] () | - anubis | [] [] | - aspell | [] [] [] [] [] | - bash | [] [] [] | - bfd | [] | - bibshelf | [] [] [] | - binutils | [] | - bison | [] [] | - bison-runtime | [] [] [] [] | - bluez-pin | [] [] [] [] [] [] | - bombono-dvd | [] | - buzztard | [] [] [] | - cflow | [] [] | - clisp | [] [] [] [] | - coreutils | [] [] [] [] | - cpio | | - cppi | | - cpplib | [] [] [] | - cryptsetup | [] | - dfarc | [] [] [] | - dialog | [] [] [] [] [] | - dico | | - diffutils | [] [] [] [] [] [] | - dink | [] [] [] | - doodle | [] | - e2fsprogs | [] [] [] | - enscript | [] [] [] | - exif | () [] [] | - fetchmail | [] [] () [] [] [] | - findutils | [] [] [] | - flex | [] [] | - freedink | [] [] [] | - gas | [] | - gawk | [] [] [] | - gcal | [] | - gcc | [] [] | - gettext-examples | [] [] [] [] | - gettext-runtime | [] [] [] [] | - gettext-tools | [] [] [] | - gip | [] [] [] [] | - gjay | [] | - gliv | [] [] [] | - glunarclock | [] [] | - gnubiff | () | - gnucash | [] () () () () | - gnuedu | [] [] | - gnulib | [] [] | - gnunet | | - gnunet-gtk | [] | - gnutls | [] [] | - gold | [] | - gpe-aerial | [] [] [] [] | - gpe-beam | [] [] [] [] | - gpe-bluetooth | [] [] | - gpe-calendar | [] | - gpe-clock | [] [] [] [] | - gpe-conf | [] [] [] | - gpe-contacts | [] [] [] | - gpe-edit | [] [] | - gpe-filemanager | [] [] [] | - gpe-go | [] [] [] [] | - gpe-login | [] [] | - gpe-ownerinfo | [] [] [] [] | - gpe-package | [] [] [] | - gpe-sketchbook | [] [] [] [] | - gpe-su | [] [] [] [] | - gpe-taskmanager | [] [] [] [] | - gpe-timesheet | [] [] [] [] | - gpe-today | [] [] [] [] | - gpe-todo | [] [] [] | - gphoto2 | [] [] () [] [] [] | - gprof | [] [] [] | - gpsdrive | [] [] [] | - gramadoir | [] [] [] | - grep | [] | - grub | [] [] | - gsasl | [] | - gss | | - gst-plugins-bad | [] [] [] [] [] | - gst-plugins-base | [] [] [] [] [] | - gst-plugins-good | [] [] [] [] [] [] | - gst-plugins-ugly | [] [] [] [] [] [] | - gstreamer | [] [] [] [] [] | - gtick | [] () [] | - gtkam | [] [] () [] [] | - gtkorphan | [] [] [] [] | - gtkspell | [] [] [] [] [] [] [] | - gutenprint | [] [] [] | - hello | [] [] [] [] | - help2man | [] | - hylafax | [] [] | - idutils | [] [] | - indent | [] [] [] [] [] [] [] | - iso_15924 | [] () [] [] | - iso_3166 | [] [] [] [] () [] [] [] () | - iso_3166_2 | () | - iso_4217 | [] [] [] () [] [] | - iso_639 | [] [] [] [] () [] [] | - iso_639_3 | [] | - jwhois | [] | - kbd | [] [] [] [] [] | - keytouch | [] [] | - keytouch-editor | [] [] | - keytouch-keyboa... | [] | - klavaro | [] [] [] [] | - latrine | [] () | - ld | [] [] | - leafpad | [] [] [] [] [] [] | - libc | [] [] [] [] | - libexif | [] [] () | - libextractor | | - libgnutls | [] | - libgpewidget | [] [] | - libgpg-error | [] [] | - libgphoto2 | [] () | - libgphoto2_port | [] () [] | - libgsasl | | - libiconv | [] [] [] [] [] | - libidn | [] [] [] | - lifelines | [] () | - liferea | [] [] [] [] [] | - lilypond | [] [] [] | - linkdr | [] [] [] | - lordsawar | [] | - lprng | | - lynx | [] [] [] [] | - m4 | [] [] [] [] | - mailfromd | | - mailutils | [] | - make | [] [] [] | - man-db | | - man-db-manpages | | - minicom | [] [] [] [] | - mkisofs | | - myserver | | - nano | [] [] [] | - opcodes | [] [] | - parted | [] [] | - pies | | - popt | [] [] [] [] [] | - psmisc | [] [] [] | - pspp | [] | - pwdutils | [] | - radius | [] | - recode | [] [] [] [] [] [] | - rosegarden | () () () | - rpm | [] [] [] | - rush | | - sarg | | - screem | | - scrollkeeper | [] [] [] [] [] | - sed | [] [] [] [] [] [] | - sharutils | [] [] [] [] | - shishi | | - skencil | [] () [] | - solfege | [] [] [] | - solfege-manual | [] [] | - soundtracker | [] [] [] | - sp | [] | - sysstat | [] [] [] | - tar | [] [] [] [] | - texinfo | [] [] [] | - tin | [] [] | - unicode-han-tra... | | - unicode-transla... | | - util-linux-ng | [] [] [] [] | - vice | () () | - vmm | [] | - vorbis-tools | [] [] | - wastesedge | [] | - wdiff | [] [] | - wget | [] [] [] | - wyslij-po | | - xchat | [] [] [] [] [] | - xdg-user-dirs | [] [] [] [] [] [] [] [] [] | - xkeyboard-config | [] [] [] [] [] [] | - +-------------------------------------------------+ - crh cs da de el en en_GB en_ZA eo es et eu fa - 5 64 105 117 18 1 8 0 28 89 18 19 0 - - fi fr ga gl gu he hi hr hu hy id is it ja ka kn - +----------------------------------------------------+ - a2ps | [] [] [] [] | - aegis | [] [] | - ant-phone | [] [] | - anubis | [] [] [] [] | - aspell | [] [] [] [] | - bash | [] [] [] [] | - bfd | [] [] [] | - bibshelf | [] [] [] [] [] | - binutils | [] [] [] | - bison | [] [] [] [] | - bison-runtime | [] [] [] [] [] [] | - bluez-pin | [] [] [] [] [] [] [] [] | - bombono-dvd | [] | - buzztard | [] | - cflow | [] [] [] | - clisp | [] | - coreutils | [] [] [] [] [] | - cpio | [] [] [] [] | - cppi | [] [] | - cpplib | [] [] [] | - cryptsetup | [] [] [] | - dfarc | [] [] [] | - dialog | [] [] [] [] [] [] [] | - dico | | - diffutils | [] [] [] [] [] [] [] [] [] | - dink | [] | - doodle | [] [] | - e2fsprogs | [] [] | - enscript | [] [] [] [] | - exif | [] [] [] [] [] [] | - fetchmail | [] [] [] [] | - findutils | [] [] [] [] [] [] | - flex | [] [] [] | - freedink | [] [] [] | - gas | [] [] | - gawk | [] [] [] [] () [] | - gcal | [] | - gcc | [] | - gettext-examples | [] [] [] [] [] [] [] | - gettext-runtime | [] [] [] [] [] [] | - gettext-tools | [] [] [] [] | - gip | [] [] [] [] [] [] | - gjay | [] | - gliv | [] () | - glunarclock | [] [] [] [] | - gnubiff | () [] () | - gnucash | () () () () () [] | - gnuedu | [] [] | - gnulib | [] [] [] [] [] [] | - gnunet | | - gnunet-gtk | [] | - gnutls | [] [] | - gold | [] [] | - gpe-aerial | [] [] [] | - gpe-beam | [] [] [] [] | - gpe-bluetooth | [] [] [] [] | - gpe-calendar | [] [] | - gpe-clock | [] [] [] [] [] | - gpe-conf | [] [] [] [] | - gpe-contacts | [] [] [] [] | - gpe-edit | [] [] [] | - gpe-filemanager | [] [] [] [] | - gpe-go | [] [] [] [] [] | - gpe-login | [] [] [] | - gpe-ownerinfo | [] [] [] [] [] | - gpe-package | [] [] [] | - gpe-sketchbook | [] [] [] [] | - gpe-su | [] [] [] [] [] [] | - gpe-taskmanager | [] [] [] [] [] | - gpe-timesheet | [] [] [] [] [] | - gpe-today | [] [] [] [] [] [] [] | - gpe-todo | [] [] [] | - gphoto2 | [] [] [] [] [] [] | - gprof | [] [] [] [] | - gpsdrive | [] [] [] | - gramadoir | [] [] [] | - grep | [] [] | - grub | [] [] [] [] | - gsasl | [] [] [] [] [] | - gss | [] [] [] [] [] | - gst-plugins-bad | [] [] [] [] [] [] | - gst-plugins-base | [] [] [] [] [] [] | - gst-plugins-good | [] [] [] [] [] [] | - gst-plugins-ugly | [] [] [] [] [] [] | - gstreamer | [] [] [] [] [] | - gtick | [] [] [] [] [] | - gtkam | [] [] [] [] [] | - gtkorphan | [] [] [] | - gtkspell | [] [] [] [] [] [] [] [] [] | - gutenprint | [] [] [] [] | - hello | [] [] [] | - help2man | [] [] | - hylafax | [] | - idutils | [] [] [] [] [] [] | - indent | [] [] [] [] [] [] [] [] | - iso_15924 | [] () [] [] | - iso_3166 | [] () [] [] [] [] [] [] [] [] [] [] | - iso_3166_2 | () [] [] [] | - iso_4217 | [] () [] [] [] [] | - iso_639 | [] () [] [] [] [] [] [] [] | - iso_639_3 | () [] [] | - jwhois | [] [] [] [] [] | - kbd | [] [] | - keytouch | [] [] [] [] [] [] | - keytouch-editor | [] [] [] [] [] | - keytouch-keyboa... | [] [] [] [] [] | - klavaro | [] [] | - latrine | [] [] [] | - ld | [] [] [] [] | - leafpad | [] [] [] [] [] [] [] () | - libc | [] [] [] [] [] | - libexif | [] | - libextractor | | - libgnutls | [] [] | - libgpewidget | [] [] [] [] | - libgpg-error | [] [] | - libgphoto2 | [] [] [] | - libgphoto2_port | [] [] [] | - libgsasl | [] [] [] [] [] | - libiconv | [] [] [] [] [] [] | - libidn | [] [] [] [] | - lifelines | () | - liferea | [] [] [] [] | - lilypond | [] [] | - linkdr | [] [] [] [] [] | - lordsawar | | - lprng | [] | - lynx | [] [] [] [] [] | - m4 | [] [] [] [] [] [] | - mailfromd | | - mailutils | [] [] | - make | [] [] [] [] [] [] [] [] [] | - man-db | [] [] | - man-db-manpages | [] | - minicom | [] [] [] [] [] | - mkisofs | [] [] [] [] | - myserver | | - nano | [] [] [] [] [] [] | - opcodes | [] [] [] [] | - parted | [] [] [] [] | - pies | | - popt | [] [] [] [] [] [] [] [] [] | - psmisc | [] [] [] | - pspp | | - pwdutils | [] [] | - radius | [] [] | - recode | [] [] [] [] [] [] [] [] | - rosegarden | () () () () () | - rpm | [] [] | - rush | | - sarg | [] | - screem | [] [] | - scrollkeeper | [] [] [] [] | - sed | [] [] [] [] [] [] [] [] | - sharutils | [] [] [] [] [] [] [] | - shishi | [] | - skencil | [] | - solfege | [] [] [] [] | - solfege-manual | [] [] | - soundtracker | [] [] | - sp | [] () | - sysstat | [] [] [] [] [] | - tar | [] [] [] [] [] [] [] | - texinfo | [] [] [] [] | - tin | [] | - unicode-han-tra... | | - unicode-transla... | [] [] | - util-linux-ng | [] [] [] [] [] [] | - vice | () () () | - vmm | [] | - vorbis-tools | [] | - wastesedge | () () | - wdiff | [] | - wget | [] [] [] [] [] [] [] [] | - wyslij-po | [] [] [] | - xchat | [] [] [] [] [] [] [] [] [] | - xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] | - xkeyboard-config | [] [] [] [] [] | - +----------------------------------------------------+ - fi fr ga gl gu he hi hr hu hy id is it ja ka kn - 105 121 53 20 4 8 3 5 53 2 120 5 84 67 0 4 - - ko ku ky lg lt lv mk ml mn mr ms mt nb nds ne - +-----------------------------------------------+ - a2ps | [] | - aegis | | - ant-phone | | - anubis | [] [] | - aspell | [] | - bash | | - bfd | | - bibshelf | [] [] | - binutils | | - bison | [] | - bison-runtime | [] [] [] [] [] | - bluez-pin | [] [] [] [] [] | - bombono-dvd | | - buzztard | | - cflow | | - clisp | | - coreutils | [] | - cpio | | - cppi | | - cpplib | | - cryptsetup | | - dfarc | [] | - dialog | [] [] [] [] [] | - dico | | - diffutils | [] [] | - dink | | - doodle | | - e2fsprogs | | - enscript | | - exif | [] | - fetchmail | | - findutils | | - flex | | - freedink | [] | - gas | | - gawk | | - gcal | | - gcc | | - gettext-examples | [] [] [] [] | - gettext-runtime | [] | - gettext-tools | [] | - gip | [] [] | - gjay | | - gliv | | - glunarclock | [] | - gnubiff | | - gnucash | () () () () | - gnuedu | | - gnulib | | - gnunet | | - gnunet-gtk | | - gnutls | [] | - gold | | - gpe-aerial | [] | - gpe-beam | [] | - gpe-bluetooth | [] [] | - gpe-calendar | [] | - gpe-clock | [] [] [] [] [] | - gpe-conf | [] [] | - gpe-contacts | [] [] | - gpe-edit | [] | - gpe-filemanager | [] [] | - gpe-go | [] [] [] | - gpe-login | [] | - gpe-ownerinfo | [] [] | - gpe-package | [] [] | - gpe-sketchbook | [] [] | - gpe-su | [] [] [] [] [] [] | - gpe-taskmanager | [] [] [] [] [] [] | - gpe-timesheet | [] [] | - gpe-today | [] [] [] [] | - gpe-todo | [] [] | - gphoto2 | | - gprof | [] | - gpsdrive | | - gramadoir | | - grep | | - grub | | - gsasl | | - gss | | - gst-plugins-bad | [] [] [] [] | - gst-plugins-base | [] [] | - gst-plugins-good | [] [] | - gst-plugins-ugly | [] [] [] [] [] | - gstreamer | | - gtick | | - gtkam | [] | - gtkorphan | [] [] | - gtkspell | [] [] [] [] [] [] [] | - gutenprint | | - hello | [] [] [] | - help2man | | - hylafax | | - idutils | | - indent | | - iso_15924 | [] [] | - iso_3166 | [] [] () [] [] [] [] [] | - iso_3166_2 | | - iso_4217 | [] [] | - iso_639 | [] [] | - iso_639_3 | [] | - jwhois | [] | - kbd | | - keytouch | [] | - keytouch-editor | [] | - keytouch-keyboa... | [] | - klavaro | [] | - latrine | [] | - ld | | - leafpad | [] [] [] | - libc | [] | - libexif | | - libextractor | | - libgnutls | [] | - libgpewidget | [] [] | - libgpg-error | | - libgphoto2 | | - libgphoto2_port | | - libgsasl | | - libiconv | | - libidn | | - lifelines | | - liferea | | - lilypond | | - linkdr | | - lordsawar | | - lprng | | - lynx | | - m4 | | - mailfromd | | - mailutils | | - make | [] | - man-db | | - man-db-manpages | | - minicom | [] | - mkisofs | | - myserver | | - nano | [] [] | - opcodes | | - parted | | - pies | | - popt | [] [] [] | - psmisc | | - pspp | | - pwdutils | | - radius | | - recode | | - rosegarden | | - rpm | | - rush | | - sarg | | - screem | | - scrollkeeper | [] [] | - sed | | - sharutils | | - shishi | | - skencil | | - solfege | [] | - solfege-manual | | - soundtracker | | - sp | | - sysstat | [] | - tar | [] | - texinfo | [] | - tin | | - unicode-han-tra... | | - unicode-transla... | | - util-linux-ng | | - vice | | - vmm | | - vorbis-tools | | - wastesedge | | - wdiff | | - wget | [] | - wyslij-po | | - xchat | [] [] [] | - xdg-user-dirs | [] [] [] [] [] [] [] [] | - xkeyboard-config | [] [] [] | - +-----------------------------------------------+ - ko ku ky lg lt lv mk ml mn mr ms mt nb nds ne - 20 5 10 1 13 48 4 2 2 4 24 10 20 3 1 - - nl nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr - +---------------------------------------------------+ - a2ps | [] [] [] [] [] [] [] [] | - aegis | [] [] [] | - ant-phone | [] [] | - anubis | [] [] [] | - aspell | [] [] [] [] [] | - bash | [] [] | - bfd | [] | - bibshelf | [] [] | - binutils | [] [] | - bison | [] [] [] | - bison-runtime | [] [] [] [] [] [] [] | - bluez-pin | [] [] [] [] [] [] [] [] | - bombono-dvd | [] () | - buzztard | [] [] | - cflow | [] | - clisp | [] [] | - coreutils | [] [] [] [] [] [] | - cpio | [] [] [] | - cppi | [] | - cpplib | [] | - cryptsetup | [] | - dfarc | [] | - dialog | [] [] [] [] | - dico | [] | - diffutils | [] [] [] [] [] [] | - dink | () | - doodle | [] [] | - e2fsprogs | [] [] | - enscript | [] [] [] [] [] | - exif | [] [] [] () [] | - fetchmail | [] [] [] [] | - findutils | [] [] [] [] [] | - flex | [] [] [] [] [] | - freedink | [] [] | - gas | | - gawk | [] [] [] [] | - gcal | | - gcc | [] | - gettext-examples | [] [] [] [] [] [] [] [] | - gettext-runtime | [] [] [] [] [] [] [] [] [] | - gettext-tools | [] [] [] [] [] [] | - gip | [] [] [] [] [] | - gjay | | - gliv | [] [] [] [] [] [] | - glunarclock | [] [] [] [] [] | - gnubiff | [] () | - gnucash | [] () () () | - gnuedu | [] | - gnulib | [] [] [] [] | - gnunet | | - gnunet-gtk | | - gnutls | [] [] | - gold | | - gpe-aerial | [] [] [] [] [] [] [] | - gpe-beam | [] [] [] [] [] [] [] | - gpe-bluetooth | [] [] | - gpe-calendar | [] [] [] [] | - gpe-clock | [] [] [] [] [] [] [] [] | - gpe-conf | [] [] [] [] [] [] [] | - gpe-contacts | [] [] [] [] [] | - gpe-edit | [] [] [] | - gpe-filemanager | [] [] [] | - gpe-go | [] [] [] [] [] [] [] [] | - gpe-login | [] [] | - gpe-ownerinfo | [] [] [] [] [] [] [] [] | - gpe-package | [] [] | - gpe-sketchbook | [] [] [] [] [] [] [] | - gpe-su | [] [] [] [] [] [] [] [] | - gpe-taskmanager | [] [] [] [] [] [] [] [] | - gpe-timesheet | [] [] [] [] [] [] [] [] | - gpe-today | [] [] [] [] [] [] [] [] | - gpe-todo | [] [] [] [] [] | - gphoto2 | [] [] [] [] [] [] [] [] | - gprof | [] [] [] | - gpsdrive | [] [] | - gramadoir | [] [] | - grep | [] [] [] [] | - grub | [] [] [] | - gsasl | [] [] [] [] | - gss | [] [] [] | - gst-plugins-bad | [] [] [] [] [] [] | - gst-plugins-base | [] [] [] [] [] | - gst-plugins-good | [] [] [] [] [] | - gst-plugins-ugly | [] [] [] [] [] [] | - gstreamer | [] [] [] [] [] | - gtick | [] [] [] | - gtkam | [] [] [] [] [] [] | - gtkorphan | [] | - gtkspell | [] [] [] [] [] [] [] [] [] [] | - gutenprint | [] [] | - hello | [] [] [] [] | - help2man | [] [] | - hylafax | [] | - idutils | [] [] [] [] [] | - indent | [] [] [] [] [] [] [] | - iso_15924 | [] [] [] [] | - iso_3166 | [] [] [] [] [] () [] [] [] [] [] [] [] [] | - iso_3166_2 | [] [] [] | - iso_4217 | [] [] [] [] [] [] [] [] | - iso_639 | [] [] [] [] [] [] [] [] [] | - iso_639_3 | [] [] | - jwhois | [] [] [] [] | - kbd | [] [] [] | - keytouch | [] [] [] | - keytouch-editor | [] [] [] | - keytouch-keyboa... | [] [] [] | - klavaro | [] [] | - latrine | [] [] | - ld | | - leafpad | [] [] [] [] [] [] [] [] [] | - libc | [] [] [] [] | - libexif | [] [] () [] | - libextractor | | - libgnutls | [] [] | - libgpewidget | [] [] [] | - libgpg-error | [] [] | - libgphoto2 | [] [] | - libgphoto2_port | [] [] [] [] [] | - libgsasl | [] [] [] [] [] | - libiconv | [] [] [] [] [] | - libidn | [] [] | - lifelines | [] [] | - liferea | [] [] [] [] [] () () [] | - lilypond | [] | - linkdr | [] [] [] | - lordsawar | | - lprng | [] | - lynx | [] [] [] | - m4 | [] [] [] [] [] | - mailfromd | [] | - mailutils | [] | - make | [] [] [] [] | - man-db | [] [] [] | - man-db-manpages | [] [] [] | - minicom | [] [] [] [] | - mkisofs | [] [] [] | - myserver | | - nano | [] [] [] [] | - opcodes | [] [] | - parted | [] [] [] [] | - pies | [] | - popt | [] [] [] [] | - psmisc | [] [] [] | - pspp | [] [] | - pwdutils | [] | - radius | [] [] [] | - recode | [] [] [] [] [] [] [] [] | - rosegarden | () () | - rpm | [] [] [] | - rush | [] [] | - sarg | | - screem | | - scrollkeeper | [] [] [] [] [] [] [] [] | - sed | [] [] [] [] [] [] [] [] [] | - sharutils | [] [] [] [] | - shishi | [] | - skencil | [] [] | - solfege | [] [] [] [] | - solfege-manual | [] [] [] | - soundtracker | [] | - sp | | - sysstat | [] [] [] [] | - tar | [] [] [] [] | - texinfo | [] [] [] [] | - tin | [] | - unicode-han-tra... | | - unicode-transla... | | - util-linux-ng | [] [] [] [] [] | - vice | [] | - vmm | [] | - vorbis-tools | [] [] | - wastesedge | [] | - wdiff | [] [] | - wget | [] [] [] [] [] [] [] | - wyslij-po | [] [] [] | - xchat | [] [] [] [] [] [] [] [] [] | - xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] [] | - xkeyboard-config | [] [] [] | - +---------------------------------------------------+ - nl nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr - 135 10 4 7 105 1 29 62 47 91 3 54 46 9 37 - - sv sw ta te tg th tr uk vi wa zh_CN zh_HK zh_TW - +---------------------------------------------------+ - a2ps | [] [] [] [] [] | 27 - aegis | [] | 9 - ant-phone | [] [] [] [] | 9 - anubis | [] [] [] [] | 15 - aspell | [] [] [] | 20 - bash | [] [] [] | 12 - bfd | [] | 6 - bibshelf | [] [] [] | 16 - binutils | [] [] | 8 - bison | [] [] | 12 - bison-runtime | [] [] [] [] [] [] | 29 - bluez-pin | [] [] [] [] [] [] [] [] | 37 - bombono-dvd | [] | 4 - buzztard | [] | 7 - cflow | [] [] [] | 9 - clisp | | 10 - coreutils | [] [] [] [] | 22 - cpio | [] [] [] [] [] [] | 13 - cppi | [] [] | 5 - cpplib | [] [] [] [] [] [] | 14 - cryptsetup | [] [] | 7 - dfarc | [] | 9 - dialog | [] [] [] [] [] [] [] | 30 - dico | [] | 2 - diffutils | [] [] [] [] [] [] | 30 - dink | | 4 - doodle | [] [] | 7 - e2fsprogs | [] [] [] | 11 - enscript | [] [] [] [] | 17 - exif | [] [] [] | 16 - fetchmail | [] [] [] | 17 - findutils | [] [] [] [] [] | 20 - flex | [] [] [] [] | 15 - freedink | [] | 10 - gas | [] | 4 - gawk | [] [] [] [] | 18 - gcal | [] [] | 5 - gcc | [] [] [] | 7 - gettext-examples | [] [] [] [] [] [] [] | 34 - gettext-runtime | [] [] [] [] [] [] [] | 29 - gettext-tools | [] [] [] [] [] [] | 22 - gip | [] [] [] [] | 22 - gjay | [] | 3 - gliv | [] [] [] | 14 - glunarclock | [] [] [] [] [] | 19 - gnubiff | [] [] | 4 - gnucash | () [] () [] () | 10 - gnuedu | [] [] | 7 - gnulib | [] [] [] [] | 16 - gnunet | [] | 1 - gnunet-gtk | [] [] [] | 5 - gnutls | [] [] [] | 10 - gold | [] | 4 - gpe-aerial | [] [] [] | 18 - gpe-beam | [] [] [] | 19 - gpe-bluetooth | [] [] [] | 13 - gpe-calendar | [] [] [] [] | 12 - gpe-clock | [] [] [] [] [] | 28 - gpe-conf | [] [] [] [] | 20 - gpe-contacts | [] [] [] | 17 - gpe-edit | [] [] [] | 12 - gpe-filemanager | [] [] [] [] | 16 - gpe-go | [] [] [] [] [] | 25 - gpe-login | [] [] [] | 11 - gpe-ownerinfo | [] [] [] [] [] | 25 - gpe-package | [] [] [] | 13 - gpe-sketchbook | [] [] [] | 20 - gpe-su | [] [] [] [] [] | 30 - gpe-taskmanager | [] [] [] [] [] | 29 - gpe-timesheet | [] [] [] [] [] | 25 - gpe-today | [] [] [] [] [] [] | 30 - gpe-todo | [] [] [] [] | 17 - gphoto2 | [] [] [] [] [] | 24 - gprof | [] [] [] | 15 - gpsdrive | [] [] [] | 11 - gramadoir | [] [] [] | 11 - grep | [] [] [] | 10 - grub | [] [] [] | 14 - gsasl | [] [] [] [] | 14 - gss | [] [] [] | 11 - gst-plugins-bad | [] [] [] [] | 26 - gst-plugins-base | [] [] [] [] [] | 24 - gst-plugins-good | [] [] [] [] | 24 - gst-plugins-ugly | [] [] [] [] [] | 29 - gstreamer | [] [] [] [] | 22 - gtick | [] [] [] | 13 - gtkam | [] [] [] | 20 - gtkorphan | [] [] [] | 14 - gtkspell | [] [] [] [] [] [] [] [] [] | 45 - gutenprint | [] | 10 - hello | [] [] [] [] [] [] | 21 - help2man | [] [] | 7 - hylafax | [] | 5 - idutils | [] [] [] [] | 17 - indent | [] [] [] [] [] [] | 30 - iso_15924 | () [] () [] [] | 16 - iso_3166 | [] [] () [] [] () [] [] [] () | 53 - iso_3166_2 | () [] () [] | 9 - iso_4217 | [] () [] [] () [] [] | 26 - iso_639 | [] [] [] () [] () [] [] [] [] | 38 - iso_639_3 | [] () | 8 - jwhois | [] [] [] [] [] | 16 - kbd | [] [] [] [] [] | 15 - keytouch | [] [] [] | 16 - keytouch-editor | [] [] [] | 14 - keytouch-keyboa... | [] [] [] | 14 - klavaro | [] | 11 - latrine | [] [] [] | 10 - ld | [] [] [] [] | 11 - leafpad | [] [] [] [] [] [] | 33 - libc | [] [] [] [] [] | 21 - libexif | [] () | 7 - libextractor | [] | 1 - libgnutls | [] [] [] | 9 - libgpewidget | [] [] [] | 14 - libgpg-error | [] [] [] | 9 - libgphoto2 | [] [] | 8 - libgphoto2_port | [] [] [] [] | 14 - libgsasl | [] [] [] | 13 - libiconv | [] [] [] [] | 21 - libidn | () [] [] | 11 - lifelines | [] | 4 - liferea | [] [] [] | 21 - lilypond | [] | 7 - linkdr | [] [] [] [] [] | 17 - lordsawar | | 1 - lprng | [] | 3 - lynx | [] [] [] [] | 17 - m4 | [] [] [] [] | 19 - mailfromd | [] [] | 3 - mailutils | [] | 5 - make | [] [] [] [] | 21 - man-db | [] [] [] | 8 - man-db-manpages | | 4 - minicom | [] [] | 16 - mkisofs | [] [] | 9 - myserver | | 0 - nano | [] [] [] [] | 21 - opcodes | [] [] [] | 11 - parted | [] [] [] [] [] | 15 - pies | [] [] | 3 - popt | [] [] [] [] [] [] | 27 - psmisc | [] [] | 11 - pspp | | 4 - pwdutils | [] [] | 6 - radius | [] [] | 9 - recode | [] [] [] [] | 28 - rosegarden | () | 0 - rpm | [] [] [] | 11 - rush | [] [] | 4 - sarg | | 1 - screem | [] | 3 - scrollkeeper | [] [] [] [] [] | 27 - sed | [] [] [] [] [] | 30 - sharutils | [] [] [] [] [] | 22 - shishi | [] | 3 - skencil | [] [] | 7 - solfege | [] [] [] [] | 16 - solfege-manual | [] | 8 - soundtracker | [] [] [] | 9 - sp | [] | 3 - sysstat | [] [] | 15 - tar | [] [] [] [] [] [] | 23 - texinfo | [] [] [] [] [] | 17 - tin | | 4 - unicode-han-tra... | | 0 - unicode-transla... | | 2 - util-linux-ng | [] [] [] [] | 20 - vice | () () | 1 - vmm | [] | 4 - vorbis-tools | [] | 6 - wastesedge | | 2 - wdiff | [] [] | 7 - wget | [] [] [] [] [] | 26 - wyslij-po | [] [] | 8 - xchat | [] [] [] [] [] [] | 36 - xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] | 63 - xkeyboard-config | [] [] [] | 22 - +---------------------------------------------------+ - 85 teams sv sw ta te tg th tr uk vi wa zh_CN zh_HK zh_TW - 178 domains 119 1 3 3 0 10 65 51 155 17 98 7 41 2618 - - Some counters in the preceding matrix are higher than the number of -visible blocks let us expect. This is because a few extra PO files are -used for implementing regional variants of languages, or language -dialects. - - For a PO file in the matrix above to be effective, the package to -which it applies should also have been internationalized and -distributed as such by its maintainer. There might be an observable -lag between the mere existence a PO file and its wide availability in a -distribution. - - If June 2010 seems to be old, you may fetch a more recent copy of -this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date -matrix with full percentage details can be found at -`http://translationproject.org/extra/matrix.html'. - -1.5 Using `gettext' in new packages -=================================== - -If you are writing a freely available program and want to -internationalize it you are welcome to use GNU `gettext' in your -package. Of course you have to respect the GNU Library General Public -License which covers the use of the GNU `gettext' library. This means -in particular that even non-free programs can use `libintl' as a shared -library, whereas only free software can use `libintl' as a static -library or use modified versions of `libintl'. - - Once the sources are changed appropriately and the setup can handle -the use of `gettext' the only thing missing are the translations. The -Free Translation Project is also available for packages which are not -developed inside the GNU project. Therefore the information given above -applies also for every other Free Software Project. Contact -`coordinator@translationproject.org' to make the `.pot' files available -to the translation teams. - diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..e1400e1 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,84 @@ +# Code of Conduct + +## 1. Purpose + +A primary goal of Flatpak is to be inclusive to the largest number of contributors, with the most varied and diverse backgrounds possible. As such, we are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, sexual orientation, ability, ethnicity, socioeconomic status, and religion (or lack thereof). + +This code of conduct outlines our expectations for all those who participate in our community, as well as the consequences for unacceptable behavior. + +We invite all those who participate in Flatpak to help us create safe and positive experiences for everyone. + +## 2. Open Source Citizenship + +A supplemental goal of this Code of Conduct is to increase open source citizenship by encouraging participants to recognize and strengthen the relationships between our actions and their effects on our community. + +Communities mirror the societies in which they exist and positive action is essential to counteract the many forms of inequality and abuses of power that exist in society. + +If you see someone who is making an extra effort to ensure our community is welcoming, friendly, and encourages all participants to contribute to the fullest extent, we want to know. + +## 3. Expected Behavior + +The following behaviors are expected and requested of all community members: + +* Participate in an authentic and active way. In doing so, you contribute to the health and longevity of this community. +* Exercise consideration and respect in your speech and actions. +* Attempt collaboration before conflict. +* Refrain from demeaning, discriminatory, or harassing behavior and speech. +* Be mindful of your surroundings and of your fellow participants. Alert community leaders if you notice a dangerous situation, someone in distress, or violations of this Code of Conduct, even if they seem inconsequential. +* Remember that community event venues may be shared with members of the public; please be respectful to all patrons of these locations. + +## 4. Unacceptable Behavior + +The following behaviors are considered harassment and are unacceptable within our community: + +* Violence, threats of violence or violent language directed against another person. +* Sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory jokes and language. +* Posting or displaying sexually explicit or violent material. +* Posting or threatening to post other people’s personally identifying information ("doxing"). +* Personal insults, particularly those related to gender, sexual orientation, race, religion, or disability. +* Inappropriate photography or recording. +* Inappropriate physical contact. You should have someone’s consent before touching them. +* Unwelcome sexual attention. This includes, sexualized comments or jokes; inappropriate touching, groping, and unwelcomed sexual advances. +* Deliberate intimidation, stalking or following (online or in person). +* Advocating for, or encouraging, any of the above behavior. +* Sustained disruption of community events, including talks and presentations. + +## 5. Consequences of Unacceptable Behavior + +Unacceptable behavior from any community member, including sponsors and those with decision-making authority, will not be tolerated. + +Anyone asked to stop unacceptable behavior is expected to comply immediately. + +If a community member engages in unacceptable behavior, the community organizers may take any action they deem appropriate, up to and including a temporary ban or permanent expulsion from the community without warning (and without refund in the case of a paid event). + +## 6. Reporting Guidelines + +If you are subject to or witness unacceptable behavior, or have any other concerns, please notify a community organizer as soon as possible. alexander.larsson@gmail.com. + + + +Additionally, community organizers are available to help community members engage with local law enforcement or to otherwise help those experiencing unacceptable behavior feel safe. In the context of in-person events, organizers will also provide escorts as desired by the person experiencing distress. + +## 7. Addressing Grievances + +If you feel you have been falsely or unfairly accused of violating this Code of Conduct, you should notify Flatpak with a concise description of your grievance. Your grievance will be handled in accordance with our existing governing policies. + + + +## 8. Scope + +We expect all community participants (contributors, paid or otherwise; sponsors; and other guests) to abide by this Code of Conduct in all community venues–online and in-person–as well as in all one-on-one communications pertaining to community business. + +This code of conduct and its related procedures also applies to unacceptable behavior occurring outside the scope of community activities when such behavior has the potential to adversely affect the safety and well-being of community members. + +## 9. Contact info + +alexander.larsson@gmail.com + +## 10. License and attribution + +This Code of Conduct is distributed under a [Creative Commons Attribution-ShareAlike license](http://creativecommons.org/licenses/by-sa/3.0/). + +Portions of text derived from the [Django Code of Conduct](https://www.djangoproject.com/conduct/) and the [Geek Feminism Anti-Harassment Policy](http://geekfeminism.wikia.com/wiki/Conference_anti-harassment/Policy). + +Retrieved on November 22, 2016 from [http://citizencodeofconduct.org/](http://citizencodeofconduct.org/) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..d00ccc9 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,145 @@ +## Compiling Flatpak + +If you need to build Flatpak from source, you can do so with Meson or +with GNU Autotools. The recommended build system for this version of +Flatpak is Meson, and the Autotools build system is likely to be removed +from a future version of Flatpak. + +The exact steps required depend on your distribution. Below are some +steps that should work on Debian and Fedora, based on the configure +options used to build those distributions' packages, These options will +install into `/usr`, which will overwrite your distribution-provided +system copy of Flatpak. +**You should only do this if you understand the risks of it to the +stability of your system, and you probably want to do it in a VM or on +a development machine that's expected to break sometimes!** + +### On Debian + +``` +git clone https://github.com/flatpak/flatpak +cd flatpak +sudo apt build-dep flatpak +git submodule update --init +meson setup --prefix=/usr --sysconfdir=/etc --localstatedir=/var -Dselinux_module=disabled -Dinstalled_tests=true -Ddbus_config_dir=/usr/share/dbus-1/system.d -Dprivileged_group=sudo -Drun_media_dir=/media -Dsystem_bubblewrap=bwrap -Dsystem_dbus_proxy=xdg-dbus-proxy -Dsystemdsystemunitdir=/lib/systemd/system -Dsystemdsystemenvgendir=/lib/systemd/system-environment-generators -Dsystem_helper_user=_flatpak -Dgtkdoc=disabled _build +meson compile -C _build +meson test -C _build +sudo meson install -C _build +``` + +### On Fedora + +``` +git clone https://github.com/flatpak/flatpak +cd flatpak +sudo dnf builddep flatpak +sudo dnf install gettext-devel socat +git submodule update --init +meson setup --prefix=/usr --sysconfdir=/etc --localstatedir=/var -Dinstalled_tests=true -Dselinux_module=enabled -Dsystem_bubblewrap=bwrap -Dsystem_dbus_proxy=xdg-dbus-proxy _build +meson compile -C _build +meson test -C _build +sudo meson install -C _build +``` + +## Building with Autotools + +Older branches of Flatpak used GNU Autotools. See +https://github.com/flatpak/flatpak/blob/flatpak-1.14.x/CONTRIBUTING.md +for more details of that build system. + +The Autotools build system is likely to be removed from a future version +of Flatpak, leaving Meson as the only build system supported. + +Newer releases of Flatpak do not include Autotools-generated files in +the source archive. If it is necessary to build these releases with +Autotools for some reason, the build system must be set up by running: + + ./autogen.sh + +before proceeding as if for any other Autotools project. + +## How to run a specified set of tests + +Sometimes you don't want to run the whole test suite but just one you're +working on. This can be accomplished with a command like: + +``` +meson test -C _build test-info@user.wrap test-info@system.wrap +``` + +## More info +Dependencies you will need include: meson, bison, +gettext, gtk-doc, gobject-introspection, libcap, libarchive, libxml2, libsoup, +gpgme, polkit, libXau, ostree, json-glib, appstream, libseccomp (or their devel +packages). + +Most configure arguments are documented in `meson_options.txt`. However, +there are some options that are a bit more complicated. + +Flatpak relies on a project called +[Bubblewrap](https://github.com/containers/bubblewrap) for the low-level +sandboxing. By default, an in-tree copy of this is built (distributed in the +tarball or using git submodules in the git tree). This will build a helper +called flatpak-bwrap. If your system has a recent enough version of Bubblewrap +already, you can use `-Dsystem_bubblewrap=bwrap` to use that instead. + +Bubblewrap can run in two modes, either using unprivileged user +namespaces or setuid mode. This requires that the kernel supports this, +which some distributions disable. For instance, Debian and Arch +([linux](https://www.archlinux.org/packages/?name=linux) kernel v4.14.5 +or later), support user namespaces with the `kernel.unprivileged_userns_clone` +sysctl enabled. + +If unprivileged user namespaces are not available, then Bubblewrap must +be built as setuid root. This is believed to be safe, as it is +designed to do this. Any build of Bubblewrap supports both +unprivileged and setuid mode, you just need to set the setuid bit for +it to change mode. The Meson build does not do this automatically. + +There are some complications when building Flatpak to a different +prefix than the system-installed version. First of all, the newly +built Flatpak will look for system-installed flatpaks in +`$PREFIX/var/lib/flatpak`, which will not match existing installations. +You can use `-Dsystem_install_dir=/var/lib/flatpak` to make both +installations use the same location. + +Secondly, Flatpak ships with a root-privileged PolicyKit helper for +system-wide installation, called `flatpak-system-helper`. It is D-Bus +activated (on the system bus) and if you install in a non-standard +location it is likely that D-Bus will not find it and PolicyKit +integration will not work. However, if the system installation is +synchronized, you can often use the system installed helper instead— +at least if the two versions are close enough. + +## This repository + +The Flatpak project consists of multiple pieces, and it can be +a bit challenging to find your way around at first. Here is a +quick intro to each of the important subdirectories: +* `app`: the commandline client. Each command has a `flatpak-builtins-` source file +* `common`: contains the library, libflatpak. It also contains various pieces + of code that are shared between the library, the client and the services. + Non-public code can be recognized by having a `-private.h` header file. +* `completion`: commandline auto completion support +* `data`: D-Bus interface definition files and GVariant schemas +* `doc`: The sources for the documentation, both man pages and library documentation +* `icon-validator`: A small utility that is used to validate icons +* `oci-authenticator`: service used for authenticating the user for installing + from oci remotes (e.g. for paid apps) +* `po`: translations +* `portal`: The Flatpak portal service, which lets sandboxed apps request the + creation of new sandboxes +* `revokefs`: A FUSE filesystem that is used to transfer files downloaded by + the user to the system-helper without copying +* `session-helper`: The flatpak-session-helper service, which provides various + helpers for the sandbox setup at runtime +* `tests`: The testsuite +* `subprojects/bubblewrap`: Flatpak's unprivileged sandboxing tool which is + developed separately and exists here as a submodule +* `subprojects/libglnx`: a small utility library for projects that use GLib on + Linux, as a submodule +* `subprojects/dbus-proxy`: a filtering proxy for D-Bus connections, as a submodule +* `subprojects/variant-schema-compiler`: a tool for generating code to + efficiently access data encoded using GVariant, as a submodule +* `system-helper`: The flatpak-system-helper service, which runs as root on the + system bus and allows non-root users to modify system installations diff --git a/INSTALL b/INSTALL deleted file mode 100644 index e69de29..0000000 diff --git a/Makefile.am b/Makefile.am deleted file mode 100644 index d3fe667..0000000 --- a/Makefile.am +++ /dev/null @@ -1,222 +0,0 @@ -NULL = - -bin_PROGRAMS = $(NULL) -dist_installed_test_extra_scripts = $(NULL) -noinst_PROGRAMS = $(NULL) -noinst_LTLIBRARIES = $(NULL) -libexec_PROGRAMS = $(NULL) -CLEANFILES = $(NULL) -MAINTAINERCLEANFILES = $(NULL) -DISTCLEANFILES= $(NULL) -BUILT_SOURCES = $(NULL) -EXTRA_DIST = - -include $(top_srcdir)/buildutil/glib-tap.mk - -SUBDIRS = - - -if BUILD_DOCUMENTATION -SUBDIRS += . doc -endif - -SUBDIRS += po - -%.service: %.service.in config.log - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(libexecdir)|" \ - -e "s|\@localstatedir\@|$(localstatedir)|" \ - -e "s|\@media_dir\@|$(RUN_MEDIA_DIR)|" \ - -e "s|\@extraargs\@||" $< > $@ - -dbus_servicedir = $(DBUS_SERVICE_DIR) -service_in_files = $(NULL) -dbus_service_DATA = $(NULL) -systemdsystemunit_DATA = $(NULL) -systemduserunit_DATA = $(NULL) -dist_tmpfiles_DATA = $(NULL) -CLEANFILES += $(dbus_service_DATA) -CLEANFILES += $(systemduserunit_DATA) -EXTRA_DIST += $(service_in_files) - -FLATPAK_BINDIR=$(bindir) - -ACLOCAL_AMFLAGS = -I m4 -I subprojects/libglnx ${ACLOCAL_FLAGS} -AM_CPPFLAGS = \ - -DFLATPAK_BINDIR=\"$(FLATPAK_BINDIR)\" \ - -DFLATPAK_SYSTEMDIR=\"$(SYSTEM_INSTALL_DIR)\" \ - -DFLATPAK_CONFIGDIR=\"$(sysconfdir)/flatpak\" \ - -DFLATPAK_BASEDIR=\"$(pkgdatadir)\" \ - -DFLATPAK_TRIGGERDIR=\"$(pkgdatadir)/triggers\" \ - -DSYSTEM_FONTS_DIR=\"$(SYSTEM_FONTS_DIR)\" \ - -DSYSTEM_HELPER_USER=\"$(SYSTEM_HELPER_USER)\" \ - -DSYSTEM_FONT_CACHE_DIRS=\"$(SYSTEM_FONT_CACHE_DIRS)\" \ - -DG_LOG_DOMAIN=\"flatpak\" \ - -I$(srcdir)/subprojects/libglnx \ - -I$(srcdir)/common \ - -I$(builddir)/common \ - -include "config.h" \ - $(NULL) - -ASAN_FLAGS= -if ENABLE_ASAN -ASAN_FLAGS = -fsanitize=undefined -fsanitize-undefined-trap-on-error -fsanitize=address -endif - -AM_CFLAGS = $(WARN_CFLAGS) $(ASAN_FLAGS) -AM_LDFLAGS = $(ASAN_FLAGS) - -if WITH_SYSTEM_BWRAP -AM_CPPFLAGS += -DHELPER=\"$(BWRAP)\" -else -AM_CPPFLAGS += -DHELPER=\"$(libexecdir)/flatpak-bwrap\" -endif - -if WITH_SYSTEM_DBUS_PROXY -AM_CPPFLAGS += -DDBUSPROXY=\"$(DBUS_PROXY)\" -else -AM_CPPFLAGS += -DDBUSPROXY=\"$(libexecdir)/flatpak-dbus-proxy\" -endif - -triggersdir = $(pkgdatadir)/triggers -dist_triggers_SCRIPTS = \ - triggers/gtk-icon-cache.trigger \ - triggers/mime-database.trigger \ - triggers/desktop-database.trigger \ - $(NULL) - -# This canonicalizes the PKG_CHECK_MODULES or AM_PATH_GPGME results -INTERNAL_GPGME_CFLAGS = $(DEP_GPGME_CFLAGS) $(DEP_GPGME_PTHREAD_CFLAGS) $(GPGME_PTHREAD_CFLAGS) -INTERNAL_GPGME_LIBS = $(DEP_GPGME_LIBS) $(DEP_GPGME_PTHREAD_LIBS) $(GPGME_PTHREAD_LIBS) - -lib_LTLIBRARIES = -noinst_LTLIBRARIES += libglnx.la -libglnx_srcpath := $(srcdir)/subprojects/libglnx -# This intentionally does not include AM_CFLAGS, libglnx always uses those -libglnx_cflags := \ - $(BASE_CFLAGS) \ - "-I$(libglnx_srcpath)" \ - -std=gnu99 \ - $(HIDDEN_VISIBILITY_CFLAGS) \ - $(NULL) -libglnx_libs := $(BASE_LIBS) -include subprojects/Makefile-libglnx.am.inc - -include common/Makefile.am.inc -include data/Makefile.am.inc -include app/Makefile.am.inc -include session-helper/Makefile.am.inc -include portal/Makefile.am.inc -include system-helper/Makefile.am.inc -include oci-authenticator/Makefile.am.inc -include icon-validator/Makefile.am.inc -include revokefs/Makefile.am.inc -include selinux/Makefile.am.inc -include sideload-repos-systemd/Makefile.am.inc -include tests/Makefile.am.inc - -if !WITH_SYSTEM_DBUS_PROXY -libexec_PROGRAMS+=flatpak-dbus-proxy -flatpak_dbus_proxy_SOURCES = \ - subprojects/dbus-proxy/flatpak-proxy.c \ - subprojects/dbus-proxy/flatpak-proxy.h \ - subprojects/dbus-proxy/dbus-proxy.c \ - subprojects/dbus-proxy/backport-autoptr.h \ - $(NULL) -flatpak_dbus_proxy_LDADD = $(AM_LDADD) $(BASE_LIBS) -flatpak_dbus_proxy_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) -endif - -if !WITH_SYSTEM_BWRAP - -bwrap_PROGRAMS = flatpak-bwrap -flatpak_bwrap_SOURCES = $(bwrap_SOURCES) -flatpak_bwrap_CFLAGS = $(AM_CFLAGS) $(bwrap_CFLAGS) -flatpak_bwrap_LDADD = $(AM_LDADD) $(bwrap_LDADD) $(CAP_LIB) -bwrapdir = $(libexecdir) -include subprojects/Makefile-bwrap.am.inc - -endif # !WITH_SYSTEM_BWRAP - -# NOTE: bwrap is install-bwrapPROGS which is run from install-data, not install-exec, this data-hook is used -install-data-hook: - $(MAKE) $(AM_MAKEFLAGS) install-test-data-hook -if !WITH_SYSTEM_BWRAP -if PRIV_MODE_SETUID - $(SUDO_BIN) chown root $(DESTDIR)$(libexecdir)/flatpak-bwrap - $(SUDO_BIN) chmod u+s $(DESTDIR)$(libexecdir)/flatpak-bwrap -endif # !PRIV_MODE_SETUID -endif # !WITH_SYSTEM_BWRAP - -bashcompletiondir = $(datadir)/bash-completion/completions -bashcompletion_DATA = completion/flatpak -EXTRA_DIST += $(bashcompletion_DATA) - -zshcompletiondir = $(datadir)/zsh/site-functions -zshcompletion_DATA = completion/_flatpak -EXTRA_DIST += $(zshcompletion_DATA) - -fishcompletiondir = $(datadir)/fish/vendor_completions.d -fishcompletion_DATA = completion/flatpak.fish -EXTRA_DIST += $(fishcompletion_DATA) - -profiledir = $(PROFILE_DIR) -profile_DATA = profile/flatpak.sh -EXTRA_DIST += $(profile_DATA) - -fishconfdir = $(datadir)/fish/vendor_conf.d -fishconf_DATA = profile/flatpak.fish -EXTRA_DIST += $(fishconf_DATA) - -envdir = $(datadir)/gdm/env.d -env_DATA = -if INSTALL_GDM_ENV_FILE -env_DATA += flatpak.env -endif - -EXTRA_DIST += env.d/flatpak.env.in env.d/60-flatpak env.d/60-flatpak-system-only -DISTCLEANFILES += flatpak.env - -flatpak.env: env.d/flatpak.env.in - $(AM_V_GEN) $(SED) -e "s|\@localstatedir\@|$(localstatedir)|" \ - -e "s|\@sysconfdir\@|$(sysconfdir)|" $< > $@ - -systemenvgendir = $(systemdsystemenvgendir) -systemenvgen_SCRIPTS = env.d/60-flatpak-system-only - -userenvgendir = $(systemduserenvgendir) -userenvgen_SCRIPTS = env.d/60-flatpak - -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = flatpak.pc -EXTRA_DIST += flatpak.pc.in - -scriptsdir = $(bindir) -scripts_SCRIPTS = scripts/flatpak-bisect scripts/flatpak-coredumpctl -EXTRA_DIST += scripts/flatpak-bisect scripts/flatpak-coredumpctl - -EXTRA_DIST += subprojects/variant-schema-compiler/variant-schema-compiler - -EXTRA_DIST += autogen.sh - -EXTRA_DIST += README.md - -EXTRA_DIST += flatpak.png - -AM_DISTCHECK_CONFIGURE_FLAGS = \ - --enable-documentation \ - --disable-maintainer-mode \ - --enable-introspection - -.PHONY: coverage lcov-clean genlcov - -coverage: - $(AM_V_GEN) $(MAKE) $(AM_MAKEFLAGS) lcov-clean - $(AM_V_GEN) FLATPAK_TEST_COVERAGE=1 $(MAKE) check - $(AM_V_GEN) $(MAKE) $(AM_MAKEFLAGS) genlcov - -lcov-clean: - $(AM_V_GEN) $(LCOV) --directory $(top_builddir) --zerocounters - -genlcov: - $(AM_V_GEN) $(LCOV) --directory $(top_builddir) --capture --output-file coverage.info - $(AM_V_GEN) $(GENHTML) --prefix $(top_builddir) --output-directory coverage coverage.info diff --git a/Makefile.in b/Makefile.in deleted file mode 100644 index 61667ee..0000000 --- a/Makefile.in +++ /dev/null @@ -1,7969 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -# GLIB - Library of useful C routines - -# Copyright (C) 2015 Colin Walters -# SPDX-License-Identifier: LGPL-2.0-or-later -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the -# Free Software Foundation, Inc., 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - -# Copyright (C) 2016 Colin Walters -# Copyright (C) 2018 Alexander Larsson -# -# SPDX-License-Identifier: LGPL-2.0+ -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the -# Free Software Foundation, Inc., 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - - - - - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -[dEDm]) skip_next=yes;; \ - -[JT]) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -bin_PROGRAMS = $(am__EXEEXT_1) flatpak$(EXEEXT) $(am__EXEEXT_1) -noinst_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_10) \ - test-libflatpak$(EXEEXT) revokefs-demo$(EXEEXT) -libexec_PROGRAMS = $(am__EXEEXT_1) flatpak-session-helper$(EXEEXT) \ - $(am__EXEEXT_1) flatpak-portal$(EXEEXT) $(am__EXEEXT_1) \ - $(am__EXEEXT_8) flatpak-oci-authenticator$(EXEEXT) \ - $(am__EXEEXT_1) flatpak-validate-icon$(EXEEXT) $(am__EXEEXT_1) \ - revokefs-fuse$(EXEEXT) $(am__EXEEXT_9) -TESTS = $(am__EXEEXT_2) $(am__EXEEXT_12) $(am__EXEEXT_14) \ - $(am__EXEEXT_6) -installed_test_PROGRAMS = $(am__EXEEXT_7) -check_PROGRAMS = $(am__EXEEXT_5) $(am__EXEEXT_6) -@ENABLE_ALWAYS_BUILD_TESTS_TRUE@am__append_1 = $(all_test_ltlibs) -@ENABLE_ALWAYS_BUILD_TESTS_TRUE@am__append_2 = $(all_test_programs) -@ENABLE_ALWAYS_BUILD_TESTS_TRUE@am__append_3 = $(all_test_scripts) -@ENABLE_ALWAYS_BUILD_TESTS_TRUE@am__append_4 = $(all_test_data) -@ENABLE_ALWAYS_BUILD_TESTS_FALSE@am__append_5 = $(all_test_ltlibs) -@ENABLE_ALWAYS_BUILD_TESTS_FALSE@am__append_6 = $(all_test_programs) -@ENABLE_ALWAYS_BUILD_TESTS_FALSE@am__append_7 = $(all_test_scripts) -@ENABLE_ALWAYS_BUILD_TESTS_FALSE@am__append_8 = $(all_test_data) -@ENABLE_INSTALLED_TESTS_TRUE@am__append_9 = $(test_programs) $(installed_test_programs) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(test_extra_programs) $(installed_test_extra_programs) - -@ENABLE_INSTALLED_TESTS_TRUE@am__append_10 = $(test_scripts) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(installed_test_scripts) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(test_extra_scripts) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(test_installed_extra_scripts) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(dist_test_scripts) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(dist_test_extra_scripts) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(dist_installed_test_scripts) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(dist_installed_test_extra_scripts) -@ENABLE_INSTALLED_TESTS_TRUE@am__append_11 = $(test_data) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(installed_test_data) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(dist_test_data) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(dist_installed_test_data) -@ENABLE_INSTALLED_TESTS_TRUE@am__append_12 = $(test_ltlibraries) $(installed_test_ltlibraries) -@ENABLE_INSTALLED_TESTS_TRUE@am__append_13 = $(installed_test_meta_DATA) -@BUILD_DOCUMENTATION_TRUE@am__append_14 = . doc -@WITH_SYSTEM_BWRAP_TRUE@am__append_15 = -DHELPER=\"$(BWRAP)\" -@WITH_SYSTEM_BWRAP_FALSE@am__append_16 = -DHELPER=\"$(libexecdir)/flatpak-bwrap\" -@WITH_SYSTEM_DBUS_PROXY_TRUE@am__append_17 = -DDBUSPROXY=\"$(DBUS_PROXY)\" -@WITH_SYSTEM_DBUS_PROXY_FALSE@am__append_18 = -DDBUSPROXY=\"$(libexecdir)/flatpak-dbus-proxy\" -@ENABLE_INTERNAL_CHECKS_TRUE@am__append_19 = --internal-validation -@HAVE_LIBMALCONTENT_TRUE@am__append_20 = \ -@HAVE_LIBMALCONTENT_TRUE@ common/flatpak-parental-controls.c \ -@HAVE_LIBMALCONTENT_TRUE@ common/flatpak-parental-controls-private.h \ -@HAVE_LIBMALCONTENT_TRUE@ $(NULL) - -@HAVE_INTROSPECTION_TRUE@am__append_21 = Flatpak-1.0.gir -@HAVE_INTROSPECTION_TRUE@am__append_22 = $(nodist_gir_DATA) \ -@HAVE_INTROSPECTION_TRUE@ $(nodist_typelib_DATA) -@BUILD_SYSTEM_HELPER_TRUE@am__append_23 = \ -@BUILD_SYSTEM_HELPER_TRUE@ flatpak-system-helper \ -@BUILD_SYSTEM_HELPER_TRUE@ $(NULL) - -@BUILD_SYSTEM_HELPER_TRUE@am__append_24 = system-helper/org.freedesktop.Flatpak.SystemHelper.service.in \ -@BUILD_SYSTEM_HELPER_TRUE@ system-helper/flatpak-system-helper.service.in -@BUILD_SYSTEM_HELPER_TRUE@am__append_25 = system-helper/flatpak-system-helper.service -@BUILD_SYSTEM_HELPER_TRUE@am__append_26 = system-helper/org.freedesktop.Flatpak.policy system-helper/org.freedesktop.Flatpak.rules system-helper/flatpak-system-helper.service system-helper/org.freedesktop.Flatpak.SystemHelper.service system-helper/flatpak.conf -@BUILD_AUTO_SIDELOADING_TRUE@am__append_27 = sideload-repos-systemd/flatpak-sideload-usb-repo.service.in -@BUILD_AUTO_SIDELOADING_TRUE@am__append_28 = sideload-repos-systemd/flatpak-sideload-usb-repo.service \ -@BUILD_AUTO_SIDELOADING_TRUE@ sideload-repos-systemd/flatpak-sideload-usb-repo.path -@BUILD_AUTO_SIDELOADING_TRUE@am__append_29 = sideload-repos-systemd/tmpfiles.d/flatpak-sideload-repos.conf -@WITH_SYSTEM_DBUS_PROXY_TRUE@am__append_30 = FLATPAK_DBUSPROXY=$(DBUS_PROXY) -@WITH_SYSTEM_DBUS_PROXY_FALSE@am__append_31 = FLATPAK_DBUSPROXY=$$(cd $(top_builddir) && pwd)/flatpak-dbus-proxy -@WITH_SYSTEM_BWRAP_TRUE@am__append_32 = FLATPAK_BWRAP=$(BWRAP) -@WITH_SYSTEM_BWRAP_FALSE@am__append_33 = FLATPAK_BWRAP=$$(cd $(top_builddir) && pwd)/flatpak-bwrap -@ENABLE_INSTALLED_TESTS_TRUE@am__append_34 = -rpath $(installed_testdir) -@ENABLE_INSTALLED_TESTS_FALSE@am__append_35 = -rpath ${abs_builddir} -@WITH_SYSTEM_DBUS_PROXY_FALSE@am__append_36 = flatpak-dbus-proxy -@WITH_SYSTEM_BWRAP_FALSE@bwrap_PROGRAMS = flatpak-bwrap$(EXEEXT) -@INSTALL_GDM_ENV_FILE_TRUE@am__append_37 = flatpak.env -subdir = . -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/subprojects/libglnx/libglnx.m4 \ - $(top_srcdir)/m4/attributes.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/glibtests.m4 $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ - $(am__configure_deps) $(am__dist_libexec_SCRIPTS_DIST) \ - $(dist_triggers_SCRIPTS) $(am__dist_dbusconf_DATA_DIST) \ - $(am__dist_installed_test_keyring_DATA_DIST) \ - $(am__dist_installed_test_keyring2_DATA_DIST) \ - $(am__dist_tmpfiles_DATA_DIST) $(flatpakinclude_HEADERS) \ - $(am__DIST_COMMON) -am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ - configure.lineno config.status.lineno -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = config.h -CONFIG_CLEAN_FILES = flatpak.pc common/flatpak-version-macros.h -CONFIG_CLEAN_VPATH_FILES = -am__EXEEXT_1 = -am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bwrapdir)" \ - "$(DESTDIR)$(installed_testdir)" "$(DESTDIR)$(libexecdir)" \ - "$(DESTDIR)$(installed_testdir)" "$(DESTDIR)$(libdir)" \ - "$(DESTDIR)$(libexecdir)" "$(DESTDIR)$(triggersdir)" \ - "$(DESTDIR)$(installed_testdir)" "$(DESTDIR)$(scriptsdir)" \ - "$(DESTDIR)$(systemenvgendir)" "$(DESTDIR)$(userenvgendir)" \ - "$(DESTDIR)$(bashcompletiondir)" \ - "$(DESTDIR)$(dbus_servicedir)" \ - "$(DESTDIR)$(dbussystemservicedir)" "$(DESTDIR)$(dbusconfdir)" \ - "$(DESTDIR)$(installed_test_keyringdir)" \ - "$(DESTDIR)$(installed_test_keyring2dir)" \ - "$(DESTDIR)$(tmpfilesdir)" "$(DESTDIR)$(envdir)" \ - "$(DESTDIR)$(fishcompletiondir)" "$(DESTDIR)$(fishconfdir)" \ - "$(DESTDIR)$(installed_testdir)" \ - "$(DESTDIR)$(installed_test_metadir)" \ - "$(DESTDIR)$(introspectiondir)" \ - "$(DESTDIR)$(installed_testdir)" "$(DESTDIR)$(girdir)" \ - "$(DESTDIR)$(typelibdir)" "$(DESTDIR)$(pkgconfigdir)" \ - "$(DESTDIR)$(polkit_policydir)" "$(DESTDIR)$(polkit_rulesdir)" \ - "$(DESTDIR)$(profiledir)" "$(DESTDIR)$(selinux_develdir)" \ - "$(DESTDIR)$(selinux_moduledir)" \ - "$(DESTDIR)$(systemdsystemunitdir)" \ - "$(DESTDIR)$(systemduserunitdir)" "$(DESTDIR)$(sysusersdir)" \ - "$(DESTDIR)$(zshcompletiondir)" \ - "$(DESTDIR)$(flatpakincludedir)" \ - "$(DESTDIR)$(flatpakincludedir)" -am__EXEEXT_2 = test-context$(EXEEXT) test-exports$(EXEEXT) \ - test-instance$(EXEEXT) test-portal$(EXEEXT) \ - testcommon$(EXEEXT) testlibrary$(EXEEXT) $(am__EXEEXT_1) -am__EXEEXT_3 = tests/hold-lock$(EXEEXT) tests/httpcache$(EXEEXT) \ - tests/list-unused$(EXEEXT) tests/mock-flatpak$(EXEEXT) \ - tests/test-authenticator$(EXEEXT) \ - tests/test-portal-impl$(EXEEXT) \ - tests/test-update-portal$(EXEEXT) tests/try-syscall$(EXEEXT) \ - $(am__EXEEXT_1) -am__EXEEXT_4 = $(am__EXEEXT_2) $(am__EXEEXT_3) -@ENABLE_ALWAYS_BUILD_TESTS_FALSE@am__EXEEXT_5 = $(am__EXEEXT_4) -am__EXEEXT_6 = test-libglnx-xattrs$(EXEEXT) test-libglnx-fdio$(EXEEXT) \ - test-libglnx-errors$(EXEEXT) test-libglnx-macros$(EXEEXT) \ - test-libglnx-shutil$(EXEEXT) -@ENABLE_INSTALLED_TESTS_TRUE@am__EXEEXT_7 = $(am__EXEEXT_2) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(am__EXEEXT_3) -@BUILD_SYSTEM_HELPER_TRUE@am__EXEEXT_8 = \ -@BUILD_SYSTEM_HELPER_TRUE@ flatpak-system-helper$(EXEEXT) \ -@BUILD_SYSTEM_HELPER_TRUE@ $(am__EXEEXT_1) -@WITH_SYSTEM_DBUS_PROXY_FALSE@am__EXEEXT_9 = \ -@WITH_SYSTEM_DBUS_PROXY_FALSE@ flatpak-dbus-proxy$(EXEEXT) -@ENABLE_ALWAYS_BUILD_TESTS_TRUE@am__EXEEXT_10 = $(am__EXEEXT_4) -PROGRAMS = $(bin_PROGRAMS) $(bwrap_PROGRAMS) \ - $(installed_test_PROGRAMS) $(libexec_PROGRAMS) \ - $(noinst_PROGRAMS) -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ - $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ - if (++n[$$2] == $(am__install_max)) \ - { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ - END { for (dir in files) print dir, files[dir] }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ - } -LTLIBRARIES = $(installed_test_LTLIBRARIES) $(lib_LTLIBRARIES) \ - $(noinst_LTLIBRARIES) -am__DEPENDENCIES_1 = -libflatpak_app_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -am__dirstamp = $(am__leading_dot)dirstamp -am__objects_1 = -am_libflatpak_app_la_OBJECTS = \ - app/libflatpak_app_la-flatpak-builtins-utils.lo \ - app/libflatpak_app_la-flatpak-table-printer.lo \ - $(am__objects_1) -nodist_libflatpak_app_la_OBJECTS = \ - app/libflatpak_app_la-parse-datetime.lo $(am__objects_1) -libflatpak_app_la_OBJECTS = $(am_libflatpak_app_la_OBJECTS) \ - $(nodist_libflatpak_app_la_OBJECTS) -AM_V_lt = $(am__v_lt_@AM_V@) -am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) -am__v_lt_0 = --silent -am__v_lt_1 = -libflatpak_app_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(libflatpak_app_la_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ - -o $@ -libflatpak_common_base_la_DEPENDENCIES = $(am__DEPENDENCIES_1) -am_libflatpak_common_base_la_OBJECTS = \ - common/libflatpak_common_base_la-flatpak-utils-base.lo \ - $(am__objects_1) -am__objects_2 = \ - common/libflatpak_common_base_la-flatpak-dbus-generated.lo \ - common/libflatpak_common_base_la-flatpak-document-dbus-generated.lo -nodist_libflatpak_common_base_la_OBJECTS = $(am__objects_2) \ - $(am__objects_1) -libflatpak_common_base_la_OBJECTS = \ - $(am_libflatpak_common_base_la_OBJECTS) \ - $(nodist_libflatpak_common_base_la_OBJECTS) -libflatpak_common_base_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(libflatpak_common_base_la_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -libflatpak_common_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -am__libflatpak_common_la_SOURCES_DIST = common/flatpak.h \ - common/flatpak-ref.h common/flatpak-error.h \ - common/flatpak-installed-ref.h common/flatpak-remote-ref.h \ - common/flatpak-related-ref.h common/flatpak-bundle-ref.h \ - common/flatpak-installation.h common/flatpak-remote.h \ - common/flatpak-version-macros.h common/flatpak-portal-error.h \ - common/flatpak-transaction.h common/flatpak-instance.h \ - common/flatpak-appdata-private.h common/flatpak-appdata.c \ - common/flatpak-auth-private.h common/flatpak-auth.c \ - common/flatpak-bundle-ref.c common/flatpak-bwrap-private.h \ - common/flatpak-bwrap.c \ - common/flatpak-chain-input-stream-private.h \ - common/flatpak-chain-input-stream.c \ - common/flatpak-common-types-private.h \ - common/flatpak-context-private.h common/flatpak-context.c \ - common/flatpak-dir-private.h common/flatpak-dir.c \ - common/flatpak-error.c common/flatpak-exports-private.h \ - common/flatpak-exports.c common/flatpak-installation-private.h \ - common/flatpak-installation.c \ - common/flatpak-installed-ref-private.h \ - common/flatpak-installed-ref.c \ - common/flatpak-instance-private.h common/flatpak-instance.c \ - common/flatpak-json-oci-private.h common/flatpak-json-oci.c \ - common/flatpak-json-private.h common/flatpak-json.c \ - common/flatpak-oci-registry-private.h \ - common/flatpak-oci-registry.c common/flatpak-portal-error.c \ - common/flatpak-progress-private.h common/flatpak-progress.c \ - common/flatpak-ref.c common/flatpak-ref-utils-private.h \ - common/flatpak-ref-utils.c \ - common/flatpak-related-ref-private.h \ - common/flatpak-related-ref.c common/flatpak-remote-private.h \ - common/flatpak-remote-ref-private.h \ - common/flatpak-remote-ref.c common/flatpak-remote.c \ - common/flatpak-run-private.h common/flatpak-run.c \ - common/flatpak-syscalls-private.h \ - common/flatpak-transaction-private.h \ - common/flatpak-transaction.c \ - common/flatpak-utils-http-private.h \ - common/flatpak-utils-http.c common/flatpak-utils-private.h \ - common/flatpak-utils.c common/flatpak-uri-private.h \ - common/flatpak-uri.c common/flatpak-prune.c \ - common/flatpak-prune-private.h \ - common/flatpak-zstd-decompressor.c \ - common/flatpak-zstd-decompressor-private.h \ - common/valgrind-private.h common/flatpak-parental-controls.c \ - common/flatpak-parental-controls-private.h -am__objects_3 = $(am__objects_1) -@HAVE_LIBMALCONTENT_TRUE@am__objects_4 = common/libflatpak_common_la-flatpak-parental-controls.lo \ -@HAVE_LIBMALCONTENT_TRUE@ $(am__objects_1) -am_libflatpak_common_la_OBJECTS = $(am__objects_3) \ - common/libflatpak_common_la-flatpak-appdata.lo \ - common/libflatpak_common_la-flatpak-auth.lo \ - common/libflatpak_common_la-flatpak-bundle-ref.lo \ - common/libflatpak_common_la-flatpak-bwrap.lo \ - common/libflatpak_common_la-flatpak-chain-input-stream.lo \ - common/libflatpak_common_la-flatpak-context.lo \ - common/libflatpak_common_la-flatpak-dir.lo \ - common/libflatpak_common_la-flatpak-error.lo \ - common/libflatpak_common_la-flatpak-exports.lo \ - common/libflatpak_common_la-flatpak-installation.lo \ - common/libflatpak_common_la-flatpak-installed-ref.lo \ - common/libflatpak_common_la-flatpak-instance.lo \ - common/libflatpak_common_la-flatpak-json-oci.lo \ - common/libflatpak_common_la-flatpak-json.lo \ - common/libflatpak_common_la-flatpak-oci-registry.lo \ - common/libflatpak_common_la-flatpak-portal-error.lo \ - common/libflatpak_common_la-flatpak-progress.lo \ - common/libflatpak_common_la-flatpak-ref.lo \ - common/libflatpak_common_la-flatpak-ref-utils.lo \ - common/libflatpak_common_la-flatpak-related-ref.lo \ - common/libflatpak_common_la-flatpak-remote-ref.lo \ - common/libflatpak_common_la-flatpak-remote.lo \ - common/libflatpak_common_la-flatpak-run.lo \ - common/libflatpak_common_la-flatpak-transaction.lo \ - common/libflatpak_common_la-flatpak-utils-http.lo \ - common/libflatpak_common_la-flatpak-utils.lo \ - common/libflatpak_common_la-flatpak-uri.lo \ - common/libflatpak_common_la-flatpak-prune.lo \ - common/libflatpak_common_la-flatpak-zstd-decompressor.lo \ - $(am__objects_1) $(am__objects_4) -am__objects_5 = \ - common/libflatpak_common_la-flatpak-systemd-dbus-generated.lo -nodist_libflatpak_common_la_OBJECTS = $(am__objects_3) \ - $(am__objects_5) \ - common/libflatpak_common_la-flatpak-enum-types.lo \ - $(am__objects_1) -libflatpak_common_la_OBJECTS = $(am_libflatpak_common_la_OBJECTS) \ - $(nodist_libflatpak_common_la_OBJECTS) -libflatpak_common_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(libflatpak_common_la_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -libflatpak_la_DEPENDENCIES = libflatpak-common.la \ - libflatpak-common-base.la libglnx.la $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -am_libflatpak_la_OBJECTS = common/libflatpak_la-flatpak.lo \ - $(am__objects_1) -libflatpak_la_OBJECTS = $(am_libflatpak_la_OBJECTS) -libflatpak_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libflatpak_la_CFLAGS) \ - $(CFLAGS) $(libflatpak_la_LDFLAGS) $(LDFLAGS) -o $@ -am__DEPENDENCIES_3 = $(am__DEPENDENCIES_1) -libglnx_la_DEPENDENCIES = $(am__DEPENDENCIES_3) -am_libglnx_la_OBJECTS = \ - subprojects/libglnx/libglnx_la-glnx-backports.lo \ - subprojects/libglnx/libglnx_la-glnx-local-alloc.lo \ - subprojects/libglnx/libglnx_la-glnx-errors.lo \ - subprojects/libglnx/libglnx_la-glnx-console.lo \ - subprojects/libglnx/libglnx_la-glnx-dirfd.lo \ - subprojects/libglnx/libglnx_la-glnx-fdio.lo \ - subprojects/libglnx/libglnx_la-glnx-lockfile.lo \ - subprojects/libglnx/libglnx_la-glnx-xattrs.lo \ - subprojects/libglnx/libglnx_la-glnx-shutil.lo $(am__objects_1) -libglnx_la_OBJECTS = $(am_libglnx_la_OBJECTS) -libglnx_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libglnx_la_CFLAGS) \ - $(CFLAGS) $(libglnx_la_LDFLAGS) $(LDFLAGS) -o $@ -libtestlib_la_DEPENDENCIES = $(am__DEPENDENCIES_1) libglnx.la \ - $(am__DEPENDENCIES_1) -am_libtestlib_la_OBJECTS = tests/libtestlib_la-testlib.lo \ - $(am__objects_1) -libtestlib_la_OBJECTS = $(am_libtestlib_la_OBJECTS) -libtestlib_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libtestlib_la_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -tests_libpreload_la_LIBADD = -am_tests_libpreload_la_OBJECTS = tests/libpreload.lo -tests_libpreload_la_OBJECTS = $(am_tests_libpreload_la_OBJECTS) -tests_libpreload_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(AM_CFLAGS) $(CFLAGS) $(tests_libpreload_la_LDFLAGS) \ - $(LDFLAGS) -o $@ -@ENABLE_ALWAYS_BUILD_TESTS_FALSE@am_tests_libpreload_la_rpath = -@ENABLE_ALWAYS_BUILD_TESTS_TRUE@am_tests_libpreload_la_rpath = -@ENABLE_INSTALLED_TESTS_TRUE@am_tests_libpreload_la_rpath = -rpath \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(installed_testdir) -am__flatpak_SOURCES_DIST = app/flatpak-main.c app/flatpak-builtins.h \ - app/flatpak-builtins-remote-add.c \ - app/flatpak-builtins-remote-modify.c \ - app/flatpak-builtins-remote-delete.c \ - app/flatpak-builtins-remote-list.c \ - app/flatpak-builtins-remote-ls.c \ - app/flatpak-builtins-remote-info.c \ - app/flatpak-builtins-install.c app/flatpak-builtins-override.c \ - app/flatpak-builtins-make-current.c \ - app/flatpak-builtins-update.c app/flatpak-builtins-uninstall.c \ - app/flatpak-builtins-mask.c app/flatpak-builtins-pin.c \ - app/flatpak-builtins-list.c app/flatpak-builtins-info.c \ - app/flatpak-builtins-config.c app/flatpak-builtins-run.c \ - app/flatpak-builtins-enter.c app/flatpak-builtins-ps.c \ - app/flatpak-builtins-build-init.c app/flatpak-builtins-build.c \ - app/flatpak-builtins-build-finish.c \ - app/flatpak-builtins-build-export.c \ - app/flatpak-builtins-build-bundle.c \ - app/flatpak-builtins-build-import-bundle.c \ - app/flatpak-builtins-build-commit-from.c \ - app/flatpak-builtins-build-sign.c \ - app/flatpak-builtins-build-update-repo.c \ - app/flatpak-builtins-repo.c \ - app/flatpak-builtins-document-export.c \ - app/flatpak-builtins-document-unexport.c \ - app/flatpak-builtins-document-info.c \ - app/flatpak-builtins-document-list.c \ - app/flatpak-builtins-permission-remove.c \ - app/flatpak-builtins-permission-set.c \ - app/flatpak-builtins-permission-list.c \ - app/flatpak-builtins-permission-show.c \ - app/flatpak-builtins-permission-reset.c \ - app/flatpak-builtins-search.c app/flatpak-builtins-repair.c \ - app/flatpak-builtins-create-usb.c app/flatpak-builtins-kill.c \ - app/flatpak-builtins-history.c app/flatpak-complete.c \ - app/flatpak-complete.h app/flatpak-cli-transaction.c \ - app/flatpak-cli-transaction.h app/flatpak-quiet-transaction.c \ - app/flatpak-quiet-transaction.h app/parse-datetime.h \ - app/flatpak-polkit-agent-text-listener.h \ - app/flatpak-polkit-agent-text-listener.c -@BUILD_SYSTEM_HELPER_TRUE@am__objects_6 = app/flatpak-flatpak-polkit-agent-text-listener.$(OBJEXT) \ -@BUILD_SYSTEM_HELPER_TRUE@ $(am__objects_1) -am_flatpak_OBJECTS = app/flatpak-flatpak-main.$(OBJEXT) \ - app/flatpak-flatpak-builtins-remote-add.$(OBJEXT) \ - app/flatpak-flatpak-builtins-remote-modify.$(OBJEXT) \ - app/flatpak-flatpak-builtins-remote-delete.$(OBJEXT) \ - app/flatpak-flatpak-builtins-remote-list.$(OBJEXT) \ - app/flatpak-flatpak-builtins-remote-ls.$(OBJEXT) \ - app/flatpak-flatpak-builtins-remote-info.$(OBJEXT) \ - app/flatpak-flatpak-builtins-install.$(OBJEXT) \ - app/flatpak-flatpak-builtins-override.$(OBJEXT) \ - app/flatpak-flatpak-builtins-make-current.$(OBJEXT) \ - app/flatpak-flatpak-builtins-update.$(OBJEXT) \ - app/flatpak-flatpak-builtins-uninstall.$(OBJEXT) \ - app/flatpak-flatpak-builtins-mask.$(OBJEXT) \ - app/flatpak-flatpak-builtins-pin.$(OBJEXT) \ - app/flatpak-flatpak-builtins-list.$(OBJEXT) \ - app/flatpak-flatpak-builtins-info.$(OBJEXT) \ - app/flatpak-flatpak-builtins-config.$(OBJEXT) \ - app/flatpak-flatpak-builtins-run.$(OBJEXT) \ - app/flatpak-flatpak-builtins-enter.$(OBJEXT) \ - app/flatpak-flatpak-builtins-ps.$(OBJEXT) \ - app/flatpak-flatpak-builtins-build-init.$(OBJEXT) \ - app/flatpak-flatpak-builtins-build.$(OBJEXT) \ - app/flatpak-flatpak-builtins-build-finish.$(OBJEXT) \ - app/flatpak-flatpak-builtins-build-export.$(OBJEXT) \ - app/flatpak-flatpak-builtins-build-bundle.$(OBJEXT) \ - app/flatpak-flatpak-builtins-build-import-bundle.$(OBJEXT) \ - app/flatpak-flatpak-builtins-build-commit-from.$(OBJEXT) \ - app/flatpak-flatpak-builtins-build-sign.$(OBJEXT) \ - app/flatpak-flatpak-builtins-build-update-repo.$(OBJEXT) \ - app/flatpak-flatpak-builtins-repo.$(OBJEXT) \ - app/flatpak-flatpak-builtins-document-export.$(OBJEXT) \ - app/flatpak-flatpak-builtins-document-unexport.$(OBJEXT) \ - app/flatpak-flatpak-builtins-document-info.$(OBJEXT) \ - app/flatpak-flatpak-builtins-document-list.$(OBJEXT) \ - app/flatpak-flatpak-builtins-permission-remove.$(OBJEXT) \ - app/flatpak-flatpak-builtins-permission-set.$(OBJEXT) \ - app/flatpak-flatpak-builtins-permission-list.$(OBJEXT) \ - app/flatpak-flatpak-builtins-permission-show.$(OBJEXT) \ - app/flatpak-flatpak-builtins-permission-reset.$(OBJEXT) \ - app/flatpak-flatpak-builtins-search.$(OBJEXT) \ - app/flatpak-flatpak-builtins-repair.$(OBJEXT) \ - app/flatpak-flatpak-builtins-create-usb.$(OBJEXT) \ - app/flatpak-flatpak-builtins-kill.$(OBJEXT) \ - app/flatpak-flatpak-builtins-history.$(OBJEXT) \ - app/flatpak-flatpak-complete.$(OBJEXT) \ - app/flatpak-flatpak-cli-transaction.$(OBJEXT) \ - app/flatpak-flatpak-quiet-transaction.$(OBJEXT) \ - $(am__objects_6) $(am__objects_1) -am__objects_7 = \ - app/flatpak-flatpak-permission-dbus-generated.$(OBJEXT) -nodist_flatpak_OBJECTS = $(am__objects_7) $(am__objects_1) -flatpak_OBJECTS = $(am_flatpak_OBJECTS) $(nodist_flatpak_OBJECTS) -flatpak_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) libglnx.la \ - libflatpak-app.la libflatpak-common.la \ - libflatpak-common-base.la $(am__DEPENDENCIES_1) -flatpak_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(flatpak_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am__flatpak_bwrap_SOURCES_DIST = subprojects/bubblewrap/bubblewrap.c \ - subprojects/bubblewrap/bind-mount.h \ - subprojects/bubblewrap/bind-mount.c \ - subprojects/bubblewrap/network.h \ - subprojects/bubblewrap/network.c \ - subprojects/bubblewrap/utils.h subprojects/bubblewrap/utils.c -@WITH_SYSTEM_BWRAP_FALSE@am__objects_8 = subprojects/bubblewrap/flatpak_bwrap-bubblewrap.$(OBJEXT) \ -@WITH_SYSTEM_BWRAP_FALSE@ subprojects/bubblewrap/flatpak_bwrap-bind-mount.$(OBJEXT) \ -@WITH_SYSTEM_BWRAP_FALSE@ subprojects/bubblewrap/flatpak_bwrap-network.$(OBJEXT) \ -@WITH_SYSTEM_BWRAP_FALSE@ subprojects/bubblewrap/flatpak_bwrap-utils.$(OBJEXT) \ -@WITH_SYSTEM_BWRAP_FALSE@ $(am__objects_1) -@WITH_SYSTEM_BWRAP_FALSE@am_flatpak_bwrap_OBJECTS = $(am__objects_8) -flatpak_bwrap_OBJECTS = $(am_flatpak_bwrap_OBJECTS) -@WITH_SYSTEM_BWRAP_FALSE@flatpak_bwrap_DEPENDENCIES = \ -@WITH_SYSTEM_BWRAP_FALSE@ $(am__DEPENDENCIES_1) \ -@WITH_SYSTEM_BWRAP_FALSE@ $(am__DEPENDENCIES_1) -flatpak_bwrap_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(flatpak_bwrap_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am__flatpak_dbus_proxy_SOURCES_DIST = \ - subprojects/dbus-proxy/flatpak-proxy.c \ - subprojects/dbus-proxy/flatpak-proxy.h \ - subprojects/dbus-proxy/dbus-proxy.c \ - subprojects/dbus-proxy/backport-autoptr.h -@WITH_SYSTEM_DBUS_PROXY_FALSE@am_flatpak_dbus_proxy_OBJECTS = subprojects/dbus-proxy/flatpak_dbus_proxy-flatpak-proxy.$(OBJEXT) \ -@WITH_SYSTEM_DBUS_PROXY_FALSE@ subprojects/dbus-proxy/flatpak_dbus_proxy-dbus-proxy.$(OBJEXT) \ -@WITH_SYSTEM_DBUS_PROXY_FALSE@ $(am__objects_1) -flatpak_dbus_proxy_OBJECTS = $(am_flatpak_dbus_proxy_OBJECTS) -@WITH_SYSTEM_DBUS_PROXY_FALSE@flatpak_dbus_proxy_DEPENDENCIES = \ -@WITH_SYSTEM_DBUS_PROXY_FALSE@ $(am__DEPENDENCIES_1) -flatpak_dbus_proxy_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(flatpak_dbus_proxy_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am_flatpak_oci_authenticator_OBJECTS = oci-authenticator/flatpak_oci_authenticator-flatpak-oci-authenticator.$(OBJEXT) \ - $(am__objects_1) -flatpak_oci_authenticator_OBJECTS = \ - $(am_flatpak_oci_authenticator_OBJECTS) -flatpak_oci_authenticator_DEPENDENCIES = $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) libflatpak-common.la \ - libflatpak-common-base.la libglnx.la -flatpak_oci_authenticator_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(flatpak_oci_authenticator_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am_flatpak_portal_OBJECTS = \ - portal/flatpak_portal-flatpak-portal.$(OBJEXT) \ - portal/flatpak_portal-flatpak-portal-app-info.$(OBJEXT) \ - portal/flatpak_portal-portal-impl.$(OBJEXT) \ - common/flatpak_portal-flatpak-portal-error.$(OBJEXT) \ - $(am__objects_1) -nodist_flatpak_portal_OBJECTS = \ - portal/flatpak_portal-flatpak-permission-dbus.$(OBJEXT) \ - portal/flatpak_portal-flatpak-portal-dbus.$(OBJEXT) \ - $(am__objects_1) -flatpak_portal_OBJECTS = $(am_flatpak_portal_OBJECTS) \ - $(nodist_flatpak_portal_OBJECTS) -flatpak_portal_DEPENDENCIES = $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) libflatpak-common.la \ - libflatpak-common-base.la libglnx.la -flatpak_portal_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(flatpak_portal_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o \ - $@ -am_flatpak_session_helper_OBJECTS = session-helper/flatpak_session_helper-flatpak-session-helper.$(OBJEXT) \ - $(am__objects_1) -flatpak_session_helper_OBJECTS = $(am_flatpak_session_helper_OBJECTS) -flatpak_session_helper_DEPENDENCIES = $(am__DEPENDENCIES_1) \ - libflatpak-common-base.la libglnx.la -flatpak_session_helper_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(flatpak_session_helper_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am__flatpak_system_helper_SOURCES_DIST = \ - system-helper/flatpak-system-helper.c \ - system-helper/flatpak-system-helper.h -@BUILD_SYSTEM_HELPER_TRUE@am_flatpak_system_helper_OBJECTS = system-helper/flatpak_system_helper-flatpak-system-helper.$(OBJEXT) \ -@BUILD_SYSTEM_HELPER_TRUE@ $(am__objects_1) -flatpak_system_helper_OBJECTS = $(am_flatpak_system_helper_OBJECTS) -@BUILD_SYSTEM_HELPER_TRUE@flatpak_system_helper_DEPENDENCIES = \ -@BUILD_SYSTEM_HELPER_TRUE@ $(am__DEPENDENCIES_1) \ -@BUILD_SYSTEM_HELPER_TRUE@ $(am__DEPENDENCIES_1) \ -@BUILD_SYSTEM_HELPER_TRUE@ $(am__DEPENDENCIES_1) \ -@BUILD_SYSTEM_HELPER_TRUE@ $(am__DEPENDENCIES_1) \ -@BUILD_SYSTEM_HELPER_TRUE@ libflatpak-common.la \ -@BUILD_SYSTEM_HELPER_TRUE@ libflatpak-common-base.la libglnx.la -flatpak_system_helper_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(flatpak_system_helper_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am_flatpak_validate_icon_OBJECTS = \ - icon-validator/flatpak_validate_icon-validate-icon.$(OBJEXT) -flatpak_validate_icon_OBJECTS = $(am_flatpak_validate_icon_OBJECTS) -flatpak_validate_icon_DEPENDENCIES = $(am__DEPENDENCIES_1) -flatpak_validate_icon_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(flatpak_validate_icon_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am_revokefs_demo_OBJECTS = revokefs/demo-demo.$(OBJEXT) -revokefs_demo_OBJECTS = $(am_revokefs_demo_OBJECTS) -revokefs_demo_DEPENDENCIES = $(am__DEPENDENCIES_1) -revokefs_demo_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(revokefs_demo_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am_revokefs_fuse_OBJECTS = revokefs/fuse-main.$(OBJEXT) \ - revokefs/fuse-writer.$(OBJEXT) -revokefs_fuse_OBJECTS = $(am_revokefs_fuse_OBJECTS) -revokefs_fuse_DEPENDENCIES = libglnx.la $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) -revokefs_fuse_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(revokefs_fuse_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am_test_context_OBJECTS = tests/test_context-test-context.$(OBJEXT) -test_context_OBJECTS = $(am_test_context_OBJECTS) -am__DEPENDENCIES_4 = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) libflatpak-app.la \ - libflatpak-common.la libflatpak-common-base.la libglnx.la \ - $(am__DEPENDENCIES_1) -test_context_DEPENDENCIES = $(am__DEPENDENCIES_4) libtestlib.la -test_context_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(test_context_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am_test_exports_OBJECTS = tests/test_exports-test-exports.$(OBJEXT) -test_exports_OBJECTS = $(am_test_exports_OBJECTS) -test_exports_DEPENDENCIES = $(am__DEPENDENCIES_4) libtestlib.la -test_exports_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(test_exports_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am_test_instance_OBJECTS = subprojects/libglnx/tests/test_instance-libglnx-testlib.$(OBJEXT) \ - tests/test_instance-test-instance.$(OBJEXT) $(am__objects_1) -test_instance_OBJECTS = $(am_test_instance_OBJECTS) -test_instance_DEPENDENCIES = $(am__DEPENDENCIES_4) libtestlib.la -test_instance_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(test_instance_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am_test_libflatpak_OBJECTS = \ - common/test_libflatpak-test-lib.$(OBJEXT) $(am__objects_1) -test_libflatpak_OBJECTS = $(am_test_libflatpak_OBJECTS) -test_libflatpak_DEPENDENCIES = $(am__DEPENDENCIES_1) libflatpak.la \ - $(am__DEPENDENCIES_1) -test_libflatpak_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(test_libflatpak_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ - -o $@ -am__objects_9 = subprojects/libglnx/tests/test_libglnx_errors-libglnx-testlib.$(OBJEXT) -am_test_libglnx_errors_OBJECTS = $(am__objects_9) \ - subprojects/libglnx/tests/test_libglnx_errors-test-libglnx-errors.$(OBJEXT) -test_libglnx_errors_OBJECTS = $(am_test_libglnx_errors_OBJECTS) -test_libglnx_errors_DEPENDENCIES = $(am__DEPENDENCIES_3) libglnx.la -test_libglnx_errors_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(test_libglnx_errors_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am__objects_10 = subprojects/libglnx/tests/test_libglnx_fdio-libglnx-testlib.$(OBJEXT) -am_test_libglnx_fdio_OBJECTS = $(am__objects_10) \ - subprojects/libglnx/tests/test_libglnx_fdio-test-libglnx-fdio.$(OBJEXT) -test_libglnx_fdio_OBJECTS = $(am_test_libglnx_fdio_OBJECTS) -test_libglnx_fdio_DEPENDENCIES = $(am__DEPENDENCIES_3) libglnx.la -test_libglnx_fdio_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(test_libglnx_fdio_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ - -o $@ -am__objects_11 = subprojects/libglnx/tests/test_libglnx_macros-libglnx-testlib.$(OBJEXT) -am_test_libglnx_macros_OBJECTS = $(am__objects_11) \ - subprojects/libglnx/tests/test_libglnx_macros-test-libglnx-macros.$(OBJEXT) -test_libglnx_macros_OBJECTS = $(am_test_libglnx_macros_OBJECTS) -test_libglnx_macros_DEPENDENCIES = $(am__DEPENDENCIES_3) libglnx.la -test_libglnx_macros_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(test_libglnx_macros_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am__objects_12 = subprojects/libglnx/tests/test_libglnx_shutil-libglnx-testlib.$(OBJEXT) -am_test_libglnx_shutil_OBJECTS = $(am__objects_12) \ - subprojects/libglnx/tests/test_libglnx_shutil-test-libglnx-shutil.$(OBJEXT) -test_libglnx_shutil_OBJECTS = $(am_test_libglnx_shutil_OBJECTS) -test_libglnx_shutil_DEPENDENCIES = $(am__DEPENDENCIES_3) libglnx.la -test_libglnx_shutil_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(test_libglnx_shutil_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am__objects_13 = subprojects/libglnx/tests/test_libglnx_xattrs-libglnx-testlib.$(OBJEXT) -am_test_libglnx_xattrs_OBJECTS = $(am__objects_13) \ - subprojects/libglnx/tests/test_libglnx_xattrs-test-libglnx-xattrs.$(OBJEXT) -test_libglnx_xattrs_OBJECTS = $(am_test_libglnx_xattrs_OBJECTS) -test_libglnx_xattrs_DEPENDENCIES = $(am__DEPENDENCIES_3) libglnx.la -test_libglnx_xattrs_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(test_libglnx_xattrs_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am_test_portal_OBJECTS = tests/test_portal-test-portal.$(OBJEXT) \ - $(am__objects_1) -nodist_test_portal_OBJECTS = \ - portal/test_portal-flatpak-portal-dbus.$(OBJEXT) \ - $(am__objects_1) -test_portal_OBJECTS = $(am_test_portal_OBJECTS) \ - $(nodist_test_portal_OBJECTS) -test_portal_DEPENDENCIES = $(am__DEPENDENCIES_4) libtestlib.la -test_portal_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(test_portal_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am_testcommon_OBJECTS = tests/testcommon-testcommon.$(OBJEXT) -testcommon_OBJECTS = $(am_testcommon_OBJECTS) -testcommon_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) libflatpak-app.la \ - libflatpak-common.la libflatpak-common-base.la libglnx.la \ - $(am__DEPENDENCIES_1) -testcommon_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testcommon_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am_testlibrary_OBJECTS = tests/testlibrary-can-use-fuse.$(OBJEXT) \ - tests/testlibrary-testlib.$(OBJEXT) \ - tests/testlibrary-testlibrary.$(OBJEXT) $(am__objects_1) -testlibrary_OBJECTS = $(am_testlibrary_OBJECTS) -testlibrary_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) libglnx.la libflatpak.la \ - $(am__DEPENDENCIES_1) -testlibrary_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(testlibrary_CFLAGS) \ - $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am_tests_hold_lock_OBJECTS = tests/hold_lock-hold-lock.$(OBJEXT) -tests_hold_lock_OBJECTS = $(am_tests_hold_lock_OBJECTS) -tests_hold_lock_DEPENDENCIES = $(am__DEPENDENCIES_1) libglnx.la -tests_hold_lock_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(tests_hold_lock_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ - -o $@ -tests_httpcache_SOURCES = tests/httpcache.c -tests_httpcache_OBJECTS = tests/httpcache-httpcache.$(OBJEXT) -tests_httpcache_DEPENDENCIES = $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - libflatpak-common.la libflatpak-common-base.la libglnx.la -tests_httpcache_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(tests_httpcache_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ - -o $@ -am_tests_list_unused_OBJECTS = \ - tests/list_unused-list-unused.$(OBJEXT) -tests_list_unused_OBJECTS = $(am_tests_list_unused_OBJECTS) -tests_list_unused_DEPENDENCIES = $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - libflatpak-common.la libflatpak-common-base.la libglnx.la -tests_list_unused_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(tests_list_unused_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ - -o $@ -am_tests_mock_flatpak_OBJECTS = \ - tests/mock_flatpak-mock-flatpak.$(OBJEXT) -tests_mock_flatpak_OBJECTS = $(am_tests_mock_flatpak_OBJECTS) -tests_mock_flatpak_DEPENDENCIES = $(am__DEPENDENCIES_4) libtestlib.la -tests_mock_flatpak_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(tests_mock_flatpak_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am_tests_test_authenticator_OBJECTS = \ - tests/test_authenticator-test-authenticator.$(OBJEXT) -tests_test_authenticator_OBJECTS = \ - $(am_tests_test_authenticator_OBJECTS) -tests_test_authenticator_DEPENDENCIES = $(am__DEPENDENCIES_1) \ - libflatpak-common.la libflatpak-common-base.la libglnx.la -tests_test_authenticator_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(tests_test_authenticator_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am_tests_test_portal_impl_OBJECTS = \ - tests/test_portal_impl-test-portal-impl.$(OBJEXT) -tests_test_portal_impl_OBJECTS = $(am_tests_test_portal_impl_OBJECTS) -tests_test_portal_impl_DEPENDENCIES = $(am__DEPENDENCIES_1) -tests_test_portal_impl_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(tests_test_portal_impl_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am_tests_test_update_portal_OBJECTS = \ - tests/test_update_portal-test-update-portal.$(OBJEXT) -nodist_tests_test_update_portal_OBJECTS = \ - portal/tests_test_update_portal-flatpak-portal-dbus.$(OBJEXT) -tests_test_update_portal_OBJECTS = \ - $(am_tests_test_update_portal_OBJECTS) \ - $(nodist_tests_test_update_portal_OBJECTS) -tests_test_update_portal_DEPENDENCIES = $(am__DEPENDENCIES_1) -tests_test_update_portal_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(tests_test_update_portal_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am_tests_try_syscall_OBJECTS = \ - tests/try_syscall-try-syscall.$(OBJEXT) -tests_try_syscall_OBJECTS = $(am_tests_try_syscall_OBJECTS) -tests_try_syscall_DEPENDENCIES = -tests_try_syscall_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ - $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ - $(tests_try_syscall_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ - -o $@ -am__dist_libexec_SCRIPTS_DIST = \ - sideload-repos-systemd/flatpak-create-sideload-symlinks.sh -SCRIPTS = $(dist_libexec_SCRIPTS) $(dist_triggers_SCRIPTS) \ - $(installed_test_SCRIPTS) $(noinst_SCRIPTS) $(scripts_SCRIPTS) \ - $(systemenvgen_SCRIPTS) $(userenvgen_SCRIPTS) -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -DEFAULT_INCLUDES = -I.@am__isrc@ -depcomp = $(SHELL) $(top_srcdir)/depcomp -am__maybe_remake_depfiles = depfiles -am__depfiles_remade = \ - app/$(DEPDIR)/flatpak-flatpak-builtins-build-bundle.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-build-commit-from.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-build-export.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-build-finish.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-build-import-bundle.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-build-init.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-build-sign.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-build-update-repo.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-build.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-config.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-create-usb.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-document-export.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-document-info.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-document-list.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-document-unexport.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-enter.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-history.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-info.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-install.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-kill.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-list.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-make-current.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-mask.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-override.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-permission-list.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-permission-remove.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-permission-reset.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-permission-set.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-permission-show.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-pin.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-ps.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-remote-add.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-remote-delete.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-remote-info.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-remote-list.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-remote-ls.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-remote-modify.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-repair.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-repo.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-run.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-search.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-uninstall.Po \ - app/$(DEPDIR)/flatpak-flatpak-builtins-update.Po \ - app/$(DEPDIR)/flatpak-flatpak-cli-transaction.Po \ - app/$(DEPDIR)/flatpak-flatpak-complete.Po \ - app/$(DEPDIR)/flatpak-flatpak-main.Po \ - app/$(DEPDIR)/flatpak-flatpak-permission-dbus-generated.Po \ - app/$(DEPDIR)/flatpak-flatpak-polkit-agent-text-listener.Po \ - app/$(DEPDIR)/flatpak-flatpak-quiet-transaction.Po \ - app/$(DEPDIR)/libflatpak_app_la-flatpak-builtins-utils.Plo \ - app/$(DEPDIR)/libflatpak_app_la-flatpak-table-printer.Plo \ - app/$(DEPDIR)/libflatpak_app_la-parse-datetime.Plo \ - common/$(DEPDIR)/flatpak_portal-flatpak-portal-error.Po \ - common/$(DEPDIR)/libflatpak_common_base_la-flatpak-dbus-generated.Plo \ - common/$(DEPDIR)/libflatpak_common_base_la-flatpak-document-dbus-generated.Plo \ - common/$(DEPDIR)/libflatpak_common_base_la-flatpak-utils-base.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-appdata.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-auth.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-bundle-ref.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-bwrap.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-chain-input-stream.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-context.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-dir.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-enum-types.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-error.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-exports.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-installation.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-installed-ref.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-instance.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-json-oci.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-json.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-oci-registry.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-parental-controls.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-portal-error.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-progress.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-prune.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-ref-utils.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-ref.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-related-ref.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-remote-ref.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-remote.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-run.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-systemd-dbus-generated.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-transaction.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-uri.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-utils-http.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-utils.Plo \ - common/$(DEPDIR)/libflatpak_common_la-flatpak-zstd-decompressor.Plo \ - common/$(DEPDIR)/libflatpak_la-flatpak.Plo \ - common/$(DEPDIR)/test_libflatpak-test-lib.Po \ - icon-validator/$(DEPDIR)/flatpak_validate_icon-validate-icon.Po \ - oci-authenticator/$(DEPDIR)/flatpak_oci_authenticator-flatpak-oci-authenticator.Po \ - portal/$(DEPDIR)/flatpak_portal-flatpak-permission-dbus.Po \ - portal/$(DEPDIR)/flatpak_portal-flatpak-portal-app-info.Po \ - portal/$(DEPDIR)/flatpak_portal-flatpak-portal-dbus.Po \ - portal/$(DEPDIR)/flatpak_portal-flatpak-portal.Po \ - portal/$(DEPDIR)/flatpak_portal-portal-impl.Po \ - portal/$(DEPDIR)/test_portal-flatpak-portal-dbus.Po \ - portal/$(DEPDIR)/tests_test_update_portal-flatpak-portal-dbus.Po \ - revokefs/$(DEPDIR)/demo-demo.Po \ - revokefs/$(DEPDIR)/fuse-main.Po \ - revokefs/$(DEPDIR)/fuse-writer.Po \ - session-helper/$(DEPDIR)/flatpak_session_helper-flatpak-session-helper.Po \ - subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bind-mount.Po \ - subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bubblewrap.Po \ - subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-network.Po \ - subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-utils.Po \ - subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-dbus-proxy.Po \ - subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-flatpak-proxy.Po \ - subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-backports.Plo \ - subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-console.Plo \ - subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-dirfd.Plo \ - subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-errors.Plo \ - subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-fdio.Plo \ - subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-local-alloc.Plo \ - subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-lockfile.Plo \ - subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-shutil.Plo \ - subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-xattrs.Plo \ - subprojects/libglnx/tests/$(DEPDIR)/test_instance-libglnx-testlib.Po \ - subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-libglnx-testlib.Po \ - subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-test-libglnx-errors.Po \ - subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-libglnx-testlib.Po \ - subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-test-libglnx-fdio.Po \ - subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-libglnx-testlib.Po \ - subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-test-libglnx-macros.Po \ - subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-libglnx-testlib.Po \ - subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-test-libglnx-shutil.Po \ - subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-libglnx-testlib.Po \ - subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-test-libglnx-xattrs.Po \ - system-helper/$(DEPDIR)/flatpak_system_helper-flatpak-system-helper.Po \ - tests/$(DEPDIR)/hold_lock-hold-lock.Po \ - tests/$(DEPDIR)/httpcache-httpcache.Po \ - tests/$(DEPDIR)/libpreload.Plo \ - tests/$(DEPDIR)/libtestlib_la-testlib.Plo \ - tests/$(DEPDIR)/list_unused-list-unused.Po \ - tests/$(DEPDIR)/mock_flatpak-mock-flatpak.Po \ - tests/$(DEPDIR)/test_authenticator-test-authenticator.Po \ - tests/$(DEPDIR)/test_context-test-context.Po \ - tests/$(DEPDIR)/test_exports-test-exports.Po \ - tests/$(DEPDIR)/test_instance-test-instance.Po \ - tests/$(DEPDIR)/test_portal-test-portal.Po \ - tests/$(DEPDIR)/test_portal_impl-test-portal-impl.Po \ - tests/$(DEPDIR)/test_update_portal-test-update-portal.Po \ - tests/$(DEPDIR)/testcommon-testcommon.Po \ - tests/$(DEPDIR)/testlibrary-can-use-fuse.Po \ - tests/$(DEPDIR)/testlibrary-testlib.Po \ - tests/$(DEPDIR)/testlibrary-testlibrary.Po \ - tests/$(DEPDIR)/try_syscall-try-syscall.Po -am__mv = mv -f -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) -AM_V_CC = $(am__v_CC_@AM_V@) -am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) -am__v_CC_0 = @echo " CC " $@; -am__v_CC_1 = -CCLD = $(CC) -LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -AM_V_CCLD = $(am__v_CCLD_@AM_V@) -am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) -am__v_CCLD_0 = @echo " CCLD " $@; -am__v_CCLD_1 = -SOURCES = $(libflatpak_app_la_SOURCES) \ - $(nodist_libflatpak_app_la_SOURCES) \ - $(libflatpak_common_base_la_SOURCES) \ - $(nodist_libflatpak_common_base_la_SOURCES) \ - $(libflatpak_common_la_SOURCES) \ - $(nodist_libflatpak_common_la_SOURCES) \ - $(libflatpak_la_SOURCES) $(libglnx_la_SOURCES) \ - $(libtestlib_la_SOURCES) $(tests_libpreload_la_SOURCES) \ - $(flatpak_SOURCES) $(nodist_flatpak_SOURCES) \ - $(flatpak_bwrap_SOURCES) $(flatpak_dbus_proxy_SOURCES) \ - $(flatpak_oci_authenticator_SOURCES) $(flatpak_portal_SOURCES) \ - $(nodist_flatpak_portal_SOURCES) \ - $(flatpak_session_helper_SOURCES) \ - $(flatpak_system_helper_SOURCES) \ - $(flatpak_validate_icon_SOURCES) $(revokefs_demo_SOURCES) \ - $(revokefs_fuse_SOURCES) $(test_context_SOURCES) \ - $(test_exports_SOURCES) $(test_instance_SOURCES) \ - $(test_libflatpak_SOURCES) $(test_libglnx_errors_SOURCES) \ - $(test_libglnx_fdio_SOURCES) $(test_libglnx_macros_SOURCES) \ - $(test_libglnx_shutil_SOURCES) $(test_libglnx_xattrs_SOURCES) \ - $(test_portal_SOURCES) $(nodist_test_portal_SOURCES) \ - $(testcommon_SOURCES) $(testlibrary_SOURCES) \ - $(tests_hold_lock_SOURCES) tests/httpcache.c \ - $(tests_list_unused_SOURCES) $(tests_mock_flatpak_SOURCES) \ - $(tests_test_authenticator_SOURCES) \ - $(tests_test_portal_impl_SOURCES) \ - $(tests_test_update_portal_SOURCES) \ - $(nodist_tests_test_update_portal_SOURCES) \ - $(tests_try_syscall_SOURCES) -DIST_SOURCES = $(libflatpak_app_la_SOURCES) \ - $(libflatpak_common_base_la_SOURCES) \ - $(am__libflatpak_common_la_SOURCES_DIST) \ - $(libflatpak_la_SOURCES) $(libglnx_la_SOURCES) \ - $(libtestlib_la_SOURCES) $(tests_libpreload_la_SOURCES) \ - $(am__flatpak_SOURCES_DIST) $(am__flatpak_bwrap_SOURCES_DIST) \ - $(am__flatpak_dbus_proxy_SOURCES_DIST) \ - $(flatpak_oci_authenticator_SOURCES) $(flatpak_portal_SOURCES) \ - $(flatpak_session_helper_SOURCES) \ - $(am__flatpak_system_helper_SOURCES_DIST) \ - $(flatpak_validate_icon_SOURCES) $(revokefs_demo_SOURCES) \ - $(revokefs_fuse_SOURCES) $(test_context_SOURCES) \ - $(test_exports_SOURCES) $(test_instance_SOURCES) \ - $(test_libflatpak_SOURCES) $(test_libglnx_errors_SOURCES) \ - $(test_libglnx_fdio_SOURCES) $(test_libglnx_macros_SOURCES) \ - $(test_libglnx_shutil_SOURCES) $(test_libglnx_xattrs_SOURCES) \ - $(test_portal_SOURCES) $(testcommon_SOURCES) \ - $(testlibrary_SOURCES) $(tests_hold_lock_SOURCES) \ - tests/httpcache.c $(tests_list_unused_SOURCES) \ - $(tests_mock_flatpak_SOURCES) \ - $(tests_test_authenticator_SOURCES) \ - $(tests_test_portal_impl_SOURCES) \ - $(tests_test_update_portal_SOURCES) \ - $(tests_try_syscall_SOURCES) -RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ - ctags-recursive dvi-recursive html-recursive info-recursive \ - install-data-recursive install-dvi-recursive \ - install-exec-recursive install-html-recursive \ - install-info-recursive install-pdf-recursive \ - install-ps-recursive install-recursive installcheck-recursive \ - installdirs-recursive pdf-recursive ps-recursive \ - tags-recursive uninstall-recursive -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__dist_dbusconf_DATA_DIST = \ - system-helper/org.freedesktop.Flatpak.SystemHelper.conf -am__dist_installed_test_keyring_DATA_DIST = tests/test-keyring/README \ - tests/test-keyring/pubring.gpg tests/test-keyring/secring.gpg -am__dist_installed_test_keyring2_DATA_DIST = \ - tests/test-keyring2/README tests/test-keyring2/pubring.gpg \ - tests/test-keyring2/secring.gpg -am__dist_tmpfiles_DATA_DIST = data/tmpfiles.d/flatpak.conf \ - sideload-repos-systemd/tmpfiles.d/flatpak-sideload-repos.conf -DATA = $(bashcompletion_DATA) $(dbus_service_DATA) \ - $(dbussystemservice_DATA) $(dist_dbusconf_DATA) \ - $(dist_installed_test_keyring_DATA) \ - $(dist_installed_test_keyring2_DATA) $(dist_tmpfiles_DATA) \ - $(env_DATA) $(fishcompletion_DATA) $(fishconf_DATA) \ - $(installed_test_DATA) $(installed_test_meta_DATA) \ - $(introspection_DATA) $(nobase_installed_test_DATA) \ - $(nodist_gir_DATA) $(nodist_typelib_DATA) $(noinst_DATA) \ - $(pkgconfig_DATA) $(polkit_policy_DATA) $(polkit_rules_DATA) \ - $(profile_DATA) $(selinux_devel_DATA) $(selinux_module_DATA) \ - $(systemdsystemunit_DATA) $(systemduserunit_DATA) \ - $(sysusers_DATA) $(zshcompletion_DATA) -HEADERS = $(flatpakinclude_HEADERS) $(nodist_flatpakinclude_HEADERS) -RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ - distclean-recursive maintainer-clean-recursive -am__recursive_targets = \ - $(RECURSIVE_TARGETS) \ - $(RECURSIVE_CLEAN_TARGETS) \ - $(am__extra_recursive_targets) -AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - cscope check recheck distdir distdir-am dist dist-all \ - distcheck -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \ - config.h.in -# Read a list of newline-separated strings from the standard input, -# and print each of them once, without duplicates. Input order is -# *not* preserved. -am__uniquify_input = $(AWK) '\ - BEGIN { nonempty = 0; } \ - { items[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in items) print i; }; } \ -' -# Make sure the list of sources is unique. This is necessary because, -# e.g., the same source file might be shared among _SOURCES variables -# for different programs/libraries. -am__define_uniq_tagged_files = \ - list='$(am__tagged_files)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | $(am__uniquify_input)` -am__tty_colors_dummy = \ - mgn= red= grn= lgn= blu= brg= std=; \ - am__color_tests=no -am__tty_colors = { \ - $(am__tty_colors_dummy); \ - if test "X$(AM_COLOR_TESTS)" = Xno; then \ - am__color_tests=no; \ - elif test "X$(AM_COLOR_TESTS)" = Xalways; then \ - am__color_tests=yes; \ - elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \ - am__color_tests=yes; \ - fi; \ - if test $$am__color_tests = yes; then \ - red=''; \ - grn=''; \ - lgn=''; \ - blu=''; \ - mgn=''; \ - brg=''; \ - std=''; \ - fi; \ -} -am__recheck_rx = ^[ ]*:recheck:[ ]* -am__global_test_result_rx = ^[ ]*:global-test-result:[ ]* -am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]* -# A command that, given a newline-separated list of test names on the -# standard input, print the name of the tests that are to be re-run -# upon "make recheck". -am__list_recheck_tests = $(AWK) '{ \ - recheck = 1; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - { \ - if ((getline line2 < ($$0 ".log")) < 0) \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \ - { \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \ - { \ - break; \ - } \ - }; \ - if (recheck) \ - print $$0; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# A command that, given a newline-separated list of test names on the -# standard input, create the global log from their .trs and .log files. -am__create_global_log = $(AWK) ' \ -function fatal(msg) \ -{ \ - print "fatal: making $@: " msg | "cat >&2"; \ - exit 1; \ -} \ -function rst_section(header) \ -{ \ - print header; \ - len = length(header); \ - for (i = 1; i <= len; i = i + 1) \ - printf "="; \ - printf "\n\n"; \ -} \ -{ \ - copy_in_global_log = 1; \ - global_test_result = "RUN"; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".trs"); \ - if (line ~ /$(am__global_test_result_rx)/) \ - { \ - sub("$(am__global_test_result_rx)", "", line); \ - sub("[ ]*$$", "", line); \ - global_test_result = line; \ - } \ - else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \ - copy_in_global_log = 0; \ - }; \ - if (copy_in_global_log) \ - { \ - rst_section(global_test_result ": " $$0); \ - while ((rc = (getline line < ($$0 ".log"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".log"); \ - print line; \ - }; \ - printf "\n"; \ - }; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# Restructured Text title. -am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; } -# Solaris 10 'make', and several other traditional 'make' implementations, -# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it -# by disabling -e (using the XSI extension "set +e") if it's set. -am__sh_e_setup = case $$- in *e*) set +e;; esac -# Default flags passed to test drivers. -am__common_driver_flags = \ - --color-tests "$$am__color_tests" \ - --enable-hard-errors "$$am__enable_hard_errors" \ - --expect-failure "$$am__expect_failure" -# To be inserted before the command running the test. Creates the -# directory for the log if needed. Stores in $dir the directory -# containing $f, in $tst the test, in $log the log. Executes the -# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and -# passes TESTS_ENVIRONMENT. Set up options for the wrapper that -# will run the test scripts (or their associated LOG_COMPILER, if -# thy have one). -am__check_pre = \ -$(am__sh_e_setup); \ -$(am__vpath_adj_setup) $(am__vpath_adj) \ -$(am__tty_colors); \ -srcdir=$(srcdir); export srcdir; \ -case "$@" in \ - */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \ - *) am__odir=.;; \ -esac; \ -test "x$$am__odir" = x"." || test -d "$$am__odir" \ - || $(MKDIR_P) "$$am__odir" || exit $$?; \ -if test -f "./$$f"; then dir=./; \ -elif test -f "$$f"; then dir=; \ -else dir="$(srcdir)/"; fi; \ -tst=$$dir$$f; log='$@'; \ -if test -n '$(DISABLE_HARD_ERRORS)'; then \ - am__enable_hard_errors=no; \ -else \ - am__enable_hard_errors=yes; \ -fi; \ -case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \ - am__expect_failure=yes;; \ - *) \ - am__expect_failure=no;; \ -esac; \ -$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) -# A shell command to get the names of the tests scripts with any registered -# extension removed (i.e., equivalently, the names of the test logs, with -# the '.log' extension removed). The result is saved in the shell variable -# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly, -# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)", -# since that might cause problem with VPATH rewrites for suffix-less tests. -# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'. -am__set_TESTS_bases = \ - bases='$(TEST_LOGS)'; \ - bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \ - bases=`echo $$bases` -AM_TESTSUITE_SUMMARY_HEADER = ' for $(PACKAGE_STRING)' -RECHECK_LOGS = $(TEST_LOGS) -am__EXEEXT_11 = tests/test-run@user,nodeltas.wrap \ - tests/test-run@user,deltas.wrap \ - tests/test-run@system,nodeltas.wrap \ - tests/test-run@system,deltas.wrap \ - tests/test-run@system-norevokefs,nodeltas.wrap \ - tests/test-run@system-norevokefs,deltas.wrap \ - tests/test-info@user.wrap tests/test-info@system.wrap \ - tests/test-repo@user.wrap tests/test-repo@system.wrap \ - tests/test-repo@system-norevokefs.wrap \ - tests/test-repo@user,oldsummary.wrap \ - tests/test-repo@system,oldsummary.wrap \ - tests/test-sideload@user.wrap tests/test-sideload@system.wrap \ - tests/test-bundle@user.wrap tests/test-bundle@system.wrap \ - tests/test-bundle@system-norevokefs.wrap \ - tests/test-oci-registry@user.wrap \ - tests/test-oci-registry@system.wrap \ - tests/test-update-remote-configuration@newsummary.wrap \ - tests/test-update-remote-configuration@oldsummary.wrap \ - tests/test-update-portal@user.wrap \ - tests/test-update-portal@system.wrap \ - tests/test-summaries@user.wrap \ - tests/test-summaries@system.wrap tests/test-subset@user.wrap \ - tests/test-subset@system.wrap $(am__EXEEXT_1) -am__EXEEXT_12 = $(am__EXEEXT_11) -am__EXEEXT_13 = tests/test-basic.sh tests/test-completion.sh \ - tests/test-config.sh tests/test-build-update-repo.sh \ - tests/test-http-utils.sh tests/test-history.sh \ - tests/test-default-remotes.sh \ - tests/test-metadata-validation.sh tests/test-extensions.sh \ - tests/test-oci.sh tests/test-override.sh tests/test-auth.sh \ - tests/test-unused.sh tests/test-prune.sh tests/test-seccomp.sh \ - tests/test-repair.sh $(am__EXEEXT_1) -am__EXEEXT_14 = $(am__EXEEXT_13) -TEST_SUITE_LOG = test-suite.log -TEST_EXTENSIONS = @EXEEXT@ .test -LOG_COMPILE = $(LOG_COMPILER) $(AM_LOG_FLAGS) $(LOG_FLAGS) -am__set_b = \ - case '$@' in \ - */*) \ - case '$*' in \ - */*) b='$*';; \ - *) b=`echo '$@' | sed 's/\.log$$//'`; \ - esac;; \ - *) \ - b='$*';; \ - esac -am__test_logs1 = $(TESTS:=.log) -am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log) -TEST_LOGS = $(am__test_logs2:.test.log=.log) -TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver -TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \ - $(TEST_LOG_FLAGS) -DIST_SUBDIRS = . doc po -am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/app/Makefile.am.inc \ - $(srcdir)/common/Makefile.am.inc $(srcdir)/config.h.in \ - $(srcdir)/data/Makefile.am.inc $(srcdir)/flatpak.pc.in \ - $(srcdir)/icon-validator/Makefile.am.inc \ - $(srcdir)/oci-authenticator/Makefile.am.inc \ - $(srcdir)/portal/Makefile.am.inc \ - $(srcdir)/revokefs/Makefile.am.inc \ - $(srcdir)/selinux/Makefile.am.inc \ - $(srcdir)/session-helper/Makefile.am.inc \ - $(srcdir)/sideload-repos-systemd/Makefile.am.inc \ - $(srcdir)/subprojects/Makefile-bwrap.am.inc \ - $(srcdir)/subprojects/Makefile-libglnx.am.inc \ - $(srcdir)/system-helper/Makefile.am.inc \ - $(srcdir)/tests/Makefile-test-matrix.am.inc \ - $(srcdir)/tests/Makefile.am.inc \ - $(top_srcdir)/buildutil/glib-tap.mk \ - $(top_srcdir)/common/flatpak-version-macros.h.in ABOUT-NLS \ - COPYING INSTALL NEWS README.md compile config.guess \ - config.rpath config.sub depcomp install-sh ltmain.sh missing \ - test-driver -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -distdir = $(PACKAGE)-$(VERSION) -top_distdir = $(distdir) -am__remove_distdir = \ - if test -d "$(distdir)"; then \ - find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ - && rm -rf "$(distdir)" \ - || { sleep 5 && rm -rf "$(distdir)"; }; \ - else :; fi -am__post_remove_distdir = $(am__remove_distdir) -am__relativize = \ - dir0=`pwd`; \ - sed_first='s,^\([^/]*\)/.*$$,\1,'; \ - sed_rest='s,^[^/]*/*,,'; \ - sed_last='s,^.*/\([^/]*\)$$,\1,'; \ - sed_butlast='s,/*[^/]*$$,,'; \ - while test -n "$$dir1"; do \ - first=`echo "$$dir1" | sed -e "$$sed_first"`; \ - if test "$$first" != "."; then \ - if test "$$first" = ".."; then \ - dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ - dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ - else \ - first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ - if test "$$first2" = "$$first"; then \ - dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ - else \ - dir2="../$$dir2"; \ - fi; \ - dir0="$$dir0"/"$$first"; \ - fi; \ - fi; \ - dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ - done; \ - reldir="$$dir2" -GZIP_ENV = --best -DIST_ARCHIVES = $(distdir).tar.xz -DIST_TARGETS = dist-xz -# Exists only to be overridden by the user if desired. -AM_DISTCHECK_DVI_TARGET = dvi -distuninstallcheck_listfiles = find . -type f -print -am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ - | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' -distcleancheck_listfiles = find . -type f -print -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -APPSTREAM_CFLAGS = @APPSTREAM_CFLAGS@ -APPSTREAM_LIBS = @APPSTREAM_LIBS@ -AR = @AR@ -ARCHIVE_CFLAGS = @ARCHIVE_CFLAGS@ -ARCHIVE_LIBS = @ARCHIVE_LIBS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BASE_CFLAGS = @BASE_CFLAGS@ -BASE_LIBS = @BASE_LIBS@ -BFLAGS = @BFLAGS@ -BISON = @BISON@ -BWRAP = @BWRAP@ -CAP_LIB = @CAP_LIB@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CSCOPE = @CSCOPE@ -CTAGS = @CTAGS@ -CURL_CFLAGS = @CURL_CFLAGS@ -CURL_LIBS = @CURL_LIBS@ -CYGPATH_W = @CYGPATH_W@ -DBUS_CONFIG_DIR = @DBUS_CONFIG_DIR@ -DBUS_PROXY = @DBUS_PROXY@ -DBUS_SERVICE_DIR = @DBUS_SERVICE_DIR@ -DCONF_CFLAGS = @DCONF_CFLAGS@ -DCONF_LIBS = @DCONF_LIBS@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DEP_GPGME_CFLAGS = @DEP_GPGME_CFLAGS@ -DEP_GPGME_LIBS = @DEP_GPGME_LIBS@ -DEP_GPGME_PTHREAD_CFLAGS = @DEP_GPGME_PTHREAD_CFLAGS@ -DEP_GPGME_PTHREAD_LIBS = @DEP_GPGME_PTHREAD_LIBS@ -DLLTOOL = @DLLTOOL@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -ETAGS = @ETAGS@ -EXEEXT = @EXEEXT@ -FGREP = @FGREP@ -FILECMD = @FILECMD@ -FLATPAK_INTERFACE_AGE = @FLATPAK_INTERFACE_AGE@ -FLATPAK_MAJOR_VERSION = @FLATPAK_MAJOR_VERSION@ -FLATPAK_MICRO_VERSION = @FLATPAK_MICRO_VERSION@ -FLATPAK_MINOR_VERSION = @FLATPAK_MINOR_VERSION@ -FLATPAK_VERSION = @FLATPAK_VERSION@ -FUSE3_CFLAGS = @FUSE3_CFLAGS@ -FUSE3_LIBS = @FUSE3_LIBS@ -FUSE_CFLAGS = @FUSE_CFLAGS@ -FUSE_LIBS = @FUSE_LIBS@ -GDBUS_CODEGEN = @GDBUS_CODEGEN@ -GDK_PIXBUF_CFLAGS = @GDK_PIXBUF_CFLAGS@ -GDK_PIXBUF_LIBS = @GDK_PIXBUF_LIBS@ -GENHTML = @GENHTML@ -GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ -GLIB260_CFLAGS = @GLIB260_CFLAGS@ -GLIB260_LIBS = @GLIB260_LIBS@ -GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ -GLIB_MKENUMS = @GLIB_MKENUMS@ -GMSGFMT = @GMSGFMT@ -GMSGFMT_015 = @GMSGFMT_015@ -GPGME_CONFIG = @GPGME_CONFIG@ -GPGME_PTHREAD_CFLAGS = @GPGME_PTHREAD_CFLAGS@ -GPGME_PTHREAD_LIBS = @GPGME_PTHREAD_LIBS@ -GPGRT_CONFIG = @GPGRT_CONFIG@ -GREP = @GREP@ -GTKDOC_CHECK = @GTKDOC_CHECK@ -GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ -GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ -GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ -GTKDOC_MKPDF = @GTKDOC_MKPDF@ -GTKDOC_REBASE = @GTKDOC_REBASE@ -HIDDEN_VISIBILITY_CFLAGS = @HIDDEN_VISIBILITY_CFLAGS@ -HTML_DIR = @HTML_DIR@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTLLIBS = @INTLLIBS@ -INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ -INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ -INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ -INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ -INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ -INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ -INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ -INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ -JSON_CFLAGS = @JSON_CFLAGS@ -JSON_LIBS = @JSON_LIBS@ -LCOV = @LCOV@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LIBICONV = @LIBICONV@ -LIBINTL = @LIBINTL@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBSECCOMP_CFLAGS = @LIBSECCOMP_CFLAGS@ -LIBSECCOMP_LIBS = @LIBSECCOMP_LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBICONV = @LTLIBICONV@ -LTLIBINTL = @LTLIBINTL@ -LTLIBOBJS = @LTLIBOBJS@ -LT_CURRENT_MINUS_AGE = @LT_CURRENT_MINUS_AGE@ -LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ -LT_VERSION_INFO = @LT_VERSION_INFO@ -MAINT = @MAINT@ -MAKEINFO = @MAKEINFO@ -MALCONTENT_CFLAGS = @MALCONTENT_CFLAGS@ -MALCONTENT_LIBS = @MALCONTENT_LIBS@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MKDIR_P = @MKDIR_P@ -MSGFMT = @MSGFMT@ -MSGFMT_015 = @MSGFMT_015@ -MSGMERGE = @MSGMERGE@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OSTREE_CFLAGS = @OSTREE_CFLAGS@ -OSTREE_LIBS = @OSTREE_LIBS@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -POLKIT_CFLAGS = @POLKIT_CFLAGS@ -POLKIT_LIBS = @POLKIT_LIBS@ -POSUB = @POSUB@ -PRIVILEGED_GROUP = @PRIVILEGED_GROUP@ -PROFILE_DIR = @PROFILE_DIR@ -RANLIB = @RANLIB@ -RUN_MEDIA_DIR = @RUN_MEDIA_DIR@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SOUP_CFLAGS = @SOUP_CFLAGS@ -SOUP_LIBS = @SOUP_LIBS@ -STRIP = @STRIP@ -SUDO_BIN = @SUDO_BIN@ -SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ -SYSTEMD_LIBS = @SYSTEMD_LIBS@ -SYSTEM_FONTS_DIR = @SYSTEM_FONTS_DIR@ -SYSTEM_FONT_CACHE_DIRS = @SYSTEM_FONT_CACHE_DIRS@ -SYSTEM_HELPER_USER = @SYSTEM_HELPER_USER@ -SYSTEM_INSTALL_DIR = @SYSTEM_INSTALL_DIR@ -USE_NLS = @USE_NLS@ -VALGRIND = @VALGRIND@ -VALGRIND_ENABLED = @VALGRIND_ENABLED@ -VALGRIND_HAVE_TOOL_memcheck = @VALGRIND_HAVE_TOOL_memcheck@ -VERSION = @VERSION@ -WARN_CFLAGS = @WARN_CFLAGS@ -XAUTH_CFLAGS = @XAUTH_CFLAGS@ -XAUTH_LIBS = @XAUTH_LIBS@ -XGETTEXT = @XGETTEXT@ -XGETTEXT_015 = @XGETTEXT_015@ -XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -XMLCATALOG = @XMLCATALOG@ -XMLTO = @XMLTO@ -XMLTO_FLAGS = @XMLTO_FLAGS@ -XML_CATALOG_FILE = @XML_CATALOG_FILE@ -XML_CFLAGS = @XML_CFLAGS@ -XML_LIBS = @XML_LIBS@ -XSLTPROC = @XSLTPROC@ -ZSTD_CFLAGS = @ZSTD_CFLAGS@ -ZSTD_LIBS = @ZSTD_LIBS@ -_GI_EXP_DATADIR = @_GI_EXP_DATADIR@ -_GI_EXP_LIBDIR = @_GI_EXP_LIBDIR@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -http_backend = @http_backend@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -installed_test_metadir = @installed_test_metadir@ -installed_testdir = @installed_testdir@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -runstatedir = @runstatedir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -systemdsystemenvgendir = @systemdsystemenvgendir@ -systemdsystemunitdir = @systemdsystemunitdir@ -systemduserenvgendir = @systemduserenvgendir@ -systemduserunitdir = @systemduserunitdir@ -sysusersdir = @sysusersdir@ -target_alias = @target_alias@ -tmpfilesdir = @tmpfilesdir@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -NULL = -dist_installed_test_extra_scripts = $(NULL) \ - tests/http-utils-test-server.py tests/oci-registry-server.py \ - tests/oci-registry-client.py \ - tests/make-multi-collection-id-repo.sh tests/make-test-app.sh \ - tests/make-test-runtime.sh tests/test-webserver.sh \ - tests/test-wrapper.sh tests/web-server.py $(NULL) \ - ${TEST_MATRIX_EXTRA_DIST} -noinst_LTLIBRARIES = $(NULL) $(am__append_1) libglnx.la \ - libflatpak-common-base.la libflatpak-common.la \ - libflatpak-app.la libtestlib.la -CLEANFILES = $(NULL) $(am__append_13) $(dbus_service_DATA) \ - $(systemduserunit_DATA) $(top_builddir)/libglnx-config.h \ - $(nodist_libflatpak_common_base_la_SOURCES) \ - $(nodist_libflatpak_common_la_SOURCES) $(am__append_22) \ - app/parse-datetime.c $(flatpak_dbus_built_sources) \ - $(nodist_flatpak_portal_SOURCES) \ - $(nodist_flatpak_oci_authenticator_SOURCES) -MAINTAINERCLEANFILES = $(NULL) -DISTCLEANFILES = $(NULL) $(am__append_26) flatpak.pp.bz2 \ - tests/services/org.freedesktop.Flatpak.service \ - tests/services/org.freedesktop.Flatpak.SystemHelper.service \ - tests/services/org.freedesktop.portal.Flatpak.service \ - tests/services/org.freedesktop.impl.portal.desktop.test.service \ - tests/services/org.flatpak.Authenticator.test.service \ - tests/services/org.flatpak.Authenticator.Oci.service \ - tests/share/xdg-desktop-portal/portals/test.portal \ - tests/package_version.txt $(NULL) flatpak.env -BUILT_SOURCES = $(NULL) $(top_builddir)/libglnx-config.h \ - $(nodist_libflatpak_common_base_la_SOURCES) \ - $(nodist_libflatpak_common_la_SOURCES) \ - $(flatpak_dbus_built_sources) $(nodist_flatpak_portal_SOURCES) \ - $(nodist_flatpak_oci_authenticator_SOURCES) -EXTRA_DIST = buildutil/tap-driver.sh buildutil/tap-test \ - $(all_dist_test_scripts) $(all_dist_test_data) \ - $(service_in_files) subprojects/libglnx/README.md \ - subprojects/libglnx/COPYING \ - subprojects/libglnx/LICENSES/LGPL-2.0-or-later.txt \ - subprojects/libglnx/LICENSES/LGPL-2.1-or-later.txt \ - subprojects/libglnx/libglnx.m4 $(NULL) \ - common/flatpak-enum-types.c.template \ - common/flatpak-enum-types.h.template \ - data/org.freedesktop.portal.Documents.xml \ - data/org.freedesktop.impl.portal.PermissionStore.xml \ - data/org.freedesktop.systemd1.xml \ - data/org.freedesktop.Flatpak.xml \ - data/org.freedesktop.Flatpak.Authenticator.xml \ - data/org.freedesktop.portal.Flatpak.xml \ - data/flatpak-docker-seccomp.json data/flatpak-variants.gv \ - $(NULL) app/parse-datetime.y \ - system-helper/org.freedesktop.Flatpak.policy.in \ - system-helper/org.freedesktop.Flatpak.SystemHelper.conf \ - system-helper/org.freedesktop.Flatpak.rules.in \ - system-helper/org.freedesktop.Flatpak.SystemHelper.service.in \ - system-helper/flatpak-system-helper.service.in \ - system-helper/flatpak.conf.in selinux/build-selinux.sh \ - selinux/flatpak.te selinux/flatpak.fc selinux/flatpak.if \ - $(NULL) \ - sideload-repos-systemd/flatpak-sideload-usb-repo.path.in \ - sideload-repos-systemd/flatpak-sideload-usb-repo.service.in \ - tests/Makefile-test-matrix.am.inc tests/expand-test-matrix.sh \ - tests/flatpak.supp tests/glib.supp tests/make-runtime-repos \ - tests/test-wrapper.sh tests/update-test-matrix $(NULL) \ - $(bashcompletion_DATA) $(zshcompletion_DATA) \ - $(fishcompletion_DATA) $(profile_DATA) $(fishconf_DATA) \ - env.d/flatpak.env.in env.d/60-flatpak \ - env.d/60-flatpak-system-only flatpak.pc.in \ - scripts/flatpak-bisect scripts/flatpak-coredumpctl \ - subprojects/variant-schema-compiler/variant-schema-compiler \ - autogen.sh README.md flatpak.png -TESTS_ENVIRONMENT = \ - G_TEST_SRCDIR="$(abs_srcdir)/tests" \ - G_TEST_BUILDDIR="$(abs_builddir)/tests" \ - UNINSTALLEDTESTS=1 \ - G_DEBUG=gc-friendly \ - MALLOC_CHECK_=2 \ - MALLOC_PERTURB_=$$(($${RANDOM:-256} % 256)) - -LOG_DRIVER = env AM_TAP_AWK='$(AWK)' $(SHELL) $(top_srcdir)/buildutil/tap-driver.sh -LOG_COMPILER = $(top_srcdir)/buildutil/tap-test -installed_test_LTLIBRARIES = $(am__append_12) -installed_test_SCRIPTS = $(am__append_10) -installed_test_DATA = $(am__append_11) -nobase_installed_test_DATA = -noinst_SCRIPTS = $(am__append_3) -noinst_DATA = $(am__append_4) -check_LTLIBRARIES = $(am__append_5) -check_SCRIPTS = $(am__append_7) -check_DATA = $(am__append_8) tests/runtime-repo.stamp - -# Note: build even the installed-only targets during 'make check' to ensure that they still work. -# We need to do a bit of trickery here and manage dist-ing via EXTRA_DIST instead of using dist_ prefixes to -# prevent automake from mistreating gmake functions like $(wildcard ...) and $(addprefix ...) as if they were -# filenames, including removing duplicate instances of the opening part before the space, eg. '$(addprefix'. -all_test_programs = $(test_programs) $(uninstalled_test_programs) $(installed_test_programs) \ - $(test_extra_programs) $(uninstalled_test_extra_programs) $(installed_test_extra_programs) - -all_test_scripts = $(test_scripts) $(uninstalled_test_scripts) \ - $(installed_test_scripts) $(test_extra_scripts) \ - $(uninstalled_test_extra_scripts) \ - $(installed_test_extra_scripts) $(all_dist_test_scripts) -all_dist_test_scripts = $(dist_test_scripts) $(dist_uninstalled_test_scripts) $(dist_installed_test_scripts) \ - $(dist_test_extra_scripts) $(dist_uninstalled_test_extra_scripts) $(dist_installed_test_extra_scripts) - -all_test_data = $(test_data) $(uninstalled_test_data) \ - $(installed_test_data) $(all_dist_test_data) -all_dist_test_data = $(dist_test_data) $(dist_uninstalled_test_data) $(dist_installed_test_data) -all_test_ltlibs = $(test_ltlibraries) $(uninstalled_test_ltlibraries) $(installed_test_ltlibraries) -@ENABLE_INSTALLED_TESTS_TRUE@installed_testcases = $(test_programs) $(installed_test_programs) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(test_scripts) $(installed_test_scripts) \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(dist_test_scripts) $(dist_installed_test_scripts) - -@ENABLE_INSTALLED_TESTS_TRUE@installed_test_meta_DATA = $(installed_testcases:=.test) -SUBDIRS = $(am__append_14) po -dbus_servicedir = $(DBUS_SERVICE_DIR) -service_in_files = $(NULL) \ - session-helper/flatpak-session-helper.service.in \ - session-helper/org.freedesktop.Flatpak.service.in \ - portal/flatpak-portal.service.in \ - portal/org.freedesktop.portal.Flatpak.service.in \ - $(am__append_24) \ - oci-authenticator/flatpak-oci-authenticator.service.in \ - oci-authenticator/org.flatpak.Authenticator.Oci.service.in \ - $(am__append_27) -dbus_service_DATA = $(NULL) \ - session-helper/org.freedesktop.Flatpak.service \ - portal/org.freedesktop.portal.Flatpak.service \ - oci-authenticator/org.flatpak.Authenticator.Oci.service -systemdsystemunit_DATA = $(NULL) $(am__append_25) -systemduserunit_DATA = $(NULL) \ - session-helper/flatpak-session-helper.service \ - portal/flatpak-portal.service \ - oci-authenticator/flatpak-oci-authenticator.service \ - $(am__append_28) -dist_tmpfiles_DATA = $(NULL) data/tmpfiles.d/flatpak.conf \ - $(am__append_29) -FLATPAK_BINDIR = $(bindir) -ACLOCAL_AMFLAGS = -I m4 -I subprojects/libglnx ${ACLOCAL_FLAGS} -AM_CPPFLAGS = -DFLATPAK_BINDIR=\"$(FLATPAK_BINDIR)\" \ - -DFLATPAK_SYSTEMDIR=\"$(SYSTEM_INSTALL_DIR)\" \ - -DFLATPAK_CONFIGDIR=\"$(sysconfdir)/flatpak\" \ - -DFLATPAK_BASEDIR=\"$(pkgdatadir)\" \ - -DFLATPAK_TRIGGERDIR=\"$(pkgdatadir)/triggers\" \ - -DSYSTEM_FONTS_DIR=\"$(SYSTEM_FONTS_DIR)\" \ - -DSYSTEM_HELPER_USER=\"$(SYSTEM_HELPER_USER)\" \ - -DSYSTEM_FONT_CACHE_DIRS=\"$(SYSTEM_FONT_CACHE_DIRS)\" \ - -DG_LOG_DOMAIN=\"flatpak\" -I$(srcdir)/subprojects/libglnx \ - -I$(srcdir)/common -I$(builddir)/common -include "config.h" \ - $(NULL) $(am__append_15) $(am__append_16) $(am__append_17) \ - $(am__append_18) -@ENABLE_ASAN_TRUE@ASAN_FLAGS = -fsanitize=undefined -fsanitize-undefined-trap-on-error -fsanitize=address -ASAN_FLAGS = -AM_CFLAGS = $(WARN_CFLAGS) $(ASAN_FLAGS) -AM_LDFLAGS = $(ASAN_FLAGS) -triggersdir = $(pkgdatadir)/triggers -dist_triggers_SCRIPTS = \ - triggers/gtk-icon-cache.trigger \ - triggers/mime-database.trigger \ - triggers/desktop-database.trigger \ - $(NULL) - - -# This canonicalizes the PKG_CHECK_MODULES or AM_PATH_GPGME results -INTERNAL_GPGME_CFLAGS = $(DEP_GPGME_CFLAGS) $(DEP_GPGME_PTHREAD_CFLAGS) $(GPGME_PTHREAD_CFLAGS) -INTERNAL_GPGME_LIBS = $(DEP_GPGME_LIBS) $(DEP_GPGME_PTHREAD_LIBS) $(GPGME_PTHREAD_LIBS) -lib_LTLIBRARIES = libflatpak.la -libglnx_srcpath := $(srcdir)/subprojects/libglnx -# This intentionally does not include AM_CFLAGS, libglnx always uses those -libglnx_cflags := \ - $(BASE_CFLAGS) \ - "-I$(libglnx_srcpath)" \ - -std=gnu99 \ - $(HIDDEN_VISIBILITY_CFLAGS) \ - $(NULL) - -libglnx_libs := $(BASE_LIBS) -libglnx_la_SOURCES = \ - subprojects/libglnx/glnx-macros.h \ - subprojects/libglnx/glnx-backport-autocleanups.h \ - subprojects/libglnx/glnx-backport-autoptr.h \ - subprojects/libglnx/glnx-backports.h \ - subprojects/libglnx/glnx-backports.c \ - subprojects/libglnx/glnx-local-alloc.h \ - subprojects/libglnx/glnx-local-alloc.c \ - subprojects/libglnx/glnx-errors.h \ - subprojects/libglnx/glnx-errors.c \ - subprojects/libglnx/glnx-console.h \ - subprojects/libglnx/glnx-console.c \ - subprojects/libglnx/glnx-dirfd.h \ - subprojects/libglnx/glnx-dirfd.c \ - subprojects/libglnx/glnx-fdio.h \ - subprojects/libglnx/glnx-fdio.c \ - subprojects/libglnx/glnx-lockfile.h \ - subprojects/libglnx/glnx-lockfile.c \ - subprojects/libglnx/glnx-missing-syscall.h \ - subprojects/libglnx/glnx-missing.h \ - subprojects/libglnx/glnx-xattrs.h \ - subprojects/libglnx/glnx-xattrs.c \ - subprojects/libglnx/glnx-shutil.h \ - subprojects/libglnx/glnx-shutil.c \ - subprojects/libglnx/libglnx.h \ - subprojects/libglnx/tests/libglnx-testlib.h \ - $(NULL) - -libglnx_la_CFLAGS = $(AM_CFLAGS) $(libglnx_cflags) -I$(builddir) -libglnx_la_LDFLAGS = -avoid-version -Bsymbolic-functions -export-symbols-regex "^glnx_" -no-undefined -export-dynamic -libglnx_la_LIBADD = $(libglnx_libs) -libglnx_tests = test-libglnx-xattrs test-libglnx-fdio test-libglnx-errors test-libglnx-macros test-libglnx-shutil -libglnx_testlib_sources = subprojects/libglnx/tests/libglnx-testlib.c -test_libglnx_xattrs_SOURCES = $(libglnx_testlib_sources) subprojects/libglnx/tests/test-libglnx-xattrs.c -test_libglnx_xattrs_CFLAGS = $(AM_CFLAGS) $(libglnx_cflags) -test_libglnx_xattrs_LDADD = $(libglnx_libs) libglnx.la -test_libglnx_fdio_SOURCES = $(libglnx_testlib_sources) subprojects/libglnx/tests/test-libglnx-fdio.c -test_libglnx_fdio_CFLAGS = $(AM_CFLAGS) $(libglnx_cflags) -test_libglnx_fdio_LDADD = $(libglnx_libs) libglnx.la -test_libglnx_errors_SOURCES = $(libglnx_testlib_sources) subprojects/libglnx/tests/test-libglnx-errors.c -test_libglnx_errors_CFLAGS = $(AM_CFLAGS) $(libglnx_cflags) -test_libglnx_errors_LDADD = $(libglnx_libs) libglnx.la -test_libglnx_macros_SOURCES = $(libglnx_testlib_sources) subprojects/libglnx/tests/test-libglnx-macros.c -test_libglnx_macros_CFLAGS = $(AM_CFLAGS) $(libglnx_cflags) -test_libglnx_macros_LDADD = $(libglnx_libs) libglnx.la -test_libglnx_shutil_SOURCES = $(libglnx_testlib_sources) subprojects/libglnx/tests/test-libglnx-shutil.c -test_libglnx_shutil_CFLAGS = $(AM_CFLAGS) $(libglnx_cflags) -test_libglnx_shutil_LDADD = $(libglnx_libs) libglnx.la -flatpakincludedir = $(includedir)/flatpak -flatpakinclude_HEADERS = \ - common/flatpak.h \ - common/flatpak-ref.h \ - common/flatpak-error.h \ - common/flatpak-installed-ref.h \ - common/flatpak-remote-ref.h \ - common/flatpak-related-ref.h \ - common/flatpak-bundle-ref.h \ - common/flatpak-installation.h \ - common/flatpak-remote.h \ - common/flatpak-version-macros.h \ - common/flatpak-portal-error.h \ - common/flatpak-transaction.h \ - common/flatpak-instance.h \ - $(NULL) - -nodist_flatpakinclude_HEADERS = \ - common/flatpak-enum-types.h \ - $(NULL) - -dbus_built_sources = common/flatpak-dbus-generated.c common/flatpak-dbus-generated.h common/flatpak-document-dbus-generated.c common/flatpak-document-dbus-generated.h -systemd_dbus_built_sources = common/flatpak-systemd-dbus-generated.c common/flatpak-systemd-dbus-generated.h -nodist_libflatpak_common_base_la_SOURCES = \ - $(dbus_built_sources) \ - $(NULL) - -VARIANT_SCHEMA_COMPILER_FLAGS = $(am__append_19) -libflatpak_common_base_la_SOURCES = \ - common/flatpak-utils-base.c \ - common/flatpak-utils-base-private.h \ - $(NULL) - -libflatpak_common_base_la_CFLAGS = \ - -DFLATPAK_COMPILATION \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(HIDDEN_VISIBILITY_CFLAGS) \ - -DLIBEXECDIR=\"$(libexecdir)\" \ - $(NULL) - -libflatpak_common_base_la_LIBADD = $(AM_LIBADD) $(BASE_LIBS) -nodist_libflatpak_common_la_SOURCES = \ - $(nodist_flatpakinclude_HEADERS) \ - $(systemd_dbus_built_sources) \ - $(xdp_dbus_built_sources) \ - common/flatpak-enum-types.c \ - common/flatpak-variant-private.h \ - common/flatpak-variant-impl-private.h \ - $(NULL) - -libflatpak_common_la_SOURCES = $(flatpakinclude_HEADERS) \ - common/flatpak-appdata-private.h common/flatpak-appdata.c \ - common/flatpak-auth-private.h common/flatpak-auth.c \ - common/flatpak-bundle-ref.c common/flatpak-bwrap-private.h \ - common/flatpak-bwrap.c \ - common/flatpak-chain-input-stream-private.h \ - common/flatpak-chain-input-stream.c \ - common/flatpak-common-types-private.h \ - common/flatpak-context-private.h common/flatpak-context.c \ - common/flatpak-dir-private.h common/flatpak-dir.c \ - common/flatpak-error.c common/flatpak-exports-private.h \ - common/flatpak-exports.c common/flatpak-installation-private.h \ - common/flatpak-installation.c \ - common/flatpak-installed-ref-private.h \ - common/flatpak-installed-ref.c \ - common/flatpak-instance-private.h common/flatpak-instance.c \ - common/flatpak-json-oci-private.h common/flatpak-json-oci.c \ - common/flatpak-json-private.h common/flatpak-json.c \ - common/flatpak-oci-registry-private.h \ - common/flatpak-oci-registry.c common/flatpak-portal-error.c \ - common/flatpak-portal-error.h \ - common/flatpak-progress-private.h common/flatpak-progress.c \ - common/flatpak-ref.c common/flatpak-ref-utils-private.h \ - common/flatpak-ref-utils.c \ - common/flatpak-related-ref-private.h \ - common/flatpak-related-ref.c common/flatpak-remote-private.h \ - common/flatpak-remote-ref-private.h \ - common/flatpak-remote-ref.c common/flatpak-remote.c \ - common/flatpak-run-private.h common/flatpak-run.c \ - common/flatpak-syscalls-private.h \ - common/flatpak-transaction-private.h \ - common/flatpak-transaction.c common/flatpak-transaction.h \ - common/flatpak-utils-http-private.h \ - common/flatpak-utils-http.c common/flatpak-utils-private.h \ - common/flatpak-utils.c common/flatpak-uri-private.h \ - common/flatpak-uri.c common/flatpak-prune.c \ - common/flatpak-prune-private.h \ - common/flatpak-zstd-decompressor.c \ - common/flatpak-zstd-decompressor-private.h \ - common/valgrind-private.h $(NULL) $(am__append_20) -libflatpak_common_la_CFLAGS = \ - -DFLATPAK_COMPILATION \ - -DLIBEXECDIR=\"$(libexecdir)\" \ - $(AM_CFLAGS) \ - $(ARCHIVE_CFLAGS) \ - $(ZSTD_CFLAGS) \ - $(BASE_CFLAGS) \ - $(DCONF_CFLAGS) \ - $(HIDDEN_VISIBILITY_CFLAGS) \ - $(INTERNAL_GPGME_CFLAGS) \ - $(JSON_CFLAGS) \ - $(LIBSECCOMP_CFLAGS) \ - $(MALCONTENT_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(POLKIT_CFLAGS) \ - $(CURL_CFLAGS) \ - $(SOUP_CFLAGS) \ - $(SYSTEMD_CFLAGS) \ - $(XAUTH_CFLAGS) \ - $(XML_CFLAGS) \ - $(NULL) - -libflatpak_common_la_LIBADD = \ - $(AM_LIBADD) \ - $(ARCHIVE_LIBS) \ - $(ZSTD_LIBS) \ - $(BASE_LIBS) \ - $(DCONF_LIBS) \ - $(INTERNAL_GPGME_LIBS) \ - $(JSON_LIBS) \ - $(LIBSECCOMP_LIBS) \ - $(MALCONTENT_LIBS) \ - $(OSTREE_LIBS) \ - $(POLKIT_LIBS) \ - $(CURL_LIBS) \ - $(SOUP_LIBS) \ - $(SYSTEMD_LIBS) \ - $(XAUTH_LIBS) \ - $(XML_LIBS) \ - $(NULL) - -libflatpak_la_SOURCES = \ - common/flatpak.c \ - $(NULL) - -libflatpak_la_CFLAGS = \ - $(HIDDEN_VISIBILITY_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -I$(top_srcdir)/common \ - -I$(top_builddir)/common \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(CURL_CFLAGS) \ - $(SOUP_CFLAGS) \ - $(JSON_CFLAGS) \ - $(NULL) - -libflatpak_la_LDFLAGS = \ - $(AM_LDFLAGS) \ - -version-info $(LT_VERSION_INFO) \ - -export-dynamic \ - -rpath $(libdir) \ - $(NULL) - -libflatpak_la_LIBADD = \ - $(AM_LIBADD) \ - libflatpak-common.la \ - libflatpak-common-base.la \ - libglnx.la \ - $(BASE_LIBS) \ - $(OSTREE_LIBS) \ - $(CURL_LIBS) \ - $(SOUP_LIBS) \ - $(JSON_LIBS) \ - $(NULL) - -test_libflatpak_SOURCES = \ - common/test-lib.c \ - $(NULL) - -test_libflatpak_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - -I$(top_srcdir)/common \ - -I$(top_builddir)/common \ - $(NULL) - -test_libflatpak_LDADD = \ - $(AM_LDADD) \ - $(BASE_LIBS) \ - libflatpak.la \ - $(NULL) - -sources = $(libflatpak_common_la_SOURCES) $(libflatpak_la_SOURCES) -INTROSPECTION_GIRS = $(am__append_21) -@HAVE_INTROSPECTION_TRUE@introspected_headers = \ -@HAVE_INTROSPECTION_TRUE@ $(flatpakinclude_HEADERS) \ -@HAVE_INTROSPECTION_TRUE@ $(nodist_flatpakinclude_HEADERS) \ -@HAVE_INTROSPECTION_TRUE@ $(NULL) - -@HAVE_INTROSPECTION_TRUE@introspected_sources = $(filter-out %-private.h,$(sources)) -@HAVE_INTROSPECTION_TRUE@Flatpak_1_0_gir_NAMESPACE = Flatpak -@HAVE_INTROSPECTION_TRUE@Flatpak_1_0_gir_VERSION = 1.0 -@HAVE_INTROSPECTION_TRUE@Flatpak_1_0_gir_LIBS = libflatpak.la -@HAVE_INTROSPECTION_TRUE@Flatpak_1_0_gir_FILES = $(introspected_headers) $(introspected_sources) -@HAVE_INTROSPECTION_TRUE@Flatpak_1_0_gir_CFLAGS = $(libflatpak_la_CFLAGS) -@HAVE_INTROSPECTION_TRUE@Flatpak_1_0_gir_INCLUDES = GObject-2.0 Gio-2.0 -@HAVE_INTROSPECTION_TRUE@Flatpak_1_0_gir_SCANNERFLAGS = \ -@HAVE_INTROSPECTION_TRUE@ --warn-all \ -@HAVE_INTROSPECTION_TRUE@ --c-include='flatpak.h' \ -@HAVE_INTROSPECTION_TRUE@ --pkg-export=flatpak - -@HAVE_INTROSPECTION_TRUE@girdir = $(datadir)/gir-1.0 -@HAVE_INTROSPECTION_TRUE@nodist_gir_DATA = $(INTROSPECTION_GIRS) -@HAVE_INTROSPECTION_TRUE@typelibdir = $(libdir)/girepository-1.0 -@HAVE_INTROSPECTION_TRUE@nodist_typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) -introspectiondir = $(datadir)/dbus-1/interfaces -introspection_DATA = \ - data/org.freedesktop.Flatpak.xml \ - data/org.freedesktop.Flatpak.Authenticator.xml \ - data/org.freedesktop.portal.Flatpak.xml \ - $(NULL) - -flatpak_dbus_built_sources = app/flatpak-permission-dbus-generated.c app/flatpak-permission-dbus-generated.h -@BUILD_SYSTEM_HELPER_TRUE@polkit_sources = \ -@BUILD_SYSTEM_HELPER_TRUE@ app/flatpak-polkit-agent-text-listener.h \ -@BUILD_SYSTEM_HELPER_TRUE@ app/flatpak-polkit-agent-text-listener.c \ -@BUILD_SYSTEM_HELPER_TRUE@ $(NULL) - -libflatpak_app_la_SOURCES = \ - app/flatpak-builtins-utils.h \ - app/flatpak-builtins-utils.c \ - app/flatpak-table-printer.c \ - app/flatpak-table-printer.h \ - app/parse-datetime.h \ - $(NULL) - -nodist_libflatpak_app_la_SOURCES = \ - app/parse-datetime.c \ - $(NULL) - -libflatpak_app_la_LIBADD = \ - $(AM_LDADD) \ - $(BASE_LIBS) \ - $(OSTREE_LIBS) \ - $(JSON_LIBS) \ - $(APPSTREAM_LIBS) \ - $(SYSTEMD_LIBS) \ - $(POLKIT_LIBS) \ - $(NULL) - -libflatpak_app_la_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(JSON_CFLAGS) \ - $(APPSTREAM_CFLAGS) \ - $(SYSTEMD_CFLAGS) \ - $(POLKIT_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -I$(srcdir)/app \ - -I$(builddir)/app \ - -DLOCALEDIR=\"$(localedir)\" \ - $(NULL) - -flatpak_SOURCES = \ - app/flatpak-main.c \ - app/flatpak-builtins.h \ - app/flatpak-builtins-remote-add.c \ - app/flatpak-builtins-remote-modify.c \ - app/flatpak-builtins-remote-delete.c \ - app/flatpak-builtins-remote-list.c \ - app/flatpak-builtins-remote-ls.c \ - app/flatpak-builtins-remote-info.c \ - app/flatpak-builtins-install.c \ - app/flatpak-builtins-override.c \ - app/flatpak-builtins-make-current.c \ - app/flatpak-builtins-update.c \ - app/flatpak-builtins-uninstall.c \ - app/flatpak-builtins-mask.c \ - app/flatpak-builtins-pin.c \ - app/flatpak-builtins-list.c \ - app/flatpak-builtins-info.c \ - app/flatpak-builtins-config.c \ - app/flatpak-builtins-run.c \ - app/flatpak-builtins-enter.c \ - app/flatpak-builtins-ps.c \ - app/flatpak-builtins-build-init.c \ - app/flatpak-builtins-build.c \ - app/flatpak-builtins-build-finish.c \ - app/flatpak-builtins-build-export.c \ - app/flatpak-builtins-build-bundle.c \ - app/flatpak-builtins-build-import-bundle.c \ - app/flatpak-builtins-build-commit-from.c \ - app/flatpak-builtins-build-sign.c \ - app/flatpak-builtins-build-update-repo.c \ - app/flatpak-builtins-repo.c \ - app/flatpak-builtins-document-export.c \ - app/flatpak-builtins-document-unexport.c \ - app/flatpak-builtins-document-info.c \ - app/flatpak-builtins-document-list.c \ - app/flatpak-builtins-permission-remove.c \ - app/flatpak-builtins-permission-set.c \ - app/flatpak-builtins-permission-list.c \ - app/flatpak-builtins-permission-show.c \ - app/flatpak-builtins-permission-reset.c \ - app/flatpak-builtins-search.c \ - app/flatpak-builtins-repair.c \ - app/flatpak-builtins-create-usb.c \ - app/flatpak-builtins-kill.c \ - app/flatpak-builtins-history.c \ - app/flatpak-complete.c \ - app/flatpak-complete.h \ - app/flatpak-cli-transaction.c \ - app/flatpak-cli-transaction.h \ - app/flatpak-quiet-transaction.c \ - app/flatpak-quiet-transaction.h \ - app/parse-datetime.h \ - $(polkit_sources) \ - $(NULL) - -nodist_flatpak_SOURCES = \ - $(flatpak_dbus_built_sources) \ - $(NULL) - -flatpak_LDADD = \ - $(AM_LDADD) \ - $(BASE_LIBS) \ - $(OSTREE_LIBS) \ - $(JSON_LIBS) \ - $(APPSTREAM_LIBS) \ - $(SYSTEMD_LIBS) \ - $(POLKIT_LIBS) \ - libglnx.la \ - libflatpak-app.la \ - libflatpak-common.la \ - libflatpak-common-base.la \ - $(NULL) - -flatpak_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(JSON_CFLAGS) \ - $(APPSTREAM_CFLAGS) \ - $(SYSTEMD_CFLAGS) \ - $(POLKIT_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -I$(srcdir)/app \ - -I$(builddir)/app \ - -DLIBEXECDIR=\"$(libexecdir)\" \ - -DLOCALEDIR=\"$(localedir)\" \ - $(NULL) - -flatpak_session_helper_SOURCES = \ - session-helper/flatpak-session-helper.c \ - session-helper/flatpak-session-helper.h \ - $(NULL) - -flatpak_session_helper_LDADD = $(AM_LDADD) $(BASE_LIBS) libflatpak-common-base.la libglnx.la -flatpak_session_helper_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) -DFLATPAK_COMPILATION -nodist_flatpak_portal_SOURCES = \ - portal/flatpak-permission-dbus.c \ - portal/flatpak-permission-dbus.h \ - portal/flatpak-portal-dbus.c \ - portal/flatpak-portal-dbus.h \ - $(NULL) - -flatpak_portal_SOURCES = \ - portal/flatpak-portal.c \ - portal/flatpak-portal.h \ - portal/flatpak-portal-app-info.c \ - portal/flatpak-portal-app-info.h \ - portal/portal-impl.c \ - portal/portal-impl.h \ - common/flatpak-portal-error.c \ - common/flatpak-portal-error.h \ - $(NULL) - -flatpak_portal_LDADD = $(AM_LDADD) $(BASE_LIBS) $(OSTREE_LIBS) libflatpak-common.la libflatpak-common-base.la libglnx.la -flatpak_portal_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(SOUP_CFLAGS) \ - $(JSON_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DDATADIR=\"$(datadir)\" \ - $(NULL) - -flatpak_portal_CPPFLAGS = $(AM_CPPFLAGS) -I$(builddir)/portal -@BUILD_SYSTEM_HELPER_TRUE@dbussystemservicedir = $(datadir)/dbus-1/system-services -@BUILD_SYSTEM_HELPER_TRUE@dbussystemservice_DATA = system-helper/org.freedesktop.Flatpak.SystemHelper.service -@BUILD_SYSTEM_HELPER_TRUE@dbusconfdir = $(DBUS_CONFIG_DIR) -@BUILD_SYSTEM_HELPER_TRUE@dist_dbusconf_DATA = system-helper/org.freedesktop.Flatpak.SystemHelper.conf -@BUILD_SYSTEM_HELPER_TRUE@flatpak_system_helper_SOURCES = \ -@BUILD_SYSTEM_HELPER_TRUE@ system-helper/flatpak-system-helper.c \ -@BUILD_SYSTEM_HELPER_TRUE@ system-helper/flatpak-system-helper.h \ -@BUILD_SYSTEM_HELPER_TRUE@ $(NULL) - -@BUILD_SYSTEM_HELPER_TRUE@flatpak_system_helper_LDADD = $(BASE_LIBS) $(OSTREE_LIBS) $(JSON_LIBS) $(POLKIT_LIBS) libflatpak-common.la libflatpak-common-base.la libglnx.la -@BUILD_SYSTEM_HELPER_TRUE@flatpak_system_helper_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) $(OSTREE_CFLAGS) $(APPSTREAM_CFLAGS) $(SOUP_CFLAGS) $(JSON_CFLAGS) $(POLKIT_CFLAGS) -DFLATPAK_COMPILATION -DLIBEXECDIR=\"$(libexecdir)\" -@BUILD_SYSTEM_HELPER_TRUE@polkit_rulesdir = $(datadir)/polkit-1/rules.d -@BUILD_SYSTEM_HELPER_TRUE@polkit_rules_DATA = \ -@BUILD_SYSTEM_HELPER_TRUE@ system-helper/org.freedesktop.Flatpak.rules - -@BUILD_SYSTEM_HELPER_TRUE@polkit_policydir = $(datadir)/polkit-1/actions -@BUILD_SYSTEM_HELPER_TRUE@polkit_policy_DATA = \ -@BUILD_SYSTEM_HELPER_TRUE@ system-helper/org.freedesktop.Flatpak.policy - -@BUILD_SYSTEM_HELPER_TRUE@sysusers_DATA = system-helper/flatpak.conf -flatpak_oci_authenticator_SOURCES = \ - oci-authenticator/flatpak-oci-authenticator.c \ - $(NULL) - -flatpak_oci_authenticator_LDADD = $(AM_LDADD) $(BASE_LIBS) $(OSTREE_LIBS) libflatpak-common.la libflatpak-common-base.la libglnx.la -flatpak_oci_authenticator_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(SOUP_CFLAGS) \ - $(JSON_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DDATADIR=\"$(datadir)\" \ - $(NULL) - -flatpak_oci_authenticator_CPPFLAGS = $(AM_CPPFLAGS) -I$(builddir)/oci-authenticator -flatpak_validate_icon_SOURCES = icon-validator/validate-icon.c -flatpak_validate_icon_LDADD = $(GDK_PIXBUF_LIBS) -flatpak_validate_icon_CFLAGS = $(AM_CFLAGS) $(GDK_PIXBUF_CFLAGS) -DLIBEXECDIR=\"$(libexecdir)\" -revokefs_fuse_SOURCES = revokefs/main.c revokefs/writer.c revokefs/writer.h -revokefs_fuse_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 $(FUSE_CFLAGS) -revokefs_fuse_LDADD = libglnx.la $(BASE_LIBS) $(FUSE_LIBS) -revokefs_demo_SOURCES = revokefs/demo.c -revokefs_demo_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) -revokefs_demo_LDADD = $(BASE_LIBS) -@BUILD_SELINUX_MODULE_TRUE@selinux_moduledir = ${datadir}/selinux/packages -@BUILD_SELINUX_MODULE_TRUE@selinux_module_DATA = $(NULL) \ -@BUILD_SELINUX_MODULE_TRUE@ flatpak.pp.bz2 -@BUILD_SELINUX_MODULE_TRUE@selinux_develdir = ${datadir}/selinux/devel/include/contrib -@BUILD_SELINUX_MODULE_TRUE@selinux_devel_DATA = $(NULL) \ -@BUILD_SELINUX_MODULE_TRUE@ selinux/flatpak.if -@BUILD_AUTO_SIDELOADING_TRUE@dist_libexec_SCRIPTS = sideload-repos-systemd/flatpak-create-sideload-symlinks.sh -@BUILD_AUTO_SIDELOADING_TRUE@path_in_files = sideload-repos-systemd/flatpak-sideload-usb-repo.path.in -AM_TESTS_ENVIRONMENT = FLATPAK_TESTS_DEBUG=1 \ - FLATPAK_CONFIG_DIR=/dev/null FLATPAK_PORTAL=$$(cd \ - $(top_builddir) && pwd)/flatpak-portal \ - FLATPAK_TRIGGERSDIR=$$(cd $(top_srcdir) && pwd)/triggers \ - FLATPAK_VALIDATE_ICON=$$(cd $(top_builddir) && \ - pwd)/flatpak-validate-icon FLATPAK_REVOKEFS_FUSE=$$(cd \ - $(top_builddir) && pwd)/revokefs-fuse GI_TYPELIB_PATH=$$(cd \ - $(top_builddir) && pwd)$${GI_TYPELIB_PATH:+:$$GI_TYPELIB_PATH} \ - LD_LIBRARY_PATH=$$(cd $(top_builddir)/.libs && \ - pwd)$${LD_LIBRARY_PATH:+:$$LD_LIBRARY_PATH} PATH=$$(cd \ - $(top_builddir) && pwd):$${PATH} $(NULL) $(am__append_30) \ - $(am__append_31) $(am__append_32) $(am__append_33) -libtestlib_la_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - -DFLATPAK_COMPILATION \ - $(NULL) - -libtestlib_la_SOURCES = \ - tests/testlib.c \ - tests/testlib.h \ - $(NULL) - -libtestlib_la_LIBADD = \ - $(AM_LDADD) \ - $(BASE_LIBS) \ - libglnx.la \ - $(NULL) - -testlibrary_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(FUSE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - -DFLATPAK_COMPILATION \ - $(NULL) - -testlibrary_LDADD = \ - $(AM_LDADD) \ - $(BASE_LIBS) \ - $(FUSE_LIBS) \ - $(OSTREE_LIBS) \ - libglnx.la \ - libflatpak.la \ - $(NULL) - -testlibrary_SOURCES = \ - tests/can-use-fuse.c \ - tests/can-use-fuse.h \ - tests/testlib.c \ - tests/testlibrary.c \ - $(NULL) - -testcommon_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(JSON_CFLAGS) \ - $(APPSTREAM_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DLIBEXECDIR=\"$(libexecdir)\" \ - -I$(srcdir)/app \ - -I$(builddir)/app \ - $(NULL) - -testcommon_LDADD = \ - $(AM_LDADD) \ - $(BASE_LIBS) \ - $(OSTREE_LIBS) \ - $(JSON_LIBS) \ - $(APPSTREAM_LIBS) \ - libflatpak-app.la \ - libflatpak-common.la \ - libflatpak-common-base.la \ - libglnx.la \ - $(NULL) - -testcommon_SOURCES = tests/testcommon.c -test_context_CFLAGS = $(testcommon_CFLAGS) -test_context_LDADD = $(testcommon_LDADD) libtestlib.la -test_context_SOURCES = tests/test-context.c -test_exports_CFLAGS = $(testcommon_CFLAGS) -test_exports_LDADD = $(testcommon_LDADD) libtestlib.la -test_exports_SOURCES = tests/test-exports.c -test_instance_CFLAGS = $(testcommon_CFLAGS) -test_instance_LDADD = $(testcommon_LDADD) libtestlib.la -test_instance_SOURCES = \ - subprojects/libglnx/tests/libglnx-testlib.c \ - subprojects/libglnx/tests/libglnx-testlib.h \ - tests/test-instance.c \ - $(NULL) - -test_portal_CFLAGS = $(testcommon_CFLAGS) -test_portal_LDADD = $(testcommon_LDADD) libtestlib.la -test_portal_SOURCES = \ - tests/test-portal.c \ - $(NULL) - -nodist_test_portal_SOURCES = \ - portal/flatpak-portal-dbus.c \ - portal/flatpak-portal-dbus.h \ - $(NULL) - -tests_hold_lock_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) -tests_hold_lock_LDADD = $(AM_LDADD) $(BASE_LIBS) libglnx.la -tests_hold_lock_SOURCES = tests/hold-lock.c -tests_httpcache_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) $(OSTREE_CFLAGS) $(JSON_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DLOCALEDIR=\"$(localedir)\" - -tests_httpcache_LDADD = $(AM_LDADD) $(BASE_LIBS) $(OSTREE_LIBS) $(JSON_LIBS) \ - libflatpak-common.la libflatpak-common-base.la libglnx.la - -tests_mock_flatpak_CFLAGS = $(testcommon_CFLAGS) -tests_mock_flatpak_LDADD = $(testcommon_LDADD) libtestlib.la -tests_mock_flatpak_SOURCES = tests/mock-flatpak.c -tests_test_update_portal_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DLOCALEDIR=\"$(localedir)\" - -tests_test_update_portal_LDADD = $(AM_LDADD) $(BASE_LIBS) -tests_test_update_portal_SOURCES = tests/test-update-portal.c -nodist_tests_test_update_portal_SOURCES = portal/flatpak-portal-dbus.c -tests_test_portal_impl_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DLOCALEDIR=\"$(localedir)\" - -tests_test_portal_impl_LDADD = $(AM_LDADD) $(BASE_LIBS) -tests_test_portal_impl_SOURCES = tests/test-portal-impl.c -tests_test_authenticator_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DLOCALEDIR=\"$(localedir)\" - -tests_test_authenticator_LDADD = $(AM_LDADD) $(BASE_LIBS) libflatpak-common.la libflatpak-common-base.la libglnx.la -tests_test_authenticator_SOURCES = tests/test-authenticator.c -tests_try_syscall_CFLAGS = $(AM_CFLAGS) -tests_try_syscall_LDADD = $(AM_LDADD) -tests_try_syscall_SOURCES = tests/try-syscall.c -tests_list_unused_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) $(OSTREE_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DLOCALEDIR=\"$(localedir)\" - -tests_list_unused_LDADD = $(AM_LDADD) $(BASE_LIBS) $(BASE_LIBS) $(OSTREE_LIBS) libflatpak-common.la libflatpak-common-base.la libglnx.la -tests_list_unused_SOURCES = tests/list-unused.c -dist_installed_test_data = \ - tests/libtest.sh \ - tests/org.test.Hello.png \ - tests/package_version.txt \ - tests/session.conf.in \ - tests/test.filter \ - tests/test.portal.in \ - tests/org.freedesktop.impl.portal.desktop.test.service.in \ - tests/org.flatpak.Authenticator.test.service.in \ - $(NULL) - -test_ltlibraries = tests/libpreload.la -tests_libpreload_la_SOURCES = tests/libpreload.c -tests_libpreload_la_LDFLAGS = -avoid-version -module -no-undefined \ - $(NULL) $(am__append_34) $(am__append_35) -installed_test_keyringdir = $(installed_testdir)/test-keyring -installed_test_keyring2dir = $(installed_testdir)/test-keyring2 -@ENABLE_INSTALLED_TESTS_TRUE@dist_installed_test_keyring_DATA = \ -@ENABLE_INSTALLED_TESTS_TRUE@ tests/test-keyring/README \ -@ENABLE_INSTALLED_TESTS_TRUE@ tests/test-keyring/pubring.gpg \ -@ENABLE_INSTALLED_TESTS_TRUE@ tests/test-keyring/secring.gpg \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(NULL) - -@ENABLE_INSTALLED_TESTS_TRUE@dist_installed_test_keyring2_DATA = \ -@ENABLE_INSTALLED_TESTS_TRUE@ tests/test-keyring2/README \ -@ENABLE_INSTALLED_TESTS_TRUE@ tests/test-keyring2/pubring.gpg \ -@ENABLE_INSTALLED_TESTS_TRUE@ tests/test-keyring2/secring.gpg \ -@ENABLE_INSTALLED_TESTS_TRUE@ $(NULL) - - -# This file is autogenerated by ./tests/update-test-matrix, don't edit -TEST_MATRIX = \ - tests/test-run@user,nodeltas.wrap \ - tests/test-run@user,deltas.wrap \ - tests/test-run@system,nodeltas.wrap \ - tests/test-run@system,deltas.wrap \ - tests/test-run@system-norevokefs,nodeltas.wrap \ - tests/test-run@system-norevokefs,deltas.wrap \ - tests/test-info@user.wrap \ - tests/test-info@system.wrap \ - tests/test-repo@user.wrap \ - tests/test-repo@system.wrap \ - tests/test-repo@system-norevokefs.wrap \ - tests/test-repo@user,oldsummary.wrap \ - tests/test-repo@system,oldsummary.wrap \ - tests/test-sideload@user.wrap \ - tests/test-sideload@system.wrap \ - tests/test-bundle@user.wrap \ - tests/test-bundle@system.wrap \ - tests/test-bundle@system-norevokefs.wrap \ - tests/test-oci-registry@user.wrap \ - tests/test-oci-registry@system.wrap \ - tests/test-update-remote-configuration@newsummary.wrap \ - tests/test-update-remote-configuration@oldsummary.wrap \ - tests/test-update-portal@user.wrap \ - tests/test-update-portal@system.wrap \ - tests/test-summaries@user.wrap \ - tests/test-summaries@system.wrap \ - tests/test-subset@user.wrap \ - tests/test-subset@system.wrap \ - $(NULL) - -TEST_MATRIX_DIST = \ - tests/test-basic.sh \ - tests/test-completion.sh \ - tests/test-config.sh \ - tests/test-build-update-repo.sh \ - tests/test-http-utils.sh \ - tests/test-history.sh \ - tests/test-default-remotes.sh \ - tests/test-metadata-validation.sh \ - tests/test-extensions.sh \ - tests/test-oci.sh \ - tests/test-override.sh \ - tests/test-auth.sh \ - tests/test-unused.sh \ - tests/test-prune.sh \ - tests/test-seccomp.sh \ - tests/test-repair.sh \ - $(NULL) - -TEST_MATRIX_EXTRA_DIST = \ - tests/test-run.sh \ - tests/test-info.sh \ - tests/test-repo.sh \ - tests/test-sideload.sh \ - tests/test-bundle.sh \ - tests/test-oci-registry.sh \ - tests/test-update-remote-configuration.sh \ - tests/test-update-portal.sh \ - tests/test-summaries.sh \ - tests/test-subset.sh \ - $(NULL) - -test_scripts = ${TEST_MATRIX} -dist_test_scripts = ${TEST_MATRIX_DIST} -test_programs = \ - test-context \ - test-exports \ - test-instance \ - test-portal \ - testcommon \ - testlibrary \ - $(NULL) - -test_extra_programs = \ - tests/hold-lock \ - tests/httpcache \ - tests/list-unused \ - tests/mock-flatpak \ - tests/test-authenticator \ - tests/test-portal-impl \ - tests/test-update-portal \ - tests/try-syscall \ - $(NULL) - -VALGRIND_SUPPRESSIONS_FILES = tests/flatpak.supp tests/glib.supp -@WITH_SYSTEM_DBUS_PROXY_FALSE@flatpak_dbus_proxy_SOURCES = \ -@WITH_SYSTEM_DBUS_PROXY_FALSE@ subprojects/dbus-proxy/flatpak-proxy.c \ -@WITH_SYSTEM_DBUS_PROXY_FALSE@ subprojects/dbus-proxy/flatpak-proxy.h \ -@WITH_SYSTEM_DBUS_PROXY_FALSE@ subprojects/dbus-proxy/dbus-proxy.c \ -@WITH_SYSTEM_DBUS_PROXY_FALSE@ subprojects/dbus-proxy/backport-autoptr.h \ -@WITH_SYSTEM_DBUS_PROXY_FALSE@ $(NULL) - -@WITH_SYSTEM_DBUS_PROXY_FALSE@flatpak_dbus_proxy_LDADD = $(AM_LDADD) $(BASE_LIBS) -@WITH_SYSTEM_DBUS_PROXY_FALSE@flatpak_dbus_proxy_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) -@WITH_SYSTEM_BWRAP_FALSE@flatpak_bwrap_SOURCES = $(bwrap_SOURCES) -@WITH_SYSTEM_BWRAP_FALSE@flatpak_bwrap_CFLAGS = $(AM_CFLAGS) $(bwrap_CFLAGS) -@WITH_SYSTEM_BWRAP_FALSE@flatpak_bwrap_LDADD = $(AM_LDADD) $(bwrap_LDADD) $(CAP_LIB) -@WITH_SYSTEM_BWRAP_FALSE@bwrapdir = $(libexecdir) -@WITH_SYSTEM_BWRAP_FALSE@bwrap_SOURCES = \ -@WITH_SYSTEM_BWRAP_FALSE@ subprojects/bubblewrap/bubblewrap.c \ -@WITH_SYSTEM_BWRAP_FALSE@ subprojects/bubblewrap/bind-mount.h \ -@WITH_SYSTEM_BWRAP_FALSE@ subprojects/bubblewrap/bind-mount.c \ -@WITH_SYSTEM_BWRAP_FALSE@ subprojects/bubblewrap/network.h \ -@WITH_SYSTEM_BWRAP_FALSE@ subprojects/bubblewrap/network.c \ -@WITH_SYSTEM_BWRAP_FALSE@ subprojects/bubblewrap/utils.h \ -@WITH_SYSTEM_BWRAP_FALSE@ subprojects/bubblewrap/utils.c \ -@WITH_SYSTEM_BWRAP_FALSE@ $(NULL) - -@WITH_SYSTEM_BWRAP_FALSE@bwrap_CFLAGS = $(AM_CFLAGS) -@WITH_SYSTEM_BWRAP_FALSE@bwrap_LDADD = $(SELINUX_LIBS) -bashcompletiondir = $(datadir)/bash-completion/completions -bashcompletion_DATA = completion/flatpak -zshcompletiondir = $(datadir)/zsh/site-functions -zshcompletion_DATA = completion/_flatpak -fishcompletiondir = $(datadir)/fish/vendor_completions.d -fishcompletion_DATA = completion/flatpak.fish -profiledir = $(PROFILE_DIR) -profile_DATA = profile/flatpak.sh -fishconfdir = $(datadir)/fish/vendor_conf.d -fishconf_DATA = profile/flatpak.fish -envdir = $(datadir)/gdm/env.d -env_DATA = $(am__append_37) -systemenvgendir = $(systemdsystemenvgendir) -systemenvgen_SCRIPTS = env.d/60-flatpak-system-only -userenvgendir = $(systemduserenvgendir) -userenvgen_SCRIPTS = env.d/60-flatpak -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = flatpak.pc -scriptsdir = $(bindir) -scripts_SCRIPTS = scripts/flatpak-bisect scripts/flatpak-coredumpctl -AM_DISTCHECK_CONFIGURE_FLAGS = \ - --enable-documentation \ - --disable-maintainer-mode \ - --enable-introspection - -all: $(BUILT_SOURCES) config.h - $(MAKE) $(AM_MAKEFLAGS) all-recursive - -.SUFFIXES: -.SUFFIXES: .c .lo .log .o .obj .test .test$(EXEEXT) .trs -am--refresh: Makefile - @: -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/buildutil/glib-tap.mk $(srcdir)/subprojects/Makefile-libglnx.am.inc $(srcdir)/common/Makefile.am.inc $(srcdir)/data/Makefile.am.inc $(srcdir)/app/Makefile.am.inc $(srcdir)/session-helper/Makefile.am.inc $(srcdir)/portal/Makefile.am.inc $(srcdir)/system-helper/Makefile.am.inc $(srcdir)/oci-authenticator/Makefile.am.inc $(srcdir)/icon-validator/Makefile.am.inc $(srcdir)/revokefs/Makefile.am.inc $(srcdir)/selinux/Makefile.am.inc $(srcdir)/sideload-repos-systemd/Makefile.am.inc $(srcdir)/tests/Makefile.am.inc $(srcdir)/tests/Makefile-test-matrix.am.inc $(srcdir)/subprojects/Makefile-bwrap.am.inc $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ - $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - echo ' $(SHELL) ./config.status'; \ - $(SHELL) ./config.status;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \ - esac; -$(top_srcdir)/buildutil/glib-tap.mk $(srcdir)/subprojects/Makefile-libglnx.am.inc $(srcdir)/common/Makefile.am.inc $(srcdir)/data/Makefile.am.inc $(srcdir)/app/Makefile.am.inc $(srcdir)/session-helper/Makefile.am.inc $(srcdir)/portal/Makefile.am.inc $(srcdir)/system-helper/Makefile.am.inc $(srcdir)/oci-authenticator/Makefile.am.inc $(srcdir)/icon-validator/Makefile.am.inc $(srcdir)/revokefs/Makefile.am.inc $(srcdir)/selinux/Makefile.am.inc $(srcdir)/sideload-repos-systemd/Makefile.am.inc $(srcdir)/tests/Makefile.am.inc $(srcdir)/tests/Makefile-test-matrix.am.inc $(srcdir)/subprojects/Makefile-bwrap.am.inc $(am__empty): - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - $(SHELL) ./config.status --recheck - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - $(am__cd) $(srcdir) && $(AUTOCONF) -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) -$(am__aclocal_m4_deps): - -config.h: stamp-h1 - @test -f $@ || rm -f stamp-h1 - @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 - -stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status - @rm -f stamp-h1 - cd $(top_builddir) && $(SHELL) ./config.status config.h -$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) - rm -f stamp-h1 - touch $@ - -distclean-hdr: - -rm -f config.h stamp-h1 -flatpak.pc: $(top_builddir)/config.status $(srcdir)/flatpak.pc.in - cd $(top_builddir) && $(SHELL) ./config.status $@ -common/flatpak-version-macros.h: $(top_builddir)/config.status $(top_srcdir)/common/flatpak-version-macros.h.in - cd $(top_builddir) && $(SHELL) ./config.status $@ -install-binPROGRAMS: $(bin_PROGRAMS) - @$(NORMAL_INSTALL) - @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ - fi; \ - for p in $$list; do echo "$$p $$p"; done | \ - sed 's/$(EXEEXT)$$//' | \ - while read p p1; do if test -f $$p \ - || test -f $$p1 \ - ; then echo "$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n;h' \ - -e 's|.*|.|' \ - -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ - sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) files[d] = files[d] " " $$1; \ - else { print "f", $$3 "/" $$4, $$1; } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ - $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-binPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' \ - `; \ - test -n "$$list" || exit 0; \ - echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(bindir)" && rm -f $$files - -clean-binPROGRAMS: - @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \ - echo " rm -f" $$list; \ - rm -f $$list || exit $$?; \ - test -n "$(EXEEXT)" || exit 0; \ - list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ - echo " rm -f" $$list; \ - rm -f $$list -install-bwrapPROGRAMS: $(bwrap_PROGRAMS) - @$(NORMAL_INSTALL) - @list='$(bwrap_PROGRAMS)'; test -n "$(bwrapdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(bwrapdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(bwrapdir)" || exit 1; \ - fi; \ - for p in $$list; do echo "$$p $$p"; done | \ - sed 's/$(EXEEXT)$$//' | \ - while read p p1; do if test -f $$p \ - || test -f $$p1 \ - ; then echo "$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n;h' \ - -e 's|.*|.|' \ - -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ - sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) files[d] = files[d] " " $$1; \ - else { print "f", $$3 "/" $$4, $$1; } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bwrapdir)$$dir'"; \ - $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bwrapdir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-bwrapPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(bwrap_PROGRAMS)'; test -n "$(bwrapdir)" || list=; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' \ - `; \ - test -n "$$list" || exit 0; \ - echo " ( cd '$(DESTDIR)$(bwrapdir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(bwrapdir)" && rm -f $$files - -clean-bwrapPROGRAMS: - @list='$(bwrap_PROGRAMS)'; test -n "$$list" || exit 0; \ - echo " rm -f" $$list; \ - rm -f $$list || exit $$?; \ - test -n "$(EXEEXT)" || exit 0; \ - list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ - echo " rm -f" $$list; \ - rm -f $$list - -clean-checkPROGRAMS: - @list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \ - echo " rm -f" $$list; \ - rm -f $$list || exit $$?; \ - test -n "$(EXEEXT)" || exit 0; \ - list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ - echo " rm -f" $$list; \ - rm -f $$list -install-installed_testPROGRAMS: $(installed_test_PROGRAMS) - @$(NORMAL_INSTALL) - @list='$(installed_test_PROGRAMS)'; test -n "$(installed_testdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(installed_testdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(installed_testdir)" || exit 1; \ - fi; \ - for p in $$list; do echo "$$p $$p"; done | \ - sed 's/$(EXEEXT)$$//' | \ - while read p p1; do if test -f $$p \ - || test -f $$p1 \ - ; then echo "$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n;h' \ - -e 's|.*|.|' \ - -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ - sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) files[d] = files[d] " " $$1; \ - else { print "f", $$3 "/" $$4, $$1; } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(installed_testdir)$$dir'"; \ - $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(installed_testdir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-installed_testPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(installed_test_PROGRAMS)'; test -n "$(installed_testdir)" || list=; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' \ - `; \ - test -n "$$list" || exit 0; \ - echo " ( cd '$(DESTDIR)$(installed_testdir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(installed_testdir)" && rm -f $$files - -clean-installed_testPROGRAMS: - @list='$(installed_test_PROGRAMS)'; test -n "$$list" || exit 0; \ - echo " rm -f" $$list; \ - rm -f $$list || exit $$?; \ - test -n "$(EXEEXT)" || exit 0; \ - list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ - echo " rm -f" $$list; \ - rm -f $$list -install-libexecPROGRAMS: $(libexec_PROGRAMS) - @$(NORMAL_INSTALL) - @list='$(libexec_PROGRAMS)'; test -n "$(libexecdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(libexecdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(libexecdir)" || exit 1; \ - fi; \ - for p in $$list; do echo "$$p $$p"; done | \ - sed 's/$(EXEEXT)$$//' | \ - while read p p1; do if test -f $$p \ - || test -f $$p1 \ - ; then echo "$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n;h' \ - -e 's|.*|.|' \ - -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ - sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) files[d] = files[d] " " $$1; \ - else { print "f", $$3 "/" $$4, $$1; } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(libexecdir)$$dir'"; \ - $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(libexecdir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-libexecPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(libexec_PROGRAMS)'; test -n "$(libexecdir)" || list=; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' \ - `; \ - test -n "$$list" || exit 0; \ - echo " ( cd '$(DESTDIR)$(libexecdir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(libexecdir)" && rm -f $$files - -clean-libexecPROGRAMS: - @list='$(libexec_PROGRAMS)'; test -n "$$list" || exit 0; \ - echo " rm -f" $$list; \ - rm -f $$list || exit $$?; \ - test -n "$(EXEEXT)" || exit 0; \ - list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ - echo " rm -f" $$list; \ - rm -f $$list - -clean-noinstPROGRAMS: - @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \ - echo " rm -f" $$list; \ - rm -f $$list || exit $$?; \ - test -n "$(EXEEXT)" || exit 0; \ - list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ - echo " rm -f" $$list; \ - rm -f $$list - -clean-checkLTLIBRARIES: - -test -z "$(check_LTLIBRARIES)" || rm -f $(check_LTLIBRARIES) - @list='$(check_LTLIBRARIES)'; \ - locs=`for p in $$list; do echo $$p; done | \ - sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ - sort -u`; \ - test -z "$$locs" || { \ - echo rm -f $${locs}; \ - rm -f $${locs}; \ - } - -install-installed_testLTLIBRARIES: $(installed_test_LTLIBRARIES) - @$(NORMAL_INSTALL) - @list='$(installed_test_LTLIBRARIES)'; test -n "$(installed_testdir)" || list=; \ - list2=; for p in $$list; do \ - if test -f $$p; then \ - list2="$$list2 $$p"; \ - else :; fi; \ - done; \ - test -z "$$list2" || { \ - echo " $(MKDIR_P) '$(DESTDIR)$(installed_testdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(installed_testdir)" || exit 1; \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(installed_testdir)'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(installed_testdir)"; \ - } - -uninstall-installed_testLTLIBRARIES: - @$(NORMAL_UNINSTALL) - @list='$(installed_test_LTLIBRARIES)'; test -n "$(installed_testdir)" || list=; \ - for p in $$list; do \ - $(am__strip_dir) \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(installed_testdir)/$$f'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(installed_testdir)/$$f"; \ - done - -clean-installed_testLTLIBRARIES: - -test -z "$(installed_test_LTLIBRARIES)" || rm -f $(installed_test_LTLIBRARIES) - @list='$(installed_test_LTLIBRARIES)'; \ - locs=`for p in $$list; do echo $$p; done | \ - sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ - sort -u`; \ - test -z "$$locs" || { \ - echo rm -f $${locs}; \ - rm -f $${locs}; \ - } - -install-libLTLIBRARIES: $(lib_LTLIBRARIES) - @$(NORMAL_INSTALL) - @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ - list2=; for p in $$list; do \ - if test -f $$p; then \ - list2="$$list2 $$p"; \ - else :; fi; \ - done; \ - test -z "$$list2" || { \ - echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \ - } - -uninstall-libLTLIBRARIES: - @$(NORMAL_UNINSTALL) - @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ - for p in $$list; do \ - $(am__strip_dir) \ - echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \ - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \ - done - -clean-libLTLIBRARIES: - -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) - @list='$(lib_LTLIBRARIES)'; \ - locs=`for p in $$list; do echo $$p; done | \ - sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ - sort -u`; \ - test -z "$$locs" || { \ - echo rm -f $${locs}; \ - rm -f $${locs}; \ - } - -clean-noinstLTLIBRARIES: - -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) - @list='$(noinst_LTLIBRARIES)'; \ - locs=`for p in $$list; do echo $$p; done | \ - sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ - sort -u`; \ - test -z "$$locs" || { \ - echo rm -f $${locs}; \ - rm -f $${locs}; \ - } -app/$(am__dirstamp): - @$(MKDIR_P) app - @: > app/$(am__dirstamp) -app/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) app/$(DEPDIR) - @: > app/$(DEPDIR)/$(am__dirstamp) -app/libflatpak_app_la-flatpak-builtins-utils.lo: app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/libflatpak_app_la-flatpak-table-printer.lo: app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/libflatpak_app_la-parse-datetime.lo: app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) - -libflatpak-app.la: $(libflatpak_app_la_OBJECTS) $(libflatpak_app_la_DEPENDENCIES) $(EXTRA_libflatpak_app_la_DEPENDENCIES) - $(AM_V_CCLD)$(libflatpak_app_la_LINK) $(libflatpak_app_la_OBJECTS) $(libflatpak_app_la_LIBADD) $(LIBS) -common/$(am__dirstamp): - @$(MKDIR_P) common - @: > common/$(am__dirstamp) -common/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) common/$(DEPDIR) - @: > common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_base_la-flatpak-utils-base.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_base_la-flatpak-dbus-generated.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_base_la-flatpak-document-dbus-generated.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) - -libflatpak-common-base.la: $(libflatpak_common_base_la_OBJECTS) $(libflatpak_common_base_la_DEPENDENCIES) $(EXTRA_libflatpak_common_base_la_DEPENDENCIES) - $(AM_V_CCLD)$(libflatpak_common_base_la_LINK) $(libflatpak_common_base_la_OBJECTS) $(libflatpak_common_base_la_LIBADD) $(LIBS) -common/libflatpak_common_la-flatpak-appdata.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-auth.lo: common/$(am__dirstamp) \ - common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-bundle-ref.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-bwrap.lo: common/$(am__dirstamp) \ - common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-chain-input-stream.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-context.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-dir.lo: common/$(am__dirstamp) \ - common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-error.lo: common/$(am__dirstamp) \ - common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-exports.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-installation.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-installed-ref.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-instance.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-json-oci.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-json.lo: common/$(am__dirstamp) \ - common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-oci-registry.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-portal-error.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-progress.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-ref.lo: common/$(am__dirstamp) \ - common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-ref-utils.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-related-ref.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-remote-ref.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-remote.lo: common/$(am__dirstamp) \ - common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-run.lo: common/$(am__dirstamp) \ - common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-transaction.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-utils-http.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-utils.lo: common/$(am__dirstamp) \ - common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-uri.lo: common/$(am__dirstamp) \ - common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-prune.lo: common/$(am__dirstamp) \ - common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-zstd-decompressor.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-parental-controls.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-systemd-dbus-generated.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -common/libflatpak_common_la-flatpak-enum-types.lo: \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) - -libflatpak-common.la: $(libflatpak_common_la_OBJECTS) $(libflatpak_common_la_DEPENDENCIES) $(EXTRA_libflatpak_common_la_DEPENDENCIES) - $(AM_V_CCLD)$(libflatpak_common_la_LINK) $(libflatpak_common_la_OBJECTS) $(libflatpak_common_la_LIBADD) $(LIBS) -common/libflatpak_la-flatpak.lo: common/$(am__dirstamp) \ - common/$(DEPDIR)/$(am__dirstamp) - -libflatpak.la: $(libflatpak_la_OBJECTS) $(libflatpak_la_DEPENDENCIES) $(EXTRA_libflatpak_la_DEPENDENCIES) - $(AM_V_CCLD)$(libflatpak_la_LINK) -rpath $(libdir) $(libflatpak_la_OBJECTS) $(libflatpak_la_LIBADD) $(LIBS) -subprojects/libglnx/$(am__dirstamp): - @$(MKDIR_P) subprojects/libglnx - @: > subprojects/libglnx/$(am__dirstamp) -subprojects/libglnx/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) subprojects/libglnx/$(DEPDIR) - @: > subprojects/libglnx/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/libglnx_la-glnx-backports.lo: \ - subprojects/libglnx/$(am__dirstamp) \ - subprojects/libglnx/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/libglnx_la-glnx-local-alloc.lo: \ - subprojects/libglnx/$(am__dirstamp) \ - subprojects/libglnx/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/libglnx_la-glnx-errors.lo: \ - subprojects/libglnx/$(am__dirstamp) \ - subprojects/libglnx/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/libglnx_la-glnx-console.lo: \ - subprojects/libglnx/$(am__dirstamp) \ - subprojects/libglnx/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/libglnx_la-glnx-dirfd.lo: \ - subprojects/libglnx/$(am__dirstamp) \ - subprojects/libglnx/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/libglnx_la-glnx-fdio.lo: \ - subprojects/libglnx/$(am__dirstamp) \ - subprojects/libglnx/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/libglnx_la-glnx-lockfile.lo: \ - subprojects/libglnx/$(am__dirstamp) \ - subprojects/libglnx/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/libglnx_la-glnx-xattrs.lo: \ - subprojects/libglnx/$(am__dirstamp) \ - subprojects/libglnx/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/libglnx_la-glnx-shutil.lo: \ - subprojects/libglnx/$(am__dirstamp) \ - subprojects/libglnx/$(DEPDIR)/$(am__dirstamp) - -libglnx.la: $(libglnx_la_OBJECTS) $(libglnx_la_DEPENDENCIES) $(EXTRA_libglnx_la_DEPENDENCIES) - $(AM_V_CCLD)$(libglnx_la_LINK) $(libglnx_la_OBJECTS) $(libglnx_la_LIBADD) $(LIBS) -tests/$(am__dirstamp): - @$(MKDIR_P) tests - @: > tests/$(am__dirstamp) -tests/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) tests/$(DEPDIR) - @: > tests/$(DEPDIR)/$(am__dirstamp) -tests/libtestlib_la-testlib.lo: tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -libtestlib.la: $(libtestlib_la_OBJECTS) $(libtestlib_la_DEPENDENCIES) $(EXTRA_libtestlib_la_DEPENDENCIES) - $(AM_V_CCLD)$(libtestlib_la_LINK) $(libtestlib_la_OBJECTS) $(libtestlib_la_LIBADD) $(LIBS) -tests/libpreload.lo: tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -tests/libpreload.la: $(tests_libpreload_la_OBJECTS) $(tests_libpreload_la_DEPENDENCIES) $(EXTRA_tests_libpreload_la_DEPENDENCIES) tests/$(am__dirstamp) - $(AM_V_CCLD)$(tests_libpreload_la_LINK) $(am_tests_libpreload_la_rpath) $(tests_libpreload_la_OBJECTS) $(tests_libpreload_la_LIBADD) $(LIBS) -app/flatpak-flatpak-main.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-remote-add.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-remote-modify.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-remote-delete.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-remote-list.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-remote-ls.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-remote-info.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-install.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-override.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-make-current.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-update.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-uninstall.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-mask.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-pin.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-list.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-info.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-config.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-run.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-enter.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-ps.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-build-init.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-build.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-build-finish.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-build-export.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-build-bundle.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-build-import-bundle.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-build-commit-from.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-build-sign.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-build-update-repo.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-repo.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-document-export.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-document-unexport.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-document-info.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-document-list.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-permission-remove.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-permission-set.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-permission-list.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-permission-show.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-permission-reset.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-search.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-repair.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-create-usb.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-kill.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-builtins-history.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-complete.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-cli-transaction.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-quiet-transaction.$(OBJEXT): app/$(am__dirstamp) \ - app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-polkit-agent-text-listener.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) -app/flatpak-flatpak-permission-dbus-generated.$(OBJEXT): \ - app/$(am__dirstamp) app/$(DEPDIR)/$(am__dirstamp) - -flatpak$(EXEEXT): $(flatpak_OBJECTS) $(flatpak_DEPENDENCIES) $(EXTRA_flatpak_DEPENDENCIES) - @rm -f flatpak$(EXEEXT) - $(AM_V_CCLD)$(flatpak_LINK) $(flatpak_OBJECTS) $(flatpak_LDADD) $(LIBS) -subprojects/bubblewrap/$(am__dirstamp): - @$(MKDIR_P) subprojects/bubblewrap - @: > subprojects/bubblewrap/$(am__dirstamp) -subprojects/bubblewrap/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) subprojects/bubblewrap/$(DEPDIR) - @: > subprojects/bubblewrap/$(DEPDIR)/$(am__dirstamp) -subprojects/bubblewrap/flatpak_bwrap-bubblewrap.$(OBJEXT): \ - subprojects/bubblewrap/$(am__dirstamp) \ - subprojects/bubblewrap/$(DEPDIR)/$(am__dirstamp) -subprojects/bubblewrap/flatpak_bwrap-bind-mount.$(OBJEXT): \ - subprojects/bubblewrap/$(am__dirstamp) \ - subprojects/bubblewrap/$(DEPDIR)/$(am__dirstamp) -subprojects/bubblewrap/flatpak_bwrap-network.$(OBJEXT): \ - subprojects/bubblewrap/$(am__dirstamp) \ - subprojects/bubblewrap/$(DEPDIR)/$(am__dirstamp) -subprojects/bubblewrap/flatpak_bwrap-utils.$(OBJEXT): \ - subprojects/bubblewrap/$(am__dirstamp) \ - subprojects/bubblewrap/$(DEPDIR)/$(am__dirstamp) - -flatpak-bwrap$(EXEEXT): $(flatpak_bwrap_OBJECTS) $(flatpak_bwrap_DEPENDENCIES) $(EXTRA_flatpak_bwrap_DEPENDENCIES) - @rm -f flatpak-bwrap$(EXEEXT) - $(AM_V_CCLD)$(flatpak_bwrap_LINK) $(flatpak_bwrap_OBJECTS) $(flatpak_bwrap_LDADD) $(LIBS) -subprojects/dbus-proxy/$(am__dirstamp): - @$(MKDIR_P) subprojects/dbus-proxy - @: > subprojects/dbus-proxy/$(am__dirstamp) -subprojects/dbus-proxy/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) subprojects/dbus-proxy/$(DEPDIR) - @: > subprojects/dbus-proxy/$(DEPDIR)/$(am__dirstamp) -subprojects/dbus-proxy/flatpak_dbus_proxy-flatpak-proxy.$(OBJEXT): \ - subprojects/dbus-proxy/$(am__dirstamp) \ - subprojects/dbus-proxy/$(DEPDIR)/$(am__dirstamp) -subprojects/dbus-proxy/flatpak_dbus_proxy-dbus-proxy.$(OBJEXT): \ - subprojects/dbus-proxy/$(am__dirstamp) \ - subprojects/dbus-proxy/$(DEPDIR)/$(am__dirstamp) - -flatpak-dbus-proxy$(EXEEXT): $(flatpak_dbus_proxy_OBJECTS) $(flatpak_dbus_proxy_DEPENDENCIES) $(EXTRA_flatpak_dbus_proxy_DEPENDENCIES) - @rm -f flatpak-dbus-proxy$(EXEEXT) - $(AM_V_CCLD)$(flatpak_dbus_proxy_LINK) $(flatpak_dbus_proxy_OBJECTS) $(flatpak_dbus_proxy_LDADD) $(LIBS) -oci-authenticator/$(am__dirstamp): - @$(MKDIR_P) oci-authenticator - @: > oci-authenticator/$(am__dirstamp) -oci-authenticator/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) oci-authenticator/$(DEPDIR) - @: > oci-authenticator/$(DEPDIR)/$(am__dirstamp) -oci-authenticator/flatpak_oci_authenticator-flatpak-oci-authenticator.$(OBJEXT): \ - oci-authenticator/$(am__dirstamp) \ - oci-authenticator/$(DEPDIR)/$(am__dirstamp) - -flatpak-oci-authenticator$(EXEEXT): $(flatpak_oci_authenticator_OBJECTS) $(flatpak_oci_authenticator_DEPENDENCIES) $(EXTRA_flatpak_oci_authenticator_DEPENDENCIES) - @rm -f flatpak-oci-authenticator$(EXEEXT) - $(AM_V_CCLD)$(flatpak_oci_authenticator_LINK) $(flatpak_oci_authenticator_OBJECTS) $(flatpak_oci_authenticator_LDADD) $(LIBS) -portal/$(am__dirstamp): - @$(MKDIR_P) portal - @: > portal/$(am__dirstamp) -portal/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) portal/$(DEPDIR) - @: > portal/$(DEPDIR)/$(am__dirstamp) -portal/flatpak_portal-flatpak-portal.$(OBJEXT): \ - portal/$(am__dirstamp) portal/$(DEPDIR)/$(am__dirstamp) -portal/flatpak_portal-flatpak-portal-app-info.$(OBJEXT): \ - portal/$(am__dirstamp) portal/$(DEPDIR)/$(am__dirstamp) -portal/flatpak_portal-portal-impl.$(OBJEXT): portal/$(am__dirstamp) \ - portal/$(DEPDIR)/$(am__dirstamp) -common/flatpak_portal-flatpak-portal-error.$(OBJEXT): \ - common/$(am__dirstamp) common/$(DEPDIR)/$(am__dirstamp) -portal/flatpak_portal-flatpak-permission-dbus.$(OBJEXT): \ - portal/$(am__dirstamp) portal/$(DEPDIR)/$(am__dirstamp) -portal/flatpak_portal-flatpak-portal-dbus.$(OBJEXT): \ - portal/$(am__dirstamp) portal/$(DEPDIR)/$(am__dirstamp) - -flatpak-portal$(EXEEXT): $(flatpak_portal_OBJECTS) $(flatpak_portal_DEPENDENCIES) $(EXTRA_flatpak_portal_DEPENDENCIES) - @rm -f flatpak-portal$(EXEEXT) - $(AM_V_CCLD)$(flatpak_portal_LINK) $(flatpak_portal_OBJECTS) $(flatpak_portal_LDADD) $(LIBS) -session-helper/$(am__dirstamp): - @$(MKDIR_P) session-helper - @: > session-helper/$(am__dirstamp) -session-helper/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) session-helper/$(DEPDIR) - @: > session-helper/$(DEPDIR)/$(am__dirstamp) -session-helper/flatpak_session_helper-flatpak-session-helper.$(OBJEXT): \ - session-helper/$(am__dirstamp) \ - session-helper/$(DEPDIR)/$(am__dirstamp) - -flatpak-session-helper$(EXEEXT): $(flatpak_session_helper_OBJECTS) $(flatpak_session_helper_DEPENDENCIES) $(EXTRA_flatpak_session_helper_DEPENDENCIES) - @rm -f flatpak-session-helper$(EXEEXT) - $(AM_V_CCLD)$(flatpak_session_helper_LINK) $(flatpak_session_helper_OBJECTS) $(flatpak_session_helper_LDADD) $(LIBS) -system-helper/$(am__dirstamp): - @$(MKDIR_P) system-helper - @: > system-helper/$(am__dirstamp) -system-helper/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) system-helper/$(DEPDIR) - @: > system-helper/$(DEPDIR)/$(am__dirstamp) -system-helper/flatpak_system_helper-flatpak-system-helper.$(OBJEXT): \ - system-helper/$(am__dirstamp) \ - system-helper/$(DEPDIR)/$(am__dirstamp) - -flatpak-system-helper$(EXEEXT): $(flatpak_system_helper_OBJECTS) $(flatpak_system_helper_DEPENDENCIES) $(EXTRA_flatpak_system_helper_DEPENDENCIES) - @rm -f flatpak-system-helper$(EXEEXT) - $(AM_V_CCLD)$(flatpak_system_helper_LINK) $(flatpak_system_helper_OBJECTS) $(flatpak_system_helper_LDADD) $(LIBS) -icon-validator/$(am__dirstamp): - @$(MKDIR_P) icon-validator - @: > icon-validator/$(am__dirstamp) -icon-validator/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) icon-validator/$(DEPDIR) - @: > icon-validator/$(DEPDIR)/$(am__dirstamp) -icon-validator/flatpak_validate_icon-validate-icon.$(OBJEXT): \ - icon-validator/$(am__dirstamp) \ - icon-validator/$(DEPDIR)/$(am__dirstamp) - -flatpak-validate-icon$(EXEEXT): $(flatpak_validate_icon_OBJECTS) $(flatpak_validate_icon_DEPENDENCIES) $(EXTRA_flatpak_validate_icon_DEPENDENCIES) - @rm -f flatpak-validate-icon$(EXEEXT) - $(AM_V_CCLD)$(flatpak_validate_icon_LINK) $(flatpak_validate_icon_OBJECTS) $(flatpak_validate_icon_LDADD) $(LIBS) -revokefs/$(am__dirstamp): - @$(MKDIR_P) revokefs - @: > revokefs/$(am__dirstamp) -revokefs/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) revokefs/$(DEPDIR) - @: > revokefs/$(DEPDIR)/$(am__dirstamp) -revokefs/demo-demo.$(OBJEXT): revokefs/$(am__dirstamp) \ - revokefs/$(DEPDIR)/$(am__dirstamp) - -revokefs-demo$(EXEEXT): $(revokefs_demo_OBJECTS) $(revokefs_demo_DEPENDENCIES) $(EXTRA_revokefs_demo_DEPENDENCIES) - @rm -f revokefs-demo$(EXEEXT) - $(AM_V_CCLD)$(revokefs_demo_LINK) $(revokefs_demo_OBJECTS) $(revokefs_demo_LDADD) $(LIBS) -revokefs/fuse-main.$(OBJEXT): revokefs/$(am__dirstamp) \ - revokefs/$(DEPDIR)/$(am__dirstamp) -revokefs/fuse-writer.$(OBJEXT): revokefs/$(am__dirstamp) \ - revokefs/$(DEPDIR)/$(am__dirstamp) - -revokefs-fuse$(EXEEXT): $(revokefs_fuse_OBJECTS) $(revokefs_fuse_DEPENDENCIES) $(EXTRA_revokefs_fuse_DEPENDENCIES) - @rm -f revokefs-fuse$(EXEEXT) - $(AM_V_CCLD)$(revokefs_fuse_LINK) $(revokefs_fuse_OBJECTS) $(revokefs_fuse_LDADD) $(LIBS) -tests/test_context-test-context.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -test-context$(EXEEXT): $(test_context_OBJECTS) $(test_context_DEPENDENCIES) $(EXTRA_test_context_DEPENDENCIES) - @rm -f test-context$(EXEEXT) - $(AM_V_CCLD)$(test_context_LINK) $(test_context_OBJECTS) $(test_context_LDADD) $(LIBS) -tests/test_exports-test-exports.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -test-exports$(EXEEXT): $(test_exports_OBJECTS) $(test_exports_DEPENDENCIES) $(EXTRA_test_exports_DEPENDENCIES) - @rm -f test-exports$(EXEEXT) - $(AM_V_CCLD)$(test_exports_LINK) $(test_exports_OBJECTS) $(test_exports_LDADD) $(LIBS) -subprojects/libglnx/tests/$(am__dirstamp): - @$(MKDIR_P) subprojects/libglnx/tests - @: > subprojects/libglnx/tests/$(am__dirstamp) -subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp): - @$(MKDIR_P) subprojects/libglnx/tests/$(DEPDIR) - @: > subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/tests/test_instance-libglnx-testlib.$(OBJEXT): \ - subprojects/libglnx/tests/$(am__dirstamp) \ - subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp) -tests/test_instance-test-instance.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -test-instance$(EXEEXT): $(test_instance_OBJECTS) $(test_instance_DEPENDENCIES) $(EXTRA_test_instance_DEPENDENCIES) - @rm -f test-instance$(EXEEXT) - $(AM_V_CCLD)$(test_instance_LINK) $(test_instance_OBJECTS) $(test_instance_LDADD) $(LIBS) -common/test_libflatpak-test-lib.$(OBJEXT): common/$(am__dirstamp) \ - common/$(DEPDIR)/$(am__dirstamp) - -test-libflatpak$(EXEEXT): $(test_libflatpak_OBJECTS) $(test_libflatpak_DEPENDENCIES) $(EXTRA_test_libflatpak_DEPENDENCIES) - @rm -f test-libflatpak$(EXEEXT) - $(AM_V_CCLD)$(test_libflatpak_LINK) $(test_libflatpak_OBJECTS) $(test_libflatpak_LDADD) $(LIBS) -subprojects/libglnx/tests/test_libglnx_errors-libglnx-testlib.$(OBJEXT): \ - subprojects/libglnx/tests/$(am__dirstamp) \ - subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/tests/test_libglnx_errors-test-libglnx-errors.$(OBJEXT): \ - subprojects/libglnx/tests/$(am__dirstamp) \ - subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp) - -test-libglnx-errors$(EXEEXT): $(test_libglnx_errors_OBJECTS) $(test_libglnx_errors_DEPENDENCIES) $(EXTRA_test_libglnx_errors_DEPENDENCIES) - @rm -f test-libglnx-errors$(EXEEXT) - $(AM_V_CCLD)$(test_libglnx_errors_LINK) $(test_libglnx_errors_OBJECTS) $(test_libglnx_errors_LDADD) $(LIBS) -subprojects/libglnx/tests/test_libglnx_fdio-libglnx-testlib.$(OBJEXT): \ - subprojects/libglnx/tests/$(am__dirstamp) \ - subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/tests/test_libglnx_fdio-test-libglnx-fdio.$(OBJEXT): \ - subprojects/libglnx/tests/$(am__dirstamp) \ - subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp) - -test-libglnx-fdio$(EXEEXT): $(test_libglnx_fdio_OBJECTS) $(test_libglnx_fdio_DEPENDENCIES) $(EXTRA_test_libglnx_fdio_DEPENDENCIES) - @rm -f test-libglnx-fdio$(EXEEXT) - $(AM_V_CCLD)$(test_libglnx_fdio_LINK) $(test_libglnx_fdio_OBJECTS) $(test_libglnx_fdio_LDADD) $(LIBS) -subprojects/libglnx/tests/test_libglnx_macros-libglnx-testlib.$(OBJEXT): \ - subprojects/libglnx/tests/$(am__dirstamp) \ - subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/tests/test_libglnx_macros-test-libglnx-macros.$(OBJEXT): \ - subprojects/libglnx/tests/$(am__dirstamp) \ - subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp) - -test-libglnx-macros$(EXEEXT): $(test_libglnx_macros_OBJECTS) $(test_libglnx_macros_DEPENDENCIES) $(EXTRA_test_libglnx_macros_DEPENDENCIES) - @rm -f test-libglnx-macros$(EXEEXT) - $(AM_V_CCLD)$(test_libglnx_macros_LINK) $(test_libglnx_macros_OBJECTS) $(test_libglnx_macros_LDADD) $(LIBS) -subprojects/libglnx/tests/test_libglnx_shutil-libglnx-testlib.$(OBJEXT): \ - subprojects/libglnx/tests/$(am__dirstamp) \ - subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/tests/test_libglnx_shutil-test-libglnx-shutil.$(OBJEXT): \ - subprojects/libglnx/tests/$(am__dirstamp) \ - subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp) - -test-libglnx-shutil$(EXEEXT): $(test_libglnx_shutil_OBJECTS) $(test_libglnx_shutil_DEPENDENCIES) $(EXTRA_test_libglnx_shutil_DEPENDENCIES) - @rm -f test-libglnx-shutil$(EXEEXT) - $(AM_V_CCLD)$(test_libglnx_shutil_LINK) $(test_libglnx_shutil_OBJECTS) $(test_libglnx_shutil_LDADD) $(LIBS) -subprojects/libglnx/tests/test_libglnx_xattrs-libglnx-testlib.$(OBJEXT): \ - subprojects/libglnx/tests/$(am__dirstamp) \ - subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp) -subprojects/libglnx/tests/test_libglnx_xattrs-test-libglnx-xattrs.$(OBJEXT): \ - subprojects/libglnx/tests/$(am__dirstamp) \ - subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp) - -test-libglnx-xattrs$(EXEEXT): $(test_libglnx_xattrs_OBJECTS) $(test_libglnx_xattrs_DEPENDENCIES) $(EXTRA_test_libglnx_xattrs_DEPENDENCIES) - @rm -f test-libglnx-xattrs$(EXEEXT) - $(AM_V_CCLD)$(test_libglnx_xattrs_LINK) $(test_libglnx_xattrs_OBJECTS) $(test_libglnx_xattrs_LDADD) $(LIBS) -tests/test_portal-test-portal.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) -portal/test_portal-flatpak-portal-dbus.$(OBJEXT): \ - portal/$(am__dirstamp) portal/$(DEPDIR)/$(am__dirstamp) - -test-portal$(EXEEXT): $(test_portal_OBJECTS) $(test_portal_DEPENDENCIES) $(EXTRA_test_portal_DEPENDENCIES) - @rm -f test-portal$(EXEEXT) - $(AM_V_CCLD)$(test_portal_LINK) $(test_portal_OBJECTS) $(test_portal_LDADD) $(LIBS) -tests/testcommon-testcommon.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -testcommon$(EXEEXT): $(testcommon_OBJECTS) $(testcommon_DEPENDENCIES) $(EXTRA_testcommon_DEPENDENCIES) - @rm -f testcommon$(EXEEXT) - $(AM_V_CCLD)$(testcommon_LINK) $(testcommon_OBJECTS) $(testcommon_LDADD) $(LIBS) -tests/testlibrary-can-use-fuse.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) -tests/testlibrary-testlib.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) -tests/testlibrary-testlibrary.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -testlibrary$(EXEEXT): $(testlibrary_OBJECTS) $(testlibrary_DEPENDENCIES) $(EXTRA_testlibrary_DEPENDENCIES) - @rm -f testlibrary$(EXEEXT) - $(AM_V_CCLD)$(testlibrary_LINK) $(testlibrary_OBJECTS) $(testlibrary_LDADD) $(LIBS) -tests/hold_lock-hold-lock.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -tests/hold-lock$(EXEEXT): $(tests_hold_lock_OBJECTS) $(tests_hold_lock_DEPENDENCIES) $(EXTRA_tests_hold_lock_DEPENDENCIES) tests/$(am__dirstamp) - @rm -f tests/hold-lock$(EXEEXT) - $(AM_V_CCLD)$(tests_hold_lock_LINK) $(tests_hold_lock_OBJECTS) $(tests_hold_lock_LDADD) $(LIBS) -tests/httpcache-httpcache.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -tests/httpcache$(EXEEXT): $(tests_httpcache_OBJECTS) $(tests_httpcache_DEPENDENCIES) $(EXTRA_tests_httpcache_DEPENDENCIES) tests/$(am__dirstamp) - @rm -f tests/httpcache$(EXEEXT) - $(AM_V_CCLD)$(tests_httpcache_LINK) $(tests_httpcache_OBJECTS) $(tests_httpcache_LDADD) $(LIBS) -tests/list_unused-list-unused.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -tests/list-unused$(EXEEXT): $(tests_list_unused_OBJECTS) $(tests_list_unused_DEPENDENCIES) $(EXTRA_tests_list_unused_DEPENDENCIES) tests/$(am__dirstamp) - @rm -f tests/list-unused$(EXEEXT) - $(AM_V_CCLD)$(tests_list_unused_LINK) $(tests_list_unused_OBJECTS) $(tests_list_unused_LDADD) $(LIBS) -tests/mock_flatpak-mock-flatpak.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -tests/mock-flatpak$(EXEEXT): $(tests_mock_flatpak_OBJECTS) $(tests_mock_flatpak_DEPENDENCIES) $(EXTRA_tests_mock_flatpak_DEPENDENCIES) tests/$(am__dirstamp) - @rm -f tests/mock-flatpak$(EXEEXT) - $(AM_V_CCLD)$(tests_mock_flatpak_LINK) $(tests_mock_flatpak_OBJECTS) $(tests_mock_flatpak_LDADD) $(LIBS) -tests/test_authenticator-test-authenticator.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) - -tests/test-authenticator$(EXEEXT): $(tests_test_authenticator_OBJECTS) $(tests_test_authenticator_DEPENDENCIES) $(EXTRA_tests_test_authenticator_DEPENDENCIES) tests/$(am__dirstamp) - @rm -f tests/test-authenticator$(EXEEXT) - $(AM_V_CCLD)$(tests_test_authenticator_LINK) $(tests_test_authenticator_OBJECTS) $(tests_test_authenticator_LDADD) $(LIBS) -tests/test_portal_impl-test-portal-impl.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) - -tests/test-portal-impl$(EXEEXT): $(tests_test_portal_impl_OBJECTS) $(tests_test_portal_impl_DEPENDENCIES) $(EXTRA_tests_test_portal_impl_DEPENDENCIES) tests/$(am__dirstamp) - @rm -f tests/test-portal-impl$(EXEEXT) - $(AM_V_CCLD)$(tests_test_portal_impl_LINK) $(tests_test_portal_impl_OBJECTS) $(tests_test_portal_impl_LDADD) $(LIBS) -tests/test_update_portal-test-update-portal.$(OBJEXT): \ - tests/$(am__dirstamp) tests/$(DEPDIR)/$(am__dirstamp) -portal/tests_test_update_portal-flatpak-portal-dbus.$(OBJEXT): \ - portal/$(am__dirstamp) portal/$(DEPDIR)/$(am__dirstamp) - -tests/test-update-portal$(EXEEXT): $(tests_test_update_portal_OBJECTS) $(tests_test_update_portal_DEPENDENCIES) $(EXTRA_tests_test_update_portal_DEPENDENCIES) tests/$(am__dirstamp) - @rm -f tests/test-update-portal$(EXEEXT) - $(AM_V_CCLD)$(tests_test_update_portal_LINK) $(tests_test_update_portal_OBJECTS) $(tests_test_update_portal_LDADD) $(LIBS) -tests/try_syscall-try-syscall.$(OBJEXT): tests/$(am__dirstamp) \ - tests/$(DEPDIR)/$(am__dirstamp) - -tests/try-syscall$(EXEEXT): $(tests_try_syscall_OBJECTS) $(tests_try_syscall_DEPENDENCIES) $(EXTRA_tests_try_syscall_DEPENDENCIES) tests/$(am__dirstamp) - @rm -f tests/try-syscall$(EXEEXT) - $(AM_V_CCLD)$(tests_try_syscall_LINK) $(tests_try_syscall_OBJECTS) $(tests_try_syscall_LDADD) $(LIBS) -install-dist_libexecSCRIPTS: $(dist_libexec_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(dist_libexec_SCRIPTS)'; test -n "$(libexecdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(libexecdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(libexecdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(libexecdir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(libexecdir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-dist_libexecSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(dist_libexec_SCRIPTS)'; test -n "$(libexecdir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(libexecdir)'; $(am__uninstall_files_from_dir) -install-dist_triggersSCRIPTS: $(dist_triggers_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(dist_triggers_SCRIPTS)'; test -n "$(triggersdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(triggersdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(triggersdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(triggersdir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(triggersdir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-dist_triggersSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(dist_triggers_SCRIPTS)'; test -n "$(triggersdir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(triggersdir)'; $(am__uninstall_files_from_dir) -install-installed_testSCRIPTS: $(installed_test_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(installed_test_SCRIPTS)'; test -n "$(installed_testdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(installed_testdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(installed_testdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(installed_testdir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(installed_testdir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-installed_testSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(installed_test_SCRIPTS)'; test -n "$(installed_testdir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(installed_testdir)'; $(am__uninstall_files_from_dir) -install-scriptsSCRIPTS: $(scripts_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(scripts_SCRIPTS)'; test -n "$(scriptsdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(scriptsdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(scriptsdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(scriptsdir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(scriptsdir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-scriptsSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(scripts_SCRIPTS)'; test -n "$(scriptsdir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(scriptsdir)'; $(am__uninstall_files_from_dir) -install-systemenvgenSCRIPTS: $(systemenvgen_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(systemenvgen_SCRIPTS)'; test -n "$(systemenvgendir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(systemenvgendir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(systemenvgendir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(systemenvgendir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(systemenvgendir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-systemenvgenSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(systemenvgen_SCRIPTS)'; test -n "$(systemenvgendir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(systemenvgendir)'; $(am__uninstall_files_from_dir) -install-userenvgenSCRIPTS: $(userenvgen_SCRIPTS) - @$(NORMAL_INSTALL) - @list='$(userenvgen_SCRIPTS)'; test -n "$(userenvgendir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(userenvgendir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(userenvgendir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n' \ - -e 'h;s|.*|.|' \ - -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) { files[d] = files[d] " " $$1; \ - if (++n[d] == $(am__install_max)) { \ - print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ - else { print "f", d "/" $$4, $$1 } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(userenvgendir)$$dir'"; \ - $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(userenvgendir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-userenvgenSCRIPTS: - @$(NORMAL_UNINSTALL) - @list='$(userenvgen_SCRIPTS)'; test -n "$(userenvgendir)" || exit 0; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 's,.*/,,;$(transform)'`; \ - dir='$(DESTDIR)$(userenvgendir)'; $(am__uninstall_files_from_dir) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -rm -f app/*.$(OBJEXT) - -rm -f app/*.lo - -rm -f common/*.$(OBJEXT) - -rm -f common/*.lo - -rm -f icon-validator/*.$(OBJEXT) - -rm -f oci-authenticator/*.$(OBJEXT) - -rm -f portal/*.$(OBJEXT) - -rm -f revokefs/*.$(OBJEXT) - -rm -f session-helper/*.$(OBJEXT) - -rm -f subprojects/bubblewrap/*.$(OBJEXT) - -rm -f subprojects/dbus-proxy/*.$(OBJEXT) - -rm -f subprojects/libglnx/*.$(OBJEXT) - -rm -f subprojects/libglnx/*.lo - -rm -f subprojects/libglnx/tests/*.$(OBJEXT) - -rm -f system-helper/*.$(OBJEXT) - -rm -f tests/*.$(OBJEXT) - -rm -f tests/*.lo - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-build-bundle.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-build-commit-from.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-build-export.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-build-finish.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-build-import-bundle.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-build-init.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-build-sign.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-build-update-repo.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-build.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-config.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-create-usb.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-document-export.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-document-info.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-document-list.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-document-unexport.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-enter.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-history.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-info.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-install.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-kill.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-list.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-make-current.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-mask.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-override.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-permission-list.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-permission-remove.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-permission-reset.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-permission-set.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-permission-show.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-pin.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-ps.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-remote-add.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-remote-delete.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-remote-info.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-remote-list.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-remote-ls.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-remote-modify.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-repair.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-repo.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-run.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-search.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-uninstall.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-builtins-update.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-cli-transaction.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-complete.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-main.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-permission-dbus-generated.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-polkit-agent-text-listener.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/flatpak-flatpak-quiet-transaction.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/libflatpak_app_la-flatpak-builtins-utils.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/libflatpak_app_la-flatpak-table-printer.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@app/$(DEPDIR)/libflatpak_app_la-parse-datetime.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/flatpak_portal-flatpak-portal-error.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_base_la-flatpak-dbus-generated.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_base_la-flatpak-document-dbus-generated.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_base_la-flatpak-utils-base.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-appdata.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-auth.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-bundle-ref.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-bwrap.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-chain-input-stream.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-context.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-dir.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-enum-types.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-error.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-exports.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-installation.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-installed-ref.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-instance.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-json-oci.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-json.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-oci-registry.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-parental-controls.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-portal-error.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-progress.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-prune.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-ref-utils.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-ref.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-related-ref.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-remote-ref.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-remote.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-run.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-systemd-dbus-generated.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-transaction.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-uri.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-utils-http.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-utils.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_common_la-flatpak-zstd-decompressor.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/libflatpak_la-flatpak.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@common/$(DEPDIR)/test_libflatpak-test-lib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@icon-validator/$(DEPDIR)/flatpak_validate_icon-validate-icon.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@oci-authenticator/$(DEPDIR)/flatpak_oci_authenticator-flatpak-oci-authenticator.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@portal/$(DEPDIR)/flatpak_portal-flatpak-permission-dbus.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@portal/$(DEPDIR)/flatpak_portal-flatpak-portal-app-info.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@portal/$(DEPDIR)/flatpak_portal-flatpak-portal-dbus.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@portal/$(DEPDIR)/flatpak_portal-flatpak-portal.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@portal/$(DEPDIR)/flatpak_portal-portal-impl.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@portal/$(DEPDIR)/test_portal-flatpak-portal-dbus.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@portal/$(DEPDIR)/tests_test_update_portal-flatpak-portal-dbus.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@revokefs/$(DEPDIR)/demo-demo.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@revokefs/$(DEPDIR)/fuse-main.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@revokefs/$(DEPDIR)/fuse-writer.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@session-helper/$(DEPDIR)/flatpak_session_helper-flatpak-session-helper.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bind-mount.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bubblewrap.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-network.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-utils.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-dbus-proxy.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-flatpak-proxy.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-backports.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-console.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-dirfd.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-errors.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-fdio.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-local-alloc.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-lockfile.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-shutil.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-xattrs.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/tests/$(DEPDIR)/test_instance-libglnx-testlib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-libglnx-testlib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-test-libglnx-errors.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-libglnx-testlib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-test-libglnx-fdio.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-libglnx-testlib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-test-libglnx-macros.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-libglnx-testlib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-test-libglnx-shutil.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-libglnx-testlib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-test-libglnx-xattrs.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@system-helper/$(DEPDIR)/flatpak_system_helper-flatpak-system-helper.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/hold_lock-hold-lock.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/httpcache-httpcache.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/libpreload.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/libtestlib_la-testlib.Plo@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/list_unused-list-unused.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/mock_flatpak-mock-flatpak.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/test_authenticator-test-authenticator.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/test_context-test-context.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/test_exports-test-exports.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/test_instance-test-instance.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/test_portal-test-portal.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/test_portal_impl-test-portal-impl.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/test_update_portal-test-update-portal.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/testcommon-testcommon.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/testlibrary-can-use-fuse.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/testlibrary-testlib.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/testlibrary-testlibrary.Po@am__quote@ # am--include-marker -@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/try_syscall-try-syscall.Po@am__quote@ # am--include-marker - -$(am__depfiles_remade): - @$(MKDIR_P) $(@D) - @echo '# dummy' >$@-t && $(am__mv) $@-t $@ - -am--depfiles: $(am__depfiles_remade) - -.c.o: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< - -.c.obj: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` - -.c.lo: -@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\ -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ -@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< - -app/libflatpak_app_la-flatpak-builtins-utils.lo: app/flatpak-builtins-utils.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_app_la_CFLAGS) $(CFLAGS) -MT app/libflatpak_app_la-flatpak-builtins-utils.lo -MD -MP -MF app/$(DEPDIR)/libflatpak_app_la-flatpak-builtins-utils.Tpo -c -o app/libflatpak_app_la-flatpak-builtins-utils.lo `test -f 'app/flatpak-builtins-utils.c' || echo '$(srcdir)/'`app/flatpak-builtins-utils.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/libflatpak_app_la-flatpak-builtins-utils.Tpo app/$(DEPDIR)/libflatpak_app_la-flatpak-builtins-utils.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-utils.c' object='app/libflatpak_app_la-flatpak-builtins-utils.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_app_la_CFLAGS) $(CFLAGS) -c -o app/libflatpak_app_la-flatpak-builtins-utils.lo `test -f 'app/flatpak-builtins-utils.c' || echo '$(srcdir)/'`app/flatpak-builtins-utils.c - -app/libflatpak_app_la-flatpak-table-printer.lo: app/flatpak-table-printer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_app_la_CFLAGS) $(CFLAGS) -MT app/libflatpak_app_la-flatpak-table-printer.lo -MD -MP -MF app/$(DEPDIR)/libflatpak_app_la-flatpak-table-printer.Tpo -c -o app/libflatpak_app_la-flatpak-table-printer.lo `test -f 'app/flatpak-table-printer.c' || echo '$(srcdir)/'`app/flatpak-table-printer.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/libflatpak_app_la-flatpak-table-printer.Tpo app/$(DEPDIR)/libflatpak_app_la-flatpak-table-printer.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-table-printer.c' object='app/libflatpak_app_la-flatpak-table-printer.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_app_la_CFLAGS) $(CFLAGS) -c -o app/libflatpak_app_la-flatpak-table-printer.lo `test -f 'app/flatpak-table-printer.c' || echo '$(srcdir)/'`app/flatpak-table-printer.c - -app/libflatpak_app_la-parse-datetime.lo: app/parse-datetime.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_app_la_CFLAGS) $(CFLAGS) -MT app/libflatpak_app_la-parse-datetime.lo -MD -MP -MF app/$(DEPDIR)/libflatpak_app_la-parse-datetime.Tpo -c -o app/libflatpak_app_la-parse-datetime.lo `test -f 'app/parse-datetime.c' || echo '$(srcdir)/'`app/parse-datetime.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/libflatpak_app_la-parse-datetime.Tpo app/$(DEPDIR)/libflatpak_app_la-parse-datetime.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/parse-datetime.c' object='app/libflatpak_app_la-parse-datetime.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_app_la_CFLAGS) $(CFLAGS) -c -o app/libflatpak_app_la-parse-datetime.lo `test -f 'app/parse-datetime.c' || echo '$(srcdir)/'`app/parse-datetime.c - -common/libflatpak_common_base_la-flatpak-utils-base.lo: common/flatpak-utils-base.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_base_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_base_la-flatpak-utils-base.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_base_la-flatpak-utils-base.Tpo -c -o common/libflatpak_common_base_la-flatpak-utils-base.lo `test -f 'common/flatpak-utils-base.c' || echo '$(srcdir)/'`common/flatpak-utils-base.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_base_la-flatpak-utils-base.Tpo common/$(DEPDIR)/libflatpak_common_base_la-flatpak-utils-base.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-utils-base.c' object='common/libflatpak_common_base_la-flatpak-utils-base.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_base_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_base_la-flatpak-utils-base.lo `test -f 'common/flatpak-utils-base.c' || echo '$(srcdir)/'`common/flatpak-utils-base.c - -common/libflatpak_common_base_la-flatpak-dbus-generated.lo: common/flatpak-dbus-generated.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_base_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_base_la-flatpak-dbus-generated.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_base_la-flatpak-dbus-generated.Tpo -c -o common/libflatpak_common_base_la-flatpak-dbus-generated.lo `test -f 'common/flatpak-dbus-generated.c' || echo '$(srcdir)/'`common/flatpak-dbus-generated.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_base_la-flatpak-dbus-generated.Tpo common/$(DEPDIR)/libflatpak_common_base_la-flatpak-dbus-generated.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-dbus-generated.c' object='common/libflatpak_common_base_la-flatpak-dbus-generated.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_base_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_base_la-flatpak-dbus-generated.lo `test -f 'common/flatpak-dbus-generated.c' || echo '$(srcdir)/'`common/flatpak-dbus-generated.c - -common/libflatpak_common_base_la-flatpak-document-dbus-generated.lo: common/flatpak-document-dbus-generated.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_base_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_base_la-flatpak-document-dbus-generated.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_base_la-flatpak-document-dbus-generated.Tpo -c -o common/libflatpak_common_base_la-flatpak-document-dbus-generated.lo `test -f 'common/flatpak-document-dbus-generated.c' || echo '$(srcdir)/'`common/flatpak-document-dbus-generated.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_base_la-flatpak-document-dbus-generated.Tpo common/$(DEPDIR)/libflatpak_common_base_la-flatpak-document-dbus-generated.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-document-dbus-generated.c' object='common/libflatpak_common_base_la-flatpak-document-dbus-generated.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_base_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_base_la-flatpak-document-dbus-generated.lo `test -f 'common/flatpak-document-dbus-generated.c' || echo '$(srcdir)/'`common/flatpak-document-dbus-generated.c - -common/libflatpak_common_la-flatpak-appdata.lo: common/flatpak-appdata.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-appdata.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-appdata.Tpo -c -o common/libflatpak_common_la-flatpak-appdata.lo `test -f 'common/flatpak-appdata.c' || echo '$(srcdir)/'`common/flatpak-appdata.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-appdata.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-appdata.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-appdata.c' object='common/libflatpak_common_la-flatpak-appdata.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-appdata.lo `test -f 'common/flatpak-appdata.c' || echo '$(srcdir)/'`common/flatpak-appdata.c - -common/libflatpak_common_la-flatpak-auth.lo: common/flatpak-auth.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-auth.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-auth.Tpo -c -o common/libflatpak_common_la-flatpak-auth.lo `test -f 'common/flatpak-auth.c' || echo '$(srcdir)/'`common/flatpak-auth.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-auth.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-auth.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-auth.c' object='common/libflatpak_common_la-flatpak-auth.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-auth.lo `test -f 'common/flatpak-auth.c' || echo '$(srcdir)/'`common/flatpak-auth.c - -common/libflatpak_common_la-flatpak-bundle-ref.lo: common/flatpak-bundle-ref.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-bundle-ref.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-bundle-ref.Tpo -c -o common/libflatpak_common_la-flatpak-bundle-ref.lo `test -f 'common/flatpak-bundle-ref.c' || echo '$(srcdir)/'`common/flatpak-bundle-ref.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-bundle-ref.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-bundle-ref.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-bundle-ref.c' object='common/libflatpak_common_la-flatpak-bundle-ref.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-bundle-ref.lo `test -f 'common/flatpak-bundle-ref.c' || echo '$(srcdir)/'`common/flatpak-bundle-ref.c - -common/libflatpak_common_la-flatpak-bwrap.lo: common/flatpak-bwrap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-bwrap.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-bwrap.Tpo -c -o common/libflatpak_common_la-flatpak-bwrap.lo `test -f 'common/flatpak-bwrap.c' || echo '$(srcdir)/'`common/flatpak-bwrap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-bwrap.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-bwrap.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-bwrap.c' object='common/libflatpak_common_la-flatpak-bwrap.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-bwrap.lo `test -f 'common/flatpak-bwrap.c' || echo '$(srcdir)/'`common/flatpak-bwrap.c - -common/libflatpak_common_la-flatpak-chain-input-stream.lo: common/flatpak-chain-input-stream.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-chain-input-stream.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-chain-input-stream.Tpo -c -o common/libflatpak_common_la-flatpak-chain-input-stream.lo `test -f 'common/flatpak-chain-input-stream.c' || echo '$(srcdir)/'`common/flatpak-chain-input-stream.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-chain-input-stream.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-chain-input-stream.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-chain-input-stream.c' object='common/libflatpak_common_la-flatpak-chain-input-stream.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-chain-input-stream.lo `test -f 'common/flatpak-chain-input-stream.c' || echo '$(srcdir)/'`common/flatpak-chain-input-stream.c - -common/libflatpak_common_la-flatpak-context.lo: common/flatpak-context.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-context.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-context.Tpo -c -o common/libflatpak_common_la-flatpak-context.lo `test -f 'common/flatpak-context.c' || echo '$(srcdir)/'`common/flatpak-context.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-context.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-context.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-context.c' object='common/libflatpak_common_la-flatpak-context.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-context.lo `test -f 'common/flatpak-context.c' || echo '$(srcdir)/'`common/flatpak-context.c - -common/libflatpak_common_la-flatpak-dir.lo: common/flatpak-dir.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-dir.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-dir.Tpo -c -o common/libflatpak_common_la-flatpak-dir.lo `test -f 'common/flatpak-dir.c' || echo '$(srcdir)/'`common/flatpak-dir.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-dir.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-dir.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-dir.c' object='common/libflatpak_common_la-flatpak-dir.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-dir.lo `test -f 'common/flatpak-dir.c' || echo '$(srcdir)/'`common/flatpak-dir.c - -common/libflatpak_common_la-flatpak-error.lo: common/flatpak-error.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-error.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-error.Tpo -c -o common/libflatpak_common_la-flatpak-error.lo `test -f 'common/flatpak-error.c' || echo '$(srcdir)/'`common/flatpak-error.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-error.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-error.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-error.c' object='common/libflatpak_common_la-flatpak-error.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-error.lo `test -f 'common/flatpak-error.c' || echo '$(srcdir)/'`common/flatpak-error.c - -common/libflatpak_common_la-flatpak-exports.lo: common/flatpak-exports.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-exports.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-exports.Tpo -c -o common/libflatpak_common_la-flatpak-exports.lo `test -f 'common/flatpak-exports.c' || echo '$(srcdir)/'`common/flatpak-exports.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-exports.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-exports.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-exports.c' object='common/libflatpak_common_la-flatpak-exports.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-exports.lo `test -f 'common/flatpak-exports.c' || echo '$(srcdir)/'`common/flatpak-exports.c - -common/libflatpak_common_la-flatpak-installation.lo: common/flatpak-installation.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-installation.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-installation.Tpo -c -o common/libflatpak_common_la-flatpak-installation.lo `test -f 'common/flatpak-installation.c' || echo '$(srcdir)/'`common/flatpak-installation.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-installation.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-installation.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-installation.c' object='common/libflatpak_common_la-flatpak-installation.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-installation.lo `test -f 'common/flatpak-installation.c' || echo '$(srcdir)/'`common/flatpak-installation.c - -common/libflatpak_common_la-flatpak-installed-ref.lo: common/flatpak-installed-ref.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-installed-ref.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-installed-ref.Tpo -c -o common/libflatpak_common_la-flatpak-installed-ref.lo `test -f 'common/flatpak-installed-ref.c' || echo '$(srcdir)/'`common/flatpak-installed-ref.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-installed-ref.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-installed-ref.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-installed-ref.c' object='common/libflatpak_common_la-flatpak-installed-ref.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-installed-ref.lo `test -f 'common/flatpak-installed-ref.c' || echo '$(srcdir)/'`common/flatpak-installed-ref.c - -common/libflatpak_common_la-flatpak-instance.lo: common/flatpak-instance.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-instance.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-instance.Tpo -c -o common/libflatpak_common_la-flatpak-instance.lo `test -f 'common/flatpak-instance.c' || echo '$(srcdir)/'`common/flatpak-instance.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-instance.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-instance.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-instance.c' object='common/libflatpak_common_la-flatpak-instance.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-instance.lo `test -f 'common/flatpak-instance.c' || echo '$(srcdir)/'`common/flatpak-instance.c - -common/libflatpak_common_la-flatpak-json-oci.lo: common/flatpak-json-oci.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-json-oci.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-json-oci.Tpo -c -o common/libflatpak_common_la-flatpak-json-oci.lo `test -f 'common/flatpak-json-oci.c' || echo '$(srcdir)/'`common/flatpak-json-oci.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-json-oci.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-json-oci.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-json-oci.c' object='common/libflatpak_common_la-flatpak-json-oci.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-json-oci.lo `test -f 'common/flatpak-json-oci.c' || echo '$(srcdir)/'`common/flatpak-json-oci.c - -common/libflatpak_common_la-flatpak-json.lo: common/flatpak-json.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-json.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-json.Tpo -c -o common/libflatpak_common_la-flatpak-json.lo `test -f 'common/flatpak-json.c' || echo '$(srcdir)/'`common/flatpak-json.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-json.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-json.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-json.c' object='common/libflatpak_common_la-flatpak-json.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-json.lo `test -f 'common/flatpak-json.c' || echo '$(srcdir)/'`common/flatpak-json.c - -common/libflatpak_common_la-flatpak-oci-registry.lo: common/flatpak-oci-registry.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-oci-registry.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-oci-registry.Tpo -c -o common/libflatpak_common_la-flatpak-oci-registry.lo `test -f 'common/flatpak-oci-registry.c' || echo '$(srcdir)/'`common/flatpak-oci-registry.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-oci-registry.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-oci-registry.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-oci-registry.c' object='common/libflatpak_common_la-flatpak-oci-registry.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-oci-registry.lo `test -f 'common/flatpak-oci-registry.c' || echo '$(srcdir)/'`common/flatpak-oci-registry.c - -common/libflatpak_common_la-flatpak-portal-error.lo: common/flatpak-portal-error.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-portal-error.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-portal-error.Tpo -c -o common/libflatpak_common_la-flatpak-portal-error.lo `test -f 'common/flatpak-portal-error.c' || echo '$(srcdir)/'`common/flatpak-portal-error.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-portal-error.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-portal-error.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-portal-error.c' object='common/libflatpak_common_la-flatpak-portal-error.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-portal-error.lo `test -f 'common/flatpak-portal-error.c' || echo '$(srcdir)/'`common/flatpak-portal-error.c - -common/libflatpak_common_la-flatpak-progress.lo: common/flatpak-progress.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-progress.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-progress.Tpo -c -o common/libflatpak_common_la-flatpak-progress.lo `test -f 'common/flatpak-progress.c' || echo '$(srcdir)/'`common/flatpak-progress.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-progress.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-progress.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-progress.c' object='common/libflatpak_common_la-flatpak-progress.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-progress.lo `test -f 'common/flatpak-progress.c' || echo '$(srcdir)/'`common/flatpak-progress.c - -common/libflatpak_common_la-flatpak-ref.lo: common/flatpak-ref.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-ref.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-ref.Tpo -c -o common/libflatpak_common_la-flatpak-ref.lo `test -f 'common/flatpak-ref.c' || echo '$(srcdir)/'`common/flatpak-ref.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-ref.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-ref.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-ref.c' object='common/libflatpak_common_la-flatpak-ref.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-ref.lo `test -f 'common/flatpak-ref.c' || echo '$(srcdir)/'`common/flatpak-ref.c - -common/libflatpak_common_la-flatpak-ref-utils.lo: common/flatpak-ref-utils.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-ref-utils.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-ref-utils.Tpo -c -o common/libflatpak_common_la-flatpak-ref-utils.lo `test -f 'common/flatpak-ref-utils.c' || echo '$(srcdir)/'`common/flatpak-ref-utils.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-ref-utils.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-ref-utils.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-ref-utils.c' object='common/libflatpak_common_la-flatpak-ref-utils.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-ref-utils.lo `test -f 'common/flatpak-ref-utils.c' || echo '$(srcdir)/'`common/flatpak-ref-utils.c - -common/libflatpak_common_la-flatpak-related-ref.lo: common/flatpak-related-ref.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-related-ref.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-related-ref.Tpo -c -o common/libflatpak_common_la-flatpak-related-ref.lo `test -f 'common/flatpak-related-ref.c' || echo '$(srcdir)/'`common/flatpak-related-ref.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-related-ref.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-related-ref.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-related-ref.c' object='common/libflatpak_common_la-flatpak-related-ref.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-related-ref.lo `test -f 'common/flatpak-related-ref.c' || echo '$(srcdir)/'`common/flatpak-related-ref.c - -common/libflatpak_common_la-flatpak-remote-ref.lo: common/flatpak-remote-ref.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-remote-ref.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-remote-ref.Tpo -c -o common/libflatpak_common_la-flatpak-remote-ref.lo `test -f 'common/flatpak-remote-ref.c' || echo '$(srcdir)/'`common/flatpak-remote-ref.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-remote-ref.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-remote-ref.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-remote-ref.c' object='common/libflatpak_common_la-flatpak-remote-ref.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-remote-ref.lo `test -f 'common/flatpak-remote-ref.c' || echo '$(srcdir)/'`common/flatpak-remote-ref.c - -common/libflatpak_common_la-flatpak-remote.lo: common/flatpak-remote.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-remote.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-remote.Tpo -c -o common/libflatpak_common_la-flatpak-remote.lo `test -f 'common/flatpak-remote.c' || echo '$(srcdir)/'`common/flatpak-remote.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-remote.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-remote.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-remote.c' object='common/libflatpak_common_la-flatpak-remote.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-remote.lo `test -f 'common/flatpak-remote.c' || echo '$(srcdir)/'`common/flatpak-remote.c - -common/libflatpak_common_la-flatpak-run.lo: common/flatpak-run.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-run.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-run.Tpo -c -o common/libflatpak_common_la-flatpak-run.lo `test -f 'common/flatpak-run.c' || echo '$(srcdir)/'`common/flatpak-run.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-run.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-run.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-run.c' object='common/libflatpak_common_la-flatpak-run.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-run.lo `test -f 'common/flatpak-run.c' || echo '$(srcdir)/'`common/flatpak-run.c - -common/libflatpak_common_la-flatpak-transaction.lo: common/flatpak-transaction.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-transaction.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-transaction.Tpo -c -o common/libflatpak_common_la-flatpak-transaction.lo `test -f 'common/flatpak-transaction.c' || echo '$(srcdir)/'`common/flatpak-transaction.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-transaction.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-transaction.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-transaction.c' object='common/libflatpak_common_la-flatpak-transaction.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-transaction.lo `test -f 'common/flatpak-transaction.c' || echo '$(srcdir)/'`common/flatpak-transaction.c - -common/libflatpak_common_la-flatpak-utils-http.lo: common/flatpak-utils-http.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-utils-http.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-utils-http.Tpo -c -o common/libflatpak_common_la-flatpak-utils-http.lo `test -f 'common/flatpak-utils-http.c' || echo '$(srcdir)/'`common/flatpak-utils-http.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-utils-http.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-utils-http.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-utils-http.c' object='common/libflatpak_common_la-flatpak-utils-http.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-utils-http.lo `test -f 'common/flatpak-utils-http.c' || echo '$(srcdir)/'`common/flatpak-utils-http.c - -common/libflatpak_common_la-flatpak-utils.lo: common/flatpak-utils.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-utils.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-utils.Tpo -c -o common/libflatpak_common_la-flatpak-utils.lo `test -f 'common/flatpak-utils.c' || echo '$(srcdir)/'`common/flatpak-utils.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-utils.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-utils.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-utils.c' object='common/libflatpak_common_la-flatpak-utils.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-utils.lo `test -f 'common/flatpak-utils.c' || echo '$(srcdir)/'`common/flatpak-utils.c - -common/libflatpak_common_la-flatpak-uri.lo: common/flatpak-uri.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-uri.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-uri.Tpo -c -o common/libflatpak_common_la-flatpak-uri.lo `test -f 'common/flatpak-uri.c' || echo '$(srcdir)/'`common/flatpak-uri.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-uri.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-uri.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-uri.c' object='common/libflatpak_common_la-flatpak-uri.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-uri.lo `test -f 'common/flatpak-uri.c' || echo '$(srcdir)/'`common/flatpak-uri.c - -common/libflatpak_common_la-flatpak-prune.lo: common/flatpak-prune.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-prune.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-prune.Tpo -c -o common/libflatpak_common_la-flatpak-prune.lo `test -f 'common/flatpak-prune.c' || echo '$(srcdir)/'`common/flatpak-prune.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-prune.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-prune.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-prune.c' object='common/libflatpak_common_la-flatpak-prune.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-prune.lo `test -f 'common/flatpak-prune.c' || echo '$(srcdir)/'`common/flatpak-prune.c - -common/libflatpak_common_la-flatpak-zstd-decompressor.lo: common/flatpak-zstd-decompressor.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-zstd-decompressor.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-zstd-decompressor.Tpo -c -o common/libflatpak_common_la-flatpak-zstd-decompressor.lo `test -f 'common/flatpak-zstd-decompressor.c' || echo '$(srcdir)/'`common/flatpak-zstd-decompressor.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-zstd-decompressor.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-zstd-decompressor.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-zstd-decompressor.c' object='common/libflatpak_common_la-flatpak-zstd-decompressor.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-zstd-decompressor.lo `test -f 'common/flatpak-zstd-decompressor.c' || echo '$(srcdir)/'`common/flatpak-zstd-decompressor.c - -common/libflatpak_common_la-flatpak-parental-controls.lo: common/flatpak-parental-controls.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-parental-controls.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-parental-controls.Tpo -c -o common/libflatpak_common_la-flatpak-parental-controls.lo `test -f 'common/flatpak-parental-controls.c' || echo '$(srcdir)/'`common/flatpak-parental-controls.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-parental-controls.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-parental-controls.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-parental-controls.c' object='common/libflatpak_common_la-flatpak-parental-controls.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-parental-controls.lo `test -f 'common/flatpak-parental-controls.c' || echo '$(srcdir)/'`common/flatpak-parental-controls.c - -common/libflatpak_common_la-flatpak-systemd-dbus-generated.lo: common/flatpak-systemd-dbus-generated.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-systemd-dbus-generated.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-systemd-dbus-generated.Tpo -c -o common/libflatpak_common_la-flatpak-systemd-dbus-generated.lo `test -f 'common/flatpak-systemd-dbus-generated.c' || echo '$(srcdir)/'`common/flatpak-systemd-dbus-generated.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-systemd-dbus-generated.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-systemd-dbus-generated.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-systemd-dbus-generated.c' object='common/libflatpak_common_la-flatpak-systemd-dbus-generated.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-systemd-dbus-generated.lo `test -f 'common/flatpak-systemd-dbus-generated.c' || echo '$(srcdir)/'`common/flatpak-systemd-dbus-generated.c - -common/libflatpak_common_la-flatpak-enum-types.lo: common/flatpak-enum-types.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_common_la-flatpak-enum-types.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_common_la-flatpak-enum-types.Tpo -c -o common/libflatpak_common_la-flatpak-enum-types.lo `test -f 'common/flatpak-enum-types.c' || echo '$(srcdir)/'`common/flatpak-enum-types.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_common_la-flatpak-enum-types.Tpo common/$(DEPDIR)/libflatpak_common_la-flatpak-enum-types.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-enum-types.c' object='common/libflatpak_common_la-flatpak-enum-types.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_common_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_common_la-flatpak-enum-types.lo `test -f 'common/flatpak-enum-types.c' || echo '$(srcdir)/'`common/flatpak-enum-types.c - -common/libflatpak_la-flatpak.lo: common/flatpak.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_la_CFLAGS) $(CFLAGS) -MT common/libflatpak_la-flatpak.lo -MD -MP -MF common/$(DEPDIR)/libflatpak_la-flatpak.Tpo -c -o common/libflatpak_la-flatpak.lo `test -f 'common/flatpak.c' || echo '$(srcdir)/'`common/flatpak.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/libflatpak_la-flatpak.Tpo common/$(DEPDIR)/libflatpak_la-flatpak.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak.c' object='common/libflatpak_la-flatpak.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libflatpak_la_CFLAGS) $(CFLAGS) -c -o common/libflatpak_la-flatpak.lo `test -f 'common/flatpak.c' || echo '$(srcdir)/'`common/flatpak.c - -subprojects/libglnx/libglnx_la-glnx-backports.lo: subprojects/libglnx/glnx-backports.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/libglnx_la-glnx-backports.lo -MD -MP -MF subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-backports.Tpo -c -o subprojects/libglnx/libglnx_la-glnx-backports.lo `test -f 'subprojects/libglnx/glnx-backports.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-backports.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-backports.Tpo subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-backports.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/glnx-backports.c' object='subprojects/libglnx/libglnx_la-glnx-backports.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/libglnx_la-glnx-backports.lo `test -f 'subprojects/libglnx/glnx-backports.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-backports.c - -subprojects/libglnx/libglnx_la-glnx-local-alloc.lo: subprojects/libglnx/glnx-local-alloc.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/libglnx_la-glnx-local-alloc.lo -MD -MP -MF subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-local-alloc.Tpo -c -o subprojects/libglnx/libglnx_la-glnx-local-alloc.lo `test -f 'subprojects/libglnx/glnx-local-alloc.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-local-alloc.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-local-alloc.Tpo subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-local-alloc.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/glnx-local-alloc.c' object='subprojects/libglnx/libglnx_la-glnx-local-alloc.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/libglnx_la-glnx-local-alloc.lo `test -f 'subprojects/libglnx/glnx-local-alloc.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-local-alloc.c - -subprojects/libglnx/libglnx_la-glnx-errors.lo: subprojects/libglnx/glnx-errors.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/libglnx_la-glnx-errors.lo -MD -MP -MF subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-errors.Tpo -c -o subprojects/libglnx/libglnx_la-glnx-errors.lo `test -f 'subprojects/libglnx/glnx-errors.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-errors.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-errors.Tpo subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-errors.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/glnx-errors.c' object='subprojects/libglnx/libglnx_la-glnx-errors.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/libglnx_la-glnx-errors.lo `test -f 'subprojects/libglnx/glnx-errors.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-errors.c - -subprojects/libglnx/libglnx_la-glnx-console.lo: subprojects/libglnx/glnx-console.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/libglnx_la-glnx-console.lo -MD -MP -MF subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-console.Tpo -c -o subprojects/libglnx/libglnx_la-glnx-console.lo `test -f 'subprojects/libglnx/glnx-console.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-console.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-console.Tpo subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-console.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/glnx-console.c' object='subprojects/libglnx/libglnx_la-glnx-console.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/libglnx_la-glnx-console.lo `test -f 'subprojects/libglnx/glnx-console.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-console.c - -subprojects/libglnx/libglnx_la-glnx-dirfd.lo: subprojects/libglnx/glnx-dirfd.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/libglnx_la-glnx-dirfd.lo -MD -MP -MF subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-dirfd.Tpo -c -o subprojects/libglnx/libglnx_la-glnx-dirfd.lo `test -f 'subprojects/libglnx/glnx-dirfd.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-dirfd.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-dirfd.Tpo subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-dirfd.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/glnx-dirfd.c' object='subprojects/libglnx/libglnx_la-glnx-dirfd.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/libglnx_la-glnx-dirfd.lo `test -f 'subprojects/libglnx/glnx-dirfd.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-dirfd.c - -subprojects/libglnx/libglnx_la-glnx-fdio.lo: subprojects/libglnx/glnx-fdio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/libglnx_la-glnx-fdio.lo -MD -MP -MF subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-fdio.Tpo -c -o subprojects/libglnx/libglnx_la-glnx-fdio.lo `test -f 'subprojects/libglnx/glnx-fdio.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-fdio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-fdio.Tpo subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-fdio.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/glnx-fdio.c' object='subprojects/libglnx/libglnx_la-glnx-fdio.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/libglnx_la-glnx-fdio.lo `test -f 'subprojects/libglnx/glnx-fdio.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-fdio.c - -subprojects/libglnx/libglnx_la-glnx-lockfile.lo: subprojects/libglnx/glnx-lockfile.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/libglnx_la-glnx-lockfile.lo -MD -MP -MF subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-lockfile.Tpo -c -o subprojects/libglnx/libglnx_la-glnx-lockfile.lo `test -f 'subprojects/libglnx/glnx-lockfile.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-lockfile.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-lockfile.Tpo subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-lockfile.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/glnx-lockfile.c' object='subprojects/libglnx/libglnx_la-glnx-lockfile.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/libglnx_la-glnx-lockfile.lo `test -f 'subprojects/libglnx/glnx-lockfile.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-lockfile.c - -subprojects/libglnx/libglnx_la-glnx-xattrs.lo: subprojects/libglnx/glnx-xattrs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/libglnx_la-glnx-xattrs.lo -MD -MP -MF subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-xattrs.Tpo -c -o subprojects/libglnx/libglnx_la-glnx-xattrs.lo `test -f 'subprojects/libglnx/glnx-xattrs.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-xattrs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-xattrs.Tpo subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-xattrs.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/glnx-xattrs.c' object='subprojects/libglnx/libglnx_la-glnx-xattrs.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/libglnx_la-glnx-xattrs.lo `test -f 'subprojects/libglnx/glnx-xattrs.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-xattrs.c - -subprojects/libglnx/libglnx_la-glnx-shutil.lo: subprojects/libglnx/glnx-shutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/libglnx_la-glnx-shutil.lo -MD -MP -MF subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-shutil.Tpo -c -o subprojects/libglnx/libglnx_la-glnx-shutil.lo `test -f 'subprojects/libglnx/glnx-shutil.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-shutil.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-shutil.Tpo subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-shutil.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/glnx-shutil.c' object='subprojects/libglnx/libglnx_la-glnx-shutil.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libglnx_la_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/libglnx_la-glnx-shutil.lo `test -f 'subprojects/libglnx/glnx-shutil.c' || echo '$(srcdir)/'`subprojects/libglnx/glnx-shutil.c - -tests/libtestlib_la-testlib.lo: tests/testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtestlib_la_CFLAGS) $(CFLAGS) -MT tests/libtestlib_la-testlib.lo -MD -MP -MF tests/$(DEPDIR)/libtestlib_la-testlib.Tpo -c -o tests/libtestlib_la-testlib.lo `test -f 'tests/testlib.c' || echo '$(srcdir)/'`tests/testlib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/libtestlib_la-testlib.Tpo tests/$(DEPDIR)/libtestlib_la-testlib.Plo -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/testlib.c' object='tests/libtestlib_la-testlib.lo' libtool=yes @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtestlib_la_CFLAGS) $(CFLAGS) -c -o tests/libtestlib_la-testlib.lo `test -f 'tests/testlib.c' || echo '$(srcdir)/'`tests/testlib.c - -app/flatpak-flatpak-main.o: app/flatpak-main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-main.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-main.Tpo -c -o app/flatpak-flatpak-main.o `test -f 'app/flatpak-main.c' || echo '$(srcdir)/'`app/flatpak-main.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-main.Tpo app/$(DEPDIR)/flatpak-flatpak-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-main.c' object='app/flatpak-flatpak-main.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-main.o `test -f 'app/flatpak-main.c' || echo '$(srcdir)/'`app/flatpak-main.c - -app/flatpak-flatpak-main.obj: app/flatpak-main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-main.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-main.Tpo -c -o app/flatpak-flatpak-main.obj `if test -f 'app/flatpak-main.c'; then $(CYGPATH_W) 'app/flatpak-main.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-main.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-main.Tpo app/$(DEPDIR)/flatpak-flatpak-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-main.c' object='app/flatpak-flatpak-main.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-main.obj `if test -f 'app/flatpak-main.c'; then $(CYGPATH_W) 'app/flatpak-main.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-main.c'; fi` - -app/flatpak-flatpak-builtins-remote-add.o: app/flatpak-builtins-remote-add.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-remote-add.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-remote-add.Tpo -c -o app/flatpak-flatpak-builtins-remote-add.o `test -f 'app/flatpak-builtins-remote-add.c' || echo '$(srcdir)/'`app/flatpak-builtins-remote-add.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-remote-add.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-remote-add.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-remote-add.c' object='app/flatpak-flatpak-builtins-remote-add.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-remote-add.o `test -f 'app/flatpak-builtins-remote-add.c' || echo '$(srcdir)/'`app/flatpak-builtins-remote-add.c - -app/flatpak-flatpak-builtins-remote-add.obj: app/flatpak-builtins-remote-add.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-remote-add.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-remote-add.Tpo -c -o app/flatpak-flatpak-builtins-remote-add.obj `if test -f 'app/flatpak-builtins-remote-add.c'; then $(CYGPATH_W) 'app/flatpak-builtins-remote-add.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-remote-add.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-remote-add.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-remote-add.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-remote-add.c' object='app/flatpak-flatpak-builtins-remote-add.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-remote-add.obj `if test -f 'app/flatpak-builtins-remote-add.c'; then $(CYGPATH_W) 'app/flatpak-builtins-remote-add.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-remote-add.c'; fi` - -app/flatpak-flatpak-builtins-remote-modify.o: app/flatpak-builtins-remote-modify.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-remote-modify.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-remote-modify.Tpo -c -o app/flatpak-flatpak-builtins-remote-modify.o `test -f 'app/flatpak-builtins-remote-modify.c' || echo '$(srcdir)/'`app/flatpak-builtins-remote-modify.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-remote-modify.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-remote-modify.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-remote-modify.c' object='app/flatpak-flatpak-builtins-remote-modify.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-remote-modify.o `test -f 'app/flatpak-builtins-remote-modify.c' || echo '$(srcdir)/'`app/flatpak-builtins-remote-modify.c - -app/flatpak-flatpak-builtins-remote-modify.obj: app/flatpak-builtins-remote-modify.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-remote-modify.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-remote-modify.Tpo -c -o app/flatpak-flatpak-builtins-remote-modify.obj `if test -f 'app/flatpak-builtins-remote-modify.c'; then $(CYGPATH_W) 'app/flatpak-builtins-remote-modify.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-remote-modify.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-remote-modify.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-remote-modify.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-remote-modify.c' object='app/flatpak-flatpak-builtins-remote-modify.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-remote-modify.obj `if test -f 'app/flatpak-builtins-remote-modify.c'; then $(CYGPATH_W) 'app/flatpak-builtins-remote-modify.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-remote-modify.c'; fi` - -app/flatpak-flatpak-builtins-remote-delete.o: app/flatpak-builtins-remote-delete.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-remote-delete.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-remote-delete.Tpo -c -o app/flatpak-flatpak-builtins-remote-delete.o `test -f 'app/flatpak-builtins-remote-delete.c' || echo '$(srcdir)/'`app/flatpak-builtins-remote-delete.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-remote-delete.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-remote-delete.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-remote-delete.c' object='app/flatpak-flatpak-builtins-remote-delete.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-remote-delete.o `test -f 'app/flatpak-builtins-remote-delete.c' || echo '$(srcdir)/'`app/flatpak-builtins-remote-delete.c - -app/flatpak-flatpak-builtins-remote-delete.obj: app/flatpak-builtins-remote-delete.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-remote-delete.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-remote-delete.Tpo -c -o app/flatpak-flatpak-builtins-remote-delete.obj `if test -f 'app/flatpak-builtins-remote-delete.c'; then $(CYGPATH_W) 'app/flatpak-builtins-remote-delete.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-remote-delete.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-remote-delete.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-remote-delete.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-remote-delete.c' object='app/flatpak-flatpak-builtins-remote-delete.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-remote-delete.obj `if test -f 'app/flatpak-builtins-remote-delete.c'; then $(CYGPATH_W) 'app/flatpak-builtins-remote-delete.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-remote-delete.c'; fi` - -app/flatpak-flatpak-builtins-remote-list.o: app/flatpak-builtins-remote-list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-remote-list.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-remote-list.Tpo -c -o app/flatpak-flatpak-builtins-remote-list.o `test -f 'app/flatpak-builtins-remote-list.c' || echo '$(srcdir)/'`app/flatpak-builtins-remote-list.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-remote-list.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-remote-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-remote-list.c' object='app/flatpak-flatpak-builtins-remote-list.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-remote-list.o `test -f 'app/flatpak-builtins-remote-list.c' || echo '$(srcdir)/'`app/flatpak-builtins-remote-list.c - -app/flatpak-flatpak-builtins-remote-list.obj: app/flatpak-builtins-remote-list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-remote-list.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-remote-list.Tpo -c -o app/flatpak-flatpak-builtins-remote-list.obj `if test -f 'app/flatpak-builtins-remote-list.c'; then $(CYGPATH_W) 'app/flatpak-builtins-remote-list.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-remote-list.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-remote-list.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-remote-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-remote-list.c' object='app/flatpak-flatpak-builtins-remote-list.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-remote-list.obj `if test -f 'app/flatpak-builtins-remote-list.c'; then $(CYGPATH_W) 'app/flatpak-builtins-remote-list.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-remote-list.c'; fi` - -app/flatpak-flatpak-builtins-remote-ls.o: app/flatpak-builtins-remote-ls.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-remote-ls.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-remote-ls.Tpo -c -o app/flatpak-flatpak-builtins-remote-ls.o `test -f 'app/flatpak-builtins-remote-ls.c' || echo '$(srcdir)/'`app/flatpak-builtins-remote-ls.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-remote-ls.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-remote-ls.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-remote-ls.c' object='app/flatpak-flatpak-builtins-remote-ls.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-remote-ls.o `test -f 'app/flatpak-builtins-remote-ls.c' || echo '$(srcdir)/'`app/flatpak-builtins-remote-ls.c - -app/flatpak-flatpak-builtins-remote-ls.obj: app/flatpak-builtins-remote-ls.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-remote-ls.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-remote-ls.Tpo -c -o app/flatpak-flatpak-builtins-remote-ls.obj `if test -f 'app/flatpak-builtins-remote-ls.c'; then $(CYGPATH_W) 'app/flatpak-builtins-remote-ls.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-remote-ls.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-remote-ls.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-remote-ls.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-remote-ls.c' object='app/flatpak-flatpak-builtins-remote-ls.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-remote-ls.obj `if test -f 'app/flatpak-builtins-remote-ls.c'; then $(CYGPATH_W) 'app/flatpak-builtins-remote-ls.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-remote-ls.c'; fi` - -app/flatpak-flatpak-builtins-remote-info.o: app/flatpak-builtins-remote-info.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-remote-info.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-remote-info.Tpo -c -o app/flatpak-flatpak-builtins-remote-info.o `test -f 'app/flatpak-builtins-remote-info.c' || echo '$(srcdir)/'`app/flatpak-builtins-remote-info.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-remote-info.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-remote-info.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-remote-info.c' object='app/flatpak-flatpak-builtins-remote-info.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-remote-info.o `test -f 'app/flatpak-builtins-remote-info.c' || echo '$(srcdir)/'`app/flatpak-builtins-remote-info.c - -app/flatpak-flatpak-builtins-remote-info.obj: app/flatpak-builtins-remote-info.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-remote-info.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-remote-info.Tpo -c -o app/flatpak-flatpak-builtins-remote-info.obj `if test -f 'app/flatpak-builtins-remote-info.c'; then $(CYGPATH_W) 'app/flatpak-builtins-remote-info.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-remote-info.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-remote-info.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-remote-info.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-remote-info.c' object='app/flatpak-flatpak-builtins-remote-info.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-remote-info.obj `if test -f 'app/flatpak-builtins-remote-info.c'; then $(CYGPATH_W) 'app/flatpak-builtins-remote-info.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-remote-info.c'; fi` - -app/flatpak-flatpak-builtins-install.o: app/flatpak-builtins-install.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-install.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-install.Tpo -c -o app/flatpak-flatpak-builtins-install.o `test -f 'app/flatpak-builtins-install.c' || echo '$(srcdir)/'`app/flatpak-builtins-install.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-install.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-install.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-install.c' object='app/flatpak-flatpak-builtins-install.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-install.o `test -f 'app/flatpak-builtins-install.c' || echo '$(srcdir)/'`app/flatpak-builtins-install.c - -app/flatpak-flatpak-builtins-install.obj: app/flatpak-builtins-install.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-install.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-install.Tpo -c -o app/flatpak-flatpak-builtins-install.obj `if test -f 'app/flatpak-builtins-install.c'; then $(CYGPATH_W) 'app/flatpak-builtins-install.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-install.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-install.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-install.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-install.c' object='app/flatpak-flatpak-builtins-install.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-install.obj `if test -f 'app/flatpak-builtins-install.c'; then $(CYGPATH_W) 'app/flatpak-builtins-install.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-install.c'; fi` - -app/flatpak-flatpak-builtins-override.o: app/flatpak-builtins-override.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-override.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-override.Tpo -c -o app/flatpak-flatpak-builtins-override.o `test -f 'app/flatpak-builtins-override.c' || echo '$(srcdir)/'`app/flatpak-builtins-override.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-override.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-override.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-override.c' object='app/flatpak-flatpak-builtins-override.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-override.o `test -f 'app/flatpak-builtins-override.c' || echo '$(srcdir)/'`app/flatpak-builtins-override.c - -app/flatpak-flatpak-builtins-override.obj: app/flatpak-builtins-override.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-override.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-override.Tpo -c -o app/flatpak-flatpak-builtins-override.obj `if test -f 'app/flatpak-builtins-override.c'; then $(CYGPATH_W) 'app/flatpak-builtins-override.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-override.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-override.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-override.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-override.c' object='app/flatpak-flatpak-builtins-override.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-override.obj `if test -f 'app/flatpak-builtins-override.c'; then $(CYGPATH_W) 'app/flatpak-builtins-override.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-override.c'; fi` - -app/flatpak-flatpak-builtins-make-current.o: app/flatpak-builtins-make-current.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-make-current.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-make-current.Tpo -c -o app/flatpak-flatpak-builtins-make-current.o `test -f 'app/flatpak-builtins-make-current.c' || echo '$(srcdir)/'`app/flatpak-builtins-make-current.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-make-current.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-make-current.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-make-current.c' object='app/flatpak-flatpak-builtins-make-current.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-make-current.o `test -f 'app/flatpak-builtins-make-current.c' || echo '$(srcdir)/'`app/flatpak-builtins-make-current.c - -app/flatpak-flatpak-builtins-make-current.obj: app/flatpak-builtins-make-current.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-make-current.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-make-current.Tpo -c -o app/flatpak-flatpak-builtins-make-current.obj `if test -f 'app/flatpak-builtins-make-current.c'; then $(CYGPATH_W) 'app/flatpak-builtins-make-current.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-make-current.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-make-current.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-make-current.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-make-current.c' object='app/flatpak-flatpak-builtins-make-current.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-make-current.obj `if test -f 'app/flatpak-builtins-make-current.c'; then $(CYGPATH_W) 'app/flatpak-builtins-make-current.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-make-current.c'; fi` - -app/flatpak-flatpak-builtins-update.o: app/flatpak-builtins-update.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-update.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-update.Tpo -c -o app/flatpak-flatpak-builtins-update.o `test -f 'app/flatpak-builtins-update.c' || echo '$(srcdir)/'`app/flatpak-builtins-update.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-update.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-update.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-update.c' object='app/flatpak-flatpak-builtins-update.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-update.o `test -f 'app/flatpak-builtins-update.c' || echo '$(srcdir)/'`app/flatpak-builtins-update.c - -app/flatpak-flatpak-builtins-update.obj: app/flatpak-builtins-update.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-update.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-update.Tpo -c -o app/flatpak-flatpak-builtins-update.obj `if test -f 'app/flatpak-builtins-update.c'; then $(CYGPATH_W) 'app/flatpak-builtins-update.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-update.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-update.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-update.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-update.c' object='app/flatpak-flatpak-builtins-update.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-update.obj `if test -f 'app/flatpak-builtins-update.c'; then $(CYGPATH_W) 'app/flatpak-builtins-update.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-update.c'; fi` - -app/flatpak-flatpak-builtins-uninstall.o: app/flatpak-builtins-uninstall.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-uninstall.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-uninstall.Tpo -c -o app/flatpak-flatpak-builtins-uninstall.o `test -f 'app/flatpak-builtins-uninstall.c' || echo '$(srcdir)/'`app/flatpak-builtins-uninstall.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-uninstall.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-uninstall.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-uninstall.c' object='app/flatpak-flatpak-builtins-uninstall.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-uninstall.o `test -f 'app/flatpak-builtins-uninstall.c' || echo '$(srcdir)/'`app/flatpak-builtins-uninstall.c - -app/flatpak-flatpak-builtins-uninstall.obj: app/flatpak-builtins-uninstall.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-uninstall.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-uninstall.Tpo -c -o app/flatpak-flatpak-builtins-uninstall.obj `if test -f 'app/flatpak-builtins-uninstall.c'; then $(CYGPATH_W) 'app/flatpak-builtins-uninstall.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-uninstall.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-uninstall.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-uninstall.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-uninstall.c' object='app/flatpak-flatpak-builtins-uninstall.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-uninstall.obj `if test -f 'app/flatpak-builtins-uninstall.c'; then $(CYGPATH_W) 'app/flatpak-builtins-uninstall.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-uninstall.c'; fi` - -app/flatpak-flatpak-builtins-mask.o: app/flatpak-builtins-mask.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-mask.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-mask.Tpo -c -o app/flatpak-flatpak-builtins-mask.o `test -f 'app/flatpak-builtins-mask.c' || echo '$(srcdir)/'`app/flatpak-builtins-mask.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-mask.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-mask.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-mask.c' object='app/flatpak-flatpak-builtins-mask.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-mask.o `test -f 'app/flatpak-builtins-mask.c' || echo '$(srcdir)/'`app/flatpak-builtins-mask.c - -app/flatpak-flatpak-builtins-mask.obj: app/flatpak-builtins-mask.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-mask.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-mask.Tpo -c -o app/flatpak-flatpak-builtins-mask.obj `if test -f 'app/flatpak-builtins-mask.c'; then $(CYGPATH_W) 'app/flatpak-builtins-mask.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-mask.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-mask.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-mask.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-mask.c' object='app/flatpak-flatpak-builtins-mask.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-mask.obj `if test -f 'app/flatpak-builtins-mask.c'; then $(CYGPATH_W) 'app/flatpak-builtins-mask.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-mask.c'; fi` - -app/flatpak-flatpak-builtins-pin.o: app/flatpak-builtins-pin.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-pin.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-pin.Tpo -c -o app/flatpak-flatpak-builtins-pin.o `test -f 'app/flatpak-builtins-pin.c' || echo '$(srcdir)/'`app/flatpak-builtins-pin.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-pin.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-pin.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-pin.c' object='app/flatpak-flatpak-builtins-pin.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-pin.o `test -f 'app/flatpak-builtins-pin.c' || echo '$(srcdir)/'`app/flatpak-builtins-pin.c - -app/flatpak-flatpak-builtins-pin.obj: app/flatpak-builtins-pin.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-pin.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-pin.Tpo -c -o app/flatpak-flatpak-builtins-pin.obj `if test -f 'app/flatpak-builtins-pin.c'; then $(CYGPATH_W) 'app/flatpak-builtins-pin.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-pin.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-pin.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-pin.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-pin.c' object='app/flatpak-flatpak-builtins-pin.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-pin.obj `if test -f 'app/flatpak-builtins-pin.c'; then $(CYGPATH_W) 'app/flatpak-builtins-pin.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-pin.c'; fi` - -app/flatpak-flatpak-builtins-list.o: app/flatpak-builtins-list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-list.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-list.Tpo -c -o app/flatpak-flatpak-builtins-list.o `test -f 'app/flatpak-builtins-list.c' || echo '$(srcdir)/'`app/flatpak-builtins-list.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-list.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-list.c' object='app/flatpak-flatpak-builtins-list.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-list.o `test -f 'app/flatpak-builtins-list.c' || echo '$(srcdir)/'`app/flatpak-builtins-list.c - -app/flatpak-flatpak-builtins-list.obj: app/flatpak-builtins-list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-list.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-list.Tpo -c -o app/flatpak-flatpak-builtins-list.obj `if test -f 'app/flatpak-builtins-list.c'; then $(CYGPATH_W) 'app/flatpak-builtins-list.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-list.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-list.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-list.c' object='app/flatpak-flatpak-builtins-list.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-list.obj `if test -f 'app/flatpak-builtins-list.c'; then $(CYGPATH_W) 'app/flatpak-builtins-list.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-list.c'; fi` - -app/flatpak-flatpak-builtins-info.o: app/flatpak-builtins-info.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-info.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-info.Tpo -c -o app/flatpak-flatpak-builtins-info.o `test -f 'app/flatpak-builtins-info.c' || echo '$(srcdir)/'`app/flatpak-builtins-info.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-info.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-info.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-info.c' object='app/flatpak-flatpak-builtins-info.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-info.o `test -f 'app/flatpak-builtins-info.c' || echo '$(srcdir)/'`app/flatpak-builtins-info.c - -app/flatpak-flatpak-builtins-info.obj: app/flatpak-builtins-info.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-info.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-info.Tpo -c -o app/flatpak-flatpak-builtins-info.obj `if test -f 'app/flatpak-builtins-info.c'; then $(CYGPATH_W) 'app/flatpak-builtins-info.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-info.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-info.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-info.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-info.c' object='app/flatpak-flatpak-builtins-info.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-info.obj `if test -f 'app/flatpak-builtins-info.c'; then $(CYGPATH_W) 'app/flatpak-builtins-info.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-info.c'; fi` - -app/flatpak-flatpak-builtins-config.o: app/flatpak-builtins-config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-config.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-config.Tpo -c -o app/flatpak-flatpak-builtins-config.o `test -f 'app/flatpak-builtins-config.c' || echo '$(srcdir)/'`app/flatpak-builtins-config.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-config.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-config.c' object='app/flatpak-flatpak-builtins-config.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-config.o `test -f 'app/flatpak-builtins-config.c' || echo '$(srcdir)/'`app/flatpak-builtins-config.c - -app/flatpak-flatpak-builtins-config.obj: app/flatpak-builtins-config.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-config.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-config.Tpo -c -o app/flatpak-flatpak-builtins-config.obj `if test -f 'app/flatpak-builtins-config.c'; then $(CYGPATH_W) 'app/flatpak-builtins-config.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-config.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-config.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-config.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-config.c' object='app/flatpak-flatpak-builtins-config.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-config.obj `if test -f 'app/flatpak-builtins-config.c'; then $(CYGPATH_W) 'app/flatpak-builtins-config.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-config.c'; fi` - -app/flatpak-flatpak-builtins-run.o: app/flatpak-builtins-run.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-run.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-run.Tpo -c -o app/flatpak-flatpak-builtins-run.o `test -f 'app/flatpak-builtins-run.c' || echo '$(srcdir)/'`app/flatpak-builtins-run.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-run.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-run.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-run.c' object='app/flatpak-flatpak-builtins-run.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-run.o `test -f 'app/flatpak-builtins-run.c' || echo '$(srcdir)/'`app/flatpak-builtins-run.c - -app/flatpak-flatpak-builtins-run.obj: app/flatpak-builtins-run.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-run.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-run.Tpo -c -o app/flatpak-flatpak-builtins-run.obj `if test -f 'app/flatpak-builtins-run.c'; then $(CYGPATH_W) 'app/flatpak-builtins-run.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-run.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-run.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-run.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-run.c' object='app/flatpak-flatpak-builtins-run.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-run.obj `if test -f 'app/flatpak-builtins-run.c'; then $(CYGPATH_W) 'app/flatpak-builtins-run.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-run.c'; fi` - -app/flatpak-flatpak-builtins-enter.o: app/flatpak-builtins-enter.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-enter.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-enter.Tpo -c -o app/flatpak-flatpak-builtins-enter.o `test -f 'app/flatpak-builtins-enter.c' || echo '$(srcdir)/'`app/flatpak-builtins-enter.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-enter.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-enter.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-enter.c' object='app/flatpak-flatpak-builtins-enter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-enter.o `test -f 'app/flatpak-builtins-enter.c' || echo '$(srcdir)/'`app/flatpak-builtins-enter.c - -app/flatpak-flatpak-builtins-enter.obj: app/flatpak-builtins-enter.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-enter.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-enter.Tpo -c -o app/flatpak-flatpak-builtins-enter.obj `if test -f 'app/flatpak-builtins-enter.c'; then $(CYGPATH_W) 'app/flatpak-builtins-enter.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-enter.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-enter.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-enter.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-enter.c' object='app/flatpak-flatpak-builtins-enter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-enter.obj `if test -f 'app/flatpak-builtins-enter.c'; then $(CYGPATH_W) 'app/flatpak-builtins-enter.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-enter.c'; fi` - -app/flatpak-flatpak-builtins-ps.o: app/flatpak-builtins-ps.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-ps.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-ps.Tpo -c -o app/flatpak-flatpak-builtins-ps.o `test -f 'app/flatpak-builtins-ps.c' || echo '$(srcdir)/'`app/flatpak-builtins-ps.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-ps.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-ps.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-ps.c' object='app/flatpak-flatpak-builtins-ps.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-ps.o `test -f 'app/flatpak-builtins-ps.c' || echo '$(srcdir)/'`app/flatpak-builtins-ps.c - -app/flatpak-flatpak-builtins-ps.obj: app/flatpak-builtins-ps.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-ps.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-ps.Tpo -c -o app/flatpak-flatpak-builtins-ps.obj `if test -f 'app/flatpak-builtins-ps.c'; then $(CYGPATH_W) 'app/flatpak-builtins-ps.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-ps.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-ps.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-ps.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-ps.c' object='app/flatpak-flatpak-builtins-ps.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-ps.obj `if test -f 'app/flatpak-builtins-ps.c'; then $(CYGPATH_W) 'app/flatpak-builtins-ps.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-ps.c'; fi` - -app/flatpak-flatpak-builtins-build-init.o: app/flatpak-builtins-build-init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-init.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-init.Tpo -c -o app/flatpak-flatpak-builtins-build-init.o `test -f 'app/flatpak-builtins-build-init.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-init.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-init.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-init.c' object='app/flatpak-flatpak-builtins-build-init.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-init.o `test -f 'app/flatpak-builtins-build-init.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-init.c - -app/flatpak-flatpak-builtins-build-init.obj: app/flatpak-builtins-build-init.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-init.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-init.Tpo -c -o app/flatpak-flatpak-builtins-build-init.obj `if test -f 'app/flatpak-builtins-build-init.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-init.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-init.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-init.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-init.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-init.c' object='app/flatpak-flatpak-builtins-build-init.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-init.obj `if test -f 'app/flatpak-builtins-build-init.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-init.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-init.c'; fi` - -app/flatpak-flatpak-builtins-build.o: app/flatpak-builtins-build.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build.Tpo -c -o app/flatpak-flatpak-builtins-build.o `test -f 'app/flatpak-builtins-build.c' || echo '$(srcdir)/'`app/flatpak-builtins-build.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build.c' object='app/flatpak-flatpak-builtins-build.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build.o `test -f 'app/flatpak-builtins-build.c' || echo '$(srcdir)/'`app/flatpak-builtins-build.c - -app/flatpak-flatpak-builtins-build.obj: app/flatpak-builtins-build.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build.Tpo -c -o app/flatpak-flatpak-builtins-build.obj `if test -f 'app/flatpak-builtins-build.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build.c' object='app/flatpak-flatpak-builtins-build.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build.obj `if test -f 'app/flatpak-builtins-build.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build.c'; fi` - -app/flatpak-flatpak-builtins-build-finish.o: app/flatpak-builtins-build-finish.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-finish.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-finish.Tpo -c -o app/flatpak-flatpak-builtins-build-finish.o `test -f 'app/flatpak-builtins-build-finish.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-finish.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-finish.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-finish.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-finish.c' object='app/flatpak-flatpak-builtins-build-finish.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-finish.o `test -f 'app/flatpak-builtins-build-finish.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-finish.c - -app/flatpak-flatpak-builtins-build-finish.obj: app/flatpak-builtins-build-finish.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-finish.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-finish.Tpo -c -o app/flatpak-flatpak-builtins-build-finish.obj `if test -f 'app/flatpak-builtins-build-finish.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-finish.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-finish.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-finish.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-finish.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-finish.c' object='app/flatpak-flatpak-builtins-build-finish.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-finish.obj `if test -f 'app/flatpak-builtins-build-finish.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-finish.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-finish.c'; fi` - -app/flatpak-flatpak-builtins-build-export.o: app/flatpak-builtins-build-export.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-export.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-export.Tpo -c -o app/flatpak-flatpak-builtins-build-export.o `test -f 'app/flatpak-builtins-build-export.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-export.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-export.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-export.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-export.c' object='app/flatpak-flatpak-builtins-build-export.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-export.o `test -f 'app/flatpak-builtins-build-export.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-export.c - -app/flatpak-flatpak-builtins-build-export.obj: app/flatpak-builtins-build-export.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-export.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-export.Tpo -c -o app/flatpak-flatpak-builtins-build-export.obj `if test -f 'app/flatpak-builtins-build-export.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-export.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-export.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-export.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-export.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-export.c' object='app/flatpak-flatpak-builtins-build-export.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-export.obj `if test -f 'app/flatpak-builtins-build-export.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-export.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-export.c'; fi` - -app/flatpak-flatpak-builtins-build-bundle.o: app/flatpak-builtins-build-bundle.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-bundle.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-bundle.Tpo -c -o app/flatpak-flatpak-builtins-build-bundle.o `test -f 'app/flatpak-builtins-build-bundle.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-bundle.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-bundle.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-bundle.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-bundle.c' object='app/flatpak-flatpak-builtins-build-bundle.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-bundle.o `test -f 'app/flatpak-builtins-build-bundle.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-bundle.c - -app/flatpak-flatpak-builtins-build-bundle.obj: app/flatpak-builtins-build-bundle.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-bundle.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-bundle.Tpo -c -o app/flatpak-flatpak-builtins-build-bundle.obj `if test -f 'app/flatpak-builtins-build-bundle.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-bundle.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-bundle.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-bundle.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-bundle.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-bundle.c' object='app/flatpak-flatpak-builtins-build-bundle.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-bundle.obj `if test -f 'app/flatpak-builtins-build-bundle.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-bundle.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-bundle.c'; fi` - -app/flatpak-flatpak-builtins-build-import-bundle.o: app/flatpak-builtins-build-import-bundle.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-import-bundle.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-import-bundle.Tpo -c -o app/flatpak-flatpak-builtins-build-import-bundle.o `test -f 'app/flatpak-builtins-build-import-bundle.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-import-bundle.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-import-bundle.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-import-bundle.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-import-bundle.c' object='app/flatpak-flatpak-builtins-build-import-bundle.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-import-bundle.o `test -f 'app/flatpak-builtins-build-import-bundle.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-import-bundle.c - -app/flatpak-flatpak-builtins-build-import-bundle.obj: app/flatpak-builtins-build-import-bundle.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-import-bundle.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-import-bundle.Tpo -c -o app/flatpak-flatpak-builtins-build-import-bundle.obj `if test -f 'app/flatpak-builtins-build-import-bundle.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-import-bundle.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-import-bundle.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-import-bundle.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-import-bundle.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-import-bundle.c' object='app/flatpak-flatpak-builtins-build-import-bundle.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-import-bundle.obj `if test -f 'app/flatpak-builtins-build-import-bundle.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-import-bundle.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-import-bundle.c'; fi` - -app/flatpak-flatpak-builtins-build-commit-from.o: app/flatpak-builtins-build-commit-from.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-commit-from.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-commit-from.Tpo -c -o app/flatpak-flatpak-builtins-build-commit-from.o `test -f 'app/flatpak-builtins-build-commit-from.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-commit-from.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-commit-from.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-commit-from.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-commit-from.c' object='app/flatpak-flatpak-builtins-build-commit-from.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-commit-from.o `test -f 'app/flatpak-builtins-build-commit-from.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-commit-from.c - -app/flatpak-flatpak-builtins-build-commit-from.obj: app/flatpak-builtins-build-commit-from.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-commit-from.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-commit-from.Tpo -c -o app/flatpak-flatpak-builtins-build-commit-from.obj `if test -f 'app/flatpak-builtins-build-commit-from.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-commit-from.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-commit-from.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-commit-from.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-commit-from.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-commit-from.c' object='app/flatpak-flatpak-builtins-build-commit-from.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-commit-from.obj `if test -f 'app/flatpak-builtins-build-commit-from.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-commit-from.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-commit-from.c'; fi` - -app/flatpak-flatpak-builtins-build-sign.o: app/flatpak-builtins-build-sign.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-sign.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-sign.Tpo -c -o app/flatpak-flatpak-builtins-build-sign.o `test -f 'app/flatpak-builtins-build-sign.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-sign.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-sign.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-sign.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-sign.c' object='app/flatpak-flatpak-builtins-build-sign.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-sign.o `test -f 'app/flatpak-builtins-build-sign.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-sign.c - -app/flatpak-flatpak-builtins-build-sign.obj: app/flatpak-builtins-build-sign.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-sign.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-sign.Tpo -c -o app/flatpak-flatpak-builtins-build-sign.obj `if test -f 'app/flatpak-builtins-build-sign.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-sign.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-sign.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-sign.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-sign.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-sign.c' object='app/flatpak-flatpak-builtins-build-sign.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-sign.obj `if test -f 'app/flatpak-builtins-build-sign.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-sign.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-sign.c'; fi` - -app/flatpak-flatpak-builtins-build-update-repo.o: app/flatpak-builtins-build-update-repo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-update-repo.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-update-repo.Tpo -c -o app/flatpak-flatpak-builtins-build-update-repo.o `test -f 'app/flatpak-builtins-build-update-repo.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-update-repo.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-update-repo.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-update-repo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-update-repo.c' object='app/flatpak-flatpak-builtins-build-update-repo.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-update-repo.o `test -f 'app/flatpak-builtins-build-update-repo.c' || echo '$(srcdir)/'`app/flatpak-builtins-build-update-repo.c - -app/flatpak-flatpak-builtins-build-update-repo.obj: app/flatpak-builtins-build-update-repo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-build-update-repo.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-build-update-repo.Tpo -c -o app/flatpak-flatpak-builtins-build-update-repo.obj `if test -f 'app/flatpak-builtins-build-update-repo.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-update-repo.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-update-repo.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-build-update-repo.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-build-update-repo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-build-update-repo.c' object='app/flatpak-flatpak-builtins-build-update-repo.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-build-update-repo.obj `if test -f 'app/flatpak-builtins-build-update-repo.c'; then $(CYGPATH_W) 'app/flatpak-builtins-build-update-repo.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-build-update-repo.c'; fi` - -app/flatpak-flatpak-builtins-repo.o: app/flatpak-builtins-repo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-repo.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-repo.Tpo -c -o app/flatpak-flatpak-builtins-repo.o `test -f 'app/flatpak-builtins-repo.c' || echo '$(srcdir)/'`app/flatpak-builtins-repo.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-repo.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-repo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-repo.c' object='app/flatpak-flatpak-builtins-repo.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-repo.o `test -f 'app/flatpak-builtins-repo.c' || echo '$(srcdir)/'`app/flatpak-builtins-repo.c - -app/flatpak-flatpak-builtins-repo.obj: app/flatpak-builtins-repo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-repo.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-repo.Tpo -c -o app/flatpak-flatpak-builtins-repo.obj `if test -f 'app/flatpak-builtins-repo.c'; then $(CYGPATH_W) 'app/flatpak-builtins-repo.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-repo.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-repo.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-repo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-repo.c' object='app/flatpak-flatpak-builtins-repo.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-repo.obj `if test -f 'app/flatpak-builtins-repo.c'; then $(CYGPATH_W) 'app/flatpak-builtins-repo.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-repo.c'; fi` - -app/flatpak-flatpak-builtins-document-export.o: app/flatpak-builtins-document-export.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-document-export.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-document-export.Tpo -c -o app/flatpak-flatpak-builtins-document-export.o `test -f 'app/flatpak-builtins-document-export.c' || echo '$(srcdir)/'`app/flatpak-builtins-document-export.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-document-export.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-document-export.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-document-export.c' object='app/flatpak-flatpak-builtins-document-export.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-document-export.o `test -f 'app/flatpak-builtins-document-export.c' || echo '$(srcdir)/'`app/flatpak-builtins-document-export.c - -app/flatpak-flatpak-builtins-document-export.obj: app/flatpak-builtins-document-export.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-document-export.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-document-export.Tpo -c -o app/flatpak-flatpak-builtins-document-export.obj `if test -f 'app/flatpak-builtins-document-export.c'; then $(CYGPATH_W) 'app/flatpak-builtins-document-export.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-document-export.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-document-export.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-document-export.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-document-export.c' object='app/flatpak-flatpak-builtins-document-export.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-document-export.obj `if test -f 'app/flatpak-builtins-document-export.c'; then $(CYGPATH_W) 'app/flatpak-builtins-document-export.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-document-export.c'; fi` - -app/flatpak-flatpak-builtins-document-unexport.o: app/flatpak-builtins-document-unexport.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-document-unexport.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-document-unexport.Tpo -c -o app/flatpak-flatpak-builtins-document-unexport.o `test -f 'app/flatpak-builtins-document-unexport.c' || echo '$(srcdir)/'`app/flatpak-builtins-document-unexport.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-document-unexport.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-document-unexport.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-document-unexport.c' object='app/flatpak-flatpak-builtins-document-unexport.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-document-unexport.o `test -f 'app/flatpak-builtins-document-unexport.c' || echo '$(srcdir)/'`app/flatpak-builtins-document-unexport.c - -app/flatpak-flatpak-builtins-document-unexport.obj: app/flatpak-builtins-document-unexport.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-document-unexport.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-document-unexport.Tpo -c -o app/flatpak-flatpak-builtins-document-unexport.obj `if test -f 'app/flatpak-builtins-document-unexport.c'; then $(CYGPATH_W) 'app/flatpak-builtins-document-unexport.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-document-unexport.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-document-unexport.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-document-unexport.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-document-unexport.c' object='app/flatpak-flatpak-builtins-document-unexport.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-document-unexport.obj `if test -f 'app/flatpak-builtins-document-unexport.c'; then $(CYGPATH_W) 'app/flatpak-builtins-document-unexport.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-document-unexport.c'; fi` - -app/flatpak-flatpak-builtins-document-info.o: app/flatpak-builtins-document-info.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-document-info.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-document-info.Tpo -c -o app/flatpak-flatpak-builtins-document-info.o `test -f 'app/flatpak-builtins-document-info.c' || echo '$(srcdir)/'`app/flatpak-builtins-document-info.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-document-info.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-document-info.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-document-info.c' object='app/flatpak-flatpak-builtins-document-info.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-document-info.o `test -f 'app/flatpak-builtins-document-info.c' || echo '$(srcdir)/'`app/flatpak-builtins-document-info.c - -app/flatpak-flatpak-builtins-document-info.obj: app/flatpak-builtins-document-info.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-document-info.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-document-info.Tpo -c -o app/flatpak-flatpak-builtins-document-info.obj `if test -f 'app/flatpak-builtins-document-info.c'; then $(CYGPATH_W) 'app/flatpak-builtins-document-info.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-document-info.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-document-info.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-document-info.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-document-info.c' object='app/flatpak-flatpak-builtins-document-info.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-document-info.obj `if test -f 'app/flatpak-builtins-document-info.c'; then $(CYGPATH_W) 'app/flatpak-builtins-document-info.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-document-info.c'; fi` - -app/flatpak-flatpak-builtins-document-list.o: app/flatpak-builtins-document-list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-document-list.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-document-list.Tpo -c -o app/flatpak-flatpak-builtins-document-list.o `test -f 'app/flatpak-builtins-document-list.c' || echo '$(srcdir)/'`app/flatpak-builtins-document-list.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-document-list.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-document-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-document-list.c' object='app/flatpak-flatpak-builtins-document-list.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-document-list.o `test -f 'app/flatpak-builtins-document-list.c' || echo '$(srcdir)/'`app/flatpak-builtins-document-list.c - -app/flatpak-flatpak-builtins-document-list.obj: app/flatpak-builtins-document-list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-document-list.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-document-list.Tpo -c -o app/flatpak-flatpak-builtins-document-list.obj `if test -f 'app/flatpak-builtins-document-list.c'; then $(CYGPATH_W) 'app/flatpak-builtins-document-list.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-document-list.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-document-list.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-document-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-document-list.c' object='app/flatpak-flatpak-builtins-document-list.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-document-list.obj `if test -f 'app/flatpak-builtins-document-list.c'; then $(CYGPATH_W) 'app/flatpak-builtins-document-list.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-document-list.c'; fi` - -app/flatpak-flatpak-builtins-permission-remove.o: app/flatpak-builtins-permission-remove.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-permission-remove.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-permission-remove.Tpo -c -o app/flatpak-flatpak-builtins-permission-remove.o `test -f 'app/flatpak-builtins-permission-remove.c' || echo '$(srcdir)/'`app/flatpak-builtins-permission-remove.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-permission-remove.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-permission-remove.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-permission-remove.c' object='app/flatpak-flatpak-builtins-permission-remove.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-permission-remove.o `test -f 'app/flatpak-builtins-permission-remove.c' || echo '$(srcdir)/'`app/flatpak-builtins-permission-remove.c - -app/flatpak-flatpak-builtins-permission-remove.obj: app/flatpak-builtins-permission-remove.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-permission-remove.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-permission-remove.Tpo -c -o app/flatpak-flatpak-builtins-permission-remove.obj `if test -f 'app/flatpak-builtins-permission-remove.c'; then $(CYGPATH_W) 'app/flatpak-builtins-permission-remove.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-permission-remove.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-permission-remove.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-permission-remove.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-permission-remove.c' object='app/flatpak-flatpak-builtins-permission-remove.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-permission-remove.obj `if test -f 'app/flatpak-builtins-permission-remove.c'; then $(CYGPATH_W) 'app/flatpak-builtins-permission-remove.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-permission-remove.c'; fi` - -app/flatpak-flatpak-builtins-permission-set.o: app/flatpak-builtins-permission-set.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-permission-set.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-permission-set.Tpo -c -o app/flatpak-flatpak-builtins-permission-set.o `test -f 'app/flatpak-builtins-permission-set.c' || echo '$(srcdir)/'`app/flatpak-builtins-permission-set.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-permission-set.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-permission-set.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-permission-set.c' object='app/flatpak-flatpak-builtins-permission-set.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-permission-set.o `test -f 'app/flatpak-builtins-permission-set.c' || echo '$(srcdir)/'`app/flatpak-builtins-permission-set.c - -app/flatpak-flatpak-builtins-permission-set.obj: app/flatpak-builtins-permission-set.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-permission-set.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-permission-set.Tpo -c -o app/flatpak-flatpak-builtins-permission-set.obj `if test -f 'app/flatpak-builtins-permission-set.c'; then $(CYGPATH_W) 'app/flatpak-builtins-permission-set.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-permission-set.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-permission-set.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-permission-set.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-permission-set.c' object='app/flatpak-flatpak-builtins-permission-set.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-permission-set.obj `if test -f 'app/flatpak-builtins-permission-set.c'; then $(CYGPATH_W) 'app/flatpak-builtins-permission-set.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-permission-set.c'; fi` - -app/flatpak-flatpak-builtins-permission-list.o: app/flatpak-builtins-permission-list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-permission-list.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-permission-list.Tpo -c -o app/flatpak-flatpak-builtins-permission-list.o `test -f 'app/flatpak-builtins-permission-list.c' || echo '$(srcdir)/'`app/flatpak-builtins-permission-list.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-permission-list.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-permission-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-permission-list.c' object='app/flatpak-flatpak-builtins-permission-list.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-permission-list.o `test -f 'app/flatpak-builtins-permission-list.c' || echo '$(srcdir)/'`app/flatpak-builtins-permission-list.c - -app/flatpak-flatpak-builtins-permission-list.obj: app/flatpak-builtins-permission-list.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-permission-list.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-permission-list.Tpo -c -o app/flatpak-flatpak-builtins-permission-list.obj `if test -f 'app/flatpak-builtins-permission-list.c'; then $(CYGPATH_W) 'app/flatpak-builtins-permission-list.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-permission-list.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-permission-list.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-permission-list.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-permission-list.c' object='app/flatpak-flatpak-builtins-permission-list.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-permission-list.obj `if test -f 'app/flatpak-builtins-permission-list.c'; then $(CYGPATH_W) 'app/flatpak-builtins-permission-list.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-permission-list.c'; fi` - -app/flatpak-flatpak-builtins-permission-show.o: app/flatpak-builtins-permission-show.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-permission-show.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-permission-show.Tpo -c -o app/flatpak-flatpak-builtins-permission-show.o `test -f 'app/flatpak-builtins-permission-show.c' || echo '$(srcdir)/'`app/flatpak-builtins-permission-show.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-permission-show.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-permission-show.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-permission-show.c' object='app/flatpak-flatpak-builtins-permission-show.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-permission-show.o `test -f 'app/flatpak-builtins-permission-show.c' || echo '$(srcdir)/'`app/flatpak-builtins-permission-show.c - -app/flatpak-flatpak-builtins-permission-show.obj: app/flatpak-builtins-permission-show.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-permission-show.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-permission-show.Tpo -c -o app/flatpak-flatpak-builtins-permission-show.obj `if test -f 'app/flatpak-builtins-permission-show.c'; then $(CYGPATH_W) 'app/flatpak-builtins-permission-show.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-permission-show.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-permission-show.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-permission-show.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-permission-show.c' object='app/flatpak-flatpak-builtins-permission-show.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-permission-show.obj `if test -f 'app/flatpak-builtins-permission-show.c'; then $(CYGPATH_W) 'app/flatpak-builtins-permission-show.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-permission-show.c'; fi` - -app/flatpak-flatpak-builtins-permission-reset.o: app/flatpak-builtins-permission-reset.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-permission-reset.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-permission-reset.Tpo -c -o app/flatpak-flatpak-builtins-permission-reset.o `test -f 'app/flatpak-builtins-permission-reset.c' || echo '$(srcdir)/'`app/flatpak-builtins-permission-reset.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-permission-reset.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-permission-reset.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-permission-reset.c' object='app/flatpak-flatpak-builtins-permission-reset.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-permission-reset.o `test -f 'app/flatpak-builtins-permission-reset.c' || echo '$(srcdir)/'`app/flatpak-builtins-permission-reset.c - -app/flatpak-flatpak-builtins-permission-reset.obj: app/flatpak-builtins-permission-reset.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-permission-reset.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-permission-reset.Tpo -c -o app/flatpak-flatpak-builtins-permission-reset.obj `if test -f 'app/flatpak-builtins-permission-reset.c'; then $(CYGPATH_W) 'app/flatpak-builtins-permission-reset.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-permission-reset.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-permission-reset.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-permission-reset.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-permission-reset.c' object='app/flatpak-flatpak-builtins-permission-reset.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-permission-reset.obj `if test -f 'app/flatpak-builtins-permission-reset.c'; then $(CYGPATH_W) 'app/flatpak-builtins-permission-reset.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-permission-reset.c'; fi` - -app/flatpak-flatpak-builtins-search.o: app/flatpak-builtins-search.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-search.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-search.Tpo -c -o app/flatpak-flatpak-builtins-search.o `test -f 'app/flatpak-builtins-search.c' || echo '$(srcdir)/'`app/flatpak-builtins-search.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-search.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-search.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-search.c' object='app/flatpak-flatpak-builtins-search.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-search.o `test -f 'app/flatpak-builtins-search.c' || echo '$(srcdir)/'`app/flatpak-builtins-search.c - -app/flatpak-flatpak-builtins-search.obj: app/flatpak-builtins-search.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-search.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-search.Tpo -c -o app/flatpak-flatpak-builtins-search.obj `if test -f 'app/flatpak-builtins-search.c'; then $(CYGPATH_W) 'app/flatpak-builtins-search.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-search.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-search.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-search.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-search.c' object='app/flatpak-flatpak-builtins-search.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-search.obj `if test -f 'app/flatpak-builtins-search.c'; then $(CYGPATH_W) 'app/flatpak-builtins-search.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-search.c'; fi` - -app/flatpak-flatpak-builtins-repair.o: app/flatpak-builtins-repair.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-repair.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-repair.Tpo -c -o app/flatpak-flatpak-builtins-repair.o `test -f 'app/flatpak-builtins-repair.c' || echo '$(srcdir)/'`app/flatpak-builtins-repair.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-repair.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-repair.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-repair.c' object='app/flatpak-flatpak-builtins-repair.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-repair.o `test -f 'app/flatpak-builtins-repair.c' || echo '$(srcdir)/'`app/flatpak-builtins-repair.c - -app/flatpak-flatpak-builtins-repair.obj: app/flatpak-builtins-repair.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-repair.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-repair.Tpo -c -o app/flatpak-flatpak-builtins-repair.obj `if test -f 'app/flatpak-builtins-repair.c'; then $(CYGPATH_W) 'app/flatpak-builtins-repair.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-repair.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-repair.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-repair.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-repair.c' object='app/flatpak-flatpak-builtins-repair.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-repair.obj `if test -f 'app/flatpak-builtins-repair.c'; then $(CYGPATH_W) 'app/flatpak-builtins-repair.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-repair.c'; fi` - -app/flatpak-flatpak-builtins-create-usb.o: app/flatpak-builtins-create-usb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-create-usb.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-create-usb.Tpo -c -o app/flatpak-flatpak-builtins-create-usb.o `test -f 'app/flatpak-builtins-create-usb.c' || echo '$(srcdir)/'`app/flatpak-builtins-create-usb.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-create-usb.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-create-usb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-create-usb.c' object='app/flatpak-flatpak-builtins-create-usb.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-create-usb.o `test -f 'app/flatpak-builtins-create-usb.c' || echo '$(srcdir)/'`app/flatpak-builtins-create-usb.c - -app/flatpak-flatpak-builtins-create-usb.obj: app/flatpak-builtins-create-usb.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-create-usb.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-create-usb.Tpo -c -o app/flatpak-flatpak-builtins-create-usb.obj `if test -f 'app/flatpak-builtins-create-usb.c'; then $(CYGPATH_W) 'app/flatpak-builtins-create-usb.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-create-usb.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-create-usb.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-create-usb.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-create-usb.c' object='app/flatpak-flatpak-builtins-create-usb.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-create-usb.obj `if test -f 'app/flatpak-builtins-create-usb.c'; then $(CYGPATH_W) 'app/flatpak-builtins-create-usb.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-create-usb.c'; fi` - -app/flatpak-flatpak-builtins-kill.o: app/flatpak-builtins-kill.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-kill.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-kill.Tpo -c -o app/flatpak-flatpak-builtins-kill.o `test -f 'app/flatpak-builtins-kill.c' || echo '$(srcdir)/'`app/flatpak-builtins-kill.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-kill.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-kill.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-kill.c' object='app/flatpak-flatpak-builtins-kill.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-kill.o `test -f 'app/flatpak-builtins-kill.c' || echo '$(srcdir)/'`app/flatpak-builtins-kill.c - -app/flatpak-flatpak-builtins-kill.obj: app/flatpak-builtins-kill.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-kill.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-kill.Tpo -c -o app/flatpak-flatpak-builtins-kill.obj `if test -f 'app/flatpak-builtins-kill.c'; then $(CYGPATH_W) 'app/flatpak-builtins-kill.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-kill.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-kill.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-kill.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-kill.c' object='app/flatpak-flatpak-builtins-kill.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-kill.obj `if test -f 'app/flatpak-builtins-kill.c'; then $(CYGPATH_W) 'app/flatpak-builtins-kill.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-kill.c'; fi` - -app/flatpak-flatpak-builtins-history.o: app/flatpak-builtins-history.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-history.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-history.Tpo -c -o app/flatpak-flatpak-builtins-history.o `test -f 'app/flatpak-builtins-history.c' || echo '$(srcdir)/'`app/flatpak-builtins-history.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-history.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-history.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-history.c' object='app/flatpak-flatpak-builtins-history.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-history.o `test -f 'app/flatpak-builtins-history.c' || echo '$(srcdir)/'`app/flatpak-builtins-history.c - -app/flatpak-flatpak-builtins-history.obj: app/flatpak-builtins-history.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-builtins-history.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-builtins-history.Tpo -c -o app/flatpak-flatpak-builtins-history.obj `if test -f 'app/flatpak-builtins-history.c'; then $(CYGPATH_W) 'app/flatpak-builtins-history.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-history.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-builtins-history.Tpo app/$(DEPDIR)/flatpak-flatpak-builtins-history.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-builtins-history.c' object='app/flatpak-flatpak-builtins-history.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-builtins-history.obj `if test -f 'app/flatpak-builtins-history.c'; then $(CYGPATH_W) 'app/flatpak-builtins-history.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-builtins-history.c'; fi` - -app/flatpak-flatpak-complete.o: app/flatpak-complete.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-complete.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-complete.Tpo -c -o app/flatpak-flatpak-complete.o `test -f 'app/flatpak-complete.c' || echo '$(srcdir)/'`app/flatpak-complete.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-complete.Tpo app/$(DEPDIR)/flatpak-flatpak-complete.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-complete.c' object='app/flatpak-flatpak-complete.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-complete.o `test -f 'app/flatpak-complete.c' || echo '$(srcdir)/'`app/flatpak-complete.c - -app/flatpak-flatpak-complete.obj: app/flatpak-complete.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-complete.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-complete.Tpo -c -o app/flatpak-flatpak-complete.obj `if test -f 'app/flatpak-complete.c'; then $(CYGPATH_W) 'app/flatpak-complete.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-complete.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-complete.Tpo app/$(DEPDIR)/flatpak-flatpak-complete.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-complete.c' object='app/flatpak-flatpak-complete.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-complete.obj `if test -f 'app/flatpak-complete.c'; then $(CYGPATH_W) 'app/flatpak-complete.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-complete.c'; fi` - -app/flatpak-flatpak-cli-transaction.o: app/flatpak-cli-transaction.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-cli-transaction.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-cli-transaction.Tpo -c -o app/flatpak-flatpak-cli-transaction.o `test -f 'app/flatpak-cli-transaction.c' || echo '$(srcdir)/'`app/flatpak-cli-transaction.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-cli-transaction.Tpo app/$(DEPDIR)/flatpak-flatpak-cli-transaction.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-cli-transaction.c' object='app/flatpak-flatpak-cli-transaction.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-cli-transaction.o `test -f 'app/flatpak-cli-transaction.c' || echo '$(srcdir)/'`app/flatpak-cli-transaction.c - -app/flatpak-flatpak-cli-transaction.obj: app/flatpak-cli-transaction.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-cli-transaction.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-cli-transaction.Tpo -c -o app/flatpak-flatpak-cli-transaction.obj `if test -f 'app/flatpak-cli-transaction.c'; then $(CYGPATH_W) 'app/flatpak-cli-transaction.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-cli-transaction.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-cli-transaction.Tpo app/$(DEPDIR)/flatpak-flatpak-cli-transaction.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-cli-transaction.c' object='app/flatpak-flatpak-cli-transaction.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-cli-transaction.obj `if test -f 'app/flatpak-cli-transaction.c'; then $(CYGPATH_W) 'app/flatpak-cli-transaction.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-cli-transaction.c'; fi` - -app/flatpak-flatpak-quiet-transaction.o: app/flatpak-quiet-transaction.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-quiet-transaction.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-quiet-transaction.Tpo -c -o app/flatpak-flatpak-quiet-transaction.o `test -f 'app/flatpak-quiet-transaction.c' || echo '$(srcdir)/'`app/flatpak-quiet-transaction.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-quiet-transaction.Tpo app/$(DEPDIR)/flatpak-flatpak-quiet-transaction.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-quiet-transaction.c' object='app/flatpak-flatpak-quiet-transaction.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-quiet-transaction.o `test -f 'app/flatpak-quiet-transaction.c' || echo '$(srcdir)/'`app/flatpak-quiet-transaction.c - -app/flatpak-flatpak-quiet-transaction.obj: app/flatpak-quiet-transaction.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-quiet-transaction.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-quiet-transaction.Tpo -c -o app/flatpak-flatpak-quiet-transaction.obj `if test -f 'app/flatpak-quiet-transaction.c'; then $(CYGPATH_W) 'app/flatpak-quiet-transaction.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-quiet-transaction.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-quiet-transaction.Tpo app/$(DEPDIR)/flatpak-flatpak-quiet-transaction.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-quiet-transaction.c' object='app/flatpak-flatpak-quiet-transaction.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-quiet-transaction.obj `if test -f 'app/flatpak-quiet-transaction.c'; then $(CYGPATH_W) 'app/flatpak-quiet-transaction.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-quiet-transaction.c'; fi` - -app/flatpak-flatpak-polkit-agent-text-listener.o: app/flatpak-polkit-agent-text-listener.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-polkit-agent-text-listener.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-polkit-agent-text-listener.Tpo -c -o app/flatpak-flatpak-polkit-agent-text-listener.o `test -f 'app/flatpak-polkit-agent-text-listener.c' || echo '$(srcdir)/'`app/flatpak-polkit-agent-text-listener.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-polkit-agent-text-listener.Tpo app/$(DEPDIR)/flatpak-flatpak-polkit-agent-text-listener.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-polkit-agent-text-listener.c' object='app/flatpak-flatpak-polkit-agent-text-listener.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-polkit-agent-text-listener.o `test -f 'app/flatpak-polkit-agent-text-listener.c' || echo '$(srcdir)/'`app/flatpak-polkit-agent-text-listener.c - -app/flatpak-flatpak-polkit-agent-text-listener.obj: app/flatpak-polkit-agent-text-listener.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-polkit-agent-text-listener.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-polkit-agent-text-listener.Tpo -c -o app/flatpak-flatpak-polkit-agent-text-listener.obj `if test -f 'app/flatpak-polkit-agent-text-listener.c'; then $(CYGPATH_W) 'app/flatpak-polkit-agent-text-listener.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-polkit-agent-text-listener.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-polkit-agent-text-listener.Tpo app/$(DEPDIR)/flatpak-flatpak-polkit-agent-text-listener.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-polkit-agent-text-listener.c' object='app/flatpak-flatpak-polkit-agent-text-listener.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-polkit-agent-text-listener.obj `if test -f 'app/flatpak-polkit-agent-text-listener.c'; then $(CYGPATH_W) 'app/flatpak-polkit-agent-text-listener.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-polkit-agent-text-listener.c'; fi` - -app/flatpak-flatpak-permission-dbus-generated.o: app/flatpak-permission-dbus-generated.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-permission-dbus-generated.o -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-permission-dbus-generated.Tpo -c -o app/flatpak-flatpak-permission-dbus-generated.o `test -f 'app/flatpak-permission-dbus-generated.c' || echo '$(srcdir)/'`app/flatpak-permission-dbus-generated.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-permission-dbus-generated.Tpo app/$(DEPDIR)/flatpak-flatpak-permission-dbus-generated.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-permission-dbus-generated.c' object='app/flatpak-flatpak-permission-dbus-generated.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-permission-dbus-generated.o `test -f 'app/flatpak-permission-dbus-generated.c' || echo '$(srcdir)/'`app/flatpak-permission-dbus-generated.c - -app/flatpak-flatpak-permission-dbus-generated.obj: app/flatpak-permission-dbus-generated.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -MT app/flatpak-flatpak-permission-dbus-generated.obj -MD -MP -MF app/$(DEPDIR)/flatpak-flatpak-permission-dbus-generated.Tpo -c -o app/flatpak-flatpak-permission-dbus-generated.obj `if test -f 'app/flatpak-permission-dbus-generated.c'; then $(CYGPATH_W) 'app/flatpak-permission-dbus-generated.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-permission-dbus-generated.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) app/$(DEPDIR)/flatpak-flatpak-permission-dbus-generated.Tpo app/$(DEPDIR)/flatpak-flatpak-permission-dbus-generated.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='app/flatpak-permission-dbus-generated.c' object='app/flatpak-flatpak-permission-dbus-generated.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_CFLAGS) $(CFLAGS) -c -o app/flatpak-flatpak-permission-dbus-generated.obj `if test -f 'app/flatpak-permission-dbus-generated.c'; then $(CYGPATH_W) 'app/flatpak-permission-dbus-generated.c'; else $(CYGPATH_W) '$(srcdir)/app/flatpak-permission-dbus-generated.c'; fi` - -subprojects/bubblewrap/flatpak_bwrap-bubblewrap.o: subprojects/bubblewrap/bubblewrap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -MT subprojects/bubblewrap/flatpak_bwrap-bubblewrap.o -MD -MP -MF subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bubblewrap.Tpo -c -o subprojects/bubblewrap/flatpak_bwrap-bubblewrap.o `test -f 'subprojects/bubblewrap/bubblewrap.c' || echo '$(srcdir)/'`subprojects/bubblewrap/bubblewrap.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bubblewrap.Tpo subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bubblewrap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/bubblewrap/bubblewrap.c' object='subprojects/bubblewrap/flatpak_bwrap-bubblewrap.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -c -o subprojects/bubblewrap/flatpak_bwrap-bubblewrap.o `test -f 'subprojects/bubblewrap/bubblewrap.c' || echo '$(srcdir)/'`subprojects/bubblewrap/bubblewrap.c - -subprojects/bubblewrap/flatpak_bwrap-bubblewrap.obj: subprojects/bubblewrap/bubblewrap.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -MT subprojects/bubblewrap/flatpak_bwrap-bubblewrap.obj -MD -MP -MF subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bubblewrap.Tpo -c -o subprojects/bubblewrap/flatpak_bwrap-bubblewrap.obj `if test -f 'subprojects/bubblewrap/bubblewrap.c'; then $(CYGPATH_W) 'subprojects/bubblewrap/bubblewrap.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/bubblewrap/bubblewrap.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bubblewrap.Tpo subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bubblewrap.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/bubblewrap/bubblewrap.c' object='subprojects/bubblewrap/flatpak_bwrap-bubblewrap.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -c -o subprojects/bubblewrap/flatpak_bwrap-bubblewrap.obj `if test -f 'subprojects/bubblewrap/bubblewrap.c'; then $(CYGPATH_W) 'subprojects/bubblewrap/bubblewrap.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/bubblewrap/bubblewrap.c'; fi` - -subprojects/bubblewrap/flatpak_bwrap-bind-mount.o: subprojects/bubblewrap/bind-mount.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -MT subprojects/bubblewrap/flatpak_bwrap-bind-mount.o -MD -MP -MF subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bind-mount.Tpo -c -o subprojects/bubblewrap/flatpak_bwrap-bind-mount.o `test -f 'subprojects/bubblewrap/bind-mount.c' || echo '$(srcdir)/'`subprojects/bubblewrap/bind-mount.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bind-mount.Tpo subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bind-mount.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/bubblewrap/bind-mount.c' object='subprojects/bubblewrap/flatpak_bwrap-bind-mount.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -c -o subprojects/bubblewrap/flatpak_bwrap-bind-mount.o `test -f 'subprojects/bubblewrap/bind-mount.c' || echo '$(srcdir)/'`subprojects/bubblewrap/bind-mount.c - -subprojects/bubblewrap/flatpak_bwrap-bind-mount.obj: subprojects/bubblewrap/bind-mount.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -MT subprojects/bubblewrap/flatpak_bwrap-bind-mount.obj -MD -MP -MF subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bind-mount.Tpo -c -o subprojects/bubblewrap/flatpak_bwrap-bind-mount.obj `if test -f 'subprojects/bubblewrap/bind-mount.c'; then $(CYGPATH_W) 'subprojects/bubblewrap/bind-mount.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/bubblewrap/bind-mount.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bind-mount.Tpo subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bind-mount.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/bubblewrap/bind-mount.c' object='subprojects/bubblewrap/flatpak_bwrap-bind-mount.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -c -o subprojects/bubblewrap/flatpak_bwrap-bind-mount.obj `if test -f 'subprojects/bubblewrap/bind-mount.c'; then $(CYGPATH_W) 'subprojects/bubblewrap/bind-mount.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/bubblewrap/bind-mount.c'; fi` - -subprojects/bubblewrap/flatpak_bwrap-network.o: subprojects/bubblewrap/network.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -MT subprojects/bubblewrap/flatpak_bwrap-network.o -MD -MP -MF subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-network.Tpo -c -o subprojects/bubblewrap/flatpak_bwrap-network.o `test -f 'subprojects/bubblewrap/network.c' || echo '$(srcdir)/'`subprojects/bubblewrap/network.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-network.Tpo subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-network.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/bubblewrap/network.c' object='subprojects/bubblewrap/flatpak_bwrap-network.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -c -o subprojects/bubblewrap/flatpak_bwrap-network.o `test -f 'subprojects/bubblewrap/network.c' || echo '$(srcdir)/'`subprojects/bubblewrap/network.c - -subprojects/bubblewrap/flatpak_bwrap-network.obj: subprojects/bubblewrap/network.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -MT subprojects/bubblewrap/flatpak_bwrap-network.obj -MD -MP -MF subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-network.Tpo -c -o subprojects/bubblewrap/flatpak_bwrap-network.obj `if test -f 'subprojects/bubblewrap/network.c'; then $(CYGPATH_W) 'subprojects/bubblewrap/network.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/bubblewrap/network.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-network.Tpo subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-network.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/bubblewrap/network.c' object='subprojects/bubblewrap/flatpak_bwrap-network.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -c -o subprojects/bubblewrap/flatpak_bwrap-network.obj `if test -f 'subprojects/bubblewrap/network.c'; then $(CYGPATH_W) 'subprojects/bubblewrap/network.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/bubblewrap/network.c'; fi` - -subprojects/bubblewrap/flatpak_bwrap-utils.o: subprojects/bubblewrap/utils.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -MT subprojects/bubblewrap/flatpak_bwrap-utils.o -MD -MP -MF subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-utils.Tpo -c -o subprojects/bubblewrap/flatpak_bwrap-utils.o `test -f 'subprojects/bubblewrap/utils.c' || echo '$(srcdir)/'`subprojects/bubblewrap/utils.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-utils.Tpo subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-utils.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/bubblewrap/utils.c' object='subprojects/bubblewrap/flatpak_bwrap-utils.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -c -o subprojects/bubblewrap/flatpak_bwrap-utils.o `test -f 'subprojects/bubblewrap/utils.c' || echo '$(srcdir)/'`subprojects/bubblewrap/utils.c - -subprojects/bubblewrap/flatpak_bwrap-utils.obj: subprojects/bubblewrap/utils.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -MT subprojects/bubblewrap/flatpak_bwrap-utils.obj -MD -MP -MF subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-utils.Tpo -c -o subprojects/bubblewrap/flatpak_bwrap-utils.obj `if test -f 'subprojects/bubblewrap/utils.c'; then $(CYGPATH_W) 'subprojects/bubblewrap/utils.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/bubblewrap/utils.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-utils.Tpo subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-utils.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/bubblewrap/utils.c' object='subprojects/bubblewrap/flatpak_bwrap-utils.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_bwrap_CFLAGS) $(CFLAGS) -c -o subprojects/bubblewrap/flatpak_bwrap-utils.obj `if test -f 'subprojects/bubblewrap/utils.c'; then $(CYGPATH_W) 'subprojects/bubblewrap/utils.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/bubblewrap/utils.c'; fi` - -subprojects/dbus-proxy/flatpak_dbus_proxy-flatpak-proxy.o: subprojects/dbus-proxy/flatpak-proxy.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_dbus_proxy_CFLAGS) $(CFLAGS) -MT subprojects/dbus-proxy/flatpak_dbus_proxy-flatpak-proxy.o -MD -MP -MF subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-flatpak-proxy.Tpo -c -o subprojects/dbus-proxy/flatpak_dbus_proxy-flatpak-proxy.o `test -f 'subprojects/dbus-proxy/flatpak-proxy.c' || echo '$(srcdir)/'`subprojects/dbus-proxy/flatpak-proxy.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-flatpak-proxy.Tpo subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-flatpak-proxy.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/dbus-proxy/flatpak-proxy.c' object='subprojects/dbus-proxy/flatpak_dbus_proxy-flatpak-proxy.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_dbus_proxy_CFLAGS) $(CFLAGS) -c -o subprojects/dbus-proxy/flatpak_dbus_proxy-flatpak-proxy.o `test -f 'subprojects/dbus-proxy/flatpak-proxy.c' || echo '$(srcdir)/'`subprojects/dbus-proxy/flatpak-proxy.c - -subprojects/dbus-proxy/flatpak_dbus_proxy-flatpak-proxy.obj: subprojects/dbus-proxy/flatpak-proxy.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_dbus_proxy_CFLAGS) $(CFLAGS) -MT subprojects/dbus-proxy/flatpak_dbus_proxy-flatpak-proxy.obj -MD -MP -MF subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-flatpak-proxy.Tpo -c -o subprojects/dbus-proxy/flatpak_dbus_proxy-flatpak-proxy.obj `if test -f 'subprojects/dbus-proxy/flatpak-proxy.c'; then $(CYGPATH_W) 'subprojects/dbus-proxy/flatpak-proxy.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/dbus-proxy/flatpak-proxy.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-flatpak-proxy.Tpo subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-flatpak-proxy.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/dbus-proxy/flatpak-proxy.c' object='subprojects/dbus-proxy/flatpak_dbus_proxy-flatpak-proxy.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_dbus_proxy_CFLAGS) $(CFLAGS) -c -o subprojects/dbus-proxy/flatpak_dbus_proxy-flatpak-proxy.obj `if test -f 'subprojects/dbus-proxy/flatpak-proxy.c'; then $(CYGPATH_W) 'subprojects/dbus-proxy/flatpak-proxy.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/dbus-proxy/flatpak-proxy.c'; fi` - -subprojects/dbus-proxy/flatpak_dbus_proxy-dbus-proxy.o: subprojects/dbus-proxy/dbus-proxy.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_dbus_proxy_CFLAGS) $(CFLAGS) -MT subprojects/dbus-proxy/flatpak_dbus_proxy-dbus-proxy.o -MD -MP -MF subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-dbus-proxy.Tpo -c -o subprojects/dbus-proxy/flatpak_dbus_proxy-dbus-proxy.o `test -f 'subprojects/dbus-proxy/dbus-proxy.c' || echo '$(srcdir)/'`subprojects/dbus-proxy/dbus-proxy.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-dbus-proxy.Tpo subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-dbus-proxy.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/dbus-proxy/dbus-proxy.c' object='subprojects/dbus-proxy/flatpak_dbus_proxy-dbus-proxy.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_dbus_proxy_CFLAGS) $(CFLAGS) -c -o subprojects/dbus-proxy/flatpak_dbus_proxy-dbus-proxy.o `test -f 'subprojects/dbus-proxy/dbus-proxy.c' || echo '$(srcdir)/'`subprojects/dbus-proxy/dbus-proxy.c - -subprojects/dbus-proxy/flatpak_dbus_proxy-dbus-proxy.obj: subprojects/dbus-proxy/dbus-proxy.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_dbus_proxy_CFLAGS) $(CFLAGS) -MT subprojects/dbus-proxy/flatpak_dbus_proxy-dbus-proxy.obj -MD -MP -MF subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-dbus-proxy.Tpo -c -o subprojects/dbus-proxy/flatpak_dbus_proxy-dbus-proxy.obj `if test -f 'subprojects/dbus-proxy/dbus-proxy.c'; then $(CYGPATH_W) 'subprojects/dbus-proxy/dbus-proxy.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/dbus-proxy/dbus-proxy.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-dbus-proxy.Tpo subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-dbus-proxy.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/dbus-proxy/dbus-proxy.c' object='subprojects/dbus-proxy/flatpak_dbus_proxy-dbus-proxy.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_dbus_proxy_CFLAGS) $(CFLAGS) -c -o subprojects/dbus-proxy/flatpak_dbus_proxy-dbus-proxy.obj `if test -f 'subprojects/dbus-proxy/dbus-proxy.c'; then $(CYGPATH_W) 'subprojects/dbus-proxy/dbus-proxy.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/dbus-proxy/dbus-proxy.c'; fi` - -oci-authenticator/flatpak_oci_authenticator-flatpak-oci-authenticator.o: oci-authenticator/flatpak-oci-authenticator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_oci_authenticator_CPPFLAGS) $(CPPFLAGS) $(flatpak_oci_authenticator_CFLAGS) $(CFLAGS) -MT oci-authenticator/flatpak_oci_authenticator-flatpak-oci-authenticator.o -MD -MP -MF oci-authenticator/$(DEPDIR)/flatpak_oci_authenticator-flatpak-oci-authenticator.Tpo -c -o oci-authenticator/flatpak_oci_authenticator-flatpak-oci-authenticator.o `test -f 'oci-authenticator/flatpak-oci-authenticator.c' || echo '$(srcdir)/'`oci-authenticator/flatpak-oci-authenticator.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) oci-authenticator/$(DEPDIR)/flatpak_oci_authenticator-flatpak-oci-authenticator.Tpo oci-authenticator/$(DEPDIR)/flatpak_oci_authenticator-flatpak-oci-authenticator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='oci-authenticator/flatpak-oci-authenticator.c' object='oci-authenticator/flatpak_oci_authenticator-flatpak-oci-authenticator.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_oci_authenticator_CPPFLAGS) $(CPPFLAGS) $(flatpak_oci_authenticator_CFLAGS) $(CFLAGS) -c -o oci-authenticator/flatpak_oci_authenticator-flatpak-oci-authenticator.o `test -f 'oci-authenticator/flatpak-oci-authenticator.c' || echo '$(srcdir)/'`oci-authenticator/flatpak-oci-authenticator.c - -oci-authenticator/flatpak_oci_authenticator-flatpak-oci-authenticator.obj: oci-authenticator/flatpak-oci-authenticator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_oci_authenticator_CPPFLAGS) $(CPPFLAGS) $(flatpak_oci_authenticator_CFLAGS) $(CFLAGS) -MT oci-authenticator/flatpak_oci_authenticator-flatpak-oci-authenticator.obj -MD -MP -MF oci-authenticator/$(DEPDIR)/flatpak_oci_authenticator-flatpak-oci-authenticator.Tpo -c -o oci-authenticator/flatpak_oci_authenticator-flatpak-oci-authenticator.obj `if test -f 'oci-authenticator/flatpak-oci-authenticator.c'; then $(CYGPATH_W) 'oci-authenticator/flatpak-oci-authenticator.c'; else $(CYGPATH_W) '$(srcdir)/oci-authenticator/flatpak-oci-authenticator.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) oci-authenticator/$(DEPDIR)/flatpak_oci_authenticator-flatpak-oci-authenticator.Tpo oci-authenticator/$(DEPDIR)/flatpak_oci_authenticator-flatpak-oci-authenticator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='oci-authenticator/flatpak-oci-authenticator.c' object='oci-authenticator/flatpak_oci_authenticator-flatpak-oci-authenticator.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_oci_authenticator_CPPFLAGS) $(CPPFLAGS) $(flatpak_oci_authenticator_CFLAGS) $(CFLAGS) -c -o oci-authenticator/flatpak_oci_authenticator-flatpak-oci-authenticator.obj `if test -f 'oci-authenticator/flatpak-oci-authenticator.c'; then $(CYGPATH_W) 'oci-authenticator/flatpak-oci-authenticator.c'; else $(CYGPATH_W) '$(srcdir)/oci-authenticator/flatpak-oci-authenticator.c'; fi` - -portal/flatpak_portal-flatpak-portal.o: portal/flatpak-portal.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -MT portal/flatpak_portal-flatpak-portal.o -MD -MP -MF portal/$(DEPDIR)/flatpak_portal-flatpak-portal.Tpo -c -o portal/flatpak_portal-flatpak-portal.o `test -f 'portal/flatpak-portal.c' || echo '$(srcdir)/'`portal/flatpak-portal.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/flatpak_portal-flatpak-portal.Tpo portal/$(DEPDIR)/flatpak_portal-flatpak-portal.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/flatpak-portal.c' object='portal/flatpak_portal-flatpak-portal.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -c -o portal/flatpak_portal-flatpak-portal.o `test -f 'portal/flatpak-portal.c' || echo '$(srcdir)/'`portal/flatpak-portal.c - -portal/flatpak_portal-flatpak-portal.obj: portal/flatpak-portal.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -MT portal/flatpak_portal-flatpak-portal.obj -MD -MP -MF portal/$(DEPDIR)/flatpak_portal-flatpak-portal.Tpo -c -o portal/flatpak_portal-flatpak-portal.obj `if test -f 'portal/flatpak-portal.c'; then $(CYGPATH_W) 'portal/flatpak-portal.c'; else $(CYGPATH_W) '$(srcdir)/portal/flatpak-portal.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/flatpak_portal-flatpak-portal.Tpo portal/$(DEPDIR)/flatpak_portal-flatpak-portal.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/flatpak-portal.c' object='portal/flatpak_portal-flatpak-portal.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -c -o portal/flatpak_portal-flatpak-portal.obj `if test -f 'portal/flatpak-portal.c'; then $(CYGPATH_W) 'portal/flatpak-portal.c'; else $(CYGPATH_W) '$(srcdir)/portal/flatpak-portal.c'; fi` - -portal/flatpak_portal-flatpak-portal-app-info.o: portal/flatpak-portal-app-info.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -MT portal/flatpak_portal-flatpak-portal-app-info.o -MD -MP -MF portal/$(DEPDIR)/flatpak_portal-flatpak-portal-app-info.Tpo -c -o portal/flatpak_portal-flatpak-portal-app-info.o `test -f 'portal/flatpak-portal-app-info.c' || echo '$(srcdir)/'`portal/flatpak-portal-app-info.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/flatpak_portal-flatpak-portal-app-info.Tpo portal/$(DEPDIR)/flatpak_portal-flatpak-portal-app-info.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/flatpak-portal-app-info.c' object='portal/flatpak_portal-flatpak-portal-app-info.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -c -o portal/flatpak_portal-flatpak-portal-app-info.o `test -f 'portal/flatpak-portal-app-info.c' || echo '$(srcdir)/'`portal/flatpak-portal-app-info.c - -portal/flatpak_portal-flatpak-portal-app-info.obj: portal/flatpak-portal-app-info.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -MT portal/flatpak_portal-flatpak-portal-app-info.obj -MD -MP -MF portal/$(DEPDIR)/flatpak_portal-flatpak-portal-app-info.Tpo -c -o portal/flatpak_portal-flatpak-portal-app-info.obj `if test -f 'portal/flatpak-portal-app-info.c'; then $(CYGPATH_W) 'portal/flatpak-portal-app-info.c'; else $(CYGPATH_W) '$(srcdir)/portal/flatpak-portal-app-info.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/flatpak_portal-flatpak-portal-app-info.Tpo portal/$(DEPDIR)/flatpak_portal-flatpak-portal-app-info.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/flatpak-portal-app-info.c' object='portal/flatpak_portal-flatpak-portal-app-info.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -c -o portal/flatpak_portal-flatpak-portal-app-info.obj `if test -f 'portal/flatpak-portal-app-info.c'; then $(CYGPATH_W) 'portal/flatpak-portal-app-info.c'; else $(CYGPATH_W) '$(srcdir)/portal/flatpak-portal-app-info.c'; fi` - -portal/flatpak_portal-portal-impl.o: portal/portal-impl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -MT portal/flatpak_portal-portal-impl.o -MD -MP -MF portal/$(DEPDIR)/flatpak_portal-portal-impl.Tpo -c -o portal/flatpak_portal-portal-impl.o `test -f 'portal/portal-impl.c' || echo '$(srcdir)/'`portal/portal-impl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/flatpak_portal-portal-impl.Tpo portal/$(DEPDIR)/flatpak_portal-portal-impl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/portal-impl.c' object='portal/flatpak_portal-portal-impl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -c -o portal/flatpak_portal-portal-impl.o `test -f 'portal/portal-impl.c' || echo '$(srcdir)/'`portal/portal-impl.c - -portal/flatpak_portal-portal-impl.obj: portal/portal-impl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -MT portal/flatpak_portal-portal-impl.obj -MD -MP -MF portal/$(DEPDIR)/flatpak_portal-portal-impl.Tpo -c -o portal/flatpak_portal-portal-impl.obj `if test -f 'portal/portal-impl.c'; then $(CYGPATH_W) 'portal/portal-impl.c'; else $(CYGPATH_W) '$(srcdir)/portal/portal-impl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/flatpak_portal-portal-impl.Tpo portal/$(DEPDIR)/flatpak_portal-portal-impl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/portal-impl.c' object='portal/flatpak_portal-portal-impl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -c -o portal/flatpak_portal-portal-impl.obj `if test -f 'portal/portal-impl.c'; then $(CYGPATH_W) 'portal/portal-impl.c'; else $(CYGPATH_W) '$(srcdir)/portal/portal-impl.c'; fi` - -common/flatpak_portal-flatpak-portal-error.o: common/flatpak-portal-error.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -MT common/flatpak_portal-flatpak-portal-error.o -MD -MP -MF common/$(DEPDIR)/flatpak_portal-flatpak-portal-error.Tpo -c -o common/flatpak_portal-flatpak-portal-error.o `test -f 'common/flatpak-portal-error.c' || echo '$(srcdir)/'`common/flatpak-portal-error.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/flatpak_portal-flatpak-portal-error.Tpo common/$(DEPDIR)/flatpak_portal-flatpak-portal-error.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-portal-error.c' object='common/flatpak_portal-flatpak-portal-error.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -c -o common/flatpak_portal-flatpak-portal-error.o `test -f 'common/flatpak-portal-error.c' || echo '$(srcdir)/'`common/flatpak-portal-error.c - -common/flatpak_portal-flatpak-portal-error.obj: common/flatpak-portal-error.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -MT common/flatpak_portal-flatpak-portal-error.obj -MD -MP -MF common/$(DEPDIR)/flatpak_portal-flatpak-portal-error.Tpo -c -o common/flatpak_portal-flatpak-portal-error.obj `if test -f 'common/flatpak-portal-error.c'; then $(CYGPATH_W) 'common/flatpak-portal-error.c'; else $(CYGPATH_W) '$(srcdir)/common/flatpak-portal-error.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/flatpak_portal-flatpak-portal-error.Tpo common/$(DEPDIR)/flatpak_portal-flatpak-portal-error.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/flatpak-portal-error.c' object='common/flatpak_portal-flatpak-portal-error.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -c -o common/flatpak_portal-flatpak-portal-error.obj `if test -f 'common/flatpak-portal-error.c'; then $(CYGPATH_W) 'common/flatpak-portal-error.c'; else $(CYGPATH_W) '$(srcdir)/common/flatpak-portal-error.c'; fi` - -portal/flatpak_portal-flatpak-permission-dbus.o: portal/flatpak-permission-dbus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -MT portal/flatpak_portal-flatpak-permission-dbus.o -MD -MP -MF portal/$(DEPDIR)/flatpak_portal-flatpak-permission-dbus.Tpo -c -o portal/flatpak_portal-flatpak-permission-dbus.o `test -f 'portal/flatpak-permission-dbus.c' || echo '$(srcdir)/'`portal/flatpak-permission-dbus.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/flatpak_portal-flatpak-permission-dbus.Tpo portal/$(DEPDIR)/flatpak_portal-flatpak-permission-dbus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/flatpak-permission-dbus.c' object='portal/flatpak_portal-flatpak-permission-dbus.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -c -o portal/flatpak_portal-flatpak-permission-dbus.o `test -f 'portal/flatpak-permission-dbus.c' || echo '$(srcdir)/'`portal/flatpak-permission-dbus.c - -portal/flatpak_portal-flatpak-permission-dbus.obj: portal/flatpak-permission-dbus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -MT portal/flatpak_portal-flatpak-permission-dbus.obj -MD -MP -MF portal/$(DEPDIR)/flatpak_portal-flatpak-permission-dbus.Tpo -c -o portal/flatpak_portal-flatpak-permission-dbus.obj `if test -f 'portal/flatpak-permission-dbus.c'; then $(CYGPATH_W) 'portal/flatpak-permission-dbus.c'; else $(CYGPATH_W) '$(srcdir)/portal/flatpak-permission-dbus.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/flatpak_portal-flatpak-permission-dbus.Tpo portal/$(DEPDIR)/flatpak_portal-flatpak-permission-dbus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/flatpak-permission-dbus.c' object='portal/flatpak_portal-flatpak-permission-dbus.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -c -o portal/flatpak_portal-flatpak-permission-dbus.obj `if test -f 'portal/flatpak-permission-dbus.c'; then $(CYGPATH_W) 'portal/flatpak-permission-dbus.c'; else $(CYGPATH_W) '$(srcdir)/portal/flatpak-permission-dbus.c'; fi` - -portal/flatpak_portal-flatpak-portal-dbus.o: portal/flatpak-portal-dbus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -MT portal/flatpak_portal-flatpak-portal-dbus.o -MD -MP -MF portal/$(DEPDIR)/flatpak_portal-flatpak-portal-dbus.Tpo -c -o portal/flatpak_portal-flatpak-portal-dbus.o `test -f 'portal/flatpak-portal-dbus.c' || echo '$(srcdir)/'`portal/flatpak-portal-dbus.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/flatpak_portal-flatpak-portal-dbus.Tpo portal/$(DEPDIR)/flatpak_portal-flatpak-portal-dbus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/flatpak-portal-dbus.c' object='portal/flatpak_portal-flatpak-portal-dbus.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -c -o portal/flatpak_portal-flatpak-portal-dbus.o `test -f 'portal/flatpak-portal-dbus.c' || echo '$(srcdir)/'`portal/flatpak-portal-dbus.c - -portal/flatpak_portal-flatpak-portal-dbus.obj: portal/flatpak-portal-dbus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -MT portal/flatpak_portal-flatpak-portal-dbus.obj -MD -MP -MF portal/$(DEPDIR)/flatpak_portal-flatpak-portal-dbus.Tpo -c -o portal/flatpak_portal-flatpak-portal-dbus.obj `if test -f 'portal/flatpak-portal-dbus.c'; then $(CYGPATH_W) 'portal/flatpak-portal-dbus.c'; else $(CYGPATH_W) '$(srcdir)/portal/flatpak-portal-dbus.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/flatpak_portal-flatpak-portal-dbus.Tpo portal/$(DEPDIR)/flatpak_portal-flatpak-portal-dbus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/flatpak-portal-dbus.c' object='portal/flatpak_portal-flatpak-portal-dbus.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(flatpak_portal_CPPFLAGS) $(CPPFLAGS) $(flatpak_portal_CFLAGS) $(CFLAGS) -c -o portal/flatpak_portal-flatpak-portal-dbus.obj `if test -f 'portal/flatpak-portal-dbus.c'; then $(CYGPATH_W) 'portal/flatpak-portal-dbus.c'; else $(CYGPATH_W) '$(srcdir)/portal/flatpak-portal-dbus.c'; fi` - -session-helper/flatpak_session_helper-flatpak-session-helper.o: session-helper/flatpak-session-helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_session_helper_CFLAGS) $(CFLAGS) -MT session-helper/flatpak_session_helper-flatpak-session-helper.o -MD -MP -MF session-helper/$(DEPDIR)/flatpak_session_helper-flatpak-session-helper.Tpo -c -o session-helper/flatpak_session_helper-flatpak-session-helper.o `test -f 'session-helper/flatpak-session-helper.c' || echo '$(srcdir)/'`session-helper/flatpak-session-helper.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) session-helper/$(DEPDIR)/flatpak_session_helper-flatpak-session-helper.Tpo session-helper/$(DEPDIR)/flatpak_session_helper-flatpak-session-helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='session-helper/flatpak-session-helper.c' object='session-helper/flatpak_session_helper-flatpak-session-helper.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_session_helper_CFLAGS) $(CFLAGS) -c -o session-helper/flatpak_session_helper-flatpak-session-helper.o `test -f 'session-helper/flatpak-session-helper.c' || echo '$(srcdir)/'`session-helper/flatpak-session-helper.c - -session-helper/flatpak_session_helper-flatpak-session-helper.obj: session-helper/flatpak-session-helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_session_helper_CFLAGS) $(CFLAGS) -MT session-helper/flatpak_session_helper-flatpak-session-helper.obj -MD -MP -MF session-helper/$(DEPDIR)/flatpak_session_helper-flatpak-session-helper.Tpo -c -o session-helper/flatpak_session_helper-flatpak-session-helper.obj `if test -f 'session-helper/flatpak-session-helper.c'; then $(CYGPATH_W) 'session-helper/flatpak-session-helper.c'; else $(CYGPATH_W) '$(srcdir)/session-helper/flatpak-session-helper.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) session-helper/$(DEPDIR)/flatpak_session_helper-flatpak-session-helper.Tpo session-helper/$(DEPDIR)/flatpak_session_helper-flatpak-session-helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='session-helper/flatpak-session-helper.c' object='session-helper/flatpak_session_helper-flatpak-session-helper.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_session_helper_CFLAGS) $(CFLAGS) -c -o session-helper/flatpak_session_helper-flatpak-session-helper.obj `if test -f 'session-helper/flatpak-session-helper.c'; then $(CYGPATH_W) 'session-helper/flatpak-session-helper.c'; else $(CYGPATH_W) '$(srcdir)/session-helper/flatpak-session-helper.c'; fi` - -system-helper/flatpak_system_helper-flatpak-system-helper.o: system-helper/flatpak-system-helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_system_helper_CFLAGS) $(CFLAGS) -MT system-helper/flatpak_system_helper-flatpak-system-helper.o -MD -MP -MF system-helper/$(DEPDIR)/flatpak_system_helper-flatpak-system-helper.Tpo -c -o system-helper/flatpak_system_helper-flatpak-system-helper.o `test -f 'system-helper/flatpak-system-helper.c' || echo '$(srcdir)/'`system-helper/flatpak-system-helper.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) system-helper/$(DEPDIR)/flatpak_system_helper-flatpak-system-helper.Tpo system-helper/$(DEPDIR)/flatpak_system_helper-flatpak-system-helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='system-helper/flatpak-system-helper.c' object='system-helper/flatpak_system_helper-flatpak-system-helper.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_system_helper_CFLAGS) $(CFLAGS) -c -o system-helper/flatpak_system_helper-flatpak-system-helper.o `test -f 'system-helper/flatpak-system-helper.c' || echo '$(srcdir)/'`system-helper/flatpak-system-helper.c - -system-helper/flatpak_system_helper-flatpak-system-helper.obj: system-helper/flatpak-system-helper.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_system_helper_CFLAGS) $(CFLAGS) -MT system-helper/flatpak_system_helper-flatpak-system-helper.obj -MD -MP -MF system-helper/$(DEPDIR)/flatpak_system_helper-flatpak-system-helper.Tpo -c -o system-helper/flatpak_system_helper-flatpak-system-helper.obj `if test -f 'system-helper/flatpak-system-helper.c'; then $(CYGPATH_W) 'system-helper/flatpak-system-helper.c'; else $(CYGPATH_W) '$(srcdir)/system-helper/flatpak-system-helper.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) system-helper/$(DEPDIR)/flatpak_system_helper-flatpak-system-helper.Tpo system-helper/$(DEPDIR)/flatpak_system_helper-flatpak-system-helper.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='system-helper/flatpak-system-helper.c' object='system-helper/flatpak_system_helper-flatpak-system-helper.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_system_helper_CFLAGS) $(CFLAGS) -c -o system-helper/flatpak_system_helper-flatpak-system-helper.obj `if test -f 'system-helper/flatpak-system-helper.c'; then $(CYGPATH_W) 'system-helper/flatpak-system-helper.c'; else $(CYGPATH_W) '$(srcdir)/system-helper/flatpak-system-helper.c'; fi` - -icon-validator/flatpak_validate_icon-validate-icon.o: icon-validator/validate-icon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_validate_icon_CFLAGS) $(CFLAGS) -MT icon-validator/flatpak_validate_icon-validate-icon.o -MD -MP -MF icon-validator/$(DEPDIR)/flatpak_validate_icon-validate-icon.Tpo -c -o icon-validator/flatpak_validate_icon-validate-icon.o `test -f 'icon-validator/validate-icon.c' || echo '$(srcdir)/'`icon-validator/validate-icon.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) icon-validator/$(DEPDIR)/flatpak_validate_icon-validate-icon.Tpo icon-validator/$(DEPDIR)/flatpak_validate_icon-validate-icon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='icon-validator/validate-icon.c' object='icon-validator/flatpak_validate_icon-validate-icon.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_validate_icon_CFLAGS) $(CFLAGS) -c -o icon-validator/flatpak_validate_icon-validate-icon.o `test -f 'icon-validator/validate-icon.c' || echo '$(srcdir)/'`icon-validator/validate-icon.c - -icon-validator/flatpak_validate_icon-validate-icon.obj: icon-validator/validate-icon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_validate_icon_CFLAGS) $(CFLAGS) -MT icon-validator/flatpak_validate_icon-validate-icon.obj -MD -MP -MF icon-validator/$(DEPDIR)/flatpak_validate_icon-validate-icon.Tpo -c -o icon-validator/flatpak_validate_icon-validate-icon.obj `if test -f 'icon-validator/validate-icon.c'; then $(CYGPATH_W) 'icon-validator/validate-icon.c'; else $(CYGPATH_W) '$(srcdir)/icon-validator/validate-icon.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) icon-validator/$(DEPDIR)/flatpak_validate_icon-validate-icon.Tpo icon-validator/$(DEPDIR)/flatpak_validate_icon-validate-icon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='icon-validator/validate-icon.c' object='icon-validator/flatpak_validate_icon-validate-icon.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flatpak_validate_icon_CFLAGS) $(CFLAGS) -c -o icon-validator/flatpak_validate_icon-validate-icon.obj `if test -f 'icon-validator/validate-icon.c'; then $(CYGPATH_W) 'icon-validator/validate-icon.c'; else $(CYGPATH_W) '$(srcdir)/icon-validator/validate-icon.c'; fi` - -revokefs/demo-demo.o: revokefs/demo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(revokefs_demo_CFLAGS) $(CFLAGS) -MT revokefs/demo-demo.o -MD -MP -MF revokefs/$(DEPDIR)/demo-demo.Tpo -c -o revokefs/demo-demo.o `test -f 'revokefs/demo.c' || echo '$(srcdir)/'`revokefs/demo.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) revokefs/$(DEPDIR)/demo-demo.Tpo revokefs/$(DEPDIR)/demo-demo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='revokefs/demo.c' object='revokefs/demo-demo.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(revokefs_demo_CFLAGS) $(CFLAGS) -c -o revokefs/demo-demo.o `test -f 'revokefs/demo.c' || echo '$(srcdir)/'`revokefs/demo.c - -revokefs/demo-demo.obj: revokefs/demo.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(revokefs_demo_CFLAGS) $(CFLAGS) -MT revokefs/demo-demo.obj -MD -MP -MF revokefs/$(DEPDIR)/demo-demo.Tpo -c -o revokefs/demo-demo.obj `if test -f 'revokefs/demo.c'; then $(CYGPATH_W) 'revokefs/demo.c'; else $(CYGPATH_W) '$(srcdir)/revokefs/demo.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) revokefs/$(DEPDIR)/demo-demo.Tpo revokefs/$(DEPDIR)/demo-demo.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='revokefs/demo.c' object='revokefs/demo-demo.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(revokefs_demo_CFLAGS) $(CFLAGS) -c -o revokefs/demo-demo.obj `if test -f 'revokefs/demo.c'; then $(CYGPATH_W) 'revokefs/demo.c'; else $(CYGPATH_W) '$(srcdir)/revokefs/demo.c'; fi` - -revokefs/fuse-main.o: revokefs/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(revokefs_fuse_CFLAGS) $(CFLAGS) -MT revokefs/fuse-main.o -MD -MP -MF revokefs/$(DEPDIR)/fuse-main.Tpo -c -o revokefs/fuse-main.o `test -f 'revokefs/main.c' || echo '$(srcdir)/'`revokefs/main.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) revokefs/$(DEPDIR)/fuse-main.Tpo revokefs/$(DEPDIR)/fuse-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='revokefs/main.c' object='revokefs/fuse-main.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(revokefs_fuse_CFLAGS) $(CFLAGS) -c -o revokefs/fuse-main.o `test -f 'revokefs/main.c' || echo '$(srcdir)/'`revokefs/main.c - -revokefs/fuse-main.obj: revokefs/main.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(revokefs_fuse_CFLAGS) $(CFLAGS) -MT revokefs/fuse-main.obj -MD -MP -MF revokefs/$(DEPDIR)/fuse-main.Tpo -c -o revokefs/fuse-main.obj `if test -f 'revokefs/main.c'; then $(CYGPATH_W) 'revokefs/main.c'; else $(CYGPATH_W) '$(srcdir)/revokefs/main.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) revokefs/$(DEPDIR)/fuse-main.Tpo revokefs/$(DEPDIR)/fuse-main.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='revokefs/main.c' object='revokefs/fuse-main.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(revokefs_fuse_CFLAGS) $(CFLAGS) -c -o revokefs/fuse-main.obj `if test -f 'revokefs/main.c'; then $(CYGPATH_W) 'revokefs/main.c'; else $(CYGPATH_W) '$(srcdir)/revokefs/main.c'; fi` - -revokefs/fuse-writer.o: revokefs/writer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(revokefs_fuse_CFLAGS) $(CFLAGS) -MT revokefs/fuse-writer.o -MD -MP -MF revokefs/$(DEPDIR)/fuse-writer.Tpo -c -o revokefs/fuse-writer.o `test -f 'revokefs/writer.c' || echo '$(srcdir)/'`revokefs/writer.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) revokefs/$(DEPDIR)/fuse-writer.Tpo revokefs/$(DEPDIR)/fuse-writer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='revokefs/writer.c' object='revokefs/fuse-writer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(revokefs_fuse_CFLAGS) $(CFLAGS) -c -o revokefs/fuse-writer.o `test -f 'revokefs/writer.c' || echo '$(srcdir)/'`revokefs/writer.c - -revokefs/fuse-writer.obj: revokefs/writer.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(revokefs_fuse_CFLAGS) $(CFLAGS) -MT revokefs/fuse-writer.obj -MD -MP -MF revokefs/$(DEPDIR)/fuse-writer.Tpo -c -o revokefs/fuse-writer.obj `if test -f 'revokefs/writer.c'; then $(CYGPATH_W) 'revokefs/writer.c'; else $(CYGPATH_W) '$(srcdir)/revokefs/writer.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) revokefs/$(DEPDIR)/fuse-writer.Tpo revokefs/$(DEPDIR)/fuse-writer.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='revokefs/writer.c' object='revokefs/fuse-writer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(revokefs_fuse_CFLAGS) $(CFLAGS) -c -o revokefs/fuse-writer.obj `if test -f 'revokefs/writer.c'; then $(CYGPATH_W) 'revokefs/writer.c'; else $(CYGPATH_W) '$(srcdir)/revokefs/writer.c'; fi` - -tests/test_context-test-context.o: tests/test-context.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_context_CFLAGS) $(CFLAGS) -MT tests/test_context-test-context.o -MD -MP -MF tests/$(DEPDIR)/test_context-test-context.Tpo -c -o tests/test_context-test-context.o `test -f 'tests/test-context.c' || echo '$(srcdir)/'`tests/test-context.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_context-test-context.Tpo tests/$(DEPDIR)/test_context-test-context.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-context.c' object='tests/test_context-test-context.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_context_CFLAGS) $(CFLAGS) -c -o tests/test_context-test-context.o `test -f 'tests/test-context.c' || echo '$(srcdir)/'`tests/test-context.c - -tests/test_context-test-context.obj: tests/test-context.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_context_CFLAGS) $(CFLAGS) -MT tests/test_context-test-context.obj -MD -MP -MF tests/$(DEPDIR)/test_context-test-context.Tpo -c -o tests/test_context-test-context.obj `if test -f 'tests/test-context.c'; then $(CYGPATH_W) 'tests/test-context.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-context.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_context-test-context.Tpo tests/$(DEPDIR)/test_context-test-context.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-context.c' object='tests/test_context-test-context.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_context_CFLAGS) $(CFLAGS) -c -o tests/test_context-test-context.obj `if test -f 'tests/test-context.c'; then $(CYGPATH_W) 'tests/test-context.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-context.c'; fi` - -tests/test_exports-test-exports.o: tests/test-exports.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_exports_CFLAGS) $(CFLAGS) -MT tests/test_exports-test-exports.o -MD -MP -MF tests/$(DEPDIR)/test_exports-test-exports.Tpo -c -o tests/test_exports-test-exports.o `test -f 'tests/test-exports.c' || echo '$(srcdir)/'`tests/test-exports.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_exports-test-exports.Tpo tests/$(DEPDIR)/test_exports-test-exports.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-exports.c' object='tests/test_exports-test-exports.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_exports_CFLAGS) $(CFLAGS) -c -o tests/test_exports-test-exports.o `test -f 'tests/test-exports.c' || echo '$(srcdir)/'`tests/test-exports.c - -tests/test_exports-test-exports.obj: tests/test-exports.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_exports_CFLAGS) $(CFLAGS) -MT tests/test_exports-test-exports.obj -MD -MP -MF tests/$(DEPDIR)/test_exports-test-exports.Tpo -c -o tests/test_exports-test-exports.obj `if test -f 'tests/test-exports.c'; then $(CYGPATH_W) 'tests/test-exports.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-exports.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_exports-test-exports.Tpo tests/$(DEPDIR)/test_exports-test-exports.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-exports.c' object='tests/test_exports-test-exports.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_exports_CFLAGS) $(CFLAGS) -c -o tests/test_exports-test-exports.obj `if test -f 'tests/test-exports.c'; then $(CYGPATH_W) 'tests/test-exports.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-exports.c'; fi` - -subprojects/libglnx/tests/test_instance-libglnx-testlib.o: subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_instance_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_instance-libglnx-testlib.o -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_instance-libglnx-testlib.Tpo -c -o subprojects/libglnx/tests/test_instance-libglnx-testlib.o `test -f 'subprojects/libglnx/tests/libglnx-testlib.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_instance-libglnx-testlib.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_instance-libglnx-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/libglnx-testlib.c' object='subprojects/libglnx/tests/test_instance-libglnx-testlib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_instance_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_instance-libglnx-testlib.o `test -f 'subprojects/libglnx/tests/libglnx-testlib.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/libglnx-testlib.c - -subprojects/libglnx/tests/test_instance-libglnx-testlib.obj: subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_instance_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_instance-libglnx-testlib.obj -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_instance-libglnx-testlib.Tpo -c -o subprojects/libglnx/tests/test_instance-libglnx-testlib.obj `if test -f 'subprojects/libglnx/tests/libglnx-testlib.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/libglnx-testlib.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/libglnx-testlib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_instance-libglnx-testlib.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_instance-libglnx-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/libglnx-testlib.c' object='subprojects/libglnx/tests/test_instance-libglnx-testlib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_instance_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_instance-libglnx-testlib.obj `if test -f 'subprojects/libglnx/tests/libglnx-testlib.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/libglnx-testlib.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/libglnx-testlib.c'; fi` - -tests/test_instance-test-instance.o: tests/test-instance.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_instance_CFLAGS) $(CFLAGS) -MT tests/test_instance-test-instance.o -MD -MP -MF tests/$(DEPDIR)/test_instance-test-instance.Tpo -c -o tests/test_instance-test-instance.o `test -f 'tests/test-instance.c' || echo '$(srcdir)/'`tests/test-instance.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_instance-test-instance.Tpo tests/$(DEPDIR)/test_instance-test-instance.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-instance.c' object='tests/test_instance-test-instance.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_instance_CFLAGS) $(CFLAGS) -c -o tests/test_instance-test-instance.o `test -f 'tests/test-instance.c' || echo '$(srcdir)/'`tests/test-instance.c - -tests/test_instance-test-instance.obj: tests/test-instance.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_instance_CFLAGS) $(CFLAGS) -MT tests/test_instance-test-instance.obj -MD -MP -MF tests/$(DEPDIR)/test_instance-test-instance.Tpo -c -o tests/test_instance-test-instance.obj `if test -f 'tests/test-instance.c'; then $(CYGPATH_W) 'tests/test-instance.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-instance.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_instance-test-instance.Tpo tests/$(DEPDIR)/test_instance-test-instance.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-instance.c' object='tests/test_instance-test-instance.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_instance_CFLAGS) $(CFLAGS) -c -o tests/test_instance-test-instance.obj `if test -f 'tests/test-instance.c'; then $(CYGPATH_W) 'tests/test-instance.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-instance.c'; fi` - -common/test_libflatpak-test-lib.o: common/test-lib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libflatpak_CFLAGS) $(CFLAGS) -MT common/test_libflatpak-test-lib.o -MD -MP -MF common/$(DEPDIR)/test_libflatpak-test-lib.Tpo -c -o common/test_libflatpak-test-lib.o `test -f 'common/test-lib.c' || echo '$(srcdir)/'`common/test-lib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/test_libflatpak-test-lib.Tpo common/$(DEPDIR)/test_libflatpak-test-lib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/test-lib.c' object='common/test_libflatpak-test-lib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libflatpak_CFLAGS) $(CFLAGS) -c -o common/test_libflatpak-test-lib.o `test -f 'common/test-lib.c' || echo '$(srcdir)/'`common/test-lib.c - -common/test_libflatpak-test-lib.obj: common/test-lib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libflatpak_CFLAGS) $(CFLAGS) -MT common/test_libflatpak-test-lib.obj -MD -MP -MF common/$(DEPDIR)/test_libflatpak-test-lib.Tpo -c -o common/test_libflatpak-test-lib.obj `if test -f 'common/test-lib.c'; then $(CYGPATH_W) 'common/test-lib.c'; else $(CYGPATH_W) '$(srcdir)/common/test-lib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) common/$(DEPDIR)/test_libflatpak-test-lib.Tpo common/$(DEPDIR)/test_libflatpak-test-lib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common/test-lib.c' object='common/test_libflatpak-test-lib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libflatpak_CFLAGS) $(CFLAGS) -c -o common/test_libflatpak-test-lib.obj `if test -f 'common/test-lib.c'; then $(CYGPATH_W) 'common/test-lib.c'; else $(CYGPATH_W) '$(srcdir)/common/test-lib.c'; fi` - -subprojects/libglnx/tests/test_libglnx_errors-libglnx-testlib.o: subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_errors_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_errors-libglnx-testlib.o -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-libglnx-testlib.Tpo -c -o subprojects/libglnx/tests/test_libglnx_errors-libglnx-testlib.o `test -f 'subprojects/libglnx/tests/libglnx-testlib.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-libglnx-testlib.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-libglnx-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/libglnx-testlib.c' object='subprojects/libglnx/tests/test_libglnx_errors-libglnx-testlib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_errors_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_errors-libglnx-testlib.o `test -f 'subprojects/libglnx/tests/libglnx-testlib.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/libglnx-testlib.c - -subprojects/libglnx/tests/test_libglnx_errors-libglnx-testlib.obj: subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_errors_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_errors-libglnx-testlib.obj -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-libglnx-testlib.Tpo -c -o subprojects/libglnx/tests/test_libglnx_errors-libglnx-testlib.obj `if test -f 'subprojects/libglnx/tests/libglnx-testlib.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/libglnx-testlib.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/libglnx-testlib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-libglnx-testlib.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-libglnx-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/libglnx-testlib.c' object='subprojects/libglnx/tests/test_libglnx_errors-libglnx-testlib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_errors_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_errors-libglnx-testlib.obj `if test -f 'subprojects/libglnx/tests/libglnx-testlib.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/libglnx-testlib.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/libglnx-testlib.c'; fi` - -subprojects/libglnx/tests/test_libglnx_errors-test-libglnx-errors.o: subprojects/libglnx/tests/test-libglnx-errors.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_errors_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_errors-test-libglnx-errors.o -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-test-libglnx-errors.Tpo -c -o subprojects/libglnx/tests/test_libglnx_errors-test-libglnx-errors.o `test -f 'subprojects/libglnx/tests/test-libglnx-errors.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/test-libglnx-errors.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-test-libglnx-errors.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-test-libglnx-errors.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/test-libglnx-errors.c' object='subprojects/libglnx/tests/test_libglnx_errors-test-libglnx-errors.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_errors_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_errors-test-libglnx-errors.o `test -f 'subprojects/libglnx/tests/test-libglnx-errors.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/test-libglnx-errors.c - -subprojects/libglnx/tests/test_libglnx_errors-test-libglnx-errors.obj: subprojects/libglnx/tests/test-libglnx-errors.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_errors_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_errors-test-libglnx-errors.obj -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-test-libglnx-errors.Tpo -c -o subprojects/libglnx/tests/test_libglnx_errors-test-libglnx-errors.obj `if test -f 'subprojects/libglnx/tests/test-libglnx-errors.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/test-libglnx-errors.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/test-libglnx-errors.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-test-libglnx-errors.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-test-libglnx-errors.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/test-libglnx-errors.c' object='subprojects/libglnx/tests/test_libglnx_errors-test-libglnx-errors.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_errors_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_errors-test-libglnx-errors.obj `if test -f 'subprojects/libglnx/tests/test-libglnx-errors.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/test-libglnx-errors.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/test-libglnx-errors.c'; fi` - -subprojects/libglnx/tests/test_libglnx_fdio-libglnx-testlib.o: subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_fdio_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_fdio-libglnx-testlib.o -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-libglnx-testlib.Tpo -c -o subprojects/libglnx/tests/test_libglnx_fdio-libglnx-testlib.o `test -f 'subprojects/libglnx/tests/libglnx-testlib.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-libglnx-testlib.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-libglnx-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/libglnx-testlib.c' object='subprojects/libglnx/tests/test_libglnx_fdio-libglnx-testlib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_fdio_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_fdio-libglnx-testlib.o `test -f 'subprojects/libglnx/tests/libglnx-testlib.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/libglnx-testlib.c - -subprojects/libglnx/tests/test_libglnx_fdio-libglnx-testlib.obj: subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_fdio_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_fdio-libglnx-testlib.obj -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-libglnx-testlib.Tpo -c -o subprojects/libglnx/tests/test_libglnx_fdio-libglnx-testlib.obj `if test -f 'subprojects/libglnx/tests/libglnx-testlib.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/libglnx-testlib.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/libglnx-testlib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-libglnx-testlib.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-libglnx-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/libglnx-testlib.c' object='subprojects/libglnx/tests/test_libglnx_fdio-libglnx-testlib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_fdio_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_fdio-libglnx-testlib.obj `if test -f 'subprojects/libglnx/tests/libglnx-testlib.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/libglnx-testlib.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/libglnx-testlib.c'; fi` - -subprojects/libglnx/tests/test_libglnx_fdio-test-libglnx-fdio.o: subprojects/libglnx/tests/test-libglnx-fdio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_fdio_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_fdio-test-libglnx-fdio.o -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-test-libglnx-fdio.Tpo -c -o subprojects/libglnx/tests/test_libglnx_fdio-test-libglnx-fdio.o `test -f 'subprojects/libglnx/tests/test-libglnx-fdio.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/test-libglnx-fdio.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-test-libglnx-fdio.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-test-libglnx-fdio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/test-libglnx-fdio.c' object='subprojects/libglnx/tests/test_libglnx_fdio-test-libglnx-fdio.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_fdio_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_fdio-test-libglnx-fdio.o `test -f 'subprojects/libglnx/tests/test-libglnx-fdio.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/test-libglnx-fdio.c - -subprojects/libglnx/tests/test_libglnx_fdio-test-libglnx-fdio.obj: subprojects/libglnx/tests/test-libglnx-fdio.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_fdio_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_fdio-test-libglnx-fdio.obj -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-test-libglnx-fdio.Tpo -c -o subprojects/libglnx/tests/test_libglnx_fdio-test-libglnx-fdio.obj `if test -f 'subprojects/libglnx/tests/test-libglnx-fdio.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/test-libglnx-fdio.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/test-libglnx-fdio.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-test-libglnx-fdio.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-test-libglnx-fdio.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/test-libglnx-fdio.c' object='subprojects/libglnx/tests/test_libglnx_fdio-test-libglnx-fdio.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_fdio_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_fdio-test-libglnx-fdio.obj `if test -f 'subprojects/libglnx/tests/test-libglnx-fdio.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/test-libglnx-fdio.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/test-libglnx-fdio.c'; fi` - -subprojects/libglnx/tests/test_libglnx_macros-libglnx-testlib.o: subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_macros_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_macros-libglnx-testlib.o -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-libglnx-testlib.Tpo -c -o subprojects/libglnx/tests/test_libglnx_macros-libglnx-testlib.o `test -f 'subprojects/libglnx/tests/libglnx-testlib.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-libglnx-testlib.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-libglnx-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/libglnx-testlib.c' object='subprojects/libglnx/tests/test_libglnx_macros-libglnx-testlib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_macros_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_macros-libglnx-testlib.o `test -f 'subprojects/libglnx/tests/libglnx-testlib.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/libglnx-testlib.c - -subprojects/libglnx/tests/test_libglnx_macros-libglnx-testlib.obj: subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_macros_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_macros-libglnx-testlib.obj -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-libglnx-testlib.Tpo -c -o subprojects/libglnx/tests/test_libglnx_macros-libglnx-testlib.obj `if test -f 'subprojects/libglnx/tests/libglnx-testlib.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/libglnx-testlib.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/libglnx-testlib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-libglnx-testlib.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-libglnx-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/libglnx-testlib.c' object='subprojects/libglnx/tests/test_libglnx_macros-libglnx-testlib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_macros_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_macros-libglnx-testlib.obj `if test -f 'subprojects/libglnx/tests/libglnx-testlib.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/libglnx-testlib.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/libglnx-testlib.c'; fi` - -subprojects/libglnx/tests/test_libglnx_macros-test-libglnx-macros.o: subprojects/libglnx/tests/test-libglnx-macros.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_macros_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_macros-test-libglnx-macros.o -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-test-libglnx-macros.Tpo -c -o subprojects/libglnx/tests/test_libglnx_macros-test-libglnx-macros.o `test -f 'subprojects/libglnx/tests/test-libglnx-macros.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/test-libglnx-macros.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-test-libglnx-macros.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-test-libglnx-macros.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/test-libglnx-macros.c' object='subprojects/libglnx/tests/test_libglnx_macros-test-libglnx-macros.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_macros_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_macros-test-libglnx-macros.o `test -f 'subprojects/libglnx/tests/test-libglnx-macros.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/test-libglnx-macros.c - -subprojects/libglnx/tests/test_libglnx_macros-test-libglnx-macros.obj: subprojects/libglnx/tests/test-libglnx-macros.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_macros_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_macros-test-libglnx-macros.obj -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-test-libglnx-macros.Tpo -c -o subprojects/libglnx/tests/test_libglnx_macros-test-libglnx-macros.obj `if test -f 'subprojects/libglnx/tests/test-libglnx-macros.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/test-libglnx-macros.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/test-libglnx-macros.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-test-libglnx-macros.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-test-libglnx-macros.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/test-libglnx-macros.c' object='subprojects/libglnx/tests/test_libglnx_macros-test-libglnx-macros.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_macros_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_macros-test-libglnx-macros.obj `if test -f 'subprojects/libglnx/tests/test-libglnx-macros.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/test-libglnx-macros.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/test-libglnx-macros.c'; fi` - -subprojects/libglnx/tests/test_libglnx_shutil-libglnx-testlib.o: subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_shutil_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_shutil-libglnx-testlib.o -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-libglnx-testlib.Tpo -c -o subprojects/libglnx/tests/test_libglnx_shutil-libglnx-testlib.o `test -f 'subprojects/libglnx/tests/libglnx-testlib.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-libglnx-testlib.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-libglnx-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/libglnx-testlib.c' object='subprojects/libglnx/tests/test_libglnx_shutil-libglnx-testlib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_shutil_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_shutil-libglnx-testlib.o `test -f 'subprojects/libglnx/tests/libglnx-testlib.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/libglnx-testlib.c - -subprojects/libglnx/tests/test_libglnx_shutil-libglnx-testlib.obj: subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_shutil_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_shutil-libglnx-testlib.obj -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-libglnx-testlib.Tpo -c -o subprojects/libglnx/tests/test_libglnx_shutil-libglnx-testlib.obj `if test -f 'subprojects/libglnx/tests/libglnx-testlib.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/libglnx-testlib.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/libglnx-testlib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-libglnx-testlib.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-libglnx-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/libglnx-testlib.c' object='subprojects/libglnx/tests/test_libglnx_shutil-libglnx-testlib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_shutil_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_shutil-libglnx-testlib.obj `if test -f 'subprojects/libglnx/tests/libglnx-testlib.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/libglnx-testlib.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/libglnx-testlib.c'; fi` - -subprojects/libglnx/tests/test_libglnx_shutil-test-libglnx-shutil.o: subprojects/libglnx/tests/test-libglnx-shutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_shutil_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_shutil-test-libglnx-shutil.o -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-test-libglnx-shutil.Tpo -c -o subprojects/libglnx/tests/test_libglnx_shutil-test-libglnx-shutil.o `test -f 'subprojects/libglnx/tests/test-libglnx-shutil.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/test-libglnx-shutil.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-test-libglnx-shutil.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-test-libglnx-shutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/test-libglnx-shutil.c' object='subprojects/libglnx/tests/test_libglnx_shutil-test-libglnx-shutil.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_shutil_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_shutil-test-libglnx-shutil.o `test -f 'subprojects/libglnx/tests/test-libglnx-shutil.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/test-libglnx-shutil.c - -subprojects/libglnx/tests/test_libglnx_shutil-test-libglnx-shutil.obj: subprojects/libglnx/tests/test-libglnx-shutil.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_shutil_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_shutil-test-libglnx-shutil.obj -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-test-libglnx-shutil.Tpo -c -o subprojects/libglnx/tests/test_libglnx_shutil-test-libglnx-shutil.obj `if test -f 'subprojects/libglnx/tests/test-libglnx-shutil.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/test-libglnx-shutil.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/test-libglnx-shutil.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-test-libglnx-shutil.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-test-libglnx-shutil.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/test-libglnx-shutil.c' object='subprojects/libglnx/tests/test_libglnx_shutil-test-libglnx-shutil.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_shutil_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_shutil-test-libglnx-shutil.obj `if test -f 'subprojects/libglnx/tests/test-libglnx-shutil.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/test-libglnx-shutil.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/test-libglnx-shutil.c'; fi` - -subprojects/libglnx/tests/test_libglnx_xattrs-libglnx-testlib.o: subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_xattrs_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_xattrs-libglnx-testlib.o -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-libglnx-testlib.Tpo -c -o subprojects/libglnx/tests/test_libglnx_xattrs-libglnx-testlib.o `test -f 'subprojects/libglnx/tests/libglnx-testlib.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-libglnx-testlib.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-libglnx-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/libglnx-testlib.c' object='subprojects/libglnx/tests/test_libglnx_xattrs-libglnx-testlib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_xattrs_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_xattrs-libglnx-testlib.o `test -f 'subprojects/libglnx/tests/libglnx-testlib.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/libglnx-testlib.c - -subprojects/libglnx/tests/test_libglnx_xattrs-libglnx-testlib.obj: subprojects/libglnx/tests/libglnx-testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_xattrs_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_xattrs-libglnx-testlib.obj -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-libglnx-testlib.Tpo -c -o subprojects/libglnx/tests/test_libglnx_xattrs-libglnx-testlib.obj `if test -f 'subprojects/libglnx/tests/libglnx-testlib.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/libglnx-testlib.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/libglnx-testlib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-libglnx-testlib.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-libglnx-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/libglnx-testlib.c' object='subprojects/libglnx/tests/test_libglnx_xattrs-libglnx-testlib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_xattrs_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_xattrs-libglnx-testlib.obj `if test -f 'subprojects/libglnx/tests/libglnx-testlib.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/libglnx-testlib.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/libglnx-testlib.c'; fi` - -subprojects/libglnx/tests/test_libglnx_xattrs-test-libglnx-xattrs.o: subprojects/libglnx/tests/test-libglnx-xattrs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_xattrs_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_xattrs-test-libglnx-xattrs.o -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-test-libglnx-xattrs.Tpo -c -o subprojects/libglnx/tests/test_libglnx_xattrs-test-libglnx-xattrs.o `test -f 'subprojects/libglnx/tests/test-libglnx-xattrs.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/test-libglnx-xattrs.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-test-libglnx-xattrs.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-test-libglnx-xattrs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/test-libglnx-xattrs.c' object='subprojects/libglnx/tests/test_libglnx_xattrs-test-libglnx-xattrs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_xattrs_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_xattrs-test-libglnx-xattrs.o `test -f 'subprojects/libglnx/tests/test-libglnx-xattrs.c' || echo '$(srcdir)/'`subprojects/libglnx/tests/test-libglnx-xattrs.c - -subprojects/libglnx/tests/test_libglnx_xattrs-test-libglnx-xattrs.obj: subprojects/libglnx/tests/test-libglnx-xattrs.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_xattrs_CFLAGS) $(CFLAGS) -MT subprojects/libglnx/tests/test_libglnx_xattrs-test-libglnx-xattrs.obj -MD -MP -MF subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-test-libglnx-xattrs.Tpo -c -o subprojects/libglnx/tests/test_libglnx_xattrs-test-libglnx-xattrs.obj `if test -f 'subprojects/libglnx/tests/test-libglnx-xattrs.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/test-libglnx-xattrs.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/test-libglnx-xattrs.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-test-libglnx-xattrs.Tpo subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-test-libglnx-xattrs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='subprojects/libglnx/tests/test-libglnx-xattrs.c' object='subprojects/libglnx/tests/test_libglnx_xattrs-test-libglnx-xattrs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_libglnx_xattrs_CFLAGS) $(CFLAGS) -c -o subprojects/libglnx/tests/test_libglnx_xattrs-test-libglnx-xattrs.obj `if test -f 'subprojects/libglnx/tests/test-libglnx-xattrs.c'; then $(CYGPATH_W) 'subprojects/libglnx/tests/test-libglnx-xattrs.c'; else $(CYGPATH_W) '$(srcdir)/subprojects/libglnx/tests/test-libglnx-xattrs.c'; fi` - -tests/test_portal-test-portal.o: tests/test-portal.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_portal_CFLAGS) $(CFLAGS) -MT tests/test_portal-test-portal.o -MD -MP -MF tests/$(DEPDIR)/test_portal-test-portal.Tpo -c -o tests/test_portal-test-portal.o `test -f 'tests/test-portal.c' || echo '$(srcdir)/'`tests/test-portal.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_portal-test-portal.Tpo tests/$(DEPDIR)/test_portal-test-portal.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-portal.c' object='tests/test_portal-test-portal.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_portal_CFLAGS) $(CFLAGS) -c -o tests/test_portal-test-portal.o `test -f 'tests/test-portal.c' || echo '$(srcdir)/'`tests/test-portal.c - -tests/test_portal-test-portal.obj: tests/test-portal.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_portal_CFLAGS) $(CFLAGS) -MT tests/test_portal-test-portal.obj -MD -MP -MF tests/$(DEPDIR)/test_portal-test-portal.Tpo -c -o tests/test_portal-test-portal.obj `if test -f 'tests/test-portal.c'; then $(CYGPATH_W) 'tests/test-portal.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-portal.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_portal-test-portal.Tpo tests/$(DEPDIR)/test_portal-test-portal.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-portal.c' object='tests/test_portal-test-portal.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_portal_CFLAGS) $(CFLAGS) -c -o tests/test_portal-test-portal.obj `if test -f 'tests/test-portal.c'; then $(CYGPATH_W) 'tests/test-portal.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-portal.c'; fi` - -portal/test_portal-flatpak-portal-dbus.o: portal/flatpak-portal-dbus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_portal_CFLAGS) $(CFLAGS) -MT portal/test_portal-flatpak-portal-dbus.o -MD -MP -MF portal/$(DEPDIR)/test_portal-flatpak-portal-dbus.Tpo -c -o portal/test_portal-flatpak-portal-dbus.o `test -f 'portal/flatpak-portal-dbus.c' || echo '$(srcdir)/'`portal/flatpak-portal-dbus.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/test_portal-flatpak-portal-dbus.Tpo portal/$(DEPDIR)/test_portal-flatpak-portal-dbus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/flatpak-portal-dbus.c' object='portal/test_portal-flatpak-portal-dbus.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_portal_CFLAGS) $(CFLAGS) -c -o portal/test_portal-flatpak-portal-dbus.o `test -f 'portal/flatpak-portal-dbus.c' || echo '$(srcdir)/'`portal/flatpak-portal-dbus.c - -portal/test_portal-flatpak-portal-dbus.obj: portal/flatpak-portal-dbus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_portal_CFLAGS) $(CFLAGS) -MT portal/test_portal-flatpak-portal-dbus.obj -MD -MP -MF portal/$(DEPDIR)/test_portal-flatpak-portal-dbus.Tpo -c -o portal/test_portal-flatpak-portal-dbus.obj `if test -f 'portal/flatpak-portal-dbus.c'; then $(CYGPATH_W) 'portal/flatpak-portal-dbus.c'; else $(CYGPATH_W) '$(srcdir)/portal/flatpak-portal-dbus.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/test_portal-flatpak-portal-dbus.Tpo portal/$(DEPDIR)/test_portal-flatpak-portal-dbus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/flatpak-portal-dbus.c' object='portal/test_portal-flatpak-portal-dbus.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_portal_CFLAGS) $(CFLAGS) -c -o portal/test_portal-flatpak-portal-dbus.obj `if test -f 'portal/flatpak-portal-dbus.c'; then $(CYGPATH_W) 'portal/flatpak-portal-dbus.c'; else $(CYGPATH_W) '$(srcdir)/portal/flatpak-portal-dbus.c'; fi` - -tests/testcommon-testcommon.o: tests/testcommon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testcommon_CFLAGS) $(CFLAGS) -MT tests/testcommon-testcommon.o -MD -MP -MF tests/$(DEPDIR)/testcommon-testcommon.Tpo -c -o tests/testcommon-testcommon.o `test -f 'tests/testcommon.c' || echo '$(srcdir)/'`tests/testcommon.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/testcommon-testcommon.Tpo tests/$(DEPDIR)/testcommon-testcommon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/testcommon.c' object='tests/testcommon-testcommon.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testcommon_CFLAGS) $(CFLAGS) -c -o tests/testcommon-testcommon.o `test -f 'tests/testcommon.c' || echo '$(srcdir)/'`tests/testcommon.c - -tests/testcommon-testcommon.obj: tests/testcommon.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testcommon_CFLAGS) $(CFLAGS) -MT tests/testcommon-testcommon.obj -MD -MP -MF tests/$(DEPDIR)/testcommon-testcommon.Tpo -c -o tests/testcommon-testcommon.obj `if test -f 'tests/testcommon.c'; then $(CYGPATH_W) 'tests/testcommon.c'; else $(CYGPATH_W) '$(srcdir)/tests/testcommon.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/testcommon-testcommon.Tpo tests/$(DEPDIR)/testcommon-testcommon.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/testcommon.c' object='tests/testcommon-testcommon.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testcommon_CFLAGS) $(CFLAGS) -c -o tests/testcommon-testcommon.obj `if test -f 'tests/testcommon.c'; then $(CYGPATH_W) 'tests/testcommon.c'; else $(CYGPATH_W) '$(srcdir)/tests/testcommon.c'; fi` - -tests/testlibrary-can-use-fuse.o: tests/can-use-fuse.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testlibrary_CFLAGS) $(CFLAGS) -MT tests/testlibrary-can-use-fuse.o -MD -MP -MF tests/$(DEPDIR)/testlibrary-can-use-fuse.Tpo -c -o tests/testlibrary-can-use-fuse.o `test -f 'tests/can-use-fuse.c' || echo '$(srcdir)/'`tests/can-use-fuse.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/testlibrary-can-use-fuse.Tpo tests/$(DEPDIR)/testlibrary-can-use-fuse.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/can-use-fuse.c' object='tests/testlibrary-can-use-fuse.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testlibrary_CFLAGS) $(CFLAGS) -c -o tests/testlibrary-can-use-fuse.o `test -f 'tests/can-use-fuse.c' || echo '$(srcdir)/'`tests/can-use-fuse.c - -tests/testlibrary-can-use-fuse.obj: tests/can-use-fuse.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testlibrary_CFLAGS) $(CFLAGS) -MT tests/testlibrary-can-use-fuse.obj -MD -MP -MF tests/$(DEPDIR)/testlibrary-can-use-fuse.Tpo -c -o tests/testlibrary-can-use-fuse.obj `if test -f 'tests/can-use-fuse.c'; then $(CYGPATH_W) 'tests/can-use-fuse.c'; else $(CYGPATH_W) '$(srcdir)/tests/can-use-fuse.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/testlibrary-can-use-fuse.Tpo tests/$(DEPDIR)/testlibrary-can-use-fuse.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/can-use-fuse.c' object='tests/testlibrary-can-use-fuse.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testlibrary_CFLAGS) $(CFLAGS) -c -o tests/testlibrary-can-use-fuse.obj `if test -f 'tests/can-use-fuse.c'; then $(CYGPATH_W) 'tests/can-use-fuse.c'; else $(CYGPATH_W) '$(srcdir)/tests/can-use-fuse.c'; fi` - -tests/testlibrary-testlib.o: tests/testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testlibrary_CFLAGS) $(CFLAGS) -MT tests/testlibrary-testlib.o -MD -MP -MF tests/$(DEPDIR)/testlibrary-testlib.Tpo -c -o tests/testlibrary-testlib.o `test -f 'tests/testlib.c' || echo '$(srcdir)/'`tests/testlib.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/testlibrary-testlib.Tpo tests/$(DEPDIR)/testlibrary-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/testlib.c' object='tests/testlibrary-testlib.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testlibrary_CFLAGS) $(CFLAGS) -c -o tests/testlibrary-testlib.o `test -f 'tests/testlib.c' || echo '$(srcdir)/'`tests/testlib.c - -tests/testlibrary-testlib.obj: tests/testlib.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testlibrary_CFLAGS) $(CFLAGS) -MT tests/testlibrary-testlib.obj -MD -MP -MF tests/$(DEPDIR)/testlibrary-testlib.Tpo -c -o tests/testlibrary-testlib.obj `if test -f 'tests/testlib.c'; then $(CYGPATH_W) 'tests/testlib.c'; else $(CYGPATH_W) '$(srcdir)/tests/testlib.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/testlibrary-testlib.Tpo tests/$(DEPDIR)/testlibrary-testlib.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/testlib.c' object='tests/testlibrary-testlib.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testlibrary_CFLAGS) $(CFLAGS) -c -o tests/testlibrary-testlib.obj `if test -f 'tests/testlib.c'; then $(CYGPATH_W) 'tests/testlib.c'; else $(CYGPATH_W) '$(srcdir)/tests/testlib.c'; fi` - -tests/testlibrary-testlibrary.o: tests/testlibrary.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testlibrary_CFLAGS) $(CFLAGS) -MT tests/testlibrary-testlibrary.o -MD -MP -MF tests/$(DEPDIR)/testlibrary-testlibrary.Tpo -c -o tests/testlibrary-testlibrary.o `test -f 'tests/testlibrary.c' || echo '$(srcdir)/'`tests/testlibrary.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/testlibrary-testlibrary.Tpo tests/$(DEPDIR)/testlibrary-testlibrary.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/testlibrary.c' object='tests/testlibrary-testlibrary.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testlibrary_CFLAGS) $(CFLAGS) -c -o tests/testlibrary-testlibrary.o `test -f 'tests/testlibrary.c' || echo '$(srcdir)/'`tests/testlibrary.c - -tests/testlibrary-testlibrary.obj: tests/testlibrary.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testlibrary_CFLAGS) $(CFLAGS) -MT tests/testlibrary-testlibrary.obj -MD -MP -MF tests/$(DEPDIR)/testlibrary-testlibrary.Tpo -c -o tests/testlibrary-testlibrary.obj `if test -f 'tests/testlibrary.c'; then $(CYGPATH_W) 'tests/testlibrary.c'; else $(CYGPATH_W) '$(srcdir)/tests/testlibrary.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/testlibrary-testlibrary.Tpo tests/$(DEPDIR)/testlibrary-testlibrary.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/testlibrary.c' object='tests/testlibrary-testlibrary.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(testlibrary_CFLAGS) $(CFLAGS) -c -o tests/testlibrary-testlibrary.obj `if test -f 'tests/testlibrary.c'; then $(CYGPATH_W) 'tests/testlibrary.c'; else $(CYGPATH_W) '$(srcdir)/tests/testlibrary.c'; fi` - -tests/hold_lock-hold-lock.o: tests/hold-lock.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_hold_lock_CFLAGS) $(CFLAGS) -MT tests/hold_lock-hold-lock.o -MD -MP -MF tests/$(DEPDIR)/hold_lock-hold-lock.Tpo -c -o tests/hold_lock-hold-lock.o `test -f 'tests/hold-lock.c' || echo '$(srcdir)/'`tests/hold-lock.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/hold_lock-hold-lock.Tpo tests/$(DEPDIR)/hold_lock-hold-lock.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/hold-lock.c' object='tests/hold_lock-hold-lock.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_hold_lock_CFLAGS) $(CFLAGS) -c -o tests/hold_lock-hold-lock.o `test -f 'tests/hold-lock.c' || echo '$(srcdir)/'`tests/hold-lock.c - -tests/hold_lock-hold-lock.obj: tests/hold-lock.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_hold_lock_CFLAGS) $(CFLAGS) -MT tests/hold_lock-hold-lock.obj -MD -MP -MF tests/$(DEPDIR)/hold_lock-hold-lock.Tpo -c -o tests/hold_lock-hold-lock.obj `if test -f 'tests/hold-lock.c'; then $(CYGPATH_W) 'tests/hold-lock.c'; else $(CYGPATH_W) '$(srcdir)/tests/hold-lock.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/hold_lock-hold-lock.Tpo tests/$(DEPDIR)/hold_lock-hold-lock.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/hold-lock.c' object='tests/hold_lock-hold-lock.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_hold_lock_CFLAGS) $(CFLAGS) -c -o tests/hold_lock-hold-lock.obj `if test -f 'tests/hold-lock.c'; then $(CYGPATH_W) 'tests/hold-lock.c'; else $(CYGPATH_W) '$(srcdir)/tests/hold-lock.c'; fi` - -tests/httpcache-httpcache.o: tests/httpcache.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_httpcache_CFLAGS) $(CFLAGS) -MT tests/httpcache-httpcache.o -MD -MP -MF tests/$(DEPDIR)/httpcache-httpcache.Tpo -c -o tests/httpcache-httpcache.o `test -f 'tests/httpcache.c' || echo '$(srcdir)/'`tests/httpcache.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/httpcache-httpcache.Tpo tests/$(DEPDIR)/httpcache-httpcache.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/httpcache.c' object='tests/httpcache-httpcache.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_httpcache_CFLAGS) $(CFLAGS) -c -o tests/httpcache-httpcache.o `test -f 'tests/httpcache.c' || echo '$(srcdir)/'`tests/httpcache.c - -tests/httpcache-httpcache.obj: tests/httpcache.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_httpcache_CFLAGS) $(CFLAGS) -MT tests/httpcache-httpcache.obj -MD -MP -MF tests/$(DEPDIR)/httpcache-httpcache.Tpo -c -o tests/httpcache-httpcache.obj `if test -f 'tests/httpcache.c'; then $(CYGPATH_W) 'tests/httpcache.c'; else $(CYGPATH_W) '$(srcdir)/tests/httpcache.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/httpcache-httpcache.Tpo tests/$(DEPDIR)/httpcache-httpcache.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/httpcache.c' object='tests/httpcache-httpcache.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_httpcache_CFLAGS) $(CFLAGS) -c -o tests/httpcache-httpcache.obj `if test -f 'tests/httpcache.c'; then $(CYGPATH_W) 'tests/httpcache.c'; else $(CYGPATH_W) '$(srcdir)/tests/httpcache.c'; fi` - -tests/list_unused-list-unused.o: tests/list-unused.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_list_unused_CFLAGS) $(CFLAGS) -MT tests/list_unused-list-unused.o -MD -MP -MF tests/$(DEPDIR)/list_unused-list-unused.Tpo -c -o tests/list_unused-list-unused.o `test -f 'tests/list-unused.c' || echo '$(srcdir)/'`tests/list-unused.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/list_unused-list-unused.Tpo tests/$(DEPDIR)/list_unused-list-unused.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/list-unused.c' object='tests/list_unused-list-unused.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_list_unused_CFLAGS) $(CFLAGS) -c -o tests/list_unused-list-unused.o `test -f 'tests/list-unused.c' || echo '$(srcdir)/'`tests/list-unused.c - -tests/list_unused-list-unused.obj: tests/list-unused.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_list_unused_CFLAGS) $(CFLAGS) -MT tests/list_unused-list-unused.obj -MD -MP -MF tests/$(DEPDIR)/list_unused-list-unused.Tpo -c -o tests/list_unused-list-unused.obj `if test -f 'tests/list-unused.c'; then $(CYGPATH_W) 'tests/list-unused.c'; else $(CYGPATH_W) '$(srcdir)/tests/list-unused.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/list_unused-list-unused.Tpo tests/$(DEPDIR)/list_unused-list-unused.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/list-unused.c' object='tests/list_unused-list-unused.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_list_unused_CFLAGS) $(CFLAGS) -c -o tests/list_unused-list-unused.obj `if test -f 'tests/list-unused.c'; then $(CYGPATH_W) 'tests/list-unused.c'; else $(CYGPATH_W) '$(srcdir)/tests/list-unused.c'; fi` - -tests/mock_flatpak-mock-flatpak.o: tests/mock-flatpak.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_mock_flatpak_CFLAGS) $(CFLAGS) -MT tests/mock_flatpak-mock-flatpak.o -MD -MP -MF tests/$(DEPDIR)/mock_flatpak-mock-flatpak.Tpo -c -o tests/mock_flatpak-mock-flatpak.o `test -f 'tests/mock-flatpak.c' || echo '$(srcdir)/'`tests/mock-flatpak.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/mock_flatpak-mock-flatpak.Tpo tests/$(DEPDIR)/mock_flatpak-mock-flatpak.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/mock-flatpak.c' object='tests/mock_flatpak-mock-flatpak.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_mock_flatpak_CFLAGS) $(CFLAGS) -c -o tests/mock_flatpak-mock-flatpak.o `test -f 'tests/mock-flatpak.c' || echo '$(srcdir)/'`tests/mock-flatpak.c - -tests/mock_flatpak-mock-flatpak.obj: tests/mock-flatpak.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_mock_flatpak_CFLAGS) $(CFLAGS) -MT tests/mock_flatpak-mock-flatpak.obj -MD -MP -MF tests/$(DEPDIR)/mock_flatpak-mock-flatpak.Tpo -c -o tests/mock_flatpak-mock-flatpak.obj `if test -f 'tests/mock-flatpak.c'; then $(CYGPATH_W) 'tests/mock-flatpak.c'; else $(CYGPATH_W) '$(srcdir)/tests/mock-flatpak.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/mock_flatpak-mock-flatpak.Tpo tests/$(DEPDIR)/mock_flatpak-mock-flatpak.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/mock-flatpak.c' object='tests/mock_flatpak-mock-flatpak.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_mock_flatpak_CFLAGS) $(CFLAGS) -c -o tests/mock_flatpak-mock-flatpak.obj `if test -f 'tests/mock-flatpak.c'; then $(CYGPATH_W) 'tests/mock-flatpak.c'; else $(CYGPATH_W) '$(srcdir)/tests/mock-flatpak.c'; fi` - -tests/test_authenticator-test-authenticator.o: tests/test-authenticator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_authenticator_CFLAGS) $(CFLAGS) -MT tests/test_authenticator-test-authenticator.o -MD -MP -MF tests/$(DEPDIR)/test_authenticator-test-authenticator.Tpo -c -o tests/test_authenticator-test-authenticator.o `test -f 'tests/test-authenticator.c' || echo '$(srcdir)/'`tests/test-authenticator.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_authenticator-test-authenticator.Tpo tests/$(DEPDIR)/test_authenticator-test-authenticator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-authenticator.c' object='tests/test_authenticator-test-authenticator.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_authenticator_CFLAGS) $(CFLAGS) -c -o tests/test_authenticator-test-authenticator.o `test -f 'tests/test-authenticator.c' || echo '$(srcdir)/'`tests/test-authenticator.c - -tests/test_authenticator-test-authenticator.obj: tests/test-authenticator.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_authenticator_CFLAGS) $(CFLAGS) -MT tests/test_authenticator-test-authenticator.obj -MD -MP -MF tests/$(DEPDIR)/test_authenticator-test-authenticator.Tpo -c -o tests/test_authenticator-test-authenticator.obj `if test -f 'tests/test-authenticator.c'; then $(CYGPATH_W) 'tests/test-authenticator.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-authenticator.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_authenticator-test-authenticator.Tpo tests/$(DEPDIR)/test_authenticator-test-authenticator.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-authenticator.c' object='tests/test_authenticator-test-authenticator.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_authenticator_CFLAGS) $(CFLAGS) -c -o tests/test_authenticator-test-authenticator.obj `if test -f 'tests/test-authenticator.c'; then $(CYGPATH_W) 'tests/test-authenticator.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-authenticator.c'; fi` - -tests/test_portal_impl-test-portal-impl.o: tests/test-portal-impl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_portal_impl_CFLAGS) $(CFLAGS) -MT tests/test_portal_impl-test-portal-impl.o -MD -MP -MF tests/$(DEPDIR)/test_portal_impl-test-portal-impl.Tpo -c -o tests/test_portal_impl-test-portal-impl.o `test -f 'tests/test-portal-impl.c' || echo '$(srcdir)/'`tests/test-portal-impl.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_portal_impl-test-portal-impl.Tpo tests/$(DEPDIR)/test_portal_impl-test-portal-impl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-portal-impl.c' object='tests/test_portal_impl-test-portal-impl.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_portal_impl_CFLAGS) $(CFLAGS) -c -o tests/test_portal_impl-test-portal-impl.o `test -f 'tests/test-portal-impl.c' || echo '$(srcdir)/'`tests/test-portal-impl.c - -tests/test_portal_impl-test-portal-impl.obj: tests/test-portal-impl.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_portal_impl_CFLAGS) $(CFLAGS) -MT tests/test_portal_impl-test-portal-impl.obj -MD -MP -MF tests/$(DEPDIR)/test_portal_impl-test-portal-impl.Tpo -c -o tests/test_portal_impl-test-portal-impl.obj `if test -f 'tests/test-portal-impl.c'; then $(CYGPATH_W) 'tests/test-portal-impl.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-portal-impl.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_portal_impl-test-portal-impl.Tpo tests/$(DEPDIR)/test_portal_impl-test-portal-impl.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-portal-impl.c' object='tests/test_portal_impl-test-portal-impl.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_portal_impl_CFLAGS) $(CFLAGS) -c -o tests/test_portal_impl-test-portal-impl.obj `if test -f 'tests/test-portal-impl.c'; then $(CYGPATH_W) 'tests/test-portal-impl.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-portal-impl.c'; fi` - -tests/test_update_portal-test-update-portal.o: tests/test-update-portal.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_update_portal_CFLAGS) $(CFLAGS) -MT tests/test_update_portal-test-update-portal.o -MD -MP -MF tests/$(DEPDIR)/test_update_portal-test-update-portal.Tpo -c -o tests/test_update_portal-test-update-portal.o `test -f 'tests/test-update-portal.c' || echo '$(srcdir)/'`tests/test-update-portal.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_update_portal-test-update-portal.Tpo tests/$(DEPDIR)/test_update_portal-test-update-portal.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-update-portal.c' object='tests/test_update_portal-test-update-portal.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_update_portal_CFLAGS) $(CFLAGS) -c -o tests/test_update_portal-test-update-portal.o `test -f 'tests/test-update-portal.c' || echo '$(srcdir)/'`tests/test-update-portal.c - -tests/test_update_portal-test-update-portal.obj: tests/test-update-portal.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_update_portal_CFLAGS) $(CFLAGS) -MT tests/test_update_portal-test-update-portal.obj -MD -MP -MF tests/$(DEPDIR)/test_update_portal-test-update-portal.Tpo -c -o tests/test_update_portal-test-update-portal.obj `if test -f 'tests/test-update-portal.c'; then $(CYGPATH_W) 'tests/test-update-portal.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-update-portal.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/test_update_portal-test-update-portal.Tpo tests/$(DEPDIR)/test_update_portal-test-update-portal.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/test-update-portal.c' object='tests/test_update_portal-test-update-portal.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_update_portal_CFLAGS) $(CFLAGS) -c -o tests/test_update_portal-test-update-portal.obj `if test -f 'tests/test-update-portal.c'; then $(CYGPATH_W) 'tests/test-update-portal.c'; else $(CYGPATH_W) '$(srcdir)/tests/test-update-portal.c'; fi` - -portal/tests_test_update_portal-flatpak-portal-dbus.o: portal/flatpak-portal-dbus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_update_portal_CFLAGS) $(CFLAGS) -MT portal/tests_test_update_portal-flatpak-portal-dbus.o -MD -MP -MF portal/$(DEPDIR)/tests_test_update_portal-flatpak-portal-dbus.Tpo -c -o portal/tests_test_update_portal-flatpak-portal-dbus.o `test -f 'portal/flatpak-portal-dbus.c' || echo '$(srcdir)/'`portal/flatpak-portal-dbus.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/tests_test_update_portal-flatpak-portal-dbus.Tpo portal/$(DEPDIR)/tests_test_update_portal-flatpak-portal-dbus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/flatpak-portal-dbus.c' object='portal/tests_test_update_portal-flatpak-portal-dbus.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_update_portal_CFLAGS) $(CFLAGS) -c -o portal/tests_test_update_portal-flatpak-portal-dbus.o `test -f 'portal/flatpak-portal-dbus.c' || echo '$(srcdir)/'`portal/flatpak-portal-dbus.c - -portal/tests_test_update_portal-flatpak-portal-dbus.obj: portal/flatpak-portal-dbus.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_update_portal_CFLAGS) $(CFLAGS) -MT portal/tests_test_update_portal-flatpak-portal-dbus.obj -MD -MP -MF portal/$(DEPDIR)/tests_test_update_portal-flatpak-portal-dbus.Tpo -c -o portal/tests_test_update_portal-flatpak-portal-dbus.obj `if test -f 'portal/flatpak-portal-dbus.c'; then $(CYGPATH_W) 'portal/flatpak-portal-dbus.c'; else $(CYGPATH_W) '$(srcdir)/portal/flatpak-portal-dbus.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) portal/$(DEPDIR)/tests_test_update_portal-flatpak-portal-dbus.Tpo portal/$(DEPDIR)/tests_test_update_portal-flatpak-portal-dbus.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='portal/flatpak-portal-dbus.c' object='portal/tests_test_update_portal-flatpak-portal-dbus.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_test_update_portal_CFLAGS) $(CFLAGS) -c -o portal/tests_test_update_portal-flatpak-portal-dbus.obj `if test -f 'portal/flatpak-portal-dbus.c'; then $(CYGPATH_W) 'portal/flatpak-portal-dbus.c'; else $(CYGPATH_W) '$(srcdir)/portal/flatpak-portal-dbus.c'; fi` - -tests/try_syscall-try-syscall.o: tests/try-syscall.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_try_syscall_CFLAGS) $(CFLAGS) -MT tests/try_syscall-try-syscall.o -MD -MP -MF tests/$(DEPDIR)/try_syscall-try-syscall.Tpo -c -o tests/try_syscall-try-syscall.o `test -f 'tests/try-syscall.c' || echo '$(srcdir)/'`tests/try-syscall.c -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/try_syscall-try-syscall.Tpo tests/$(DEPDIR)/try_syscall-try-syscall.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/try-syscall.c' object='tests/try_syscall-try-syscall.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_try_syscall_CFLAGS) $(CFLAGS) -c -o tests/try_syscall-try-syscall.o `test -f 'tests/try-syscall.c' || echo '$(srcdir)/'`tests/try-syscall.c - -tests/try_syscall-try-syscall.obj: tests/try-syscall.c -@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_try_syscall_CFLAGS) $(CFLAGS) -MT tests/try_syscall-try-syscall.obj -MD -MP -MF tests/$(DEPDIR)/try_syscall-try-syscall.Tpo -c -o tests/try_syscall-try-syscall.obj `if test -f 'tests/try-syscall.c'; then $(CYGPATH_W) 'tests/try-syscall.c'; else $(CYGPATH_W) '$(srcdir)/tests/try-syscall.c'; fi` -@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/try_syscall-try-syscall.Tpo tests/$(DEPDIR)/try_syscall-try-syscall.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tests/try-syscall.c' object='tests/try_syscall-try-syscall.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_try_syscall_CFLAGS) $(CFLAGS) -c -o tests/try_syscall-try-syscall.obj `if test -f 'tests/try-syscall.c'; then $(CYGPATH_W) 'tests/try-syscall.c'; else $(CYGPATH_W) '$(srcdir)/tests/try-syscall.c'; fi` - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -rm -rf app/.libs app/_libs - -rm -rf common/.libs common/_libs - -rm -rf subprojects/libglnx/.libs subprojects/libglnx/_libs - -rm -rf tests/.libs tests/_libs - -distclean-libtool: - -rm -f libtool config.lt -install-bashcompletionDATA: $(bashcompletion_DATA) - @$(NORMAL_INSTALL) - @list='$(bashcompletion_DATA)'; test -n "$(bashcompletiondir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(bashcompletiondir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(bashcompletiondir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(bashcompletiondir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(bashcompletiondir)" || exit $$?; \ - done - -uninstall-bashcompletionDATA: - @$(NORMAL_UNINSTALL) - @list='$(bashcompletion_DATA)'; test -n "$(bashcompletiondir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(bashcompletiondir)'; $(am__uninstall_files_from_dir) -install-dbus_serviceDATA: $(dbus_service_DATA) - @$(NORMAL_INSTALL) - @list='$(dbus_service_DATA)'; test -n "$(dbus_servicedir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(dbus_servicedir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(dbus_servicedir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(dbus_servicedir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(dbus_servicedir)" || exit $$?; \ - done - -uninstall-dbus_serviceDATA: - @$(NORMAL_UNINSTALL) - @list='$(dbus_service_DATA)'; test -n "$(dbus_servicedir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(dbus_servicedir)'; $(am__uninstall_files_from_dir) -install-dbussystemserviceDATA: $(dbussystemservice_DATA) - @$(NORMAL_INSTALL) - @list='$(dbussystemservice_DATA)'; test -n "$(dbussystemservicedir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(dbussystemservicedir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(dbussystemservicedir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(dbussystemservicedir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(dbussystemservicedir)" || exit $$?; \ - done - -uninstall-dbussystemserviceDATA: - @$(NORMAL_UNINSTALL) - @list='$(dbussystemservice_DATA)'; test -n "$(dbussystemservicedir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(dbussystemservicedir)'; $(am__uninstall_files_from_dir) -install-dist_dbusconfDATA: $(dist_dbusconf_DATA) - @$(NORMAL_INSTALL) - @list='$(dist_dbusconf_DATA)'; test -n "$(dbusconfdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(dbusconfdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(dbusconfdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(dbusconfdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(dbusconfdir)" || exit $$?; \ - done - -uninstall-dist_dbusconfDATA: - @$(NORMAL_UNINSTALL) - @list='$(dist_dbusconf_DATA)'; test -n "$(dbusconfdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(dbusconfdir)'; $(am__uninstall_files_from_dir) -install-dist_installed_test_keyringDATA: $(dist_installed_test_keyring_DATA) - @$(NORMAL_INSTALL) - @list='$(dist_installed_test_keyring_DATA)'; test -n "$(installed_test_keyringdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(installed_test_keyringdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(installed_test_keyringdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(installed_test_keyringdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(installed_test_keyringdir)" || exit $$?; \ - done - -uninstall-dist_installed_test_keyringDATA: - @$(NORMAL_UNINSTALL) - @list='$(dist_installed_test_keyring_DATA)'; test -n "$(installed_test_keyringdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(installed_test_keyringdir)'; $(am__uninstall_files_from_dir) -install-dist_installed_test_keyring2DATA: $(dist_installed_test_keyring2_DATA) - @$(NORMAL_INSTALL) - @list='$(dist_installed_test_keyring2_DATA)'; test -n "$(installed_test_keyring2dir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(installed_test_keyring2dir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(installed_test_keyring2dir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(installed_test_keyring2dir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(installed_test_keyring2dir)" || exit $$?; \ - done - -uninstall-dist_installed_test_keyring2DATA: - @$(NORMAL_UNINSTALL) - @list='$(dist_installed_test_keyring2_DATA)'; test -n "$(installed_test_keyring2dir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(installed_test_keyring2dir)'; $(am__uninstall_files_from_dir) -install-dist_tmpfilesDATA: $(dist_tmpfiles_DATA) - @$(NORMAL_INSTALL) - @list='$(dist_tmpfiles_DATA)'; test -n "$(tmpfilesdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(tmpfilesdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(tmpfilesdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(tmpfilesdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(tmpfilesdir)" || exit $$?; \ - done - -uninstall-dist_tmpfilesDATA: - @$(NORMAL_UNINSTALL) - @list='$(dist_tmpfiles_DATA)'; test -n "$(tmpfilesdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(tmpfilesdir)'; $(am__uninstall_files_from_dir) -install-envDATA: $(env_DATA) - @$(NORMAL_INSTALL) - @list='$(env_DATA)'; test -n "$(envdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(envdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(envdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(envdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(envdir)" || exit $$?; \ - done - -uninstall-envDATA: - @$(NORMAL_UNINSTALL) - @list='$(env_DATA)'; test -n "$(envdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(envdir)'; $(am__uninstall_files_from_dir) -install-fishcompletionDATA: $(fishcompletion_DATA) - @$(NORMAL_INSTALL) - @list='$(fishcompletion_DATA)'; test -n "$(fishcompletiondir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(fishcompletiondir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(fishcompletiondir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(fishcompletiondir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(fishcompletiondir)" || exit $$?; \ - done - -uninstall-fishcompletionDATA: - @$(NORMAL_UNINSTALL) - @list='$(fishcompletion_DATA)'; test -n "$(fishcompletiondir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(fishcompletiondir)'; $(am__uninstall_files_from_dir) -install-fishconfDATA: $(fishconf_DATA) - @$(NORMAL_INSTALL) - @list='$(fishconf_DATA)'; test -n "$(fishconfdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(fishconfdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(fishconfdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(fishconfdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(fishconfdir)" || exit $$?; \ - done - -uninstall-fishconfDATA: - @$(NORMAL_UNINSTALL) - @list='$(fishconf_DATA)'; test -n "$(fishconfdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(fishconfdir)'; $(am__uninstall_files_from_dir) -install-installed_testDATA: $(installed_test_DATA) - @$(NORMAL_INSTALL) - @list='$(installed_test_DATA)'; test -n "$(installed_testdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(installed_testdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(installed_testdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(installed_testdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(installed_testdir)" || exit $$?; \ - done - -uninstall-installed_testDATA: - @$(NORMAL_UNINSTALL) - @list='$(installed_test_DATA)'; test -n "$(installed_testdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(installed_testdir)'; $(am__uninstall_files_from_dir) -install-installed_test_metaDATA: $(installed_test_meta_DATA) - @$(NORMAL_INSTALL) - @list='$(installed_test_meta_DATA)'; test -n "$(installed_test_metadir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(installed_test_metadir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(installed_test_metadir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(installed_test_metadir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(installed_test_metadir)" || exit $$?; \ - done - -uninstall-installed_test_metaDATA: - @$(NORMAL_UNINSTALL) - @list='$(installed_test_meta_DATA)'; test -n "$(installed_test_metadir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(installed_test_metadir)'; $(am__uninstall_files_from_dir) -install-introspectionDATA: $(introspection_DATA) - @$(NORMAL_INSTALL) - @list='$(introspection_DATA)'; test -n "$(introspectiondir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(introspectiondir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(introspectiondir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(introspectiondir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(introspectiondir)" || exit $$?; \ - done - -uninstall-introspectionDATA: - @$(NORMAL_UNINSTALL) - @list='$(introspection_DATA)'; test -n "$(introspectiondir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(introspectiondir)'; $(am__uninstall_files_from_dir) -install-nobase_installed_testDATA: $(nobase_installed_test_DATA) - @$(NORMAL_INSTALL) - @list='$(nobase_installed_test_DATA)'; test -n "$(installed_testdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(installed_testdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(installed_testdir)" || exit 1; \ - fi; \ - $(am__nobase_list) | while read dir files; do \ - xfiles=; for file in $$files; do \ - if test -f "$$file"; then xfiles="$$xfiles $$file"; \ - else xfiles="$$xfiles $(srcdir)/$$file"; fi; done; \ - test -z "$$xfiles" || { \ - test "x$$dir" = x. || { \ - echo " $(MKDIR_P) '$(DESTDIR)$(installed_testdir)/$$dir'"; \ - $(MKDIR_P) "$(DESTDIR)$(installed_testdir)/$$dir"; }; \ - echo " $(INSTALL_DATA) $$xfiles '$(DESTDIR)$(installed_testdir)/$$dir'"; \ - $(INSTALL_DATA) $$xfiles "$(DESTDIR)$(installed_testdir)/$$dir" || exit $$?; }; \ - done - -uninstall-nobase_installed_testDATA: - @$(NORMAL_UNINSTALL) - @list='$(nobase_installed_test_DATA)'; test -n "$(installed_testdir)" || list=; \ - $(am__nobase_strip_setup); files=`$(am__nobase_strip)`; \ - dir='$(DESTDIR)$(installed_testdir)'; $(am__uninstall_files_from_dir) -install-nodist_girDATA: $(nodist_gir_DATA) - @$(NORMAL_INSTALL) - @list='$(nodist_gir_DATA)'; test -n "$(girdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(girdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(girdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(girdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(girdir)" || exit $$?; \ - done - -uninstall-nodist_girDATA: - @$(NORMAL_UNINSTALL) - @list='$(nodist_gir_DATA)'; test -n "$(girdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(girdir)'; $(am__uninstall_files_from_dir) -install-nodist_typelibDATA: $(nodist_typelib_DATA) - @$(NORMAL_INSTALL) - @list='$(nodist_typelib_DATA)'; test -n "$(typelibdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(typelibdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(typelibdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(typelibdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(typelibdir)" || exit $$?; \ - done - -uninstall-nodist_typelibDATA: - @$(NORMAL_UNINSTALL) - @list='$(nodist_typelib_DATA)'; test -n "$(typelibdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(typelibdir)'; $(am__uninstall_files_from_dir) -install-pkgconfigDATA: $(pkgconfig_DATA) - @$(NORMAL_INSTALL) - @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(pkgconfigdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \ - done - -uninstall-pkgconfigDATA: - @$(NORMAL_UNINSTALL) - @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(pkgconfigdir)'; $(am__uninstall_files_from_dir) -install-polkit_policyDATA: $(polkit_policy_DATA) - @$(NORMAL_INSTALL) - @list='$(polkit_policy_DATA)'; test -n "$(polkit_policydir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(polkit_policydir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(polkit_policydir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(polkit_policydir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(polkit_policydir)" || exit $$?; \ - done - -uninstall-polkit_policyDATA: - @$(NORMAL_UNINSTALL) - @list='$(polkit_policy_DATA)'; test -n "$(polkit_policydir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(polkit_policydir)'; $(am__uninstall_files_from_dir) -install-polkit_rulesDATA: $(polkit_rules_DATA) - @$(NORMAL_INSTALL) - @list='$(polkit_rules_DATA)'; test -n "$(polkit_rulesdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(polkit_rulesdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(polkit_rulesdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(polkit_rulesdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(polkit_rulesdir)" || exit $$?; \ - done - -uninstall-polkit_rulesDATA: - @$(NORMAL_UNINSTALL) - @list='$(polkit_rules_DATA)'; test -n "$(polkit_rulesdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(polkit_rulesdir)'; $(am__uninstall_files_from_dir) -install-profileDATA: $(profile_DATA) - @$(NORMAL_INSTALL) - @list='$(profile_DATA)'; test -n "$(profiledir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(profiledir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(profiledir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(profiledir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(profiledir)" || exit $$?; \ - done - -uninstall-profileDATA: - @$(NORMAL_UNINSTALL) - @list='$(profile_DATA)'; test -n "$(profiledir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(profiledir)'; $(am__uninstall_files_from_dir) -install-selinux_develDATA: $(selinux_devel_DATA) - @$(NORMAL_INSTALL) - @list='$(selinux_devel_DATA)'; test -n "$(selinux_develdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(selinux_develdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(selinux_develdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(selinux_develdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(selinux_develdir)" || exit $$?; \ - done - -uninstall-selinux_develDATA: - @$(NORMAL_UNINSTALL) - @list='$(selinux_devel_DATA)'; test -n "$(selinux_develdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(selinux_develdir)'; $(am__uninstall_files_from_dir) -install-selinux_moduleDATA: $(selinux_module_DATA) - @$(NORMAL_INSTALL) - @list='$(selinux_module_DATA)'; test -n "$(selinux_moduledir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(selinux_moduledir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(selinux_moduledir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(selinux_moduledir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(selinux_moduledir)" || exit $$?; \ - done - -uninstall-selinux_moduleDATA: - @$(NORMAL_UNINSTALL) - @list='$(selinux_module_DATA)'; test -n "$(selinux_moduledir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(selinux_moduledir)'; $(am__uninstall_files_from_dir) -install-systemdsystemunitDATA: $(systemdsystemunit_DATA) - @$(NORMAL_INSTALL) - @list='$(systemdsystemunit_DATA)'; test -n "$(systemdsystemunitdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(systemdsystemunitdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(systemdsystemunitdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(systemdsystemunitdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(systemdsystemunitdir)" || exit $$?; \ - done - -uninstall-systemdsystemunitDATA: - @$(NORMAL_UNINSTALL) - @list='$(systemdsystemunit_DATA)'; test -n "$(systemdsystemunitdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(systemdsystemunitdir)'; $(am__uninstall_files_from_dir) -install-systemduserunitDATA: $(systemduserunit_DATA) - @$(NORMAL_INSTALL) - @list='$(systemduserunit_DATA)'; test -n "$(systemduserunitdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(systemduserunitdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(systemduserunitdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(systemduserunitdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(systemduserunitdir)" || exit $$?; \ - done - -uninstall-systemduserunitDATA: - @$(NORMAL_UNINSTALL) - @list='$(systemduserunit_DATA)'; test -n "$(systemduserunitdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(systemduserunitdir)'; $(am__uninstall_files_from_dir) -install-sysusersDATA: $(sysusers_DATA) - @$(NORMAL_INSTALL) - @list='$(sysusers_DATA)'; test -n "$(sysusersdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(sysusersdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(sysusersdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(sysusersdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(sysusersdir)" || exit $$?; \ - done - -uninstall-sysusersDATA: - @$(NORMAL_UNINSTALL) - @list='$(sysusers_DATA)'; test -n "$(sysusersdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(sysusersdir)'; $(am__uninstall_files_from_dir) -install-zshcompletionDATA: $(zshcompletion_DATA) - @$(NORMAL_INSTALL) - @list='$(zshcompletion_DATA)'; test -n "$(zshcompletiondir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(zshcompletiondir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(zshcompletiondir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(zshcompletiondir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(zshcompletiondir)" || exit $$?; \ - done - -uninstall-zshcompletionDATA: - @$(NORMAL_UNINSTALL) - @list='$(zshcompletion_DATA)'; test -n "$(zshcompletiondir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(zshcompletiondir)'; $(am__uninstall_files_from_dir) -install-flatpakincludeHEADERS: $(flatpakinclude_HEADERS) - @$(NORMAL_INSTALL) - @list='$(flatpakinclude_HEADERS)'; test -n "$(flatpakincludedir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(flatpakincludedir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(flatpakincludedir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(flatpakincludedir)'"; \ - $(INSTALL_HEADER) $$files "$(DESTDIR)$(flatpakincludedir)" || exit $$?; \ - done - -uninstall-flatpakincludeHEADERS: - @$(NORMAL_UNINSTALL) - @list='$(flatpakinclude_HEADERS)'; test -n "$(flatpakincludedir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(flatpakincludedir)'; $(am__uninstall_files_from_dir) -install-nodist_flatpakincludeHEADERS: $(nodist_flatpakinclude_HEADERS) - @$(NORMAL_INSTALL) - @list='$(nodist_flatpakinclude_HEADERS)'; test -n "$(flatpakincludedir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(flatpakincludedir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(flatpakincludedir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(flatpakincludedir)'"; \ - $(INSTALL_HEADER) $$files "$(DESTDIR)$(flatpakincludedir)" || exit $$?; \ - done - -uninstall-nodist_flatpakincludeHEADERS: - @$(NORMAL_UNINSTALL) - @list='$(nodist_flatpakinclude_HEADERS)'; test -n "$(flatpakincludedir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(flatpakincludedir)'; $(am__uninstall_files_from_dir) - -# This directory's subdirectories are mostly independent; you can cd -# into them and run 'make' without going through this Makefile. -# To change the values of 'make' variables: instead of editing Makefiles, -# (1) if the variable is set in 'config.status', edit 'config.status' -# (which will cause the Makefiles to be regenerated when you run 'make'); -# (2) otherwise, pass the desired values on the 'make' command line. -$(am__recursive_targets): - @fail=; \ - if $(am__make_keepgoing); then \ - failcom='fail=yes'; \ - else \ - failcom='exit 1'; \ - fi; \ - dot_seen=no; \ - target=`echo $@ | sed s/-recursive//`; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - for subdir in $$list; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - dot_seen=yes; \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || eval $$failcom; \ - done; \ - if test "$$dot_seen" = "no"; then \ - $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ - fi; test -z "$$fail" - -ID: $(am__tagged_files) - $(am__define_uniq_tagged_files); mkid -fID $$unique -tags: tags-recursive -TAGS: tags - -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - set x; \ - here=`pwd`; \ - if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ - include_option=--etags-include; \ - empty_fix=.; \ - else \ - include_option=--include; \ - empty_fix=; \ - fi; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test ! -f $$subdir/TAGS || \ - set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ - fi; \ - done; \ - $(am__define_uniq_tagged_files); \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: ctags-recursive - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" -cscope: cscope.files - test ! -s cscope.files \ - || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS) -clean-cscope: - -rm -f cscope.files -cscope.files: clean-cscope cscopelist -cscopelist: cscopelist-recursive - -cscopelist-am: $(am__tagged_files) - list='$(am__tagged_files)'; \ - case "$(srcdir)" in \ - [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ - *) sdir=$(subdir)/$(srcdir) ;; \ - esac; \ - for i in $$list; do \ - if test -f "$$i"; then \ - echo "$(subdir)/$$i"; \ - else \ - echo "$$sdir/$$i"; \ - fi; \ - done >> $(top_builddir)/cscope.files - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -rm -f cscope.out cscope.in.out cscope.po.out cscope.files - -# Recover from deleted '.trs' file; this should ensure that -# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create -# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells -# to avoid problems with "make -n". -.log.trs: - rm -f $< $@ - $(MAKE) $(AM_MAKEFLAGS) $< - -# Leading 'am--fnord' is there to ensure the list of targets does not -# expand to empty, as could happen e.g. with make check TESTS=''. -am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck) -am--force-recheck: - @: - -$(TEST_SUITE_LOG): $(TEST_LOGS) - @$(am__set_TESTS_bases); \ - am__f_ok () { test -f "$$1" && test -r "$$1"; }; \ - redo_bases=`for i in $$bases; do \ - am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \ - done`; \ - if test -n "$$redo_bases"; then \ - redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \ - redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \ - if $(am__make_dryrun); then :; else \ - rm -f $$redo_logs && rm -f $$redo_results || exit 1; \ - fi; \ - fi; \ - if test -n "$$am__remaking_logs"; then \ - echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \ - "recursion detected" >&2; \ - elif test -n "$$redo_logs"; then \ - am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \ - fi; \ - if $(am__make_dryrun); then :; else \ - st=0; \ - errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \ - for i in $$redo_bases; do \ - test -f $$i.trs && test -r $$i.trs \ - || { echo "$$errmsg $$i.trs" >&2; st=1; }; \ - test -f $$i.log && test -r $$i.log \ - || { echo "$$errmsg $$i.log" >&2; st=1; }; \ - done; \ - test $$st -eq 0 || exit 1; \ - fi - @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \ - ws='[ ]'; \ - results=`for b in $$bases; do echo $$b.trs; done`; \ - test -n "$$results" || results=/dev/null; \ - all=` grep "^$$ws*:test-result:" $$results | wc -l`; \ - pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \ - fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \ - skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \ - xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \ - xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \ - error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \ - if test `expr $$fail + $$xpass + $$error` -eq 0; then \ - success=true; \ - else \ - success=false; \ - fi; \ - br='==================='; br=$$br$$br$$br$$br; \ - result_count () \ - { \ - if test x"$$1" = x"--maybe-color"; then \ - maybe_colorize=yes; \ - elif test x"$$1" = x"--no-color"; then \ - maybe_colorize=no; \ - else \ - echo "$@: invalid 'result_count' usage" >&2; exit 4; \ - fi; \ - shift; \ - desc=$$1 count=$$2; \ - if test $$maybe_colorize = yes && test $$count -gt 0; then \ - color_start=$$3 color_end=$$std; \ - else \ - color_start= color_end=; \ - fi; \ - echo "$${color_start}# $$desc $$count$${color_end}"; \ - }; \ - create_testsuite_report () \ - { \ - result_count $$1 "TOTAL:" $$all "$$brg"; \ - result_count $$1 "PASS: " $$pass "$$grn"; \ - result_count $$1 "SKIP: " $$skip "$$blu"; \ - result_count $$1 "XFAIL:" $$xfail "$$lgn"; \ - result_count $$1 "FAIL: " $$fail "$$red"; \ - result_count $$1 "XPASS:" $$xpass "$$red"; \ - result_count $$1 "ERROR:" $$error "$$mgn"; \ - }; \ - { \ - echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \ - $(am__rst_title); \ - create_testsuite_report --no-color; \ - echo; \ - echo ".. contents:: :depth: 2"; \ - echo; \ - for b in $$bases; do echo $$b; done \ - | $(am__create_global_log); \ - } >$(TEST_SUITE_LOG).tmp || exit 1; \ - mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \ - if $$success; then \ - col="$$grn"; \ - else \ - col="$$red"; \ - test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \ - fi; \ - echo "$${col}$$br$${std}"; \ - echo "$${col}Testsuite summary"$(AM_TESTSUITE_SUMMARY_HEADER)"$${std}"; \ - echo "$${col}$$br$${std}"; \ - create_testsuite_report --maybe-color; \ - echo "$$col$$br$$std"; \ - if $$success; then :; else \ - echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \ - if test -n "$(PACKAGE_BUGREPORT)"; then \ - echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \ - fi; \ - echo "$$col$$br$$std"; \ - fi; \ - $$success || exit 1 - -check-TESTS: $(check_PROGRAMS) $(check_LTLIBRARIES) $(check_SCRIPTS) $(check_DATA) - @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list - @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - trs_list=`for i in $$bases; do echo $$i.trs; done`; \ - log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \ - exit $$?; -recheck: all $(check_PROGRAMS) $(check_LTLIBRARIES) $(check_SCRIPTS) $(check_DATA) - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - bases=`for i in $$bases; do echo $$i; done \ - | $(am__list_recheck_tests)` || exit 1; \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - log_list=`echo $$log_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \ - am__force_recheck=am--force-recheck \ - TEST_LOGS="$$log_list"; \ - exit $$? -test-context.log: test-context$(EXEEXT) - @p='test-context$(EXEEXT)'; \ - b='test-context'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test-exports.log: test-exports$(EXEEXT) - @p='test-exports$(EXEEXT)'; \ - b='test-exports'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test-instance.log: test-instance$(EXEEXT) - @p='test-instance$(EXEEXT)'; \ - b='test-instance'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test-portal.log: test-portal$(EXEEXT) - @p='test-portal$(EXEEXT)'; \ - b='test-portal'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -testcommon.log: testcommon$(EXEEXT) - @p='testcommon$(EXEEXT)'; \ - b='testcommon'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -testlibrary.log: testlibrary$(EXEEXT) - @p='testlibrary$(EXEEXT)'; \ - b='testlibrary'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-run@user,nodeltas.wrap.log: tests/test-run@user,nodeltas.wrap - @p='tests/test-run@user,nodeltas.wrap'; \ - b='tests/test-run@user,nodeltas.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-run@user,deltas.wrap.log: tests/test-run@user,deltas.wrap - @p='tests/test-run@user,deltas.wrap'; \ - b='tests/test-run@user,deltas.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-run@system,nodeltas.wrap.log: tests/test-run@system,nodeltas.wrap - @p='tests/test-run@system,nodeltas.wrap'; \ - b='tests/test-run@system,nodeltas.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-run@system,deltas.wrap.log: tests/test-run@system,deltas.wrap - @p='tests/test-run@system,deltas.wrap'; \ - b='tests/test-run@system,deltas.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-run@system-norevokefs,nodeltas.wrap.log: tests/test-run@system-norevokefs,nodeltas.wrap - @p='tests/test-run@system-norevokefs,nodeltas.wrap'; \ - b='tests/test-run@system-norevokefs,nodeltas.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-run@system-norevokefs,deltas.wrap.log: tests/test-run@system-norevokefs,deltas.wrap - @p='tests/test-run@system-norevokefs,deltas.wrap'; \ - b='tests/test-run@system-norevokefs,deltas.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-info@user.wrap.log: tests/test-info@user.wrap - @p='tests/test-info@user.wrap'; \ - b='tests/test-info@user.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-info@system.wrap.log: tests/test-info@system.wrap - @p='tests/test-info@system.wrap'; \ - b='tests/test-info@system.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-repo@user.wrap.log: tests/test-repo@user.wrap - @p='tests/test-repo@user.wrap'; \ - b='tests/test-repo@user.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-repo@system.wrap.log: tests/test-repo@system.wrap - @p='tests/test-repo@system.wrap'; \ - b='tests/test-repo@system.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-repo@system-norevokefs.wrap.log: tests/test-repo@system-norevokefs.wrap - @p='tests/test-repo@system-norevokefs.wrap'; \ - b='tests/test-repo@system-norevokefs.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-repo@user,oldsummary.wrap.log: tests/test-repo@user,oldsummary.wrap - @p='tests/test-repo@user,oldsummary.wrap'; \ - b='tests/test-repo@user,oldsummary.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-repo@system,oldsummary.wrap.log: tests/test-repo@system,oldsummary.wrap - @p='tests/test-repo@system,oldsummary.wrap'; \ - b='tests/test-repo@system,oldsummary.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-sideload@user.wrap.log: tests/test-sideload@user.wrap - @p='tests/test-sideload@user.wrap'; \ - b='tests/test-sideload@user.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-sideload@system.wrap.log: tests/test-sideload@system.wrap - @p='tests/test-sideload@system.wrap'; \ - b='tests/test-sideload@system.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-bundle@user.wrap.log: tests/test-bundle@user.wrap - @p='tests/test-bundle@user.wrap'; \ - b='tests/test-bundle@user.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-bundle@system.wrap.log: tests/test-bundle@system.wrap - @p='tests/test-bundle@system.wrap'; \ - b='tests/test-bundle@system.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-bundle@system-norevokefs.wrap.log: tests/test-bundle@system-norevokefs.wrap - @p='tests/test-bundle@system-norevokefs.wrap'; \ - b='tests/test-bundle@system-norevokefs.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-oci-registry@user.wrap.log: tests/test-oci-registry@user.wrap - @p='tests/test-oci-registry@user.wrap'; \ - b='tests/test-oci-registry@user.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-oci-registry@system.wrap.log: tests/test-oci-registry@system.wrap - @p='tests/test-oci-registry@system.wrap'; \ - b='tests/test-oci-registry@system.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-update-remote-configuration@newsummary.wrap.log: tests/test-update-remote-configuration@newsummary.wrap - @p='tests/test-update-remote-configuration@newsummary.wrap'; \ - b='tests/test-update-remote-configuration@newsummary.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-update-remote-configuration@oldsummary.wrap.log: tests/test-update-remote-configuration@oldsummary.wrap - @p='tests/test-update-remote-configuration@oldsummary.wrap'; \ - b='tests/test-update-remote-configuration@oldsummary.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-update-portal@user.wrap.log: tests/test-update-portal@user.wrap - @p='tests/test-update-portal@user.wrap'; \ - b='tests/test-update-portal@user.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-update-portal@system.wrap.log: tests/test-update-portal@system.wrap - @p='tests/test-update-portal@system.wrap'; \ - b='tests/test-update-portal@system.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-summaries@user.wrap.log: tests/test-summaries@user.wrap - @p='tests/test-summaries@user.wrap'; \ - b='tests/test-summaries@user.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-summaries@system.wrap.log: tests/test-summaries@system.wrap - @p='tests/test-summaries@system.wrap'; \ - b='tests/test-summaries@system.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-subset@user.wrap.log: tests/test-subset@user.wrap - @p='tests/test-subset@user.wrap'; \ - b='tests/test-subset@user.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-subset@system.wrap.log: tests/test-subset@system.wrap - @p='tests/test-subset@system.wrap'; \ - b='tests/test-subset@system.wrap'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-basic.sh.log: tests/test-basic.sh - @p='tests/test-basic.sh'; \ - b='tests/test-basic.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-completion.sh.log: tests/test-completion.sh - @p='tests/test-completion.sh'; \ - b='tests/test-completion.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-config.sh.log: tests/test-config.sh - @p='tests/test-config.sh'; \ - b='tests/test-config.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-build-update-repo.sh.log: tests/test-build-update-repo.sh - @p='tests/test-build-update-repo.sh'; \ - b='tests/test-build-update-repo.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-http-utils.sh.log: tests/test-http-utils.sh - @p='tests/test-http-utils.sh'; \ - b='tests/test-http-utils.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-history.sh.log: tests/test-history.sh - @p='tests/test-history.sh'; \ - b='tests/test-history.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-default-remotes.sh.log: tests/test-default-remotes.sh - @p='tests/test-default-remotes.sh'; \ - b='tests/test-default-remotes.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-metadata-validation.sh.log: tests/test-metadata-validation.sh - @p='tests/test-metadata-validation.sh'; \ - b='tests/test-metadata-validation.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-extensions.sh.log: tests/test-extensions.sh - @p='tests/test-extensions.sh'; \ - b='tests/test-extensions.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-oci.sh.log: tests/test-oci.sh - @p='tests/test-oci.sh'; \ - b='tests/test-oci.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-override.sh.log: tests/test-override.sh - @p='tests/test-override.sh'; \ - b='tests/test-override.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-auth.sh.log: tests/test-auth.sh - @p='tests/test-auth.sh'; \ - b='tests/test-auth.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-unused.sh.log: tests/test-unused.sh - @p='tests/test-unused.sh'; \ - b='tests/test-unused.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-prune.sh.log: tests/test-prune.sh - @p='tests/test-prune.sh'; \ - b='tests/test-prune.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-seccomp.sh.log: tests/test-seccomp.sh - @p='tests/test-seccomp.sh'; \ - b='tests/test-seccomp.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -tests/test-repair.sh.log: tests/test-repair.sh - @p='tests/test-repair.sh'; \ - b='tests/test-repair.sh'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test-libglnx-xattrs.log: test-libglnx-xattrs$(EXEEXT) - @p='test-libglnx-xattrs$(EXEEXT)'; \ - b='test-libglnx-xattrs'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test-libglnx-fdio.log: test-libglnx-fdio$(EXEEXT) - @p='test-libglnx-fdio$(EXEEXT)'; \ - b='test-libglnx-fdio'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test-libglnx-errors.log: test-libglnx-errors$(EXEEXT) - @p='test-libglnx-errors$(EXEEXT)'; \ - b='test-libglnx-errors'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test-libglnx-macros.log: test-libglnx-macros$(EXEEXT) - @p='test-libglnx-macros$(EXEEXT)'; \ - b='test-libglnx-macros'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -test-libglnx-shutil.log: test-libglnx-shutil$(EXEEXT) - @p='test-libglnx-shutil$(EXEEXT)'; \ - b='test-libglnx-shutil'; \ - $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -.test.log: - @p='$<'; \ - $(am__set_b); \ - $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -@am__EXEEXT_TRUE@.test$(EXEEXT).log: -@am__EXEEXT_TRUE@ @p='$<'; \ -@am__EXEEXT_TRUE@ $(am__set_b); \ -@am__EXEEXT_TRUE@ $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ -@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \ -@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ -@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT) -distdir: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) distdir-am - -distdir-am: $(DISTFILES) - $(am__remove_distdir) - test -d "$(distdir)" || mkdir "$(distdir)" - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done - @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - $(am__make_dryrun) \ - || test -d "$(distdir)/$$subdir" \ - || $(MKDIR_P) "$(distdir)/$$subdir" \ - || exit 1; \ - dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ - $(am__relativize); \ - new_distdir=$$reldir; \ - dir1=$$subdir; dir2="$(top_distdir)"; \ - $(am__relativize); \ - new_top_distdir=$$reldir; \ - echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ - echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ - ($(am__cd) $$subdir && \ - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$new_top_distdir" \ - distdir="$$new_distdir" \ - am__remove_distdir=: \ - am__skip_length_check=: \ - am__skip_mode_fix=: \ - distdir) \ - || exit 1; \ - fi; \ - done - -test -n "$(am__skip_mode_fix)" \ - || find "$(distdir)" -type d ! -perm -755 \ - -exec chmod u+rwx,go+rx {} \; -o \ - ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ - ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ - ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ - || chmod -R a+r "$(distdir)" -dist-gzip: distdir - tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz - $(am__post_remove_distdir) - -dist-bzip2: distdir - tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 - $(am__post_remove_distdir) - -dist-lzip: distdir - tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz - $(am__post_remove_distdir) -dist-xz: distdir - tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz - $(am__post_remove_distdir) - -dist-zstd: distdir - tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst - $(am__post_remove_distdir) - -dist-tarZ: distdir - @echo WARNING: "Support for distribution archives compressed with" \ - "legacy program 'compress' is deprecated." >&2 - @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 - tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z - $(am__post_remove_distdir) - -dist-shar: distdir - @echo WARNING: "Support for shar distribution archives is" \ - "deprecated." >&2 - @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 - shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz - $(am__post_remove_distdir) - -dist-zip: distdir - -rm -f $(distdir).zip - zip -rq $(distdir).zip $(distdir) - $(am__post_remove_distdir) - -dist dist-all: - $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' - $(am__post_remove_distdir) - -# This target untars the dist file and tries a VPATH configuration. Then -# it guarantees that the distribution is self-contained by making another -# tarfile. -distcheck: dist - case '$(DIST_ARCHIVES)' in \ - *.tar.gz*) \ - eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\ - *.tar.bz2*) \ - bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ - *.tar.lz*) \ - lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ - *.tar.xz*) \ - xz -dc $(distdir).tar.xz | $(am__untar) ;;\ - *.tar.Z*) \ - uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ - *.shar.gz*) \ - eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\ - *.zip*) \ - unzip $(distdir).zip ;;\ - *.tar.zst*) \ - zstd -dc $(distdir).tar.zst | $(am__untar) ;;\ - esac - chmod -R a-w $(distdir) - chmod u+w $(distdir) - mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst - chmod a-w $(distdir) - test -d $(distdir)/_build || exit 0; \ - dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ - && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ - && am__cwd=`pwd` \ - && $(am__cd) $(distdir)/_build/sub \ - && ../../configure \ - $(AM_DISTCHECK_CONFIGURE_FLAGS) \ - $(DISTCHECK_CONFIGURE_FLAGS) \ - --srcdir=../.. --prefix="$$dc_install_base" \ - && $(MAKE) $(AM_MAKEFLAGS) \ - && $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \ - && $(MAKE) $(AM_MAKEFLAGS) check \ - && $(MAKE) $(AM_MAKEFLAGS) install \ - && $(MAKE) $(AM_MAKEFLAGS) installcheck \ - && $(MAKE) $(AM_MAKEFLAGS) uninstall \ - && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ - distuninstallcheck \ - && chmod -R a-w "$$dc_install_base" \ - && ({ \ - (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ - distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ - } || { rm -rf "$$dc_destdir"; exit 1; }) \ - && rm -rf "$$dc_destdir" \ - && $(MAKE) $(AM_MAKEFLAGS) dist \ - && rm -rf $(DIST_ARCHIVES) \ - && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ - && cd "$$am__cwd" \ - || exit 1 - $(am__post_remove_distdir) - @(echo "$(distdir) archives ready for distribution: "; \ - list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ - sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' -distuninstallcheck: - @test -n '$(distuninstallcheck_dir)' || { \ - echo 'ERROR: trying to run $@ with an empty' \ - '$$(distuninstallcheck_dir)' >&2; \ - exit 1; \ - }; \ - $(am__cd) '$(distuninstallcheck_dir)' || { \ - echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ - exit 1; \ - }; \ - test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ - || { echo "ERROR: files left after uninstall:" ; \ - if test -n "$(DESTDIR)"; then \ - echo " (check DESTDIR support)"; \ - fi ; \ - $(distuninstallcheck_listfiles) ; \ - exit 1; } >&2 -distcleancheck: distclean - @if test '$(srcdir)' = . ; then \ - echo "ERROR: distcleancheck can only run from a VPATH build" ; \ - exit 1 ; \ - fi - @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ - || { echo "ERROR: files left in build directory after distclean:" ; \ - $(distcleancheck_listfiles) ; \ - exit 1; } >&2 -check-am: all-am - $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) $(check_LTLIBRARIES) \ - $(check_SCRIPTS) $(check_DATA) - $(MAKE) $(AM_MAKEFLAGS) check-TESTS -check: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) check-recursive -all-am: Makefile $(PROGRAMS) $(LTLIBRARIES) $(SCRIPTS) $(DATA) \ - $(HEADERS) config.h -install-binPROGRAMS: install-libLTLIBRARIES - -install-bwrapPROGRAMS: install-libLTLIBRARIES - -install-checkPROGRAMS: install-libLTLIBRARIES - -install-installedtestPROGRAMS: install-libLTLIBRARIES - -install-libexecPROGRAMS: install-libLTLIBRARIES - -install-checkLTLIBRARIES: install-libLTLIBRARIES - -install-installedtestLTLIBRARIES: install-libLTLIBRARIES - -installdirs: installdirs-recursive -installdirs-am: - for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bwrapdir)" "$(DESTDIR)$(installed_testdir)" "$(DESTDIR)$(libexecdir)" "$(DESTDIR)$(installed_testdir)" "$(DESTDIR)$(libdir)" "$(DESTDIR)$(libexecdir)" "$(DESTDIR)$(triggersdir)" "$(DESTDIR)$(installed_testdir)" "$(DESTDIR)$(scriptsdir)" "$(DESTDIR)$(systemenvgendir)" "$(DESTDIR)$(userenvgendir)" "$(DESTDIR)$(bashcompletiondir)" "$(DESTDIR)$(dbus_servicedir)" "$(DESTDIR)$(dbussystemservicedir)" "$(DESTDIR)$(dbusconfdir)" "$(DESTDIR)$(installed_test_keyringdir)" "$(DESTDIR)$(installed_test_keyring2dir)" "$(DESTDIR)$(tmpfilesdir)" "$(DESTDIR)$(envdir)" "$(DESTDIR)$(fishcompletiondir)" "$(DESTDIR)$(fishconfdir)" "$(DESTDIR)$(installed_testdir)" "$(DESTDIR)$(installed_test_metadir)" "$(DESTDIR)$(introspectiondir)" "$(DESTDIR)$(installed_testdir)" "$(DESTDIR)$(girdir)" "$(DESTDIR)$(typelibdir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(polkit_policydir)" "$(DESTDIR)$(polkit_rulesdir)" "$(DESTDIR)$(profiledir)" "$(DESTDIR)$(selinux_develdir)" "$(DESTDIR)$(selinux_moduledir)" "$(DESTDIR)$(systemdsystemunitdir)" "$(DESTDIR)$(systemduserunitdir)" "$(DESTDIR)$(sysusersdir)" "$(DESTDIR)$(zshcompletiondir)" "$(DESTDIR)$(flatpakincludedir)" "$(DESTDIR)$(flatpakincludedir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done -install: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) install-recursive -install-exec: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) install-exec-recursive -install-data: install-data-recursive -uninstall: uninstall-recursive - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-recursive -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS) - -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs) - -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - -clean-generic: - -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -rm -f app/$(DEPDIR)/$(am__dirstamp) - -rm -f app/$(am__dirstamp) - -rm -f common/$(DEPDIR)/$(am__dirstamp) - -rm -f common/$(am__dirstamp) - -rm -f icon-validator/$(DEPDIR)/$(am__dirstamp) - -rm -f icon-validator/$(am__dirstamp) - -rm -f oci-authenticator/$(DEPDIR)/$(am__dirstamp) - -rm -f oci-authenticator/$(am__dirstamp) - -rm -f portal/$(DEPDIR)/$(am__dirstamp) - -rm -f portal/$(am__dirstamp) - -rm -f revokefs/$(DEPDIR)/$(am__dirstamp) - -rm -f revokefs/$(am__dirstamp) - -rm -f session-helper/$(DEPDIR)/$(am__dirstamp) - -rm -f session-helper/$(am__dirstamp) - -rm -f subprojects/bubblewrap/$(DEPDIR)/$(am__dirstamp) - -rm -f subprojects/bubblewrap/$(am__dirstamp) - -rm -f subprojects/dbus-proxy/$(DEPDIR)/$(am__dirstamp) - -rm -f subprojects/dbus-proxy/$(am__dirstamp) - -rm -f subprojects/libglnx/$(DEPDIR)/$(am__dirstamp) - -rm -f subprojects/libglnx/$(am__dirstamp) - -rm -f subprojects/libglnx/tests/$(DEPDIR)/$(am__dirstamp) - -rm -f subprojects/libglnx/tests/$(am__dirstamp) - -rm -f system-helper/$(DEPDIR)/$(am__dirstamp) - -rm -f system-helper/$(am__dirstamp) - -rm -f tests/$(DEPDIR)/$(am__dirstamp) - -rm -f tests/$(am__dirstamp) - -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." - -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) - -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) -clean: clean-recursive - -clean-am: clean-binPROGRAMS clean-bwrapPROGRAMS clean-checkLTLIBRARIES \ - clean-checkPROGRAMS clean-generic \ - clean-installed_testLTLIBRARIES clean-installed_testPROGRAMS \ - clean-libLTLIBRARIES clean-libexecPROGRAMS clean-libtool \ - clean-noinstLTLIBRARIES clean-noinstPROGRAMS mostlyclean-am - -distclean: distclean-recursive - -rm -f $(am__CONFIG_DISTCLEAN_FILES) - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-bundle.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-commit-from.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-export.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-finish.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-import-bundle.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-init.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-sign.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-update-repo.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-config.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-create-usb.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-document-export.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-document-info.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-document-list.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-document-unexport.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-enter.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-history.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-info.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-install.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-kill.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-list.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-make-current.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-mask.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-override.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-permission-list.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-permission-remove.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-permission-reset.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-permission-set.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-permission-show.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-pin.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-ps.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-remote-add.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-remote-delete.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-remote-info.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-remote-list.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-remote-ls.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-remote-modify.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-repair.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-repo.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-run.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-search.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-uninstall.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-update.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-cli-transaction.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-complete.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-main.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-permission-dbus-generated.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-polkit-agent-text-listener.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-quiet-transaction.Po - -rm -f app/$(DEPDIR)/libflatpak_app_la-flatpak-builtins-utils.Plo - -rm -f app/$(DEPDIR)/libflatpak_app_la-flatpak-table-printer.Plo - -rm -f app/$(DEPDIR)/libflatpak_app_la-parse-datetime.Plo - -rm -f common/$(DEPDIR)/flatpak_portal-flatpak-portal-error.Po - -rm -f common/$(DEPDIR)/libflatpak_common_base_la-flatpak-dbus-generated.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_base_la-flatpak-document-dbus-generated.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_base_la-flatpak-utils-base.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-appdata.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-auth.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-bundle-ref.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-bwrap.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-chain-input-stream.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-context.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-dir.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-enum-types.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-error.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-exports.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-installation.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-installed-ref.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-instance.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-json-oci.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-json.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-oci-registry.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-parental-controls.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-portal-error.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-progress.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-prune.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-ref-utils.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-ref.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-related-ref.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-remote-ref.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-remote.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-run.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-systemd-dbus-generated.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-transaction.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-uri.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-utils-http.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-utils.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-zstd-decompressor.Plo - -rm -f common/$(DEPDIR)/libflatpak_la-flatpak.Plo - -rm -f common/$(DEPDIR)/test_libflatpak-test-lib.Po - -rm -f icon-validator/$(DEPDIR)/flatpak_validate_icon-validate-icon.Po - -rm -f oci-authenticator/$(DEPDIR)/flatpak_oci_authenticator-flatpak-oci-authenticator.Po - -rm -f portal/$(DEPDIR)/flatpak_portal-flatpak-permission-dbus.Po - -rm -f portal/$(DEPDIR)/flatpak_portal-flatpak-portal-app-info.Po - -rm -f portal/$(DEPDIR)/flatpak_portal-flatpak-portal-dbus.Po - -rm -f portal/$(DEPDIR)/flatpak_portal-flatpak-portal.Po - -rm -f portal/$(DEPDIR)/flatpak_portal-portal-impl.Po - -rm -f portal/$(DEPDIR)/test_portal-flatpak-portal-dbus.Po - -rm -f portal/$(DEPDIR)/tests_test_update_portal-flatpak-portal-dbus.Po - -rm -f revokefs/$(DEPDIR)/demo-demo.Po - -rm -f revokefs/$(DEPDIR)/fuse-main.Po - -rm -f revokefs/$(DEPDIR)/fuse-writer.Po - -rm -f session-helper/$(DEPDIR)/flatpak_session_helper-flatpak-session-helper.Po - -rm -f subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bind-mount.Po - -rm -f subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bubblewrap.Po - -rm -f subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-network.Po - -rm -f subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-utils.Po - -rm -f subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-dbus-proxy.Po - -rm -f subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-flatpak-proxy.Po - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-backports.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-console.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-dirfd.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-errors.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-fdio.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-local-alloc.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-lockfile.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-shutil.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-xattrs.Plo - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_instance-libglnx-testlib.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-libglnx-testlib.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-test-libglnx-errors.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-libglnx-testlib.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-test-libglnx-fdio.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-libglnx-testlib.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-test-libglnx-macros.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-libglnx-testlib.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-test-libglnx-shutil.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-libglnx-testlib.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-test-libglnx-xattrs.Po - -rm -f system-helper/$(DEPDIR)/flatpak_system_helper-flatpak-system-helper.Po - -rm -f tests/$(DEPDIR)/hold_lock-hold-lock.Po - -rm -f tests/$(DEPDIR)/httpcache-httpcache.Po - -rm -f tests/$(DEPDIR)/libpreload.Plo - -rm -f tests/$(DEPDIR)/libtestlib_la-testlib.Plo - -rm -f tests/$(DEPDIR)/list_unused-list-unused.Po - -rm -f tests/$(DEPDIR)/mock_flatpak-mock-flatpak.Po - -rm -f tests/$(DEPDIR)/test_authenticator-test-authenticator.Po - -rm -f tests/$(DEPDIR)/test_context-test-context.Po - -rm -f tests/$(DEPDIR)/test_exports-test-exports.Po - -rm -f tests/$(DEPDIR)/test_instance-test-instance.Po - -rm -f tests/$(DEPDIR)/test_portal-test-portal.Po - -rm -f tests/$(DEPDIR)/test_portal_impl-test-portal-impl.Po - -rm -f tests/$(DEPDIR)/test_update_portal-test-update-portal.Po - -rm -f tests/$(DEPDIR)/testcommon-testcommon.Po - -rm -f tests/$(DEPDIR)/testlibrary-can-use-fuse.Po - -rm -f tests/$(DEPDIR)/testlibrary-testlib.Po - -rm -f tests/$(DEPDIR)/testlibrary-testlibrary.Po - -rm -f tests/$(DEPDIR)/try_syscall-try-syscall.Po - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-hdr distclean-libtool distclean-local distclean-tags - -dvi: dvi-recursive - -dvi-am: - -html: html-recursive - -html-am: - -info: info-recursive - -info-am: - -install-data-am: install-bashcompletionDATA install-bwrapPROGRAMS \ - install-dbus_serviceDATA install-dbussystemserviceDATA \ - install-dist_dbusconfDATA \ - install-dist_installed_test_keyring2DATA \ - install-dist_installed_test_keyringDATA \ - install-dist_tmpfilesDATA install-dist_triggersSCRIPTS \ - install-envDATA install-fishcompletionDATA \ - install-fishconfDATA install-flatpakincludeHEADERS \ - install-installed_testDATA install-installed_testLTLIBRARIES \ - install-installed_testPROGRAMS install-installed_testSCRIPTS \ - install-installed_test_metaDATA install-introspectionDATA \ - install-nobase_installed_testDATA \ - install-nodist_flatpakincludeHEADERS install-nodist_girDATA \ - install-nodist_typelibDATA install-pkgconfigDATA \ - install-polkit_policyDATA install-polkit_rulesDATA \ - install-profileDATA install-scriptsSCRIPTS \ - install-selinux_develDATA install-selinux_moduleDATA \ - install-systemdsystemunitDATA install-systemduserunitDATA \ - install-systemenvgenSCRIPTS install-sysusersDATA \ - install-userenvgenSCRIPTS install-zshcompletionDATA - @$(NORMAL_INSTALL) - $(MAKE) $(AM_MAKEFLAGS) install-data-hook -install-dvi: install-dvi-recursive - -install-dvi-am: - -install-exec-am: install-binPROGRAMS install-dist_libexecSCRIPTS \ - install-libLTLIBRARIES install-libexecPROGRAMS - -install-html: install-html-recursive - -install-html-am: - -install-info: install-info-recursive - -install-info-am: - -install-man: - -install-pdf: install-pdf-recursive - -install-pdf-am: - -install-ps: install-ps-recursive - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-recursive - -rm -f $(am__CONFIG_DISTCLEAN_FILES) - -rm -rf $(top_srcdir)/autom4te.cache - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-bundle.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-commit-from.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-export.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-finish.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-import-bundle.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-init.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-sign.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build-update-repo.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-build.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-config.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-create-usb.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-document-export.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-document-info.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-document-list.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-document-unexport.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-enter.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-history.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-info.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-install.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-kill.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-list.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-make-current.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-mask.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-override.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-permission-list.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-permission-remove.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-permission-reset.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-permission-set.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-permission-show.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-pin.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-ps.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-remote-add.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-remote-delete.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-remote-info.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-remote-list.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-remote-ls.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-remote-modify.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-repair.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-repo.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-run.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-search.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-uninstall.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-builtins-update.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-cli-transaction.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-complete.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-main.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-permission-dbus-generated.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-polkit-agent-text-listener.Po - -rm -f app/$(DEPDIR)/flatpak-flatpak-quiet-transaction.Po - -rm -f app/$(DEPDIR)/libflatpak_app_la-flatpak-builtins-utils.Plo - -rm -f app/$(DEPDIR)/libflatpak_app_la-flatpak-table-printer.Plo - -rm -f app/$(DEPDIR)/libflatpak_app_la-parse-datetime.Plo - -rm -f common/$(DEPDIR)/flatpak_portal-flatpak-portal-error.Po - -rm -f common/$(DEPDIR)/libflatpak_common_base_la-flatpak-dbus-generated.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_base_la-flatpak-document-dbus-generated.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_base_la-flatpak-utils-base.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-appdata.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-auth.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-bundle-ref.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-bwrap.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-chain-input-stream.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-context.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-dir.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-enum-types.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-error.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-exports.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-installation.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-installed-ref.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-instance.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-json-oci.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-json.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-oci-registry.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-parental-controls.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-portal-error.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-progress.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-prune.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-ref-utils.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-ref.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-related-ref.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-remote-ref.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-remote.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-run.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-systemd-dbus-generated.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-transaction.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-uri.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-utils-http.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-utils.Plo - -rm -f common/$(DEPDIR)/libflatpak_common_la-flatpak-zstd-decompressor.Plo - -rm -f common/$(DEPDIR)/libflatpak_la-flatpak.Plo - -rm -f common/$(DEPDIR)/test_libflatpak-test-lib.Po - -rm -f icon-validator/$(DEPDIR)/flatpak_validate_icon-validate-icon.Po - -rm -f oci-authenticator/$(DEPDIR)/flatpak_oci_authenticator-flatpak-oci-authenticator.Po - -rm -f portal/$(DEPDIR)/flatpak_portal-flatpak-permission-dbus.Po - -rm -f portal/$(DEPDIR)/flatpak_portal-flatpak-portal-app-info.Po - -rm -f portal/$(DEPDIR)/flatpak_portal-flatpak-portal-dbus.Po - -rm -f portal/$(DEPDIR)/flatpak_portal-flatpak-portal.Po - -rm -f portal/$(DEPDIR)/flatpak_portal-portal-impl.Po - -rm -f portal/$(DEPDIR)/test_portal-flatpak-portal-dbus.Po - -rm -f portal/$(DEPDIR)/tests_test_update_portal-flatpak-portal-dbus.Po - -rm -f revokefs/$(DEPDIR)/demo-demo.Po - -rm -f revokefs/$(DEPDIR)/fuse-main.Po - -rm -f revokefs/$(DEPDIR)/fuse-writer.Po - -rm -f session-helper/$(DEPDIR)/flatpak_session_helper-flatpak-session-helper.Po - -rm -f subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bind-mount.Po - -rm -f subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-bubblewrap.Po - -rm -f subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-network.Po - -rm -f subprojects/bubblewrap/$(DEPDIR)/flatpak_bwrap-utils.Po - -rm -f subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-dbus-proxy.Po - -rm -f subprojects/dbus-proxy/$(DEPDIR)/flatpak_dbus_proxy-flatpak-proxy.Po - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-backports.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-console.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-dirfd.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-errors.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-fdio.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-local-alloc.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-lockfile.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-shutil.Plo - -rm -f subprojects/libglnx/$(DEPDIR)/libglnx_la-glnx-xattrs.Plo - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_instance-libglnx-testlib.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-libglnx-testlib.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_errors-test-libglnx-errors.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-libglnx-testlib.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_fdio-test-libglnx-fdio.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-libglnx-testlib.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_macros-test-libglnx-macros.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-libglnx-testlib.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_shutil-test-libglnx-shutil.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-libglnx-testlib.Po - -rm -f subprojects/libglnx/tests/$(DEPDIR)/test_libglnx_xattrs-test-libglnx-xattrs.Po - -rm -f system-helper/$(DEPDIR)/flatpak_system_helper-flatpak-system-helper.Po - -rm -f tests/$(DEPDIR)/hold_lock-hold-lock.Po - -rm -f tests/$(DEPDIR)/httpcache-httpcache.Po - -rm -f tests/$(DEPDIR)/libpreload.Plo - -rm -f tests/$(DEPDIR)/libtestlib_la-testlib.Plo - -rm -f tests/$(DEPDIR)/list_unused-list-unused.Po - -rm -f tests/$(DEPDIR)/mock_flatpak-mock-flatpak.Po - -rm -f tests/$(DEPDIR)/test_authenticator-test-authenticator.Po - -rm -f tests/$(DEPDIR)/test_context-test-context.Po - -rm -f tests/$(DEPDIR)/test_exports-test-exports.Po - -rm -f tests/$(DEPDIR)/test_instance-test-instance.Po - -rm -f tests/$(DEPDIR)/test_portal-test-portal.Po - -rm -f tests/$(DEPDIR)/test_portal_impl-test-portal-impl.Po - -rm -f tests/$(DEPDIR)/test_update_portal-test-update-portal.Po - -rm -f tests/$(DEPDIR)/testcommon-testcommon.Po - -rm -f tests/$(DEPDIR)/testlibrary-can-use-fuse.Po - -rm -f tests/$(DEPDIR)/testlibrary-testlib.Po - -rm -f tests/$(DEPDIR)/testlibrary-testlibrary.Po - -rm -f tests/$(DEPDIR)/try_syscall-try-syscall.Po - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-recursive - -mostlyclean-am: mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool - -pdf: pdf-recursive - -pdf-am: - -ps: ps-recursive - -ps-am: - -uninstall-am: uninstall-bashcompletionDATA uninstall-binPROGRAMS \ - uninstall-bwrapPROGRAMS uninstall-dbus_serviceDATA \ - uninstall-dbussystemserviceDATA uninstall-dist_dbusconfDATA \ - uninstall-dist_installed_test_keyring2DATA \ - uninstall-dist_installed_test_keyringDATA \ - uninstall-dist_libexecSCRIPTS uninstall-dist_tmpfilesDATA \ - uninstall-dist_triggersSCRIPTS uninstall-envDATA \ - uninstall-fishcompletionDATA uninstall-fishconfDATA \ - uninstall-flatpakincludeHEADERS uninstall-installed_testDATA \ - uninstall-installed_testLTLIBRARIES \ - uninstall-installed_testPROGRAMS \ - uninstall-installed_testSCRIPTS \ - uninstall-installed_test_metaDATA uninstall-introspectionDATA \ - uninstall-libLTLIBRARIES uninstall-libexecPROGRAMS \ - uninstall-nobase_installed_testDATA \ - uninstall-nodist_flatpakincludeHEADERS \ - uninstall-nodist_girDATA uninstall-nodist_typelibDATA \ - uninstall-pkgconfigDATA uninstall-polkit_policyDATA \ - uninstall-polkit_rulesDATA uninstall-profileDATA \ - uninstall-scriptsSCRIPTS uninstall-selinux_develDATA \ - uninstall-selinux_moduleDATA uninstall-systemdsystemunitDATA \ - uninstall-systemduserunitDATA uninstall-systemenvgenSCRIPTS \ - uninstall-sysusersDATA uninstall-userenvgenSCRIPTS \ - uninstall-zshcompletionDATA - -.MAKE: $(am__recursive_targets) all check check-am install install-am \ - install-data-am install-exec install-strip - -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ - am--depfiles am--refresh check check-TESTS check-am clean \ - clean-binPROGRAMS clean-bwrapPROGRAMS clean-checkLTLIBRARIES \ - clean-checkPROGRAMS clean-cscope clean-generic \ - clean-installed_testLTLIBRARIES clean-installed_testPROGRAMS \ - clean-libLTLIBRARIES clean-libexecPROGRAMS clean-libtool \ - clean-noinstLTLIBRARIES clean-noinstPROGRAMS cscope \ - cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \ - dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \ - dist-zstd distcheck distclean distclean-compile \ - distclean-generic distclean-hdr distclean-libtool \ - distclean-local distclean-tags distcleancheck distdir \ - distuninstallcheck dvi dvi-am html html-am info info-am \ - install install-am install-bashcompletionDATA \ - install-binPROGRAMS install-bwrapPROGRAMS install-data \ - install-data-am install-data-hook install-dbus_serviceDATA \ - install-dbussystemserviceDATA install-dist_dbusconfDATA \ - install-dist_installed_test_keyring2DATA \ - install-dist_installed_test_keyringDATA \ - install-dist_libexecSCRIPTS install-dist_tmpfilesDATA \ - install-dist_triggersSCRIPTS install-dvi install-dvi-am \ - install-envDATA install-exec install-exec-am \ - install-fishcompletionDATA install-fishconfDATA \ - install-flatpakincludeHEADERS install-html install-html-am \ - install-info install-info-am install-installed_testDATA \ - install-installed_testLTLIBRARIES \ - install-installed_testPROGRAMS install-installed_testSCRIPTS \ - install-installed_test_metaDATA install-introspectionDATA \ - install-libLTLIBRARIES install-libexecPROGRAMS install-man \ - install-nobase_installed_testDATA \ - install-nodist_flatpakincludeHEADERS install-nodist_girDATA \ - install-nodist_typelibDATA install-pdf install-pdf-am \ - install-pkgconfigDATA install-polkit_policyDATA \ - install-polkit_rulesDATA install-profileDATA install-ps \ - install-ps-am install-scriptsSCRIPTS install-selinux_develDATA \ - install-selinux_moduleDATA install-strip \ - install-systemdsystemunitDATA install-systemduserunitDATA \ - install-systemenvgenSCRIPTS install-sysusersDATA \ - install-userenvgenSCRIPTS install-zshcompletionDATA \ - installcheck installcheck-am installdirs installdirs-am \ - maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ - pdf pdf-am ps ps-am recheck tags tags-am uninstall \ - uninstall-am uninstall-bashcompletionDATA \ - uninstall-binPROGRAMS uninstall-bwrapPROGRAMS \ - uninstall-dbus_serviceDATA uninstall-dbussystemserviceDATA \ - uninstall-dist_dbusconfDATA \ - uninstall-dist_installed_test_keyring2DATA \ - uninstall-dist_installed_test_keyringDATA \ - uninstall-dist_libexecSCRIPTS uninstall-dist_tmpfilesDATA \ - uninstall-dist_triggersSCRIPTS uninstall-envDATA \ - uninstall-fishcompletionDATA uninstall-fishconfDATA \ - uninstall-flatpakincludeHEADERS uninstall-installed_testDATA \ - uninstall-installed_testLTLIBRARIES \ - uninstall-installed_testPROGRAMS \ - uninstall-installed_testSCRIPTS \ - uninstall-installed_test_metaDATA uninstall-introspectionDATA \ - uninstall-libLTLIBRARIES uninstall-libexecPROGRAMS \ - uninstall-nobase_installed_testDATA \ - uninstall-nodist_flatpakincludeHEADERS \ - uninstall-nodist_girDATA uninstall-nodist_typelibDATA \ - uninstall-pkgconfigDATA uninstall-polkit_policyDATA \ - uninstall-polkit_rulesDATA uninstall-profileDATA \ - uninstall-scriptsSCRIPTS uninstall-selinux_develDATA \ - uninstall-selinux_moduleDATA uninstall-systemdsystemunitDATA \ - uninstall-systemduserunitDATA uninstall-systemenvgenSCRIPTS \ - uninstall-sysusersDATA uninstall-userenvgenSCRIPTS \ - uninstall-zshcompletionDATA - -.PRECIOUS: Makefile - - -@ENABLE_INSTALLED_TESTS_TRUE@%.test: %$(EXEEXT) Makefile -@ENABLE_INSTALLED_TESTS_TRUE@ $(AM_V_GEN) (echo '[Test]' > $@.tmp; \ -@ENABLE_INSTALLED_TESTS_TRUE@ echo 'Type=session' >> $@.tmp; \ -@ENABLE_INSTALLED_TESTS_TRUE@ if [[ $(notdir $<) == *.wrap ]]; then \ -@ENABLE_INSTALLED_TESTS_TRUE@ wrapper=$(installed_testdir)/test-wrapper.sh; \ -@ENABLE_INSTALLED_TESTS_TRUE@ fi; \ -@ENABLE_INSTALLED_TESTS_TRUE@ echo "Exec=env G_TEST_SRCDIR=$(installed_testdir) G_TEST_BUILDDIR=$(installed_testdir) $$wrapper $(installed_testdir)/$(notdir $<) --tap" >> $@.tmp; \ -@ENABLE_INSTALLED_TESTS_TRUE@ echo 'Output=TAP' >> $@.tmp; \ -@ENABLE_INSTALLED_TESTS_TRUE@ mv $@.tmp $@) - -%.service: %.service.in config.log - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(libexecdir)|" \ - -e "s|\@localstatedir\@|$(localstatedir)|" \ - -e "s|\@media_dir\@|$(RUN_MEDIA_DIR)|" \ - -e "s|\@extraargs\@||" $< > $@ -$(top_builddir)/libglnx-config.h: Makefile.am - echo '#include "config.h"' > $@ - -common/flatpak-enum-types.h: $(flatpakinclude_HEADERS) common/flatpak-enum-types.h.template - $(AM_V_GEN) $(GLIB_MKENUMS) --template $(filter %.template,$^) $(filter-out %.template,$^) > \ - common/flatpak-enum-types.h.tmp && mv common/flatpak-enum-types.h.tmp common/flatpak-enum-types.h - -common/flatpak-enum-types.c: $(flatpakinclude_HEADERS) common/flatpak-enum-types.c.template - $(AM_V_GEN) $(GLIB_MKENUMS) --template $(filter %.template,$^) $(filter-out %.template,$^) > \ - common/flatpak-enum-types.c.tmp && mv common/flatpak-enum-types.c.tmp common/flatpak-enum-types.c - -common/flatpak-dbus-generated.c: data/org.freedesktop.Flatpak.xml data/org.freedesktop.Flatpak.Authenticator.xml Makefile - mkdir -p $(builddir)/common - $(AM_V_GEN) $(GDBUS_CODEGEN) \ - --interface-prefix org.freedesktop.Flatpak. \ - --c-namespace Flatpak \ - --generate-c-code $(builddir)/common/flatpak-dbus-generated \ - $(srcdir)/data/org.freedesktop.Flatpak.xml \ - $(srcdir)/data/org.freedesktop.Flatpak.Authenticator.xml \ - $(NULL) - -common/flatpak-document-dbus-generated.c: data/org.freedesktop.portal.Documents.xml Makefile - mkdir -p $(builddir)/common - $(AM_V_GEN) $(GDBUS_CODEGEN) \ - --interface-prefix org.freedesktop.portal. \ - --c-namespace XdpDbus \ - --generate-c-code $(builddir)/common/flatpak-document-dbus-generated \ - $(srcdir)/data/org.freedesktop.portal.Documents.xml \ - $(NULL) - -common/flatpak-systemd-dbus-generated.c: data/org.freedesktop.systemd1.xml Makefile - mkdir -p $(builddir)/common - $(AM_V_GEN) $(GDBUS_CODEGEN) \ - --interface-prefix org.freedesktop.systemd1. \ - --c-namespace Systemd \ - --generate-c-code $(builddir)/common/flatpak-systemd-dbus-generated \ - $(srcdir)/data/org.freedesktop.systemd1.xml \ - $(NULL) - -common/%-dbus-generated.h: common/%-dbus-generated.c - @true # Built as a side-effect of the rules for the .c - -common/flatpak-variant-private.h: subprojects/variant-schema-compiler/variant-schema-compiler data/flatpak-variants.gv - $(AM_V_GEN) $(srcdir)/subprojects/variant-schema-compiler/variant-schema-compiler $(VARIANT_SCHEMA_COMPILER_FLAGS) --outfile-header common/flatpak-variant-private.h --outfile common/flatpak-variant-impl-private.h --prefix var $(srcdir)/data/flatpak-variants.gv - -# Generated by the same tool at the same time -common/flatpak-variant-impl-private.h: common/flatpak-variant-private.h - @: - -# gobject-introspection rules --include $(INTROSPECTION_MAKEFILE) - -@HAVE_INTROSPECTION_TRUE@Flatpak-1.0.gir: libflatpak.la Makefile - -app/flatpak-permission-dbus-generated.c: data/org.freedesktop.impl.portal.PermissionStore.xml Makefile - mkdir -p $(builddir)/app - $(AM_V_GEN) $(GDBUS_CODEGEN) \ - --interface-prefix org.freedesktop.impl.portal \ - --c-namespace XdpDbus \ - --generate-c-code $(builddir)/app/flatpak-permission-dbus-generated \ - $(srcdir)/data/org.freedesktop.impl.portal.PermissionStore.xml \ - $(NULL) - -app/%-dbus-generated.h: app/%-dbus-generated.c - @true # Built as a side-effect of the rules for the .c - -app/parse-datetime.c: app/parse-datetime.y Makefile - $(AM_V_GEN) $(BISON) $< -o $@ - -portal/flatpak-permission-dbus.c: data/org.freedesktop.impl.portal.PermissionStore.xml Makefile - mkdir -p $(builddir)/portal - $(AM_V_GEN) $(GDBUS_CODEGEN) \ - --interface-prefix org.freedesktop.impl.portal \ - --c-namespace XdpDbus \ - --generate-c-code $(builddir)/portal/flatpak-permission-dbus \ - $(srcdir)/data/org.freedesktop.impl.portal.PermissionStore.xml \ - $(NULL) - -portal/flatpak-portal-dbus.c: data/org.freedesktop.portal.Flatpak.xml Makefile - mkdir -p $(builddir)/portal - $(AM_V_GEN) $(GDBUS_CODEGEN) \ - --interface-prefix org.freedesktop.portal \ - --c-namespace Portal \ - --generate-c-code $(builddir)/portal/flatpak-portal-dbus \ - $(srcdir)/data/org.freedesktop.portal.Flatpak.xml \ - $(NULL) - -portal/%-dbus.h: portal/%-dbus.c - @true # Built as a side-effect of the rules for the .c - -@BUILD_SYSTEM_HELPER_TRUE@system-helper/org.freedesktop.Flatpak.rules: system-helper/org.freedesktop.Flatpak.rules.in -@BUILD_SYSTEM_HELPER_TRUE@ $(AM_V_GEN) $(SED) -e "s|\@privileged_group\@|$(PRIVILEGED_GROUP)|" $< > $@ - -@BUILD_SYSTEM_HELPER_TRUE@%.policy: %.policy.in -@BUILD_SYSTEM_HELPER_TRUE@ $(AM_V_GEN) $(MSGFMT) --xml -d $(top_srcdir)/po --template $< -o $@ || cp $< $@ - -@BUILD_SYSTEM_HELPER_TRUE@%.conf: %.conf.in -@BUILD_SYSTEM_HELPER_TRUE@ $(AM_V_GEN) $(SED) \ -@BUILD_SYSTEM_HELPER_TRUE@ -e "s|\@SYSTEM_HELPER_USER\@|$(SYSTEM_HELPER_USER)|" \ -@BUILD_SYSTEM_HELPER_TRUE@ $< > $@ - -@BUILD_SELINUX_MODULE_TRUE@flatpak.pp.bz2: selinux/flatpak.te selinux/flatpak.fc selinux/build-selinux.sh -@BUILD_SELINUX_MODULE_TRUE@ $(srcdir)/selinux/build-selinux.sh . $^ - -@BUILD_AUTO_SIDELOADING_TRUE@%.path: %.path.in config.log -@BUILD_AUTO_SIDELOADING_TRUE@ $(AM_V_GEN) $(SED) -e "s|\@media_dir\@|$(RUN_MEDIA_DIR)|" $< > $@ - -tests/services/org.freedesktop.Flatpak.service: session-helper/org.freedesktop.Flatpak.service.in - mkdir -p tests/services - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(abs_top_builddir)|" $< > $@ - -tests/services/org.freedesktop.portal.Flatpak.service: portal/org.freedesktop.portal.Flatpak.service.in - mkdir -p tests/services - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(abs_top_builddir)|" -e "s|\@extraargs\@| --poll-timeout=1|" $< > $@ - -tests/services/org.freedesktop.Flatpak.SystemHelper.service: system-helper/org.freedesktop.Flatpak.SystemHelper.service.in - mkdir -p tests/services - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(abs_top_builddir)|" -e "s|\@extraargs\@| --session --no-idle-exit|" $< > $@ - -tests/services/org.freedesktop.impl.portal.desktop.test.service: tests/org.freedesktop.impl.portal.desktop.test.service.in - mkdir -p tests/services - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(abs_top_builddir)/tests|" $< > $@ - -tests/services/org.flatpak.Authenticator.test.service: tests/org.flatpak.Authenticator.test.service.in - mkdir -p tests/services - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(abs_top_builddir)/tests|" $< > $@ - -tests/services/org.flatpak.Authenticator.Oci.service: oci-authenticator/org.flatpak.Authenticator.Oci.service.in - mkdir -p tests/services - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(abs_top_builddir)|" $< > $@ - -tests/share/xdg-desktop-portal/portals/test.portal: tests/test.portal.in - mkdir -p tests/share/xdg-desktop-portal/portals - $(AM_V_GEN) install -m644 $< $@ - -tests/libtest.sh: tests/services/org.freedesktop.Flatpak.service tests/services/org.freedesktop.Flatpak.SystemHelper.service tests/services/org.freedesktop.portal.Flatpak.service tests/share/xdg-desktop-portal/portals/test.portal tests/services/org.freedesktop.impl.portal.desktop.test.service tests/services/org.flatpak.Authenticator.test.service tests/services/org.flatpak.Authenticator.Oci.service - -install-test-data-hook: -@ENABLE_INSTALLED_TESTS_TRUE@ mkdir -p $(DESTDIR)$(installed_testdir)/services -@ENABLE_INSTALLED_TESTS_TRUE@ ln -sf $(dbus_servicedir)/org.freedesktop.Flatpak.service $(DESTDIR)$(installed_testdir)/services/ -@ENABLE_INSTALLED_TESTS_TRUE@ $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(libexecdir)|" -e "s|\@extraargs\@| --poll-timeout=1|" $(top_srcdir)/portal/org.freedesktop.portal.Flatpak.service.in > $(DESTDIR)$(installed_testdir)/services/org.freedesktop.portal.Flatpak.service -@ENABLE_INSTALLED_TESTS_TRUE@ $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(libexecdir)|" -e "s|\@extraargs\@| --session --no-idle-exit|" $(top_srcdir)/system-helper/org.freedesktop.Flatpak.SystemHelper.service.in > $(DESTDIR)$(installed_testdir)/services/org.freedesktop.Flatpak.SystemHelper.service -@ENABLE_INSTALLED_TESTS_TRUE@ $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(installed_testdir)|" $(top_srcdir)/tests/org.freedesktop.impl.portal.desktop.test.service.in > $(DESTDIR)$(installed_testdir)/services/org.freedesktop.impl.portal.desktop.test.service -@ENABLE_INSTALLED_TESTS_TRUE@ $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(installed_testdir)|" $(top_srcdir)/tests/org.flatpak.Authenticator.test.service.in > $(DESTDIR)$(installed_testdir)/services/org.flatpak.Authenticator.test.service.service -@ENABLE_INSTALLED_TESTS_TRUE@ $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(libexecdir)|" $(top_srcdir)/oci-authenticator/org.flatpak.Authenticator.Oci.service.in > $(DESTDIR)$(installed_testdir)/services/org.flatpak.Authenticator.Oci.service -@ENABLE_INSTALLED_TESTS_TRUE@ mkdir -p $(DESTDIR)$(installed_testdir)/share/xdg-desktop-portal/portals -@ENABLE_INSTALLED_TESTS_TRUE@ install -m644 $(top_srcdir)/tests/test.portal.in $(DESTDIR)$(installed_testdir)/share/xdg-desktop-portal/portals/test.portal - -tests/package_version.txt: Makefile - echo $(PACKAGE_VERSION) > tests/package_version.txt - -tests/test-basic.sh: tests/package_version.txt - -update-test-matrix: - $(srcdir)/tests/update-test-matrix - -tests/test-%.wrap: - @true - -tests/runtime-repo.stamp: tests/make-runtime-repos tests/make-test-runtime.sh flatpak - $< $(abs_top_builddir) $(top_srcdir)/tests/make-test-runtime.sh tests/runtime-repo tests/runtime-repo.stamp - -distclean-local: - rm -rf tests/runtime-repo - rm -rf tests/runtime-repo.stamp - -@VALGRIND_CHECK_RULES@ - -# NOTE: bwrap is install-bwrapPROGS which is run from install-data, not install-exec, this data-hook is used -install-data-hook: - $(MAKE) $(AM_MAKEFLAGS) install-test-data-hook -@PRIV_MODE_SETUID_TRUE@@WITH_SYSTEM_BWRAP_FALSE@ $(SUDO_BIN) chown root $(DESTDIR)$(libexecdir)/flatpak-bwrap -@PRIV_MODE_SETUID_TRUE@@WITH_SYSTEM_BWRAP_FALSE@ $(SUDO_BIN) chmod u+s $(DESTDIR)$(libexecdir)/flatpak-bwrap - -flatpak.env: env.d/flatpak.env.in - $(AM_V_GEN) $(SED) -e "s|\@localstatedir\@|$(localstatedir)|" \ - -e "s|\@sysconfdir\@|$(sysconfdir)|" $< > $@ - -.PHONY: coverage lcov-clean genlcov - -coverage: - $(AM_V_GEN) $(MAKE) $(AM_MAKEFLAGS) lcov-clean - $(AM_V_GEN) FLATPAK_TEST_COVERAGE=1 $(MAKE) check - $(AM_V_GEN) $(MAKE) $(AM_MAKEFLAGS) genlcov - -lcov-clean: - $(AM_V_GEN) $(LCOV) --directory $(top_builddir) --zerocounters - -genlcov: - $(AM_V_GEN) $(LCOV) --directory $(top_builddir) --capture --output-file coverage.info - $(AM_V_GEN) $(GENHTML) --prefix $(top_builddir) --output-directory coverage coverage.info - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/NEWS b/NEWS index e72dd31..9a6ce19 100644 --- a/NEWS +++ b/NEWS @@ -1,13 +1,183 @@ -Changes in 1.14.10 +Changes in 1.16.0 +~~~~~~~~~~~~~~~~~~ +Released: 2025-01-09 + +Bug fixes: + + * Update libglnx to 2024-12-06: + - Fix an assertion failure if creating a parent directory encounters a + dangling symlink (GNOME/libglnx#1) + - Fix a Meson warning + +* Don't emit terminal progress indicator escape sequences by default. They are + interpreted as notifications by some terminal emulators. (#6052) + +* Fix introspection annotations in libflatpak + +Enhancements: + +* Add the `FLATPAK_TTY_PROGRESS` environment variable, which re-enables the + terminal progress indicator escape sequences added in 1.15.91. + +* Document the `FLATPAK_FANCY_OUTPUT` environment variable, which allows + disabling the fancy formatting when outputting to a terminal. + +Changes in 1.15.91 +~~~~~~~~~~~~~~~~~~ +Released: 2024-12-19 + +Enhancements: + + * Add the `FLATPAK_DATA_DIR` environment variable, which allows overriding + at runtime the data directory location that Flatpak uses to search for + configuration files such as remotes. This is useful for running tests, + and for when installing using Flatpak in a chroot. + + * Add a `FLATPAK_DOWNLOAD_TMPDIR` variable. This allows using download + directories other than /var/tmp. + + * Emit progress escape sequence. This can be used by terminal emulators + to detect and display progress of Flatpak operations on their graphical + user interfaces. + +Bug fixes: + + * Install missing test data. This should fix "as-installed" tests via + `ginsttest-runner`, used for example in Debian's autopkgtest framework. + + * Unify and improve how the Wayland socket is passed to the sandboxed app. + This should fix a regression that is triggered by compositors that both + implement the security-context-v1 protocol, and sets the `WAYLAND_DISPLAY` + environment variable when launching Flatpak apps. (#5863) + + * Fix the plural form of a translatable string. + +Changes in 1.15.12 +~~~~~~~~~~~~~~~~~~ +Released: 2024-11-28 + +Bug fixes: + + * Return to using the process ID of the Flatpak app in the cgroup name. + Using the instance ID in 1.15.11 caused crashes when installing apps, + extensions or runtimes that use the "extra data" mechanism, which + does not set up an instance ID. (#6009) + +Changes in 1.15.11 +~~~~~~~~~~~~~~~~~~ +Released: 2024-11-26 + +Dependencies: + + * In distributions that compile Flatpak to use a separate bubblewrap + executable, version 0.11.0 is recommended (but not required). + The minimum bubblewrap continues to be 0.10.0. + + * In distributions that compile Flatpak to use a separate xdg-dbus-proxy + executable, version 0.1.6 is recommended (but not required). + The minimum xdg-dbus-proxy continues to be 0.1.0. + +Enhancements: + + * Allow applications like WebKit to connect the AT-SPI accessibility tree + of processes in a sub-sandbox with the tree in the main process (#5898) + + * New sandboxing parameter `flatpak run --a11y-own-name`, which is + like `--own-name` but for the accessibility bus + + * flatpak-portal API v7: add new sandbox-a11y-own-names option, which + accepts names matching `${FLATPAK_ID}.*` + + * Apps may call the `org.a11y.atspi.Socket.Embedded` method on names + matching `${FLATPAK_ID}.Sandboxed.*` by default + + * `flatpak run -vv $app_id` shows all applicable sandboxing parameters + and their source, including overrides, as debug messages (#5895) + + * Add --device=usb, a subset of --device=all + + * Introduce USB device listing + + * Apps can list which USB devices they want to access ahead of time by + using the `--usb` parameter. Check the manpages for the more information + about the accepted syntax. + + * Denying access to USB devices is also possible with the `--no-usb` + parameter. The syntax is equal to `--usb`. + + * Both options merely store metadata, and aren't used by Flatpak itself. + This metadata is intended to be used by the (as of now, still in + progress) USB portal to decide which devices the app can enumerate and + request access. + + * Add support for KDE search completion + + * Use the instance id of the Flatpak app as part of the cgroup name. This + better matches the naming conventions for cgroup. + + * Preconfigured repositories can now be set up by OS vendors using + `${datadir}/flatpak/remotes.d` (typically /usr/share/flatpak/remotes.d), + in addition to `${sysconfdir}/flatpak/remotes.d` (typically + /etc/flatpak/remotes.d) which is intended for local sysadmin use + +Bug fixes: + + * Update libglnx to 2024-08-23 (#5918) + + * fix build in environments that use -Werror=return-type, such as + openSUSE Tumbleweed (#5778) + + * add a fallback definition for G_PID_FORMAT with older GLib + + * avoid warnings for g_steal_fd() with newer GLib + + * improve compatibility of g_closefrom() backport with newer GLib + + * Update meson wrap file for bubblewrap to version 0.11.0: + + * drop Autotools build system + + * improve handling of EINTR + + * improve handling of socket control messages + + * improve compatibility with busybox + + * improve compatibility with older Meson + + * fix deprecation warnings + + * Update meson wrap file for xdg-dbus-proxy to version 0.1.6: + + * compatibility with D-Bus implementations that pipeline the + authentication handshake, such as sd-bus and zbus + + * compatibility with D-Bus implementations that use non-consecutive + serial numbers, such as godbus and zbus + + * broadcast signals can be allowed without having to add TALK permission + (#5828) + + * fix memory leaks + + * Fix some memory leaks + + * Translation updates: cs, pl, zh_CN + +Internal changes: + + * Better const-correctness (#5913) + * Fix a shellcheck warning in the tests (#5914) + +Changes in 1.15.10 ~~~~~~~~~~~~~~~~~~ Released: 2024-08-14 Dependencies: * In distributions that compile Flatpak to use a separate bubblewrap (bwrap) - executable, either version 0.10.0, version 0.6.x ≥ 0.6.3, or a version - with a backport of the --bind-fd option is required. - These versions add a new feature which is required by the security fix + executable, version 0.10.0 is required. + This version adds a new feature which is required by the security fix in this release. Security fixes: @@ -22,29 +192,165 @@ Documentation: * Mark the 1.12.x and 1.10.x branches as end-of-life (#5352) -Version 1.14.9 was not released due to an incompatibility with older -versions of GLib. Version 1.14.10 replaces it. +Other bug fixes: + + * Fix several memory leaks (#5883, #5884) -Changes in 1.14.8 +Internal changes: + + * Record a log file when running build-time tests with + AddressSanitizer (#5884) + + * Add initial suppressions file for AddressSanitizer (#5884) + +Changes in 1.15.9 ~~~~~~~~~~~~~~~~~ -Released: 2024-04-30 +Released: 2024-07-22 + +Dependencies: + + * bubblewrap and xdg-dbus-proxy are now provided by Meson wrap files + instead of being directly vendored via `git submodule`. + If downloading external software during build is not allowed in your + environment, please install suitable versions of bubblewrap and + xdg-dbus-proxy separately, then configure Flatpak with options similar to + `-Dsystem_bubblewrap=bwrap -Dsystem_dbus_proxy=xdg-dbus-proxy` + (most major distributions package it like this already). + +Enhancements: + + * If xdg-dbus-proxy is new enough (0.1.6 or later, not yet released), + allow two broadcast signals from AT-SPI by default, allowing bus + traffic to be reduced. If xdg-dbus-proxy is older, this change will + have no practical effect but is harmless. (#5828) + + * Install csh profile snippet (#5753) + +Bug fixes: + + * Expand the list of environment variables that Flatpak apps do not + inherit from the host system (#5765, #5785) + + * Take time zone information from $TZDIR if set (#5850) + + * Fix a memory leak since 1.15.7 when reloading D-Bus configuration (#5856) + + * Fix a memory leak when running `flatpak permissions` (#5844) + + * Fix memory leaks in `flatpak update` (#5816) + + * Fix memory leaks when installing packages (#5811) + + * Use more similar translatable strings for some error messages (#5748) + + * Document `flatpak config --set languages '*all*'` correctly: + it is really `*all*` (or equivalently `*`), not just `all` (#5836) + + * Fix a misleading comment in the test for CVE-2024-32462 (#5779) + + * Fix a copy/paste error in the 1.15.7 release notes + + * On systems where subdirectories of /sys have been made inaccessible, + continue without them (#5138) + + * Make tests more compatible with non-GNU shell utilities (#5812) + + * Translation updates: ka (#5873), hi (#5838), pt_BR (#5877), zh_CN (#5843) + +Internal changes: + + * libglnx and variant-schema-compiler are now managed as `git subtree` + instead of `git submodule`. + Maintainers and contributors, please see `subprojects/README.md` for + details of how to interact with these. + In particular this means that submodules no longer need to be set up + before working on a git clone. (#5800, #5845) + + * Split library code into more, smaller translation units, reducing + internal circular dependencies (#5409, #5801, #5803) + + * Add some convenience macros in the test suite (#5693) + + * Minor internal robustness improvement (#5833) + + * Add configuration for Github Codespaces (#5767) + + * Improve CI configuration (#5791) + + * Work around infrastructure issues in third-party apt repositories + used by default in Github Workflows (#5786) + +Changes in 1.15.8 +~~~~~~~~~~~~~~~~~ +Released: 2024-04-18 + +Security fixes: -No changes. This release is rolling out to correct mismatching submodule versions -in the release tarball. + * Don't allow an executable name to be misinterpreted as a command-line + option for bwrap(1). This prevents a sandbox escape where a malicious + or compromised app could ask xdg-desktop-portal to generate a .desktop + file with access to files outside the sandbox. (CVE-2024-32462) + +Other bug fixes: + + * Pass the -export-dynamic linker option as -Wl,-export-dynamic, + fixing build failures with clang 18 and lld 18 (#5760) + + * Fix a double-free when installation is cancelled (#5763) -Changes in 1.14.7 + * Fix installed-tests failure with "FUSERMOUNT: unbound variable" + (#5751) + + * Translation updates: pt_BR (#5762), tr (#5761) + +Changes in 1.15.7 ~~~~~~~~~~~~~~~~~ -Released: 2024-04-29 +Released: 2024-03-27 + +Dependencies: + + * The Meson build system is now required. + Compiling with Autotools is no longer possible. + + * In distributions that compile Flatpak to use a separate bubblewrap (bwrap) + executable, version 0.9.0 is recommended. Several of the bug fixes listed + below will not be active if an older version is used. + + * In distributions that compile Flatpak to use a separate xdg-dbus-proxy + executable, version 0.1.5 is recommended. + + * If libmalcontent (parental controls) is enabled, it must be version 0.5.0 + or later. New features: + * Automatically remove obsolete driver versions and other autopruned refs + (#5632) + + * `--socket=inherit-wayland-socket` (#5614) + * Automatically reload D-Bus session bus configuration after installing or upgrading apps, to pick up any exported D-Bus services (#3342) Bug fixes: - * Expand the list of environment variables that Flatpak apps do not - inherit from the host system (#5765, #5785) + * Update included copy of bubblewrap to version 0.9.0: + + * `--symlink` is now idempotent, meaning it succeeds if the + symlink already exists and already has the desired target + (#2387, #3477, #5255) + * Report a better error message if `mount(2)` fails with `ENOSPC` + * Fix a double-close on error reading from `--args`, `--seccomp` or + `--add-seccomp-fd` argument + * Improve memory allocation behaviour + * Silence various compiler warnings + + * Update included copy of xdg-dbus-proxy to version 0.1.5: + + * Fix handling of long object paths + + * Don't parse `` as the application name + (#5700) * Don't refuse to start apps when there is no D-Bus system bus available (#5076) @@ -52,55 +358,99 @@ Bug fixes: * Don't try to repeat migration of apps whose data was migrated to a new name and then deleted (#5668) - * Fix warnings from newer GLib versions (#5660) + * Improve handling of mixed locales on systems with systemd-localed (#5497) + + * Improve display of ellipsized columns in wide terminals (#5722) + + * Make `flatpak info -e` look for extensions in all installations (#5670) + + * Fix warnings from newer GLib versions (#5660, #5737) * Always set the `container` environment variable (#5610) + * Always let the app inherit redirected file descriptors (#5626) + * In `flatpak ps`, add xdg-desktop-portal-gnome to the list of backends we'll use to learn which apps are running in the background (#5729) + * Don't use `WAYLAND_SOCKET` unless given `--socket=inherit-wayland-socket` + (#5614) + + * Use `fusermount3` if compiled with FUSE 3, overridable with + `-Dsystem_fusermount` compile-time option (#5104) + * Avoid leaking a temporary variable from /etc/profile.d/flatpak.sh into the shell environment (#5574) + * Improve async-signal safety (#5687) + + * Fix various memory leaks (#5683, #5690, #5691) + * Avoid undefined behaviour of signed left-shift when storing object IDs in a hash table (#5738) - * Fix Docbook validity in documentation (#5719) + * Detect the correct gtk-doc when cross-compiling (#5650) - * Skip more tests when FUSE isn't available (#5611) + * Detect the correct wayland-scanner when cross-compiling (#5596) - * Fix a misleading comment in the test for CVE-2024-32462 (#5779) + * Documentation improvements (#5659, #5677, #5682, #5664, #5719) -Internal changes: + * Skip more tests when FUSE isn't available (#5611) - * Fix Github Workflows recipes + * Translation updates (#5602, #5707) -Changes in 1.14.6 +Changes in 1.15.6 ~~~~~~~~~~~~~~~~~ -Released: 2024-04-18 +Released: 2023-11-14 -Security fixes: - - * Don't allow an executable name to be misinterpreted as a command-line - option for bwrap(1). This prevents a sandbox escape where a malicious - or compromised app could ask xdg-desktop-portal to generate a .desktop - file with access to files outside the sandbox. (CVE-2024-32462) +Dependencies: -Other bug fixes: + * In distributions that compile Flatpak to use a separate bubblewrap (bwrap) + executable, version 0.8.0 is now required. - * Don't parse `` as the application name - (#5700) + * Enabling the optional Wayland security context feature requires + libwayland-client, wayland-scanner >= 1.15 and wayland-protocols >= 1.32. -Changes in 1.14.5 -~~~~~~~~~~~~~~~~~ -Released: 2023-12-08 + * Ubuntu 18.04 is no longer routinely tested. Support for dependency + versions included in Ubuntu 18.04 should be considered "at risk". Features: + * Add --device=input, for access to evdev devices in /dev/input (#5481) + + * Update bundled copy of bubblewrap to version 0.8.0, and rely on its + features: + * Improve error message if seccomp is disabled in kernel config + * Security hardening: set user namespace limit to 0, to prevent creation + of nested user namespaces in a more robust way (#5084) + + * For subsandboxes started by flatpak-portal, inherit environment + variables from the `flatpak run` that started the original instance + rather than from flatpak-portal, fixing behaviour of FLATPAK_GL_DRIVERS + and similar features (#5278) + * Stop http transfers if a download in progress becomes very slow (#5519) + * Make it easier to configure extra languages, by picking them up from + AccountsService if configured there (#5006) + + * Add new flatpak_transaction_add_rebase_and_uninstall() API, + allowing end-of-life apps to be replaced by their intended replacement + more reliably (#3991) + + * Create a private Wayland socket with the "security context" extension + if available, allowing the compositor to identify connections from + sandboxed apps as belonging to the sandbox (#4920, #5507, #5558) + + * Update libglnx to 2023-08-29 + * Use features of newer GLib versions if available + * Turn off system-level crash reporting infrastructure during + some unit tests that involve intentional assertion failures + * Add anchors to link to sections of flatpak-metadata documentation (#5582) + * New translations: ka, nl. + Bug fixes: * Avoid warnings processing symbolic links with GLib >= 2.77.0, and @@ -119,6 +469,9 @@ Bug fixes: * Forward-compatibility with libappstream 1.0 (#5563) + * Fix installation with Meson if configured with -Dauto_sideloading=true + (#5495) + * Fix a memory leak (#5329) * Fix compiler warnings (#5362, #5366) @@ -133,11 +486,24 @@ Bug fixes: * Clarify documentation for D-Bus name ownership (#5582) + * Translation updates: id, tr, zh_CN + (#5332, #5565) + Internal changes: - * CI improvements (#5381) + * Split up large source files into smaller modules, reducing internal + circular dependencies (#5410, #5411, #5415, #5419, #5416, #5414) + + * Re-synchronize code backported from GLib with the version in GLib + (#5410) + + * Make the flags used to apply "extra data" clearer (#5466) + + * Use glnx_opendirat() where possible (#5527) -Changes in 1.14.4 + * CI improvements (#5374, #5381) + +Changes in 1.15.4 ~~~~~~~~~~~~~~~~~ Released: 2023-03-16 @@ -155,11 +521,20 @@ Security fixes: Other bug fixes: -* Translation update: pl +* Document the path used for `flatpak override` +* Translation updates: oc, pl, ru, sv, tr -Changes in 1.14.3 +Changes in 1.15.3 ~~~~~~~~~~~~~~~~~ -Released: 2023-02-27 +Released: 2023-02-21 + +Build system: + +* Building this version of Flatpak with Meson is recommended. The source + release flatpak-1.15.3.tar.xz no longer contains Autotools-generated + files, although this version can still be built using Autotools after + running `./autogen.sh`. Future versions are likely to remove the + Autotools build system. Bug fixes: @@ -175,6 +550,20 @@ Bug fixes: filename in the error message (#5293) * Unset $GDK_BACKEND for apps, ensuring GTK apps with --socket=fallback-x11 can work (#5303) +* Fix a deprecation warning when compiled with curl >= 7.85 (#5284) +* Translation updates: es, ru (#5266, #5312, #5313) + +Internal changes: + +* Better diagnostic messages for why runtimes are or are not considered + unused (#5237) + +Changes in 1.15.2 +~~~~~~~~~~~~~~~~~ +Released: 2023-02-06 + +Bug fixes: + * Never try to export a parent of reserved directories as a --filesystem, for example /run, which would prevent the app from starting (#5205, #5207) * Never try to export a --filesystem below /run/flatpak or /run/host, @@ -183,13 +572,6 @@ Bug fixes: symlink to the root directory (#1357) * Show a warning when the --filesystem exists but cannot be shared with the sandbox (#1357, #5035, #5205, #5207) - -Changes in 1.14.2 -~~~~~~~~~~~~~~~~~ -Released: 2023-02-06 - -Bug fixes: - * Display the intended messages for `flatpak repair` (#5204) * Exporting an app to an existing repository on a CIFS filesystem now works as intended (#5257) @@ -198,21 +580,67 @@ Bug fixes: * Unset $XKB_CONFIG_ROOT for apps, avoiding crashes in GTK and Qt apps under Wayland when this variable is set to a path not available in the sandbox (#5194) -* Unset $KRB5CCNAME for apps * When using the fish shell, avoid duplicate XDG_DATA_DIRS entries if the profile script is sourced more than once (#5198) +* Update included copy of bubblewrap to 0.7.0 for better error messages +* Install SELinux files correctly when building with Meson +* Translation updates: ru, tr (#5256, #5262) Internal changes: -* The INFO log level is now treated the same as the DEBUG log level - by `flatpak -v`, to make backports from 1.15.x simpler +* Update included copy of libglnx +* flatpak -v now uses the INFO log level, and flatpak -vv uses the + DEBUG log level in the flatpak log domain. Previously, the extra + messages that were logged by flatpak -vv were in a separate "flatpak2" + log domain. G_MESSAGES_DEBUG=flatpak previously had an effect similar to + flatpak -v, and is now more similar to flatpak -vv. (#5001) -Changes in 1.14.1 +Changes in 1.15.1 ~~~~~~~~~~~~~~~~~ -Released: 2022-11-18 +Released: 2022-11-17 + +Dependencies: + +* When building with Meson, gpgme 1.8.0 is now required. + Older versions can still be used by building with Autotools. + +Features: + +* If an old temporary deploy directory was leaked by versions before #5146, + clean it up the next time the same app is updated (#5164) + +Bug fixes: + +* If an app update is blocked by parental controls policies, clean up the + temporary deploy directory (#5146) +* Fix Autotools build with versions of gpgme that no longer provide + gpgme-config(1) (#5173) +* Fix a possible parallel build failure with Meson (#5165) +* Fix a compiler warning on 32-bit architectures (#5148) +* When building with Autotools, be more consistent about applying compiler + warning flags (#5149) +* Unset $TEMP, $TEMPDIR and $TMP for apps, the same as $TMPDIR (#5168) +* Treat /efi the same as /boot/efi (#5155) + +Changes in 1.15.0 +~~~~~~~~~~~~~~~~~ +Released: 2022-10-24 + +Build system: + +* Flatpak can now be compiled using Meson instead of Autotools. + This requires Meson 0.53.0 or later, and Python 3.5 or later. + The Autotools build system is likely to be removed during either the + 1.15.x or 1.17.x cycle. (#4845) New features: +* Allow the `modify_ldt` system call as part of `--allow=multiarch`. + This increases attack surface, but is required when running 16-bit + executables in some versions of Wine. (#4297) +* Share gssproxy socket, which acts like a portal for Kerberos authentication. + This lets apps use Kerberos authentication without needing a sandbox hole. + (#4914) * Add a httpbackend variable to flatpak.pc, allowing dependent projects like GNOME Software to detect whether they are compatible with libflatpak (#5054) @@ -231,21 +659,13 @@ Bug fixes: * Fix a warning when listing a document with no permissions (#5055) * Fix compilation with GLib 2.66.x (as used in Debian 11) (#5062) * Fix compilation with GLib 2.58.x (as used in Debian 10) (#5066) -* Fix a compiler warning on 32-bit architectures (#5148) -* If an app update is blocked by parental controls policies, clean up the - temporary deploy directory (#5146) -* Fix Autotools build with versions of gpgme that no longer provide - gpgme-config(1) (#5173) -* When building with Autotools, be more consistent about applying compiler - warning flags (#5149) -* Unset $TEMP, $TEMPDIR and $TMP for apps, the same as $TMPDIR (#5168) -* Treat /efi the same as /boot/efi (#5155) * Make generated files more reproducible (#5085) * Translation updates: cs, id, pl, pt_BR (#5052, #5056, #5059, #5126) Internal changes: * Update project logo in README (#5119) +* Update libglnx subproject (#5140) Changes in 1.14.0 ~~~~~~~~~~~~~~~~~ diff --git a/README.md b/README.md index 417f351..d016ef7 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,10 @@ desktop applications on Linux. See https://flatpak.org/ for more information. +Flatpak is available in the package repositories of most Linux distributions +and can be installed from there. See https://flatpak.org/setup/ for quick +setup instructions for many distributions. + Community discussion happens in [#flatpak:matrix.org](https://matrix.to/#/#flatpak:matrix.org), on [the mailing list](https://lists.freedesktop.org/mailman/listinfo/flatpak), and on [the Flathub Discourse](https://discourse.flathub.org/). Read documentation for Flatpak [here](https://docs.flatpak.org/en/latest/index.html). diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 0000000..2d4315d --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,46 @@ +# Security policy for Flatpak + + * [Supported Versions](#Supported-Versions) + * [Reporting a Vulnerability](#Reporting-a-Vulnerability) + * [Security Announcements](#Security-Announcements) + * [Acknowledgements](#Acknowledgements) + +## Supported Versions + +In stable branches and released packages, this table is likely to be outdated; +please check +[the latest version](https://github.com/flatpak/flatpak/blob/main/SECURITY.md). + +| Version | Supported | Status +| -------- | ------------------ | -------------------------------------------------------------- | +| 1.15.x | :hammer: | Development branch, releases may include non-security changes | +| 1.14.x | :white_check_mark: | Stable branch, recommended for use in distributions | +| ≤ 1.13.x | :x: | Older branches, no longer supported | + +The latest stable branch (currently 1.14.x) is the highest priority for +security fixes. +If a security vulnerability is reported under embargo, having new releases +for older stable branches will not always be treated as a blocker for +lifting the embargo. + +## Reporting a Vulnerability + +If you think you've identified a security issue in Flatpak, please DO NOT +report the issue publicly via the GitHub issue tracker, mailing list, +Matrix, IRC or any other public medium. Instead, send an email with as +many details as possible to +[flatpak-security@lists.freedesktop.org](mailto:flatpak-security@lists.freedesktop.org). +This is a private mailing list for the Flatpak maintainers. + +Please do **not** create a public issue. + +## Security Announcements + +The [flatpak@lists.freedesktop.org](mailto:flatpak@lists.freedesktop.org) email list is used for messages about +Flatpak security announcements, as well as general announcements and +discussions. +You can join the list [here](https://lists.freedesktop.org/mailman/listinfo/flatpak). + +## Acknowledgements + +This text was partially based on the [github.com/containers security policy](https://github.com/containers/common/blob/main/SECURITY.md). diff --git a/acinclude.m4 b/acinclude.m4 deleted file mode 100644 index 5ae0ed9..0000000 --- a/acinclude.m4 +++ /dev/null @@ -1,429 +0,0 @@ -#serial 12 - -# Checks the location of the XML Catalog -# Usage: -# JH_PATH_XML_CATALOG([ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -# Defines XMLCATALOG and XML_CATALOG_FILE substitutions -AC_DEFUN([JH_PATH_XML_CATALOG], -[ - # check for the presence of the XML catalog - AC_ARG_WITH([xml-catalog], - AC_HELP_STRING([--with-xml-catalog=CATALOG], - [path to xml catalog to use]),, - [with_xml_catalog=/etc/xml/catalog]) - jh_found_xmlcatalog=true - XML_CATALOG_FILE="$with_xml_catalog" - AC_SUBST([XML_CATALOG_FILE]) - AC_MSG_CHECKING([for XML catalog ($XML_CATALOG_FILE)]) - if test -f "$XML_CATALOG_FILE"; then - AC_MSG_RESULT([found]) - else - jh_found_xmlcatalog=false - AC_MSG_RESULT([not found]) - fi - - # check for the xmlcatalog program - AC_PATH_PROG(XMLCATALOG, xmlcatalog, no) - if test "x$XMLCATALOG" = xno; then - jh_found_xmlcatalog=false - fi - - if $jh_found_xmlcatalog; then - ifelse([$1],,[:],[$1]) - else - ifelse([$2],,[AC_MSG_ERROR([could not find XML catalog])],[$2]) - fi -]) - -# Checks if a particular URI appears in the XML catalog -# Usage: -# JH_CHECK_XML_CATALOG(URI, [FRIENDLY-NAME], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -AC_DEFUN([JH_CHECK_XML_CATALOG], -[ - AC_REQUIRE([JH_PATH_XML_CATALOG],[JH_PATH_XML_CATALOG(,[:])])dnl - AC_MSG_CHECKING([for ifelse([$2],,[$1],[$2]) in XML catalog]) - if $jh_found_xmlcatalog && \ - AC_RUN_LOG([$XMLCATALOG --noout "$XML_CATALOG_FILE" "$1" >&2]); then - AC_MSG_RESULT([found]) - ifelse([$3],,,[$3 -])dnl - else - AC_MSG_RESULT([not found]) - ifelse([$4],, - [AC_MSG_ERROR([could not find ifelse([$2],,[$1],[$2]) in XML catalog])], - [$4]) - fi -]) - -# =========================================================================== -# http://www.gnu.org/software/autoconf-archive/ax_valgrind_check.html -# =========================================================================== -# -# SYNOPSIS -# -# AX_VALGRIND_CHECK() -# -# DESCRIPTION -# -# Checks whether Valgrind is present and, if so, allows running `make -# check` under a variety of Valgrind tools to check for memory and -# threading errors. -# -# Defines VALGRIND_CHECK_RULES which should be substituted in your -# Makefile; and $enable_valgrind which can be used in subsequent configure -# output. VALGRIND_ENABLED is defined and substituted, and corresponds to -# the value of the --enable-valgrind option, which defaults to being -# enabled if Valgrind is installed and disabled otherwise. -# -# If unit tests are written using a shell script and automake's -# LOG_COMPILER system, the $(VALGRIND) variable can be used within the -# shell scripts to enable Valgrind, as described here: -# -# https://www.gnu.org/software/gnulib/manual/html_node/Running-self_002dtests-under-valgrind.html -# -# Usage example: -# -# configure.ac: -# -# AX_VALGRIND_CHECK -# -# Makefile.am: -# -# @VALGRIND_CHECK_RULES@ -# VALGRIND_SUPPRESSIONS_FILES = my-project.supp -# EXTRA_DIST = my-project.supp -# -# This results in a "check-valgrind" rule being added to any Makefile.am -# which includes "@VALGRIND_CHECK_RULES@" (assuming the module has been -# configured with --enable-valgrind). Running `make check-valgrind` in -# that directory will run the module's test suite (`make check`) once for -# each of the available Valgrind tools (out of memcheck, helgrind, drd and -# sgcheck), and will output results to test-suite-$toolname.log for each. -# The target will succeed if there are zero errors and fail otherwise. -# -# The macro supports running with and without libtool. -# -# LICENSE -# -# Copyright (c) 2014, 2015 Philip Withnall -# -# Copying and distribution of this file, with or without modification, are -# permitted in any medium without royalty provided the copyright notice -# and this notice are preserved. This file is offered as-is, without any -# warranty. - -AC_DEFUN([AX_VALGRIND_CHECK],[ - dnl Check for --enable-valgrind - AC_MSG_CHECKING([whether to enable Valgrind on the unit tests]) - AC_ARG_ENABLE([valgrind], - [AS_HELP_STRING([--enable-valgrind], [Whether to enable Valgrind on the unit tests])], - [enable_valgrind=$enableval],[enable_valgrind=]) - - # Check for Valgrind. - AC_CHECK_PROG([VALGRIND],[valgrind],[valgrind]) - - AS_IF([test "$enable_valgrind" = "yes" -a "$VALGRIND" = ""],[ - AC_MSG_ERROR([Could not find valgrind; either install it or reconfigure with --disable-valgrind]) - ]) - AS_IF([test "$enable_valgrind" != "no"],[enable_valgrind=yes]) - - AM_CONDITIONAL([VALGRIND_ENABLED],[test "$enable_valgrind" = "yes"]) - AC_SUBST([VALGRIND_ENABLED],[$enable_valgrind]) - AC_MSG_RESULT([$enable_valgrind]) - - # Check for Valgrind tools we care about. - #m4_define([valgrind_tool_list],[[memcheck], [helgrind], [drd], [exp-sgcheck]]) - # I trimmed this, because we fail on all the thread stuff - m4_define([valgrind_tool_list],[[memcheck]]) - - AS_IF([test "$VALGRIND" != ""],[ - m4_foreach([vgtool],[valgrind_tool_list],[ - m4_define([vgtooln],AS_TR_SH(vgtool)) - m4_define([ax_cv_var],[ax_cv_valgrind_tool_]vgtooln) - AC_CACHE_CHECK([for Valgrind tool ]vgtool,ax_cv_var,[ - ax_cv_var= - AS_IF([`$VALGRIND --tool=vgtool --help >/dev/null 2>&1`],[ - ax_cv_var="vgtool" - ]) - ]) - - AC_SUBST([VALGRIND_HAVE_TOOL_]vgtooln,[$ax_cv_var]) - ]) - ]) - -VALGRIND_CHECK_RULES=' -# Valgrind check -# -# Optional: -# - VALGRIND_SUPPRESSIONS_FILES: Space-separated list of Valgrind suppressions -# files to load. (Default: empty) -# - VALGRIND_FLAGS: General flags to pass to all Valgrind tools. -# (Default: --num-callers=30) -# - VALGRIND_$toolname_FLAGS: Flags to pass to Valgrind $toolname (one of: -# memcheck, helgrind, drd, sgcheck). (Default: various) - -# Optional variables -VALGRIND_SUPPRESSIONS ?= $(addprefix --suppressions=,$(VALGRIND_SUPPRESSIONS_FILES)) -VALGRIND_FLAGS ?= --num-callers=30 -VALGRIND_memcheck_FLAGS ?= --leak-check=full --show-reachable=no -VALGRIND_helgrind_FLAGS ?= --history-level=approx -VALGRIND_drd_FLAGS ?= -VALGRIND_sgcheck_FLAGS ?= - -# Internal use -valgrind_tools = memcheck helgrind drd sgcheck -valgrind_log_files = $(addprefix test-suite-,$(addsuffix .log,$(valgrind_tools))) - -valgrind_memcheck_flags = --tool=memcheck $(VALGRIND_memcheck_FLAGS) -valgrind_helgrind_flags = --tool=helgrind $(VALGRIND_helgrind_FLAGS) -valgrind_drd_flags = --tool=drd $(VALGRIND_drd_FLAGS) -valgrind_sgcheck_flags = --tool=exp-sgcheck $(VALGRIND_sgcheck_FLAGS) - -valgrind_quiet = $(valgrind_quiet_$(V)) -valgrind_quiet_ = $(valgrind_quiet_$(AM_DEFAULT_VERBOSITY)) -valgrind_quiet_0 = --quiet - -# Support running with and without libtool. -ifneq ($(LIBTOOL),) -valgrind_lt = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=execute -else -valgrind_lt = -endif - -# Use recursive makes in order to ignore errors during check -check-valgrind: -ifeq ($(VALGRIND_ENABLED),yes) - -$(foreach tool,$(valgrind_tools), \ - $(if $(VALGRIND_HAVE_TOOL_$(tool))$(VALGRIND_HAVE_TOOL_exp_$(tool)), \ - $(MAKE) $(AM_MAKEFLAGS) -k check-valgrind-tool VALGRIND_TOOL=$(tool); \ - ) \ - ) -else - @echo "Need to reconfigure with --enable-valgrind" -endif - -# Valgrind running -VALGRIND_TESTS_ENVIRONMENT = \ - $(TESTS_ENVIRONMENT) \ - env VALGRIND=$(VALGRIND) \ - G_SLICE=always-malloc,debug-blocks \ - G_DEBUG=fatal-warnings,fatal-criticals,gc-friendly - -VALGRIND_LOG_COMPILER = \ - $(valgrind_lt) \ - $(VALGRIND) $(VALGRIND_SUPPRESSIONS) --error-exitcode=1 $(VALGRIND_FLAGS) - -check-valgrind-tool: -ifeq ($(VALGRIND_ENABLED),yes) - $(MAKE) check-TESTS \ - TESTS_ENVIRONMENT="$(VALGRIND_TESTS_ENVIRONMENT)" \ - LOG_COMPILER="$(VALGRIND_LOG_COMPILER)" \ - LOG_FLAGS="$(valgrind_$(VALGRIND_TOOL)_flags)" \ - TEST_SUITE_LOG=test-suite-$(VALGRIND_TOOL).log -else - @echo "Need to reconfigure with --enable-valgrind" -endif - -DISTCHECK_CONFIGURE_FLAGS ?= -DISTCHECK_CONFIGURE_FLAGS += --disable-valgrind - -MOSTLYCLEANFILES ?= -MOSTLYCLEANFILES += $(valgrind_log_files) - -.PHONY: check-valgrind check-valgrind-tool -' - - AC_SUBST([VALGRIND_CHECK_RULES]) - m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([VALGRIND_CHECK_RULES])]) -]) - -# =========================================================================== -# http://www.gnu.org/software/autoconf-archive/ax_compare_version.html -# =========================================================================== -# -# SYNOPSIS -# -# AX_COMPARE_VERSION(VERSION_A, OP, VERSION_B, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) -# -# DESCRIPTION -# -# This macro compares two version strings. Due to the various number of -# minor-version numbers that can exist, and the fact that string -# comparisons are not compatible with numeric comparisons, this is not -# necessarily trivial to do in a autoconf script. This macro makes doing -# these comparisons easy. -# -# The six basic comparisons are available, as well as checking equality -# limited to a certain number of minor-version levels. -# -# The operator OP determines what type of comparison to do, and can be one -# of: -# -# eq - equal (test A == B) -# ne - not equal (test A != B) -# le - less than or equal (test A <= B) -# ge - greater than or equal (test A >= B) -# lt - less than (test A < B) -# gt - greater than (test A > B) -# -# Additionally, the eq and ne operator can have a number after it to limit -# the test to that number of minor versions. -# -# eq0 - equal up to the length of the shorter version -# ne0 - not equal up to the length of the shorter version -# eqN - equal up to N sub-version levels -# neN - not equal up to N sub-version levels -# -# When the condition is true, shell commands ACTION-IF-TRUE are run, -# otherwise shell commands ACTION-IF-FALSE are run. The environment -# variable 'ax_compare_version' is always set to either 'true' or 'false' -# as well. -# -# Examples: -# -# AX_COMPARE_VERSION([3.15.7],[lt],[3.15.8]) -# AX_COMPARE_VERSION([3.15],[lt],[3.15.8]) -# -# would both be true. -# -# AX_COMPARE_VERSION([3.15.7],[eq],[3.15.8]) -# AX_COMPARE_VERSION([3.15],[gt],[3.15.8]) -# -# would both be false. -# -# AX_COMPARE_VERSION([3.15.7],[eq2],[3.15.8]) -# -# would be true because it is only comparing two minor versions. -# -# AX_COMPARE_VERSION([3.15.7],[eq0],[3.15]) -# -# would be true because it is only comparing the lesser number of minor -# versions of the two values. -# -# Note: The characters that separate the version numbers do not matter. An -# empty string is the same as version 0. OP is evaluated by autoconf, not -# configure, so must be a string, not a variable. -# -# The author would like to acknowledge Guido Draheim whose advice about -# the m4_case and m4_ifvaln functions make this macro only include the -# portions necessary to perform the specific comparison specified by the -# OP argument in the final configure script. -# -# LICENSE -# -# Copyright (c) 2008 Tim Toolan -# -# Copying and distribution of this file, with or without modification, are -# permitted in any medium without royalty provided the copyright notice -# and this notice are preserved. This file is offered as-is, without any -# warranty. - -dnl ######################################################################### -AC_DEFUN([AX_COMPARE_VERSION], [ - AC_REQUIRE([AC_PROG_AWK]) - - # Used to indicate true or false condition - ax_compare_version=false - - # Convert the two version strings to be compared into a format that - # allows a simple string comparison. The end result is that a version - # string of the form 1.12.5-r617 will be converted to the form - # 0001001200050617. In other words, each number is zero padded to four - # digits, and non digits are removed. - AS_VAR_PUSHDEF([A],[ax_compare_version_A]) - A=`echo "$1" | sed -e 's/\([[0-9]]*\)/Z\1Z/g' \ - -e 's/Z\([[0-9]]\)Z/Z0\1Z/g' \ - -e 's/Z\([[0-9]][[0-9]]\)Z/Z0\1Z/g' \ - -e 's/Z\([[0-9]][[0-9]][[0-9]]\)Z/Z0\1Z/g' \ - -e 's/[[^0-9]]//g'` - - AS_VAR_PUSHDEF([B],[ax_compare_version_B]) - B=`echo "$3" | sed -e 's/\([[0-9]]*\)/Z\1Z/g' \ - -e 's/Z\([[0-9]]\)Z/Z0\1Z/g' \ - -e 's/Z\([[0-9]][[0-9]]\)Z/Z0\1Z/g' \ - -e 's/Z\([[0-9]][[0-9]][[0-9]]\)Z/Z0\1Z/g' \ - -e 's/[[^0-9]]//g'` - - dnl # In the case of le, ge, lt, and gt, the strings are sorted as necessary - dnl # then the first line is used to determine if the condition is true. - dnl # The sed right after the echo is to remove any indented white space. - m4_case(m4_tolower($2), - [lt],[ - ax_compare_version=`echo "x$A -x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/false/;s/x${B}/true/;1q"` - ], - [gt],[ - ax_compare_version=`echo "x$A -x$B" | sed 's/^ *//' | sort | sed "s/x${A}/false/;s/x${B}/true/;1q"` - ], - [le],[ - ax_compare_version=`echo "x$A -x$B" | sed 's/^ *//' | sort | sed "s/x${A}/true/;s/x${B}/false/;1q"` - ], - [ge],[ - ax_compare_version=`echo "x$A -x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/true/;s/x${B}/false/;1q"` - ],[ - dnl Split the operator from the subversion count if present. - m4_bmatch(m4_substr($2,2), - [0],[ - # A count of zero means use the length of the shorter version. - # Determine the number of characters in A and B. - ax_compare_version_len_A=`echo "$A" | $AWK '{print(length)}'` - ax_compare_version_len_B=`echo "$B" | $AWK '{print(length)}'` - - # Set A to no more than B's length and B to no more than A's length. - A=`echo "$A" | sed "s/\(.\{$ax_compare_version_len_B\}\).*/\1/"` - B=`echo "$B" | sed "s/\(.\{$ax_compare_version_len_A\}\).*/\1/"` - ], - [[0-9]+],[ - # A count greater than zero means use only that many subversions - A=`echo "$A" | sed "s/\(\([[0-9]]\{4\}\)\{m4_substr($2,2)\}\).*/\1/"` - B=`echo "$B" | sed "s/\(\([[0-9]]\{4\}\)\{m4_substr($2,2)\}\).*/\1/"` - ], - [.+],[ - AC_WARNING( - [illegal OP numeric parameter: $2]) - ],[]) - - # Pad zeros at end of numbers to make same length. - ax_compare_version_tmp_A="$A`echo $B | sed 's/./0/g'`" - B="$B`echo $A | sed 's/./0/g'`" - A="$ax_compare_version_tmp_A" - - # Check for equality or inequality as necessary. - m4_case(m4_tolower(m4_substr($2,0,2)), - [eq],[ - test "x$A" = "x$B" && ax_compare_version=true - ], - [ne],[ - test "x$A" != "x$B" && ax_compare_version=true - ],[ - AC_WARNING([illegal OP parameter: $2]) - ]) - ]) - - AS_VAR_POPDEF([A])dnl - AS_VAR_POPDEF([B])dnl - - dnl # Execute ACTION-IF-TRUE / ACTION-IF-FALSE. - if test "$ax_compare_version" = "true" ; then - m4_ifvaln([$4],[$4],[:])dnl - m4_ifvaln([$5],[else $5])dnl - fi -]) dnl AX_COMPARE_VERSION - -dnl ######################################################################### - -# AC_PROG_BISON -# ------------ -AN_MAKEVAR([BISON], [AC_PROG_YACC]) -AN_PROGRAM([bison], [AC_PROG_YACC]) -AC_DEFUN([AC_PROG_BISON], -[AC_CHECK_PROGS(BISON, 'bison')dnl -AC_ARG_VAR(BISON, -[The Bison implementation to use. Defaults to `bison'.])dnl -AC_ARG_VAR(BFLAGS, -[The list of arguments that will be passed by default to $BISON. This script -will default BFLAGS to the empty string to avoid a default value of `-d' given -by some make applications.])]) diff --git a/aclocal.m4 b/aclocal.m4 deleted file mode 100644 index 9746dea..0000000 --- a/aclocal.m4 +++ /dev/null @@ -1,2103 +0,0 @@ -# generated automatically by aclocal 1.16.5 -*- Autoconf -*- - -# Copyright (C) 1996-2021 Free Software Foundation, Inc. - -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) -m4_ifndef([AC_AUTOCONF_VERSION], - [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.71],, -[m4_warning([this file was generated for autoconf 2.71. -You have another version of autoconf. It may work, but is not guaranteed to. -If you have problems, you may need to regenerate the build system entirely. -To do so, use the procedure documented by the package, typically 'autoreconf'.])]) - -# gpgme.m4 - autoconf macro to detect GPGME. -# Copyright (C) 2002, 2003, 2004, 2014, 2018, 2022 g10 Code GmbH -# -# This file is free software; as a special exception the author gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. -# -# This file is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the -# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# -# Last-changed: 2022-11-15 - - -dnl -dnl Find gpgrt-config, which uses .pc file -dnl (minimum pkg-config functionality, supporting cross build) -dnl -dnl _AM_PATH_GPGRT_CONFIG -AC_DEFUN([_AM_PATH_GPGRT_CONFIG],[dnl - AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no, [$prefix/bin:$PATH]) - if test "$GPGRT_CONFIG" != "no"; then - # Determine gpgrt_libdir - # - # Get the prefix of gpgrt-config assuming it's something like: - # /bin/gpgrt-config - gpgrt_prefix=${GPGRT_CONFIG%/*/*} - possible_libdir1=${gpgrt_prefix}/lib - # Determine by using system libdir-format with CC, it's like: - # Normal style: /usr/lib - # GNU cross style: /usr//lib - # Debian style: /usr/lib/ - # Fedora/openSUSE style: /usr/lib, /usr/lib32 or /usr/lib64 - # It is assumed that CC is specified to the one of host on cross build. - if libdir_candidates=$(${CC:-cc} -print-search-dirs | \ - sed -n -e "/^libraries/{s/libraries: =//;s/:/\\ -/g;p;}"); then - # From the output of -print-search-dirs, select valid pkgconfig dirs. - libdir_candidates=$(for dir in $libdir_candidates; do - if p=$(cd $dir 2>/dev/null && pwd); then - test -d "$p/pkgconfig" && echo $p; - fi - done) - - for possible_libdir0 in $libdir_candidates; do - # possible_libdir0: - # Fallback candidate, the one of system-installed (by $CC) - # (/usr//lib, /usr/lib/ or /usr/lib32) - # possible_libdir1: - # Another candidate, user-locally-installed - # (/lib) - # possible_libdir2 - # Most preferred - # (//lib, - # /lib/ or /lib32) - if test "${possible_libdir0##*/}" = "lib"; then - possible_prefix0=${possible_libdir0%/lib} - possible_prefix0_triplet=${possible_prefix0##*/} - if test -z "$possible_prefix0_triplet"; then - continue - fi - possible_libdir2=${gpgrt_prefix}/$possible_prefix0_triplet/lib - else - possible_prefix0=${possible_libdir0%%/lib*} - possible_libdir2=${gpgrt_prefix}${possible_libdir0#$possible_prefix0} - fi - if test -f ${possible_libdir2}/pkgconfig/gpg-error.pc; then - gpgrt_libdir=${possible_libdir2} - elif test -f ${possible_libdir1}/pkgconfig/gpg-error.pc; then - gpgrt_libdir=${possible_libdir1} - elif test -f ${possible_libdir0}/pkgconfig/gpg-error.pc; then - gpgrt_libdir=${possible_libdir0} - fi - if test -n "$gpgrt_libdir"; then break; fi - done - if test -z "$libdir_candidates"; then - # No valid pkgconfig dir in any of the system directories, fallback - gpgrt_libdir=${possible_libdir1} - fi - else - # When we cannot determine system libdir-format, use this: - gpgrt_libdir=${possible_libdir1} - fi - else - unset GPGRT_CONFIG - fi - - if test -n "$gpgrt_libdir"; then - GPGRT_CONFIG="$GPGRT_CONFIG --libdir=$gpgrt_libdir" - if $GPGRT_CONFIG gpg-error >/dev/null 2>&1; then - GPG_ERROR_CONFIG="$GPGRT_CONFIG gpg-error" - AC_MSG_NOTICE([Use gpgrt-config with $gpgrt_libdir as gpg-error-config]) - gpg_error_config_version=`$GPG_ERROR_CONFIG --modversion` - else - unset GPGRT_CONFIG - fi - elif test "$GPG_ERROR_CONFIG" != "no"; then - gpg_error_config_version=`$GPG_ERROR_CONFIG --version` - unset GPGRT_CONFIG - fi -]) - -AC_DEFUN([_AM_PATH_GPGME_CONFIG],[dnl -AC_REQUIRE([_AM_PATH_GPGRT_CONFIG])dnl - AC_ARG_WITH(gpgme-prefix, - AS_HELP_STRING([--with-gpgme-prefix=PFX], - [prefix where GPGME is installed (optional)]), - gpgme_config_prefix="$withval", gpgme_config_prefix="") - if test x"${GPGME_CONFIG}" = x ; then - if test x"${gpgme_config_prefix}" != x ; then - GPGME_CONFIG="${gpgme_config_prefix}/bin/gpgme-config" - else - case "${SYSROOT}" in - /*) - if test -x "${SYSROOT}/bin/gpgme-config" ; then - GPGME_CONFIG="${SYSROOT}/bin/gpgme-config" - fi - ;; - '') - ;; - *) - AC_MSG_WARN([Ignoring \$SYSROOT as it is not an absolute path.]) - ;; - esac - fi - fi - - use_gpgrt_config="" - if test x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then - if $GPGRT_CONFIG gpgme --exists; then - GPGME_CONFIG="$GPGRT_CONFIG gpgme" - AC_MSG_NOTICE([Use gpgrt-config as gpgme-config]) - use_gpgrt_config=yes - fi - fi - if test -z "$use_gpgrt_config"; then - AC_PATH_PROG(GPGME_CONFIG, gpgme-config, no) - fi - - if test "$GPGME_CONFIG" != "no" ; then - if test -z "$use_gpgrt_config"; then - gpgme_version=`$GPGME_CONFIG --version` - else - gpgme_version=`$GPGME_CONFIG --modversion` - fi - fi - gpgme_version_major=`echo $gpgme_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'` - gpgme_version_minor=`echo $gpgme_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\2/'` - gpgme_version_micro=`echo $gpgme_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\3/'` -]) - - -AC_DEFUN([_AM_PATH_GPGME_CONFIG_HOST_CHECK], -[ - if test -z "$use_gpgrt_config"; then - gpgme_config_host=`$GPGME_CONFIG --host 2>/dev/null || echo none` - else - gpgme_config_host=`$GPGME_CONFIG --variable=host 2>/dev/null || echo none` - fi - if test x"$gpgme_config_host" != xnone ; then - if test x"$gpgme_config_host" != x"$host" ; then - AC_MSG_WARN([[ -*** -*** The config script "$GPGME_CONFIG" was -*** built for $gpgme_config_host and thus may not match the -*** used host $host. -*** You may want to use the configure option --with-gpgme-prefix -*** to specify a matching config script or use \$SYSROOT. -***]]) - gpg_config_script_warn="$gpg_config_script_warn gpgme" - fi - fi -]) - - -dnl AM_PATH_GPGME([MINIMUM-VERSION, -dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]]) -dnl Test for libgpgme and define GPGME_CFLAGS and GPGME_LIBS. -dnl -dnl If a prefix option is not used, the config script is first -dnl searched in $SYSROOT/bin and then along $PATH. If the used -dnl config script does not match the host specification the script -dnl is added to the gpg_config_script_warn variable. -dnl -AC_DEFUN([AM_PATH_GPGME], -[ AC_REQUIRE([_AM_PATH_GPGME_CONFIG])dnl - tmp=ifelse([$1], ,1:0.4.2,$1) - if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then - req_gpgme_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` - min_gpgme_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'` - else - req_gpgme_api=0 - min_gpgme_version="$tmp" - fi - - AC_MSG_CHECKING(for GPGME - version >= $min_gpgme_version) - ok=no - if test "$GPGME_CONFIG" != "no" ; then - req_major=`echo $min_gpgme_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` - req_minor=`echo $min_gpgme_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'` - req_micro=`echo $min_gpgme_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'` - if test "$gpgme_version_major" -gt "$req_major"; then - ok=yes - else - if test "$gpgme_version_major" -eq "$req_major"; then - if test "$gpgme_version_minor" -gt "$req_minor"; then - ok=yes - else - if test "$gpgme_version_minor" -eq "$req_minor"; then - if test "$gpgme_version_micro" -ge "$req_micro"; then - ok=yes - fi - fi - fi - fi - fi - fi - if test $ok = yes; then - # If we have a recent GPGME, we should also check that the - # API is compatible. - if test "$req_gpgme_api" -gt 0 ; then - if test -z "$use_gpgrt_config"; then - tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` - else - tmp=`$GPGME_CONFIG --variable=api_version 2>/dev/null || echo 0` - fi - if test "$tmp" -gt 0 ; then - if test "$req_gpgme_api" -ne "$tmp" ; then - ok=no - fi - fi - fi - fi - if test $ok = yes; then - GPGME_CFLAGS=`$GPGME_CONFIG --cflags` - GPGME_LIBS=`$GPGME_CONFIG --libs` - AC_MSG_RESULT(yes) - ifelse([$2], , :, [$2]) - _AM_PATH_GPGME_CONFIG_HOST_CHECK - else - GPGME_CFLAGS="" - GPGME_LIBS="" - AC_MSG_RESULT(no) - ifelse([$3], , :, [$3]) - fi - AC_SUBST(GPGME_CFLAGS) - AC_SUBST(GPGME_LIBS) -]) - -dnl AM_PATH_GPGME_PTHREAD([MINIMUM-VERSION, -dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]]) -dnl Test for libgpgme and define GPGME_PTHREAD_CFLAGS -dnl and GPGME_PTHREAD_LIBS. -dnl -AC_DEFUN([AM_PATH_GPGME_PTHREAD], -[ AC_REQUIRE([_AM_PATH_GPGME_CONFIG])dnl - tmp=ifelse([$1], ,1:0.4.2,$1) - if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then - req_gpgme_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` - min_gpgme_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'` - else - req_gpgme_api=0 - min_gpgme_version="$tmp" - fi - - AC_MSG_CHECKING(for GPGME pthread - version >= $min_gpgme_version) - ok=no - if test "$GPGME_CONFIG" != "no" ; then - if `$GPGME_CONFIG --thread=pthread 2> /dev/null` ; then - req_major=`echo $min_gpgme_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` - req_minor=`echo $min_gpgme_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'` - req_micro=`echo $min_gpgme_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'` - if test "$gpgme_version_major" -gt "$req_major"; then - ok=yes - else - if test "$gpgme_version_major" -eq "$req_major"; then - if test "$gpgme_version_minor" -gt "$req_minor"; then - ok=yes - else - if test "$gpgme_version_minor" -eq "$req_minor"; then - if test "$gpgme_version_micro" -ge "$req_micro"; then - ok=yes - fi - fi - fi - fi - fi - fi - fi - if test $ok = yes; then - # If we have a recent GPGME, we should also check that the - # API is compatible. - if test "$req_gpgme_api" -gt 0 ; then - tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` - if test "$tmp" -gt 0 ; then - if test "$req_gpgme_api" -ne "$tmp" ; then - ok=no - fi - fi - fi - fi - if test $ok = yes; then - GPGME_PTHREAD_CFLAGS=`$GPGME_CONFIG --thread=pthread --cflags` - GPGME_PTHREAD_LIBS=`$GPGME_CONFIG --thread=pthread --libs` - AC_MSG_RESULT(yes) - ifelse([$2], , :, [$2]) - _AM_PATH_GPGME_CONFIG_HOST_CHECK - else - GPGME_PTHREAD_CFLAGS="" - GPGME_PTHREAD_LIBS="" - AC_MSG_RESULT(no) - ifelse([$3], , :, [$3]) - fi - AC_SUBST(GPGME_PTHREAD_CFLAGS) - AC_SUBST(GPGME_PTHREAD_LIBS) -]) - - -dnl AM_PATH_GPGME_GLIB([MINIMUM-VERSION, -dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]]) -dnl Test for libgpgme-glib and define GPGME_GLIB_CFLAGS and GPGME_GLIB_LIBS. -dnl -AC_DEFUN([AM_PATH_GPGME_GLIB], -[ AC_REQUIRE([_AM_PATH_GPGME_CONFIG])dnl - tmp=ifelse([$1], ,1:0.4.2,$1) - if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then - req_gpgme_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` - min_gpgme_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'` - else - req_gpgme_api=0 - min_gpgme_version="$tmp" - fi - - AC_MSG_CHECKING(for GPGME - version >= $min_gpgme_version) - ok=no - if test "$GPGME_CONFIG" != "no" ; then - req_major=`echo $min_gpgme_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` - req_minor=`echo $min_gpgme_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'` - req_micro=`echo $min_gpgme_version | \ - sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'` - if test "$gpgme_version_major" -gt "$req_major"; then - ok=yes - else - if test "$gpgme_version_major" -eq "$req_major"; then - if test "$gpgme_version_minor" -gt "$req_minor"; then - ok=yes - else - if test "$gpgme_version_minor" -eq "$req_minor"; then - if test "$gpgme_version_micro" -ge "$req_micro"; then - ok=yes - fi - fi - fi - fi - fi - fi - if test $ok = yes; then - # If we have a recent GPGME, we should also check that the - # API is compatible. - if test "$req_gpgme_api" -gt 0 ; then - if test -z "$use_gpgrt_config"; then - tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` - else - tmp=`$GPGME_CONFIG --variable=api_version 2>/dev/null || echo 0` - fi - if test "$tmp" -gt 0 ; then - if test "$req_gpgme_api" -ne "$tmp" ; then - ok=no - fi - fi - fi - fi - if test $ok = yes; then - if test -z "$use_gpgrt_config"; then - GPGME_GLIB_CFLAGS=`$GPGME_CONFIG --glib --cflags` - GPGME_GLIB_LIBS=`$GPGME_CONFIG --glib --libs` - else - if $GPGRT_CONFIG gpgme-glib --exists; then - GPGME_CONFIG="$GPGRT_CONFIG gpgme-glib" - GPGME_GLIB_CFLAGS=`$GPGME_CONFIG --cflags` - GPGME_GLIB_LIBS=`$GPGME_CONFIG --libs` - else - ok = no - fi - fi - fi - if test $ok = yes; then - AC_MSG_RESULT(yes) - ifelse([$2], , :, [$2]) - _AM_PATH_GPGME_CONFIG_HOST_CHECK - else - GPGME_GLIB_CFLAGS="" - GPGME_GLIB_LIBS="" - AC_MSG_RESULT(no) - ifelse([$3], , :, [$3]) - fi - AC_SUBST(GPGME_GLIB_CFLAGS) - AC_SUBST(GPGME_GLIB_LIBS) -]) - -dnl -*- mode: autoconf -*- -dnl Copyright 2009 Johan Dahlin -dnl -dnl This file is free software; the author(s) gives unlimited -dnl permission to copy and/or distribute it, with or without -dnl modifications, as long as this notice is preserved. -dnl - -# serial 1 - -dnl This is a copy of AS_AC_EXPAND -dnl -dnl (C) 2003, 2004, 2005 Thomas Vander Stichele -dnl Copying and distribution of this file, with or without modification, -dnl are permitted in any medium without royalty provided the copyright -dnl notice and this notice are preserved. -m4_define([_GOBJECT_INTROSPECTION_AS_AC_EXPAND], -[ - EXP_VAR=[$1] - FROM_VAR=[$2] - - dnl first expand prefix and exec_prefix if necessary - prefix_save=$prefix - exec_prefix_save=$exec_prefix - - dnl if no prefix given, then use /usr/local, the default prefix - if test "x$prefix" = "xNONE"; then - prefix="$ac_default_prefix" - fi - dnl if no exec_prefix given, then use prefix - if test "x$exec_prefix" = "xNONE"; then - exec_prefix=$prefix - fi - - full_var="$FROM_VAR" - dnl loop until it doesn't change anymore - while true; do - new_full_var="`eval echo $full_var`" - if test "x$new_full_var" = "x$full_var"; then break; fi - full_var=$new_full_var - done - - dnl clean up - full_var=$new_full_var - AC_SUBST([$1], "$full_var") - - dnl restore prefix and exec_prefix - prefix=$prefix_save - exec_prefix=$exec_prefix_save -]) - -m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL], -[ - AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first - AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first - AC_BEFORE([LT_INIT],[$0])dnl setup libtool first - - dnl enable/disable introspection - m4_if([$2], [require], - [dnl - enable_introspection=yes - ],[dnl - AC_ARG_ENABLE(introspection, - AS_HELP_STRING([--enable-introspection[=@<:@no/auto/yes@:>@]], - [Enable introspection for this build]),, - [enable_introspection=auto]) - ])dnl - - AC_MSG_CHECKING([for gobject-introspection]) - - dnl presence/version checking - AS_CASE([$enable_introspection], - [no], [dnl - found_introspection="no (disabled, use --enable-introspection to enable)" - ],dnl - [yes],[dnl - PKG_CHECK_EXISTS([gobject-introspection-1.0],, - AC_MSG_ERROR([gobject-introspection-1.0 is not installed])) - PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], - found_introspection=yes, - AC_MSG_ERROR([You need to have gobject-introspection >= $1 installed to build AC_PACKAGE_NAME])) - ],dnl - [auto],[dnl - PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], found_introspection=yes, found_introspection=no) - dnl Canonicalize enable_introspection - enable_introspection=$found_introspection - ],dnl - [dnl - AC_MSG_ERROR([invalid argument passed to --enable-introspection, should be one of @<:@no/auto/yes@:>@]) - ])dnl - - AC_MSG_RESULT([$found_introspection]) - - dnl expand datadir/libdir so we can pass them to pkg-config - dnl and get paths relative to our target directories - _GOBJECT_INTROSPECTION_AS_AC_EXPAND(_GI_EXP_DATADIR, "$datadir") - _GOBJECT_INTROSPECTION_AS_AC_EXPAND(_GI_EXP_LIBDIR, "$libdir") - - INTROSPECTION_SCANNER= - INTROSPECTION_COMPILER= - INTROSPECTION_GENERATE= - INTROSPECTION_GIRDIR= - INTROSPECTION_TYPELIBDIR= - if test "x$found_introspection" = "xyes"; then - INTROSPECTION_SCANNER=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0` - INTROSPECTION_COMPILER=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0` - INTROSPECTION_GENERATE=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0` - INTROSPECTION_GIRDIR=`$PKG_CONFIG --define-variable=datadir="${_GI_EXP_DATADIR}" --variable=girdir gobject-introspection-1.0` - INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --define-variable=libdir="${_GI_EXP_LIBDIR}" --variable=typelibdir gobject-introspection-1.0)" - INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0` - INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0` - INTROSPECTION_MAKEFILE=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection - fi - AC_SUBST(INTROSPECTION_SCANNER) - AC_SUBST(INTROSPECTION_COMPILER) - AC_SUBST(INTROSPECTION_GENERATE) - AC_SUBST(INTROSPECTION_GIRDIR) - AC_SUBST(INTROSPECTION_TYPELIBDIR) - AC_SUBST(INTROSPECTION_CFLAGS) - AC_SUBST(INTROSPECTION_LIBS) - AC_SUBST(INTROSPECTION_MAKEFILE) - - AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes") -]) - - -dnl Usage: -dnl GOBJECT_INTROSPECTION_CHECK([minimum-g-i-version]) - -AC_DEFUN([GOBJECT_INTROSPECTION_CHECK], -[ - _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1]) -]) - -dnl Usage: -dnl GOBJECT_INTROSPECTION_REQUIRE([minimum-g-i-version]) - - -AC_DEFUN([GOBJECT_INTROSPECTION_REQUIRE], -[ - _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1], [require]) -]) - -# pkg.m4 - Macros to locate and use pkg-config. -*- Autoconf -*- -# serial 12 (pkg-config-0.29.2) - -dnl Copyright © 2004 Scott James Remnant . -dnl Copyright © 2012-2015 Dan Nicholson -dnl -dnl This program is free software; you can redistribute it and/or modify -dnl it under the terms of the GNU General Public License as published by -dnl the Free Software Foundation; either version 2 of the License, or -dnl (at your option) any later version. -dnl -dnl This program is distributed in the hope that it will be useful, but -dnl WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl General Public License for more details. -dnl -dnl You should have received a copy of the GNU General Public License -dnl along with this program; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -dnl 02111-1307, USA. -dnl -dnl As a special exception to the GNU General Public License, if you -dnl distribute this file as part of a program that contains a -dnl configuration script generated by Autoconf, you may include it under -dnl the same distribution terms that you use for the rest of that -dnl program. - -dnl PKG_PREREQ(MIN-VERSION) -dnl ----------------------- -dnl Since: 0.29 -dnl -dnl Verify that the version of the pkg-config macros are at least -dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's -dnl installed version of pkg-config, this checks the developer's version -dnl of pkg.m4 when generating configure. -dnl -dnl To ensure that this macro is defined, also add: -dnl m4_ifndef([PKG_PREREQ], -dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])]) -dnl -dnl See the "Since" comment for each macro you use to see what version -dnl of the macros you require. -m4_defun([PKG_PREREQ], -[m4_define([PKG_MACROS_VERSION], [0.29.2]) -m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1, - [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])]) -])dnl PKG_PREREQ - -dnl PKG_PROG_PKG_CONFIG([MIN-VERSION]) -dnl ---------------------------------- -dnl Since: 0.16 -dnl -dnl Search for the pkg-config tool and set the PKG_CONFIG variable to -dnl first found in the path. Checks that the version of pkg-config found -dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is -dnl used since that's the first version where most current features of -dnl pkg-config existed. -AC_DEFUN([PKG_PROG_PKG_CONFIG], -[m4_pattern_forbid([^_?PKG_[A-Z_]+$]) -m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) -m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) -AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) -AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) -AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) - -if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then - AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) -fi -if test -n "$PKG_CONFIG"; then - _pkg_min_version=m4_default([$1], [0.9.0]) - AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) - if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - PKG_CONFIG="" - fi -fi[]dnl -])dnl PKG_PROG_PKG_CONFIG - -dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -dnl ------------------------------------------------------------------- -dnl Since: 0.18 -dnl -dnl Check to see whether a particular set of modules exists. Similar to -dnl PKG_CHECK_MODULES(), but does not set variables or print errors. -dnl -dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) -dnl only at the first occurrence in configure.ac, so if the first place -dnl it's called might be skipped (such as if it is within an "if", you -dnl have to call PKG_CHECK_EXISTS manually -AC_DEFUN([PKG_CHECK_EXISTS], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -if test -n "$PKG_CONFIG" && \ - AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then - m4_default([$2], [:]) -m4_ifvaln([$3], [else - $3])dnl -fi]) - -dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) -dnl --------------------------------------------- -dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting -dnl pkg_failed based on the result. -m4_define([_PKG_CONFIG], -[if test -n "$$1"; then - pkg_cv_[]$1="$$1" - elif test -n "$PKG_CONFIG"; then - PKG_CHECK_EXISTS([$3], - [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes ], - [pkg_failed=yes]) - else - pkg_failed=untried -fi[]dnl -])dnl _PKG_CONFIG - -dnl _PKG_SHORT_ERRORS_SUPPORTED -dnl --------------------------- -dnl Internal check to see if pkg-config supports short errors. -AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG]) -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi[]dnl -])dnl _PKG_SHORT_ERRORS_SUPPORTED - - -dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], -dnl [ACTION-IF-NOT-FOUND]) -dnl -------------------------------------------------------------- -dnl Since: 0.4.0 -dnl -dnl Note that if there is a possibility the first call to -dnl PKG_CHECK_MODULES might not happen, you should be sure to include an -dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac -AC_DEFUN([PKG_CHECK_MODULES], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl -AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl - -pkg_failed=no -AC_MSG_CHECKING([for $2]) - -_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) -_PKG_CONFIG([$1][_LIBS], [libs], [$2]) - -m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS -and $1[]_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details.]) - -if test $pkg_failed = yes; then - AC_MSG_RESULT([no]) - _PKG_SHORT_ERRORS_SUPPORTED - if test $_pkg_short_errors_supported = yes; then - $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` - else - $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD - - m4_default([$4], [AC_MSG_ERROR( -[Package requirements ($2) were not met: - -$$1_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -_PKG_TEXT])[]dnl - ]) -elif test $pkg_failed = untried; then - AC_MSG_RESULT([no]) - m4_default([$4], [AC_MSG_FAILURE( -[The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -_PKG_TEXT - -To get pkg-config, see .])[]dnl - ]) -else - $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS - $1[]_LIBS=$pkg_cv_[]$1[]_LIBS - AC_MSG_RESULT([yes]) - $3 -fi[]dnl -])dnl PKG_CHECK_MODULES - - -dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], -dnl [ACTION-IF-NOT-FOUND]) -dnl --------------------------------------------------------------------- -dnl Since: 0.29 -dnl -dnl Checks for existence of MODULES and gathers its build flags with -dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags -dnl and VARIABLE-PREFIX_LIBS from --libs. -dnl -dnl Note that if there is a possibility the first call to -dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to -dnl include an explicit call to PKG_PROG_PKG_CONFIG in your -dnl configure.ac. -AC_DEFUN([PKG_CHECK_MODULES_STATIC], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -_save_PKG_CONFIG=$PKG_CONFIG -PKG_CONFIG="$PKG_CONFIG --static" -PKG_CHECK_MODULES($@) -PKG_CONFIG=$_save_PKG_CONFIG[]dnl -])dnl PKG_CHECK_MODULES_STATIC - - -dnl PKG_INSTALLDIR([DIRECTORY]) -dnl ------------------------- -dnl Since: 0.27 -dnl -dnl Substitutes the variable pkgconfigdir as the location where a module -dnl should install pkg-config .pc files. By default the directory is -dnl $libdir/pkgconfig, but the default can be changed by passing -dnl DIRECTORY. The user can override through the --with-pkgconfigdir -dnl parameter. -AC_DEFUN([PKG_INSTALLDIR], -[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) -m4_pushdef([pkg_description], - [pkg-config installation directory @<:@]pkg_default[@:>@]) -AC_ARG_WITH([pkgconfigdir], - [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, - [with_pkgconfigdir=]pkg_default) -AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) -m4_popdef([pkg_default]) -m4_popdef([pkg_description]) -])dnl PKG_INSTALLDIR - - -dnl PKG_NOARCH_INSTALLDIR([DIRECTORY]) -dnl -------------------------------- -dnl Since: 0.27 -dnl -dnl Substitutes the variable noarch_pkgconfigdir as the location where a -dnl module should install arch-independent pkg-config .pc files. By -dnl default the directory is $datadir/pkgconfig, but the default can be -dnl changed by passing DIRECTORY. The user can override through the -dnl --with-noarch-pkgconfigdir parameter. -AC_DEFUN([PKG_NOARCH_INSTALLDIR], -[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) -m4_pushdef([pkg_description], - [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) -AC_ARG_WITH([noarch-pkgconfigdir], - [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, - [with_noarch_pkgconfigdir=]pkg_default) -AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) -m4_popdef([pkg_default]) -m4_popdef([pkg_description]) -])dnl PKG_NOARCH_INSTALLDIR - - -dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE, -dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -dnl ------------------------------------------- -dnl Since: 0.28 -dnl -dnl Retrieves the value of the pkg-config variable for the given module. -AC_DEFUN([PKG_CHECK_VAR], -[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl -AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl - -_PKG_CONFIG([$1], [variable="][$3]["], [$2]) -AS_VAR_COPY([$1], [pkg_cv_][$1]) - -AS_VAR_IF([$1], [""], [$5], [$4])dnl -])dnl PKG_CHECK_VAR - -dnl PKG_WITH_MODULES(VARIABLE-PREFIX, MODULES, -dnl [ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND], -dnl [DESCRIPTION], [DEFAULT]) -dnl ------------------------------------------ -dnl -dnl Prepare a "--with-" configure option using the lowercase -dnl [VARIABLE-PREFIX] name, merging the behaviour of AC_ARG_WITH and -dnl PKG_CHECK_MODULES in a single macro. -AC_DEFUN([PKG_WITH_MODULES], -[ -m4_pushdef([with_arg], m4_tolower([$1])) - -m4_pushdef([description], - [m4_default([$5], [build with ]with_arg[ support])]) - -m4_pushdef([def_arg], [m4_default([$6], [auto])]) -m4_pushdef([def_action_if_found], [AS_TR_SH([with_]with_arg)=yes]) -m4_pushdef([def_action_if_not_found], [AS_TR_SH([with_]with_arg)=no]) - -m4_case(def_arg, - [yes],[m4_pushdef([with_without], [--without-]with_arg)], - [m4_pushdef([with_without],[--with-]with_arg)]) - -AC_ARG_WITH(with_arg, - AS_HELP_STRING(with_without, description[ @<:@default=]def_arg[@:>@]),, - [AS_TR_SH([with_]with_arg)=def_arg]) - -AS_CASE([$AS_TR_SH([with_]with_arg)], - [yes],[PKG_CHECK_MODULES([$1],[$2],$3,$4)], - [auto],[PKG_CHECK_MODULES([$1],[$2], - [m4_n([def_action_if_found]) $3], - [m4_n([def_action_if_not_found]) $4])]) - -m4_popdef([with_arg]) -m4_popdef([description]) -m4_popdef([def_arg]) - -])dnl PKG_WITH_MODULES - -dnl PKG_HAVE_WITH_MODULES(VARIABLE-PREFIX, MODULES, -dnl [DESCRIPTION], [DEFAULT]) -dnl ----------------------------------------------- -dnl -dnl Convenience macro to trigger AM_CONDITIONAL after PKG_WITH_MODULES -dnl check._[VARIABLE-PREFIX] is exported as make variable. -AC_DEFUN([PKG_HAVE_WITH_MODULES], -[ -PKG_WITH_MODULES([$1],[$2],,,[$3],[$4]) - -AM_CONDITIONAL([HAVE_][$1], - [test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"]) -])dnl PKG_HAVE_WITH_MODULES - -dnl PKG_HAVE_DEFINE_WITH_MODULES(VARIABLE-PREFIX, MODULES, -dnl [DESCRIPTION], [DEFAULT]) -dnl ------------------------------------------------------ -dnl -dnl Convenience macro to run AM_CONDITIONAL and AC_DEFINE after -dnl PKG_WITH_MODULES check. HAVE_[VARIABLE-PREFIX] is exported as make -dnl and preprocessor variable. -AC_DEFUN([PKG_HAVE_DEFINE_WITH_MODULES], -[ -PKG_HAVE_WITH_MODULES([$1],[$2],[$3],[$4]) - -AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"], - [AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])]) -])dnl PKG_HAVE_DEFINE_WITH_MODULES - -# Copyright (C) 2002-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_AUTOMAKE_VERSION(VERSION) -# ---------------------------- -# Automake X.Y traces this macro to ensure aclocal.m4 has been -# generated from the m4 files accompanying Automake X.Y. -# (This private macro should not be called outside this file.) -AC_DEFUN([AM_AUTOMAKE_VERSION], -[am__api_version='1.16' -dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to -dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.16.5], [], - [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl -]) - -# _AM_AUTOCONF_VERSION(VERSION) -# ----------------------------- -# aclocal traces this macro to find the Autoconf version. -# This is a private macro too. Using m4_define simplifies -# the logic in aclocal, which can simply ignore this definition. -m4_define([_AM_AUTOCONF_VERSION], []) - -# AM_SET_CURRENT_AUTOMAKE_VERSION -# ------------------------------- -# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. -# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. -AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.16.5])dnl -m4_ifndef([AC_AUTOCONF_VERSION], - [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) - -# AM_AUX_DIR_EXPAND -*- Autoconf -*- - -# Copyright (C) 2001-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets -# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to -# '$srcdir', '$srcdir/..', or '$srcdir/../..'. -# -# Of course, Automake must honor this variable whenever it calls a -# tool from the auxiliary directory. The problem is that $srcdir (and -# therefore $ac_aux_dir as well) can be either absolute or relative, -# depending on how configure is run. This is pretty annoying, since -# it makes $ac_aux_dir quite unusable in subdirectories: in the top -# source directory, any form will work fine, but in subdirectories a -# relative path needs to be adjusted first. -# -# $ac_aux_dir/missing -# fails when called from a subdirectory if $ac_aux_dir is relative -# $top_srcdir/$ac_aux_dir/missing -# fails if $ac_aux_dir is absolute, -# fails when called from a subdirectory in a VPATH build with -# a relative $ac_aux_dir -# -# The reason of the latter failure is that $top_srcdir and $ac_aux_dir -# are both prefixed by $srcdir. In an in-source build this is usually -# harmless because $srcdir is '.', but things will broke when you -# start a VPATH build or use an absolute $srcdir. -# -# So we could use something similar to $top_srcdir/$ac_aux_dir/missing, -# iff we strip the leading $srcdir from $ac_aux_dir. That would be: -# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` -# and then we would define $MISSING as -# MISSING="\${SHELL} $am_aux_dir/missing" -# This will work as long as MISSING is not called from configure, because -# unfortunately $(top_srcdir) has no meaning in configure. -# However there are other variables, like CC, which are often used in -# configure, and could therefore not use this "fixed" $ac_aux_dir. -# -# Another solution, used here, is to always expand $ac_aux_dir to an -# absolute PATH. The drawback is that using absolute paths prevent a -# configured tree to be moved without reconfiguration. - -AC_DEFUN([AM_AUX_DIR_EXPAND], -[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl -# Expand $ac_aux_dir to an absolute path. -am_aux_dir=`cd "$ac_aux_dir" && pwd` -]) - -# AM_CONDITIONAL -*- Autoconf -*- - -# Copyright (C) 1997-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_CONDITIONAL(NAME, SHELL-CONDITION) -# ------------------------------------- -# Define a conditional. -AC_DEFUN([AM_CONDITIONAL], -[AC_PREREQ([2.52])dnl - m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], - [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl -AC_SUBST([$1_TRUE])dnl -AC_SUBST([$1_FALSE])dnl -_AM_SUBST_NOTMAKE([$1_TRUE])dnl -_AM_SUBST_NOTMAKE([$1_FALSE])dnl -m4_define([_AM_COND_VALUE_$1], [$2])dnl -if $2; then - $1_TRUE= - $1_FALSE='#' -else - $1_TRUE='#' - $1_FALSE= -fi -AC_CONFIG_COMMANDS_PRE( -[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then - AC_MSG_ERROR([[conditional "$1" was never defined. -Usually this means the macro was only invoked conditionally.]]) -fi])]) - -# Copyright (C) 1999-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - - -# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be -# written in clear, in which case automake, when reading aclocal.m4, -# will think it sees a *use*, and therefore will trigger all it's -# C support machinery. Also note that it means that autoscan, seeing -# CC etc. in the Makefile, will ask for an AC_PROG_CC use... - - -# _AM_DEPENDENCIES(NAME) -# ---------------------- -# See how the compiler implements dependency checking. -# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC". -# We try a few techniques and use that to set a single cache variable. -# -# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was -# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular -# dependency, and given that the user is not expected to run this macro, -# just rely on AC_PROG_CC. -AC_DEFUN([_AM_DEPENDENCIES], -[AC_REQUIRE([AM_SET_DEPDIR])dnl -AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl -AC_REQUIRE([AM_MAKE_INCLUDE])dnl -AC_REQUIRE([AM_DEP_TRACK])dnl - -m4_if([$1], [CC], [depcc="$CC" am_compiler_list=], - [$1], [CXX], [depcc="$CXX" am_compiler_list=], - [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'], - [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'], - [$1], [UPC], [depcc="$UPC" am_compiler_list=], - [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'], - [depcc="$$1" am_compiler_list=]) - -AC_CACHE_CHECK([dependency style of $depcc], - [am_cv_$1_dependencies_compiler_type], -[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then - # We make a subdir and do the tests there. Otherwise we can end up - # making bogus files that we don't know about and never remove. For - # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir - mkdir conftest.dir - # Copy depcomp to subdir because otherwise we won't find it if we're - # using a relative directory. - cp "$am_depcomp" conftest.dir - cd conftest.dir - # We will build objects and dependencies in a subdirectory because - # it helps to detect inapplicable dependency modes. For instance - # both Tru64's cc and ICC support -MD to output dependencies as a - # side effect of compilation, but ICC will put the dependencies in - # the current directory while Tru64 will put them in the object - # directory. - mkdir sub - - am_cv_$1_dependencies_compiler_type=none - if test "$am_compiler_list" = ""; then - am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` - fi - am__universal=false - m4_case([$1], [CC], - [case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac], - [CXX], - [case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac]) - - for depmode in $am_compiler_list; do - # Setup a source with many dependencies, because some compilers - # like to wrap large dependency lists on column 80 (with \), and - # we should not choose a depcomp mode which is confused by this. - # - # We need to recreate these files for each test, as the compiler may - # overwrite some of them when testing with obscure command lines. - # This happens at least with the AIX C compiler. - : > sub/conftest.c - for i in 1 2 3 4 5 6; do - echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h - done - echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - - # We check with '-c' and '-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. - am__obj=sub/conftest.${OBJEXT-o} - am__minus_obj="-o $am__obj" - case $depmode in - gcc) - # This depmode causes a compiler race in universal mode. - test "$am__universal" = false || continue - ;; - nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. - if test "x$enable_dependency_tracking" = xyes; then - continue - else - break - fi - ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has - # not run yet. These depmodes are late enough in the game, and - # so weak that their functioning should not be impacted. - am__obj=conftest.${OBJEXT-o} - am__minus_obj= - ;; - none) break ;; - esac - if depmode=$depmode \ - source=sub/conftest.c object=$am__obj \ - depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ - >/dev/null 2>conftest.err && - grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings - # or remarks (even with -Werror). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required - # The diagnosis changed in icc 8.0: - # icc: Command line remark: option '-MP' not supported - if (grep 'ignoring option' conftest.err || - grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_$1_dependencies_compiler_type=$depmode - break - fi - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_$1_dependencies_compiler_type=none -fi -]) -AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) -AM_CONDITIONAL([am__fastdep$1], [ - test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) -]) - - -# AM_SET_DEPDIR -# ------------- -# Choose a directory name for dependency files. -# This macro is AC_REQUIREd in _AM_DEPENDENCIES. -AC_DEFUN([AM_SET_DEPDIR], -[AC_REQUIRE([AM_SET_LEADING_DOT])dnl -AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl -]) - - -# AM_DEP_TRACK -# ------------ -AC_DEFUN([AM_DEP_TRACK], -[AC_ARG_ENABLE([dependency-tracking], [dnl -AS_HELP_STRING( - [--enable-dependency-tracking], - [do not reject slow dependency extractors]) -AS_HELP_STRING( - [--disable-dependency-tracking], - [speeds up one-time build])]) -if test "x$enable_dependency_tracking" != xno; then - am_depcomp="$ac_aux_dir/depcomp" - AMDEPBACKSLASH='\' - am__nodep='_no' -fi -AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) -AC_SUBST([AMDEPBACKSLASH])dnl -_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl -AC_SUBST([am__nodep])dnl -_AM_SUBST_NOTMAKE([am__nodep])dnl -]) - -# Generate code to set up dependency tracking. -*- Autoconf -*- - -# Copyright (C) 1999-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_OUTPUT_DEPENDENCY_COMMANDS -# ------------------------------ -AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], -[{ - # Older Autoconf quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - # TODO: see whether this extra hack can be removed once we start - # requiring Autoconf 2.70 or later. - AS_CASE([$CONFIG_FILES], - [*\'*], [eval set x "$CONFIG_FILES"], - [*], [set x $CONFIG_FILES]) - shift - # Used to flag and report bootstrapping failures. - am_rc=0 - for am_mf - do - # Strip MF so we end up with the name of the file. - am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile which includes - # dependency-tracking related rules and includes. - # Grep'ing the whole file directly is not great: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \ - || continue - am_dirpart=`AS_DIRNAME(["$am_mf"])` - am_filepart=`AS_BASENAME(["$am_mf"])` - AM_RUN_LOG([cd "$am_dirpart" \ - && sed -e '/# am--include-marker/d' "$am_filepart" \ - | $MAKE -f - am--depfiles]) || am_rc=$? - done - if test $am_rc -ne 0; then - AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments - for automatic dependency tracking. If GNU make was not used, consider - re-running the configure script with MAKE="gmake" (or whatever is - necessary). You can also try re-running configure with the - '--disable-dependency-tracking' option to at least be able to build - the package (albeit without support for automatic dependency tracking).]) - fi - AS_UNSET([am_dirpart]) - AS_UNSET([am_filepart]) - AS_UNSET([am_mf]) - AS_UNSET([am_rc]) - rm -f conftest-deps.mk -} -])# _AM_OUTPUT_DEPENDENCY_COMMANDS - - -# AM_OUTPUT_DEPENDENCY_COMMANDS -# ----------------------------- -# This macro should only be invoked once -- use via AC_REQUIRE. -# -# This code is only required when automatic dependency tracking is enabled. -# This creates each '.Po' and '.Plo' makefile fragment that we'll need in -# order to bootstrap the dependency handling code. -AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], -[AC_CONFIG_COMMANDS([depfiles], - [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], - [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])]) - -# Do all the work for Automake. -*- Autoconf -*- - -# Copyright (C) 1996-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This macro actually does too much. Some checks are only needed if -# your package does certain things. But this isn't really a big deal. - -dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O. -m4_define([AC_PROG_CC], -m4_defn([AC_PROG_CC]) -[_AM_PROG_CC_C_O -]) - -# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) -# AM_INIT_AUTOMAKE([OPTIONS]) -# ----------------------------------------------- -# The call with PACKAGE and VERSION arguments is the old style -# call (pre autoconf-2.50), which is being phased out. PACKAGE -# and VERSION should now be passed to AC_INIT and removed from -# the call to AM_INIT_AUTOMAKE. -# We support both call styles for the transition. After -# the next Automake release, Autoconf can make the AC_INIT -# arguments mandatory, and then we can depend on a new Autoconf -# release and drop the old call support. -AC_DEFUN([AM_INIT_AUTOMAKE], -[AC_PREREQ([2.65])dnl -m4_ifdef([_$0_ALREADY_INIT], - [m4_fatal([$0 expanded multiple times -]m4_defn([_$0_ALREADY_INIT]))], - [m4_define([_$0_ALREADY_INIT], m4_expansion_stack)])dnl -dnl Autoconf wants to disallow AM_ names. We explicitly allow -dnl the ones we care about. -m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl -AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl -AC_REQUIRE([AC_PROG_INSTALL])dnl -if test "`cd $srcdir && pwd`" != "`pwd`"; then - # Use -I$(srcdir) only when $(srcdir) != ., so that make's output - # is not polluted with repeated "-I." - AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl - # test to see if srcdir already configured - if test -f $srcdir/config.status; then - AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) - fi -fi - -# test whether we have cygpath -if test -z "$CYGPATH_W"; then - if (cygpath --version) >/dev/null 2>/dev/null; then - CYGPATH_W='cygpath -w' - else - CYGPATH_W=echo - fi -fi -AC_SUBST([CYGPATH_W]) - -# Define the identity of the package. -dnl Distinguish between old-style and new-style calls. -m4_ifval([$2], -[AC_DIAGNOSE([obsolete], - [$0: two- and three-arguments forms are deprecated.]) -m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl - AC_SUBST([PACKAGE], [$1])dnl - AC_SUBST([VERSION], [$2])], -[_AM_SET_OPTIONS([$1])dnl -dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. -m4_if( - m4_ifset([AC_PACKAGE_NAME], [ok]):m4_ifset([AC_PACKAGE_VERSION], [ok]), - [ok:ok],, - [m4_fatal([AC_INIT should be called with package and version arguments])])dnl - AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl - AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl - -_AM_IF_OPTION([no-define],, -[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package]) - AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl - -# Some tools Automake needs. -AC_REQUIRE([AM_SANITY_CHECK])dnl -AC_REQUIRE([AC_ARG_PROGRAM])dnl -AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}]) -AM_MISSING_PROG([AUTOCONF], [autoconf]) -AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}]) -AM_MISSING_PROG([AUTOHEADER], [autoheader]) -AM_MISSING_PROG([MAKEINFO], [makeinfo]) -AC_REQUIRE([AM_PROG_INSTALL_SH])dnl -AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl -AC_REQUIRE([AC_PROG_MKDIR_P])dnl -# For better backward compatibility. To be removed once Automake 1.9.x -# dies out for good. For more background, see: -# -# -AC_SUBST([mkdir_p], ['$(MKDIR_P)']) -# We need awk for the "check" target (and possibly the TAP driver). The -# system "awk" is bad on some platforms. -AC_REQUIRE([AC_PROG_AWK])dnl -AC_REQUIRE([AC_PROG_MAKE_SET])dnl -AC_REQUIRE([AM_SET_LEADING_DOT])dnl -_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], - [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], - [_AM_PROG_TAR([v7])])]) -_AM_IF_OPTION([no-dependencies],, -[AC_PROVIDE_IFELSE([AC_PROG_CC], - [_AM_DEPENDENCIES([CC])], - [m4_define([AC_PROG_CC], - m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl -AC_PROVIDE_IFELSE([AC_PROG_CXX], - [_AM_DEPENDENCIES([CXX])], - [m4_define([AC_PROG_CXX], - m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl -AC_PROVIDE_IFELSE([AC_PROG_OBJC], - [_AM_DEPENDENCIES([OBJC])], - [m4_define([AC_PROG_OBJC], - m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl -AC_PROVIDE_IFELSE([AC_PROG_OBJCXX], - [_AM_DEPENDENCIES([OBJCXX])], - [m4_define([AC_PROG_OBJCXX], - m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl -]) -# Variables for tags utilities; see am/tags.am -if test -z "$CTAGS"; then - CTAGS=ctags -fi -AC_SUBST([CTAGS]) -if test -z "$ETAGS"; then - ETAGS=etags -fi -AC_SUBST([ETAGS]) -if test -z "$CSCOPE"; then - CSCOPE=cscope -fi -AC_SUBST([CSCOPE]) - -AC_REQUIRE([AM_SILENT_RULES])dnl -dnl The testsuite driver may need to know about EXEEXT, so add the -dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This -dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below. -AC_CONFIG_COMMANDS_PRE(dnl -[m4_provide_if([_AM_COMPILER_EXEEXT], - [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl - -# POSIX will say in a future version that running "rm -f" with no argument -# is OK; and we want to be able to make that assumption in our Makefile -# recipes. So use an aggressive probe to check that the usage we want is -# actually supported "in the wild" to an acceptable degree. -# See automake bug#10828. -# To make any issue more visible, cause the running configure to be aborted -# by default if the 'rm' program in use doesn't match our expectations; the -# user can still override this though. -if rm -f && rm -fr && rm -rf; then : OK; else - cat >&2 <<'END' -Oops! - -Your 'rm' program seems unable to run without file operands specified -on the command line, even when the '-f' option is present. This is contrary -to the behaviour of most rm programs out there, and not conforming with -the upcoming POSIX standard: - -Please tell bug-automake@gnu.org about your system, including the value -of your $PATH and any error possibly output before this message. This -can help us improve future automake versions. - -END - if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then - echo 'Configuration will proceed anyway, since you have set the' >&2 - echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 - echo >&2 - else - cat >&2 <<'END' -Aborting the configuration process, to ensure you take notice of the issue. - -You can download and install GNU coreutils to get an 'rm' implementation -that behaves properly: . - -If you want to complete the configuration process using your problematic -'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM -to "yes", and re-run configure. - -END - AC_MSG_ERROR([Your 'rm' program is bad, sorry.]) - fi -fi -dnl The trailing newline in this macro's definition is deliberate, for -dnl backward compatibility and to allow trailing 'dnl'-style comments -dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841. -]) - -dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not -dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further -dnl mangled by Autoconf and run in a shell conditional statement. -m4_define([_AC_COMPILER_EXEEXT], -m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) - -# When config.status generates a header, we must update the stamp-h file. -# This file resides in the same directory as the config header -# that is generated. The stamp files are numbered to have different names. - -# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the -# loop where config.status creates the headers, so we can generate -# our stamp files there. -AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], -[# Compute $1's index in $config_headers. -_am_arg=$1 -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) - -# Copyright (C) 2001-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_PROG_INSTALL_SH -# ------------------ -# Define $install_sh. -AC_DEFUN([AM_PROG_INSTALL_SH], -[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -if test x"${install_sh+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; - *) - install_sh="\${SHELL} $am_aux_dir/install-sh" - esac -fi -AC_SUBST([install_sh])]) - -# Copyright (C) 2003-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# Check whether the underlying file-system supports filenames -# with a leading dot. For instance MS-DOS doesn't. -AC_DEFUN([AM_SET_LEADING_DOT], -[rm -rf .tst 2>/dev/null -mkdir .tst 2>/dev/null -if test -d .tst; then - am__leading_dot=. -else - am__leading_dot=_ -fi -rmdir .tst 2>/dev/null -AC_SUBST([am__leading_dot])]) - -# Add --enable-maintainer-mode option to configure. -*- Autoconf -*- -# From Jim Meyering - -# Copyright (C) 1996-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_MAINTAINER_MODE([DEFAULT-MODE]) -# ---------------------------------- -# Control maintainer-specific portions of Makefiles. -# Default is to disable them, unless 'enable' is passed literally. -# For symmetry, 'disable' may be passed as well. Anyway, the user -# can override the default with the --enable/--disable switch. -AC_DEFUN([AM_MAINTAINER_MODE], -[m4_case(m4_default([$1], [disable]), - [enable], [m4_define([am_maintainer_other], [disable])], - [disable], [m4_define([am_maintainer_other], [enable])], - [m4_define([am_maintainer_other], [enable]) - m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])]) -AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) - dnl maintainer-mode's default is 'disable' unless 'enable' is passed - AC_ARG_ENABLE([maintainer-mode], - [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode], - am_maintainer_other[ make rules and dependencies not useful - (and sometimes confusing) to the casual installer])], - [USE_MAINTAINER_MODE=$enableval], - [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes])) - AC_MSG_RESULT([$USE_MAINTAINER_MODE]) - AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes]) - MAINT=$MAINTAINER_MODE_TRUE - AC_SUBST([MAINT])dnl -] -) - -# Check to see how 'make' treats includes. -*- Autoconf -*- - -# Copyright (C) 2001-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_MAKE_INCLUDE() -# ----------------- -# Check whether make has an 'include' directive that can support all -# the idioms we need for our automatic dependency tracking code. -AC_DEFUN([AM_MAKE_INCLUDE], -[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive]) -cat > confinc.mk << 'END' -am__doit: - @echo this is the am__doit target >confinc.out -.PHONY: am__doit -END -am__include="#" -am__quote= -# BSD make does it like this. -echo '.include "confinc.mk" # ignored' > confmf.BSD -# Other make implementations (GNU, Solaris 10, AIX) do it like this. -echo 'include confinc.mk # ignored' > confmf.GNU -_am_result=no -for s in GNU BSD; do - AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out]) - AS_CASE([$?:`cat confinc.out 2>/dev/null`], - ['0:this is the am__doit target'], - [AS_CASE([$s], - [BSD], [am__include='.include' am__quote='"'], - [am__include='include' am__quote=''])]) - if test "$am__include" != "#"; then - _am_result="yes ($s style)" - break - fi -done -rm -f confinc.* confmf.* -AC_MSG_RESULT([${_am_result}]) -AC_SUBST([am__include])]) -AC_SUBST([am__quote])]) - -# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- - -# Copyright (C) 1997-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_MISSING_PROG(NAME, PROGRAM) -# ------------------------------ -AC_DEFUN([AM_MISSING_PROG], -[AC_REQUIRE([AM_MISSING_HAS_RUN]) -$1=${$1-"${am_missing_run}$2"} -AC_SUBST($1)]) - -# AM_MISSING_HAS_RUN -# ------------------ -# Define MISSING if not defined so far and test if it is modern enough. -# If it is, set am_missing_run to use it, otherwise, to nothing. -AC_DEFUN([AM_MISSING_HAS_RUN], -[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -AC_REQUIRE_AUX_FILE([missing])dnl -if test x"${MISSING+set}" != xset; then - MISSING="\${SHELL} '$am_aux_dir/missing'" -fi -# Use eval to expand $SHELL -if eval "$MISSING --is-lightweight"; then - am_missing_run="$MISSING " -else - am_missing_run= - AC_MSG_WARN(['missing' script is too old or missing]) -fi -]) - -# Helper functions for option handling. -*- Autoconf -*- - -# Copyright (C) 2001-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_MANGLE_OPTION(NAME) -# ----------------------- -AC_DEFUN([_AM_MANGLE_OPTION], -[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) - -# _AM_SET_OPTION(NAME) -# -------------------- -# Set option NAME. Presently that only means defining a flag for this option. -AC_DEFUN([_AM_SET_OPTION], -[m4_define(_AM_MANGLE_OPTION([$1]), [1])]) - -# _AM_SET_OPTIONS(OPTIONS) -# ------------------------ -# OPTIONS is a space-separated list of Automake options. -AC_DEFUN([_AM_SET_OPTIONS], -[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) - -# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) -# ------------------------------------------- -# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. -AC_DEFUN([_AM_IF_OPTION], -[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) - -# Copyright (C) 1999-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_PROG_CC_C_O -# --------------- -# Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC -# to automatically call this. -AC_DEFUN([_AM_PROG_CC_C_O], -[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -AC_REQUIRE_AUX_FILE([compile])dnl -AC_LANG_PUSH([C])dnl -AC_CACHE_CHECK( - [whether $CC understands -c and -o together], - [am_cv_prog_cc_c_o], - [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])]) - # Make sure it works both with $CC and with simple cc. - # Following AC_PROG_CC_C_O, we do the test twice because some - # compilers refuse to overwrite an existing .o file with -o, - # though they will create one. - am_cv_prog_cc_c_o=yes - for am_i in 1 2; do - if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \ - && test -f conftest2.$ac_objext; then - : OK - else - am_cv_prog_cc_c_o=no - break - fi - done - rm -f core conftest* - unset am_i]) -if test "$am_cv_prog_cc_c_o" != yes; then - # Losing compiler, so override with the script. - # FIXME: It is wrong to rewrite CC. - # But if we don't then we get into trouble of one sort or another. - # A longer-term fix would be to have automake use am__CC in this case, - # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" - CC="$am_aux_dir/compile $CC" -fi -AC_LANG_POP([C])]) - -# For backward compatibility. -AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) - -# Copyright (C) 2001-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_RUN_LOG(COMMAND) -# ------------------- -# Run COMMAND, save the exit status in ac_status, and log it. -# (This has been adapted from Autoconf's _AC_RUN_LOG macro.) -AC_DEFUN([AM_RUN_LOG], -[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD - ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD - (exit $ac_status); }]) - -# Check to make sure that the build environment is sane. -*- Autoconf -*- - -# Copyright (C) 1996-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_SANITY_CHECK -# --------------- -AC_DEFUN([AM_SANITY_CHECK], -[AC_MSG_CHECKING([whether build environment is sane]) -# Reject unsafe characters in $srcdir or the absolute working directory -# name. Accept space and tab only in the latter. -am_lf=' -' -case `pwd` in - *[[\\\"\#\$\&\'\`$am_lf]]*) - AC_MSG_ERROR([unsafe absolute working directory name]);; -esac -case $srcdir in - *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) - AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);; -esac - -# Do 'set' in a subshell so we don't clobber the current shell's -# arguments. Must try -L first in case configure is actually a -# symlink; some systems play weird games with the mod time of symlinks -# (eg FreeBSD returns the mod time of the symlink's containing -# directory). -if ( - am_has_slept=no - for am_try in 1 2; do - echo "timestamp, slept: $am_has_slept" > conftest.file - set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` - if test "$[*]" = "X"; then - # -L didn't work. - set X `ls -t "$srcdir/configure" conftest.file` - fi - if test "$[*]" != "X $srcdir/configure conftest.file" \ - && test "$[*]" != "X conftest.file $srcdir/configure"; then - - # If neither matched, then we have a broken ls. This can happen - # if, for instance, CONFIG_SHELL is bash and it inherits a - # broken ls alias from the environment. This has actually - # happened. Such a system could not be considered "sane". - AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken - alias in your environment]) - fi - if test "$[2]" = conftest.file || test $am_try -eq 2; then - break - fi - # Just in case. - sleep 1 - am_has_slept=yes - done - test "$[2]" = conftest.file - ) -then - # Ok. - : -else - AC_MSG_ERROR([newly created file is older than distributed files! -Check your system clock]) -fi -AC_MSG_RESULT([yes]) -# If we didn't sleep, we still need to ensure time stamps of config.status and -# generated files are strictly newer. -am_sleep_pid= -if grep 'slept: no' conftest.file >/dev/null 2>&1; then - ( sleep 1 ) & - am_sleep_pid=$! -fi -AC_CONFIG_COMMANDS_PRE( - [AC_MSG_CHECKING([that generated files are newer than configure]) - if test -n "$am_sleep_pid"; then - # Hide warnings about reused PIDs. - wait $am_sleep_pid 2>/dev/null - fi - AC_MSG_RESULT([done])]) -rm -f conftest.file -]) - -# Copyright (C) 2009-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_SILENT_RULES([DEFAULT]) -# -------------------------- -# Enable less verbose build rules; with the default set to DEFAULT -# ("yes" being less verbose, "no" or empty being verbose). -AC_DEFUN([AM_SILENT_RULES], -[AC_ARG_ENABLE([silent-rules], [dnl -AS_HELP_STRING( - [--enable-silent-rules], - [less verbose build output (undo: "make V=1")]) -AS_HELP_STRING( - [--disable-silent-rules], - [verbose build output (undo: "make V=0")])dnl -]) -case $enable_silent_rules in @%:@ ((( - yes) AM_DEFAULT_VERBOSITY=0;; - no) AM_DEFAULT_VERBOSITY=1;; - *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; -esac -dnl -dnl A few 'make' implementations (e.g., NonStop OS and NextStep) -dnl do not support nested variable expansions. -dnl See automake bug#9928 and bug#10237. -am_make=${MAKE-make} -AC_CACHE_CHECK([whether $am_make supports nested variables], - [am_cv_make_support_nested_variables], - [if AS_ECHO([['TRUE=$(BAR$(V)) -BAR0=false -BAR1=true -V=1 -am__doit: - @$(TRUE) -.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then - am_cv_make_support_nested_variables=yes -else - am_cv_make_support_nested_variables=no -fi]) -if test $am_cv_make_support_nested_variables = yes; then - dnl Using '$V' instead of '$(V)' breaks IRIX make. - AM_V='$(V)' - AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -else - AM_V=$AM_DEFAULT_VERBOSITY - AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY -fi -AC_SUBST([AM_V])dnl -AM_SUBST_NOTMAKE([AM_V])dnl -AC_SUBST([AM_DEFAULT_V])dnl -AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl -AC_SUBST([AM_DEFAULT_VERBOSITY])dnl -AM_BACKSLASH='\' -AC_SUBST([AM_BACKSLASH])dnl -_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl -]) - -# Copyright (C) 2001-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# AM_PROG_INSTALL_STRIP -# --------------------- -# One issue with vendor 'install' (even GNU) is that you can't -# specify the program used to strip binaries. This is especially -# annoying in cross-compiling environments, where the build's strip -# is unlikely to handle the host's binaries. -# Fortunately install-sh will honor a STRIPPROG variable, so we -# always use install-sh in "make install-strip", and initialize -# STRIPPROG with the value of the STRIP variable (set by the user). -AC_DEFUN([AM_PROG_INSTALL_STRIP], -[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl -# Installed binaries are usually stripped using 'strip' when the user -# run "make install-strip". However 'strip' might not be the right -# tool to use in cross-compilation environments, therefore Automake -# will honor the 'STRIP' environment variable to overrule this program. -dnl Don't test for $cross_compiling = yes, because it might be 'maybe'. -if test "$cross_compiling" != no; then - AC_CHECK_TOOL([STRIP], [strip], :) -fi -INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" -AC_SUBST([INSTALL_STRIP_PROGRAM])]) - -# Copyright (C) 2006-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_SUBST_NOTMAKE(VARIABLE) -# --------------------------- -# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. -# This macro is traced by Automake. -AC_DEFUN([_AM_SUBST_NOTMAKE]) - -# AM_SUBST_NOTMAKE(VARIABLE) -# -------------------------- -# Public sister of _AM_SUBST_NOTMAKE. -AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) - -# Check how to create a tarball. -*- Autoconf -*- - -# Copyright (C) 2004-2021 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# _AM_PROG_TAR(FORMAT) -# -------------------- -# Check how to create a tarball in format FORMAT. -# FORMAT should be one of 'v7', 'ustar', or 'pax'. -# -# Substitute a variable $(am__tar) that is a command -# writing to stdout a FORMAT-tarball containing the directory -# $tardir. -# tardir=directory && $(am__tar) > result.tar -# -# Substitute a variable $(am__untar) that extract such -# a tarball read from stdin. -# $(am__untar) < result.tar -# -AC_DEFUN([_AM_PROG_TAR], -[# Always define AMTAR for backward compatibility. Yes, it's still used -# in the wild :-( We should find a proper way to deprecate it ... -AC_SUBST([AMTAR], ['$${TAR-tar}']) - -# We'll loop over all known methods to create a tar archive until one works. -_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' - -m4_if([$1], [v7], - [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], - - [m4_case([$1], - [ustar], - [# The POSIX 1988 'ustar' format is defined with fixed-size fields. - # There is notably a 21 bits limit for the UID and the GID. In fact, - # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343 - # and bug#13588). - am_max_uid=2097151 # 2^21 - 1 - am_max_gid=$am_max_uid - # The $UID and $GID variables are not portable, so we need to resort - # to the POSIX-mandated id(1) utility. Errors in the 'id' calls - # below are definitely unexpected, so allow the users to see them - # (that is, avoid stderr redirection). - am_uid=`id -u || echo unknown` - am_gid=`id -g || echo unknown` - AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format]) - if test $am_uid -le $am_max_uid; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - _am_tools=none - fi - AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format]) - if test $am_gid -le $am_max_gid; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - _am_tools=none - fi], - - [pax], - [], - - [m4_fatal([Unknown tar format])]) - - AC_MSG_CHECKING([how to create a $1 tar archive]) - - # Go ahead even if we have the value already cached. We do so because we - # need to set the values for the 'am__tar' and 'am__untar' variables. - _am_tools=${am_cv_prog_tar_$1-$_am_tools} - - for _am_tool in $_am_tools; do - case $_am_tool in - gnutar) - for _am_tar in tar gnutar gtar; do - AM_RUN_LOG([$_am_tar --version]) && break - done - am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' - am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' - am__untar="$_am_tar -xf -" - ;; - plaintar) - # Must skip GNU tar: if it does not support --format= it doesn't create - # ustar tarball either. - (tar --version) >/dev/null 2>&1 && continue - am__tar='tar chf - "$$tardir"' - am__tar_='tar chf - "$tardir"' - am__untar='tar xf -' - ;; - pax) - am__tar='pax -L -x $1 -w "$$tardir"' - am__tar_='pax -L -x $1 -w "$tardir"' - am__untar='pax -r' - ;; - cpio) - am__tar='find "$$tardir" -print | cpio -o -H $1 -L' - am__tar_='find "$tardir" -print | cpio -o -H $1 -L' - am__untar='cpio -i -H $1 -d' - ;; - none) - am__tar=false - am__tar_=false - am__untar=false - ;; - esac - - # If the value was cached, stop now. We just wanted to have am__tar - # and am__untar set. - test -n "${am_cv_prog_tar_$1}" && break - - # tar/untar a dummy directory, and stop if the command works. - rm -rf conftest.dir - mkdir conftest.dir - echo GrepMe > conftest.dir/file - AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) - rm -rf conftest.dir - if test -s conftest.tar; then - AM_RUN_LOG([$am__untar /dev/null 2>&1 && break - fi - done - rm -rf conftest.dir - - AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) - AC_MSG_RESULT([$am_cv_prog_tar_$1])]) - -AC_SUBST([am__tar]) -AC_SUBST([am__untar]) -]) # _AM_PROG_TAR - -m4_include([subprojects/libglnx/libglnx.m4]) -m4_include([m4/attributes.m4]) -m4_include([m4/gettext.m4]) -m4_include([m4/glibtests.m4]) -m4_include([m4/gtk-doc.m4]) -m4_include([m4/iconv.m4]) -m4_include([m4/intlmacosx.m4]) -m4_include([m4/lib-ld.m4]) -m4_include([m4/lib-link.m4]) -m4_include([m4/lib-prefix.m4]) -m4_include([m4/libtool.m4]) -m4_include([m4/ltoptions.m4]) -m4_include([m4/ltsugar.m4]) -m4_include([m4/ltversion.m4]) -m4_include([m4/lt~obsolete.m4]) -m4_include([m4/nls.m4]) -m4_include([m4/po.m4]) -m4_include([m4/progtest.m4]) -m4_include([acinclude.m4]) diff --git a/app/Makefile.am.inc b/app/Makefile.am.inc deleted file mode 100644 index b3b6a28..0000000 --- a/app/Makefile.am.inc +++ /dev/null @@ -1,160 +0,0 @@ -bin_PROGRAMS += \ - flatpak \ - $(NULL) - -EXTRA_DIST += app/parse-datetime.y - -flatpak_dbus_built_sources = app/flatpak-permission-dbus-generated.c app/flatpak-permission-dbus-generated.h - -app/flatpak-permission-dbus-generated.c: data/org.freedesktop.impl.portal.PermissionStore.xml Makefile - mkdir -p $(builddir)/app - $(AM_V_GEN) $(GDBUS_CODEGEN) \ - --interface-prefix org.freedesktop.impl.portal \ - --c-namespace XdpDbus \ - --generate-c-code $(builddir)/app/flatpak-permission-dbus-generated \ - $(srcdir)/data/org.freedesktop.impl.portal.PermissionStore.xml \ - $(NULL) - -app/%-dbus-generated.h: app/%-dbus-generated.c - @true # Built as a side-effect of the rules for the .c - - -if BUILD_SYSTEM_HELPER -polkit_sources = \ - app/flatpak-polkit-agent-text-listener.h \ - app/flatpak-polkit-agent-text-listener.c \ - $(NULL) -endif - -noinst_LTLIBRARIES += libflatpak-app.la - -libflatpak_app_la_SOURCES = \ - app/flatpak-builtins-utils.h \ - app/flatpak-builtins-utils.c \ - app/flatpak-table-printer.c \ - app/flatpak-table-printer.h \ - app/parse-datetime.h \ - $(NULL) - -nodist_libflatpak_app_la_SOURCES = \ - app/parse-datetime.c \ - $(NULL) - -libflatpak_app_la_LIBADD = \ - $(AM_LDADD) \ - $(BASE_LIBS) \ - $(OSTREE_LIBS) \ - $(JSON_LIBS) \ - $(APPSTREAM_LIBS) \ - $(SYSTEMD_LIBS) \ - $(POLKIT_LIBS) \ - $(NULL) - -libflatpak_app_la_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(JSON_CFLAGS) \ - $(APPSTREAM_CFLAGS) \ - $(SYSTEMD_CFLAGS) \ - $(POLKIT_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -I$(srcdir)/app \ - -I$(builddir)/app \ - -DLOCALEDIR=\"$(localedir)\" \ - $(NULL) - -flatpak_SOURCES = \ - app/flatpak-main.c \ - app/flatpak-builtins.h \ - app/flatpak-builtins-remote-add.c \ - app/flatpak-builtins-remote-modify.c \ - app/flatpak-builtins-remote-delete.c \ - app/flatpak-builtins-remote-list.c \ - app/flatpak-builtins-remote-ls.c \ - app/flatpak-builtins-remote-info.c \ - app/flatpak-builtins-install.c \ - app/flatpak-builtins-override.c \ - app/flatpak-builtins-make-current.c \ - app/flatpak-builtins-update.c \ - app/flatpak-builtins-uninstall.c \ - app/flatpak-builtins-mask.c \ - app/flatpak-builtins-pin.c \ - app/flatpak-builtins-list.c \ - app/flatpak-builtins-info.c \ - app/flatpak-builtins-config.c \ - app/flatpak-builtins-run.c \ - app/flatpak-builtins-enter.c \ - app/flatpak-builtins-ps.c \ - app/flatpak-builtins-build-init.c \ - app/flatpak-builtins-build.c \ - app/flatpak-builtins-build-finish.c \ - app/flatpak-builtins-build-export.c \ - app/flatpak-builtins-build-bundle.c \ - app/flatpak-builtins-build-import-bundle.c \ - app/flatpak-builtins-build-commit-from.c \ - app/flatpak-builtins-build-sign.c \ - app/flatpak-builtins-build-update-repo.c \ - app/flatpak-builtins-repo.c \ - app/flatpak-builtins-document-export.c \ - app/flatpak-builtins-document-unexport.c \ - app/flatpak-builtins-document-info.c \ - app/flatpak-builtins-document-list.c \ - app/flatpak-builtins-permission-remove.c \ - app/flatpak-builtins-permission-set.c \ - app/flatpak-builtins-permission-list.c \ - app/flatpak-builtins-permission-show.c \ - app/flatpak-builtins-permission-reset.c \ - app/flatpak-builtins-search.c \ - app/flatpak-builtins-repair.c \ - app/flatpak-builtins-create-usb.c \ - app/flatpak-builtins-kill.c \ - app/flatpak-builtins-history.c \ - app/flatpak-complete.c \ - app/flatpak-complete.h \ - app/flatpak-cli-transaction.c \ - app/flatpak-cli-transaction.h \ - app/flatpak-quiet-transaction.c \ - app/flatpak-quiet-transaction.h \ - app/parse-datetime.h \ - $(polkit_sources) \ - $(NULL) - -nodist_flatpak_SOURCES = \ - $(flatpak_dbus_built_sources) \ - $(NULL) - -app/parse-datetime.c: app/parse-datetime.y Makefile - $(AM_V_GEN) $(BISON) $< -o $@ - -BUILT_SOURCES += $(flatpak_dbus_built_sources) -CLEANFILES += app/parse-datetime.c $(flatpak_dbus_built_sources) - -flatpak_LDADD = \ - $(AM_LDADD) \ - $(BASE_LIBS) \ - $(OSTREE_LIBS) \ - $(JSON_LIBS) \ - $(APPSTREAM_LIBS) \ - $(SYSTEMD_LIBS) \ - $(POLKIT_LIBS) \ - libglnx.la \ - libflatpak-app.la \ - libflatpak-common.la \ - libflatpak-common-base.la \ - $(NULL) - -flatpak_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(JSON_CFLAGS) \ - $(APPSTREAM_CFLAGS) \ - $(SYSTEMD_CFLAGS) \ - $(POLKIT_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -I$(srcdir)/app \ - -I$(builddir)/app \ - -DLIBEXECDIR=\"$(libexecdir)\" \ - -DLOCALEDIR=\"$(localedir)\" \ - $(NULL) diff --git a/app/flatpak-builtins-build-bundle.c b/app/flatpak-builtins-build-bundle.c index 53df7ad..ba9646d 100644 --- a/app/flatpak-builtins-build-bundle.c +++ b/app/flatpak-builtins-build-bundle.c @@ -34,6 +34,7 @@ #include "libglnx.h" #include "flatpak-builtins.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-utils-private.h" #include "flatpak-oci-registry-private.h" #include "flatpak-chain-input-stream-private.h" diff --git a/app/flatpak-builtins-build-commit-from.c b/app/flatpak-builtins-build-commit-from.c index ef5601c..677f2f3 100644 --- a/app/flatpak-builtins-build-commit-from.c +++ b/app/flatpak-builtins-build-commit-from.c @@ -30,6 +30,7 @@ #include "libglnx.h" #include "flatpak-builtins.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-utils-private.h" #include "parse-datetime.h" @@ -129,7 +130,7 @@ static GVariant * new_bytearray (const guchar *data, gsize len) { - gpointer data_copy = g_memdup (data, len); + gpointer data_copy = g_memdup2 (data, len); GVariant *ret = g_variant_new_from_data (G_VARIANT_TYPE ("ay"), data_copy, len, FALSE, g_free, data_copy); @@ -719,7 +720,7 @@ flatpak_builtin_build_commit_from (int argc, char **argv, GCancellable *cancella { g_autoptr(GError) local_error = NULL; if (!rewrite_delta (src_repo, resolved_ref, dst_repo, commit_checksum, dst_commitv, from[j], &local_error)) - g_debug ("Failed to copy delta: %s", local_error->message); + g_info ("Failed to copy delta: %s", local_error->message); } } } @@ -738,7 +739,7 @@ flatpak_builtin_build_commit_from (int argc, char **argv, GCancellable *cancella if (opt_no_summary_index) flags |= FLATPAK_REPO_UPDATE_FLAG_DISABLE_INDEX; - g_debug ("Updating summary"); + g_info ("Updating summary"); if (!flatpak_repo_update (dst_repo, flags, (const char **) opt_gpg_key_ids, opt_gpg_homedir, diff --git a/app/flatpak-builtins-build-export.c b/app/flatpak-builtins-build-export.c index 3f5d8a1..d4cbc48 100644 --- a/app/flatpak-builtins-build-export.c +++ b/app/flatpak-builtins-build-export.c @@ -30,6 +30,7 @@ #include "libglnx.h" #include "flatpak-builtins.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-utils-private.h" #include "parse-datetime.h" @@ -208,7 +209,7 @@ commit_filter (OstreeRepo *repo, if (matches_patterns (commit_data->exclude, path) && !matches_patterns (commit_data->include, path)) { - g_debug ("Excluding %s", path); + g_info ("Excluding %s", path); return OSTREE_REPO_COMMIT_FILTER_SKIP; } @@ -395,13 +396,13 @@ validate_icon_file (GFile *file, GError **error) G_SPAWN_STDOUT_TO_DEV_NULL, NULL, NULL, NULL, &err, &status, error)) { - g_debug ("Icon validation: %s", (*error)->message); + g_info ("Icon validation: %s", (*error)->message); return FALSE; } if (!g_spawn_check_exit_status (status, NULL)) { - g_debug ("Icon validation: %s", err); + g_info ("Icon validation: %s", err); return flatpak_fail (error, "%s is not a valid icon: %s", name, err); } @@ -1151,7 +1152,7 @@ flatpak_builtin_build_export (int argc, char **argv, GCancellable *cancellable, if (opt_no_summary_index) flags |= FLATPAK_REPO_UPDATE_FLAG_DISABLE_INDEX; - g_debug ("Updating summary"); + g_info ("Updating summary"); if (!flatpak_repo_update (repo, flags, (const char **) opt_gpg_key_ids, opt_gpg_homedir, diff --git a/app/flatpak-builtins-build-finish.c b/app/flatpak-builtins-build-finish.c index 7ad3f4d..96a7945 100644 --- a/app/flatpak-builtins-build-finish.c +++ b/app/flatpak-builtins-build-finish.c @@ -32,6 +32,7 @@ #include "flatpak-builtins.h" #include "flatpak-context-private.h" +#include "flatpak-dir-private.h" #include "flatpak-utils-private.h" #include "flatpak-run-private.h" @@ -175,7 +176,7 @@ export_dir (int source_parent_fd, else { source_printable = g_build_filename (source_relpath, dent->d_name, NULL); - g_debug ("Not exporting non-regular file %s", source_printable); + g_info ("Not exporting non-regular file %s", source_printable); } } @@ -235,6 +236,7 @@ collect_exports (GFile *base, "share/icons", /* Icons */ "share/dbus-1/services", /* D-Bus service files */ "share/gnome-shell/search-providers", /* Search providers */ + "share/krunner/dbusplugins", /* KDE krunner DBus plugins */ "share/appdata", /* Copy appdata/metainfo files (legacy path) */ "share/metainfo", /* Copy appdata/metainfo files */ NULL, @@ -259,13 +261,13 @@ collect_exports (GFile *base, g_auto(GStrv) allowed_extensions = NULL; gboolean require_exact_match = FALSE; - if (!flatpak_get_allowed_exports (path, app_id, arg_context, - &allowed_extensions, &allowed_prefixes, &require_exact_match)) + if (!flatpak_context_get_allowed_exports (arg_context, path, app_id, + &allowed_extensions, &allowed_prefixes, &require_exact_match)) return flatpak_fail (error, "Unexpectedly not allowed to export %s", path); if (g_file_query_exists (src, cancellable)) { - g_debug ("Exporting from %s", path); + g_info ("Exporting from %s", path); g_autoptr(GFile) dest = NULL; g_autoptr(GFile) dest_parent = NULL; @@ -275,10 +277,10 @@ collect_exports (GFile *base, dest = g_file_resolve_relative_path (export, path); dest_parent = g_file_get_parent (dest); - g_debug ("Ensuring export/%s parent exists", path); + g_info ("Ensuring export/%s parent exists", path); if (!flatpak_mkdir_p (dest_parent, cancellable, error)) return FALSE; - g_debug ("Copying from files/%s", path); + g_info ("Copying from files/%s", path); if (!copy_exports (src, dest, path, @@ -401,14 +403,14 @@ update_metadata (GFile *base, FlatpakContext *arg_context, gboolean is_runtime, { if (g_key_file_has_key (keyfile, group, FLATPAK_METADATA_KEY_COMMAND, NULL)) { - g_debug ("Command key is present"); + g_info ("Command key is present"); if (opt_command) g_key_file_set_string (keyfile, group, FLATPAK_METADATA_KEY_COMMAND, opt_command); } else if (opt_command) { - g_debug ("Using explicitly provided command %s", opt_command); + g_info ("Using explicitly provided command %s", opt_command); g_key_file_set_string (keyfile, group, FLATPAK_METADATA_KEY_COMMAND, opt_command); } @@ -419,7 +421,7 @@ update_metadata (GFile *base, FlatpakContext *arg_context, gboolean is_runtime, g_autoptr(GFileEnumerator) bin_enum = NULL; g_autoptr(GFileInfo) child_info = NULL; - g_debug ("Looking for executables"); + g_info ("Looking for executables"); bin_dir = g_file_resolve_relative_path (base, "files/bin"); if (g_file_query_exists (bin_dir, cancellable)) @@ -687,12 +689,12 @@ flatpak_builtin_build_finish (int argc, char **argv, GCancellable *cancellable, if (!is_runtime) { - g_debug ("Collecting exports"); + g_info ("Collecting exports"); if (!collect_exports (base, id, arg_context, cancellable, error)) return FALSE; } - g_debug ("Updating metadata"); + g_info ("Updating metadata"); if (!update_metadata (base, arg_context, is_runtime, cancellable, error)) return FALSE; diff --git a/app/flatpak-builtins-build-import-bundle.c b/app/flatpak-builtins-build-import-bundle.c index e616f66..d5d6fc2 100644 --- a/app/flatpak-builtins-build-import-bundle.c +++ b/app/flatpak-builtins-build-import-bundle.c @@ -30,6 +30,7 @@ #include "libglnx.h" #include "flatpak-builtins.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-utils-private.h" #include "flatpak-oci-registry-private.h" @@ -248,7 +249,7 @@ flatpak_builtin_build_import (int argc, char **argv, GCancellable *cancellable, if (opt_no_summary_index) flags |= FLATPAK_REPO_UPDATE_FLAG_DISABLE_INDEX; - g_debug ("Updating summary"); + g_info ("Updating summary"); if (!flatpak_repo_update (repo, flags, (const char **) opt_gpg_key_ids, opt_gpg_homedir, diff --git a/app/flatpak-builtins-build-sign.c b/app/flatpak-builtins-build-sign.c index e959002..9d7149c 100644 --- a/app/flatpak-builtins-build-sign.c +++ b/app/flatpak-builtins-build-sign.c @@ -30,6 +30,7 @@ #include "libglnx.h" #include "flatpak-builtins.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-utils-private.h" static char *opt_arch; diff --git a/app/flatpak-builtins-build-update-repo.c b/app/flatpak-builtins-build-update-repo.c index dca708e..8c54d8e 100644 --- a/app/flatpak-builtins-build-update-repo.c +++ b/app/flatpak-builtins-build-update-repo.c @@ -30,6 +30,7 @@ #include "libglnx.h" #include "flatpak-builtins.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-utils-base-private.h" #include "flatpak-builtins-utils.h" #include "flatpak-prune-private.h" @@ -400,7 +401,7 @@ generate_all_deltas (OstreeRepo *repo, if (ignore_ref) { - g_debug ("Ignoring deltas for ref %s", ref); + g_info ("Ignoring deltas for ref %s", ref); continue; } diff --git a/app/flatpak-builtins-build.c b/app/flatpak-builtins-build.c index ed7f92b..585f8f4 100644 --- a/app/flatpak-builtins-build.c +++ b/app/flatpak-builtins-build.c @@ -200,6 +200,7 @@ flatpak_builtin_build (int argc, char **argv, GCancellable *cancellable, GError g_autofree char *runtime_extensions = NULL; g_autofree char *runtime_ld_path = NULL; g_autofree char *instance_id_host_dir = NULL; + g_autofree char *instance_id = NULL; char pid_str[64]; g_autofree char *pid_path = NULL; g_autoptr(GFile) app_id_dir = NULL; @@ -548,13 +549,14 @@ flatpak_builtin_build (int argc, char **argv, GCancellable *cancellable, GError app_id_dir, app_context, NULL, FALSE, TRUE, TRUE, &app_info_path, -1, - &instance_id_host_dir, + &instance_id_host_dir, NULL, + &instance_id, error)) return FALSE; if (!flatpak_run_add_environment_args (bwrap, app_info_path, run_flags, id, app_context, app_id_dir, NULL, -1, - NULL, cancellable, error)) + instance_id, NULL, cancellable, error)) return FALSE; for (i = 0; opt_bind_mounts != NULL && opt_bind_mounts[i] != NULL; i++) diff --git a/app/flatpak-builtins-create-usb.c b/app/flatpak-builtins-create-usb.c index 9b319f0..fc593a2 100644 --- a/app/flatpak-builtins-create-usb.c +++ b/app/flatpak-builtins-create-usb.c @@ -30,6 +30,7 @@ #include "libglnx.h" #include "flatpak-builtins.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-builtins-utils.h" #include "flatpak-utils-private.h" #include "flatpak-error.h" @@ -111,7 +112,7 @@ add_related (GHashTable *all_refs, g_autofree char *branch = NULL; GList *extensions, *l; - g_debug ("Finding related refs for ‘%s’", flatpak_decomposed_get_ref (ref)); + g_info ("Finding related refs for ‘%s’", flatpak_decomposed_get_ref (ref)); arch = flatpak_decomposed_dup_arch (ref); branch = flatpak_decomposed_dup_branch (ref); @@ -228,7 +229,7 @@ add_runtime (GHashTable *all_refs, CommitAndSubpaths *c_s; g_autoptr(GVariant) extra_data_sources = NULL; - g_debug ("Finding the runtime for ‘%s’", flatpak_decomposed_get_ref (ref)); + g_info ("Finding the runtime for ‘%s’", flatpak_decomposed_get_ref (ref)); deploy_data = flatpak_dir_get_deploy_data (dir, ref, FLATPAK_DEPLOY_VERSION_ANY, cancellable, error); if (deploy_data == NULL) @@ -316,7 +317,7 @@ ostree_create_usb (GOptionContext *context, * more performant than bare-user */ OstreeRepoMode mode = OSTREE_REPO_MODE_ARCHIVE; - g_debug ("%s: Creating repository in mode %u", G_STRFUNC, mode); + g_info ("%s: Creating repository in mode %u", G_STRFUNC, mode); g_autoptr(OstreeRepo) dest_repo = ostree_repo_create_at (mount_root_dfd, dest_repo_path, mode, NULL, cancellable, error); @@ -431,6 +432,7 @@ ostree_create_usb (GOptionContext *context, break; } } + glnx_dirfd_iterator_clear (&repos_iter); /* If we need a symlink, find a unique name for it and create it. */ if (need_symlink) @@ -785,7 +787,7 @@ flatpak_builtin_create_usb (int argc, char **argv, GCancellable *cancellable, GE else { /* Appstream2 is only for efficiency, so just print a debug message */ - g_debug (_("Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n"), + g_info (_("Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n"), remote_name, current_arch, appstream2_error->message); } } @@ -814,7 +816,7 @@ flatpak_builtin_create_usb (int argc, char **argv, GCancellable *cancellable, GE g_string_append_printf (all_refs_str, "(%s, %s) ", collection_ref->collection_id, collection_ref->ref_name); } - g_debug ("Copying the following refs: %s", all_refs_str->str); + g_info ("Copying the following refs: %s", all_refs_str->str); if (!ostree_create_usb (context, src_repo, mount_root_path, mount_root_stbuf, mount_root_dfd, all_refs, cancellable, error)) diff --git a/app/flatpak-builtins-info.c b/app/flatpak-builtins-info.c index ed90583..f9f34a4 100644 --- a/app/flatpak-builtins-info.c +++ b/app/flatpak-builtins-info.c @@ -455,6 +455,7 @@ flatpak_builtin_info (int argc, char **argv, GCancellable *cancellable, GError * len = MAX (len, g_utf8_strlen (_("ID:"), -1)); len = MAX (len, g_utf8_strlen (_("Origin:"), -1)); len = MAX (len, g_utf8_strlen (_("Commit:"), -1)); + len = MAX (len, g_utf8_strlen (_("Installation:"), -1)); len = MAX (len, g_utf8_strlen (_("Installed:"), -1)); len = MAX (len, g_utf8_strlen (_("Subpaths:"), -1)); @@ -470,24 +471,34 @@ flatpak_builtin_info (int argc, char **argv, GCancellable *cancellable, GError * g_autofree char *formatted = NULL; g_autofree char *ext_formatted_size = NULL; g_autofree char *formatted_commit = NULL; + g_autofree char *ext_installation = NULL; if (ext->is_unmaintained) { formatted_commit = g_strdup (_("unmaintained")); origin = NULL; + ext_installation = g_strdup (_("unknown")); size = 0; ext_formatted_size = g_strdup (_("unknown")); ext_subpaths = NULL; } else { - ext_deploy_data = flatpak_dir_get_deploy_data (dir, ext->ref, FLATPAK_DEPLOY_VERSION_CURRENT, cancellable, error); + g_autoptr(GFile) ext_deploy_dir = NULL; + g_autoptr(FlatpakDir) ext_dir = NULL; + + ext_deploy_dir = flatpak_find_deploy_dir_for_ref (ext->ref, &ext_dir, cancellable, error); + if (ext_deploy_dir == NULL) + return FALSE; + + ext_deploy_data = flatpak_dir_get_deploy_data (ext_dir, ext->ref, FLATPAK_DEPLOY_VERSION_CURRENT, cancellable, error); if (ext_deploy_data == NULL) return FALSE; commit = flatpak_deploy_data_get_commit (ext_deploy_data); formatted_commit = ellipsize_string (commit, width); origin = flatpak_deploy_data_get_origin (ext_deploy_data); + ext_installation = flatpak_dir_get_name (ext_dir); size = flatpak_deploy_data_get_installed_size (ext_deploy_data); formatted = g_format_size (size); ext_subpaths = flatpak_deploy_data_get_subpaths (ext_deploy_data); @@ -502,6 +513,7 @@ flatpak_builtin_info (int argc, char **argv, GCancellable *cancellable, GError * print_aligned (len, _("ID:"), ext->id); print_aligned (len, _("Origin:"), origin ? origin : "-"); print_aligned (len, _("Commit:"), formatted_commit); + print_aligned (len, _("Installation:"), ext_installation); print_aligned (len, _("Installed:"), ext_formatted_size); if (ext_subpaths && ext_subpaths[0]) diff --git a/app/flatpak-builtins-install.c b/app/flatpak-builtins-install.c index 0666ea2..d4d9ae3 100644 --- a/app/flatpak-builtins-install.c +++ b/app/flatpak-builtins-install.c @@ -36,6 +36,7 @@ #include "flatpak-transaction-private.h" #include "flatpak-cli-transaction.h" #include "flatpak-quiet-transaction.h" +#include "flatpak-utils-http-private.h" #include "flatpak-utils-private.h" #include "flatpak-error.h" #include "flatpak-chain-input-stream-private.h" diff --git a/app/flatpak-builtins-kill.c b/app/flatpak-builtins-kill.c index 6cd5c74..c1a1ee1 100644 --- a/app/flatpak-builtins-kill.c +++ b/app/flatpak-builtins-kill.c @@ -62,7 +62,7 @@ kill_instance (const char *id, } } - g_debug ("Killed %d instances", killed); + g_info ("Killed %d instances", killed); if (killed == 0) return flatpak_fail (error, _("%s is not running"), id); diff --git a/app/flatpak-builtins-list.c b/app/flatpak-builtins-list.c index 05ebbb4..b2a89bf 100644 --- a/app/flatpak-builtins-list.c +++ b/app/flatpak-builtins-list.c @@ -112,7 +112,6 @@ print_table_for_refs (gboolean print_apps, g_autofree char *match_id = NULL; g_autofree char *match_arch = NULL; g_autofree char *match_branch = NULL; - int rows, cols; if (columns[0].name == NULL) return TRUE; @@ -356,9 +355,7 @@ print_table_for_refs (gboolean print_apps, if (flatpak_table_printer_get_current_row (printer) > 0) { - flatpak_get_window_size (&rows, &cols); - flatpak_table_printer_print_full (printer, 0, cols, NULL, NULL); - g_print ("\n"); + flatpak_table_printer_print (printer); } return TRUE; diff --git a/app/flatpak-builtins-permission-list.c b/app/flatpak-builtins-permission-list.c index 3f6465e..04764ec 100644 --- a/app/flatpak-builtins-permission-list.c +++ b/app/flatpak-builtins-permission-list.c @@ -60,6 +60,7 @@ list_table (XdpDbusPermissionStore *store, GError **error) { const char *one_id[2]; + g_auto(GStrv) store_ids = NULL; char **ids; int i; @@ -71,8 +72,9 @@ list_table (XdpDbusPermissionStore *store, } else { - if (!xdp_dbus_permission_store_call_list_sync (store, table, &ids, NULL, error)) + if (!xdp_dbus_permission_store_call_list_sync (store, table, &store_ids, NULL, error)) return FALSE; + ids = store_ids; } for (i = 0; ids[i]; i++) diff --git a/app/flatpak-builtins-ps.c b/app/flatpak-builtins-ps.c index b5e2983..6f24049 100644 --- a/app/flatpak-builtins-ps.c +++ b/app/flatpak-builtins-ps.c @@ -110,7 +110,7 @@ get_compositor_apps (void) if (ret) g_variant_get (ret, "(@a{sv})", &list); else - g_debug ("Failed to get information about running apps from background portal backends"); + g_info ("Failed to get information about running apps from background portal backends"); return list; } diff --git a/app/flatpak-builtins-remote-add.c b/app/flatpak-builtins-remote-add.c index 0c390ff..d32c1ac 100644 --- a/app/flatpak-builtins-remote-add.c +++ b/app/flatpak-builtins-remote-add.c @@ -31,6 +31,8 @@ #include "flatpak-builtins.h" #include "flatpak-builtins-utils.h" +#include "flatpak-repo-utils-private.h" +#include "flatpak-utils-http-private.h" #include "flatpak-utils-private.h" static gboolean opt_no_gpg_verify; diff --git a/app/flatpak-builtins-remote-info.c b/app/flatpak-builtins-remote-info.c index 501c102..8dee2af 100644 --- a/app/flatpak-builtins-remote-info.c +++ b/app/flatpak-builtins-remote-info.c @@ -31,6 +31,7 @@ #include "flatpak-builtins.h" #include "flatpak-builtins-utils.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-utils-private.h" #include "flatpak-table-printer.h" #include "flatpak-variant-impl-private.h" @@ -167,8 +168,8 @@ flatpak_builtin_remote_info (int argc, char **argv, GCancellable *cancellable, G if (flatpak_remote_state_lookup_sparse_cache (state, flatpak_decomposed_get_ref (ref), &sparse_cache, NULL)) { - eol = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE, NULL); - eol_rebase = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE_REBASE, NULL); + eol = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE, NULL); + eol_rebase = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE_REBASE, NULL); } if (opt_show_ref || opt_show_commit || opt_show_parent || opt_show_metadata || opt_show_runtime || opt_show_sdk) diff --git a/app/flatpak-builtins-remote-ls.c b/app/flatpak-builtins-remote-ls.c index fd718c9..c56e08f 100644 --- a/app/flatpak-builtins-remote-ls.c +++ b/app/flatpak-builtins-remote-ls.c @@ -31,6 +31,7 @@ #include "flatpak-builtins.h" #include "flatpak-builtins-utils.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-utils-private.h" #include "flatpak-table-printer.h" #include "flatpak-variant-impl-private.h" @@ -130,7 +131,6 @@ ls_remote (GHashTable *refs_hash, const char **arches, const char *app_runtime, g_autofree char *match_branch = NULL; gboolean need_cache_data = FALSE; gboolean need_appstream_data = FALSE; - int rows, cols; printer = flatpak_table_printer_new (); @@ -235,7 +235,7 @@ ls_remote (GHashTable *refs_hash, const char **arches, const char *app_runtime, } keys = (FlatpakDecomposed **) g_hash_table_get_keys_as_array (names, &n_keys); - g_qsort_with_data (keys, n_keys, sizeof (char *), (GCompareDataFunc) flatpak_decomposed_strcmp_p, NULL); + qsort (keys, n_keys, sizeof (char *), (GCompareFunc) flatpak_decomposed_strcmp_p); for (i = 0; i < n_keys; i++) { @@ -255,8 +255,8 @@ ls_remote (GHashTable *refs_hash, const char **arches, const char *app_runtime, has_sparse_cache = flatpak_remote_state_lookup_sparse_cache (state, ref_str, &sparse_cache, NULL); if (!opt_all && has_sparse_cache) { - const char *eol = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE, NULL); - const char *eol_rebase = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE_REBASE, NULL); + const char *eol = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE, NULL); + const char *eol_rebase = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE_REBASE, NULL); if (eol != NULL || eol_rebase != NULL) continue; @@ -351,8 +351,8 @@ ls_remote (GHashTable *refs_hash, const char **arches, const char *app_runtime, flatpak_table_printer_add_column (printer, ""); /* Extra */ if (has_sparse_cache) { - const char *eol = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE, NULL); - const char *eol_rebase = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE_REBASE, NULL); + const char *eol = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE, NULL); + const char *eol_rebase = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE_REBASE, NULL); if (eol) flatpak_table_printer_append_with_comma_printf (printer, "eol=%s", eol); @@ -368,9 +368,7 @@ ls_remote (GHashTable *refs_hash, const char **arches, const char *app_runtime, if (flatpak_table_printer_get_current_row (printer) > 0) { - flatpak_get_window_size (&rows, &cols); - flatpak_table_printer_print_full (printer, 0, cols, NULL, NULL); - g_print ("\n"); + flatpak_table_printer_print (printer); } return TRUE; diff --git a/app/flatpak-builtins-repair.c b/app/flatpak-builtins-repair.c index 0248bc4..eeb7f63 100644 --- a/app/flatpak-builtins-repair.c +++ b/app/flatpak-builtins-repair.c @@ -357,11 +357,14 @@ flatpak_builtin_repair (int argc, char **argv, GCancellable *cancellable, GError * + Verify the commits they point to and all object they reference: * + Remove any invalid objects * + Note any missing objects - * + Any refs that had invalid object, or non-partial refs that had missing objects are removed - * + prune (depth=0) all object not references by a ref, which gets rid of any possibly invalid non-scanned objects + * + Any refs that had invalid object, or non-partial refs that had missing + * objects are removed + * + Prune (depth=0) all object not references by a ref, which gets rid of + * any possibly invalid non-scanned objects * * Remove leftover .removed contents * + Enumerate all deployed refs: - * + if they are not in the repo (or is partial for a non-subdir deploy), re-install them (pull + deploy) + * If they are not in the repo (or is partial for a non-subdir deploy), + * re-install them (pull + deploy) */ if (!flatpak_dir_delete_mirror_refs (dir, opt_dry_run, cancellable, error)) @@ -401,7 +404,8 @@ flatpak_builtin_repair (int argc, char **argv, GCancellable *cancellable, GError if (!opt_dry_run) { g_print (_("Removing non-deployed ref %s…\n"), refspec); - (void) ostree_repo_set_ref_immediate (repo, remote, ref_name, NULL, cancellable, NULL); + (void) ostree_repo_set_ref_immediate (repo, remote, ref_name, NULL, + cancellable, NULL); } else g_print (_("Skipping non-deployed ref %s…\n"), refspec); @@ -409,12 +413,16 @@ flatpak_builtin_repair (int argc, char **argv, GCancellable *cancellable, GError continue; } - /* When printing progress, we have to print a newline character at the end, otherwise errors printing in - sections of the code that we don't control won't have a leading newline. Therefore, the status line will - always print a trailing newline, and here we just go up a line back onto the previous progress line. + /* When printing progress, we have to print a newline character at the end, + * otherwise errors printing in sections of the code that we don't control + * won't have a leading newline. Therefore, the status line will always + * print a trailing newline, and here we just go up a line back onto the + * previous progress line. - This does also mean that other areas of this code section that print errors will need to print a trailing - newline as well, otherwise the output will overwrite any errors. */ + * This does also mean that other areas of this code section that print + * errors will need to print a trailing newline as well, otherwise the + * output will overwrite any errors. + */ if (flatpak_fancy_output () && i != 1) g_print ("\033[A\r\033[K"); @@ -442,10 +450,12 @@ flatpak_builtin_repair (int argc, char **argv, GCancellable *cancellable, GError } if (!opt_dry_run) - (void) ostree_repo_set_ref_immediate (repo, remote, ref_name, NULL, cancellable, NULL); + (void) ostree_repo_set_ref_immediate (repo, remote, ref_name, NULL, + cancellable, NULL); - /* If using fancy output, print another trailing newline, so the next progress line won't overwrite - these errors. */ + /* If using fancy output, print another trailing newline, so the next + * progress line won't overwrite these errors. + */ if (flatpak_fancy_output () && i < g_hash_table_size (all_refs)) g_print ("\n"); } diff --git a/app/flatpak-builtins-repo.c b/app/flatpak-builtins-repo.c index 2973585..274198e 100644 --- a/app/flatpak-builtins-repo.c +++ b/app/flatpak-builtins-repo.c @@ -30,6 +30,7 @@ #include "libglnx.h" #include "flatpak-builtins.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-utils-private.h" #include "flatpak-table-printer.h" #include "flatpak-variant-impl-private.h" @@ -253,9 +254,9 @@ print_branches_for_subsummary (FlatpakTablePrinter *printer, flatpak_table_printer_add_column (printer, ""); /* Options */ - if (g_variant_lookup (ref_meta, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE, "&s", &eol)) + if (g_variant_lookup (ref_meta, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE, "&s", &eol)) flatpak_table_printer_append_with_comma_printf (printer, "eol=%s", eol); - if (g_variant_lookup (ref_meta, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE_REBASE, "&s", &eol)) + if (g_variant_lookup (ref_meta, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE_REBASE, "&s", &eol)) flatpak_table_printer_append_with_comma_printf (printer, "eol-rebase=%s", eol); @@ -308,9 +309,9 @@ print_branches_for_subsummary (FlatpakTablePrinter *printer, if (g_variant_lookup (sparse_cache, ref, "@a{sv}", &sparse)) { const char *eol; - if (g_variant_lookup (sparse, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE, "&s", &eol)) + if (g_variant_lookup (sparse, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE, "&s", &eol)) flatpak_table_printer_append_with_comma_printf (printer, "eol=%s", eol); - if (g_variant_lookup (sparse, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE_REBASE, "&s", &eol)) + if (g_variant_lookup (sparse, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE_REBASE, "&s", &eol)) flatpak_table_printer_append_with_comma_printf (printer, "eol-rebase=%s", eol); } } diff --git a/app/flatpak-builtins-run.c b/app/flatpak-builtins-run.c index 4948e0b..d0a1fb0 100644 --- a/app/flatpak-builtins-run.c +++ b/app/flatpak-builtins-run.c @@ -95,6 +95,7 @@ static GOptionEntry options[] = { gboolean flatpak_builtin_run (int argc, char **argv, GCancellable *cancellable, GError **error) { + g_auto(GStrv) run_environ = NULL; g_autoptr(GOptionContext) context = NULL; g_autoptr(FlatpakDeploy) app_deploy = NULL; g_autoptr(FlatpakDecomposed) app_ref = NULL; @@ -111,6 +112,8 @@ flatpak_builtin_run (int argc, char **argv, GCancellable *cancellable, GError ** g_autoptr(GPtrArray) dirs = NULL; FlatpakRunFlags flags = 0; + run_environ = g_get_environ (); + context = g_option_context_new (_("APP [ARGUMENT…] - Run an app")); g_option_context_set_translation_domain (context, GETTEXT_PACKAGE); @@ -321,6 +324,7 @@ flatpak_builtin_run (int argc, char **argv, GCancellable *cancellable, GError ** &argv[rest_argv_start + 1], rest_argc - 1, opt_instance_id_fd, + (const char * const *) run_environ, NULL, cancellable, error)) diff --git a/app/flatpak-builtins-search.c b/app/flatpak-builtins-search.c index 52f6f07..f5214b4 100644 --- a/app/flatpak-builtins-search.c +++ b/app/flatpak-builtins-search.c @@ -218,7 +218,6 @@ static void print_matches (Column *columns, GSList *matches) { g_autoptr(FlatpakTablePrinter) printer = NULL; - int rows, cols; GSList *s; printer = flatpak_table_printer_new (); @@ -231,9 +230,7 @@ print_matches (Column *columns, GSList *matches) print_app (columns, res, printer); } - flatpak_get_window_size (&rows, &cols); - flatpak_table_printer_print_full (printer, 0, cols, NULL, NULL); - g_print ("\n"); + flatpak_table_printer_print (printer); } gboolean @@ -294,8 +291,8 @@ flatpak_builtin_search (int argc, char **argv, GCancellable *cancellable, GError if (bundle == NULL || as_bundle_get_id (bundle) == NULL || (decomposed = flatpak_decomposed_new_from_ref (as_bundle_get_id (bundle), NULL)) == NULL) { - g_debug ("Ignoring app %s from remote %s as it lacks a flatpak bundle", - as_component_get_id (app), remote_name); + g_info ("Ignoring app %s from remote %s as it lacks a flatpak bundle", + as_component_get_id (app), remote_name); continue; } @@ -306,7 +303,8 @@ flatpak_builtin_search (int argc, char **argv, GCancellable *cancellable, GError if (score == 0) { g_autofree char *app_id = component_get_flatpak_id (app); - if (strcasestr (app_id, search_text) != NULL) + const char *app_name = as_component_get_name (app); + if (strcasestr (app_id, search_text) != NULL || strcasestr (app_name, search_text) != NULL) score = 50; else continue; diff --git a/app/flatpak-builtins-uninstall.c b/app/flatpak-builtins-uninstall.c index d9883a5..d8e5bb6 100644 --- a/app/flatpak-builtins-uninstall.c +++ b/app/flatpak-builtins-uninstall.c @@ -180,8 +180,8 @@ confirm_runtime_removal (gboolean yes_opt, &udir->extension_app_map, ref, NULL, &local_error); if (apps == NULL) - g_debug ("Unable to list apps using extension %s: %s\n", - flatpak_decomposed_get_ref (ref), local_error->message); + g_info ("Unable to list apps using extension %s: %s\n", + flatpak_decomposed_get_ref (ref), local_error->message); } else { @@ -189,8 +189,8 @@ confirm_runtime_removal (gboolean yes_opt, &udir->runtime_app_map, ref, NULL, &local_error); if (apps == NULL) - g_debug ("Unable to list apps using runtime %s: %s\n", - flatpak_decomposed_get_ref (ref), local_error->message); + g_info ("Unable to list apps using runtime %s: %s\n", + flatpak_decomposed_get_ref (ref), local_error->message); } if (apps == NULL || apps->len == 0) @@ -345,7 +345,7 @@ flatpak_builtin_uninstall (int argc, char **argv, GCancellable *cancellable, GEr udir = uninstall_dir_ensure (uninstall_dirs, dir); - unused = flatpak_dir_list_unused_refs (dir, opt_arch, NULL, NULL, NULL, FALSE, cancellable, error); + unused = flatpak_dir_list_unused_refs (dir, opt_arch, NULL, NULL, NULL, FLATPAK_DIR_FILTER_NONE, cancellable, error); if (unused == NULL) return FALSE; diff --git a/app/flatpak-builtins-utils.c b/app/flatpak-builtins-utils.c index 97d4e69..e539a8c 100644 --- a/app/flatpak-builtins-utils.c +++ b/app/flatpak-builtins-utils.c @@ -28,6 +28,7 @@ #include "flatpak-ref.h" #include "flatpak-builtins-utils.h" +#include "flatpak-tty-utils-private.h" #include "flatpak-utils-private.h" #include "flatpak-run-private.h" @@ -558,7 +559,6 @@ flatpak_resolve_matching_remotes (GPtrArray *remote_dir_pairs, GError **error) { guint chosen = 0; /* 1 indexed */ - guint i; g_assert (remote_dir_pairs->len > 0); @@ -567,34 +567,21 @@ flatpak_resolve_matching_remotes (GPtrArray *remote_dir_pairs, * step after the dependencies are resolved. */ if (remote_dir_pairs->len == 1) - chosen = 1; - - if (chosen == 0) { - if (remote_dir_pairs->len == 1) - { - RemoteDirPair *pair = g_ptr_array_index (remote_dir_pairs, 0); - const char *dir_name = flatpak_dir_get_name_cached (pair->dir); - if (flatpak_yes_no_prompt (TRUE, /* default to yes on Enter */ - _("Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\nUse this remote?"), - opt_search_ref, pair->remote_name, dir_name)) - chosen = 1; - else - return flatpak_fail (error, _("No remote chosen to resolve matches for ‘%s’"), opt_search_ref); - } - else + chosen = 1; + } + else + { + g_auto(GStrv) names = g_new0 (char *, remote_dir_pairs->len + 1); + for (guint i = 0; i < remote_dir_pairs->len; i++) { - g_auto(GStrv) names = g_new0 (char *, remote_dir_pairs->len + 1); - for (i = 0; i < remote_dir_pairs->len; i++) - { - RemoteDirPair *pair = g_ptr_array_index (remote_dir_pairs, i); - names[i] = g_strdup_printf ("‘%s’ (%s)", pair->remote_name, flatpak_dir_get_name_cached (pair->dir)); - } - flatpak_format_choices ((const char **) names, _("Remotes found with refs similar to ‘%s’:"), opt_search_ref); - chosen = flatpak_number_prompt (TRUE, 0, remote_dir_pairs->len, _("Which do you want to use (0 to abort)?")); - if (chosen == 0) - return flatpak_fail (error, _("No remote chosen to resolve matches for ‘%s’"), opt_search_ref); + RemoteDirPair *pair = g_ptr_array_index (remote_dir_pairs, i); + names[i] = g_strdup_printf ("‘%s’ (%s)", pair->remote_name, flatpak_dir_get_name_cached (pair->dir)); } + flatpak_format_choices ((const char **) names, _("Remotes found with refs similar to ‘%s’:"), opt_search_ref); + chosen = flatpak_number_prompt (TRUE, 0, remote_dir_pairs->len, _("Which do you want to use (0 to abort)?")); + if (chosen == 0) + return flatpak_fail (error, _("No remote chosen to resolve matches for ‘%s’"), opt_search_ref); } if (out_pair) @@ -677,11 +664,11 @@ update_appstream (GPtrArray *dirs, ts_file_age = get_appstream_timestamp (dir, remotes[i], arch); if (ts_file_age < ttl) { - g_debug ("%s:%s appstream age %" G_GUINT64_FORMAT " is less than ttl %" G_GUINT64_FORMAT, remotes[i], arch, ts_file_age, ttl); + g_info ("%s:%s appstream age %" G_GUINT64_FORMAT " is less than ttl %" G_GUINT64_FORMAT, remotes[i], arch, ts_file_age, ttl); continue; } else - g_debug ("%s:%s appstream age %" G_GUINT64_FORMAT " is greater than ttl %" G_GUINT64_FORMAT, remotes[i], arch, ts_file_age, ttl); + g_info ("%s:%s appstream age %" G_GUINT64_FORMAT " is greater than ttl %" G_GUINT64_FORMAT, remotes[i], arch, ts_file_age, ttl); if (flatpak_dir_get_remote_disabled (dir, remotes[i]) || flatpak_dir_get_remote_noenumerate (dir, remotes[i])) @@ -690,7 +677,7 @@ update_appstream (GPtrArray *dirs, if (flatpak_dir_is_user (dir)) { if (quiet) - g_debug (_("Updating appstream data for user remote %s"), remotes[i]); + g_info (_("Updating appstream data for user remote %s"), remotes[i]); else { g_print (_("Updating appstream data for user remote %s"), remotes[i]); @@ -700,7 +687,7 @@ update_appstream (GPtrArray *dirs, else { if (quiet) - g_debug (_("Updating appstream data for remote %s"), remotes[i]); + g_info (_("Updating appstream data for remote %s"), remotes[i]); else { g_print (_("Updating appstream data for remote %s"), remotes[i]); @@ -711,7 +698,7 @@ update_appstream (GPtrArray *dirs, NULL, cancellable, &local_error)) { if (quiet) - g_debug ("%s: %s", _("Error updating"), local_error->message); + g_info ("%s: %s", _("Error updating"), local_error->message); else g_printerr ("%s: %s\n", _("Error updating"), local_error->message); } @@ -735,11 +722,11 @@ update_appstream (GPtrArray *dirs, ts_file_age = get_appstream_timestamp (dir, remote, arch); if (ts_file_age < ttl) { - g_debug ("%s:%s appstream age %" G_GUINT64_FORMAT " is less than ttl %" G_GUINT64_FORMAT, remote, arch, ts_file_age, ttl); + g_info ("%s:%s appstream age %" G_GUINT64_FORMAT " is less than ttl %" G_GUINT64_FORMAT, remote, arch, ts_file_age, ttl); continue; } else - g_debug ("%s:%s appstream age %" G_GUINT64_FORMAT " is greater than ttl %" G_GUINT64_FORMAT, remote, arch, ts_file_age, ttl); + g_info ("%s:%s appstream age %" G_GUINT64_FORMAT " is greater than ttl %" G_GUINT64_FORMAT, remote, arch, ts_file_age, ttl); if (!flatpak_dir_update_appstream (dir, remote, arch, &changed, NULL, cancellable, error)) diff --git a/app/flatpak-builtins.h b/app/flatpak-builtins.h index d925c8c..32a9c95 100644 --- a/app/flatpak-builtins.h +++ b/app/flatpak-builtins.h @@ -25,8 +25,11 @@ #include #include "flatpak-complete.h" +#include "flatpak-tty-utils-private.h" #include "flatpak-utils-private.h" #include "flatpak-dir-private.h" +#include "flatpak-dir-utils-private.h" +#include "flatpak-xml-utils-private.h" G_BEGIN_DECLS diff --git a/app/flatpak-cli-transaction.c b/app/flatpak-cli-transaction.c index e91e9cb..e7c8c90 100644 --- a/app/flatpak-cli-transaction.c +++ b/app/flatpak-cli-transaction.c @@ -1,5 +1,6 @@ /* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: * Copyright © 2018 Red Hat, Inc + * Copyright © 2024 GNOME Foundation, Inc. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -16,6 +17,7 @@ * * Authors: * Alexander Larsson + * Hubert Figuière */ #include "config.h" @@ -25,6 +27,7 @@ #include "flatpak-installation-private.h" #include "flatpak-run-private.h" #include "flatpak-table-printer.h" +#include "flatpak-tty-utils-private.h" #include "flatpak-utils-private.h" #include "flatpak-error.h" #include @@ -158,8 +161,8 @@ install_authenticator (FlatpakTransaction *old_transaction, FlatpakCliTransaction *old_cli = FLATPAK_CLI_TRANSACTION (old_transaction); g_autoptr(FlatpakTransaction) transaction2 = NULL; g_autoptr(GError) local_error = NULL; - FlatpakInstallation *installation = flatpak_transaction_get_installation (old_transaction); - FlatpakDir *dir = flatpak_installation_get_dir (installation, NULL); + g_autoptr(FlatpakInstallation) installation = flatpak_transaction_get_installation (old_transaction); + g_autoptr(FlatpakDir) dir = flatpak_installation_get_dir (installation, NULL); if (dir == NULL) { @@ -375,6 +378,7 @@ progress_changed_cb (FlatpakTransactionProgress *progress, } if (!redraw (cli)) g_print ("\r%s", str->str); /* redraw failed, just update the progress */ + flatpak_pty_set_progress (percent); } else g_print ("%s\n", str->str); @@ -844,8 +848,8 @@ find_reverse_dep_apps (FlatpakTransaction *transaction, ref, NULL, &local_error); if (apps == NULL) { - g_debug ("Unable to list apps using extension %s: %s\n", - flatpak_decomposed_get_ref (ref), local_error->message); + g_info ("Unable to list apps using extension %s: %s\n", + flatpak_decomposed_get_ref (ref), local_error->message); return NULL; } } @@ -856,8 +860,8 @@ find_reverse_dep_apps (FlatpakTransaction *transaction, NULL, &local_error); if (apps == NULL) { - g_debug ("Unable to find apps using runtime %s: %s\n", - flatpak_decomposed_get_ref (ref), local_error->message); + g_info ("Unable to find apps using runtime %s: %s\n", + flatpak_decomposed_get_ref (ref), local_error->message); return NULL; } } @@ -887,8 +891,8 @@ end_of_lifed_with_rebase (FlatpakTransaction *transaction, EolAction action = EOL_UNDECIDED; EolAction old_action = EOL_UNDECIDED; gboolean can_rebase = rebased_to_ref != NULL && remote != NULL; - FlatpakInstallation *installation = flatpak_transaction_get_installation (transaction); - FlatpakDir *dir = flatpak_installation_get_dir (installation, NULL); + g_autoptr(FlatpakInstallation) installation = flatpak_transaction_get_installation (transaction); + g_autoptr(FlatpakDir) dir = flatpak_installation_get_dir (installation, NULL); if (ref == NULL) return FALSE; /* Shouldn't happen, the ref should be valid */ @@ -978,7 +982,7 @@ end_of_lifed_with_rebase (FlatpakTransaction *transaction, } else { - g_debug ("%s is end-of-life, using action from parent ref", name); + g_info ("%s is end-of-life, using action from parent ref", name); } /* Cache for later comparison and reuse */ @@ -988,7 +992,7 @@ end_of_lifed_with_rebase (FlatpakTransaction *transaction, { g_autoptr(GError) error = NULL; - if (!flatpak_transaction_add_rebase (transaction, remote, rebased_to_ref, NULL, previous_ids, &error)) + if (!flatpak_transaction_add_rebase_and_uninstall (transaction, remote, rebased_to_ref, ref_str, NULL, previous_ids, &error)) { g_propagate_prefixed_error (&self->first_operation_error, g_error_copy (error), @@ -997,21 +1001,6 @@ end_of_lifed_with_rebase (FlatpakTransaction *transaction, return FALSE; } - if (!flatpak_transaction_add_uninstall (transaction, ref_str, &error)) - { - /* NOT_INSTALLED error is expected in case the op that triggered this was install not update */ - if (g_error_matches (error, FLATPAK_ERROR, FLATPAK_ERROR_NOT_INSTALLED)) - g_clear_error (&error); - else - { - g_propagate_prefixed_error (&self->first_operation_error, - g_error_copy (error), - _("Failed to uninstall %s for rebase to %s: "), - name, rebased_to_ref); - return FALSE; - } - } - return TRUE; /* skip install/update op of end-of-life ref */ } else /* IGNORE or NO_REBASE */ @@ -1096,6 +1085,56 @@ append_bus (GPtrArray *talk, } } +static void +append_usb (GPtrArray *usb_array, + GKeyFile *metadata, + GKeyFile *old_metadata) +{ + gsize size = 0; + g_auto(GStrv) hidden_devices = NULL; + g_auto(GStrv) old_hidden_devices = NULL; + g_auto(GStrv) old_enumerables = NULL; + g_auto(GStrv) enumerables = NULL; + + enumerables = g_key_file_get_string_list (metadata, + FLATPAK_METADATA_GROUP_USB_DEVICES, + FLATPAK_METADATA_KEY_USB_ENUMERABLE_DEVICES, + &size, NULL); + + if (old_metadata) + old_enumerables = g_key_file_get_string_list (old_metadata, + FLATPAK_METADATA_GROUP_USB_DEVICES, + FLATPAK_METADATA_KEY_USB_ENUMERABLE_DEVICES, + NULL, NULL); + + for (size_t i = 0; i < size; i++) + { + const char *enumerable = enumerables[i]; + if (old_enumerables == NULL || !g_strv_contains ((const char * const *) old_enumerables, enumerable)) + g_ptr_array_add (usb_array, g_strdup (enumerable)); + } + + size = 0; + + hidden_devices = g_key_file_get_string_list (metadata, + FLATPAK_METADATA_GROUP_USB_DEVICES, + FLATPAK_METADATA_KEY_USB_HIDDEN_DEVICES, + &size, NULL); + + if (old_metadata) + old_hidden_devices = g_key_file_get_string_list (old_metadata, + FLATPAK_METADATA_GROUP_USB_DEVICES, + FLATPAK_METADATA_KEY_USB_HIDDEN_DEVICES, + NULL, NULL); + + for (size_t i = 0; i < size; i++) + { + const char *hidden = hidden_devices[i]; + if (old_hidden_devices == NULL || !g_strv_contains ((const char * const *) old_hidden_devices, hidden)) + g_ptr_array_add (usb_array, g_strdup_printf ("!%s", hidden)); + } +} + static void append_tags (GPtrArray *tags_array, GKeyFile *metadata, @@ -1160,6 +1199,7 @@ print_permissions (FlatpakCliTransaction *self, g_autoptr(FlatpakRef) rref = flatpak_ref_parse (ref, NULL); g_autoptr(GPtrArray) permissions = g_ptr_array_new_with_free_func (g_free); g_autoptr(GPtrArray) files = g_ptr_array_new_with_free_func (g_free); + g_autoptr(GPtrArray) usb = g_ptr_array_new_with_free_func (g_free); g_autoptr(GPtrArray) session_bus_talk = g_ptr_array_new_with_free_func (g_free); g_autoptr(GPtrArray) session_bus_own = g_ptr_array_new_with_free_func (g_free); g_autoptr(GPtrArray) system_bus_talk = g_ptr_array_new_with_free_func (g_free); @@ -1192,6 +1232,7 @@ print_permissions (FlatpakCliTransaction *self, append_permissions (permissions, metadata, old_metadata, FLATPAK_METADATA_KEY_DEVICES); append_permissions (permissions, metadata, old_metadata, FLATPAK_METADATA_KEY_FEATURES); append_permissions (files, metadata, old_metadata, FLATPAK_METADATA_KEY_FILESYSTEMS); + append_usb (usb, metadata, old_metadata); append_bus (session_bus_talk, session_bus_own, metadata, old_metadata, FLATPAK_METADATA_GROUP_SESSION_BUS_POLICY); append_bus (system_bus_talk, system_bus_own, @@ -1209,6 +1250,8 @@ print_permissions (FlatpakCliTransaction *self, g_ptr_array_add (permissions, g_strdup_printf ("system dbus access [%d]", j++)); if (system_bus_own->len > 0) g_ptr_array_add (permissions, g_strdup_printf ("system bus ownership [%d]", j++)); + if (usb->len > 0) + g_ptr_array_add (permissions, g_strdup_printf ("USB portal access [%d]", j++)); if (tags->len > 0) g_ptr_array_add (permissions, g_strdup_printf ("tags [%d]", j++)); @@ -1270,6 +1313,8 @@ print_permissions (FlatpakCliTransaction *self, print_perm_line (j++, system_bus_talk, cols); if (system_bus_own->len > 0) print_perm_line (j++, system_bus_own, cols); + if (usb->len > 0) + print_perm_line (j++, usb, cols); if (tags->len > 0) print_perm_line (j++, tags, cols); } @@ -1301,7 +1346,7 @@ static gboolean transaction_ready_pre_auth (FlatpakTransaction *transaction) { FlatpakCliTransaction *self = FLATPAK_CLI_TRANSACTION (transaction); - GList *ops = flatpak_transaction_get_operations (transaction); + g_autolist(FlatpakTransactionOperation) ops = flatpak_transaction_get_operations (transaction); GList *l; int i; FlatpakTablePrinter *printer; @@ -1481,10 +1526,7 @@ transaction_ready_pre_auth (FlatpakTransaction *transaction) ret = flatpak_yes_no_prompt (TRUE, _("Proceed with these changes to the %s?"), name); if (!ret) - { - g_list_free_full (ops, g_object_unref); - return FALSE; - } + return FALSE; } else g_print ("\n\n"); @@ -1643,6 +1685,7 @@ flatpak_cli_transaction_run (FlatpakTransaction *transaction, if (flatpak_fancy_output ()) { + flatpak_pty_clear_progress (); flatpak_disable_raw_mode (); flatpak_show_cursor (); } diff --git a/app/flatpak-complete.c b/app/flatpak-complete.c index 8d67104..a782ccc 100644 --- a/app/flatpak-complete.c +++ b/app/flatpak-complete.c @@ -73,7 +73,8 @@ flatpak_complete_dir (FlatpakCompletion *completion) void flatpak_complete_word (FlatpakCompletion *completion, - char *format, ...) + const char *format, + ...) { va_list args; const char *rest; @@ -555,8 +556,8 @@ parse_completion_line_to_argv (const char *initial_completion_line, /* Make a shallow copy of argv, which will be our "working set" */ completion->argc = completion->original_argc; - completion->argv = g_memdup (completion->original_argv, - sizeof (gchar *) * (completion->original_argc + 1)); + completion->argv = g_memdup2 (completion->original_argv, + sizeof (gchar *) * (completion->original_argc + 1)); return parse_result; } diff --git a/app/flatpak-complete.h b/app/flatpak-complete.h index dad9e33..6c6ee2e 100644 --- a/app/flatpak-complete.h +++ b/app/flatpak-complete.h @@ -47,7 +47,7 @@ FlatpakCompletion *flatpak_completion_new (const char *arg_line, const char *arg_point, const char *arg_cur); void flatpak_complete_word (FlatpakCompletion *completion, - char *format, + const char *format, ...) G_GNUC_PRINTF (2, 3); void flatpak_complete_ref (FlatpakCompletion *completion, OstreeRepo *repo); diff --git a/app/flatpak-main.c b/app/flatpak-main.c index 0451871..4549889 100644 --- a/app/flatpak-main.c +++ b/app/flatpak-main.c @@ -358,15 +358,17 @@ flatpak_option_context_parse (GOptionContext *context, else { if (opt_verbose > 0) - g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG | G_LOG_LEVEL_INFO, message_handler, NULL); + g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, message_handler, NULL); if (opt_verbose > 1) - g_log_set_handler (G_LOG_DOMAIN "2", G_LOG_LEVEL_DEBUG | G_LOG_LEVEL_INFO, message_handler, NULL); + g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, message_handler, NULL); if (opt_ostree_verbose) g_log_set_handler ("OSTree", G_LOG_LEVEL_DEBUG | G_LOG_LEVEL_INFO, message_handler, NULL); if (opt_verbose > 0 || opt_ostree_verbose) flatpak_disable_fancy_output (); + + flatpak_set_debugging (opt_verbose > 1); } /* sudo flatpak --user ... would operate on the root user's installation, @@ -611,7 +613,7 @@ install_polkit_agent (void) if (bus == NULL) { - g_debug ("Unable to connect to system bus: %s", local_error->message); + g_info ("Unable to connect to system bus: %s", local_error->message); return NULL; } @@ -619,7 +621,7 @@ install_polkit_agent (void) listener = flatpak_polkit_agent_text_listener_new (NULL, &local_error); if (listener == NULL) { - g_debug ("Failed to create polkit agent listener: %s", local_error->message); + g_info ("Failed to create polkit agent listener: %s", local_error->message); } else { @@ -643,7 +645,7 @@ install_polkit_agent (void) &local_error); if (agent == NULL) { - g_debug ("Failed to register polkit agent listener: %s", local_error->message); + g_info ("Failed to register polkit agent listener: %s", local_error->message); } g_object_unref (listener); } @@ -679,7 +681,7 @@ flatpak_run (int argc, if (!command->fn) { - GOptionContext *context; + g_autoptr(GOptionContext) context = NULL; g_autofree char *hint = NULL; g_autofree char *msg = NULL; @@ -711,13 +713,13 @@ flatpak_run (int argc, if (opt_version) { g_print ("%s\n", PACKAGE_STRING); - exit (EXIT_SUCCESS); + return EXIT_SUCCESS; } if (opt_default_arch) { g_print ("%s\n", flatpak_get_arch ()); - exit (EXIT_SUCCESS); + return EXIT_SUCCESS; } if (opt_supported_arches) @@ -726,7 +728,7 @@ flatpak_run (int argc, int i; for (i = 0; arches[i] != NULL; i++) g_print ("%s\n", arches[i]); - exit (EXIT_SUCCESS); + return EXIT_SUCCESS; } if (opt_gl_drivers) @@ -735,7 +737,7 @@ flatpak_run (int argc, int i; for (i = 0; drivers[i] != NULL; i++) g_print ("%s\n", drivers[i]); - exit (EXIT_SUCCESS); + return EXIT_SUCCESS; } if (opt_list_installations) @@ -751,7 +753,7 @@ flatpak_run (int argc, GFile *file = paths->pdata[i]; g_print ("%s\n", flatpak_file_get_path_cached (file)); } - exit (EXIT_SUCCESS); + return EXIT_SUCCESS; } } @@ -777,7 +779,7 @@ flatpak_run (int argc, if (local_error != NULL) { g_printerr ("%s\n", local_error->message); - exit (1); + return 1; } for (gsize i = 0; i < system_installation_locations->len; i++) @@ -805,7 +807,7 @@ flatpak_run (int argc, new_dirs_joined = g_strjoinv (":", (gchar **) new_dirs->pdata); g_print ("XDG_DATA_DIRS=%s\n", new_dirs_joined); - exit (EXIT_SUCCESS); + return EXIT_SUCCESS; } } @@ -815,8 +817,6 @@ flatpak_run (int argc, msg = g_strdup (_("No command specified")); } - g_option_context_free (context); - g_set_error (&error, G_IO_ERROR, G_IO_ERROR_FAILED, "%s\n\n%s", msg, hint); goto out; diff --git a/app/flatpak-polkit-agent-text-listener.c b/app/flatpak-polkit-agent-text-listener.c index e0e75ed..ace6eab 100644 --- a/app/flatpak-polkit-agent-text-listener.c +++ b/app/flatpak-polkit-agent-text-listener.c @@ -33,6 +33,7 @@ #include "flatpak-polkit-agent-text-listener.h" +#include "flatpak-tty-utils-private.h" #include "flatpak-utils-private.h" #pragma GCC diagnostic ignored "-Wdeprecated-declarations" diff --git a/app/flatpak-quiet-transaction.c b/app/flatpak-quiet-transaction.c index 0a2c5ca..76f0f95 100644 --- a/app/flatpak-quiet-transaction.c +++ b/app/flatpak-quiet-transaction.c @@ -190,8 +190,8 @@ install_authenticator (FlatpakTransaction *old_transaction, { g_autoptr(FlatpakTransaction) transaction2 = NULL; g_autoptr(GError) local_error = NULL; - FlatpakInstallation *installation = flatpak_transaction_get_installation (old_transaction); - FlatpakDir *dir = flatpak_installation_get_dir (installation, NULL); + g_autoptr(FlatpakInstallation) installation = flatpak_transaction_get_installation (old_transaction); + g_autoptr(FlatpakDir) dir = flatpak_installation_get_dir (installation, NULL); if (dir == NULL) { @@ -246,7 +246,7 @@ end_of_lifed_with_rebase (FlatpakTransaction *transaction, g_print (_("Updating to rebased version\n")); - if (!flatpak_transaction_add_rebase (transaction, remote, rebased_to_ref, NULL, previous_ids, &error)) + if (!flatpak_transaction_add_rebase_and_uninstall (transaction, remote, rebased_to_ref, ref, NULL, previous_ids, &error)) { g_printerr (_("Failed to rebase %s to %s: %s\n"), flatpak_ref_get_name (rref), rebased_to_ref, error->message); @@ -254,20 +254,6 @@ end_of_lifed_with_rebase (FlatpakTransaction *transaction, return FALSE; } - if (!flatpak_transaction_add_uninstall (transaction, ref, &error)) - { - /* NOT_INSTALLED error is expected in case the op that triggered this was install not update */ - if (g_error_matches (error, FLATPAK_ERROR, FLATPAK_ERROR_NOT_INSTALLED)) - g_clear_error (&error); - else - { - g_printerr (_("Failed to uninstall %s for rebase to %s: %s\n"), - flatpak_ref_get_name (rref), rebased_to_ref, error->message); - self->got_error = TRUE; - return FALSE; - } - } - return TRUE; } diff --git a/app/flatpak-table-printer.c b/app/flatpak-table-printer.c index 6ec00e2..e8bc75d 100644 --- a/app/flatpak-table-printer.c +++ b/app/flatpak-table-printer.c @@ -23,6 +23,7 @@ #include #include "flatpak-table-printer.h" +#include "flatpak-tty-utils-private.h" #include "flatpak-utils-private.h" #include @@ -613,7 +614,7 @@ flatpak_table_printer_print_full (FlatpakTablePrinter *printer, for (i = 0; i < printer->columns->len && i < printer->n_columns; i++) { TableColumn *col = g_ptr_array_index (printer->columns, i); - char *title = col && col->title ? col->title : ""; + const char *title = col && col->title ? col->title : ""; gboolean expand = col ? col->expand : FALSE; gboolean ellipsize = col ? col->ellipsize : FALSE; int len = widths[i]; @@ -635,7 +636,7 @@ flatpak_table_printer_print_full (FlatpakTablePrinter *printer, if (shrinks[i] > 0 && ellipsize) { len -= shrinks[i]; - freeme = title = ellipsize_string (title, len); + title = freeme = ellipsize_string (title, len); } if (i > 0) @@ -716,7 +717,10 @@ flatpak_table_printer_print_full (FlatpakTablePrinter *printer, void flatpak_table_printer_print (FlatpakTablePrinter *printer) { - flatpak_table_printer_print_full (printer, 0, 80, NULL, NULL); + int rows, cols; + + flatpak_get_window_size (&rows, &cols); + flatpak_table_printer_print_full (printer, 0, cols, NULL, NULL); g_print ("\n"); } diff --git a/app/flatpak-tty-utils-private.h b/app/flatpak-tty-utils-private.h new file mode 100644 index 0000000..b59d789 --- /dev/null +++ b/app/flatpak-tty-utils-private.h @@ -0,0 +1,89 @@ +/* + * Copyright © 2014 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + */ + +#pragma once + +#include "libglnx.h" +#include "flatpak-utils-private.h" + +#define FLATPAK_ANSI_ALT_SCREEN_ON "\x1b[?1049h" +#define FLATPAK_ANSI_ALT_SCREEN_OFF "\x1b[?1049l" +#define FLATPAK_ANSI_HIDE_CURSOR "\x1b[?25l" +#define FLATPAK_ANSI_SHOW_CURSOR "\x1b[?25h" +#define FLATPAK_ANSI_BOLD_ON "\x1b[1m" +#define FLATPAK_ANSI_BOLD_OFF "\x1b[22m" +#define FLATPAK_ANSI_FAINT_ON "\x1b[2m" +#define FLATPAK_ANSI_FAINT_OFF "\x1b[22m" +#define FLATPAK_ANSI_RED "\x1b[31m" +#define FLATPAK_ANSI_GREEN "\x1b[32m" +#define FLATPAK_ANSI_COLOR_RESET "\x1b[0m" + +#define FLATPAK_ANSI_ROW_N "\x1b[%d;1H" +#define FLATPAK_ANSI_CLEAR "\x1b[0J" + +gboolean flatpak_set_tty_echo (gboolean echo); +void flatpak_get_window_size (int *rows, + int *cols); +gboolean flatpak_get_cursor_pos (int *row, + int *col); +void flatpak_hide_cursor (void); +void flatpak_show_cursor (void); + +void flatpak_enable_raw_mode (void); +void flatpak_disable_raw_mode (void); + +void flatpak_disable_fancy_output (void); +void flatpak_enable_fancy_output (void); +gboolean flatpak_fancy_output (void); + +gboolean flatpak_allow_fuzzy_matching (const char *term); + +char * flatpak_prompt (gboolean allow_empty, + const char *prompt, + ...) G_GNUC_PRINTF (2, 3); + +char * flatpak_password_prompt (const char *prompt, + ...) G_GNUC_PRINTF (1, 2); + +gboolean flatpak_yes_no_prompt (gboolean default_yes, + const char *prompt, + ...) G_GNUC_PRINTF (2, 3); + +long flatpak_number_prompt (gboolean default_yes, + int min, + int max, + const char *prompt, + ...) G_GNUC_PRINTF (4, 5); +int *flatpak_numbers_prompt (gboolean default_yes, + int min, + int max, + const char *prompt, + ...) G_GNUC_PRINTF (4, 5); +int *flatpak_parse_numbers (const char *buf, + int min, + int max); + +void flatpak_format_choices (const char **choices, + const char *prompt, + ...) G_GNUC_PRINTF (2, 3); + +void flatpak_print_escaped_string (const char *s, + FlatpakEscapeFlags flags); + +void flatpak_pty_set_progress (guint percent); + +void flatpak_pty_clear_progress (void); diff --git a/app/flatpak-tty-utils.c b/app/flatpak-tty-utils.c new file mode 100644 index 0000000..4603de2 --- /dev/null +++ b/app/flatpak-tty-utils.c @@ -0,0 +1,558 @@ +/* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: + * Copyright © 1995-1998 Free Software Foundation, Inc. + * Copyright © 2014-2019 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#include "config.h" +#include "flatpak-tty-utils-private.h" + +#include +#include +#include + +#include + +static int fancy_output = -1; + +void +flatpak_disable_fancy_output (void) +{ + fancy_output = FALSE; +} + +void +flatpak_enable_fancy_output (void) +{ + fancy_output = TRUE; +} + +gboolean +flatpak_fancy_output (void) +{ + static gsize fancy_output_once = 0; + enum { + PLAIN_OUTPUT = 1, + FANCY_OUTPUT = 2 + }; + + if (fancy_output != -1) + return fancy_output; + + if (g_once_init_enter (&fancy_output_once)) + { + if (g_strcmp0 (g_getenv ("FLATPAK_FANCY_OUTPUT"), "0") == 0) + g_once_init_leave (&fancy_output_once, PLAIN_OUTPUT); + else if (getenv ("G_MESSAGES_DEBUG")) + g_once_init_leave (&fancy_output_once, PLAIN_OUTPUT); + else if (!isatty (STDOUT_FILENO)) + g_once_init_leave (&fancy_output_once, PLAIN_OUTPUT); + else + g_once_init_leave (&fancy_output_once, FANCY_OUTPUT); + } + + return fancy_output_once == FANCY_OUTPUT; +} + +gboolean +flatpak_allow_fuzzy_matching (const char *term) +{ + if (strchr (term, '/') != NULL || strchr (term, '.') != NULL) + return FALSE; + + /* This env var is used by the unit tests and only skips the tty test not the + * check above. + */ + if (g_strcmp0 (g_getenv ("FLATPAK_FORCE_ALLOW_FUZZY_MATCHING"), "1") == 0) + return TRUE; + + if (!isatty (STDIN_FILENO) || !isatty (STDOUT_FILENO)) + return FALSE; + + return TRUE; +} + +char * +flatpak_prompt (gboolean allow_empty, + const char *prompt, ...) +{ + char buf[512]; + va_list var_args; + g_autofree char *s = NULL; + + + va_start (var_args, prompt); + s = g_strdup_vprintf (prompt, var_args); + va_end (var_args); + + while (TRUE) + { + g_print ("%s: ", s); + + if (!isatty (STDIN_FILENO) || !isatty (STDOUT_FILENO)) + { + g_print ("n\n"); + return NULL; + } + + if (fgets (buf, sizeof (buf), stdin) == NULL) + return NULL; + + g_strstrip (buf); + + if (buf[0] != 0 || allow_empty) + return g_strdup (buf); + } +} + +char * +flatpak_password_prompt (const char *prompt, ...) +{ + char buf[512]; + va_list var_args; + g_autofree char *s = NULL; + gboolean was_echo; + + + va_start (var_args, prompt); + s = g_strdup_vprintf (prompt, var_args); + va_end (var_args); + + while (TRUE) + { + g_print ("%s: ", s); + + if (!isatty (STDIN_FILENO) || !isatty (STDOUT_FILENO)) + return NULL; + + was_echo = flatpak_set_tty_echo (FALSE); + + if (fgets (buf, sizeof (buf), stdin) == NULL) + return NULL; + + flatpak_set_tty_echo (was_echo); + + g_strstrip (buf); + + /* We stole the return, so manual new line */ + g_print ("\n"); + return g_strdup (buf); + } +} + + +gboolean +flatpak_yes_no_prompt (gboolean default_yes, const char *prompt, ...) +{ + char buf[512]; + va_list var_args; + g_autofree char *s = NULL; + + + va_start (var_args, prompt); + s = g_strdup_vprintf (prompt, var_args); + va_end (var_args); + + while (TRUE) + { + g_print ("%s %s: ", s, default_yes ? "[Y/n]" : "[y/n]"); + + if (!isatty (STDIN_FILENO) || !isatty (STDOUT_FILENO)) + { + g_print ("n\n"); + return FALSE; + } + + if (fgets (buf, sizeof (buf), stdin) == NULL) + return FALSE; + + g_strstrip (buf); + + if (default_yes && strlen (buf) == 0) + return TRUE; + + if (g_ascii_strcasecmp (buf, "y") == 0 || + g_ascii_strcasecmp (buf, "yes") == 0) + return TRUE; + + if (g_ascii_strcasecmp (buf, "n") == 0 || + g_ascii_strcasecmp (buf, "no") == 0) + return FALSE; + } +} + +static gboolean +is_number (const char *s) +{ + if (*s == '\0') + return FALSE; + + while (*s != 0) + { + if (!g_ascii_isdigit (*s)) + return FALSE; + s++; + } + + return TRUE; +} + +long +flatpak_number_prompt (gboolean default_yes, int min, int max, const char *prompt, ...) +{ + char buf[512]; + va_list var_args; + g_autofree char *s = NULL; + + va_start (var_args, prompt); + s = g_strdup_vprintf (prompt, var_args); + va_end (var_args); + + while (TRUE) + { + g_print ("%s [%d-%d]: ", s, min, max); + + if (!isatty (STDIN_FILENO) || !isatty (STDOUT_FILENO)) + { + g_print ("0\n"); + return 0; + } + + if (fgets (buf, sizeof (buf), stdin) == NULL) + return 0; + + g_strstrip (buf); + + if (default_yes && strlen (buf) == 0 && + max - min == 1 && min == 0) + return 1; + + if (is_number (buf)) + { + long res = strtol (buf, NULL, 10); + + if (res >= min && res <= max) + return res; + } + } +} + +static gboolean +parse_range (const char *s, int *a, int *b) +{ + char *p; + + p = strchr (s, '-'); + if (!p) + return FALSE; + + p++; + p[-1] = '\0'; + + if (is_number (s) && is_number (p)) + { + *a = (int) strtol (s, NULL, 10); + *b = (int) strtol (p, NULL, 10); + p[-1] = '-'; + return TRUE; + } + + p[-1] = '-'; + return FALSE; +} + +static void +add_number (GArray *numbers, + int num) +{ + int i; + + for (i = 0; i < numbers->len; i++) + { + if (g_array_index (numbers, int, i) == num) + return; + } + + g_array_append_val (numbers, num); +} + +int * +flatpak_parse_numbers (const char *buf, + int min, + int max) +{ + g_autoptr(GArray) numbers = g_array_new (FALSE, FALSE, sizeof (int)); + g_auto(GStrv) parts = g_strsplit_set (buf, " ,", 0); + int i, j; + + for (i = 0; parts[i]; i++) + { + int a, b; + + g_strstrip (parts[i]); + + if (parse_range (parts[i], &a, &b) && + min <= a && a <= max && + min <= b && b <= max) + { + for (j = a; j <= b; j++) + add_number (numbers, j); + } + else if (is_number (parts[i])) + { + int res = (int) strtol (parts[i], NULL, 10); + if (min <= res && res <= max) + add_number (numbers, res); + else + return NULL; + } + else + return NULL; + } + + j = 0; + g_array_append_val (numbers, j); + + return (int *) g_array_free (g_steal_pointer (&numbers), FALSE); +} + +/* Returns a 0-terminated array of ints. Free with g_free */ +int * +flatpak_numbers_prompt (gboolean default_yes, int min, int max, const char *prompt, ...) +{ + char buf[512]; + va_list var_args; + g_autofree char *s = NULL; + g_autofree int *choice = g_new0 (int, 2); + int *numbers; + + va_start (var_args, prompt); + s = g_strdup_vprintf (prompt, var_args); + va_end (var_args); + + while (TRUE) + { + g_print ("%s [%d-%d]: ", s, min, max); + + if (!isatty (STDIN_FILENO) || !isatty (STDOUT_FILENO)) + { + g_print ("0\n"); + choice[0] = 0; + return g_steal_pointer (&choice); + } + + if (fgets (buf, sizeof (buf), stdin) == NULL) + { + choice[0] = 0; + return g_steal_pointer (&choice); + } + + g_strstrip (buf); + + if (default_yes && strlen (buf) == 0 && + max - min == 1 && min == 0) + { + choice[0] = 0; + return g_steal_pointer (&choice); + } + + numbers = flatpak_parse_numbers (buf, min, max); + if (numbers) + return numbers; + } +} + +void +flatpak_format_choices (const char **choices, + const char *prompt, + ...) +{ + va_list var_args; + g_autofree char *s = NULL; + int i; + + va_start (var_args, prompt); + s = g_strdup_vprintf (prompt, var_args); + va_end (var_args); + + g_print ("%s\n\n", s); + for (i = 0; choices[i]; i++) + g_print (" %2d) %s\n", i + 1, choices[i]); + g_print ("\n"); +} + +void +flatpak_get_window_size (int *rows, int *cols) +{ + struct winsize w; + + if (ioctl (STDOUT_FILENO, TIOCGWINSZ, &w) == 0) + { + /* For whatever reason, in buildbot this returns 0, 0 so add a fallback */ + if (w.ws_row == 0) + w.ws_row = 24; + if (w.ws_col == 0) + w.ws_col = 80; + *rows = w.ws_row; + *cols = w.ws_col; + } + else + { + *rows = 24; + *cols = 80; + } +} + +gboolean +flatpak_set_tty_echo (gboolean echo) +{ + struct termios term; + gboolean was; + + tcgetattr (STDIN_FILENO, &term); + was = (term.c_lflag & ECHO) != 0; + + if (echo) + term.c_lflag |= ECHO; + else + term.c_lflag &= ~ECHO; + tcsetattr (STDIN_FILENO, TCSANOW, &term); + + return was; +} + +gboolean +flatpak_get_cursor_pos (int * row, int *col) +{ + fd_set readset; + struct timeval time; + struct termios term, initial_term; + int res = 0; + + tcgetattr (STDIN_FILENO, &initial_term); + term = initial_term; + term.c_lflag &= ~ICANON; + term.c_lflag &= ~ECHO; + tcsetattr (STDIN_FILENO, TCSANOW, &term); + + printf ("\033[6n"); + fflush (stdout); + + FD_ZERO (&readset); + FD_SET (STDIN_FILENO, &readset); + time.tv_sec = 0; + time.tv_usec = 100000; + + if (select (STDIN_FILENO + 1, &readset, NULL, NULL, &time) == 1) + res = scanf ("\033[%d;%dR", row, col); + + tcsetattr (STDIN_FILENO, TCSADRAIN, &initial_term); + + return res == 2; +} + +void +flatpak_hide_cursor (void) +{ + const size_t flatpak_hide_cursor_len = strlen (FLATPAK_ANSI_HIDE_CURSOR); + const ssize_t write_ret = write (STDOUT_FILENO, FLATPAK_ANSI_HIDE_CURSOR, + flatpak_hide_cursor_len); + + if (write_ret < 0) + g_warning ("write() failed: %zd = write(STDOUT_FILENO, FLATPAK_ANSI_HIDE_CURSOR, %zu)", + write_ret, flatpak_hide_cursor_len); +} + +void +flatpak_show_cursor (void) +{ + const size_t flatpak_show_cursor_len = strlen (FLATPAK_ANSI_SHOW_CURSOR); + const ssize_t write_ret = write (STDOUT_FILENO, FLATPAK_ANSI_SHOW_CURSOR, + flatpak_show_cursor_len); + + if (write_ret < 0) + g_warning ("write() failed: %zd = write(STDOUT_FILENO, FLATPAK_ANSI_SHOW_CURSOR, %zu)", + write_ret, flatpak_show_cursor_len); +} + +void +flatpak_enable_raw_mode (void) +{ + struct termios raw; + + tcgetattr (STDIN_FILENO, &raw); + + raw.c_lflag &= ~(ECHO | ICANON); + + tcsetattr (STDIN_FILENO, TCSAFLUSH, &raw); +} + +void +flatpak_disable_raw_mode (void) +{ + struct termios raw; + + tcgetattr (STDIN_FILENO, &raw); + + raw.c_lflag |= (ECHO | ICANON); + + tcsetattr (STDIN_FILENO, TCSAFLUSH, &raw); +} + +void +flatpak_print_escaped_string (const char *s, + FlatpakEscapeFlags flags) +{ + g_autofree char *escaped = flatpak_escape_string (s, flags); + g_print ("%s", escaped); +} + +static gboolean +use_progress_escape_sequence (void) +{ + static gsize tty_progress_once = 0; + enum { + TTY_PROGRESS_ENABLED = 1, + TTY_PROGRESS_DISABLED = 2 + }; + + if (g_once_init_enter (&tty_progress_once)) + { + // FIXME: make this opt-out for Flatpak 1.18 + if (g_strcmp0 (g_getenv ("FLATPAK_TTY_PROGRESS"), "1") == 0) + g_once_init_leave (&tty_progress_once, TTY_PROGRESS_ENABLED); + else + g_once_init_leave (&tty_progress_once, TTY_PROGRESS_DISABLED); + } + + return tty_progress_once == TTY_PROGRESS_ENABLED; +} + +void +flatpak_pty_clear_progress (void) +{ + if (use_progress_escape_sequence ()) + g_print ("\033]9;4;0\007"); +} + +void +flatpak_pty_set_progress (guint percent) +{ + if (use_progress_escape_sequence ()) + g_print ("\033]9;4;1;%d\007", MIN (percent, 100)); +} diff --git a/app/meson.build b/app/meson.build new file mode 100644 index 0000000..258d582 --- /dev/null +++ b/app/meson.build @@ -0,0 +1,144 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +sources = [ + 'flatpak-builtins-utils.c', + 'flatpak-table-printer.c', + 'flatpak-tty-utils.c', +] + +parse_datetime = custom_target( + 'parse-datetime.c', + input : [ + 'parse-datetime.y', + ], + output : [ + 'parse-datetime.c', + ], + build_by_default : true, + command : [ + bison, + '@INPUT@', + '-o', '@OUTPUT@', + ], +) + +flatpak_permission_gdbus = gnome.gdbus_codegen( + 'flatpak-permission-dbus-generated', + sources: [ + '../data/org.freedesktop.impl.portal.PermissionStore.xml', + ], + interface_prefix : 'org.freedesktop.impl.portal', + namespace : 'XdpDbus', +) + +libflatpak_app = static_library( + 'libflatpak-app', + sources : sources + [parse_datetime[0]], + dependencies : base_deps + [ + appstream_dep, + json_glib_dep, + libflatpak_common_base_dep, + libglnx_dep, + libostree_dep, + libsystemd_dep, + polkit_agent_dep, + ], + include_directories : [ + common_include_directories, + include_directories('.'), + ], + install : false, +) +libflatpak_app_dep = declare_dependency( + dependencies : [ + base_deps, + appstream_dep, + json_glib_dep, + libglnx_dep, + libostree_dep, + libsystemd_dep, + polkit_agent_dep, + ], + include_directories : [ + common_include_directories, + include_directories('.'), + ], + link_with : [ + libflatpak_app, + ], +) + +sources = [ + 'flatpak-builtins-build-bundle.c', + 'flatpak-builtins-build-commit-from.c', + 'flatpak-builtins-build-export.c', + 'flatpak-builtins-build-finish.c', + 'flatpak-builtins-build-import-bundle.c', + 'flatpak-builtins-build-init.c', + 'flatpak-builtins-build-sign.c', + 'flatpak-builtins-build-update-repo.c', + 'flatpak-builtins-build.c', + 'flatpak-builtins-config.c', + 'flatpak-builtins-create-usb.c', + 'flatpak-builtins-document-export.c', + 'flatpak-builtins-document-info.c', + 'flatpak-builtins-document-list.c', + 'flatpak-builtins-document-unexport.c', + 'flatpak-builtins-enter.c', + 'flatpak-builtins-history.c', + 'flatpak-builtins-info.c', + 'flatpak-builtins-install.c', + 'flatpak-builtins-kill.c', + 'flatpak-builtins-list.c', + 'flatpak-builtins-make-current.c', + 'flatpak-builtins-mask.c', + 'flatpak-builtins-override.c', + 'flatpak-builtins-permission-list.c', + 'flatpak-builtins-permission-remove.c', + 'flatpak-builtins-permission-reset.c', + 'flatpak-builtins-permission-set.c', + 'flatpak-builtins-permission-show.c', + 'flatpak-builtins-pin.c', + 'flatpak-builtins-ps.c', + 'flatpak-builtins-remote-add.c', + 'flatpak-builtins-remote-delete.c', + 'flatpak-builtins-remote-info.c', + 'flatpak-builtins-remote-list.c', + 'flatpak-builtins-remote-ls.c', + 'flatpak-builtins-remote-modify.c', + 'flatpak-builtins-repair.c', + 'flatpak-builtins-repo.c', + 'flatpak-builtins-run.c', + 'flatpak-builtins-search.c', + 'flatpak-builtins-uninstall.c', + 'flatpak-builtins-update.c', + 'flatpak-cli-transaction.c', + 'flatpak-complete.c', + 'flatpak-main.c', + 'flatpak-quiet-transaction.c', +] + +if build_system_helper + sources += [ + 'flatpak-polkit-agent-text-listener.c', + ] +endif + +flatpak_exe = executable( + 'flatpak', + dependencies : base_deps + [ + appstream_dep, + json_glib_dep, + libflatpak_app_dep, + libflatpak_common_dep, + libflatpak_common_base_dep, + libglnx_dep, + libostree_dep, + libsystemd_dep, + polkit_agent_dep, + ], + install : true, + install_dir : get_option('bindir'), + sources : sources + flatpak_gdbus + flatpak_permission_gdbus, +) diff --git a/autogen.sh b/autogen.sh deleted file mode 100755 index 25c1455..0000000 --- a/autogen.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/sh -# Run this to generate all the initial makefiles, etc. - -test -n "$srcdir" || srcdir=$(dirname "$0") -test -n "$srcdir" || srcdir=. - -olddir=$(pwd) -cd "$srcdir" - -if ! command -v autoreconf >/dev/null; then - echo "*** No autoreconf found, please install it ***" - exit 1 -fi - -# INSTALL are required by automake, but may be deleted by clean -# up rules. to get automake to work, simply touch these here, they will be -# regenerated from their corresponding *.in files by ./configure anyway. -touch INSTALL - -if ! test -f subprojects/libglnx/README.md -a -f subprojects/bubblewrap/README.md -a -f subprojects/dbus-proxy/README.md; then - git submodule update --init -fi -# Workaround automake bug with subdir-objects and computed paths -sed -e 's,$(libglnx_srcpath),subprojects/libglnx,g' < subprojects/libglnx/Makefile-libglnx.am > subprojects/Makefile-libglnx.am.inc -sed -e 's,$(bwrap_srcpath),subprojects/bubblewrap,g' < subprojects/bubblewrap/Makefile-bwrap.am > subprojects/Makefile-bwrap.am.inc - -if ! command -v gtkdocize >/dev/null; then - echo "*** You don't have gtk-doc installed, and thus won't be able to generate the documentation. ***" - rm -f gtk-doc.make - cat > gtk-doc.make < $@.tmp; \ - echo 'Type=session' >> $@.tmp; \ - if [[ $(notdir $<) == *.wrap ]]; then \ - wrapper=$(installed_testdir)/test-wrapper.sh; \ - fi; \ - echo "Exec=env G_TEST_SRCDIR=$(installed_testdir) G_TEST_BUILDDIR=$(installed_testdir) $$wrapper $(installed_testdir)/$(notdir $<) --tap" >> $@.tmp; \ - echo 'Output=TAP' >> $@.tmp; \ - mv $@.tmp $@) - -CLEANFILES += $(installed_test_meta_DATA) -endif diff --git a/buildutil/tap-driver.sh b/buildutil/tap-driver.sh deleted file mode 100755 index a88411f..0000000 --- a/buildutil/tap-driver.sh +++ /dev/null @@ -1,652 +0,0 @@ -#! /bin/sh -# Copyright (C) 2011-2013 Free Software Foundation, Inc. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to or send patches to -# . - -scriptversion=2011-12-27.17; # UTC - -# Make unconditional expansion of undefined variables an error. This -# helps a lot in preventing typo-related bugs. -set -u - -me=tap-driver.sh - -fatal () -{ - echo "$me: fatal: $*" >&2 - exit 1 -} - -usage_error () -{ - echo "$me: $*" >&2 - print_usage >&2 - exit 2 -} - -print_usage () -{ - cat < - # - trap : 1 3 2 13 15 - if test $merge -gt 0; then - exec 2>&1 - else - exec 2>&3 - fi - "$@" - echo $? - ) | LC_ALL=C ${AM_TAP_AWK-awk} \ - -v me="$me" \ - -v test_script_name="$test_name" \ - -v log_file="$log_file" \ - -v trs_file="$trs_file" \ - -v expect_failure="$expect_failure" \ - -v merge="$merge" \ - -v ignore_exit="$ignore_exit" \ - -v comments="$comments" \ - -v diag_string="$diag_string" \ -' -# FIXME: the usages of "cat >&3" below could be optimized when using -# FIXME: GNU awk, and/on on systems that supports /dev/fd/. - -# Implementation note: in what follows, `result_obj` will be an -# associative array that (partly) simulates a TAP result object -# from the `TAP::Parser` perl module. - -## ----------- ## -## FUNCTIONS ## -## ----------- ## - -function fatal(msg) -{ - print me ": " msg | "cat >&2" - exit 1 -} - -function abort(where) -{ - fatal("internal error " where) -} - -# Convert a boolean to a "yes"/"no" string. -function yn(bool) -{ - return bool ? "yes" : "no"; -} - -function add_test_result(result) -{ - if (!test_results_index) - test_results_index = 0 - test_results_list[test_results_index] = result - test_results_index += 1 - test_results_seen[result] = 1; -} - -# Whether the test script should be re-run by "make recheck". -function must_recheck() -{ - for (k in test_results_seen) - if (k != "XFAIL" && k != "PASS" && k != "SKIP") - return 1 - return 0 -} - -# Whether the content of the log file associated to this test should -# be copied into the "global" test-suite.log. -function copy_in_global_log() -{ - for (k in test_results_seen) - if (k != "PASS") - return 1 - return 0 -} - -# FIXME: this can certainly be improved ... -function get_global_test_result() -{ - if ("ERROR" in test_results_seen) - return "ERROR" - if ("FAIL" in test_results_seen || "XPASS" in test_results_seen) - return "FAIL" - all_skipped = 1 - for (k in test_results_seen) - if (k != "SKIP") - all_skipped = 0 - if (all_skipped) - return "SKIP" - return "PASS"; -} - -function stringify_result_obj(result_obj) -{ - if (result_obj["is_unplanned"] || result_obj["number"] != testno) - return "ERROR" - - if (plan_seen == LATE_PLAN) - return "ERROR" - - if (result_obj["directive"] == "TODO") - return result_obj["is_ok"] ? "XPASS" : "XFAIL" - - if (result_obj["directive"] == "SKIP") - return result_obj["is_ok"] ? "SKIP" : COOKED_FAIL; - - if (length(result_obj["directive"])) - abort("in function stringify_result_obj()") - - return result_obj["is_ok"] ? COOKED_PASS : COOKED_FAIL -} - -function decorate_result(result) -{ - color_name = color_for_result[result] - if (color_name) - return color_map[color_name] "" result "" color_map["std"] - # If we are not using colorized output, or if we do not know how - # to colorize the given result, we should return it unchanged. - return result -} - -function report(result, details) -{ - if (result ~ /^(X?(PASS|FAIL)|SKIP|ERROR)/) - { - msg = ": " test_script_name - add_test_result(result) - } - else if (result == "#") - { - msg = " " test_script_name ":" - } - else - { - abort("in function report()") - } - if (length(details)) - msg = msg " " details - # Output on console might be colorized. - print decorate_result(result) msg - # Log the result in the log file too, to help debugging (this is - # especially true when said result is a TAP error or "Bail out!"). - print result msg | "cat >&3"; -} - -function testsuite_error(error_message) -{ - report("ERROR", "- " error_message) -} - -function handle_tap_result() -{ - details = result_obj["number"]; - if (length(result_obj["description"])) - details = details " " result_obj["description"] - - if (plan_seen == LATE_PLAN) - { - details = details " # AFTER LATE PLAN"; - } - else if (result_obj["is_unplanned"]) - { - details = details " # UNPLANNED"; - } - else if (result_obj["number"] != testno) - { - details = sprintf("%s # OUT-OF-ORDER (expecting %d)", - details, testno); - } - else if (result_obj["directive"]) - { - details = details " # " result_obj["directive"]; - if (length(result_obj["explanation"])) - details = details " " result_obj["explanation"] - } - - report(stringify_result_obj(result_obj), details) -} - -# `skip_reason` should be empty whenever planned > 0. -function handle_tap_plan(planned, skip_reason) -{ - planned += 0 # Avoid getting confused if, say, `planned` is "00" - if (length(skip_reason) && planned > 0) - abort("in function handle_tap_plan()") - if (plan_seen) - { - # Error, only one plan per stream is acceptable. - testsuite_error("multiple test plans") - return; - } - planned_tests = planned - # The TAP plan can come before or after *all* the TAP results; we speak - # respectively of an "early" or a "late" plan. If we see the plan line - # after at least one TAP result has been seen, assume we have a late - # plan; in this case, any further test result seen after the plan will - # be flagged as an error. - plan_seen = (testno >= 1 ? LATE_PLAN : EARLY_PLAN) - # If testno > 0, we have an error ("too many tests run") that will be - # automatically dealt with later, so do not worry about it here. If - # $plan_seen is true, we have an error due to a repeated plan, and that - # has already been dealt with above. Otherwise, we have a valid "plan - # with SKIP" specification, and should report it as a particular kind - # of SKIP result. - if (planned == 0 && testno == 0) - { - if (length(skip_reason)) - skip_reason = "- " skip_reason; - report("SKIP", skip_reason); - } -} - -function extract_tap_comment(line) -{ - if (index(line, diag_string) == 1) - { - # Strip leading `diag_string` from `line`. - line = substr(line, length(diag_string) + 1) - # And strip any leading and trailing whitespace left. - sub("^[ \t]*", "", line) - sub("[ \t]*$", "", line) - # Return what is left (if any). - return line; - } - return ""; -} - -# When this function is called, we know that line is a TAP result line, -# so that it matches the (perl) RE "^(not )?ok\b". -function setup_result_obj(line) -{ - # Get the result, and remove it from the line. - result_obj["is_ok"] = (substr(line, 1, 2) == "ok" ? 1 : 0) - sub("^(not )?ok[ \t]*", "", line) - - # If the result has an explicit number, get it and strip it; otherwise, - # automatically assign the next progressive number to it. - if (line ~ /^[0-9]+$/ || line ~ /^[0-9]+[^a-zA-Z0-9_]/) - { - match(line, "^[0-9]+") - # The final `+ 0` is to normalize numbers with leading zeros. - result_obj["number"] = substr(line, 1, RLENGTH) + 0 - line = substr(line, RLENGTH + 1) - } - else - { - result_obj["number"] = testno - } - - if (plan_seen == LATE_PLAN) - # No further test results are acceptable after a "late" TAP plan - # has been seen. - result_obj["is_unplanned"] = 1 - else if (plan_seen && testno > planned_tests) - result_obj["is_unplanned"] = 1 - else - result_obj["is_unplanned"] = 0 - - # Strip trailing and leading whitespace. - sub("^[ \t]*", "", line) - sub("[ \t]*$", "", line) - - # This will have to be corrected if we have a "TODO"/"SKIP" directive. - result_obj["description"] = line - result_obj["directive"] = "" - result_obj["explanation"] = "" - - if (index(line, "#") == 0) - return # No possible directive, nothing more to do. - - # Directives are case-insensitive. - rx = "[ \t]*#[ \t]*([tT][oO][dD][oO]|[sS][kK][iI][pP])[ \t]*" - - # See whether we have the directive, and if yes, where. - pos = match(line, rx "$") - if (!pos) - pos = match(line, rx "[^a-zA-Z0-9_]") - - # If there was no TAP directive, we have nothing more to do. - if (!pos) - return - - # Let`s now see if the TAP directive has been escaped. For example: - # escaped: ok \# SKIP - # not escaped: ok \\# SKIP - # escaped: ok \\\\\# SKIP - # not escaped: ok \ # SKIP - if (substr(line, pos, 1) == "#") - { - bslash_count = 0 - for (i = pos; i > 1 && substr(line, i - 1, 1) == "\\"; i--) - bslash_count += 1 - if (bslash_count % 2) - return # Directive was escaped. - } - - # Strip the directive and its explanation (if any) from the test - # description. - result_obj["description"] = substr(line, 1, pos - 1) - # Now remove the test description from the line, that has been dealt - # with already. - line = substr(line, pos) - # Strip the directive, and save its value (normalized to upper case). - sub("^[ \t]*#[ \t]*", "", line) - result_obj["directive"] = toupper(substr(line, 1, 4)) - line = substr(line, 5) - # Now get the explanation for the directive (if any), with leading - # and trailing whitespace removed. - sub("^[ \t]*", "", line) - sub("[ \t]*$", "", line) - result_obj["explanation"] = line -} - -function get_test_exit_message(status) -{ - if (status == 0) - return "" - if (status !~ /^[1-9][0-9]*$/) - abort("getting exit status") - if (status < 127) - exit_details = "" - else if (status == 127) - exit_details = " (command not found?)" - else if (status >= 128 && status <= 255) - exit_details = sprintf(" (terminated by signal %d?)", status - 128) - else if (status > 256 && status <= 384) - # We used to report an "abnormal termination" here, but some Korn - # shells, when a child process die due to signal number n, can leave - # in $? an exit status of 256+n instead of the more standard 128+n. - # Apparently, both behaviours are allowed by POSIX (2008), so be - # prepared to handle them both. See also Austing Group report ID - # 0000051 - exit_details = sprintf(" (terminated by signal %d?)", status - 256) - else - # Never seen in practice. - exit_details = " (abnormal termination)" - return sprintf("exited with status %d%s", status, exit_details) -} - -function write_test_results() -{ - print ":global-test-result: " get_global_test_result() > trs_file - print ":recheck: " yn(must_recheck()) > trs_file - print ":copy-in-global-log: " yn(copy_in_global_log()) > trs_file - for (i = 0; i < test_results_index; i += 1) - print ":test-result: " test_results_list[i] > trs_file - close(trs_file); -} - -BEGIN { - -## ------- ## -## SETUP ## -## ------- ## - -'"$init_colors"' - -# Properly initialized once the TAP plan is seen. -planned_tests = 0 - -COOKED_PASS = expect_failure ? "XPASS": "PASS"; -COOKED_FAIL = expect_failure ? "XFAIL": "FAIL"; - -# Enumeration-like constants to remember which kind of plan (if any) -# has been seen. It is important that NO_PLAN evaluates "false" as -# a boolean. -NO_PLAN = 0 -EARLY_PLAN = 1 -LATE_PLAN = 2 - -testno = 0 # Number of test results seen so far. -bailed_out = 0 # Whether a "Bail out!" directive has been seen. - -# Whether the TAP plan has been seen or not, and if yes, which kind -# it is ("early" is seen before any test result, "late" otherwise). -plan_seen = NO_PLAN - -## --------- ## -## PARSING ## -## --------- ## - -is_first_read = 1 - -while (1) - { - # Involutions required so that we are able to read the exit status - # from the last input line. - st = getline - if (st < 0) # I/O error. - fatal("I/O error while reading from input stream") - else if (st == 0) # End-of-input - { - if (is_first_read) - abort("in input loop: only one input line") - break - } - if (is_first_read) - { - is_first_read = 0 - nextline = $0 - continue - } - else - { - curline = nextline - nextline = $0 - $0 = curline - } - # Copy any input line verbatim into the log file. - print | "cat >&3" - # Parsing of TAP input should stop after a "Bail out!" directive. - if (bailed_out) - continue - - # TAP test result. - if ($0 ~ /^(not )?ok$/ || $0 ~ /^(not )?ok[^a-zA-Z0-9_]/) - { - testno += 1 - setup_result_obj($0) - handle_tap_result() - } - # TAP plan (normal or "SKIP" without explanation). - else if ($0 ~ /^1\.\.[0-9]+[ \t]*$/) - { - # The next two lines will put the number of planned tests in $0. - sub("^1\\.\\.", "") - sub("[^0-9]*$", "") - handle_tap_plan($0, "") - continue - } - # TAP "SKIP" plan, with an explanation. - else if ($0 ~ /^1\.\.0+[ \t]*#/) - { - # The next lines will put the skip explanation in $0, stripping - # any leading and trailing whitespace. This is a little more - # tricky in truth, since we want to also strip a potential leading - # "SKIP" string from the message. - sub("^[^#]*#[ \t]*(SKIP[: \t][ \t]*)?", "") - sub("[ \t]*$", ""); - handle_tap_plan(0, $0) - } - # "Bail out!" magic. - # Older versions of prove and TAP::Harness (e.g., 3.17) did not - # recognize a "Bail out!" directive when preceded by leading - # whitespace, but more modern versions (e.g., 3.23) do. So we - # emulate the latter, "more modern" behaviour. - else if ($0 ~ /^[ \t]*Bail out!/) - { - bailed_out = 1 - # Get the bailout message (if any), with leading and trailing - # whitespace stripped. The message remains stored in `$0`. - sub("^[ \t]*Bail out![ \t]*", ""); - sub("[ \t]*$", ""); - # Format the error message for the - bailout_message = "Bail out!" - if (length($0)) - bailout_message = bailout_message " " $0 - testsuite_error(bailout_message) - } - # Maybe we have too look for diagnostic comments too. - else if (comments != 0) - { - comment = extract_tap_comment($0); - if (length(comment)) - report("#", comment); - } - } - -## -------- ## -## FINISH ## -## -------- ## - -# A "Bail out!" directive should cause us to ignore any following TAP -# error, as well as a non-zero exit status from the TAP producer. -if (!bailed_out) - { - if (!plan_seen) - { - testsuite_error("missing test plan") - } - else if (planned_tests != testno) - { - bad_amount = testno > planned_tests ? "many" : "few" - testsuite_error(sprintf("too %s tests run (expected %d, got %d)", - bad_amount, planned_tests, testno)) - } - if (!ignore_exit) - { - # Fetch exit status from the last line. - exit_message = get_test_exit_message(nextline) - if (exit_message) - testsuite_error(exit_message) - } - } - -write_test_results() - -exit 0 - -} # End of "BEGIN" block. -' - -# TODO: document that we consume the file descriptor 3 :-( -} 3>"$log_file" - -test $? -eq 0 || fatal "I/O or internal error" - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" -# time-stamp-end: "; # UTC" -# End: diff --git a/common/Makefile.am.inc b/common/Makefile.am.inc deleted file mode 100644 index 7d7bf28..0000000 --- a/common/Makefile.am.inc +++ /dev/null @@ -1,318 +0,0 @@ -lib_LTLIBRARIES += libflatpak.la -noinst_LTLIBRARIES += libflatpak-common-base.la libflatpak-common.la -noinst_PROGRAMS += test-libflatpak - -flatpakincludedir = $(includedir)/flatpak - -flatpakinclude_HEADERS = \ - common/flatpak.h \ - common/flatpak-ref.h \ - common/flatpak-error.h \ - common/flatpak-installed-ref.h \ - common/flatpak-remote-ref.h \ - common/flatpak-related-ref.h \ - common/flatpak-bundle-ref.h \ - common/flatpak-installation.h \ - common/flatpak-remote.h \ - common/flatpak-version-macros.h \ - common/flatpak-portal-error.h \ - common/flatpak-transaction.h \ - common/flatpak-instance.h \ - $(NULL) - -nodist_flatpakinclude_HEADERS = \ - common/flatpak-enum-types.h \ - $(NULL) - -dbus_built_sources = common/flatpak-dbus-generated.c common/flatpak-dbus-generated.h common/flatpak-document-dbus-generated.c common/flatpak-document-dbus-generated.h -systemd_dbus_built_sources = common/flatpak-systemd-dbus-generated.c common/flatpak-systemd-dbus-generated.h - -common/flatpak-enum-types.h: $(flatpakinclude_HEADERS) common/flatpak-enum-types.h.template - $(AM_V_GEN) $(GLIB_MKENUMS) --template $(filter %.template,$^) $(filter-out %.template,$^) > \ - common/flatpak-enum-types.h.tmp && mv common/flatpak-enum-types.h.tmp common/flatpak-enum-types.h - -common/flatpak-enum-types.c: $(flatpakinclude_HEADERS) common/flatpak-enum-types.c.template - $(AM_V_GEN) $(GLIB_MKENUMS) --template $(filter %.template,$^) $(filter-out %.template,$^) > \ - common/flatpak-enum-types.c.tmp && mv common/flatpak-enum-types.c.tmp common/flatpak-enum-types.c - -EXTRA_DIST += common/flatpak-enum-types.c.template common/flatpak-enum-types.h.template - -common/flatpak-dbus-generated.c: data/org.freedesktop.Flatpak.xml data/org.freedesktop.Flatpak.Authenticator.xml Makefile - mkdir -p $(builddir)/common - $(AM_V_GEN) $(GDBUS_CODEGEN) \ - --interface-prefix org.freedesktop.Flatpak. \ - --c-namespace Flatpak \ - --generate-c-code $(builddir)/common/flatpak-dbus-generated \ - $(srcdir)/data/org.freedesktop.Flatpak.xml \ - $(srcdir)/data/org.freedesktop.Flatpak.Authenticator.xml \ - $(NULL) - -common/flatpak-document-dbus-generated.c: data/org.freedesktop.portal.Documents.xml Makefile - mkdir -p $(builddir)/common - $(AM_V_GEN) $(GDBUS_CODEGEN) \ - --interface-prefix org.freedesktop.portal. \ - --c-namespace XdpDbus \ - --generate-c-code $(builddir)/common/flatpak-document-dbus-generated \ - $(srcdir)/data/org.freedesktop.portal.Documents.xml \ - $(NULL) - -common/flatpak-systemd-dbus-generated.c: data/org.freedesktop.systemd1.xml Makefile - mkdir -p $(builddir)/common - $(AM_V_GEN) $(GDBUS_CODEGEN) \ - --interface-prefix org.freedesktop.systemd1. \ - --c-namespace Systemd \ - --generate-c-code $(builddir)/common/flatpak-systemd-dbus-generated \ - $(srcdir)/data/org.freedesktop.systemd1.xml \ - $(NULL) - -common/%-dbus-generated.h: common/%-dbus-generated.c - @true # Built as a side-effect of the rules for the .c - -nodist_libflatpak_common_base_la_SOURCES = \ - $(dbus_built_sources) \ - $(NULL) - -BUILT_SOURCES += $(nodist_libflatpak_common_base_la_SOURCES) -CLEANFILES += $(nodist_libflatpak_common_base_la_SOURCES) - -VARIANT_SCHEMA_COMPILER_FLAGS= -if ENABLE_INTERNAL_CHECKS -VARIANT_SCHEMA_COMPILER_FLAGS += --internal-validation -endif - -common/flatpak-variant-private.h: subprojects/variant-schema-compiler/variant-schema-compiler data/flatpak-variants.gv - $(AM_V_GEN) $(srcdir)/subprojects/variant-schema-compiler/variant-schema-compiler $(VARIANT_SCHEMA_COMPILER_FLAGS) --outfile-header common/flatpak-variant-private.h --outfile common/flatpak-variant-impl-private.h --prefix var $(srcdir)/data/flatpak-variants.gv - -# Generated by the same tool at the same time -common/flatpak-variant-impl-private.h: common/flatpak-variant-private.h - @: - -libflatpak_common_base_la_SOURCES = \ - common/flatpak-utils-base.c \ - common/flatpak-utils-base-private.h \ - $(NULL) - -libflatpak_common_base_la_CFLAGS = \ - -DFLATPAK_COMPILATION \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(HIDDEN_VISIBILITY_CFLAGS) \ - -DLIBEXECDIR=\"$(libexecdir)\" \ - $(NULL) - -libflatpak_common_base_la_LIBADD = $(AM_LIBADD) $(BASE_LIBS) - -nodist_libflatpak_common_la_SOURCES = \ - $(nodist_flatpakinclude_HEADERS) \ - $(systemd_dbus_built_sources) \ - $(xdp_dbus_built_sources) \ - common/flatpak-enum-types.c \ - common/flatpak-variant-private.h \ - common/flatpak-variant-impl-private.h \ - $(NULL) - -BUILT_SOURCES += $(nodist_libflatpak_common_la_SOURCES) -CLEANFILES += $(nodist_libflatpak_common_la_SOURCES) - -libflatpak_common_la_SOURCES = \ - $(flatpakinclude_HEADERS) \ - common/flatpak-appdata-private.h \ - common/flatpak-appdata.c \ - common/flatpak-auth-private.h \ - common/flatpak-auth.c \ - common/flatpak-bundle-ref.c \ - common/flatpak-bwrap-private.h \ - common/flatpak-bwrap.c \ - common/flatpak-chain-input-stream-private.h \ - common/flatpak-chain-input-stream.c \ - common/flatpak-common-types-private.h \ - common/flatpak-context-private.h \ - common/flatpak-context.c \ - common/flatpak-dir-private.h \ - common/flatpak-dir.c \ - common/flatpak-error.c \ - common/flatpak-exports-private.h \ - common/flatpak-exports.c \ - common/flatpak-installation-private.h \ - common/flatpak-installation.c \ - common/flatpak-installed-ref-private.h \ - common/flatpak-installed-ref.c \ - common/flatpak-instance-private.h \ - common/flatpak-instance.c \ - common/flatpak-json-oci-private.h \ - common/flatpak-json-oci.c \ - common/flatpak-json-private.h \ - common/flatpak-json.c \ - common/flatpak-oci-registry-private.h \ - common/flatpak-oci-registry.c \ - common/flatpak-portal-error.c \ - common/flatpak-portal-error.h \ - common/flatpak-progress-private.h \ - common/flatpak-progress.c \ - common/flatpak-ref.c \ - common/flatpak-ref-utils-private.h \ - common/flatpak-ref-utils.c \ - common/flatpak-related-ref-private.h \ - common/flatpak-related-ref.c \ - common/flatpak-remote-private.h \ - common/flatpak-remote-ref-private.h \ - common/flatpak-remote-ref.c \ - common/flatpak-remote.c \ - common/flatpak-run-private.h \ - common/flatpak-run.c \ - common/flatpak-syscalls-private.h \ - common/flatpak-transaction-private.h \ - common/flatpak-transaction.c \ - common/flatpak-transaction.h \ - common/flatpak-utils-http-private.h \ - common/flatpak-utils-http.c \ - common/flatpak-utils-private.h \ - common/flatpak-utils.c \ - common/flatpak-uri-private.h \ - common/flatpak-uri.c \ - common/flatpak-prune.c \ - common/flatpak-prune-private.h \ - common/flatpak-zstd-decompressor.c \ - common/flatpak-zstd-decompressor-private.h \ - common/valgrind-private.h \ - $(NULL) - -if HAVE_LIBMALCONTENT -libflatpak_common_la_SOURCES += \ - common/flatpak-parental-controls.c \ - common/flatpak-parental-controls-private.h \ - $(NULL) -endif - -libflatpak_common_la_CFLAGS = \ - -DFLATPAK_COMPILATION \ - -DLIBEXECDIR=\"$(libexecdir)\" \ - $(AM_CFLAGS) \ - $(ARCHIVE_CFLAGS) \ - $(ZSTD_CFLAGS) \ - $(BASE_CFLAGS) \ - $(DCONF_CFLAGS) \ - $(HIDDEN_VISIBILITY_CFLAGS) \ - $(INTERNAL_GPGME_CFLAGS) \ - $(JSON_CFLAGS) \ - $(LIBSECCOMP_CFLAGS) \ - $(MALCONTENT_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(POLKIT_CFLAGS) \ - $(CURL_CFLAGS) \ - $(SOUP_CFLAGS) \ - $(SYSTEMD_CFLAGS) \ - $(XAUTH_CFLAGS) \ - $(XML_CFLAGS) \ - $(NULL) -libflatpak_common_la_LIBADD = \ - $(AM_LIBADD) \ - $(ARCHIVE_LIBS) \ - $(ZSTD_LIBS) \ - $(BASE_LIBS) \ - $(DCONF_LIBS) \ - $(INTERNAL_GPGME_LIBS) \ - $(JSON_LIBS) \ - $(LIBSECCOMP_LIBS) \ - $(MALCONTENT_LIBS) \ - $(OSTREE_LIBS) \ - $(POLKIT_LIBS) \ - $(CURL_LIBS) \ - $(SOUP_LIBS) \ - $(SYSTEMD_LIBS) \ - $(XAUTH_LIBS) \ - $(XML_LIBS) \ - $(NULL) - - -libflatpak_la_SOURCES = \ - common/flatpak.c \ - $(NULL) - -libflatpak_la_CFLAGS = \ - $(HIDDEN_VISIBILITY_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -I$(top_srcdir)/common \ - -I$(top_builddir)/common \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(CURL_CFLAGS) \ - $(SOUP_CFLAGS) \ - $(JSON_CFLAGS) \ - $(NULL) - -libflatpak_la_LDFLAGS = \ - $(AM_LDFLAGS) \ - -version-info $(LT_VERSION_INFO) \ - -export-dynamic \ - -rpath $(libdir) \ - $(NULL) - -libflatpak_la_LIBADD = \ - $(AM_LIBADD) \ - libflatpak-common.la \ - libflatpak-common-base.la \ - libglnx.la \ - $(BASE_LIBS) \ - $(OSTREE_LIBS) \ - $(CURL_LIBS) \ - $(SOUP_LIBS) \ - $(JSON_LIBS) \ - $(NULL) - -test_libflatpak_SOURCES = \ - common/test-lib.c \ - $(NULL) - -test_libflatpak_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - -I$(top_srcdir)/common \ - -I$(top_builddir)/common \ - $(NULL) - -test_libflatpak_LDADD = \ - $(AM_LDADD) \ - $(BASE_LIBS) \ - libflatpak.la \ - $(NULL) - -# gobject-introspection rules --include $(INTROSPECTION_MAKEFILE) - -sources = $(libflatpak_common_la_SOURCES) $(libflatpak_la_SOURCES) - -INTROSPECTION_GIRS = - -if HAVE_INTROSPECTION -Flatpak-1.0.gir: libflatpak.la Makefile - -introspected_headers = \ - $(flatpakinclude_HEADERS) \ - $(nodist_flatpakinclude_HEADERS) \ - $(NULL) -introspected_sources = $(filter-out %-private.h,$(sources)) - -Flatpak_1_0_gir_NAMESPACE = Flatpak -Flatpak_1_0_gir_VERSION = 1.0 -Flatpak_1_0_gir_LIBS = libflatpak.la -Flatpak_1_0_gir_FILES = $(introspected_headers) $(introspected_sources) -Flatpak_1_0_gir_CFLAGS = $(libflatpak_la_CFLAGS) -Flatpak_1_0_gir_INCLUDES = GObject-2.0 Gio-2.0 -Flatpak_1_0_gir_SCANNERFLAGS = \ - --warn-all \ - --c-include='flatpak.h' \ - --pkg-export=flatpak - -INTROSPECTION_GIRS += Flatpak-1.0.gir - -girdir = $(datadir)/gir-1.0 -nodist_gir_DATA = $(INTROSPECTION_GIRS) -CLEANFILES += $(nodist_gir_DATA) - -typelibdir = $(libdir)/girepository-1.0 -nodist_typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) -CLEANFILES += $(nodist_typelib_DATA) - -endif # HAVE_INTROSPECTION diff --git a/common/flatpak-bundle-ref.c b/common/flatpak-bundle-ref.c index db97bc0..9c88664 100644 --- a/common/flatpak-bundle-ref.c +++ b/common/flatpak-bundle-ref.c @@ -22,6 +22,7 @@ #include +#include "flatpak-repo-utils-private.h" #include "flatpak-utils-private.h" #include "flatpak-bundle-ref.h" #include "flatpak-enum-types.h" diff --git a/common/flatpak-bwrap-private.h b/common/flatpak-bwrap-private.h index 207d23a..9effed8 100644 --- a/common/flatpak-bwrap-private.h +++ b/common/flatpak-bwrap-private.h @@ -28,6 +28,7 @@ typedef struct GArray *fds; GStrv envp; GPtrArray *runtime_dir_members; + int sync_fds[2]; } FlatpakBwrap; extern char *flatpak_bwrap_empty_env[1]; @@ -89,9 +90,12 @@ void flatpak_bwrap_populate_runtime_dir (FlatpakBwrap *bwrap, const char *shared_xdg_runtime_dir); void flatpak_bwrap_child_setup_cb (gpointer user_data); +void flatpak_bwrap_child_setup_inherit_fds_cb (gpointer user_data); void flatpak_bwrap_child_setup (GArray *fd_array, gboolean close_fd_workaround); +int flatpak_bwrap_add_sync_fd (FlatpakBwrap *bwrap); + G_DEFINE_AUTOPTR_CLEANUP_FUNC (FlatpakBwrap, flatpak_bwrap_free) diff --git a/common/flatpak-bwrap.c b/common/flatpak-bwrap.c index 348b645..f7e8b10 100644 --- a/common/flatpak-bwrap.c +++ b/common/flatpak-bwrap.c @@ -34,6 +34,7 @@ #include +#include #include #include "libglnx.h" @@ -68,6 +69,9 @@ flatpak_bwrap_new (char **env) else bwrap->envp = g_get_environ (); + bwrap->sync_fds[0] = -1; + bwrap->sync_fds[1] = -1; + return bwrap; } @@ -78,6 +82,7 @@ flatpak_bwrap_free (FlatpakBwrap *bwrap) g_array_unref (bwrap->noinherit_fds); g_array_unref (bwrap->fds); g_strfreev (bwrap->envp); + g_clear_pointer (&bwrap->runtime_dir_members, g_ptr_array_unref); g_free (bwrap); } @@ -268,7 +273,7 @@ flatpak_bwrap_add_args_data (FlatpakBwrap *bwrap, if (!flatpak_buffer_to_sealed_memfd_or_tmpfile (&args_tmpf, name, content, content_size, error)) return FALSE; - flatpak_bwrap_add_args_data_fd (bwrap, "--ro-bind-data", glnx_steal_fd (&args_tmpf.fd), path); + flatpak_bwrap_add_args_data_fd (bwrap, "--ro-bind-data", g_steal_fd (&args_tmpf.fd), path); return TRUE; } @@ -370,9 +375,9 @@ flatpak_bwrap_bundle_args (FlatpakBwrap *bwrap, if (!flatpak_buffer_to_sealed_memfd_or_tmpfile (&args_tmpf, "bwrap-args", data, data_len, error)) return FALSE; - fd = glnx_steal_fd (&args_tmpf.fd); + fd = g_steal_fd (&args_tmpf.fd); - flatpak_debug2 ("bwrap --args %d = ...", fd); + g_debug ("bwrap --args %d = ...", fd); for (i = start; i < end; i++) { @@ -380,11 +385,11 @@ flatpak_bwrap_bundle_args (FlatpakBwrap *bwrap, { g_autofree char *quoted = g_shell_quote (bwrap->argv->pdata[i]); - flatpak_debug2 (" %s", quoted); + g_debug (" %s", quoted); } else { - flatpak_debug2 (" %s", (const char *) bwrap->argv->pdata[i]); + g_debug (" %s", (const char *) bwrap->argv->pdata[i]); } } @@ -495,8 +500,14 @@ flatpak_bwrap_child_setup (GArray *fd_array, { int i; + /* There is a dead-lock in glib versions before 2.60 when it closes + * the fds. See: https://gitlab.gnome.org/GNOME/glib/merge_requests/490 + * This was hitting the test-suite a lot, so we work around it by using + * the G_SPAWN_LEAVE_DESCRIPTORS_OPEN/G_SUBPROCESS_FLAGS_INHERIT_FDS flag + * and setting CLOEXEC ourselves. + */ if (close_fd_workaround) - flatpak_close_fds_workaround (3); + g_fdwalk_set_cloexec (3); /* If no fd_array was specified, don't care. */ if (fd_array == NULL) @@ -526,3 +537,29 @@ flatpak_bwrap_child_setup_cb (gpointer user_data) flatpak_bwrap_child_setup (fd_array, TRUE); } + +/* Unset FD_CLOEXEC on the array of fds passed in @user_data, + * but do not set FD_CLOEXEC on all other fds */ +void +flatpak_bwrap_child_setup_inherit_fds_cb (gpointer user_data) +{ + GArray *fd_array = user_data; + + flatpak_bwrap_child_setup (fd_array, FALSE); +} + +/* Add a --sync-fd argument for bwrap(1). Returns the write end of the pipe on + * success, or -1 on error. */ +int +flatpak_bwrap_add_sync_fd (FlatpakBwrap *bwrap) +{ + /* --sync-fd is only allowed once */ + if (bwrap->sync_fds[1] >= 0) + return bwrap->sync_fds[1]; + + if (pipe2 (bwrap->sync_fds, O_CLOEXEC) < 0) + return -1; + + flatpak_bwrap_add_args_data_fd (bwrap, "--sync-fd", bwrap->sync_fds[0], NULL); + return bwrap->sync_fds[1]; +} diff --git a/common/flatpak-context-private.h b/common/flatpak-context-private.h index d9a7977..b0e7eea 100644 --- a/common/flatpak-context-private.h +++ b/common/flatpak-context-private.h @@ -1,5 +1,6 @@ /* * Copyright © 2014-2018 Red Hat, Inc + * Copyright © 2024 GNOME Foundation, Inc. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -16,6 +17,8 @@ * * Authors: * Alexander Larsson + * Georges Basile Stavracas Neto + * Hubert Figuière */ #ifndef __FLATPAK_CONTEXT_H__ @@ -24,6 +27,13 @@ #include "libglnx.h" #include #include "flatpak-exports-private.h" +#include "flatpak-usb-private.h" + +typedef enum { + FLATPAK_SESSION_BUS, + FLATPAK_SYSTEM_BUS, + FLATPAK_A11Y_BUS, +} FlatpakBus; typedef enum { FLATPAK_POLICY_NONE, @@ -50,6 +60,7 @@ typedef enum { FLATPAK_CONTEXT_SOCKET_PCSC = 1 << 7, FLATPAK_CONTEXT_SOCKET_CUPS = 1 << 8, FLATPAK_CONTEXT_SOCKET_GPG_AGENT = 1 << 9, + FLATPAK_CONTEXT_SOCKET_INHERIT_WAYLAND_SOCKET = 1 << 10, } FlatpakContextSockets; typedef enum { @@ -57,6 +68,8 @@ typedef enum { FLATPAK_CONTEXT_DEVICE_ALL = 1 << 1, FLATPAK_CONTEXT_DEVICE_KVM = 1 << 2, FLATPAK_CONTEXT_DEVICE_SHM = 1 << 3, + FLATPAK_CONTEXT_DEVICE_INPUT = 1 << 4, + FLATPAK_CONTEXT_DEVICE_USB = 1 << 5, } FlatpakContextDevices; typedef enum { @@ -82,7 +95,10 @@ struct FlatpakContext GHashTable *filesystems; GHashTable *session_bus_policy; GHashTable *system_bus_policy; + GHashTable *a11y_bus_policy; GHashTable *generic_policy; + GHashTable *enumerable_usb_devices; + GHashTable *hidden_usb_devices; }; extern const char *flatpak_context_sockets[]; @@ -98,6 +114,8 @@ gboolean flatpak_context_parse_filesystem (const char *filesys FlatpakContext *flatpak_context_new (void); void flatpak_context_free (FlatpakContext *context); +void flatpak_context_dump (FlatpakContext *context, + const char *title); void flatpak_context_merge (FlatpakContext *context, FlatpakContext *other); GOptionEntry *flatpak_context_get_option_entries (void); @@ -116,12 +134,17 @@ GStrv flatpak_context_get_session_bus_policy_allowed_own_names (Flatpak void flatpak_context_set_system_bus_policy (FlatpakContext *context, const char *name, FlatpakPolicy policy); +void flatpak_context_set_a11y_bus_policy (FlatpakContext *context, + const char *name, + FlatpakPolicy policy); +char * flatpak_context_devices_to_usb_list (GHashTable *devices, + gboolean hidden); void flatpak_context_to_args (FlatpakContext *context, GPtrArray *args); FlatpakRunFlags flatpak_context_get_run_flags (FlatpakContext *context); void flatpak_context_add_bus_filters (FlatpakContext *context, const char *app_id, - gboolean session_bus, + FlatpakBus bus, gboolean sandboxed, FlatpakBwrap *bwrap); @@ -168,4 +191,14 @@ gboolean flatpak_context_parse_env_fd (FlatpakContext *context, G_DEFINE_AUTOPTR_CLEANUP_FUNC (FlatpakContext, flatpak_context_free) +GFile *flatpak_get_user_base_dir_location (void); +GFile *flatpak_get_data_dir (const char *app_id); + +gboolean flatpak_context_get_allowed_exports (FlatpakContext *context, + const char *source_path, + const char *app_id, + char ***allowed_extensions_out, + char ***allowed_prefixes_out, + gboolean *require_exact_match_out); + #endif /* __FLATPAK_CONTEXT_H__ */ diff --git a/common/flatpak-context.c b/common/flatpak-context.c index 920fd40..c2038cd 100644 --- a/common/flatpak-context.c +++ b/common/flatpak-context.c @@ -1,5 +1,6 @@ /* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: * Copyright © 2014-2018 Red Hat, Inc + * Copyright © 2024 GNOME Foundation, Inc. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -16,9 +17,12 @@ * * Authors: * Alexander Larsson + * Georges Basile Stavracas Neto + * Hubert Figuière */ #include "config.h" +#include "flatpak-context-private.h" #include #include @@ -37,11 +41,10 @@ #include #include "libglnx.h" -#include "flatpak-run-private.h" -#include "flatpak-utils-private.h" -#include "flatpak-dir-private.h" -#include "flatpak-systemd-dbus-generated.h" #include "flatpak-error.h" +#include "flatpak-metadata-private.h" +#include "flatpak-usb-private.h" +#include "flatpak-utils-private.h" /* Same order as enum */ const char *flatpak_context_shares[] = { @@ -62,6 +65,7 @@ const char *flatpak_context_sockets[] = { "pcsc", "cups", "gpg-agent", + "inherit-wayland-socket", NULL }; @@ -70,6 +74,8 @@ const char *flatpak_context_devices[] = { "all", "kvm", "shm", + "input", + "usb", NULL }; @@ -103,8 +109,13 @@ flatpak_context_new (void) context->filesystems = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); context->session_bus_policy = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); context->system_bus_policy = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); + context->a11y_bus_policy = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); context->generic_policy = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify) g_strfreev); + context->enumerable_usb_devices = g_hash_table_new_full (g_str_hash, g_str_equal, + g_free, (GDestroyNotify) flatpak_usb_query_free); + context->hidden_usb_devices = g_hash_table_new_full (g_str_hash, g_str_equal, + g_free, (GDestroyNotify) flatpak_usb_query_free); return context; } @@ -117,7 +128,10 @@ flatpak_context_free (FlatpakContext *context) g_hash_table_destroy (context->filesystems); g_hash_table_destroy (context->session_bus_policy); g_hash_table_destroy (context->system_bus_policy); + g_hash_table_destroy (context->a11y_bus_policy); g_hash_table_destroy (context->generic_policy); + g_hash_table_destroy (context->enumerable_usb_devices); + g_hash_table_destroy (context->hidden_usb_devices); g_slice_free (FlatpakContext, context); } @@ -432,6 +446,14 @@ flatpak_context_set_session_bus_policy (FlatpakContext *context, g_hash_table_insert (context->session_bus_policy, g_strdup (name), GINT_TO_POINTER (policy)); } +void +flatpak_context_set_a11y_bus_policy (FlatpakContext *context, + const char *name, + FlatpakPolicy policy) +{ + g_hash_table_insert (context->a11y_bus_policy, g_strdup (name), GINT_TO_POINTER (policy)); +} + GStrv flatpak_context_get_session_bus_policy_allowed_own_names (FlatpakContext *context) { @@ -488,6 +510,65 @@ flatpak_context_apply_generic_policy (FlatpakContext *context, g_ptr_array_free (new, FALSE)); } +static void +flatpak_context_add_query_to (GHashTable *queries, + const FlatpakUsbQuery *usb_query) +{ + g_autoptr(FlatpakUsbQuery) copy = NULL; + g_autoptr(GString) string = NULL; + + g_assert (queries != NULL); + g_assert (usb_query != NULL && usb_query->rules != NULL); + + copy = flatpak_usb_query_copy (usb_query); + + string = g_string_new (NULL); + flatpak_usb_query_print (usb_query, string); + + g_hash_table_insert (queries, + g_strdup (string->str), + g_steal_pointer (©)); +} + +static void +flatpak_context_add_usb_query (FlatpakContext *context, + const FlatpakUsbQuery *usb_query) +{ + flatpak_context_add_query_to (context->enumerable_usb_devices, usb_query); +} + +static void +flatpak_context_add_nousb_query (FlatpakContext *context, + const FlatpakUsbQuery *usb_query) +{ + flatpak_context_add_query_to (context->hidden_usb_devices, usb_query); +} + +static gboolean +flatpak_context_add_usb_list (FlatpakContext *context, + const char *list, + GError **error) +{ + return flatpak_usb_parse_usb_list (list, context->enumerable_usb_devices, + context->hidden_usb_devices, error); +} + +static gboolean +flatpak_context_add_usb_list_from_file (FlatpakContext *context, + const char *path, + GError **error) +{ + g_autofree char *contents = NULL; + + if (!flatpak_validate_path_characters (path, error)) + return FALSE; + + if (!g_file_get_contents (path, &contents, NULL, error)) + return FALSE; + + return flatpak_usb_parse_usb_list (contents, context->enumerable_usb_devices, + context->hidden_usb_devices, error); +} static gboolean flatpak_context_set_persistent (FlatpakContext *context, @@ -572,12 +653,13 @@ static gboolean get_xdg_user_dir_from_string (const char *filesystem, const char **config_key, const char **suffix, - const char **dir) + char **dir) { char *slash; const char *rest; g_autofree char *prefix = NULL; gsize len; + const char *dir_out = NULL; slash = strchr (filesystem, '/'); @@ -600,7 +682,7 @@ get_xdg_user_dir_from_string (const char *filesystem, if (config_key) *config_key = "XDG_DESKTOP_DIR"; if (dir) - *dir = g_get_user_special_dir (G_USER_DIRECTORY_DESKTOP); + *dir = g_strdup (g_get_user_special_dir (G_USER_DIRECTORY_DESKTOP)); return TRUE; } if (strcmp (prefix, "xdg-documents") == 0) @@ -608,7 +690,7 @@ get_xdg_user_dir_from_string (const char *filesystem, if (config_key) *config_key = "XDG_DOCUMENTS_DIR"; if (dir) - *dir = g_get_user_special_dir (G_USER_DIRECTORY_DOCUMENTS); + *dir = g_strdup (g_get_user_special_dir (G_USER_DIRECTORY_DOCUMENTS)); return TRUE; } if (strcmp (prefix, "xdg-download") == 0) @@ -616,7 +698,7 @@ get_xdg_user_dir_from_string (const char *filesystem, if (config_key) *config_key = "XDG_DOWNLOAD_DIR"; if (dir) - *dir = g_get_user_special_dir (G_USER_DIRECTORY_DOWNLOAD); + *dir = g_strdup (g_get_user_special_dir (G_USER_DIRECTORY_DOWNLOAD)); return TRUE; } if (strcmp (prefix, "xdg-music") == 0) @@ -624,7 +706,7 @@ get_xdg_user_dir_from_string (const char *filesystem, if (config_key) *config_key = "XDG_MUSIC_DIR"; if (dir) - *dir = g_get_user_special_dir (G_USER_DIRECTORY_MUSIC); + *dir = g_strdup (g_get_user_special_dir (G_USER_DIRECTORY_MUSIC)); return TRUE; } if (strcmp (prefix, "xdg-pictures") == 0) @@ -632,7 +714,7 @@ get_xdg_user_dir_from_string (const char *filesystem, if (config_key) *config_key = "XDG_PICTURES_DIR"; if (dir) - *dir = g_get_user_special_dir (G_USER_DIRECTORY_PICTURES); + *dir = g_strdup (g_get_user_special_dir (G_USER_DIRECTORY_PICTURES)); return TRUE; } if (strcmp (prefix, "xdg-public-share") == 0) @@ -640,7 +722,7 @@ get_xdg_user_dir_from_string (const char *filesystem, if (config_key) *config_key = "XDG_PUBLICSHARE_DIR"; if (dir) - *dir = g_get_user_special_dir (G_USER_DIRECTORY_PUBLIC_SHARE); + *dir = g_strdup (g_get_user_special_dir (G_USER_DIRECTORY_PUBLIC_SHARE)); return TRUE; } if (strcmp (prefix, "xdg-templates") == 0) @@ -648,7 +730,7 @@ get_xdg_user_dir_from_string (const char *filesystem, if (config_key) *config_key = "XDG_TEMPLATES_DIR"; if (dir) - *dir = g_get_user_special_dir (G_USER_DIRECTORY_TEMPLATES); + *dir = g_strdup (g_get_user_special_dir (G_USER_DIRECTORY_TEMPLATES)); return TRUE; } if (strcmp (prefix, "xdg-videos") == 0) @@ -656,13 +738,15 @@ get_xdg_user_dir_from_string (const char *filesystem, if (config_key) *config_key = "XDG_VIDEOS_DIR"; if (dir) - *dir = g_get_user_special_dir (G_USER_DIRECTORY_VIDEOS); + *dir = g_strdup (g_get_user_special_dir (G_USER_DIRECTORY_VIDEOS)); return TRUE; } - if (get_xdg_dir_from_prefix (prefix, NULL, dir)) + if (get_xdg_dir_from_prefix (prefix, NULL, &dir_out)) { if (config_key) *config_key = NULL; + if (dir) + *dir = g_strdup (dir_out); return TRUE; } /* Don't support xdg-run without suffix, because that doesn't work */ @@ -1017,9 +1101,9 @@ flatpak_context_merge (FlatpakContext *context, while (g_hash_table_iter_next (&iter, &key, &value)) g_hash_table_insert (context->system_bus_policy, g_strdup (key), value); - g_hash_table_iter_init (&iter, other->system_bus_policy); + g_hash_table_iter_init (&iter, other->a11y_bus_policy); while (g_hash_table_iter_next (&iter, &key, &value)) - g_hash_table_insert (context->system_bus_policy, g_strdup (key), value); + g_hash_table_insert (context->a11y_bus_policy, g_strdup (key), value); g_hash_table_iter_init (&iter, other->generic_policy); while (g_hash_table_iter_next (&iter, &key, &value)) @@ -1030,6 +1114,14 @@ flatpak_context_merge (FlatpakContext *context, for (i = 0; policy_values[i] != NULL; i++) flatpak_context_apply_generic_policy (context, (char *) key, policy_values[i]); } + + g_hash_table_iter_init (&iter, other->enumerable_usb_devices); + while (g_hash_table_iter_next (&iter, NULL, &value)) + flatpak_context_add_usb_query (context, value); + + g_hash_table_iter_init (&iter, other->hidden_usb_devices); + while (g_hash_table_iter_next (&iter, NULL, &value)) + flatpak_context_add_nousb_query (context, value); } static gboolean @@ -1243,37 +1335,22 @@ flatpak_context_parse_env_block (FlatpakContext *context, gsize length, GError **error) { - const char *p = data; - gsize remaining = length; - - /* env_block might not be \0-terminated */ - while (remaining > 0) - { - size_t len = strnlen (p, remaining); - const char *equals; - g_autofree char *env_var = NULL; - g_autofree char *env_value = NULL; - - g_assert (len <= remaining); + g_auto(GStrv) env_vars = NULL; + int i; - equals = memchr (p, '=', len); + env_vars = flatpak_parse_env_block (data, length, error); + if (env_vars == NULL) + return FALSE; - if (equals == NULL || equals == p) - return glnx_throw (error, - "Environment variable must be given in the form VARIABLE=VALUE, not %.*s", (int) len, p); + for (i = 0; env_vars[i] != NULL; i++) + { + g_auto(GStrv) split = g_strsplit (env_vars[i], "=", 2); - env_var = g_strndup (p, equals - p); - env_value = g_strndup (equals + 1, len - (equals - p) - 1); - flatpak_context_set_env_var (context, env_var, env_value); - p += len; - remaining -= len; + g_assert (g_strv_length (split) == 2); + g_assert (split[0][0] != '\0'); - if (remaining > 0) - { - g_assert (*p == '\0'); - p += 1; - remaining -= 1; - } + flatpak_context_set_env_var (context, + split[0], split[1]); } return TRUE; @@ -1355,6 +1432,21 @@ option_own_name_cb (const gchar *option_name, return TRUE; } +static gboolean +option_a11y_own_name_cb (const gchar *option_name, + const gchar *value, + gpointer data, + GError **error) +{ + FlatpakContext *context = data; + + if (!flatpak_verify_dbus_name (value, error)) + return FALSE; + + flatpak_context_set_a11y_bus_policy (context, value, FLATPAK_POLICY_OWN); + return TRUE; +} + static gboolean option_talk_name_cb (const gchar *option_name, const gchar *value, @@ -1512,8 +1604,58 @@ option_remove_generic_policy_cb (const gchar *option_name, } static gboolean -option_persist_cb (const gchar *option_name, - const gchar *value, +option_usb_cb (const char *option_name, + const char *value, + gpointer data, + GError **error) +{ + g_autoptr(FlatpakUsbQuery) usb_query = NULL; + FlatpakContext *context = data; + + if (!flatpak_usb_parse_usb (value, &usb_query, error)) + return FALSE; + + flatpak_context_add_usb_query (context, usb_query); + return TRUE; +} + +static gboolean +option_nousb_cb (const char *option_name, + const char *value, + gpointer data, + GError **error) +{ + g_autoptr(FlatpakUsbQuery) usb_query = NULL; + FlatpakContext *context = data; + + if (!flatpak_usb_parse_usb (value, &usb_query, error)) + return FALSE; + + flatpak_context_add_nousb_query (context, usb_query); + return TRUE; +} + +static gboolean +option_usb_list_file_cb (const char *option_name, + const char *value, + gpointer data, + GError **error) +{ + return flatpak_context_add_usb_list_from_file (data, value, error); +} + +static gboolean +option_usb_list_cb (const char *option_name, + const char *value, + gpointer data, + GError **error) +{ + return flatpak_context_add_usb_list (data, value, error); +} + +static gboolean +option_persist_cb (const char *option_name, + const char *value, gpointer data, GError **error) { @@ -1544,8 +1686,13 @@ static GOptionEntry context_options[] = { { "system-own-name", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_CALLBACK, &option_system_own_name_cb, N_("Allow app to own name on the system bus"), N_("DBUS_NAME") }, { "system-talk-name", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_CALLBACK, &option_system_talk_name_cb, N_("Allow app to talk to name on the system bus"), N_("DBUS_NAME") }, { "system-no-talk-name", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_CALLBACK, &option_system_no_talk_name_cb, N_("Don't allow app to talk to name on the system bus"), N_("DBUS_NAME") }, + { "a11y-own-name", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_CALLBACK, &option_a11y_own_name_cb, N_("Allow app to own name on the a11y bus"), N_("DBUS_NAME") }, { "add-policy", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_CALLBACK, &option_add_generic_policy_cb, N_("Add generic policy option"), N_("SUBSYSTEM.KEY=VALUE") }, { "remove-policy", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_CALLBACK, &option_remove_generic_policy_cb, N_("Remove generic policy option"), N_("SUBSYSTEM.KEY=VALUE") }, + { "usb", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_CALLBACK, &option_usb_cb, N_("Add USB device to enumerables"), N_("VENDOR_ID:PRODUCT_ID") }, + { "nousb", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_CALLBACK, &option_nousb_cb, N_("Add USB device to hidden list"), N_("VENDOR_ID:PRODUCT_ID") }, + { "usb-list", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_CALLBACK, &option_usb_list_cb, N_("A list of USB devices that are enumerable"), N_("LIST") }, + { "usb-list-file", 0, G_OPTION_FLAG_IN_MAIN | G_OPTION_FLAG_FILENAME, G_OPTION_ARG_CALLBACK, &option_usb_list_file_cb, N_("File containing a list of USB devices to make enumerable"), N_("FILENAME") }, { "persist", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_CALLBACK, &option_persist_cb, N_("Persist home directory subpath"), N_("FILENAME") }, /* This is not needed/used anymore, so hidden, but we accept it for backwards compat */ { "no-desktop", 0, G_OPTION_FLAG_IN_MAIN | G_OPTION_FLAG_HIDDEN, G_OPTION_ARG_NONE, &option_no_desktop_deprecated, N_("Don't require a running session (no cgroups creation)"), NULL }, @@ -1621,7 +1768,7 @@ flatpak_context_load_metadata (FlatpakContext *context, share = flatpak_context_share_from_string (parse_negated (shares[i], &remove), NULL); if (share == 0) - g_debug ("Unknown share type %s", shares[i]); + g_info ("Unknown share type %s", shares[i]); else { if (remove) @@ -1643,7 +1790,7 @@ flatpak_context_load_metadata (FlatpakContext *context, { FlatpakContextSockets socket = flatpak_context_socket_from_string (parse_negated (sockets[i], &remove), NULL); if (socket == 0) - g_debug ("Unknown socket type %s", sockets[i]); + g_info ("Unknown socket type %s", sockets[i]); else { if (remove) @@ -1666,7 +1813,7 @@ flatpak_context_load_metadata (FlatpakContext *context, { FlatpakContextDevices device = flatpak_context_device_from_string (parse_negated (devices[i], &remove), NULL); if (device == 0) - g_debug ("Unknown device type %s", devices[i]); + g_info ("Unknown device type %s", devices[i]); else { if (remove) @@ -1689,7 +1836,7 @@ flatpak_context_load_metadata (FlatpakContext *context, { FlatpakContextFeatures feature = flatpak_context_feature_from_string (parse_negated (features[i], &remove), NULL); if (feature == 0) - g_debug ("Unknown feature type %s", features[i]); + g_info ("Unknown feature type %s", features[i]); else { if (remove) @@ -1725,7 +1872,7 @@ flatpak_context_load_metadata (FlatpakContext *context, } else { - g_debug ("Unknown filesystem type %s", filesystems[i]); + g_info ("Unknown filesystem type %s", filesystems[i]); g_clear_error (&local_error); } } @@ -1857,9 +2004,80 @@ flatpak_context_load_metadata (FlatpakContext *context, } } + if (g_key_file_has_key (metakey, FLATPAK_METADATA_GROUP_USB_DEVICES, FLATPAK_METADATA_KEY_USB_ENUMERABLE_DEVICES, NULL)) + { + g_auto(GStrv) values = NULL; + size_t count; + + values = g_key_file_get_string_list (metakey, FLATPAK_METADATA_GROUP_USB_DEVICES, + FLATPAK_METADATA_KEY_USB_ENUMERABLE_DEVICES, + &count, error); + + if (!values) + return FALSE; + + for (i = 0; i < count; i++) + { + g_autoptr(FlatpakUsbQuery) usb_query = NULL; + + if (!flatpak_usb_parse_usb (values[i], &usb_query, error)) + return FALSE; + + flatpak_context_add_usb_query (context, usb_query); + } + } + + if (g_key_file_has_key (metakey, FLATPAK_METADATA_GROUP_USB_DEVICES, FLATPAK_METADATA_KEY_USB_HIDDEN_DEVICES, NULL)) + { + g_auto(GStrv) values = NULL; + size_t count; + + values = g_key_file_get_string_list (metakey, FLATPAK_METADATA_GROUP_USB_DEVICES, + FLATPAK_METADATA_KEY_USB_HIDDEN_DEVICES, + &count, error); + + if (!values) + return FALSE; + + for (i = 0; i < count; i++) + { + g_autoptr(FlatpakUsbQuery) usb_query = NULL; + + if (!flatpak_usb_parse_usb (values[i], &usb_query, error)) + return FALSE; + + flatpak_context_add_nousb_query (context, usb_query); + } + } + return TRUE; } +static void +flatpak_context_save_usb_devices (GHashTable *devices, GKeyFile *keyfile, const char *key) +{ + GHashTableIter iter; + gpointer value; + + if (g_hash_table_size (devices) > 0) + { + g_autoptr(GPtrArray) usb_devices = g_ptr_array_new (); + + g_hash_table_iter_init (&iter, devices); + while (g_hash_table_iter_next (&iter, &value, NULL)) + g_ptr_array_add (usb_devices, (char *) value); + + if (usb_devices->len > 0) + { + g_key_file_set_string_list (keyfile, + FLATPAK_METADATA_GROUP_USB_DEVICES, + key, + (const char * const *) usb_devices->pdata, + usb_devices->len); + } + } +} + /* * Save the FLATPAK_METADATA_GROUP_CONTEXT, * FLATPAK_METADATA_GROUP_SESSION_BUS_POLICY, @@ -2062,6 +2280,20 @@ flatpak_context_save_metadata (FlatpakContext *context, (char *) key, flatpak_policy_to_string (policy)); } + g_key_file_remove_group (metakey, FLATPAK_METADATA_GROUP_A11Y_BUS_POLICY, NULL); + g_hash_table_iter_init (&iter, context->a11y_bus_policy); + while (g_hash_table_iter_next (&iter, &key, &value)) + { + FlatpakPolicy policy = GPOINTER_TO_INT (value); + + if (flatten && (policy == 0)) + continue; + + g_key_file_set_string (metakey, + FLATPAK_METADATA_GROUP_A11Y_BUS_POLICY, + (char *) key, flatpak_policy_to_string (policy)); + } + /* Elements are borrowed from context->env_vars */ unset_env = g_ptr_array_new (); @@ -2134,6 +2366,12 @@ flatpak_context_save_metadata (FlatpakContext *context, new->len); } } + + g_key_file_remove_group (metakey, FLATPAK_METADATA_GROUP_USB_DEVICES, NULL); + flatpak_context_save_usb_devices (context->enumerable_usb_devices, metakey, + FLATPAK_METADATA_KEY_USB_ENUMERABLE_DEVICES); + flatpak_context_save_usb_devices (context->hidden_usb_devices, metakey, + FLATPAK_METADATA_KEY_USB_HIDDEN_DEVICES); } void @@ -2231,6 +2469,30 @@ adds_filesystem_access (GHashTable *old, GHashTable *new) return FALSE; } +static gboolean +adds_usb_device (FlatpakContext *old, FlatpakContext *new) +{ + GHashTableIter iter; + gpointer value; + + /* Does it add new devices to the allowlist? */ + g_hash_table_iter_init (&iter, new->enumerable_usb_devices); + while (g_hash_table_iter_next (&iter, &value, NULL)) + { + if (!g_hash_table_contains (old->enumerable_usb_devices, value)) + return TRUE; + } + + /* Does it remove devices from the blocklist? */ + g_hash_table_iter_init (&iter, old->hidden_usb_devices); + while (g_hash_table_iter_next (&iter, &value, NULL)) + { + if (!g_hash_table_contains (new->hidden_usb_devices, value)) + return TRUE; + } + + return FALSE; +} gboolean flatpak_context_adds_permissions (FlatpakContext *old, @@ -2272,12 +2534,18 @@ flatpak_context_adds_permissions (FlatpakContext *old, if (adds_bus_policy (old->system_bus_policy, new->system_bus_policy)) return TRUE; + if (adds_bus_policy (old->a11y_bus_policy, new->a11y_bus_policy)) + return TRUE; + if (adds_generic_policy (old->generic_policy, new->generic_policy)) return TRUE; if (adds_filesystem_access (old->filesystems, new->filesystems)) return TRUE; + if (adds_usb_device (old, new)) + return TRUE; + return FALSE; } @@ -2288,12 +2556,33 @@ flatpak_context_allows_features (FlatpakContext *context, return (context->features & features) == features; } +char * +flatpak_context_devices_to_usb_list (GHashTable *devices, + gboolean hidden) +{ + GString *list = g_string_new (NULL); + GHashTableIter iter; + gpointer value; + + g_hash_table_iter_init (&iter, devices); + while (g_hash_table_iter_next (&iter, &value, NULL)) + { + if (hidden) + g_string_append_printf (list, "!%s;", (const char *) value); + else + g_string_append_printf (list, "%s;", (const char *) value); + } + + return g_string_free (list, FALSE); +} + void flatpak_context_to_args (FlatpakContext *context, GPtrArray *args) { GHashTableIter iter; gpointer key, value; + char *usb_list = NULL; flatpak_context_shared_to_args (context->shares, context->shares_valid, args); flatpak_context_sockets_to_args (context->sockets, context->sockets_valid, args); @@ -2362,12 +2651,20 @@ flatpak_context_to_args (FlatpakContext *context, g_ptr_array_add (args, g_strdup_printf ("--nofilesystem=%s", &fs[1])); } } + + usb_list = flatpak_context_devices_to_usb_list (context->enumerable_usb_devices, FALSE); + g_ptr_array_add (args, g_strdup_printf ("--usb-list=%s", usb_list)); + g_free (usb_list); + + usb_list = flatpak_context_devices_to_usb_list (context->hidden_usb_devices, TRUE); + g_ptr_array_add (args, g_strdup_printf ("--usb-list=%s", usb_list)); + g_free (usb_list); } void flatpak_context_add_bus_filters (FlatpakContext *context, const char *app_id, - gboolean session_bus, + FlatpakBus bus, gboolean sandboxed, FlatpakBwrap *bwrap) { @@ -2376,24 +2673,37 @@ flatpak_context_add_bus_filters (FlatpakContext *context, gpointer key, value; flatpak_bwrap_add_arg (bwrap, "--filter"); - if (app_id && session_bus) + + switch (bus) { - if (!sandboxed) + case FLATPAK_SESSION_BUS: + if (app_id) { - flatpak_bwrap_add_arg_printf (bwrap, "--own=%s.*", app_id); - flatpak_bwrap_add_arg_printf (bwrap, "--own=org.mpris.MediaPlayer2.%s.*", app_id); - } - else - { - flatpak_bwrap_add_arg_printf (bwrap, "--own=%s.Sandboxed.*", app_id); - flatpak_bwrap_add_arg_printf (bwrap, "--own=org.mpris.MediaPlayer2.%s.Sandboxed.*", app_id); + if (!sandboxed) + { + flatpak_bwrap_add_arg_printf (bwrap, "--own=%s.*", app_id); + flatpak_bwrap_add_arg_printf (bwrap, "--own=org.mpris.MediaPlayer2.%s.*", app_id); + } + else + { + flatpak_bwrap_add_arg_printf (bwrap, "--own=%s.Sandboxed.*", app_id); + flatpak_bwrap_add_arg_printf (bwrap, "--own=org.mpris.MediaPlayer2.%s.Sandboxed.*", app_id); + } } - } + ht = context->session_bus_policy; + break; - if (session_bus) - ht = context->session_bus_policy; - else - ht = context->system_bus_policy; + case FLATPAK_SYSTEM_BUS: + ht = context->system_bus_policy; + break; + + case FLATPAK_A11Y_BUS: + ht = context->a11y_bus_policy; + break; + + default: + g_assert_not_reached (); + } g_hash_table_iter_init (&iter, ht); while (g_hash_table_iter_next (&iter, &key, &value)) @@ -2430,6 +2740,7 @@ flatpak_context_reset_permissions (FlatpakContext *context) g_hash_table_remove_all (context->filesystems); g_hash_table_remove_all (context->session_bus_policy); g_hash_table_remove_all (context->system_bus_policy); + g_hash_table_remove_all (context->a11y_bus_policy); g_hash_table_remove_all (context->generic_policy); } @@ -2453,6 +2764,7 @@ flatpak_context_make_sandboxed (FlatpakContext *context) g_hash_table_remove_all (context->filesystems); g_hash_table_remove_all (context->session_bus_policy); g_hash_table_remove_all (context->system_bus_policy); + g_hash_table_remove_all (context->a11y_bus_policy); g_hash_table_remove_all (context->generic_policy); } @@ -2541,7 +2853,7 @@ flatpak_context_export (FlatpakContext *context, DIR *dir; struct dirent *dirent; - g_debug ("Allowing host-fs access"); + g_info ("Allowing host-fs access"); home_access = TRUE; /* Bind mount most dirs in / into the new root */ @@ -2597,7 +2909,7 @@ flatpak_context_export (FlatpakContext *context, home_mode = GPOINTER_TO_INT (g_hash_table_lookup (context->filesystems, "home")); if (home_mode != FLATPAK_FILESYSTEM_MODE_NONE) { - g_debug ("Allowing homedir access"); + g_info ("Allowing homedir access"); home_access = TRUE; if (!flatpak_exports_add_path_expose (exports, MAX (home_mode, fs_mode), g_get_home_dir (), &local_error)) @@ -2623,7 +2935,8 @@ flatpak_context_export (FlatpakContext *context, if (g_str_has_prefix (filesystem, "xdg-")) { - const char *path, *rest = NULL; + g_autofree char *path = NULL; + const char *rest = NULL; const char *config_key = NULL; g_autofree char *subpath = NULL; @@ -2641,7 +2954,7 @@ flatpak_context_export (FlatpakContext *context, /* xdg-user-dirs sets disabled dirs to $HOME, and its in general not a good idea to set full access to $HOME other than explicitly, so we ignore these */ - g_debug ("Xdg dir %s is $HOME (i.e. disabled), ignoring", filesystem); + g_info ("Xdg dir %s is $HOME (i.e. disabled), ignoring", filesystem); continue; } @@ -2650,7 +2963,7 @@ flatpak_context_export (FlatpakContext *context, if (mode == FLATPAK_FILESYSTEM_MODE_CREATE && do_create) { if (g_mkdir_with_parents (subpath, 0755) != 0) - g_debug ("Unable to create directory %s", subpath); + g_info ("Unable to create directory %s", subpath); } if (g_file_test (subpath, G_FILE_TEST_EXISTS)) @@ -2675,7 +2988,7 @@ flatpak_context_export (FlatpakContext *context, if (mode == FLATPAK_FILESYSTEM_MODE_CREATE && do_create) { if (g_mkdir_with_parents (path, 0755) != 0) - g_debug ("Unable to create directory %s", path); + g_info ("Unable to create directory %s", path); } if (!flatpak_exports_add_path_expose_or_hide (exports, mode, path, &local_error)) @@ -2689,7 +3002,7 @@ flatpak_context_export (FlatpakContext *context, if (mode == FLATPAK_FILESYSTEM_MODE_CREATE && do_create) { if (g_mkdir_with_parents (filesystem, 0755) != 0) - g_debug ("Unable to create directory %s", filesystem); + g_info ("Unable to create directory %s", filesystem); } if (!flatpak_exports_add_path_expose_or_hide (exports, mode, filesystem, &local_error)) @@ -2759,6 +3072,15 @@ flatpak_context_export (FlatpakContext *context, } } +GFile * +flatpak_get_data_dir (const char *app_id) +{ + g_autoptr(GFile) home = g_file_new_for_path (g_get_home_dir ()); + g_autoptr(GFile) var_app = g_file_resolve_relative_path (home, ".var/app"); + + return g_file_get_child (var_app, app_id); +} + FlatpakExports * flatpak_context_get_exports (FlatpakContext *context, const char *app_id) @@ -2834,6 +3156,37 @@ flatpak_context_get_exports_full (FlatpakContext *context, return g_steal_pointer (&exports); } +static void +flatpak_context_apply_env_appid (FlatpakBwrap *bwrap, + GFile *app_dir) +{ + g_autoptr(GFile) app_dir_data = NULL; + g_autoptr(GFile) app_dir_config = NULL; + g_autoptr(GFile) app_dir_cache = NULL; + g_autoptr(GFile) app_dir_state = NULL; + + app_dir_data = g_file_get_child (app_dir, "data"); + app_dir_config = g_file_get_child (app_dir, "config"); + app_dir_cache = g_file_get_child (app_dir, "cache"); + /* Yes, this is inconsistent with data, config and cache. However, using + * this path lets apps provide backwards-compatibility with older Flatpak + * versions by using `--persist=.local/state --unset-env=XDG_STATE_DIR`. */ + app_dir_state = g_file_get_child (app_dir, ".local/state"); + flatpak_bwrap_set_env (bwrap, "XDG_DATA_HOME", flatpak_file_get_path_cached (app_dir_data), TRUE); + flatpak_bwrap_set_env (bwrap, "XDG_CONFIG_HOME", flatpak_file_get_path_cached (app_dir_config), TRUE); + flatpak_bwrap_set_env (bwrap, "XDG_CACHE_HOME", flatpak_file_get_path_cached (app_dir_cache), TRUE); + flatpak_bwrap_set_env (bwrap, "XDG_STATE_HOME", flatpak_file_get_path_cached (app_dir_state), TRUE); + + if (g_getenv ("XDG_DATA_HOME")) + flatpak_bwrap_set_env (bwrap, "HOST_XDG_DATA_HOME", g_getenv ("XDG_DATA_HOME"), TRUE); + if (g_getenv ("XDG_CONFIG_HOME")) + flatpak_bwrap_set_env (bwrap, "HOST_XDG_CONFIG_HOME", g_getenv ("XDG_CONFIG_HOME"), TRUE); + if (g_getenv ("XDG_CACHE_HOME")) + flatpak_bwrap_set_env (bwrap, "HOST_XDG_CACHE_HOME", g_getenv ("XDG_CACHE_HOME"), TRUE); + if (g_getenv ("XDG_STATE_HOME")) + flatpak_bwrap_set_env (bwrap, "HOST_XDG_STATE_HOME", g_getenv ("XDG_STATE_HOME"), TRUE); +} + /* This creates zero or more directories unders base_fd+basedir, each * being guaranteed to either exist and be a directory (no symlinks) * or be created as a directory. The last directory is opened @@ -2931,7 +3284,7 @@ flatpak_context_append_bwrap_filesystem (FlatpakContext *context, gpointer key, value; if (app_id_dir != NULL) - flatpak_run_apply_env_appid (bwrap, app_id_dir); + flatpak_context_apply_env_appid (bwrap, app_id_dir); if (!home_access) { @@ -2963,7 +3316,7 @@ flatpak_context_append_bwrap_filesystem (FlatpakContext *context, g_autofree char *src_via_proc = g_strdup_printf ("%d", src_fd); - flatpak_bwrap_add_fd (bwrap, glnx_steal_fd (&src_fd)); + flatpak_bwrap_add_fd (bwrap, g_steal_fd (&src_fd)); flatpak_bwrap_add_bind_arg (bwrap, "--bind-fd", src_via_proc, dest); } } @@ -3047,3 +3400,111 @@ flatpak_context_append_bwrap_filesystem (FlatpakContext *context, xdg_dirs_conf, strlen (xdg_dirs_conf), path, NULL); } } + +gboolean +flatpak_context_get_allowed_exports (FlatpakContext *context, + const char *source_path, + const char *app_id, + char ***allowed_extensions_out, + char ***allowed_prefixes_out, + gboolean *require_exact_match_out) +{ + g_autoptr(GPtrArray) allowed_extensions = g_ptr_array_new_with_free_func (g_free); + g_autoptr(GPtrArray) allowed_prefixes = g_ptr_array_new_with_free_func (g_free); + gboolean require_exact_match = FALSE; + + g_ptr_array_add (allowed_prefixes, g_strdup_printf ("%s.*", app_id)); + + if (strcmp (source_path, "share/applications") == 0) + { + g_ptr_array_add (allowed_extensions, g_strdup (".desktop")); + } + else if (flatpak_has_path_prefix (source_path, "share/icons")) + { + g_ptr_array_add (allowed_extensions, g_strdup (".svgz")); + g_ptr_array_add (allowed_extensions, g_strdup (".png")); + g_ptr_array_add (allowed_extensions, g_strdup (".svg")); + g_ptr_array_add (allowed_extensions, g_strdup (".ico")); + } + else if (strcmp (source_path, "share/dbus-1/services") == 0) + { + g_auto(GStrv) owned_dbus_names = flatpak_context_get_session_bus_policy_allowed_own_names (context); + + g_ptr_array_add (allowed_extensions, g_strdup (".service")); + + for (GStrv iter = owned_dbus_names; *iter != NULL; ++iter) + g_ptr_array_add (allowed_prefixes, g_strdup (*iter)); + + /* We need an exact match with no extra garbage, because the filename refers to busnames + * and we can *only* match exactly these */ + require_exact_match = TRUE; + } + else if (strcmp (source_path, "share/gnome-shell/search-providers") == 0) + { + g_ptr_array_add (allowed_extensions, g_strdup (".ini")); + } + else if (strcmp (source_path, "share/krunner/dbusplugins") == 0) + { + g_ptr_array_add (allowed_extensions, g_strdup (".desktop")); + } + else if (strcmp (source_path, "share/mime/packages") == 0) + { + g_ptr_array_add (allowed_extensions, g_strdup (".xml")); + } + else if (strcmp (source_path, "share/metainfo") == 0 || + strcmp (source_path, "share/appdata") == 0) + { + g_ptr_array_add (allowed_extensions, g_strdup (".xml")); + } + else + return FALSE; + + g_ptr_array_add (allowed_extensions, NULL); + g_ptr_array_add (allowed_prefixes, NULL); + + if (allowed_extensions_out) + *allowed_extensions_out = (char **) g_ptr_array_free (g_steal_pointer (&allowed_extensions), FALSE); + + if (allowed_prefixes_out) + *allowed_prefixes_out = (char **) g_ptr_array_free (g_steal_pointer (&allowed_prefixes), FALSE); + + if (require_exact_match_out) + *require_exact_match_out = require_exact_match; + + return TRUE; +} + +void +flatpak_context_dump (FlatpakContext *context, + const char *title) +{ + if (flatpak_is_debugging ()) + { + g_autoptr(GError) local_error = NULL; + g_autoptr(GKeyFile) metakey = NULL; + g_autofree char *data = NULL; + char *saveptr = NULL; + const char *line; + + metakey = g_key_file_new (); + flatpak_context_save_metadata (context, FALSE, metakey); + + data = g_key_file_to_data (metakey, NULL, &local_error); + + if (data == NULL) + { + g_debug ("%s: (unable to serialize: %s)", + title, local_error->message); + return; + } + + g_debug ("%s:", title); + + for (line = strtok_r (data, "\n", &saveptr); + line != NULL; + line = strtok_r (NULL, "\n", &saveptr)) + g_debug ("\t%s", line); + + g_debug ("\t#"); + } +} diff --git a/common/flatpak-dir-private.h b/common/flatpak-dir-private.h index 39be066..871f40b 100644 --- a/common/flatpak-dir-private.h +++ b/common/flatpak-dir-private.h @@ -58,47 +58,8 @@ GType flatpak_dir_get_type (void); GType flatpak_deploy_get_type (void); -#define FLATPAK_REF_GROUP "Flatpak Ref" -#define FLATPAK_REF_VERSION_KEY "Version" -#define FLATPAK_REF_URL_KEY "Url" -#define FLATPAK_REF_RUNTIME_REPO_KEY "RuntimeRepo" -#define FLATPAK_REF_SUGGEST_REMOTE_NAME_KEY "SuggestRemoteName" -#define FLATPAK_REF_TITLE_KEY "Title" -#define FLATPAK_REF_GPGKEY_KEY "GPGKey" -#define FLATPAK_REF_IS_RUNTIME_KEY "IsRuntime" -#define FLATPAK_REF_NAME_KEY "Name" -#define FLATPAK_REF_BRANCH_KEY "Branch" -#define FLATPAK_REF_COLLECTION_ID_KEY "CollectionID" -#define FLATPAK_REF_DEPLOY_COLLECTION_ID_KEY "DeployCollectionID" -#define FLATPAK_REF_DEPLOY_SIDELOAD_COLLECTION_ID_KEY "DeploySideloadCollectionID" - -#define FLATPAK_REPO_GROUP "Flatpak Repo" -#define FLATPAK_REPO_VERSION_KEY "Version" -#define FLATPAK_REPO_URL_KEY "Url" -#define FLATPAK_REPO_SUBSET_KEY "Subset" -#define FLATPAK_REPO_TITLE_KEY "Title" -#define FLATPAK_REPO_DEFAULT_BRANCH_KEY "DefaultBranch" -#define FLATPAK_REPO_GPGKEY_KEY "GPGKey" -#define FLATPAK_REPO_NODEPS_KEY "NoDeps" -#define FLATPAK_REPO_COMMENT_KEY "Comment" -#define FLATPAK_REPO_DESCRIPTION_KEY "Description" -#define FLATPAK_REPO_HOMEPAGE_KEY "Homepage" -#define FLATPAK_REPO_ICON_KEY "Icon" -#define FLATPAK_REPO_FILTER_KEY "Filter" -#define FLATPAK_REPO_AUTHENTICATOR_NAME_KEY "AuthenticatorName" -#define FLATPAK_REPO_AUTHENTICATOR_INSTALL_KEY "AuthenticatorInstall" - -#define FLATPAK_REPO_COLLECTION_ID_KEY "CollectionID" -#define FLATPAK_REPO_DEPLOY_COLLECTION_ID_KEY "DeployCollectionID" -#define FLATPAK_REPO_DEPLOY_SIDELOAD_COLLECTION_ID_KEY "DeploySideloadCollectionID" - #define FLATPAK_CLI_UPDATE_INTERVAL_MS 300 -#define FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE "eol" -#define FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE_REBASE "eolr" -#define FLATPAK_SPARSE_CACHE_KEY_TOKEN_TYPE "tokt" -#define FLATPAK_SPARSE_CACHE_KEY_EXTRA_DATA_SIZE "eds" - typedef struct { FlatpakDecomposed *ref; @@ -360,6 +321,12 @@ typedef enum { FLATPAK_DIR_STORAGE_TYPE_NETWORK, } FlatpakDirStorageType; +typedef enum { + FLATPAK_DIR_FILTER_NONE = 0, + FLATPAK_DIR_FILTER_EOL = 1 << 0, + FLATPAK_DIR_FILTER_AUTOPRUNE = 1 << 1, +} FlatpakDirFilterFlags; + typedef enum { FIND_MATCHING_REFS_FLAGS_NONE = 0, FIND_MATCHING_REFS_FLAGS_FUZZY = (1 << 0), @@ -379,26 +346,9 @@ GQuark flatpak_dir_error_quark (void); #define FLATPAK_DEPLOY_DATA_GVARIANT_STRING "(ssasta{sv})" #define FLATPAK_DEPLOY_DATA_GVARIANT_FORMAT G_VARIANT_TYPE (FLATPAK_DEPLOY_DATA_GVARIANT_STRING) -/** - * FLATPAK_SUMMARY_INDEX_GVARIANT_FORMAT: - * - * dict - * s: subset name - * -> - * ay - checksum of subsummary - * aay - previous subsummary checksums - * a{sv} - per subset metadata - * a{sv} - metadata - - */ -#define FLATPAK_SUMMARY_INDEX_GVARIANT_STRING "(a{s(ayaaya{sv})}a{sv})" -#define FLATPAK_SUMMARY_INDEX_GVARIANT_FORMAT G_VARIANT_TYPE (FLATPAK_SUMMARY_INDEX_GVARIANT_STRING) - - GPtrArray *flatpak_get_system_base_dir_locations (GCancellable *cancellable, GError **error); GFile * flatpak_get_system_default_base_dir_location (void); -GFile * flatpak_get_user_base_dir_location (void); GKeyFile * flatpak_load_override_keyfile (const char *app_id, gboolean user, @@ -1050,7 +1000,7 @@ char ** flatpak_dir_list_unused_refs (Fla GHashTable *metadata_injection, GHashTable *eol_injection, const char * const *refs_to_exclude, - gboolean filter_by_eol, + FlatpakDirFilterFlags filter_flags, GCancellable *cancellable, GError **error); diff --git a/common/flatpak-dir-utils-private.h b/common/flatpak-dir-utils-private.h new file mode 100644 index 0000000..4516a88 --- /dev/null +++ b/common/flatpak-dir-utils-private.h @@ -0,0 +1,85 @@ +/* + * Copyright © 2014 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + */ + +#pragma once + +#include "libglnx.h" + +#include "flatpak-ref-utils-private.h" + +G_BEGIN_DECLS + +typedef struct +{ + char *id; + char *installed_id; + char *commit; + FlatpakDecomposed *ref; + char *directory; + char *files_path; + char *subdir_suffix; + char *add_ld_path; + char **merge_dirs; + int priority; + gboolean needs_tmpfs; + gboolean is_unmaintained; +} FlatpakExtension; + +void flatpak_extension_free (FlatpakExtension *extension); + +FlatpakDecomposed *flatpak_find_current_ref (const char *app_id, + GCancellable *cancellable, + GError **error); +GFile *flatpak_find_deploy_dir_for_ref (FlatpakDecomposed *ref, + FlatpakDir **dir_out, + GCancellable *cancellable, + GError **error); +GFile * flatpak_find_files_dir_for_ref (FlatpakDecomposed *ref, + GCancellable *cancellable, + GError **error); +GFile * flatpak_find_unmaintained_extension_dir_if_exists (const char *name, + const char *arch, + const char *branch, + GCancellable *cancellable); +FlatpakDeploy * flatpak_find_deploy_for_ref_in (GPtrArray *dirs, + const char *ref, + const char *commit, + GCancellable *cancellable, + GError **error); +FlatpakDeploy * flatpak_find_deploy_for_ref (const char *ref, + const char *commit, + FlatpakDir *opt_user_dir, + GCancellable *cancellable, + GError **error); +char ** flatpak_list_deployed_refs (const char *type, + const char *name_prefix, + const char *arch, + const char *branch, + GCancellable *cancellable, + GError **error); +char ** flatpak_list_unmaintained_refs (const char *name_prefix, + const char *branch, + const char *arch, + GCancellable *cancellable, + GError **error); +GList *flatpak_list_extensions (GKeyFile *metakey, + const char *arch, + const char *branch); + +void flatpak_log_dir_access (FlatpakDir *dir); + +G_END_DECLS diff --git a/common/flatpak-dir-utils.c b/common/flatpak-dir-utils.c new file mode 100644 index 0000000..e34b950 --- /dev/null +++ b/common/flatpak-dir-utils.c @@ -0,0 +1,586 @@ +/* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: + * Copyright © 1995-1998 Free Software Foundation, Inc. + * Copyright © 2014-2019 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + */ + +#include "config.h" +#include "flatpak-dir-utils-private.h" + +#include + +#include "flatpak-dir-private.h" +#include "flatpak-metadata-private.h" +#include "flatpak-utils-private.h" + +char ** +flatpak_list_deployed_refs (const char *type, + const char *name_prefix, + const char *arch, + const char *branch, + GCancellable *cancellable, + GError **error) +{ + gchar **ret = NULL; + g_autoptr(GPtrArray) names = NULL; + g_autoptr(GHashTable) hash = NULL; + g_autoptr(FlatpakDir) user_dir = NULL; + g_autoptr(GPtrArray) system_dirs = NULL; + int i; + + hash = g_hash_table_new_full ((GHashFunc)flatpak_decomposed_hash, (GEqualFunc)flatpak_decomposed_equal, (GDestroyNotify)flatpak_decomposed_unref, NULL); + + user_dir = flatpak_dir_get_user (); + system_dirs = flatpak_dir_get_system_list (cancellable, error); + if (system_dirs == NULL) + goto out; + + if (!flatpak_dir_collect_deployed_refs (user_dir, type, name_prefix, + arch, branch, hash, cancellable, + error)) + goto out; + + for (i = 0; i < system_dirs->len; i++) + { + FlatpakDir *system_dir = g_ptr_array_index (system_dirs, i); + if (!flatpak_dir_collect_deployed_refs (system_dir, type, name_prefix, + arch, branch, hash, cancellable, + error)) + goto out; + } + + names = g_ptr_array_new (); + + GLNX_HASH_TABLE_FOREACH (hash, FlatpakDecomposed *, ref) + { + g_ptr_array_add (names, flatpak_decomposed_dup_id (ref)); + } + + g_ptr_array_sort (names, flatpak_strcmp0_ptr); + g_ptr_array_add (names, NULL); + + ret = (char **) g_ptr_array_free (names, FALSE); + names = NULL; + +out: + return ret; +} + +char ** +flatpak_list_unmaintained_refs (const char *name_prefix, + const char *arch, + const char *branch, + GCancellable *cancellable, + GError **error) +{ + gchar **ret = NULL; + g_autoptr(GPtrArray) names = NULL; + g_autoptr(GHashTable) hash = NULL; + g_autoptr(FlatpakDir) user_dir = NULL; + const char *key; + GHashTableIter iter; + g_autoptr(GPtrArray) system_dirs = NULL; + int i; + + hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); + + user_dir = flatpak_dir_get_user (); + + if (!flatpak_dir_collect_unmaintained_refs (user_dir, name_prefix, + arch, branch, hash, cancellable, + error)) + return NULL; + + system_dirs = flatpak_dir_get_system_list (cancellable, error); + if (system_dirs == NULL) + return NULL; + + for (i = 0; i < system_dirs->len; i++) + { + FlatpakDir *system_dir = g_ptr_array_index (system_dirs, i); + + if (!flatpak_dir_collect_unmaintained_refs (system_dir, name_prefix, + arch, branch, hash, cancellable, + error)) + return NULL; + } + + names = g_ptr_array_new (); + g_hash_table_iter_init (&iter, hash); + while (g_hash_table_iter_next (&iter, (gpointer *) &key, NULL)) + g_ptr_array_add (names, g_strdup (key)); + + g_ptr_array_sort (names, flatpak_strcmp0_ptr); + g_ptr_array_add (names, NULL); + + ret = (char **) g_ptr_array_free (names, FALSE); + names = NULL; + + return ret; +} + +GFile * +flatpak_find_deploy_dir_for_ref (FlatpakDecomposed *ref, + FlatpakDir **dir_out, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(FlatpakDir) user_dir = NULL; + g_autoptr(GPtrArray) system_dirs = NULL; + FlatpakDir *dir = NULL; + g_autoptr(GFile) deploy = NULL; + + user_dir = flatpak_dir_get_user (); + system_dirs = flatpak_dir_get_system_list (cancellable, error); + if (system_dirs == NULL) + return NULL; + + dir = user_dir; + deploy = flatpak_dir_get_if_deployed (dir, ref, NULL, cancellable); + if (deploy == NULL) + { + int i; + for (i = 0; deploy == NULL && i < system_dirs->len; i++) + { + dir = g_ptr_array_index (system_dirs, i); + deploy = flatpak_dir_get_if_deployed (dir, ref, NULL, cancellable); + if (deploy != NULL) + break; + } + } + + if (deploy == NULL) + { + flatpak_fail_error (error, FLATPAK_ERROR_NOT_INSTALLED, _("%s not installed"), flatpak_decomposed_get_ref (ref)); + return NULL; + } + + if (dir_out) + *dir_out = g_object_ref (dir); + return g_steal_pointer (&deploy); +} + +GFile * +flatpak_find_files_dir_for_ref (FlatpakDecomposed *ref, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GFile) deploy = NULL; + + deploy = flatpak_find_deploy_dir_for_ref (ref, NULL, cancellable, error); + if (deploy == NULL) + return NULL; + + return g_file_get_child (deploy, "files"); +} + +GFile * +flatpak_find_unmaintained_extension_dir_if_exists (const char *name, + const char *arch, + const char *branch, + GCancellable *cancellable) +{ + g_autoptr(FlatpakDir) user_dir = NULL; + g_autoptr(GFile) extension_dir = NULL; + g_autoptr(GError) local_error = NULL; + + user_dir = flatpak_dir_get_user (); + + extension_dir = flatpak_dir_get_unmaintained_extension_dir_if_exists (user_dir, name, arch, branch, cancellable); + if (extension_dir == NULL) + { + g_autoptr(GPtrArray) system_dirs = NULL; + int i; + + system_dirs = flatpak_dir_get_system_list (cancellable, &local_error); + if (system_dirs == NULL) + { + g_warning ("Could not get the system installations: %s", local_error->message); + return NULL; + } + + for (i = 0; i < system_dirs->len; i++) + { + FlatpakDir *system_dir = g_ptr_array_index (system_dirs, i); + extension_dir = flatpak_dir_get_unmaintained_extension_dir_if_exists (system_dir, name, arch, branch, cancellable); + if (extension_dir != NULL) + break; + } + } + + if (extension_dir == NULL) + return NULL; + + return g_steal_pointer (&extension_dir); +} + +FlatpakDecomposed * +flatpak_find_current_ref (const char *app_id, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(FlatpakDecomposed) current_ref = NULL; + g_autoptr(FlatpakDir) user_dir = flatpak_dir_get_user (); + int i; + + current_ref = flatpak_dir_current_ref (user_dir, app_id, NULL); + if (current_ref == NULL) + { + g_autoptr(GPtrArray) system_dirs = NULL; + + system_dirs = flatpak_dir_get_system_list (cancellable, error); + if (system_dirs == NULL) + return FALSE; + + for (i = 0; i < system_dirs->len; i++) + { + FlatpakDir *dir = g_ptr_array_index (system_dirs, i); + current_ref = flatpak_dir_current_ref (dir, app_id, cancellable); + if (current_ref != NULL) + break; + } + } + + if (current_ref) + return g_steal_pointer (¤t_ref); + + flatpak_fail_error (error, FLATPAK_ERROR_NOT_INSTALLED, _("%s not installed"), app_id); + return NULL; +} + +FlatpakDeploy * +flatpak_find_deploy_for_ref_in (GPtrArray *dirs, + const char *ref_str, + const char *commit, + GCancellable *cancellable, + GError **error) +{ + FlatpakDeploy *deploy = NULL; + int i; + g_autoptr(GError) my_error = NULL; + + g_autoptr(FlatpakDecomposed) ref = flatpak_decomposed_new_from_ref (ref_str, error); + if (ref == NULL) + return NULL; + + for (i = 0; deploy == NULL && i < dirs->len; i++) + { + FlatpakDir *dir = g_ptr_array_index (dirs, i); + + flatpak_log_dir_access (dir); + g_clear_error (&my_error); + deploy = flatpak_dir_load_deployed (dir, ref, commit, cancellable, &my_error); + } + + if (deploy == NULL) + g_propagate_error (error, g_steal_pointer (&my_error)); + + return deploy; +} + +FlatpakDeploy * +flatpak_find_deploy_for_ref (const char *ref, + const char *commit, + FlatpakDir *opt_user_dir, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GPtrArray) dirs = NULL; + + dirs = flatpak_dir_get_system_list (cancellable, error); + if (dirs == NULL) + return NULL; + + /* If an custom dir was passed, use that instead of the user dir. + * This is used when running apply-extra-data where if the target + * is a custom installation location the regular user one may not + * have the (possibly just installed in this transaction) runtime. + */ + if (opt_user_dir) + g_ptr_array_insert (dirs, 0, g_object_ref (opt_user_dir)); + else + g_ptr_array_insert (dirs, 0, flatpak_dir_get_user ()); + + return flatpak_find_deploy_for_ref_in (dirs, ref, commit, cancellable, error); +} + +void +flatpak_extension_free (FlatpakExtension *extension) +{ + g_free (extension->id); + g_free (extension->installed_id); + g_free (extension->commit); + flatpak_decomposed_unref (extension->ref); + g_free (extension->directory); + g_free (extension->files_path); + g_free (extension->add_ld_path); + g_free (extension->subdir_suffix); + g_strfreev (extension->merge_dirs); + g_free (extension); +} + +static int +flatpak_extension_compare (gconstpointer _a, + gconstpointer _b) +{ + const FlatpakExtension *a = _a; + const FlatpakExtension *b = _b; + + return b->priority - a->priority; +} + +static FlatpakExtension * +flatpak_extension_new (const char *id, + const char *extension, + FlatpakDecomposed *ref, + const char *directory, + const char *add_ld_path, + const char *subdir_suffix, + char **merge_dirs, + GFile *files, + GFile *deploy_dir, + gboolean is_unmaintained, + OstreeRepo *repo) +{ + FlatpakExtension *ext = g_new0 (FlatpakExtension, 1); + g_autoptr(GBytes) deploy_data = NULL; + + ext->id = g_strdup (id); + ext->installed_id = g_strdup (extension); + ext->ref = flatpak_decomposed_ref (ref); + ext->directory = g_strdup (directory); + ext->files_path = g_file_get_path (files); + ext->add_ld_path = g_strdup (add_ld_path); + ext->subdir_suffix = g_strdup (subdir_suffix); + ext->merge_dirs = g_strdupv (merge_dirs); + ext->is_unmaintained = is_unmaintained; + + /* Unmaintained extensions won't have a deploy or commit; see + * https://github.com/flatpak/flatpak/issues/167 */ + if (deploy_dir && !is_unmaintained) + { + deploy_data = flatpak_load_deploy_data (deploy_dir, ref, repo, FLATPAK_DEPLOY_VERSION_ANY, NULL, NULL); + if (deploy_data) + ext->commit = g_strdup (flatpak_deploy_data_get_commit (deploy_data)); + } + + if (is_unmaintained) + ext->priority = 1000; + else + { + g_autoptr(GKeyFile) keyfile = g_key_file_new (); + g_autofree char *metadata_path = g_build_filename (ext->files_path, "../metadata", NULL); + + if (g_key_file_load_from_file (keyfile, metadata_path, G_KEY_FILE_NONE, NULL)) + ext->priority = g_key_file_get_integer (keyfile, + FLATPAK_METADATA_GROUP_EXTENSION_OF, + FLATPAK_METADATA_KEY_PRIORITY, + NULL); + } + + return ext; +} + +static GList * +add_extension (GKeyFile *metakey, + const char *group, + const char *extension, + const char *arch, + const char *branch, + GList *res) +{ + FlatpakExtension *ext; + g_autofree char *directory = g_key_file_get_string (metakey, group, + FLATPAK_METADATA_KEY_DIRECTORY, + NULL); + g_autofree char *add_ld_path = g_key_file_get_string (metakey, group, + FLATPAK_METADATA_KEY_ADD_LD_PATH, + NULL); + g_auto(GStrv) merge_dirs = g_key_file_get_string_list (metakey, group, + FLATPAK_METADATA_KEY_MERGE_DIRS, + NULL, NULL); + g_autofree char *enable_if = g_key_file_get_string (metakey, group, + FLATPAK_METADATA_KEY_ENABLE_IF, + NULL); + g_autofree char *subdir_suffix = g_key_file_get_string (metakey, group, + FLATPAK_METADATA_KEY_SUBDIRECTORY_SUFFIX, + NULL); + g_autoptr(FlatpakDecomposed) ref = NULL; + gboolean is_unmaintained = FALSE; + g_autoptr(GFile) files = NULL; + g_autoptr(GFile) deploy_dir = NULL; + g_autoptr(FlatpakDir) dir = NULL; + + if (directory == NULL) + return res; + + ref = flatpak_decomposed_new_from_parts (FLATPAK_KINDS_RUNTIME, extension, arch, branch, NULL); + if (ref == NULL) + return res; + + files = flatpak_find_unmaintained_extension_dir_if_exists (extension, arch, branch, NULL); + + if (files == NULL) + { + deploy_dir = flatpak_find_deploy_dir_for_ref (ref, &dir, NULL, NULL); + if (deploy_dir) + files = g_file_get_child (deploy_dir, "files"); + } + else + is_unmaintained = TRUE; + + /* Prefer a full extension (org.freedesktop.Locale) over subdirectory ones (org.freedesktop.Locale.sv) */ + if (files != NULL) + { + if (flatpak_extension_matches_reason (extension, enable_if, TRUE)) + { + ext = flatpak_extension_new (extension, extension, ref, directory, + add_ld_path, subdir_suffix, merge_dirs, + files, deploy_dir, is_unmaintained, + is_unmaintained ? NULL : flatpak_dir_get_repo (dir)); + res = g_list_prepend (res, ext); + } + } + else if (g_key_file_get_boolean (metakey, group, + FLATPAK_METADATA_KEY_SUBDIRECTORIES, NULL)) + { + g_autofree char *prefix = g_strconcat (extension, ".", NULL); + g_auto(GStrv) ids = NULL; + g_auto(GStrv) unmaintained_refs = NULL; + int j; + + ids = flatpak_list_deployed_refs ("runtime", prefix, arch, branch, + NULL, NULL); + for (j = 0; ids != NULL && ids[j] != NULL; j++) + { + const char *id = ids[j]; + g_autofree char *extended_dir = g_build_filename (directory, id + strlen (prefix), NULL); + g_autoptr(FlatpakDecomposed) dir_ref = NULL; + g_autoptr(GFile) subdir_deploy_dir = NULL; + g_autoptr(GFile) subdir_files = NULL; + g_autoptr(FlatpakDir) subdir_dir = NULL; + + dir_ref = flatpak_decomposed_new_from_parts (FLATPAK_KINDS_RUNTIME, id, arch, branch, NULL); + if (dir_ref == NULL) + continue; + + subdir_deploy_dir = flatpak_find_deploy_dir_for_ref (dir_ref, &subdir_dir, NULL, NULL); + if (subdir_deploy_dir) + subdir_files = g_file_get_child (subdir_deploy_dir, "files"); + + if (subdir_files && flatpak_extension_matches_reason (id, enable_if, TRUE)) + { + ext = flatpak_extension_new (extension, id, dir_ref, extended_dir, + add_ld_path, subdir_suffix, merge_dirs, + subdir_files, subdir_deploy_dir, FALSE, + flatpak_dir_get_repo (subdir_dir)); + ext->needs_tmpfs = TRUE; + res = g_list_prepend (res, ext); + } + } + + unmaintained_refs = flatpak_list_unmaintained_refs (prefix, arch, branch, + NULL, NULL); + for (j = 0; unmaintained_refs != NULL && unmaintained_refs[j] != NULL; j++) + { + g_autofree char *extended_dir = g_build_filename (directory, unmaintained_refs[j] + strlen (prefix), NULL); + g_autoptr(FlatpakDecomposed) dir_ref = NULL; + g_autoptr(GFile) subdir_files = flatpak_find_unmaintained_extension_dir_if_exists (unmaintained_refs[j], arch, branch, NULL); + + dir_ref = flatpak_decomposed_new_from_parts (FLATPAK_KINDS_RUNTIME, unmaintained_refs[j], arch, branch, NULL); + if (dir_ref == NULL) + continue; + + if (subdir_files && flatpak_extension_matches_reason (unmaintained_refs[j], enable_if, TRUE)) + { + ext = flatpak_extension_new (extension, unmaintained_refs[j], dir_ref, + extended_dir, add_ld_path, subdir_suffix, + merge_dirs, subdir_files, NULL, TRUE, NULL); + ext->needs_tmpfs = TRUE; + res = g_list_prepend (res, ext); + } + } + } + + return res; +} + +GList * +flatpak_list_extensions (GKeyFile *metakey, + const char *arch, + const char *default_branch) +{ + g_auto(GStrv) groups = NULL; + int i, j; + GList *res; + + res = NULL; + + if (arch == NULL) + arch = flatpak_get_arch (); + + groups = g_key_file_get_groups (metakey, NULL); + for (i = 0; groups[i] != NULL; i++) + { + char *extension; + + if (g_str_has_prefix (groups[i], FLATPAK_METADATA_GROUP_PREFIX_EXTENSION) && + *(extension = (groups[i] + strlen (FLATPAK_METADATA_GROUP_PREFIX_EXTENSION))) != 0) + { + g_autofree char *version = g_key_file_get_string (metakey, groups[i], + FLATPAK_METADATA_KEY_VERSION, + NULL); + g_auto(GStrv) versions = g_key_file_get_string_list (metakey, groups[i], + FLATPAK_METADATA_KEY_VERSIONS, + NULL, NULL); + g_autofree char *name = NULL; + const char *default_branches[] = { default_branch, NULL}; + const char **branches; + + flatpak_parse_extension_with_tag (extension, &name, NULL); + + if (versions) + branches = (const char **) versions; + else + { + if (version) + default_branches[0] = version; + branches = default_branches; + } + + for (j = 0; branches[j] != NULL; j++) + res = add_extension (metakey, groups[i], name, arch, branches[j], res); + } + } + + return g_list_sort (g_list_reverse (res), flatpak_extension_compare); +} + +void +flatpak_log_dir_access (FlatpakDir *dir) +{ + if (dir != NULL) + { + GFile *dir_path = NULL; + g_autofree char *dir_path_str = NULL; + g_autofree char *dir_name = NULL; + + dir_path = flatpak_dir_get_path (dir); + if (dir_path != NULL) + dir_path_str = g_file_get_path (dir_path); + dir_name = flatpak_dir_get_name (dir); + g_info ("Opening %s flatpak installation at path %s", dir_name, dir_path_str); + } +} diff --git a/common/flatpak-dir.c b/common/flatpak-dir.c index e20bec8..6936d45 100644 --- a/common/flatpak-dir.c +++ b/common/flatpak-dir.c @@ -49,13 +49,17 @@ #include "flatpak-appdata-private.h" #include "flatpak-dir-private.h" +#include "flatpak-dir-utils-private.h" #include "flatpak-error.h" +#include "flatpak-locale-utils-private.h" #include "flatpak-oci-registry-private.h" #include "flatpak-ref.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-run-private.h" #include "flatpak-utils-base-private.h" #include "flatpak-variant-private.h" #include "flatpak-variant-impl-private.h" +#include "flatpak-xml-utils-private.h" #include "libglnx.h" #include "system-helper/flatpak-system-helper.h" @@ -76,11 +80,14 @@ #define SYSCONF_INSTALLATIONS_DIR "installations.d" #define SYSCONF_INSTALLATIONS_FILE_EXT ".conf" -#define SYSCONF_REMOTES_DIR "remotes.d" -#define SYSCONF_REMOTES_FILE_EXT ".flatpakrepo" + +#define FLATPAK_REMOTES_DIR "remotes.d" +#define FLATPAK_REMOTES_FILE_EXT ".flatpakrepo" #define SIDELOAD_REPOS_DIR_NAME "sideload-repos" +#define FLATPAK_TRIGGERS_DIR "triggers" + #ifdef USE_SYSTEM_HELPER /* This uses a weird Auto prefix to avoid conflicts with later added polkit types. */ @@ -303,6 +310,25 @@ get_config_dir_location (void) return (const char *) path; } +static const char * +get_data_dir_location (void) +{ + static gsize path = 0; + + if (g_once_init_enter (&path)) + { + gsize setup_value = 0; + const char *data_dir = g_getenv ("FLATPAK_DATA_DIR"); + if (data_dir != NULL) + setup_value = (gsize) data_dir; + else + setup_value = (gsize) FLATPAK_DATADIR; + g_once_init_leave (&path, setup_value); + } + + return (const char *) path; +} + static const char * get_run_dir_location (void) { @@ -431,14 +457,14 @@ flatpak_remote_state_add_sideload_repo (FlatpakRemoteState *self, /* We expect to hit this code path when the repo is providing things * from other remotes */ - g_debug ("Sideload repo at path %s not valid for remote %s: %s", - flatpak_file_get_path_cached (dir), self->remote_name, local_error->message); + g_info ("Sideload repo at path %s not valid for remote %s: %s", + flatpak_file_get_path_cached (dir), self->remote_name, local_error->message); flatpak_sideload_state_free (ss); } else { g_ptr_array_add (self->sideload_repos, ss); - g_debug ("Using sideloaded repo %s for remote %s", flatpak_file_get_path_cached (dir), self->remote_name); + g_info ("Using sideloaded repo %s for remote %s", flatpak_file_get_path_cached (dir), self->remote_name); } } } @@ -740,7 +766,7 @@ flatpak_remote_state_lookup_ref (FlatpakRemoteState *self, if (!flatpak_remote_state_allow_ref (self, ref)) { return flatpak_fail_error (error, FLATPAK_ERROR_REF_NOT_FOUND, - _("No entry for %s in remote '%s' summary flatpak cache "), + _("No entry for %s in remote %s summary flatpak cache"), ref, self->remote_name); } @@ -809,7 +835,7 @@ flatpak_remote_state_match_subrefs (FlatpakRemoteState *self, if (self->summary == NULL && self->index == NULL) { - g_debug ("flatpak_remote_state_match_subrefs with no summary"); + g_info ("flatpak_remote_state_match_subrefs with no summary"); return g_ptr_array_new_with_free_func ((GDestroyNotify)flatpak_decomposed_unref); } @@ -877,7 +903,7 @@ flatpak_remote_state_lookup_cache (FlatpakRemoteState *self, summary_v = get_summary_for_ref (self, ref); if (summary_v == NULL) return flatpak_fail_error (error, FLATPAK_ERROR_REF_NOT_FOUND, - _("No entry for %s in remote '%s' summary flatpak cache "), + _("No entry for %s in remote %s summary flatpak cache"), ref, self->remote_name); @@ -906,7 +932,7 @@ flatpak_remote_state_lookup_cache (FlatpakRemoteState *self, if (!var_cache_lookup (cache, ref, &pos, &cache_data)) return flatpak_fail_error (error, FLATPAK_ERROR_REF_NOT_FOUND, - _("No entry for %s in remote '%s' summary flatpak cache "), + _("No entry for %s in remote %s summary flatpak cache"), ref, self->remote_name); } else if (summary_version == 1) @@ -918,7 +944,7 @@ flatpak_remote_state_lookup_cache (FlatpakRemoteState *self, if (!flatpak_var_ref_map_lookup_ref (ref_map, ref, &info)) return flatpak_fail_error (error, FLATPAK_ERROR_REF_NOT_FOUND, - _("No entry for %s in remote '%s' summary cache "), + _("No entry for %s in remote %s summary flatpak cache"), ref, self->remote_name); commit_metadata = var_ref_info_get_metadata (info); @@ -1494,16 +1520,48 @@ flatpak_deploy_get_overrides (FlatpakDeploy *deploy) FlatpakContext *overrides = flatpak_context_new (); if (deploy->system_overrides) - flatpak_context_merge (overrides, deploy->system_overrides); + { + flatpak_context_dump (deploy->system_overrides, + "System-wide overrides for all apps"); + flatpak_context_merge (overrides, deploy->system_overrides); + } + else + { + g_debug ("No system-wide overrides for all apps"); + } if (deploy->system_app_overrides) - flatpak_context_merge (overrides, deploy->system_app_overrides); + { + flatpak_context_dump (deploy->system_app_overrides, + "System-wide overrides for specified app"); + flatpak_context_merge (overrides, deploy->system_app_overrides); + } + else + { + g_debug ("No system-wide per-app overrides for specified app"); + } if (deploy->user_overrides) - flatpak_context_merge (overrides, deploy->user_overrides); + { + flatpak_context_dump (deploy->user_overrides, + "Per-user overrides for all apps"); + flatpak_context_merge (overrides, deploy->user_overrides); + } + else + { + g_debug ("No per-user overrides for all apps"); + } if (deploy->user_app_overrides) - flatpak_context_merge (overrides, deploy->user_app_overrides); + { + flatpak_context_dump (deploy->user_app_overrides, + "Per-user overrides for specified app"); + flatpak_context_merge (overrides, deploy->user_app_overrides); + } + else + { + g_debug ("No per-user overrides for specified app"); + } return overrides; } @@ -1534,20 +1592,24 @@ flatpak_deploy_new (GFile *dir, GFile * flatpak_get_system_default_base_dir_location (void) { - static gsize path = 0; + static gsize file = 0; - if (g_once_init_enter (&path)) + if (g_once_init_enter (&file)) { gsize setup_value = 0; + const char *path; const char *system_dir = g_getenv ("FLATPAK_SYSTEM_DIR"); - if (system_dir != NULL) - setup_value = (gsize) system_dir; + if (system_dir != NULL && *system_dir != 0) + path = system_dir; else - setup_value = (gsize) FLATPAK_SYSTEMDIR; - g_once_init_leave (&path, setup_value); + path = FLATPAK_SYSTEMDIR; + + setup_value = (gsize) g_file_new_for_path (path); + + g_once_init_leave (&file, setup_value); } - return g_file_new_for_path ((char *) path); + return g_object_ref ((GFile *) file); } static FlatpakDirStorageType @@ -1644,7 +1706,7 @@ append_locations_from_config_file (GPtrArray *locations, if (!g_key_file_load_from_file (keyfile, file_path, G_KEY_FILE_NONE, &my_error)) { - g_debug ("Could not get list of system installations from '%s': %s", file_path, my_error->message); + g_info ("Could not get list of system installations from '%s': %s", file_path, my_error->message); g_propagate_error (error, g_steal_pointer (&my_error)); goto out; } @@ -1690,7 +1752,7 @@ append_locations_from_config_file (GPtrArray *locations, path = g_key_file_get_string (keyfile, groups[i], "Path", &my_error); if (path == NULL) { - g_debug ("While reading '%s': Unable to get path for installation '%s': %s", file_path, id, my_error->message); + g_info ("While reading '%s': Unable to get path for installation '%s': %s", file_path, id, my_error->message); g_propagate_error (error, g_steal_pointer (&my_error)); goto out; } @@ -1758,7 +1820,7 @@ system_locations_from_configuration (GCancellable *cancellable, if (!g_file_test (config_dir, G_FILE_TEST_IS_DIR)) { - g_debug ("No installations directory in %s. Skipping", config_dir); + g_info ("No installations directory in %s. Skipping", config_dir); goto out; } @@ -1769,8 +1831,8 @@ system_locations_from_configuration (GCancellable *cancellable, cancellable, &my_error); if (my_error != NULL) { - g_debug ("Unexpected error retrieving extra installations in %s: %s", - config_dir, my_error->message); + g_info ("Unexpected error retrieving extra installations in %s: %s", + config_dir, my_error->message); g_propagate_error (error, g_steal_pointer (&my_error)); goto out; } @@ -1785,8 +1847,8 @@ system_locations_from_configuration (GCancellable *cancellable, if (!g_file_enumerator_iterate (dir_enum, &file_info, &path, cancellable, &my_error)) { - g_debug ("Unexpected error reading file in %s: %s", - config_dir, my_error->message); + g_info ("Unexpected error reading file in %s: %s", + config_dir, my_error->message); g_propagate_error (error, g_steal_pointer (&my_error)); goto out; } @@ -1841,16 +1903,16 @@ GPtrArray * flatpak_get_system_base_dir_locations (GCancellable *cancellable, GError **error) { - static gsize array = 0; + static gsize initialized = 0; + static GPtrArray *array = NULL; - if (g_once_init_enter (&array)) + if (g_once_init_enter (&initialized)) { - gsize setup_value = 0; - setup_value = (gsize) get_system_locations (cancellable, error); - g_once_init_leave (&array, setup_value); + array = get_system_locations (cancellable, error); + g_once_init_leave (&initialized, 1); } - return (GPtrArray *) array; + return array; } GFile * @@ -1950,6 +2012,8 @@ flatpak_ensure_system_user_cache_dir_location (GError **error) (st_buf.st_mode & 0777) == 0755) return g_file_new_for_path (path); + g_clear_pointer (&path, g_free); + path = g_strdup ("/var/tmp/flatpak-cache-XXXXXX"); if (g_mkdtemp_full (path, 0755) == NULL) @@ -2109,8 +2173,7 @@ flatpak_dir_revokefs_fuse_unmount (OstreeRepo **repo, fusermount = g_subprocess_new (G_SUBPROCESS_FLAGS_NONE, error, - "fusermount", "-u", "-z", mnt_dir, - NULL); + FUSERMOUNT, "-u", "-z", mnt_dir, NULL); if (g_subprocess_wait_check (fusermount, NULL, error)) { g_autoptr(GFile) mnt_dir_file = g_file_new_for_path (mnt_dir); @@ -2173,7 +2236,7 @@ flatpak_dir_system_helper_call (FlatpakDir *self, return NULL; } - g_debug ("Calling system helper: %s", method_name); + g_info ("Calling system helper: %s", method_name); res = g_dbus_connection_call_with_unix_fd_list_sync (self->system_helper_bus, FLATPAK_SYSTEM_HELPER_BUS_NAME, FLATPAK_SYSTEM_HELPER_PATH, @@ -2478,7 +2541,7 @@ flatpak_dir_system_helper_call_cancel_pull (FlatpakDir *self, if (flatpak_dir_get_no_interaction (self)) arg_flags |= FLATPAK_HELPER_CANCEL_PULL_FLAGS_NO_INTERACTION; - g_debug ("Calling system helper: CancelPull"); + g_info ("Calling system helper: CancelPull"); g_autoptr(GVariant) ret = flatpak_dir_system_helper_call (self, "CancelPull", @@ -2508,7 +2571,7 @@ flatpak_dir_system_helper_call_get_revokefs_fd (FlatpakDir *self, if (flatpak_dir_get_no_interaction (self)) arg_flags |= FLATPAK_HELPER_GET_REVOKEFS_FD_FLAGS_NO_INTERACTION; - g_debug ("Calling system helper: GetRevokefsFd"); + g_info ("Calling system helper: GetRevokefsFd"); g_autoptr(GVariant) ret = flatpak_dir_system_helper_call (self, "GetRevokefsFd", @@ -3791,7 +3854,7 @@ flatpak_dir_migrate_config (FlatpakDir *self, if (config == NULL) config = ostree_repo_copy_config (flatpak_dir_get_repo (self)); - g_debug ("Migrating remote '%s' to gpg-verify-summary", remote); + g_info ("Migrating remote '%s' to gpg-verify-summary", remote); g_key_file_set_boolean (config, group, "gpg-verify-summary", TRUE); } } @@ -3807,7 +3870,7 @@ flatpak_dir_migrate_config (FlatpakDir *self, FLATPAK_HELPER_ENSURE_REPO_FLAGS_NONE, installation ? installation : "", NULL, &local_error)) - g_debug ("Failed to migrate system config: %s", local_error->message); + g_info ("Failed to migrate system config: %s", local_error->message); } else { @@ -3873,52 +3936,37 @@ copy_remote_config (GKeyFile *config, } } -static GHashTable * -_flatpak_dir_find_new_flatpakrepos (FlatpakDir *self, OstreeRepo *repo) +static void +_flatpak_dir_scan_new_flatpakrepos (const char *dir_str, + GHashTable **flatpakrepos, + const char * const *remotes) { - g_autoptr(GHashTable) flatpakrepos = NULL; - g_autoptr(GFile) conf_dir = NULL; + g_autoptr(GFile) dir = NULL; g_autoptr(GFileEnumerator) dir_enum = NULL; - g_autoptr(GError) my_error = NULL; - g_autofree char *config_dir = NULL; - g_auto(GStrv) remotes = NULL; - g_auto(GStrv) applied_remotes = NULL; - - g_assert (repo != NULL); - /* Predefined remotes only applies for the default system installation */ - if (self->user || - (self->extra_data != NULL && - strcmp (self->extra_data->id, SYSTEM_DIR_DEFAULT_ID) != 0)) - return NULL; + g_return_if_fail (dir_str != NULL); + g_return_if_fail (flatpakrepos != NULL); - config_dir = g_strdup_printf ("%s/%s", - get_config_dir_location (), - SYSCONF_REMOTES_DIR); - conf_dir = g_file_new_for_path (config_dir); - dir_enum = g_file_enumerate_children (conf_dir, + dir = g_file_new_for_path (dir_str); + dir_enum = g_file_enumerate_children (dir, G_FILE_ATTRIBUTE_STANDARD_NAME "," G_FILE_ATTRIBUTE_STANDARD_TYPE, G_FILE_QUERY_INFO_NONE, - NULL, &my_error); - if (my_error != NULL) - return NULL; - - remotes = ostree_repo_remote_list (repo, NULL); - applied_remotes = g_key_file_get_string_list (ostree_repo_get_config (repo), - "core", "xa.applied-remotes", NULL, NULL); + NULL, NULL); + if (dir_enum == NULL) + return; while (TRUE) { GFileInfo *file_info; - GFile *path; const char *name; guint32 type; + g_autoptr(GError) local_error = NULL; - if (!g_file_enumerator_iterate (dir_enum, &file_info, &path, - NULL, &my_error)) + if (!g_file_enumerator_iterate (dir_enum, &file_info, NULL, + NULL, &local_error)) { - g_debug ("Unexpected error reading file in %s: %s", - config_dir, my_error->message); + g_info ("Unexpected error reading file in %s: %s", + dir_str, local_error->message); break; } @@ -3928,22 +3976,58 @@ _flatpak_dir_find_new_flatpakrepos (FlatpakDir *self, OstreeRepo *repo) name = g_file_info_get_name (file_info); type = g_file_info_get_file_type (file_info); - if (type == G_FILE_TYPE_REGULAR && g_str_has_suffix (name, SYSCONF_REMOTES_FILE_EXT)) + if (type == G_FILE_TYPE_REGULAR && g_str_has_suffix (name, FLATPAK_REMOTES_FILE_EXT)) { - g_autofree char *remote_name = g_strndup (name, strlen (name) - strlen (SYSCONF_REMOTES_FILE_EXT)); - - if (remotes && g_strv_contains ((const char * const *)remotes, remote_name)) - continue; + g_autofree char *remote_name = g_strndup (name, strlen (name) - strlen (FLATPAK_REMOTES_FILE_EXT)); - if (applied_remotes && g_strv_contains ((const char * const *)applied_remotes, remote_name)) + if (remotes && g_strv_contains (remotes, remote_name)) continue; - if (flatpakrepos == NULL) - flatpakrepos = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_object_unref); + if (*flatpakrepos == NULL) + *flatpakrepos = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_object_unref); - g_hash_table_insert (flatpakrepos, g_steal_pointer (&remote_name), g_file_enumerator_get_child (dir_enum, file_info)); + g_hash_table_insert (*flatpakrepos, g_steal_pointer (&remote_name), g_file_enumerator_get_child (dir_enum, file_info)); } } +} + +static GHashTable * +_flatpak_dir_find_new_flatpakrepos (FlatpakDir *self, OstreeRepo *repo) +{ + g_autoptr(GHashTable) flatpakrepos = NULL; + g_autofree char *config_dir_str = NULL; + g_autofree char *os_config_dir_str = NULL; + g_auto(GStrv) ostree_remotes = NULL; + g_auto(GStrv) applied_remotes = NULL; + g_autoptr(GPtrArray) remotes = NULL; + + g_assert (repo != NULL); + + /* Predefined remotes only applies for the default system installation */ + if (self->user || + (self->extra_data && + g_strcmp0 (self->extra_data->id, SYSTEM_DIR_DEFAULT_ID) != 0)) + return NULL; + + ostree_remotes = ostree_repo_remote_list (repo, NULL); + applied_remotes = g_key_file_get_string_list (ostree_repo_get_config (repo), + "core", "xa.applied-remotes", NULL, NULL); + remotes = g_ptr_array_new (); + for (int i = 0; ostree_remotes && ostree_remotes[i]; i++) + g_ptr_array_add (remotes, ostree_remotes[i]); + for (int i = 0; applied_remotes && applied_remotes[i]; i++) + g_ptr_array_add (remotes, applied_remotes[i]); + g_ptr_array_add (remotes, NULL); + + config_dir_str = g_build_filename (get_config_dir_location (), FLATPAK_REMOTES_DIR, NULL); + _flatpak_dir_scan_new_flatpakrepos (config_dir_str, + &flatpakrepos, + (const char * const *) remotes->pdata); + + os_config_dir_str = g_build_filename (get_data_dir_location (), FLATPAK_REMOTES_DIR, NULL); + _flatpak_dir_scan_new_flatpakrepos (os_config_dir_str, + &flatpakrepos, + (const char * const *) remotes->pdata); return g_steal_pointer (&flatpakrepos); } @@ -4006,7 +4090,7 @@ apply_new_flatpakrepo (const char *remote_name, NULL, &imported, NULL, error)) return FALSE; - g_debug ("Imported %u GPG key%s to remote \"%s\"", imported, (imported == 1) ? "" : "s", remote_name); + g_info ("Imported %u GPG key%s to remote \"%s\"", imported, (imported == 1) ? "" : "s", remote_name); } return TRUE; @@ -4194,9 +4278,9 @@ _flatpak_dir_ensure_repo (FlatpakDir *self, /* Scrap previously written min-free-space-percent=0 and replace it with min-free-space-size */ if (orig_min_free_space_size == NULL && orig_min_free_space_percent != NULL && - flatpak_utils_ascii_string_to_unsigned (orig_min_free_space_percent, 10, - 0, G_MAXUINT64, - &min_free_space_percent_int, &my_error)) + g_ascii_string_to_unsigned (orig_min_free_space_percent, 10, + 0, G_MAXUINT64, + &min_free_space_percent_int, &my_error)) { if (min_free_space_percent_int == 0) { @@ -4559,7 +4643,67 @@ remove_old_appstream_tmpdirs (GFile *dir) tmp = g_file_get_child (dir, dent->d_name); /* We ignore errors here, no need to worry anyone */ - g_debug ("Deleting stale appstream deploy tmpdir %s", flatpak_file_get_path_cached (tmp)); + g_info ("Deleting stale appstream deploy tmpdir %s", flatpak_file_get_path_cached (tmp)); + (void)flatpak_rm_rf (tmp, NULL, NULL); + } +} + +/* Like the function above, this looks for old temporary directories created by + * previous versions of flatpak_dir_deploy(). + * These are all directories starting with a dot. Such directories can be from a + * concurrent deploy, so we only remove directories older than a day to avoid + * races. +*/ +static void +remove_old_deploy_tmpdirs (GFile *dir) +{ + g_auto(GLnxDirFdIterator) dir_iter = { 0 }; + time_t now = time (NULL); + + if (!glnx_dirfd_iterator_init_at (AT_FDCWD, flatpak_file_get_path_cached (dir), + FALSE, &dir_iter, NULL)) + return; + + while (TRUE) + { + struct stat stbuf; + struct dirent *dent; + g_autoptr(GFile) tmp = NULL; + + if (!glnx_dirfd_iterator_next_dent_ensure_dtype (&dir_iter, &dent, NULL, NULL)) + break; + + if (dent == NULL) + break; + + /* We ignore non-dotfiles and .timestamps as they are not tempfiles */ + if (dent->d_name[0] != '.' || + strcmp (dent->d_name, ".timestamp") == 0) + continue; + + /* Check for right types and names. The format we’re looking for is: + * .[0-9a-f]{64}-[0-9A-Z]{6} */ + if (dent->d_type == DT_DIR) + { + if (strlen (dent->d_name) != 72 || + dent->d_name[65] != '-') + continue; + } + else + continue; + + /* Check that the file is at least a day old to avoid races */ + if (!glnx_fstatat (dir_iter.fd, dent->d_name, &stbuf, AT_SYMLINK_NOFOLLOW, NULL)) + continue; + + if (stbuf.st_mtime >= now || + now - stbuf.st_mtime < SECS_PER_DAY) + continue; + + tmp = g_file_get_child (dir, dent->d_name); + + /* We ignore errors here, no need to worry anyone */ + g_info ("Deleting stale deploy tmpdir %s", flatpak_file_get_path_cached (tmp)); (void)flatpak_rm_rf (tmp, NULL, NULL); } } @@ -5408,7 +5552,7 @@ repo_pull (OstreeRepo *self, sideload_url = g_file_get_uri (sideload_repo); - g_debug ("Sideloading %s from %s in pull", ref_to_fetch, sideload_url); + g_info ("Sideloading %s from %s in pull", ref_to_fetch, sideload_url); g_assert (state->collection_id != NULL); @@ -5679,7 +5823,7 @@ flatpak_dir_pull_extra_data (FlatpakDir *self, extra_local_file = flatpak_build_file (base_dir, "extra-data", extra_data_sha256, extra_data_name, NULL); if (g_file_query_exists (extra_local_file, cancellable)) { - g_debug ("Loading extra-data from local file %s", flatpak_file_get_path_cached (extra_local_file)); + g_info ("Loading extra-data from local file %s", flatpak_file_get_path_cached (extra_local_file)); gsize extra_local_size; g_autofree char *extra_local_contents = NULL; g_autoptr(GError) my_error = NULL; @@ -5830,7 +5974,7 @@ flatpak_dir_mirror_oci (FlatpakDir *self, flatpak_progress_start_oci_pull (progress); - g_debug ("Mirroring OCI image %s", oci_digest); + g_info ("Mirroring OCI image %s", oci_digest); res = flatpak_mirror_image_from_oci (dst_registry, registry, oci_repository, oci_digest, state->remote_name, ref, delta_url, self->repo, oci_pull_progress_cb, progress, cancellable, error); @@ -5911,7 +6055,7 @@ flatpak_dir_pull_oci (FlatpakDir *self, flatpak_progress_start_oci_pull (progress); - g_debug ("Pulling OCI image %s", oci_digest); + g_info ("Pulling OCI image %s", oci_digest); checksum = flatpak_pull_from_oci (repo, registry, oci_repository, oci_digest, delta_url, FLATPAK_OCI_MANIFEST (versioned), image_config, state->remote_name, ref, flatpak_flags, oci_pull_progress_cb, progress, cancellable, error); @@ -5919,7 +6063,7 @@ flatpak_dir_pull_oci (FlatpakDir *self, if (checksum == NULL) return FALSE; - g_debug ("Imported OCI image as checksum %s", checksum); + g_info ("Imported OCI image as checksum %s", checksum); if (repo == self->repo) name = flatpak_dir_get_name (self); @@ -5999,11 +6143,11 @@ flatpak_dir_pull (FlatpakDir *self, return FALSE; } - g_debug ("%s: Using commit %s for pull of ref %s from remote %s%s%s", - G_STRFUNC, rev, ref, state->remote_name, - sideload_repo ? "sideloaded from " : "", - sideload_repo ? flatpak_file_get_path_cached (sideload_repo) : "" - ); + g_info ("%s: Using commit %s for pull of ref %s from remote %s%s%s", + G_STRFUNC, rev, ref, state->remote_name, + sideload_repo ? "sideloaded from " : "", + sideload_repo ? flatpak_file_get_path_cached (sideload_repo) : "" + ); if (repo == NULL) repo = self->repo; @@ -7001,22 +7145,23 @@ static void maybe_reload_dbus_config (GCancellable *cancellable) { g_autoptr(GDBusConnection) session_bus = NULL; + g_autoptr(GVariant) ret = NULL; session_bus = g_bus_get_sync (G_BUS_TYPE_SESSION, cancellable, NULL); if (!session_bus) return; - g_dbus_connection_call_sync (session_bus, - "org.freedesktop.DBus", - "/org/freedesktop/DBus", - "org.freedesktop.DBus", - "ReloadConfig", - NULL, - NULL, - G_DBUS_CALL_FLAGS_NONE, - 2000, - cancellable, - NULL); + ret = g_dbus_connection_call_sync (session_bus, + "org.freedesktop.DBus", + "/org/freedesktop/DBus", + "org.freedesktop.DBus", + "ReloadConfig", + NULL, + NULL, + G_DBUS_CALL_FLAGS_NONE, + 2000, + cancellable, + NULL); } gboolean @@ -7029,7 +7174,7 @@ flatpak_dir_run_triggers (FlatpakDir *self, g_autoptr(GFileInfo) child_info = NULL; g_autoptr(GFile) triggersdir = NULL; GError *temp_error = NULL; - const char *triggerspath; + g_autofree char *triggerspath = NULL; maybe_reload_dbus_config (cancellable); @@ -7047,11 +7192,11 @@ flatpak_dir_run_triggers (FlatpakDir *self, return TRUE; } - triggerspath = g_getenv ("FLATPAK_TRIGGERSDIR"); + triggerspath = g_strdup (g_getenv ("FLATPAK_TRIGGERSDIR")); if (triggerspath == NULL) - triggerspath = FLATPAK_TRIGGERDIR; + triggerspath = g_build_filename (get_data_dir_location (), FLATPAK_TRIGGERS_DIR, NULL); - g_debug ("running triggers from %s", triggerspath); + g_info ("running triggers from %s", triggerspath); triggersdir = g_file_new_for_path (triggerspath); @@ -7081,7 +7226,7 @@ flatpak_dir_run_triggers (FlatpakDir *self, g_autoptr(FlatpakBwrap) bwrap = NULL; g_autofree char *commandline = NULL; - g_debug ("running trigger %s", name); + g_info ("running trigger %s", name); bwrap = flatpak_bwrap_new (NULL); @@ -7105,9 +7250,10 @@ flatpak_dir_run_triggers (FlatpakDir *self, flatpak_bwrap_finish (bwrap); commandline = flatpak_quote_argv ((const char **) bwrap->argv->pdata, -1); - g_debug ("Running '%s'", commandline); + g_info ("Running '%s'", commandline); - /* We use LEAVE_DESCRIPTORS_OPEN to work around dead-lock, see flatpak_close_fds_workaround */ + /* We use LEAVE_DESCRIPTORS_OPEN and close them in the child_setup + * to work around a deadlock in GLib < 2.60 */ if (!g_spawn_sync ("/", (char **) bwrap->argv->pdata, NULL, @@ -7428,9 +7574,6 @@ export_desktop_file (const char *app, g_autofree gchar *new_data = NULL; gsize new_data_len; g_autoptr(GKeyFile) keyfile = NULL; - g_autofree gchar *old_exec = NULL; - gint old_argc; - g_auto(GStrv) old_argv = NULL; g_auto(GStrv) groups = NULL; g_autofree char *escaped_app = maybe_quote (app); g_autofree char *escaped_branch = maybe_quote (branch); @@ -7481,6 +7624,15 @@ export_desktop_file (const char *app, /* Add a marker so consumers can easily find out that this launches a sandbox */ g_key_file_set_string (keyfile, G_KEY_FILE_DESKTOP_GROUP, "X-Flatpak", app); + /* Disable krunner dbusplugins by default, so that flatpak applications cannot + * unintentionally grab sensitive search data. + */ + if (g_key_file_get_boolean (keyfile, G_KEY_FILE_DESKTOP_GROUP, + "X-KDE-PluginInfo-EnabledByDefault", NULL)) + { + g_key_file_set_boolean (keyfile, G_KEY_FILE_DESKTOP_GROUP, "X-KDE-PluginInfo-EnabledByDefault", FALSE); + } + /* If the app has been renamed, add its old .desktop filename to * X-Flatpak-RenamedFrom in the new .desktop file, taking care not to * introduce duplicates. @@ -7546,6 +7698,9 @@ export_desktop_file (const char *app, for (i = 0; groups[i] != NULL; i++) { + gint old_argc; + g_auto(GStrv) old_argv = NULL; + g_autofree gchar *old_exec = NULL; g_autoptr(GString) new_exec = NULL; g_auto(GStrv) flatpak_run_opts = g_key_file_get_string_list (keyfile, groups[i], "X-Flatpak-RunOptions", NULL, NULL); g_autofree char *flatpak_run_args = format_flatpak_run_args_from_run_opts (flatpak_run_opts); @@ -7661,8 +7816,8 @@ rewrite_export_dir (const char *app, if (!glnx_dirfd_iterator_init_at (source_parent_fd, source_name, FALSE, &source_iter, error)) goto out; - exports_allowed = flatpak_get_allowed_exports (source_path, app, context, - &allowed_extensions, &allowed_prefixes, &require_exact_match); + exports_allowed = flatpak_context_get_allowed_exports (context, source_path, app, + &allowed_extensions, &allowed_prefixes, &require_exact_match); visited_children = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); @@ -7951,6 +8106,7 @@ flatpak_export_dir (GFile *source, "share/icons", "../..", "share/dbus-1/services", "../../..", "share/gnome-shell/search-providers", "../../..", + "share/krunner/dbusplugins", "../../..", "share/mime/packages", "../../..", "share/metainfo", "../..", "bin", "..", @@ -8062,7 +8218,7 @@ extract_extra_data (FlatpakDir *self, if (n_extra_data_sources == 0) return TRUE; - g_debug ("extracting extra data to %s", flatpak_file_get_path_cached (extradir)); + g_info ("extracting extra data to %s", flatpak_file_get_path_cached (extradir)); if (!ostree_repo_read_commit_detached_metadata (self->repo, checksum, &detached_metadata, cancellable, error)) @@ -8216,6 +8372,7 @@ apply_extra_data (FlatpakDir *self, int exit_status; const char *group = FLATPAK_METADATA_GROUP_APPLICATION; g_autoptr(GError) local_error = NULL; + FlatpakRunFlags run_flags; apply_extra_file = g_file_resolve_relative_path (checkoutdir, "files/bin/apply_extra"); if (!g_file_query_exists (apply_extra_file, cancellable)) @@ -8263,6 +8420,9 @@ apply_extra_data (FlatpakDir *self, { /* We pass in self here so that we ensure that we find the runtime in case it only exists in this installation (which might be custom) */ + /* TODO: This is a circular dependency between flatpak-dir (which + * deals with a single installation) and flatpak-dir-utils (which + * deals with all the installations on the system). */ runtime_deploy = flatpak_find_deploy_for_ref (flatpak_decomposed_get_ref (runtime_ref), NULL, self, cancellable, error); if (runtime_deploy == NULL) return FALSE; @@ -8292,33 +8452,42 @@ apply_extra_data (FlatpakDir *self, "--cap-drop", "ALL", NULL); + /* Run flags which equal flatpak run --sandbox */ + run_flags = (FLATPAK_RUN_FLAG_SANDBOX | + FLATPAK_RUN_FLAG_NO_SESSION_HELPER | + FLATPAK_RUN_FLAG_NO_SESSION_BUS_PROXY | + FLATPAK_RUN_FLAG_NO_SYSTEM_BUS_PROXY | + FLATPAK_RUN_FLAG_NO_A11Y_BUS_PROXY); + + /* Might need multiarch in apply_extra (see e.g. #3742). + * Should be pretty safe in this limited context. */ + run_flags |= FLATPAK_RUN_FLAG_MULTIARCH; + + /* This sandbox is run as root and /proc/self/exe can sometimes be used to + * access outside files (see cd21428). + * Disable /proc entirely in this context. */ + run_flags |= FLATPAK_RUN_FLAG_NO_PROC; + if (!flatpak_run_setup_base_argv (bwrap, runtime_files, NULL, runtime_arch, - /* Might need multiarch in apply_extra (see e.g. #3742). Should be pretty safe in this limited context */ - FLATPAK_RUN_FLAG_MULTIARCH | - FLATPAK_RUN_FLAG_NO_SESSION_HELPER | FLATPAK_RUN_FLAG_NO_PROC, - error)) + run_flags, error)) return FALSE; app_context = flatpak_context_new (); - if (!flatpak_run_add_environment_args (bwrap, NULL, - FLATPAK_RUN_FLAG_NO_SESSION_BUS_PROXY | - FLATPAK_RUN_FLAG_NO_SYSTEM_BUS_PROXY | - FLATPAK_RUN_FLAG_NO_A11Y_BUS_PROXY, - id, + if (!flatpak_run_add_environment_args (bwrap, NULL, run_flags, id, app_context, NULL, NULL, -1, - NULL, cancellable, error)) + NULL, NULL, cancellable, error)) return FALSE; flatpak_bwrap_populate_runtime_dir (bwrap, NULL); flatpak_bwrap_envp_to_args (bwrap); - flatpak_bwrap_add_arg (bwrap, "/app/bin/apply_extra"); + flatpak_bwrap_add_args (bwrap, "--", "/app/bin/apply_extra", NULL); flatpak_bwrap_finish (bwrap); - g_debug ("Running /app/bin/apply_extra "); + g_info ("Running /app/bin/apply_extra "); /* We run the sandbox without caps, but it can still create files owned by itself with * arbitrary permissions, including setuid myself. This is extra risky in the case where @@ -8397,7 +8566,7 @@ flatpak_dir_check_parental_controls (FlatpakDir *self, gboolean authorized; gboolean repo_installation_allowed, app_is_appropriate; PolkitCheckAuthorizationFlags polkit_flags; - MctGetAppFilterFlags manager_flags; + MctManagerGetValueFlags manager_flags; /* Assume that root is allowed to install any ref and shouldn't have any * parental controls restrictions applied to them. Note that this branch @@ -8406,7 +8575,7 @@ flatpak_dir_check_parental_controls (FlatpakDir *self, * system-helper, self->source_pid is non-zero. */ if (self->source_pid == 0 && getuid () == 0) { - g_debug ("Skipping parental controls check for %s due to running as root", ref); + g_info ("Skipping parental controls check for %s due to running as root", ref); return TRUE; } @@ -8416,7 +8585,7 @@ flatpak_dir_check_parental_controls (FlatpakDir *self, if (!g_str_has_prefix (ref, "app/")) return TRUE; - g_debug ("Getting parental controls details for %s from %s", + g_info ("Getting parental controls details for %s from %s", ref, flatpak_deploy_data_get_origin (deploy_data)); if (on_session != NULL) @@ -8424,8 +8593,8 @@ flatpak_dir_check_parental_controls (FlatpakDir *self, /* FIXME: Instead of skipping the parental controls check in the test * environment, make a mock service for it. * https://github.com/flatpak/flatpak/issues/2993 */ - g_debug ("Skipping parental controls check for %s since the " - "system bus is unavailable in the test environment", ref); + g_info ("Skipping parental controls check for %s since the " + "system bus is unavailable in the test environment", ref); return TRUE; } @@ -8451,23 +8620,23 @@ flatpak_dir_check_parental_controls (FlatpakDir *self, } manager = mct_manager_new (dbus_connection); - manager_flags = MCT_GET_APP_FILTER_FLAGS_NONE; + manager_flags = MCT_MANAGER_GET_VALUE_FLAGS_NONE; if (!flatpak_dir_get_no_interaction (self)) - manager_flags |= MCT_GET_APP_FILTER_FLAGS_INTERACTIVE; + manager_flags |= MCT_MANAGER_GET_VALUE_FLAGS_INTERACTIVE; app_filter = mct_manager_get_app_filter (manager, subject_uid, manager_flags, cancellable, &local_error); - if (g_error_matches (local_error, MCT_APP_FILTER_ERROR, MCT_APP_FILTER_ERROR_DISABLED)) + if (g_error_matches (local_error, MCT_MANAGER_ERROR, MCT_MANAGER_ERROR_DISABLED)) { - g_debug ("Skipping parental controls check for %s since parental " - "controls are disabled globally", ref); + g_info ("Skipping parental controls check for %s since parental " + "controls are disabled globally", ref); return TRUE; } else if (g_error_matches (local_error, G_DBUS_ERROR, G_DBUS_ERROR_SERVICE_UNKNOWN) || g_error_matches (local_error, G_DBUS_ERROR, G_DBUS_ERROR_NAME_HAS_NO_OWNER)) { - g_debug ("Skipping parental controls check for %s since a required " - "service was not found", ref); + g_info ("Skipping parental controls check for %s since a required " + "service was not found", ref); return TRUE; } else if (local_error != NULL) @@ -8488,7 +8657,7 @@ flatpak_dir_check_parental_controls (FlatpakDir *self, if (repo_installation_allowed && app_is_appropriate) { - g_debug ("Parental controls policy satisfied for %s", ref); + g_info ("Parental controls policy satisfied for %s", ref); return TRUE; } @@ -8519,7 +8688,7 @@ flatpak_dir_check_parental_controls (FlatpakDir *self, _("Installing %s is not allowed by the policy set by your administrator"), ref); - g_debug ("Parental controls policy overridden by polkit for %s", ref); + g_info ("Parental controls policy overridden by polkit for %s", ref); #endif /* USE_SYSTEM_HELPER */ #endif /* HAVE_LIBMALCONTENT */ @@ -8560,6 +8729,7 @@ flatpak_dir_deploy (FlatpakDir *self, g_autoptr(GFile) checkoutdir = NULL; g_autoptr(GFile) bindir = NULL; g_autofree char *checkoutdirpath = NULL; + const char *checkoutdir_basename; g_autoptr(GFile) real_checkoutdir = NULL; g_autoptr(GFile) dotref = NULL; g_autoptr(GFile) files_etc = NULL; @@ -8600,9 +8770,15 @@ flatpak_dir_deploy (FlatpakDir *self, if (!glnx_opendirat (AT_FDCWD, flatpak_file_get_path_cached (deploy_base), TRUE, &deploy_base_dfd, error)) return FALSE; + /* There used to be a bug here where temporary files beneath @deploy_base were not removed, + * which could use quite a lot of space over time, so we check for these and remove them. + * We only do so for the current app to avoid every deploy operation iterating over + * every app directory and all their immediate descendents. That would be a bit much I/O. */ + remove_old_deploy_tmpdirs (deploy_base); + if (checksum_or_latest == NULL) { - g_debug ("No checksum specified, getting tip of %s from origin %s", flatpak_decomposed_get_ref (ref), origin); + g_info ("No checksum specified, getting tip of %s from origin %s", flatpak_decomposed_get_ref (ref), origin); resolved_ref = flatpak_dir_read_latest (self, origin, flatpak_decomposed_get_ref (ref), NULL, cancellable, error); if (resolved_ref == NULL) @@ -8612,12 +8788,12 @@ flatpak_dir_deploy (FlatpakDir *self, } checksum = resolved_ref; - g_debug ("tip resolved to: %s", checksum); + g_info ("tip resolved to: %s", checksum); } else { checksum = checksum_or_latest; - g_debug ("Looking for checksum %s in local repo", checksum); + g_info ("Looking for checksum %s in local repo", checksum); if (!ostree_repo_read_commit (self->repo, checksum, NULL, NULL, cancellable, NULL)) return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("%s is not available"), flatpak_decomposed_get_ref (ref)); } @@ -8658,11 +8834,12 @@ flatpak_dir_deploy (FlatpakDir *self, options.enable_fsync = FALSE; /* We checkout to a temp dir and sync before moving it in place */ options.bareuseronly_dirs = TRUE; /* https://github.com/ostreedev/ostree/pull/927 */ checkoutdirpath = g_file_get_path (checkoutdir); + checkoutdir_basename = tmp_dir_handle.path; /* so checkoutdirpath = deploy_base_dfd / checkoutdir_basename */ if (subpaths == NULL || *subpaths == NULL) { if (!ostree_repo_checkout_at (self->repo, &options, - AT_FDCWD, checkoutdirpath, + deploy_base_dfd, checkoutdir_basename, checksum, cancellable, error)) { @@ -8681,7 +8858,7 @@ flatpak_dir_deploy (FlatpakDir *self, options.subpath = "metadata"; if (!ostree_repo_checkout_at (self->repo, &options, - AT_FDCWD, checkoutdirpath, + deploy_base_dfd, checkoutdir_basename, checksum, cancellable, error)) { @@ -8694,13 +8871,14 @@ flatpak_dir_deploy (FlatpakDir *self, g_autofree char *subpath = g_build_filename ("files", subpaths[i], NULL); g_autofree char *dstpath = g_build_filename (checkoutdirpath, "/files", subpaths[i], NULL); g_autofree char *dstpath_parent = g_path_get_dirname (dstpath); + g_autofree char *dstpath_relative_to_deploy_base = g_build_filename (checkoutdir_basename, "/files", subpaths[i], NULL); g_autoptr(GFile) child = NULL; child = g_file_resolve_relative_path (root, subpath); if (!g_file_query_exists (child, cancellable)) { - g_debug ("subpath %s not in tree", subpaths[i]); + g_info ("subpath %s not in tree", subpaths[i]); continue; } @@ -8712,7 +8890,7 @@ flatpak_dir_deploy (FlatpakDir *self, options.subpath = subpath; if (!ostree_repo_checkout_at (self->repo, &options, - AT_FDCWD, dstpath, + deploy_base_dfd, dstpath_relative_to_deploy_base, checksum, cancellable, error)) { @@ -8832,7 +9010,7 @@ flatpak_dir_deploy (FlatpakDir *self, files_etc = g_file_resolve_relative_path (checkoutdir, "files/etc"); if (g_file_query_exists (files_etc, cancellable)) { - char *etcfiles[] = {"passwd", "group", "machine-id" }; + static const char * const etcfiles[] = {"passwd", "group", "machine-id" }; g_autoptr(GFile) etc_resolve_conf = g_file_get_child (files_etc, "resolv.conf"); int i; for (i = 0; i < G_N_ELEMENTS (etcfiles); i++) @@ -8928,7 +9106,7 @@ flatpak_dir_deploy (FlatpakDir *self, if (!flatpak_bytes_save (deploy_data_file, deploy_data, cancellable, error)) return FALSE; - if (!glnx_opendirat (AT_FDCWD, checkoutdirpath, TRUE, &checkoutdir_dfd, error)) + if (!glnx_opendirat (deploy_base_dfd, checkoutdir_basename, TRUE, &checkoutdir_dfd, error)) return FALSE; if (syncfs (checkoutdir_dfd) != 0) @@ -9026,7 +9204,7 @@ flatpak_dir_deploy_install (FlatpakDir *self, if (strcmp (old_origin, origin) != 0) remove_ref_from_remote = g_strdup (old_origin); - g_debug ("Removing old deployment for reinstall"); + g_info ("Removing old deployment for reinstall"); if (!flatpak_dir_undeploy (self, ref, old_active, TRUE, FALSE, cancellable, error)) @@ -9225,7 +9403,7 @@ rewrite_one_dynamic_launcher (const char *portal_desktop_dir, } if (!g_key_file_has_key (old_key_file, G_KEY_FILE_DESKTOP_GROUP, "X-Flatpak", NULL)) { - g_debug ("Ignoring non-Flatpak dynamic launcher: %s", desktop_path); + g_info ("Ignoring non-Flatpak dynamic launcher: %s", desktop_path); return; } @@ -9262,7 +9440,7 @@ rewrite_one_dynamic_launcher (const char *portal_desktop_dir, if (!g_file_delete (link_file, NULL, &local_error) && !g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND)) { - g_debug ("Unable to delete desktop file link %s: %s", desktop_name, local_error->message); + g_info ("Unable to delete desktop file link %s: %s", desktop_name, local_error->message); g_clear_error (&local_error); } @@ -9610,7 +9788,7 @@ flatpak_dir_setup_revokefs_fuse_mount (FlatpakDir *self, &local_error)) { if (g_error_matches (local_error, G_DBUS_ERROR, G_DBUS_ERROR_NOT_SUPPORTED)) - g_debug ("revokefs-fuse not supported on your installation: %s", local_error->message); + g_info ("revokefs-fuse not supported on your installation: %s", local_error->message); else g_warning ("Failed to get revokefs-fuse socket from system-helper: %s", local_error->message); @@ -10245,26 +10423,15 @@ flatpak_dir_install_bundle (FlatpakDir *self, } static gboolean -_g_strv_equal0 (gchar **a, gchar **b) +_g_strv_equal0 (const char * const *a, const char * const *b) { - gboolean ret = FALSE; - guint n; - if (a == NULL && b == NULL) - { - ret = TRUE; - goto out; - } + return TRUE; + if (a == NULL || b == NULL) - goto out; - if (g_strv_length (a) != g_strv_length (b)) - goto out; - for (n = 0; a[n] != NULL; n++) - if (g_strcmp0 (a[n], b[n]) != 0) - goto out; - ret = TRUE; -out: - return ret; + return FALSE; + + return g_strv_equal (a, b); } gboolean @@ -10327,7 +10494,7 @@ flatpak_dir_needs_update_for_commit_and_subpaths (FlatpakDir *self, /* target commit is the same as current, but maybe something else that is different? */ /* Same commit, but different subpaths => update */ - if (!_g_strv_equal0 ((char **) subpaths, (char **) old_subpaths)) + if (!_g_strv_equal0 (subpaths, old_subpaths)) return TRUE; /* Same subpaths and commit, no need to update */ @@ -10735,7 +10902,7 @@ flatpak_dir_uninstall (FlatpakDir *self, old_active = g_strdup (flatpak_deploy_data_get_commit (deploy_data)); - g_debug ("dropping active ref"); + g_info ("dropping active ref"); if (!flatpak_dir_set_active (self, ref, NULL, cancellable, error)) return FALSE; @@ -10745,7 +10912,7 @@ flatpak_dir_uninstall (FlatpakDir *self, if (current_ref != NULL && flatpak_decomposed_equal (ref, current_ref)) { - g_debug ("dropping current ref"); + g_info ("dropping current ref"); if (!flatpak_dir_drop_current_ref (self, name, cancellable, error)) return FALSE; } @@ -11162,7 +11329,7 @@ flatpak_dir_undeploy_all (FlatpakDir *self, for (i = 0; deployed[i] != NULL; i++) { - g_debug ("undeploying %s", deployed[i]); + g_info ("undeploying %s", deployed[i]); if (!flatpak_dir_undeploy (self, ref, deployed[i], FALSE, force_remove, cancellable, error)) return FALSE; } @@ -11171,12 +11338,12 @@ flatpak_dir_undeploy_all (FlatpakDir *self, was_deployed = g_file_query_exists (deploy_base, cancellable); if (was_deployed) { - g_debug ("removing deploy base"); + g_info ("removing deploy base"); if (!flatpak_rm_rf (deploy_base, cancellable, error)) return FALSE; } - g_debug ("cleaning up empty directories"); + g_info ("cleaning up empty directories"); arch_dir = g_file_get_parent (deploy_base); if (g_file_query_exists (arch_dir, cancellable) && !g_file_delete (arch_dir, cancellable, &temp_error)) @@ -11346,7 +11513,7 @@ flatpak_dir_prune (FlatpakDir *self, the shared lock operation is released and we will do a prune then */ if (g_error_matches (lock_error, G_IO_ERROR, G_IO_ERROR_WOULD_BLOCK)) { - g_debug ("Skipping prune due to in progress operation"); + g_info ("Skipping prune due to in progress operation"); return TRUE; } @@ -11354,7 +11521,7 @@ flatpak_dir_prune (FlatpakDir *self, return FALSE; } - g_debug ("Pruning repo"); + g_info ("Pruning repo"); if (!ostree_repo_prune (self->repo, OSTREE_REPO_PRUNE_FLAGS_REFS_ONLY, 0, @@ -11365,7 +11532,7 @@ flatpak_dir_prune (FlatpakDir *self, goto out; formatted_freed_size = g_format_size_full (pruned_object_size_total, 0); - g_debug ("Pruned %d/%d objects, size %s", objects_total, objects_pruned, formatted_freed_size); + g_info ("Pruned %d/%d objects, size %s", objects_total, objects_pruned, formatted_freed_size); ret = TRUE; @@ -11405,7 +11572,7 @@ flatpak_dir_update_summary (FlatpakDir *self, g_autoptr(GError) local_error = NULL; g_autoptr(GFile) summary_file = NULL; - g_debug ("Deleting summary"); + g_info ("Deleting summary"); summary_file = g_file_get_child (ostree_repo_get_path (self->repo), "summary"); @@ -11421,7 +11588,7 @@ flatpak_dir_update_summary (FlatpakDir *self, { g_auto(GLnxLockFile) lock = { 0, }; - g_debug ("Updating summary"); + g_info ("Updating summary"); /* Keep a shared repo lock to avoid prunes removing objects we're relying on * while generating the summary. */ @@ -11469,7 +11636,7 @@ flatpak_dir_get_if_deployed (FlatpakDir *self, } if (g_file_query_file_type (deploy_dir, G_FILE_QUERY_INFO_NONE, cancellable) == G_FILE_TYPE_DIRECTORY) - return g_object_ref (deploy_dir); + return g_steal_pointer (&deploy_dir); /* Maybe it was removed but is still living? */ if (checksum != NULL) @@ -11483,7 +11650,7 @@ flatpak_dir_get_if_deployed (FlatpakDir *self, removed_deploy_dir = g_file_get_child (removed_dir, dirname); if (g_file_query_file_type (removed_deploy_dir, G_FILE_QUERY_INFO_NONE, cancellable) == G_FILE_TYPE_DIRECTORY) - return g_object_ref (removed_deploy_dir); + return g_steal_pointer (&removed_deploy_dir); } return NULL; @@ -11723,7 +11890,7 @@ flatpak_dir_lookup_cached_summary (FlatpakDir *self, if ((now - summary->time) / G_USEC_PER_SEC < SUMMARY_CACHE_TIMEOUT_SEC && strcmp (url, summary->url) == 0) { - /* g_debug ("Using cached summary for remote %s", name); */ + /* g_info ("Using cached summary for remote %s", name); */ *bytes_out = g_bytes_ref (summary->bytes); if (bytes_sig_out) { @@ -11997,7 +12164,7 @@ flatpak_dir_remote_clear_cached_summary (FlatpakDir *self, GCancellable *cancellable, GError **error) { - g_debug ("Clearing cached summaries for remote %s", remote); + g_info ("Clearing cached summaries for remote %s", remote); if (!_flatpak_dir_remote_clear_cached_summary (self, remote, NULL, cancellable, error)) return FALSE; if (!_flatpak_dir_remote_clear_cached_summary (self, remote, ".sig", cancellable, error)) @@ -12105,7 +12272,7 @@ flatpak_dir_remote_load_cached_summary (FlatpakDir *self, !g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND)) { g_autofree char *path = g_file_get_path (main_cache_file); - g_debug ("Unable to delete file %s: %s", path, local_error->message); + g_info ("Unable to delete file %s: %s", path, local_error->message); g_clear_error (&local_error); } @@ -12115,7 +12282,7 @@ flatpak_dir_remote_load_cached_summary (FlatpakDir *self, !g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND)) { g_autofree char *path = g_file_get_path (sig_cache_file); - g_debug ("Unable to delete file %s: %s", path, local_error->message); + g_info ("Unable to delete file %s: %s", path, local_error->message); g_clear_error (&local_error); } } @@ -12180,11 +12347,11 @@ flatpak_dir_remote_fetch_summary (FlatpakDir *self, if (!flatpak_dir_remote_load_cached_summary (self, name_or_uri, NULL, NULL, ".sig", &summary, &summary_sig, cancellable, error)) return FALSE; - g_debug ("Loaded summary from cache for remote ‘%s’", name_or_uri); + g_info ("Loaded summary from cache for remote ‘%s’", name_or_uri); } else { - g_debug ("Fetching summary file for remote ‘%s’", name_or_uri); + g_info ("Fetching summary file for remote ‘%s’", name_or_uri); if (!ostree_repo_remote_fetch_summary (self->repo, name_or_uri, &summary, &summary_sig, cancellable, @@ -12344,7 +12511,7 @@ flatpak_dir_remote_fetch_summary_index (FlatpakDir *self, g_propagate_error (error, g_steal_pointer (&cache_error)); return FALSE; } - g_debug ("Loaded summary index from cache for remote ‘%s’", name_or_uri); + g_info ("Loaded summary index from cache for remote ‘%s’", name_or_uri); index = g_steal_pointer (&cached_index); if (gpg_verify_summary) @@ -12356,7 +12523,7 @@ flatpak_dir_remote_fetch_summary_index (FlatpakDir *self, g_autoptr(GBytes) dl_index = NULL; gboolean used_download = FALSE; - g_debug ("Fetching summary index file for remote ‘%s’", name_or_uri); + g_info ("Fetching summary index file for remote ‘%s’", name_or_uri); dl_index = flatpak_load_uri (self->http_session, index_url, 0, NULL, NULL, NULL, NULL, @@ -12529,13 +12696,13 @@ flatpak_dir_remote_fetch_indexed_summary (FlatpakDir *self, g_autofree char *delta_filename = g_strconcat (old_checksum, "-", checksum, ".delta", NULL); g_autofree char *delta_url = g_build_filename (url, "summaries", delta_filename, NULL); - g_debug ("Fetching indexed summary delta %s for remote ‘%s’", delta_filename, name_or_uri); + g_info ("Fetching indexed summary delta %s for remote ‘%s’", delta_filename, name_or_uri); g_autoptr(GBytes) delta = flatpak_load_uri (self->http_session, delta_url, 0, NULL, NULL, NULL, NULL, cancellable, &delta_error); if (delta == NULL) - g_debug ("Failed to load delta, falling back: %s", delta_error->message); + g_info ("Failed to load delta, falling back: %s", delta_error->message); else { g_autoptr(GBytes) applied = flatpak_summary_apply_diff (old_summary, delta, &delta_error); @@ -12556,7 +12723,7 @@ flatpak_dir_remote_fetch_indexed_summary (FlatpakDir *self, if (summary == NULL) { g_autofree char *filename = g_strconcat (checksum, ".gz", NULL); - g_debug ("Fetching indexed summary file %s for remote ‘%s’", filename, name_or_uri); + g_info ("Fetching indexed summary file %s for remote ‘%s’", filename, name_or_uri); g_autofree char *subsummary_url = g_build_filename (url, "summaries", filename, NULL); summary_z = flatpak_load_uri (self->http_session, subsummary_url, 0, NULL, NULL, NULL, NULL, @@ -12588,7 +12755,7 @@ flatpak_dir_remote_fetch_indexed_summary (FlatpakDir *self, } } else - g_debug ("Loaded indexed summary file %s from cache for remote ‘%s’", checksum, name_or_uri); + g_info ("Loaded indexed summary file %s from cache for remote ‘%s’", checksum, name_or_uri); /* Cache in memory */ if (!is_local && !only_cached) @@ -12724,7 +12891,7 @@ _flatpak_dir_get_remote_state (FlatpakDir *self, got_summary = TRUE; if (optional && !g_cancellable_is_cancelled (cancellable)) { - g_debug ("Failed to download optional summary index: %s", local_error->message); + g_info ("Failed to download optional summary index: %s", local_error->message); state->summary_fetch_error = g_steal_pointer (&local_error); } else @@ -12750,7 +12917,7 @@ _flatpak_dir_get_remote_state (FlatpakDir *self, { if (optional && !g_cancellable_is_cancelled (cancellable)) { - g_debug ("Failed to download optional summary: %s", local_error->message); + g_info ("Failed to download optional summary: %s", local_error->message); state->summary_fetch_error = g_steal_pointer (&local_error); } else @@ -12815,7 +12982,7 @@ _flatpak_dir_get_remote_state (FlatpakDir *self, var_subsummary_peek_checksum (subsummary, &checksum_bytes_len); if (G_UNLIKELY (checksum_bytes_len != OSTREE_SHA256_DIGEST_LEN)) { - g_debug ("Invalid checksum for digested summary, not using cache"); + g_info ("Invalid checksum for digested summary, not using cache"); continue; } @@ -12965,7 +13132,7 @@ populate_hash_table_from_refs_map (GHashTable *ret_all_refs, continue; /* New timestamp is older, skip this commit */ } - new_timestamp = g_memdup (×tamp, sizeof (guint64)); + new_timestamp = g_memdup2 (×tamp, sizeof (guint64)); } g_hash_table_replace (ret_all_refs, g_steal_pointer (&decomposed), ostree_checksum_from_bytes (csum_bytes)); @@ -14390,6 +14557,7 @@ parse_ref_file (GKeyFile *keyfile, *url_out = NULL; *gpg_data_out = NULL; *is_runtime_out = FALSE; + *collection_id_out = NULL; if (!g_key_file_has_group (keyfile, FLATPAK_REF_GROUP)) return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Invalid file format, no %s group"), FLATPAK_REF_GROUP); @@ -14601,8 +14769,7 @@ flatpak_dir_list_remotes (FlatpakDir *self, if (res == NULL) res = g_new0 (char *, 1); /* Return empty array, not error */ - g_qsort_with_data (res, g_strv_length (res), sizeof (char *), - cmp_remote, self); + qsort_r (res, g_strv_length (res), sizeof (char *), cmp_remote, self); return res; } @@ -14907,8 +15074,8 @@ flatpak_dir_modify_remote (FlatpakDir *self, return FALSE; /* XXX If we ever add internationalization, use ngettext() here. */ - g_debug ("Imported %u GPG key%s to remote \"%s\"", - imported, (imported == 1) ? "" : "s", remote_name); + g_info ("Imported %u GPG key%s to remote \"%s\"", + imported, (imported == 1) ? "" : "s", remote_name); } filter_path = g_key_file_get_value (new_config, group, "xa.filter", NULL); @@ -14929,11 +15096,11 @@ flatpak_dir_modify_remote (FlatpakDir *self, if (!g_file_replace_contents (filter_copy, backup_data_copy, strlen (backup_data_copy), NULL, FALSE, G_FILE_CREATE_REPLACE_DESTINATION, NULL, cancellable, &local_error)) - g_debug ("Failed to save backup copy of filter file %s: %s\n", filter_path, local_error->message); + g_info ("Failed to save backup copy of filter file %s: %s\n", filter_path, local_error->message); } else { - g_debug ("Failed to read filter %s file while making a backup copy: %s\n", filter_path, local_error->message); + g_info ("Failed to read filter %s file while making a backup copy: %s\n", filter_path, local_error->message); } } @@ -15256,14 +15423,14 @@ flatpak_dir_update_remote_configuration (FlatpakDir *self, if (!gpg_verify_summary || !gpg_verify) { - g_debug ("Ignoring automatic updates for system-helper remotes without gpg signatures"); + g_info ("Ignoring automatic updates for system-helper remotes without gpg signatures"); return TRUE; } if ((state->summary != NULL && state->summary_sig_bytes == NULL) || (state->index != NULL && state->index_sig_bytes == NULL)) { - g_debug ("Can't update remote configuration as user, no GPG signature"); + g_info ("Can't update remote configuration as user, no GPG signature"); return TRUE; } @@ -15396,13 +15563,16 @@ add_related (FlatpakDir *self, auto_prune = TRUE; /* Don't download if there is an unmaintained extension already installed */ + /* TODO: This is a circular dependency between flatpak-dir (which + * deals with a single installation) and flatpak-dir-utils (which + * deals with all the installations on the system). */ unmaintained_path = flatpak_find_unmaintained_extension_dir_if_exists (id, arch, branch, NULL); if (unmaintained_path != NULL && deploy_data == NULL) { - g_debug ("Skipping related extension ‘%s’ because it is already " - "installed as an unmaintained extension in ‘%s’.", - id, flatpak_file_get_path_cached (unmaintained_path)); + g_info ("Skipping related extension ‘%s’ because it is already " + "installed as an unmaintained extension in ‘%s’.", + id, flatpak_file_get_path_cached (unmaintained_path)); download = FALSE; } @@ -15715,7 +15885,7 @@ flatpak_dir_find_remote_related (FlatpakDir *self, metadata_file = g_file_get_child (deploy_dir, "metadata"); if (!g_file_load_contents (metadata_file, cancellable, &metadata, NULL, NULL, NULL)) { - g_debug ("No metadata in local deploy"); + g_info ("No metadata in local deploy"); /* No metadata => no related, but no error */ } } @@ -16007,7 +16177,7 @@ flatpak_dir_find_local_related (FlatpakDir *self, metadata = g_file_get_child (deploy_dir, "metadata"); if (!g_file_load_contents (metadata, cancellable, &metadata_contents, NULL, NULL, NULL)) { - g_debug ("No metadata in local deploy"); + g_info ("No metadata in local deploy"); /* No metadata => no related, but no error */ } } @@ -16021,7 +16191,7 @@ flatpak_dir_find_local_related (FlatpakDir *self, g_autoptr(GVariant) commit_metadata = g_variant_get_child_value (commit_data, 0); g_variant_lookup (commit_metadata, "xa.metadata", "s", &metadata_contents); if (metadata_contents == NULL) - g_debug ("No xa.metadata in local commit %s ref %s", checksum, flatpak_decomposed_get_ref (ref)); + g_info ("No xa.metadata in local commit %s ref %s", checksum, flatpak_decomposed_get_ref (ref)); } } @@ -16047,143 +16217,12 @@ flatpak_dir_get_remote_auto_install_authenticator_ref (FlatpakDir *self, g_autoptr(GError) local_error = NULL; ref = flatpak_decomposed_new_from_parts (FLATPAK_KINDS_APP, authenticator_name, flatpak_get_arch (), "autoinstall", &local_error); if (ref == NULL) - g_debug ("Invalid authenticator ref: %s\n", local_error->message); + g_info ("Invalid authenticator ref: %s\n", local_error->message); } return g_steal_pointer (&ref); } - -static GDBusProxy * -get_localed_dbus_proxy (void) -{ - const char *localed_bus_name = "org.freedesktop.locale1"; - const char *localed_object_path = "/org/freedesktop/locale1"; - const char *localed_interface_name = localed_bus_name; - - return g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM, - G_DBUS_PROXY_FLAGS_NONE, - NULL, - localed_bus_name, - localed_object_path, - localed_interface_name, - NULL, - NULL); -} - -static void -get_locale_langs_from_localed_dbus (GDBusProxy *proxy, GPtrArray *langs) -{ - g_autoptr(GVariant) locale_variant = NULL; - g_autofree const gchar **strv = NULL; - gsize i, j; - - locale_variant = g_dbus_proxy_get_cached_property (proxy, "Locale"); - if (locale_variant == NULL) - return; - - strv = g_variant_get_strv (locale_variant, NULL); - - for (i = 0; strv[i]; i++) - { - const gchar *locale = NULL; - g_autofree char *lang = NULL; - - const char * const *categories = flatpak_get_locale_categories (); - - for (j = 0; categories[j]; j++) - { - g_autofree char *prefix = g_strdup_printf ("%s=", categories[j]); - if (g_str_has_prefix (strv[i], prefix)) - { - locale = strv[i] + strlen (prefix); - break; - } - } - - if (locale == NULL || strcmp (locale, "") == 0) - continue; - - lang = flatpak_get_lang_from_locale (locale); - if (lang != NULL && !flatpak_g_ptr_array_contains_string (langs, lang)) - g_ptr_array_add (langs, g_steal_pointer (&lang)); - } -} - -static GDBusProxy * -get_accounts_dbus_proxy (void) -{ - const char *accounts_bus_name = "org.freedesktop.Accounts"; - const char *accounts_object_path = "/org/freedesktop/Accounts"; - const char *accounts_interface_name = accounts_bus_name; - - return g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM, - G_DBUS_PROXY_FLAGS_NONE, - NULL, - accounts_bus_name, - accounts_object_path, - accounts_interface_name, - NULL, - NULL); -} - -static void -get_locale_langs_from_accounts_dbus (GDBusProxy *proxy, GPtrArray *langs) -{ - const char *accounts_bus_name = "org.freedesktop.Accounts"; - const char *accounts_interface_name = "org.freedesktop.Accounts.User"; - g_auto(GStrv) object_paths = NULL; - int i; - g_autoptr(GVariant) ret = NULL; - - ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), - "ListCachedUsers", - g_variant_new ("()"), - G_DBUS_CALL_FLAGS_NONE, - -1, - NULL, - NULL); - if (ret != NULL) - g_variant_get (ret, - "(^ao)", - &object_paths); - - if (object_paths != NULL) - { - for (i = 0; object_paths[i] != NULL; i++) - { - g_autoptr(GDBusProxy) accounts_proxy = NULL; - g_autoptr(GVariant) value = NULL; - - accounts_proxy = g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM, - G_DBUS_PROXY_FLAGS_NONE, - NULL, - accounts_bus_name, - object_paths[i], - accounts_interface_name, - NULL, - NULL); - - if (accounts_proxy) - { - value = g_dbus_proxy_get_cached_property (accounts_proxy, "Language"); - if (value != NULL) - { - const char *locale = g_variant_get_string (value, NULL); - g_autofree char *lang = NULL; - - if (strcmp (locale, "") == 0) - continue; /* This user wants the system default locale */ - - lang = flatpak_get_lang_from_locale (locale); - if (lang != NULL && !flatpak_g_ptr_array_contains_string (langs, lang)) - g_ptr_array_add (langs, g_steal_pointer (&lang)); - } - } - } - } -} - static int cmpstringp (const void *p1, const void *p2) { @@ -16214,36 +16253,6 @@ flatpak_dir_get_config_strv (FlatpakDir *self, char *key) return NULL; } -static const GPtrArray * -get_system_locales (FlatpakDir *self) -{ - static GPtrArray *cached = NULL; - - if (g_once_init_enter (&cached)) - { - GPtrArray *langs = g_ptr_array_new_with_free_func (g_free); - g_autoptr(GDBusProxy) localed_proxy = NULL; - g_autoptr(GDBusProxy) accounts_proxy = NULL; - - /* Get the system default locales */ - localed_proxy = get_localed_dbus_proxy (); - if (localed_proxy != NULL) - get_locale_langs_from_localed_dbus (localed_proxy, langs); - - /* Now add the user account locales from AccountsService. If accounts_proxy is - * not NULL, it means that AccountsService exists */ - accounts_proxy = get_accounts_dbus_proxy (); - if (accounts_proxy != NULL) - get_locale_langs_from_accounts_dbus (accounts_proxy, langs); - - g_ptr_array_add (langs, NULL); - - g_once_init_leave (&cached, langs); - } - - return (const GPtrArray *)cached; -} - char ** flatpak_dir_get_default_locales (FlatpakDir *self) { @@ -16255,12 +16264,16 @@ flatpak_dir_get_default_locales (FlatpakDir *self) if (flatpak_dir_is_user (self)) { g_auto(GStrv) locale_langs = flatpak_get_current_locale_langs (); + g_auto(GStrv) merged = NULL; + + langs = flatpak_get_user_locales (); + merged = flatpak_strv_merge (extra_languages, (char **) langs->pdata); - return sort_strv (flatpak_strv_merge (extra_languages, locale_langs)); + return sort_strv (flatpak_strv_merge (merged, locale_langs)); } /* Then get the system default locales */ - langs = get_system_locales (self); + langs = flatpak_get_system_locales (); return sort_strv (flatpak_strv_merge (extra_languages, (char **) langs->pdata)); } @@ -16284,12 +16297,16 @@ flatpak_dir_get_default_locale_languages (FlatpakDir *self) if (flatpak_dir_is_user (self)) { g_auto(GStrv) locale_langs = flatpak_get_current_locale_langs (); + g_auto(GStrv) merged = NULL; - return sort_strv (flatpak_strv_merge (extra_languages, locale_langs)); + langs = flatpak_get_user_locales (); + merged = flatpak_strv_merge (extra_languages, (char **) langs->pdata); + + return sort_strv (flatpak_strv_merge (merged, locale_langs)); } /* Then get the system default locales */ - langs = get_system_locales (self); + langs = flatpak_get_system_locales (); return sort_strv (flatpak_strv_merge (extra_languages, (char **) langs->pdata)); } @@ -16471,8 +16488,8 @@ flatpak_dir_delete_mirror_refs (FlatpakDir *self, { if (g_strv_contains ((const char * const *)ignore_collections->pdata, c_r->collection_id)) { - g_debug ("Ignoring collection-ref (%s, %s) since its remote is disabled or it matches the repo collection ID", - c_r->collection_id, c_r->ref_name); + g_info ("Ignoring collection-ref (%s, %s) since its remote is disabled or it matches the repo collection ID", + c_r->collection_id, c_r->ref_name); continue; } @@ -16532,12 +16549,14 @@ maybe_get_metakey (FlatpakDir *dir, FlatpakDecomposed *ref, GHashTable *metadata_injection, GKeyFile **out_metakey, - gboolean *out_ref_is_shadowed) + gboolean *out_ref_is_shadowed, + char **out_dir_name) { if (shadowing_dir && dir_get_metadata (shadowing_dir, ref, out_metakey)) { *out_ref_is_shadowed = TRUE; + *out_dir_name = g_strdup_printf (" (%s)", flatpak_dir_get_name_cached (shadowing_dir)); return TRUE; } @@ -16548,6 +16567,7 @@ maybe_get_metakey (FlatpakDir *dir, { *out_ref_is_shadowed = FALSE; *out_metakey = g_key_file_ref (injected_metakey); + *out_dir_name = g_strdup (""); return TRUE; } } @@ -16555,6 +16575,7 @@ maybe_get_metakey (FlatpakDir *dir, if (dir_get_metadata (dir, ref, out_metakey)) { *out_ref_is_shadowed = FALSE; + *out_dir_name = g_strdup_printf (" (%s)", flatpak_dir_get_name_cached (dir)); return TRUE; } @@ -16596,6 +16617,7 @@ find_used_refs (FlatpakDir *self, GHashTable *metadata_injection, GHashTable *refs_to_exclude, GHashTable *used_refs, /* This is filled in */ + GHashTable *autopruned_refs, /* This is filled in */ GCancellable *cancellable, GError **error) { @@ -16636,9 +16658,16 @@ find_used_refs (FlatpakDir *self, * uses a system gl extension. * * However, for non-shadowed runtime refs, only pinned ones are roots */ - if (root_ref_dir == shadowing_dir || - flatpak_dir_ref_is_pinned (root_ref_dir, flatpak_decomposed_get_ref (root_runtime_ref))) - queue_ref_for_analysis (root_runtime_ref, arch, analyzed_refs, refs_to_analyze); + if (root_ref_dir == shadowing_dir) + { + queue_ref_for_analysis (root_runtime_ref, arch, analyzed_refs, refs_to_analyze); + } + else if (flatpak_dir_ref_is_pinned (root_ref_dir, flatpak_decomposed_get_ref (root_runtime_ref))) + { + g_debug ("%s: Treating %s as used since it's pinned", + G_STRFUNC, flatpak_decomposed_get_ref (root_runtime_ref)); + queue_ref_for_analysis (root_runtime_ref, arch, analyzed_refs, refs_to_analyze); + } } /* Any injected refs are considered used, because this is used by transaction @@ -16650,7 +16679,11 @@ find_used_refs (FlatpakDir *self, { g_autoptr(FlatpakDecomposed) injected = flatpak_decomposed_new_from_ref (injected_ref, NULL); if (injected) - queue_ref_for_analysis (injected, arch, analyzed_refs, refs_to_analyze); + { + g_debug ("%s: Treating %s as used during unused refs analysis", + G_STRFUNC, flatpak_decomposed_get_ref (injected)); + queue_ref_for_analysis (injected, arch, analyzed_refs, refs_to_analyze); + } } } @@ -16661,9 +16694,10 @@ find_used_refs (FlatpakDir *self, gboolean is_app; g_autoptr(GPtrArray) related = NULL; g_autofree char *sdk = NULL; + g_autofree char *dir_name = NULL; if (!maybe_get_metakey (self, shadowing_dir, ref_to_analyze, metadata_injection, - &metakey, &ref_is_shadowed)) + &metakey, &ref_is_shadowed, &dir_name)) continue; /* Something used something we could not find, that is fine and happens for instance with sdk dependencies */ if (!ref_is_shadowed) @@ -16676,7 +16710,11 @@ find_used_refs (FlatpakDir *self, * unused, but we don't analyze them for any dependencies. Note that refs_to_exclude only * affects the base dir, so does not affect shadowed refs */ if (refs_to_exclude != NULL && g_hash_table_contains (refs_to_exclude, ref_to_analyze)) - continue; + { + g_debug ("%s: Treating %s as uninstalled during unused refs analysis", + G_STRFUNC, flatpak_decomposed_get_ref (ref_to_analyze)); + continue; + } } /************************************************ @@ -16693,17 +16731,28 @@ find_used_refs (FlatpakDir *self, { g_autoptr(FlatpakDecomposed) runtime_ref = flatpak_decomposed_new_from_pref (FLATPAK_KINDS_RUNTIME, runtime, NULL); if (runtime_ref && !flatpak_decomposed_equal (runtime_ref, ref_to_analyze)) - queue_ref_for_analysis (runtime_ref, arch, analyzed_refs, refs_to_analyze); + { + g_debug ("%s: Considering runtime %s used by app %s%s", + G_STRFUNC, flatpak_decomposed_get_ref (runtime_ref), + flatpak_decomposed_get_ref (ref_to_analyze), dir_name); + queue_ref_for_analysis (runtime_ref, arch, analyzed_refs, refs_to_analyze); + } } } - /* Both apps and runtims directly depends on its sdk, to avoid suddenly uninstalling something you use to develop the app */ + /* Both apps and runtimes directly depends on its sdk, to avoid suddenly + * uninstalling something you use to develop the app */ sdk = g_key_file_get_string (metakey, is_app ? "Application" : "Runtime", "sdk", NULL); if (sdk) { g_autoptr(FlatpakDecomposed) sdk_ref = flatpak_decomposed_new_from_pref (FLATPAK_KINDS_RUNTIME, sdk, NULL); if (sdk_ref && !flatpak_decomposed_equal (sdk_ref, ref_to_analyze)) - queue_ref_for_analysis (sdk_ref, arch, analyzed_refs, refs_to_analyze); + { + g_debug ("%s: Considering sdk %s used by %s%s", + G_STRFUNC, flatpak_decomposed_get_ref (sdk_ref), + flatpak_decomposed_get_ref (ref_to_analyze), dir_name); + queue_ref_for_analysis (sdk_ref, arch, analyzed_refs, refs_to_analyze); + } } /* Extensions with extra data, that are not specially marked NoRuntime needs the runtime at install. @@ -16717,7 +16766,12 @@ find_used_refs (FlatpakDir *self, { g_autoptr(FlatpakDecomposed) d = flatpak_decomposed_new_from_ref (extension_runtime_ref, NULL); if (d) - queue_ref_for_analysis (d, arch, analyzed_refs, refs_to_analyze); + { + g_debug ("%s: Considering runtime %s used by extra-data %s%s", + G_STRFUNC, flatpak_decomposed_get_ref (d), + flatpak_decomposed_get_ref (ref_to_analyze), dir_name); + queue_ref_for_analysis (d, arch, analyzed_refs, refs_to_analyze); + } } } @@ -16730,8 +16784,15 @@ find_used_refs (FlatpakDir *self, if (!rel->auto_prune) { + g_debug ("%s: Considering related ref %s used by %s%s", + G_STRFUNC, flatpak_decomposed_get_ref (rel->ref), + flatpak_decomposed_get_ref (ref_to_analyze), dir_name); queue_ref_for_analysis (rel->ref, arch, analyzed_refs, refs_to_analyze); } + else + { + g_hash_table_add (autopruned_refs, flatpak_decomposed_ref (rel->ref)); + } } } @@ -16742,19 +16803,22 @@ find_used_refs (FlatpakDir *self, * flatpak_installation_list_unused_refs_with_options(). * The returned pointer array is transfer full. */ char ** -flatpak_dir_list_unused_refs (FlatpakDir *self, - const char *arch, - GHashTable *metadata_injection, - GHashTable *eol_injection, - const char * const *refs_to_exclude, - gboolean filter_by_eol, - GCancellable *cancellable, - GError **error) +flatpak_dir_list_unused_refs (FlatpakDir *self, + const char *arch, + GHashTable *metadata_injection, + GHashTable *eol_injection, + const char * const *refs_to_exclude, + FlatpakDirFilterFlags filter_flags, + GCancellable *cancellable, + GError **error) { g_autoptr(GHashTable) used_refs = NULL; + g_autoptr(GHashTable) autoprune_refs = NULL; g_autoptr(GHashTable) excluded_refs_ht = NULL; g_autoptr(GPtrArray) refs = NULL; g_autoptr(GPtrArray) runtime_refs = NULL; + gboolean filter_by_eol = (filter_flags & FLATPAK_DIR_FILTER_EOL) != 0; + gboolean filter_by_autoprune = (filter_flags & FLATPAK_DIR_FILTER_AUTOPRUNE) != 0; /* Convert refs_to_exclude to hashtable for fast repeated lookups */ if (refs_to_exclude) @@ -16770,9 +16834,14 @@ flatpak_dir_list_unused_refs (FlatpakDir *self, } used_refs = g_hash_table_new_full ((GHashFunc)flatpak_decomposed_hash, (GEqualFunc)flatpak_decomposed_equal, (GDestroyNotify)flatpak_decomposed_unref, NULL); + autoprune_refs = g_hash_table_new_full ((GHashFunc)flatpak_decomposed_hash, (GEqualFunc)flatpak_decomposed_equal, (GDestroyNotify)flatpak_decomposed_unref, NULL); + g_info ("Checking installation ‘%s’ %s%s", + flatpak_dir_get_name_cached (self), + filter_by_eol ? "for EOL unused refs" : "for unused refs", + filter_by_autoprune ? " and autoprunes" : ""); if (!find_used_refs (self, NULL, arch, metadata_injection, excluded_refs_ht, - used_refs, cancellable, error)) + used_refs, autoprune_refs, cancellable, error)) return NULL; /* If @self is a system installation, also check the per-user installation @@ -16786,8 +16855,10 @@ flatpak_dir_list_unused_refs (FlatpakDir *self, g_autoptr(FlatpakDir) user_dir = flatpak_dir_get_user (); g_autoptr(GError) local_error = NULL; + g_info ("Checking installation ‘%s’ by checking for dependent refs in ‘%s’", + flatpak_dir_get_name_cached (self), flatpak_dir_get_name_cached (user_dir)); if (!find_used_refs (self, user_dir, arch, metadata_injection, excluded_refs_ht, - used_refs, cancellable, &local_error)) + used_refs, autoprune_refs, cancellable, &local_error)) { /* We may get permission denied if the process is sandboxed with * systemd's ProtectHome= @@ -16817,9 +16888,10 @@ flatpak_dir_list_unused_refs (FlatpakDir *self, if (arch != NULL && !flatpak_decomposed_is_arch (ref, arch)) continue; - if (filter_by_eol) + if (filter_flags) { gboolean is_eol = FALSE; + gboolean is_autopruned = g_hash_table_contains (autoprune_refs, ref); if (eol_injection && g_hash_table_contains (eol_injection, flatpak_decomposed_get_ref (ref))) { @@ -16837,10 +16909,20 @@ flatpak_dir_list_unused_refs (FlatpakDir *self, flatpak_deploy_data_get_eol_rebase (deploy_data)); } - if (!is_eol) - continue; + if (!((is_autopruned && filter_by_autoprune) || (is_eol && filter_by_eol))) + { + g_debug ("%s: Ref %s (%s) not %s, so excluding from unused refs", + G_STRFUNC, flatpak_decomposed_get_ref (ref), + flatpak_dir_get_name_cached (self), + (!is_eol && filter_by_eol) ? "end-of-life" : "autopruned"); + continue; + } } + g_info ("%s: Ref %s (%s) is %s", + G_STRFUNC, flatpak_decomposed_get_ref (ref), + flatpak_dir_get_name_cached (self), + filter_by_eol ? "EOL and unused" : "unused"); g_ptr_array_add (refs, flatpak_decomposed_dup_ref (ref)); } diff --git a/common/flatpak-exports-private.h b/common/flatpak-exports-private.h index 3a43ecb..5be4978 100644 --- a/common/flatpak-exports-private.h +++ b/common/flatpak-exports-private.h @@ -82,4 +82,6 @@ void flatpak_exports_take_host_fd (FlatpakExports *exports, void flatpak_exports_set_test_flags (FlatpakExports *exports, FlatpakExportsTestFlags flags); +extern const char * const *flatpak_abs_usrmerged_dirs; + #endif /* __FLATPAK_EXPORTS_H__ */ diff --git a/common/flatpak-exports.c b/common/flatpak-exports.c index 4af45a8..b6fb9d1 100644 --- a/common/flatpak-exports.c +++ b/common/flatpak-exports.c @@ -41,12 +41,22 @@ #include "libglnx.h" #include "flatpak-exports-private.h" -#include "flatpak-run-private.h" +#include "flatpak-metadata-private.h" #include "flatpak-utils-base-private.h" -#include "flatpak-dir-private.h" -#include "flatpak-systemd-dbus-generated.h" +#include "flatpak-utils-private.h" #include "flatpak-error.h" +static const char * const abs_usrmerged_dirs[] = +{ + "/bin", + "/lib", + "/lib32", + "/lib64", + "/sbin", + NULL +}; +const char * const *flatpak_abs_usrmerged_dirs = abs_usrmerged_dirs; + /* We don't want to export paths pointing into these, because they are readonly (so we can't create mountpoints there) and don't match what's on the host anyway. flatpak_abs_usrmerged_dirs get the same treatment without having to be listed @@ -434,9 +444,9 @@ flatpak_exports_append_bwrap_args (FlatpakExports *exports, eps = g_hash_table_get_values (exports->hash); eps = g_list_sort (eps, (GCompareFunc) compare_eps); - g_qsort_with_data (keys, n_keys, sizeof (char *), (GCompareDataFunc) flatpak_strcmp0_ptr, NULL); + qsort (keys, n_keys, sizeof (char *), flatpak_strcmp0_ptr); - flatpak_debug2 ("Converting FlatpakExports to bwrap arguments..."); + g_debug ("Converting FlatpakExports to bwrap arguments..."); for (l = eps; l != NULL; l = l->next) { @@ -447,12 +457,12 @@ flatpak_exports_append_bwrap_args (FlatpakExports *exports, if (ep->mode == FAKE_MODE_SYMLINK) { - flatpak_debug2 ("\"%s\" is meant to be a symlink", path); + g_debug ("\"%s\" is meant to be a symlink", path); if (path_parent_is_mapped (keys, n_keys, exports->hash, path)) { - flatpak_debug2 ("Not creating \"%s\" as symlink because its parent is " - "already mapped", path); + g_debug ("Not creating \"%s\" as symlink because its parent is " + "already mapped", path); } else { @@ -464,19 +474,19 @@ flatpak_exports_append_bwrap_args (FlatpakExports *exports, g_autofree char *parent = g_path_get_dirname (path); g_autofree char *relative = make_relative (parent, resolved); - flatpak_debug2 ("Resolved \"%s\" to \"%s\" in host", path, resolved); - flatpak_debug2 ("Creating \"%s\" -> \"%s\" in sandbox", path, relative); + g_debug ("Resolved \"%s\" to \"%s\" in host", path, resolved); + g_debug ("Creating \"%s\" -> \"%s\" in sandbox", path, relative); flatpak_bwrap_add_args (bwrap, "--symlink", relative, path, NULL); } else { - flatpak_debug2 ("Unable to resolve \"%s\" in host, skipping", path); + g_debug ("Unable to resolve \"%s\" in host, skipping", path); } } } else if (ep->mode == FAKE_MODE_TMPFS) { - flatpak_debug2 ("\"%s\" is meant to be a tmpfs or empty directory", path); + g_debug ("\"%s\" is meant to be a tmpfs or empty directory", path); /* Mount a tmpfs to hide the subdirectory, but only if there is a pre-existing dir we can mount the path on. */ @@ -485,38 +495,38 @@ flatpak_exports_append_bwrap_args (FlatpakExports *exports, if (!path_parent_is_mapped (keys, n_keys, exports->hash, path)) /* If the parent is not mapped, it will be a tmpfs, no need to mount another one */ { - flatpak_debug2 ("Parent of \"%s\" is not mapped, creating empty directory", path); + g_debug ("Parent of \"%s\" is not mapped, creating empty directory", path); flatpak_bwrap_add_args (bwrap, "--dir", path, NULL); } else { - flatpak_debug2 ("Parent of \"%s\" is mapped, creating tmpfs to shadow it", path); + g_debug ("Parent of \"%s\" is mapped, creating tmpfs to shadow it", path); flatpak_bwrap_add_args (bwrap, "--tmpfs", path, NULL); } } else { - flatpak_debug2 ("Not a directory, skipping: \"%s\"", path); + g_debug ("Not a directory, skipping: \"%s\"", path); } } else if (ep->mode == FAKE_MODE_DIR) { - flatpak_debug2 ("\"%s\" is meant to be a directory", path); + g_debug ("\"%s\" is meant to be a directory", path); if (path_is_dir (exports, path)) { - flatpak_debug2 ("Ensuring \"%s\" is created as a directory", path); + g_debug ("Ensuring \"%s\" is created as a directory", path); flatpak_bwrap_add_args (bwrap, "--dir", path, NULL); } else { - flatpak_debug2 ("Not a directory, skipping: \"%s\"", path); + g_debug ("Not a directory, skipping: \"%s\"", path); } } else { - flatpak_debug2 ("\"%s\" is meant to be shared (ro or rw) with the container", - path); + g_debug ("\"%s\" is meant to be shared (ro or rw) with the container", + path); flatpak_bwrap_add_args (bwrap, (ep->mode == FLATPAK_FILESYSTEM_MODE_READ_ONLY) ? "--ro-bind" : "--bind", path, path, NULL); @@ -656,7 +666,7 @@ flatpak_exports_path_get_mode (FlatpakExports *exports, g_autoptr(GString) path_builder = g_string_new (""); struct stat st; - g_qsort_with_data (keys, n_keys, sizeof (char *), (GCompareDataFunc) flatpak_strcmp0_ptr, NULL); + qsort (keys, n_keys, sizeof (char *), flatpak_strcmp0_ptr); /* Syntactic canonicalization only, no need to use host_fd */ path = canonical = flatpak_canonicalize_filename (path); @@ -763,24 +773,24 @@ do_export_path (FlatpakExports *exports, { if (old_ep->mode < mode) { - flatpak_debug2 ("Increasing export mode from \"%s\" to \"%s\": %s", - export_mode_to_verb (old_ep->mode), - export_mode_to_verb (mode), - path); + g_debug ("Increasing export mode from \"%s\" to \"%s\": %s", + export_mode_to_verb (old_ep->mode), + export_mode_to_verb (mode), + path); ep->mode = mode; } else { - flatpak_debug2 ("Not changing export mode from \"%s\" to \"%s\": %s", - export_mode_to_verb (old_ep->mode), - export_mode_to_verb (mode), - path); + g_debug ("Not changing export mode from \"%s\" to \"%s\": %s", + export_mode_to_verb (old_ep->mode), + export_mode_to_verb (mode), + path); ep->mode = old_ep->mode; } } else { - flatpak_debug2 ("Will %s: %s", export_mode_to_verb (mode), path); + g_debug ("Will %s: %s", export_mode_to_verb (mode), path); ep->mode = mode; } @@ -891,7 +901,7 @@ _exports_path_expose (FlatpakExports *exports, g_return_val_if_fail (is_export_mode (mode), FALSE); - flatpak_debug2 ("Trying to %s: %s", export_mode_to_verb (mode), path); + g_debug ("Trying to %s: %s", export_mode_to_verb (mode), path); if (level > 40) /* 40 is the current kernel ELOOP check */ { @@ -1011,11 +1021,11 @@ _exports_path_expose (FlatpakExports *exports, if (!path_is_symlink (exports, path)) { - flatpak_debug2 ("%s is not a symlink", path); + g_debug ("%s is not a symlink", path); } else if (never_export_as_symlink (path)) { - flatpak_debug2 ("%s is a symlink, but we avoid exporting it as such", path); + g_debug ("%s is a symlink, but we avoid exporting it as such", path); } else { @@ -1025,14 +1035,14 @@ _exports_path_expose (FlatpakExports *exports, if (resolved) { - flatpak_debug2 ("%s is a symlink, resolved to %s", path, resolved); + g_debug ("%s is a symlink, resolved to %s", path, resolved); if (slash) new_target = g_build_filename (resolved, slash + 1, NULL); else new_target = g_strdup (resolved); - flatpak_debug2 ("Trying to export the target instead: %s", new_target); + g_debug ("Trying to export the target instead: %s", new_target); if (_exports_path_expose (exports, mode, new_target, level + 1, &local_error)) { @@ -1040,8 +1050,8 @@ _exports_path_expose (FlatpakExports *exports, return TRUE; } - flatpak_debug2 ("Could not export target %s, so ignoring %s", - new_target, path); + g_debug ("Could not export target %s, so ignoring %s", + new_target, path); g_propagate_error (error, g_steal_pointer (&local_error)); return FALSE; } diff --git a/common/flatpak-glib-backports-private.h b/common/flatpak-glib-backports-private.h new file mode 100644 index 0000000..d030aaf --- /dev/null +++ b/common/flatpak-glib-backports-private.h @@ -0,0 +1,175 @@ +/* + * Copyright 2013 Allison Karlitskaya + * Copyright 2013 Collabora Ltd. + * Copyright 2016 Canonical Ltd. + * Copyright 2017-2018 Endless OS Foundation LLC + * Copyright 2019 Red Hat, Inc + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + */ + +#pragma once + +#include "libglnx.h" + +#include +#include +#include + +/* Please sort this file by the GLib version where it originated, + * oldest first. */ + +G_BEGIN_DECLS + +#if !GLIB_CHECK_VERSION (2, 40, 0) +static inline gboolean +g_key_file_save_to_file (GKeyFile *key_file, + const gchar *filename, + GError **error) +{ + gchar *contents; + gboolean success; + gsize length; + + g_return_val_if_fail (key_file != NULL, FALSE); + g_return_val_if_fail (filename != NULL, FALSE); + g_return_val_if_fail (error == NULL || *error == NULL, FALSE); + + contents = g_key_file_to_data (key_file, &length, NULL); + g_assert (contents != NULL); + + success = g_file_set_contents (filename, contents, length, error); + g_free (contents); + + return success; +} +#endif + +#if !GLIB_CHECK_VERSION (2, 43, 4) +G_DEFINE_AUTOPTR_CLEANUP_FUNC (GUnixFDList, g_object_unref) +#endif + +#if !GLIB_CHECK_VERSION (2, 54, 0) +static inline gboolean +g_ptr_array_find_with_equal_func (GPtrArray *haystack, + gconstpointer needle, + GEqualFunc equal_func, + guint *index_) +{ + guint i; + + g_return_val_if_fail (haystack != NULL, FALSE); + + if (equal_func == NULL) + equal_func = g_direct_equal; + + for (i = 0; i < haystack->len; i++) + { + if (equal_func (g_ptr_array_index (haystack, i), needle)) + { + if (index_ != NULL) + *index_ = i; + return TRUE; + } + } + + return FALSE; +} + +/* We're non-specific about the error behaviour, so this is good enough */ +#define G_NUMBER_PARSER_ERROR (G_IO_ERROR) +#define G_NUMBER_PARSER_ERROR_INVALID (G_IO_ERROR_INVALID_ARGUMENT) +#define G_NUMBER_PARSER_ERROR_OUT_OF_BOUNDS (G_IO_ERROR_INVALID_ARGUMENT) +#define GNumberParserError (GIOErrorEnum) + +gboolean g_ascii_string_to_unsigned (const gchar *str, + guint base, + guint64 min, + guint64 max, + guint64 *out_num, + GError **error); +#endif + +#if !GLIB_CHECK_VERSION (2, 56, 0) +typedef void (* GClearHandleFunc) (guint handle_id); + +static inline void +g_clear_handle_id (guint *tag_ptr, + GClearHandleFunc clear_func) +{ + guint _handle_id; + + _handle_id = *tag_ptr; + if (_handle_id > 0) + { + *tag_ptr = 0; + clear_func (_handle_id); + } +} + +GDateTime *flatpak_g_date_time_new_from_iso8601 (const gchar *text, + GTimeZone *default_tz); + +static inline GDateTime * +g_date_time_new_from_iso8601 (const gchar *text, GTimeZone *default_tz) +{ + return flatpak_g_date_time_new_from_iso8601 (text, default_tz); +} +#endif + +#if !GLIB_CHECK_VERSION (2, 58, 0) +/* This is a reimplementation rather than a backport, and is a little less + * efficient than the real g_hash_table_steal_extended(), since it can't + * see into GHashTable internals */ +static inline gboolean +g_hash_table_steal_extended (GHashTable *hash_table, + gconstpointer lookup_key, + gpointer *stolen_key, + gpointer *stolen_value) +{ + if (g_hash_table_lookup_extended (hash_table, lookup_key, stolen_key, stolen_value)) + { + g_hash_table_steal (hash_table, lookup_key); + return TRUE; + } + else + return FALSE; +} +#endif + +#if !GLIB_CHECK_VERSION (2, 58, 0) +const gchar * const *g_get_language_names_with_category (const gchar *category_name); +#endif + +#if !GLIB_CHECK_VERSION (2, 62, 0) +void g_ptr_array_extend (GPtrArray *array_to_extend, + GPtrArray *array, + GCopyFunc func, + gpointer user_data); +#endif + +#if !GLIB_CHECK_VERSION (2, 68, 0) +guint g_string_replace (GString *string, + const gchar *find, + const gchar *replace, + guint limit); +#endif + +#ifndef G_DBUS_METHOD_INVOCATION_HANDLED /* GLib < 2.68 */ +# define G_DBUS_METHOD_INVOCATION_HANDLED TRUE +# define G_DBUS_METHOD_INVOCATION_UNHANDLED FALSE +#endif + +G_END_DECLS diff --git a/common/flatpak-glib-backports.c b/common/flatpak-glib-backports.c new file mode 100644 index 0000000..1774963 --- /dev/null +++ b/common/flatpak-glib-backports.c @@ -0,0 +1,866 @@ +/* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: + * Copyright 1995-1998 Free Software Foundation, Inc. + * Copyright 2004 Hidetoshi Tajima + * Copyright 2004-2010 Christian Persch + * Copyright 2004-2019 Red Hat, Inc + * Copyright 2016-2018 Canonical Ltd. + * Copyright 2019 Endless OS Foundation LLC + * Copyright 2019 Emmanuel Fleury + * Copyright 2021 Joshua Lee + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + */ + +#include "config.h" +#include "flatpak-glib-backports-private.h" + +#include + +/* Please sort this file by the GLib version where it originated, + * oldest first. */ + +#if !GLIB_CHECK_VERSION (2, 54, 0) +/* All this code is backported directly from GLib 2.76.2 */ +static gboolean +str_has_sign (const gchar *str) +{ + return str[0] == '-' || str[0] == '+'; +} + +static gboolean +str_has_hex_prefix (const gchar *str) +{ + return str[0] == '0' && g_ascii_tolower (str[1]) == 'x'; +} + +gboolean +g_ascii_string_to_unsigned (const gchar *str, + guint base, + guint64 min, + guint64 max, + guint64 *out_num, + GError **error) +{ + guint64 number; + const gchar *end_ptr = NULL; + gint saved_errno = 0; + + g_return_val_if_fail (str != NULL, FALSE); + g_return_val_if_fail (base >= 2 && base <= 36, FALSE); + g_return_val_if_fail (min <= max, FALSE); + g_return_val_if_fail (error == NULL || *error == NULL, FALSE); + + if (str[0] == '\0') + { + g_set_error_literal (error, + G_NUMBER_PARSER_ERROR, G_NUMBER_PARSER_ERROR_INVALID, + _("Empty string is not a number")); + return FALSE; + } + + errno = 0; + number = g_ascii_strtoull (str, (gchar **)&end_ptr, base); + saved_errno = errno; + + if (/* We do not allow leading whitespace, but g_ascii_strtoull + * accepts it and just skips it, so we need to check for it + * ourselves. + */ + g_ascii_isspace (str[0]) || + /* Unsigned number should have no sign. + */ + str_has_sign (str) || + /* We don't support hexadecimal numbers prefixed with 0x or + * 0X. + */ + (base == 16 && str_has_hex_prefix (str)) || + (saved_errno != 0 && saved_errno != ERANGE) || + end_ptr == NULL || + *end_ptr != '\0') + { + g_set_error (error, + G_NUMBER_PARSER_ERROR, G_NUMBER_PARSER_ERROR_INVALID, + _("“%s” is not an unsigned number"), str); + return FALSE; + } + if (saved_errno == ERANGE || number < min || number > max) + { + gchar *min_str = g_strdup_printf ("%" G_GUINT64_FORMAT, min); + gchar *max_str = g_strdup_printf ("%" G_GUINT64_FORMAT, max); + + g_set_error (error, + G_NUMBER_PARSER_ERROR, G_NUMBER_PARSER_ERROR_OUT_OF_BOUNDS, + _("Number “%s” is out of bounds [%s, %s]"), + str, min_str, max_str); + g_free (min_str); + g_free (max_str); + return FALSE; + } + if (out_num != NULL) + *out_num = number; + return TRUE; +} +#endif + +#if !GLIB_CHECK_VERSION (2, 56, 0) +/* All this code is backported directly from GLib 2.76.2 except where noted */ + +static void +g_date_time_get_week_number (GDateTime *datetime, + gint *week_number, + gint *day_of_week, + gint *day_of_year) +{ + gint a, b, c, d, e, f, g, n, s, month = -1, day = -1, year = -1; + + g_date_time_get_ymd (datetime, &year, &month, &day); + + if (month <= 2) + { + a = g_date_time_get_year (datetime) - 1; + b = (a / 4) - (a / 100) + (a / 400); + c = ((a - 1) / 4) - ((a - 1) / 100) + ((a - 1) / 400); + s = b - c; + e = 0; + f = day - 1 + (31 * (month - 1)); + } + else + { + a = year; + b = (a / 4) - (a / 100) + (a / 400); + c = ((a - 1) / 4) - ((a - 1) / 100) + ((a - 1) / 400); + s = b - c; + e = s + 1; + f = day + (((153 * (month - 3)) + 2) / 5) + 58 + s; + } + + g = (a + b) % 7; + d = (f + g - e) % 7; + n = f + 3 - d; + + if (week_number) + { + if (n < 0) + *week_number = 53 - ((g - s) / 5); + else if (n > 364 + s) + *week_number = 1; + else + *week_number = (n / 7) + 1; + } + + if (day_of_week) + *day_of_week = d + 1; + + if (day_of_year) + *day_of_year = f + 1; +} + +#define GREGORIAN_LEAP(y) ((((y) % 4) == 0) && (!((((y) % 100) == 0) && (((y) % 400) != 0)))) + +/* Parse integers in the form d (week days), dd (hours etc), ddd (ordinal days) or dddd (years) */ +static gboolean +get_iso8601_int (const gchar *text, gsize length, gint *value) +{ + gsize i; + guint v = 0; + + if (length < 1 || length > 4) + return FALSE; + + for (i = 0; i < length; i++) + { + const gchar c = text[i]; + if (c < '0' || c > '9') + return FALSE; + v = v * 10 + (c - '0'); + } + + *value = v; + return TRUE; +} + +/* Parse seconds in the form ss or ss.sss (variable length decimal) */ +static gboolean +get_iso8601_seconds (const gchar *text, gsize length, gdouble *value) +{ + gsize i; + guint64 divisor = 1, v = 0; + + if (length < 2) + return FALSE; + + for (i = 0; i < 2; i++) + { + const gchar c = text[i]; + if (c < '0' || c > '9') + return FALSE; + v = v * 10 + (c - '0'); + } + + if (length > 2 && !(text[i] == '.' || text[i] == ',')) + return FALSE; + + /* Ignore leap seconds, see g_date_time_new_from_iso8601() */ + if (v >= 60.0 && v <= 61.0) + v = 59.0; + + i++; + if (i == length) + return FALSE; + + for (; i < length; i++) + { + const gchar c = text[i]; + if (c < '0' || c > '9' || + v > (G_MAXUINT64 - (c - '0')) / 10 || + divisor > G_MAXUINT64 / 10) + return FALSE; + v = v * 10 + (c - '0'); + divisor *= 10; + } + + *value = (gdouble) v / divisor; + return TRUE; +} + +static GDateTime * +g_date_time_new_ordinal (GTimeZone *tz, gint year, gint ordinal_day, gint hour, gint minute, gdouble seconds) +{ + GDateTime *dt; + + if (ordinal_day < 1 || ordinal_day > (GREGORIAN_LEAP (year) ? 366 : 365)) + return NULL; + + dt = g_date_time_new (tz, year, 1, 1, hour, minute, seconds); + if (dt == NULL) + return NULL; + dt->days += ordinal_day - 1; + + return dt; +} + +static GDateTime * +g_date_time_new_week (GTimeZone *tz, gint year, gint week, gint week_day, gint hour, gint minute, gdouble seconds) +{ + gint64 p; + gint max_week, jan4_week_day, ordinal_day; + GDateTime *dt; + + p = (year * 365 + (year / 4) - (year / 100) + (year / 400)) % 7; + max_week = p == 4 ? 53 : 52; + + if (week < 1 || week > max_week || week_day < 1 || week_day > 7) + return NULL; + + dt = g_date_time_new (tz, year, 1, 4, 0, 0, 0); + if (dt == NULL) + return NULL; + g_date_time_get_week_number (dt, NULL, &jan4_week_day, NULL); + g_date_time_unref (dt); + + ordinal_day = (week * 7) + week_day - (jan4_week_day + 3); + if (ordinal_day < 0) + { + year--; + ordinal_day += GREGORIAN_LEAP (year) ? 366 : 365; + } + else if (ordinal_day > (GREGORIAN_LEAP (year) ? 366 : 365)) + { + ordinal_day -= (GREGORIAN_LEAP (year) ? 366 : 365); + year++; + } + + return g_date_time_new_ordinal (tz, year, ordinal_day, hour, minute, seconds); +} + +static GDateTime * +parse_iso8601_date (const gchar *text, gsize length, + gint hour, gint minute, gdouble seconds, GTimeZone *tz) +{ + /* YYYY-MM-DD */ + if (length == 10 && text[4] == '-' && text[7] == '-') + { + int year, month, day; + if (!get_iso8601_int (text, 4, &year) || + !get_iso8601_int (text + 5, 2, &month) || + !get_iso8601_int (text + 8, 2, &day)) + return NULL; + return g_date_time_new (tz, year, month, day, hour, minute, seconds); + } + /* YYYY-DDD */ + else if (length == 8 && text[4] == '-') + { + gint year, ordinal_day; + if (!get_iso8601_int (text, 4, &year) || + !get_iso8601_int (text + 5, 3, &ordinal_day)) + return NULL; + return g_date_time_new_ordinal (tz, year, ordinal_day, hour, minute, seconds); + } + /* YYYY-Www-D */ + else if (length == 10 && text[4] == '-' && text[5] == 'W' && text[8] == '-') + { + gint year, week, week_day; + if (!get_iso8601_int (text, 4, &year) || + !get_iso8601_int (text + 6, 2, &week) || + !get_iso8601_int (text + 9, 1, &week_day)) + return NULL; + return g_date_time_new_week (tz, year, week, week_day, hour, minute, seconds); + } + /* YYYYWwwD */ + else if (length == 8 && text[4] == 'W') + { + gint year, week, week_day; + if (!get_iso8601_int (text, 4, &year) || + !get_iso8601_int (text + 5, 2, &week) || + !get_iso8601_int (text + 7, 1, &week_day)) + return NULL; + return g_date_time_new_week (tz, year, week, week_day, hour, minute, seconds); + } + /* YYYYMMDD */ + else if (length == 8) + { + int year, month, day; + if (!get_iso8601_int (text, 4, &year) || + !get_iso8601_int (text + 4, 2, &month) || + !get_iso8601_int (text + 6, 2, &day)) + return NULL; + return g_date_time_new (tz, year, month, day, hour, minute, seconds); + } + /* YYYYDDD */ + else if (length == 7) + { + gint year, ordinal_day; + if (!get_iso8601_int (text, 4, &year) || + !get_iso8601_int (text + 4, 3, &ordinal_day)) + return NULL; + return g_date_time_new_ordinal (tz, year, ordinal_day, hour, minute, seconds); + } + else + return FALSE; +} + +static GTimeZone * +parse_iso8601_timezone (const gchar *text, gsize length, gssize *tz_offset) +{ + gint i, tz_length, offset_hours, offset_minutes; + gint offset_sign = 1; + GTimeZone *tz; + + /* UTC uses Z suffix */ + if (length > 0 && text[length - 1] == 'Z') + { + *tz_offset = length - 1; + return g_time_zone_new_utc (); + } + + /* Look for '+' or '-' of offset */ + for (i = length - 1; i >= 0; i--) + if (text[i] == '+' || text[i] == '-') + { + offset_sign = text[i] == '-' ? -1 : 1; + break; + } + if (i < 0) + return NULL; + tz_length = length - i; + + /* +hh:mm or -hh:mm */ + if (tz_length == 6 && text[i+3] == ':') + { + if (!get_iso8601_int (text + i + 1, 2, &offset_hours) || + !get_iso8601_int (text + i + 4, 2, &offset_minutes)) + return NULL; + } + /* +hhmm or -hhmm */ + else if (tz_length == 5) + { + if (!get_iso8601_int (text + i + 1, 2, &offset_hours) || + !get_iso8601_int (text + i + 3, 2, &offset_minutes)) + return NULL; + } + /* +hh or -hh */ + else if (tz_length == 3) + { + if (!get_iso8601_int (text + i + 1, 2, &offset_hours)) + return NULL; + offset_minutes = 0; + } + else + return NULL; + + *tz_offset = i; + /* BACKPORT DIFFERENCE: GLib uses g_time_zone_new_identifier() but that + * was new in 2.68, so stick to the deprecated g_time_zone_new(), which + * returns UTC on error */ + tz = g_time_zone_new (text + i); + + /* Double-check that the GTimeZone matches our interpretation of the timezone. + * This can fail because our interpretation is less strict than (for example) + * parse_time() in gtimezone.c, which restricts the range of the parsed + * integers. */ + if (tz == NULL || g_time_zone_get_offset (tz, 0) != offset_sign * (offset_hours * 3600 + offset_minutes * 60)) + { + g_clear_pointer (&tz, g_time_zone_unref); + return NULL; + } + + return tz; +} + +static gboolean +parse_iso8601_time (const gchar *text, gsize length, + gint *hour, gint *minute, gdouble *seconds, GTimeZone **tz) +{ + gssize tz_offset = -1; + + /* Check for timezone suffix */ + *tz = parse_iso8601_timezone (text, length, &tz_offset); + if (tz_offset >= 0) + length = tz_offset; + + /* hh:mm:ss(.sss) */ + if (length >= 8 && text[2] == ':' && text[5] == ':') + { + return get_iso8601_int (text, 2, hour) && + get_iso8601_int (text + 3, 2, minute) && + get_iso8601_seconds (text + 6, length - 6, seconds); + } + /* hhmmss(.sss) */ + else if (length >= 6) + { + return get_iso8601_int (text, 2, hour) && + get_iso8601_int (text + 2, 2, minute) && + get_iso8601_seconds (text + 4, length - 4, seconds); + } + else + return FALSE; +} + +GDateTime * +flatpak_g_date_time_new_from_iso8601 (const gchar *text, GTimeZone *default_tz) +{ + gint length, date_length = -1; + gint hour = 0, minute = 0; + gdouble seconds = 0.0; + GTimeZone *tz = NULL; + GDateTime *datetime = NULL; + + g_return_val_if_fail (text != NULL, NULL); + + /* Count length of string and find date / time separator ('T', 't', or ' ') */ + for (length = 0; text[length] != '\0'; length++) + { + if (date_length < 0 && (text[length] == 'T' || text[length] == 't' || text[length] == ' ')) + date_length = length; + } + + if (date_length < 0) + return NULL; + + if (!parse_iso8601_time (text + date_length + 1, length - (date_length + 1), + &hour, &minute, &seconds, &tz)) + goto out; + if (tz == NULL && default_tz == NULL) + return NULL; + + datetime = parse_iso8601_date (text, date_length, hour, minute, seconds, tz ? tz : default_tz); + +out: + if (tz != NULL) + g_time_zone_unref (tz); + return datetime; +} +#endif + +#if !GLIB_CHECK_VERSION (2, 58, 0) +/* All this code is backported directly from GLib 2.76.2 except where noted */ + +typedef struct _GLanguageNamesCache GLanguageNamesCache; + +struct _GLanguageNamesCache { + gchar *languages; + gchar **language_names; +}; + +static void +language_names_cache_free (gpointer data) +{ + GLanguageNamesCache *cache = data; + g_free (cache->languages); + g_strfreev (cache->language_names); + g_free (cache); +} + +/* read an alias file for the locales */ +static void +read_aliases (const gchar *file, + GHashTable *alias_table) +{ + FILE *fp; + char buf[256]; + + fp = fopen (file, "re"); + if (!fp) + return; + while (fgets (buf, 256, fp)) + { + char *p, *q; + + g_strstrip (buf); + + /* Line is a comment */ + if ((buf[0] == '#') || (buf[0] == '\0')) + continue; + + /* Reads first column */ + for (p = buf, q = NULL; *p; p++) { + if ((*p == '\t') || (*p == ' ') || (*p == ':')) { + *p = '\0'; + q = p+1; + while ((*q == '\t') || (*q == ' ')) { + q++; + } + break; + } + } + /* The line only had one column */ + if (!q || *q == '\0') + continue; + + /* Read second column */ + for (p = q; *p; p++) { + if ((*p == '\t') || (*p == ' ')) { + *p = '\0'; + break; + } + } + + /* Add to alias table if necessary */ + if (!g_hash_table_lookup (alias_table, buf)) { + g_hash_table_insert (alias_table, g_strdup (buf), g_strdup (q)); + } + } + fclose (fp); +} + +static char * +unalias_lang (char *lang) +{ +#ifndef G_OS_WIN32 + static GHashTable *alias_table = NULL; + char *p; + int i; + + if (g_once_init_enter (&alias_table)) + { + GHashTable *table = g_hash_table_new (g_str_hash, g_str_equal); + read_aliases ("/usr/share/locale/locale.alias", table); + g_once_init_leave (&alias_table, table); + } + + i = 0; + while ((p = g_hash_table_lookup (alias_table, lang)) && (strcmp (p, lang) != 0)) + { + lang = p; + if (i++ == 30) + { + static gboolean said_before = FALSE; + if (!said_before) + g_warning ("Too many alias levels for a locale, " + "may indicate a loop"); + said_before = TRUE; + return lang; + } + } +#endif + return lang; +} + +/* Mask for components of locale spec. The ordering here is from + * least significant to most significant + */ +enum +{ + COMPONENT_CODESET = 1 << 0, + COMPONENT_TERRITORY = 1 << 1, + COMPONENT_MODIFIER = 1 << 2 +}; + +/* Break an X/Open style locale specification into components + */ +static guint +explode_locale (const gchar *locale, + gchar **language, + gchar **territory, + gchar **codeset, + gchar **modifier) +{ + const gchar *uscore_pos; + const gchar *at_pos; + const gchar *dot_pos; + + guint mask = 0; + + uscore_pos = strchr (locale, '_'); + dot_pos = strchr (uscore_pos ? uscore_pos : locale, '.'); + at_pos = strchr (dot_pos ? dot_pos : (uscore_pos ? uscore_pos : locale), '@'); + + if (at_pos) + { + mask |= COMPONENT_MODIFIER; + *modifier = g_strdup (at_pos); + } + else + at_pos = locale + strlen (locale); + + if (dot_pos) + { + mask |= COMPONENT_CODESET; + *codeset = g_strndup (dot_pos, at_pos - dot_pos); + } + else + dot_pos = at_pos; + + if (uscore_pos) + { + mask |= COMPONENT_TERRITORY; + *territory = g_strndup (uscore_pos, dot_pos - uscore_pos); + } + else + uscore_pos = dot_pos; + + *language = g_strndup (locale, uscore_pos - locale); + + return mask; +} + +/* + * Compute all interesting variants for a given locale name - + * by stripping off different components of the value. + * + * For simplicity, we assume that the locale is in + * X/Open format: language[_territory][.codeset][@modifier] + * + * TODO: Extend this to handle the CEN format (see the GNUlibc docs) + * as well. We could just copy the code from glibc wholesale + * but it is big, ugly, and complicated, so I'm reluctant + * to do so when this should handle 99% of the time... + */ +static void +append_locale_variants (GPtrArray *array, + const gchar *locale) +{ + gchar *language = NULL; + gchar *territory = NULL; + gchar *codeset = NULL; + gchar *modifier = NULL; + + guint mask; + guint i, j; + + g_return_if_fail (locale != NULL); + + mask = explode_locale (locale, &language, &territory, &codeset, &modifier); + + /* Iterate through all possible combinations, from least attractive + * to most attractive. + */ + for (j = 0; j <= mask; ++j) + { + i = mask - j; + + if ((i & ~mask) == 0) + { + gchar *val = g_strconcat (language, + (i & COMPONENT_TERRITORY) ? territory : "", + (i & COMPONENT_CODESET) ? codeset : "", + (i & COMPONENT_MODIFIER) ? modifier : "", + NULL); + g_ptr_array_add (array, val); + } + } + + g_free (language); + if (mask & COMPONENT_CODESET) + g_free (codeset); + if (mask & COMPONENT_TERRITORY) + g_free (territory); + if (mask & COMPONENT_MODIFIER) + g_free (modifier); +} + +/* The following is (partly) taken from the gettext package. + Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. */ + +static const gchar * +guess_category_value (const gchar *category_name) +{ + const gchar *retval; + + /* The highest priority value is the 'LANGUAGE' environment + variable. This is a GNU extension. */ + retval = g_getenv ("LANGUAGE"); + if ((retval != NULL) && (retval[0] != '\0')) + return retval; + + /* 'LANGUAGE' is not set. So we have to proceed with the POSIX + methods of looking to 'LC_ALL', 'LC_xxx', and 'LANG'. On some + systems this can be done by the 'setlocale' function itself. */ + + /* Setting of LC_ALL overwrites all other. */ + retval = g_getenv ("LC_ALL"); + if ((retval != NULL) && (retval[0] != '\0')) + return retval; + + /* Next comes the name of the desired category. */ + retval = g_getenv (category_name); + if ((retval != NULL) && (retval[0] != '\0')) + return retval; + + /* Last possibility is the LANG environment variable. */ + retval = g_getenv ("LANG"); + if ((retval != NULL) && (retval[0] != '\0')) + return retval; + +#ifdef G_PLATFORM_WIN32 + /* g_win32_getlocale() first checks for LC_ALL, LC_MESSAGES and + * LANG, which we already did above. Oh well. The main point of + * calling g_win32_getlocale() is to get the thread's locale as used + * by Windows and the Microsoft C runtime (in the "English_United + * States" format) translated into the Unixish format. + */ + { + char *locale = g_win32_getlocale (); + retval = g_intern_string (locale); + g_free (locale); + return retval; + } +#endif + + return NULL; +} + +const gchar * const * +g_get_language_names_with_category (const gchar *category_name) +{ + static GPrivate cache_private = G_PRIVATE_INIT ((void (*)(gpointer)) g_hash_table_unref); + GHashTable *cache = g_private_get (&cache_private); + const gchar *languages; + GLanguageNamesCache *name_cache; + + g_return_val_if_fail (category_name != NULL, NULL); + + if (!cache) + { + cache = g_hash_table_new_full (g_str_hash, g_str_equal, + g_free, language_names_cache_free); + g_private_set (&cache_private, cache); + } + + languages = guess_category_value (category_name); + if (!languages) + languages = "C"; + + name_cache = (GLanguageNamesCache *) g_hash_table_lookup (cache, category_name); + if (!(name_cache && name_cache->languages && + strcmp (name_cache->languages, languages) == 0)) + { + GPtrArray *array; + gchar **alist, **a; + + g_hash_table_remove (cache, category_name); + + array = g_ptr_array_sized_new (8); + + alist = g_strsplit (languages, ":", 0); + for (a = alist; *a; a++) + append_locale_variants (array, unalias_lang (*a)); + g_strfreev (alist); + g_ptr_array_add (array, g_strdup ("C")); + g_ptr_array_add (array, NULL); + + name_cache = g_new0 (GLanguageNamesCache, 1); + name_cache->languages = g_strdup (languages); + name_cache->language_names = (gchar **) g_ptr_array_free (array, FALSE); + g_hash_table_insert (cache, g_strdup (category_name), name_cache); + } + + return (const gchar * const *) name_cache->language_names; +} +#endif + +#if !GLIB_CHECK_VERSION (2, 62, 0) +/* This is a reimplementation, not a backport: the version in GLib makes + * use of GPtrArray internals */ +void +g_ptr_array_extend (GPtrArray *array_to_extend, + GPtrArray *array, + GCopyFunc func, + gpointer user_data) +{ + for (gsize i = 0; i < array->len; i++) + { + if (func) + g_ptr_array_add (array_to_extend, func (g_ptr_array_index (array, i), user_data)); + else + g_ptr_array_add (array_to_extend, g_ptr_array_index (array, i)); + } +} +#endif + +#if !GLIB_CHECK_VERSION (2, 68, 0) +/* All this code is backported directly from GLib 2.76.2 */ +guint +g_string_replace (GString *string, + const gchar *find, + const gchar *replace, + guint limit) +{ + gsize f_len, r_len, pos; + gchar *cur, *next; + guint n = 0; + + g_return_val_if_fail (string != NULL, 0); + g_return_val_if_fail (find != NULL, 0); + g_return_val_if_fail (replace != NULL, 0); + + f_len = strlen (find); + r_len = strlen (replace); + cur = string->str; + + while ((next = strstr (cur, find)) != NULL) + { + pos = next - string->str; + g_string_erase (string, pos, f_len); + g_string_insert (string, pos, replace); + cur = string->str + pos + r_len; + n++; + /* Only match the empty string once at any given position, to + * avoid infinite loops */ + if (f_len == 0) + { + if (cur[0] == '\0') + break; + else + cur++; + } + if (n == limit) + break; + } + + return n; +} + +#endif /* GLIB_CHECK_VERSION (2, 68, 0) */ diff --git a/common/flatpak-installation.c b/common/flatpak-installation.c index 4742332..c7d2e1d 100644 --- a/common/flatpak-installation.c +++ b/common/flatpak-installation.c @@ -320,11 +320,11 @@ flatpak_installation_new_system_with_id (const char *id, &local_error); if (installation == NULL) { - g_debug ("Error creating Flatpak installation: %s", local_error->message); + g_info ("Error creating Flatpak installation: %s", local_error->message); g_propagate_error (error, g_steal_pointer (&local_error)); } - g_debug ("Found Flatpak installation for '%s'", id); + g_info ("Found Flatpak installation for '%s'", id); return g_steal_pointer (&installation); } @@ -673,12 +673,15 @@ flatpak_installation_launch_full (FlatpakInstallation *self, GCancellable *cancellable, GError **error) { + g_auto(GStrv) run_environ = NULL; g_autoptr(FlatpakDir) dir = NULL; g_autoptr(FlatpakDeploy) app_deploy = NULL; g_autoptr(FlatpakDecomposed) app_ref = NULL; g_autofree char *instance_dir = NULL; FlatpakRunFlags run_flags; + run_environ = g_get_environ (); + dir = flatpak_installation_get_dir (self, error); if (dir == NULL) return FALSE; @@ -708,6 +711,7 @@ flatpak_installation_launch_full (FlatpakInstallation *self, NULL, NULL, NULL, 0, -1, + (const char * const *) run_environ, &instance_dir, cancellable, error)) return FALSE; @@ -987,9 +991,8 @@ end_of_lifed_with_rebase (FlatpakTransaction *transaction, if (rebased_to_ref == NULL || remote == NULL) return FALSE; - /* No need to call flatpak_transaction_add_uninstall() and - * flatpak_transaction_add_rebase() here since we only care about what needs - * an update + /* No need to call flatpak_transaction_add_rebase_and_uninstall() here since + * we only care about what needs an update */ g_ptr_array_add (*eol_rebase_refs, g_strdup (ref)); return TRUE; @@ -1013,7 +1016,7 @@ transaction_ready (FlatpakTransaction *transaction, if (type == FLATPAK_TRANSACTION_OPERATION_UNINSTALL) { const char *ref = flatpak_transaction_operation_get_ref (op); - g_debug ("Update transaction wants to uninstall %s", ref); + g_info ("Update transaction wants to uninstall %s", ref); continue; } @@ -1105,7 +1108,7 @@ flatpak_installation_list_installed_refs_for_update (FlatpakInstallation *self, if (g_error_matches (local_error, FLATPAK_ERROR, FLATPAK_ERROR_REMOTE_NOT_FOUND)) { - g_debug ("%s: Unable to update %s: %s", G_STRFUNC, ref, local_error->message); + g_info ("%s: Unable to update %s: %s", G_STRFUNC, ref, local_error->message); g_clear_error (&local_error); } else @@ -1159,7 +1162,7 @@ flatpak_installation_list_installed_refs_for_update (FlatpakInstallation *self, if (!g_hash_table_contains (installed_refs_for_update_set, op_ref)) { g_hash_table_add (installed_refs_for_update_set, (char *)op_ref); - g_debug ("%s: Installed ref %s needs update", G_STRFUNC, op_ref); + g_info ("%s: Installed ref %s needs update", G_STRFUNC, op_ref); g_ptr_array_add (installed_refs_for_update, g_object_ref (installed_ref)); } @@ -1177,7 +1180,7 @@ flatpak_installation_list_installed_refs_for_update (FlatpakInstallation *self, if (installed_ref != NULL) { g_hash_table_add (installed_refs_for_update_set, (char *)related_op_ref); - g_debug ("%s: Installed ref %s needs update", G_STRFUNC, related_op_ref); + g_info ("%s: Installed ref %s needs update", G_STRFUNC, related_op_ref); g_ptr_array_add (installed_refs_for_update, g_object_ref (installed_ref)); } @@ -1200,7 +1203,7 @@ flatpak_installation_list_installed_refs_for_update (FlatpakInstallation *self, if (!g_hash_table_contains (installed_refs_for_update_set, rebased_ref)) { g_hash_table_add (installed_refs_for_update_set, (char *)rebased_ref); - g_debug ("%s: Installed ref %s needs update", G_STRFUNC, rebased_ref); + g_info ("%s: Installed ref %s needs update", G_STRFUNC, rebased_ref); g_ptr_array_add (installed_refs_for_update, g_object_ref (installed_ref)); } @@ -1725,8 +1728,8 @@ flatpak_installation_load_app_overrides (FlatpakInstallation *self, * flatpak_installation_install_bundle: * @self: a #FlatpakInstallation * @file: a #GFile that is an flatpak bundle - * @progress: (scope call) (nullable): progress callback - * @progress_data: (closure progress) (nullable): user data passed to @progress + * @progress: (scope call) (closure progress_data) (nullable): progress callback + * @progress_data: (nullable): user data passed to @progress * @cancellable: (nullable): a #GCancellable * @error: return location for a #GError * @@ -1851,8 +1854,8 @@ flatpak_installation_install_ref_file (FlatpakInstallation *self, * @arch: (nullable): which architecture to fetch (default: current architecture) * @branch: (nullable): which branch to fetch (default: 'master') * @subpaths: (nullable) (array zero-terminated=1): A list of subpaths to fetch, or %NULL for everything - * @progress: (scope call) (nullable): progress callback - * @progress_data: (closure progress) (nullable): user data passed to @progress + * @progress: (scope call) (closure progress_data) (nullable): progress callback + * @progress_data: (nullable): user data passed to @progress * @cancellable: (nullable): a #GCancellable * @error: return location for a #GError * @@ -1956,8 +1959,8 @@ flatpak_installation_install_full (FlatpakInstallation *self, * @name: name of the app/runtime to fetch * @arch: (nullable): which architecture to fetch (default: current architecture) * @branch: (nullable): which branch to fetch (default: 'master') - * @progress: (scope call) (nullable): progress callback - * @progress_data: (closure progress) (nullable): user data passed to @progress + * @progress: (scope call) (closure progress_data) (nullable): progress callback + * @progress_data: (nullable): user data passed to @progress * @cancellable: (nullable): a #GCancellable * @error: return location for a #GError * @@ -2007,8 +2010,8 @@ flatpak_installation_install (FlatpakInstallation *self, * @arch: (nullable): architecture of the app or runtime to update (default: current architecture) * @branch: (nullable): name of the branch of the app or runtime to update (default: master) * @subpaths: (nullable) (array zero-terminated=1): A list of subpaths to fetch, or %NULL for everything - * @progress: (scope call) (nullable): the callback - * @progress_data: (closure progress) (nullable): user data passed to @progress + * @progress: (scope call) (closure progress_data) (nullable): the callback + * @progress_data: (nullable): user data passed to @progress * @cancellable: (nullable): a #GCancellable * @error: return location for a #GError * @@ -2122,8 +2125,8 @@ flatpak_installation_update_full (FlatpakInstallation *self, * @name: name of the app or runtime to update * @arch: (nullable): architecture of the app or runtime to update (default: current architecture) * @branch: (nullable): name of the branch of the app or runtime to update (default: master) - * @progress: (scope call) (nullable): the callback - * @progress_data: (closure progress) (nullable): user data passed to @progress + * @progress: (scope call) (closure progress_data) (nullable): the callback + * @progress_data: (nullable): user data passed to @progress * @cancellable: (nullable): a #GCancellable * @error: return location for a #GError * @@ -2170,8 +2173,8 @@ flatpak_installation_update (FlatpakInstallation *self, * %NULL, flatpak_get_default_arch() is assumed * @branch: (nullable): name of the branch of the app or runtime to uninstall; * if %NULL, `master` is assumed - * @progress: (scope call) (nullable): the callback - * @progress_data: (closure progress) (nullable): user data passed to @progress + * @progress: (scope call) (closure progress_data) (nullable): the callback + * @progress_data: (nullable): user data passed to @progress * @cancellable: (nullable): a #GCancellable * @error: return location for a #GError * @@ -2213,8 +2216,8 @@ flatpak_installation_uninstall (FlatpakInstallation *self, * %NULL, flatpak_get_default_arch() is assumed * @branch: (nullable): name of the branch of the app or runtime to uninstall; * if %NULL, `master` is assumed - * @progress: (scope call) (nullable): the callback - * @progress_data: (closure progress) (nullable): user data passed to @progress + * @progress: (scope call) (closure progress_data) (nullable): the callback + * @progress_data: (nullable): user data passed to @progress * @cancellable: (nullable): a #GCancellable * @error: return location for a #GError * @@ -2601,8 +2604,8 @@ flatpak_installation_update_appstream_sync (FlatpakInstallation *self, * @self: a #FlatpakInstallation * @remote_name: the name of the remote * @arch: (nullable): Architecture to update, or %NULL for the local machine arch - * @progress: (scope call) (nullable): progress callback - * @progress_data: (closure progress) (nullable): user data passed to @progress + * @progress: (scope call) (closure progress_data) (nullable): progress callback + * @progress_data: (nullable): user data passed to @progress * @out_changed: (nullable): Set to %TRUE if the contents of the appstream changed, %FALSE if nothing changed * @cancellable: (nullable): a #GCancellable * @error: return location for a #GError @@ -3068,10 +3071,11 @@ flatpak_installation_list_unused_refs (FlatpakInstallation *self, * * * exclude-refs (as): Act as if these refs are not installed even if they * are when determining the set of unused refs - * * filter-by-eol (b): Only return refs as unused if they are End-Of-Life. - * Note that if this option is combined with other filters (of which there - * are none currently) non-EOL refs may also be returned. - * + * * filter-by-eol (b): Return refs as unused if they are End-Of-Life. + * Note that if this option is combined with other filters then non-EOL refs may also be returned. + * * filter-by-autoprune (b): Return refs as unused if they should be autopruned. + * Note that if this option is combined with other filters then non-autoprune refs may also be returned. + * Returns: (transfer container) (element-type FlatpakInstalledRef): a GPtrArray of * #FlatpakInstalledRef instances * @@ -3090,19 +3094,28 @@ flatpak_installation_list_unused_refs_with_options (FlatpakInstallation *self, g_auto(GStrv) refs_strv = NULL; g_autofree char **refs_to_exclude = NULL; gboolean filter_by_eol = FALSE; + gboolean filter_by_autoprune = FALSE; + FlatpakDirFilterFlags filter_flags = FLATPAK_DIR_FILTER_NONE; if (options) { (void) g_variant_lookup (options, "exclude-refs", "^a&s", &refs_to_exclude); (void) g_variant_lookup (options, "filter-by-eol", "b", &filter_by_eol); + (void) g_variant_lookup (options, "filter-by-autoprune", "b", &filter_by_autoprune); } dir = flatpak_installation_get_dir (self, error); if (dir == NULL) return NULL; + if (filter_by_eol) + filter_flags |= FLATPAK_DIR_FILTER_EOL; + if (filter_by_autoprune) + filter_flags |= FLATPAK_DIR_FILTER_AUTOPRUNE; + refs_strv = flatpak_dir_list_unused_refs (dir, arch, metadata_injection, NULL, - (const char * const *)refs_to_exclude, filter_by_eol, + (const char * const *)refs_to_exclude, + filter_flags, cancellable, error); if (refs_strv == NULL) return NULL; diff --git a/common/flatpak-instance-private.h b/common/flatpak-instance-private.h index 6fcd178..84d8033 100644 --- a/common/flatpak-instance-private.h +++ b/common/flatpak-instance-private.h @@ -21,6 +21,8 @@ #ifndef __FLATPAK_INSTANCE_PRIVATE_H__ #define __FLATPAK_INSTANCE_PRIVATE_H__ +#include + #include "flatpak-instance.h" FlatpakInstance *flatpak_instance_new (const char *dir); @@ -28,7 +30,8 @@ FlatpakInstance *flatpak_instance_new_for_id (const char *id); char *flatpak_instance_get_apps_directory (void); char *flatpak_instance_get_instances_directory (void); char *flatpak_instance_allocate_id (char **host_dir_out, - int *lock_fd_out); + char **host_private_dir_out, + int *lock_fd_out); gboolean flatpak_instance_claim_per_app_temp_directory (const char *app_id, int per_app_dir_lock_fd, @@ -57,4 +60,7 @@ gboolean flatpak_instance_ensure_per_app_xdg_runtime_dir (const char *app_id, char **shared_dir_out, GError **error); +GStrv flatpak_instance_get_run_environ (FlatpakInstance *self, GError **error); + + #endif /* __FLATPAK_INSTANCE_PRIVATE_H__ */ diff --git a/common/flatpak-instance.c b/common/flatpak-instance.c index 8ae0c30..2803d4e 100644 --- a/common/flatpak-instance.c +++ b/common/flatpak-instance.c @@ -23,9 +23,10 @@ #include #include +#include "flatpak-json-backports-private.h" +#include "flatpak-metadata-private.h" #include "flatpak-utils-base-private.h" #include "flatpak-utils-private.h" -#include "flatpak-run-private.h" #include "flatpak-instance.h" #include "flatpak-instance-private.h" #include "flatpak-enum-types.h" @@ -60,6 +61,7 @@ struct _FlatpakInstancePrivate { char *id; char *dir; + char *private_dir; GKeyFile *info; char *app; @@ -83,6 +85,7 @@ flatpak_instance_finalize (GObject *object) g_free (priv->id); g_free (priv->dir); + g_free (priv->private_dir); g_free (priv->app); g_free (priv->arch); g_free (priv->branch); @@ -310,6 +313,27 @@ flatpak_instance_get_info (FlatpakInstance *self) return priv->info; } +GStrv +flatpak_instance_get_run_environ (FlatpakInstance *self, GError **error) +{ + FlatpakInstancePrivate *priv = flatpak_instance_get_instance_private (self); + g_autofree char *file = NULL; + g_autofree char *environ_data = NULL; + gsize environ_size; + g_auto(GStrv) env_vars = NULL; + + file = g_build_filename (priv->private_dir, "run-environ", NULL); + + if (!g_file_get_contents (file, &environ_data, &environ_size, error)) + return NULL; + + env_vars = flatpak_parse_env_block (environ_data, environ_size, error); + if (env_vars == NULL) + return NULL; + + return g_steal_pointer (&env_vars); +} + static GKeyFile * get_instance_info (const char *dir) { @@ -322,7 +346,7 @@ get_instance_info (const char *dir) key_file = g_key_file_new (); if (!g_key_file_load_from_file (key_file, file, G_KEY_FILE_NONE, &error)) { - g_debug ("Failed to load instance info file '%s': %s", file, error->message); + g_info ("Failed to load instance info file '%s': %s", file, error->message); return NULL; } @@ -344,21 +368,21 @@ get_child_pid (const char *dir) if (!g_file_get_contents (file, &contents, &length, &error)) { - g_debug ("Failed to load bwrapinfo.json file '%s': %s", file, error->message); + g_info ("Failed to load bwrapinfo.json file '%s': %s", file, error->message); return 0; } parser = json_parser_new (); if (!json_parser_load_from_data (parser, contents, length, &error)) { - g_debug ("Failed to parse bwrapinfo.json file '%s': %s", file, error->message); + g_info ("Failed to parse bwrapinfo.json file '%s': %s", file, error->message); return 0; } node = json_parser_get_root (parser); if (!node) { - g_debug ("Failed to parse bwrapinfo.json file '%s': %s", file, "empty"); + g_info ("Failed to parse bwrapinfo.json file '%s': %s", file, "empty"); return 0; } @@ -378,7 +402,7 @@ get_pid (const char *dir) if (!g_file_get_contents (file, &contents, NULL, &error)) { - g_debug ("Failed to load pid file '%s': %s", file, error->message); + g_info ("Failed to load pid file '%s': %s", file, error->message); return 0; } @@ -392,6 +416,7 @@ flatpak_instance_new (const char *dir) FlatpakInstancePrivate *priv = flatpak_instance_get_instance_private (self); priv->dir = g_strdup (dir); + priv->private_dir = g_strdup_printf ("%s-private", dir); priv->id = g_path_get_basename (dir); priv->pid = get_pid (priv->dir); @@ -529,7 +554,7 @@ flatpak_instance_ensure_per_app_dir (const char *app_id, _("Unable to lock %s"), lock_path); - *lock_fd_out = glnx_steal_fd (&lock_fd); + *lock_fd_out = g_steal_fd (&lock_fd); *lock_path_out = g_steal_pointer (&lock_path); return TRUE; } @@ -571,15 +596,10 @@ flatpak_instance_ensure_per_app_dev_shm (const char *app_id, per_app_parent = flatpak_instance_get_apps_directory (); per_app_dir = g_build_filename (per_app_parent, app_id, NULL); - per_app_dir_fd = openat (AT_FDCWD, per_app_dir, - O_PATH | O_DIRECTORY | O_CLOEXEC); - - /* This can't happen under normal circumstances: if we have the lock, - * then the directory it's in had better exist. */ - if (per_app_dir_fd < 0) - return glnx_throw_errno_prefix (error, - _("Unable to open directory %s"), - per_app_dir); + if (!glnx_opendirat (AT_FDCWD, per_app_dir, TRUE, + &per_app_dir_fd, + error)) + return FALSE; /* If there's an existing symlink to a suitable directory, we can * reuse it (carefully). This gives us the sharing we wanted between @@ -712,6 +732,32 @@ flatpak_instance_ensure_per_app_xdg_runtime_dir (const char *app_id, return TRUE; } +static int +flatpak_instance_create_lock_file (const char *instance_dir) +{ + g_autofree char *lock_file = g_build_filename (instance_dir, ".ref", NULL); + glnx_autofd int lock_fd = -1; + struct flock l = { + .l_type = F_RDLCK, + .l_whence = SEEK_SET, + .l_start = 0, + .l_len = 0 + }; + + /* Take a file lock inside the dir, hold that during setup + * and in bwrap. Anyone trying to clean up unused directories + * need to first verify that there is a .ref file and take a + * write lock on .ref to ensure it is not in use. + */ + lock_fd = open (lock_file, O_RDWR | O_CREAT | O_CLOEXEC, 0644); + /* There is a tiny race here between the open creating the file and the lock succeeding. + We work around that by only gc:ing "old" .ref files */ + if (lock_fd == -1 || fcntl (lock_fd, F_SETLK, &l) != 0) + return -1; + + return g_steal_fd (&lock_fd); +} + /* * @host_dir_out: (not optional): used to return the directory on the host * system representing this instance @@ -720,13 +766,16 @@ flatpak_instance_ensure_per_app_xdg_runtime_dir (const char *app_id, */ char * flatpak_instance_allocate_id (char **host_dir_out, - int *lock_fd_out) + char **host_private_dir_out, + int *lock_fd_out) { g_autofree char *base_dir = flatpak_instance_get_instances_directory (); int count; g_return_val_if_fail (host_dir_out != NULL, NULL); g_return_val_if_fail (*host_dir_out == NULL, NULL); + g_return_val_if_fail (host_private_dir_out != NULL, NULL); + g_return_val_if_fail (*host_private_dir_out == NULL, NULL); g_return_val_if_fail (lock_fd_out != NULL, NULL); g_return_val_if_fail (*lock_fd_out == -1, NULL); @@ -739,39 +788,34 @@ flatpak_instance_allocate_id (char **host_dir_out, { g_autofree char *instance_id = NULL; g_autofree char *instance_dir = NULL; + g_autofree char *instance_private_dir = NULL; + glnx_autofd int lock_fd = -1; instance_id = g_strdup_printf ("%u", g_random_int ()); instance_dir = g_build_filename (base_dir, instance_id, NULL); + instance_private_dir = g_strdup_printf ("%s-private", instance_dir); /* We use an atomic mkdir to ensure the instance id is unique */ - if (mkdir (instance_dir, 0755) == 0) - { - g_autofree char *lock_file = g_build_filename (instance_dir, ".ref", NULL); - glnx_autofd int lock_fd = -1; - struct flock l = { - .l_type = F_RDLCK, - .l_whence = SEEK_SET, - .l_start = 0, - .l_len = 0 - }; + if (mkdir (instance_dir, 0755) != 0) + continue; - /* Then we take a file lock inside the dir, hold that during - * setup and in bwrap. Anyone trying to clean up unused - * directories need to first verify that there is a .ref - * file and take a write lock on .ref to ensure its not in - * use. */ - lock_fd = open (lock_file, O_RDWR | O_CREAT | O_CLOEXEC, 0644); - /* There is a tiny race here between the open creating the file and the lock succeeding. - We work around that by only gc:ing "old" .ref files */ - if (lock_fd != -1 && fcntl (lock_fd, F_SETLK, &l) == 0) - { - *lock_fd_out = glnx_steal_fd (&lock_fd); - g_debug ("Allocated instance id %s", instance_id); - *host_dir_out = g_steal_pointer (&instance_dir); - return g_steal_pointer (&instance_id); - } + lock_fd = flatpak_instance_create_lock_file (instance_dir); + if (lock_fd == -1) + continue; + + if (mkdir (instance_private_dir, 0700) != 0) + { + g_warning ("Could not create private instance directory '%s': %s", + instance_private_dir, g_strerror (errno)); + continue; } + + *lock_fd_out = g_steal_fd (&lock_fd); + g_info ("Allocated instance id %s", instance_id); + *host_dir_out = g_steal_pointer (&instance_dir); + *host_private_dir_out = g_steal_pointer (&instance_private_dir); + return g_steal_pointer (&instance_id); } return NULL; @@ -883,13 +927,11 @@ flatpak_instance_claim_per_app_temp_directory (const char *app_id, return glnx_throw (error, "%s does not start with %s/flatpak-%s-", reuse_path, parent, app_id); - /* Avoid symlink attacks via O_NOFOLLOW */ - dfd = openat (AT_FDCWD, reuse_path, - O_PATH | O_DIRECTORY | O_NOFOLLOW | O_CLOEXEC); - - if (dfd < 0) - return glnx_throw_errno_prefix (error, "opening %s O_DIRECTORY|O_NOFOLLOW", - reuse_path); + /* Avoid symlink attacks by not following symlinks */ + if (!glnx_opendirat (AT_FDCWD, reuse_path, FALSE, + &dfd, + error)) + return FALSE; if (fstat (dfd, &statbuf) < 0) return glnx_throw_errno_prefix (error, "fstat %s", reuse_path); @@ -964,11 +1006,10 @@ flatpak_instance_gc_per_app_dirs (const char *instance_id, /* Take an exclusive lock so we don't race with other instances */ per_app_dir = g_build_filename (per_app_parent, app_id, NULL); - per_app_dir_fd = openat (AT_FDCWD, per_app_dir, - O_PATH | O_DIRECTORY | O_CLOEXEC); - - if (per_app_dir_fd < 0) - return glnx_throw_errno_prefix (error, "open %s", per_app_dir); + if (!glnx_opendirat (AT_FDCWD, per_app_dir, TRUE, + &per_app_dir_fd, + error)) + return FALSE; per_app_dir_lock_fd = openat (per_app_dir_fd, ".ref", O_RDWR | O_CREAT | O_CLOEXEC, 0600); @@ -990,7 +1031,7 @@ flatpak_instance_gc_per_app_dirs (const char *instance_id, if (statbuf.st_mtime + 3 >= time (NULL)) return glnx_throw (error, "lock file too recent, avoiding race condition"); - g_debug ("Cleaning up per-app-ID state for %s", app_id); + g_info ("Cleaning up per-app-ID state for %s", app_id); /* /dev/shm is offloaded onto the host's /dev/shm to get consistent * free space behaviour and make sure it's actually in RAM. It could @@ -1018,13 +1059,13 @@ flatpak_instance_gc_per_app_dirs (const char *instance_id, g_assert (g_str_has_prefix (path, "/dev/shm/")); if (unlinkat (per_app_dir_fd, "dev-shm", 0) != 0) - g_debug ("Unable to clean up %s/%s: %s", - per_app_dir, "dev-shm", g_strerror (errno)); + g_info ("Unable to clean up %s/%s: %s", + per_app_dir, "dev-shm", g_strerror (errno)); if (!glnx_shutil_rm_rf_at (AT_FDCWD, path, NULL, &local_error)) { - g_debug ("Unable to clean up %s: %s", - path, local_error->message); + g_info ("Unable to clean up %s: %s", + path, local_error->message); g_clear_error (&local_error); } } @@ -1035,9 +1076,9 @@ flatpak_instance_gc_per_app_dirs (const char *instance_id, } else { - g_debug ("%s/%s no longer points to the expected directory and " - "was removed: %s", - per_app_dir, "dev-shm", local_error->message); + g_info ("%s/%s no longer points to the expected directory and " + "was removed: %s", + per_app_dir, "dev-shm", local_error->message); g_clear_error (&local_error); } } @@ -1049,8 +1090,8 @@ flatpak_instance_gc_per_app_dirs (const char *instance_id, * and not a symlink. If it's a symlink, we'll just unlink it. */ if (!glnx_shutil_rm_rf_at (per_app_dir_fd, "tmp", NULL, &local_error)) { - g_debug ("Unable to clean up %s/tmp: %s", per_app_dir, - local_error->message); + g_info ("Unable to clean up %s/tmp: %s", per_app_dir, + local_error->message); g_clear_error (&local_error); } @@ -1084,7 +1125,8 @@ flatpak_instance_iterate_all_and_gc (GPtrArray *out_instances) if (dent->d_type == DT_DIR) { - g_autofree char *ref_file = g_strconcat (dent->d_name, "/.ref", NULL); + const char *instance_id = dent->d_name; + g_autofree char *ref_file = g_strconcat (instance_id, "/.ref", NULL); struct stat statbuf; struct flock l = { .l_type = F_WRLCK, @@ -1102,14 +1144,16 @@ flatpak_instance_iterate_all_and_gc (GPtrArray *out_instances) l.l_type == F_UNLCK) { g_autoptr(GError) local_error = NULL; + g_autofree char *instance_id_private = g_strdup_printf ("%s-private", instance_id); /* The instance is not used, remove it */ - g_debug ("Cleaning up unused container id %s", dent->d_name); + g_info ("Cleaning up unused container id %s", instance_id); - if (!flatpak_instance_gc_per_app_dirs (dent->d_name, &local_error)) - flatpak_debug2 ("Not cleaning up per-app dir: %s", local_error->message); + if (!flatpak_instance_gc_per_app_dirs (instance_id, &local_error)) + g_debug ("Not cleaning up per-app dir: %s", local_error->message); - glnx_shutil_rm_rf_at (iter.fd, dent->d_name, NULL, NULL); + glnx_shutil_rm_rf_at (iter.fd, instance_id_private, NULL, NULL); + glnx_shutil_rm_rf_at (iter.fd, instance_id, NULL, NULL); continue; } diff --git a/common/flatpak-json-backports-private.h b/common/flatpak-json-backports-private.h new file mode 100644 index 0000000..f2df741 --- /dev/null +++ b/common/flatpak-json-backports-private.h @@ -0,0 +1,35 @@ +/* + * Copyright © 2014-2016 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + */ + +#pragma once + +#include + +G_BEGIN_DECLS + +#if !JSON_CHECK_VERSION (1, 1, 2) +G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonArray, json_array_unref) +G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonBuilder, g_object_unref) +G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonGenerator, g_object_unref) +G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonNode, json_node_free) +G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonObject, json_object_unref) +G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonParser, g_object_unref) +G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonPath, g_object_unref) +G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonReader, g_object_unref) +#endif + +G_END_DECLS diff --git a/common/flatpak-json-oci.c b/common/flatpak-json-oci.c index 4a429ef..42647d1 100644 --- a/common/flatpak-json-oci.c +++ b/common/flatpak-json-oci.c @@ -22,6 +22,9 @@ #include "string.h" #include "flatpak-json-oci-private.h" + +#include + #include "flatpak-utils-private.h" #include "libglnx.h" diff --git a/common/flatpak-locale-utils-private.h b/common/flatpak-locale-utils-private.h new file mode 100644 index 0000000..0519d20 --- /dev/null +++ b/common/flatpak-locale-utils-private.h @@ -0,0 +1,44 @@ +/* + * Copyright © 2014 Red Hat, Inc + * Copyright © 2023 Collabora Ltd. + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#pragma once + +#include + +const char * const *flatpak_get_locale_categories (void); +char *flatpak_get_lang_from_locale (const char *locale); +char **flatpak_get_current_locale_langs (void); +const GPtrArray *flatpak_get_system_locales (void); +const GPtrArray *flatpak_get_user_locales (void); + +/* Only for regression tests, should not be used directly */ +GDBusProxy *flatpak_locale_get_localed_dbus_proxy (void); +void flatpak_get_locale_langs_from_localed_dbus (GDBusProxy *proxy, + GPtrArray *langs); +GDBusProxy *flatpak_locale_get_accounts_dbus_proxy (void); +gboolean flatpak_get_all_langs_from_accounts_dbus (GDBusProxy *proxy, + GPtrArray *langs); +void flatpak_get_locale_langs_from_accounts_dbus (GDBusProxy *proxy, + GPtrArray *langs); +void flatpak_get_locale_langs_from_accounts_dbus_for_user (GDBusProxy *proxy, + GPtrArray *langs, + guint uid); diff --git a/common/flatpak-locale-utils.c b/common/flatpak-locale-utils.c new file mode 100644 index 0000000..2908e0f --- /dev/null +++ b/common/flatpak-locale-utils.c @@ -0,0 +1,384 @@ +/* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: + * Copyright © 2014-2019 Red Hat, Inc + * Copyright © 2017 Endless Mobile, Inc. + * Copyright © 2023 Collabora Ltd. + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + * Philip Withnall + * Matthew Leeds + */ + +#include "config.h" +#include "flatpak-locale-utils-private.h" + +#include +#include "libglnx.h" + +#include "flatpak-utils-private.h" + +const char * const * +flatpak_get_locale_categories (void) +{ + /* See locale(7) for these categories */ + static const char * const categories[] = { + "LANG", "LC_ALL", "LC_MESSAGES", "LC_ADDRESS", "LC_COLLATE", "LC_CTYPE", + "LC_IDENTIFICATION", "LC_MONETARY", "LC_MEASUREMENT", "LC_NAME", "LC_NUMERIC", + "LC_PAPER", "LC_TELEPHONE", "LC_TIME", + NULL + }; + + return categories; +} + +char * +flatpak_get_lang_from_locale (const char *locale) +{ + g_autofree char *lang = g_strdup (locale); + char *c; + + c = strchr (lang, '@'); + if (c != NULL) + *c = 0; + c = strchr (lang, '_'); + if (c != NULL) + *c = 0; + c = strchr (lang, '.'); + if (c != NULL) + *c = 0; + + if (strcmp (lang, "C") == 0) + return NULL; + + return g_steal_pointer (&lang); +} + +char ** +flatpak_get_current_locale_langs (void) +{ + const char * const *categories = flatpak_get_locale_categories (); + GPtrArray *langs = g_ptr_array_new (); + int i; + + for (; categories != NULL && *categories != NULL; categories++) + { + const gchar * const *locales = g_get_language_names_with_category (*categories); + + for (i = 0; locales[i] != NULL; i++) + { + g_autofree char *lang = flatpak_get_lang_from_locale (locales[i]); + if (lang != NULL && !flatpak_g_ptr_array_contains_string (langs, lang)) + g_ptr_array_add (langs, g_steal_pointer (&lang)); + } + } + + g_ptr_array_sort (langs, flatpak_strcmp0_ptr); + g_ptr_array_add (langs, NULL); + + return (char **) g_ptr_array_free (langs, FALSE); +} + +GDBusProxy * +flatpak_locale_get_localed_dbus_proxy (void) +{ + const char *localed_bus_name = "org.freedesktop.locale1"; + const char *localed_object_path = "/org/freedesktop/locale1"; + const char *localed_interface_name = localed_bus_name; + + return g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM, + G_DBUS_PROXY_FLAGS_NONE, + NULL, + localed_bus_name, + localed_object_path, + localed_interface_name, + NULL, + NULL); +} + +void +flatpak_get_locale_langs_from_localed_dbus (GDBusProxy *proxy, GPtrArray *langs) +{ + g_autoptr(GVariant) locale_variant = NULL; + g_autofree const gchar **strv = NULL; + gsize i, j; + + locale_variant = g_dbus_proxy_get_cached_property (proxy, "Locale"); + if (locale_variant == NULL) + return; + + strv = g_variant_get_strv (locale_variant, NULL); + + for (i = 0; strv[i]; i++) + { + const gchar *locale = NULL; + g_autofree char *lang = NULL; + + const char * const *categories = flatpak_get_locale_categories (); + + for (j = 0; categories[j]; j++) + { + g_autofree char *prefix = g_strdup_printf ("%s=", categories[j]); + if (g_str_has_prefix (strv[i], prefix)) + { + locale = strv[i] + strlen (prefix); + break; + } + } + + if (locale == NULL || strcmp (locale, "") == 0) + continue; + + lang = flatpak_get_lang_from_locale (locale); + if (lang != NULL && !flatpak_g_ptr_array_contains_string (langs, lang)) + g_ptr_array_add (langs, g_steal_pointer (&lang)); + } +} + +GDBusProxy * +flatpak_locale_get_accounts_dbus_proxy (void) +{ + const char *accounts_bus_name = "org.freedesktop.Accounts"; + const char *accounts_object_path = "/org/freedesktop/Accounts"; + const char *accounts_interface_name = accounts_bus_name; + + return g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM, + G_DBUS_PROXY_FLAGS_NONE, + NULL, + accounts_bus_name, + accounts_object_path, + accounts_interface_name, + NULL, + NULL); +} + +gboolean +flatpak_get_all_langs_from_accounts_dbus (GDBusProxy *proxy, GPtrArray *langs) +{ + g_auto(GStrv) all_langs = NULL; + int i; + g_autoptr(GVariant) ret = NULL; + g_autoptr(GError) error = NULL; + + ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "GetUsersLanguages", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + NULL, + &error); + if (!ret) + { + g_debug ("Failed to get languages for all users: %s", error->message); + return FALSE; + } + + g_variant_get (ret, + "(^as)", + &all_langs); + + if (all_langs != NULL) + { + for (i = 0; all_langs[i] != NULL; i++) + { + g_autofree char *lang = NULL; + lang = flatpak_get_lang_from_locale (all_langs[i]); + if (lang != NULL && !flatpak_g_ptr_array_contains_string (langs, lang)) + g_ptr_array_add (langs, g_steal_pointer (&lang)); + } + } + + return TRUE; +} + +void +flatpak_get_locale_langs_from_accounts_dbus (GDBusProxy *proxy, GPtrArray *langs) +{ + const char *accounts_bus_name = "org.freedesktop.Accounts"; + const char *accounts_interface_name = "org.freedesktop.Accounts.User"; + g_auto(GStrv) object_paths = NULL; + int i; + g_autoptr(GVariant) ret = NULL; + + ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "ListCachedUsers", + g_variant_new ("()"), + G_DBUS_CALL_FLAGS_NONE, + -1, + NULL, + NULL); + if (ret != NULL) + g_variant_get (ret, + "(^ao)", + &object_paths); + + if (object_paths != NULL) + { + for (i = 0; object_paths[i] != NULL; i++) + { + g_autoptr(GDBusProxy) accounts_proxy = NULL; + g_autoptr(GVariant) value = NULL; + + accounts_proxy = g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM, + G_DBUS_PROXY_FLAGS_NONE, + NULL, + accounts_bus_name, + object_paths[i], + accounts_interface_name, + NULL, + NULL); + + if (accounts_proxy) + { + value = g_dbus_proxy_get_cached_property (accounts_proxy, "Language"); + if (value != NULL) + { + const char *locale = g_variant_get_string (value, NULL); + g_autofree char *lang = NULL; + + if (strcmp (locale, "") == 0) + continue; /* This user wants the system default locale */ + + lang = flatpak_get_lang_from_locale (locale); + if (lang != NULL && !flatpak_g_ptr_array_contains_string (langs, lang)) + g_ptr_array_add (langs, g_steal_pointer (&lang)); + } + } + } + } +} + +void +flatpak_get_locale_langs_from_accounts_dbus_for_user (GDBusProxy *proxy, GPtrArray *langs, guint uid) +{ + const char *accounts_bus_name = "org.freedesktop.Accounts"; + const char *accounts_interface_name = "org.freedesktop.Accounts.User"; + g_autofree char *object_path = NULL; + g_autoptr(GVariant) ret = NULL; + + ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), + "FindUserById", + g_variant_new ("(x)", uid), + G_DBUS_CALL_FLAGS_NONE, + -1, + NULL, + NULL); + if (ret != NULL) + g_variant_get (ret, "(o)", &object_path); + + if (object_path != NULL) + { + g_autoptr(GDBusProxy) accounts_proxy = NULL; + g_autoptr(GVariant) value = NULL; + + accounts_proxy = g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM, + G_DBUS_PROXY_FLAGS_NONE, + NULL, + accounts_bus_name, + object_path, + accounts_interface_name, + NULL, + NULL); + if (!accounts_proxy) + return; + + value = g_dbus_proxy_get_cached_property (accounts_proxy, "Languages"); + if (value != NULL) + { + g_autofree const char **locales = g_variant_get_strv (value, NULL); + guint i; + + for (i = 0; locales != NULL && locales[i] != NULL; i++) + { + g_autofree char *lang = NULL; + lang = flatpak_get_lang_from_locale (locales[i]); + if (lang != NULL && !flatpak_g_ptr_array_contains_string (langs, lang)) + g_ptr_array_add (langs, g_steal_pointer (&lang)); + } + } + else + { + value = g_dbus_proxy_get_cached_property (accounts_proxy, "Language"); + if (value != NULL) + { + const char *locale = g_variant_get_string (value, NULL); + g_autofree char *lang = NULL; + + if (strcmp (locale, "") != 0) + { + lang = flatpak_get_lang_from_locale (locale); + if (lang != NULL && !flatpak_g_ptr_array_contains_string (langs, lang)) + g_ptr_array_add (langs, g_steal_pointer (&lang)); + } + } + } + } +} + +const GPtrArray * +flatpak_get_system_locales (void) +{ + static GPtrArray *cached = NULL; + + if (g_once_init_enter (&cached)) + { + GPtrArray *langs = g_ptr_array_new_with_free_func (g_free); + g_autoptr(GDBusProxy) accounts_proxy = NULL; + g_autoptr(GDBusProxy) localed_proxy = NULL; + + /* Get the system default locales */ + localed_proxy = flatpak_locale_get_localed_dbus_proxy (); + if (localed_proxy != NULL) + flatpak_get_locale_langs_from_localed_dbus (localed_proxy, langs); + + /* Add user account languages from AccountsService */ + accounts_proxy = flatpak_locale_get_accounts_dbus_proxy (); + if (accounts_proxy != NULL) + if (!flatpak_get_all_langs_from_accounts_dbus (accounts_proxy, langs)) + /* If AccountsService is too old for GetUsersLanguages, fall back + * to retrieving languages for each user account */ + flatpak_get_locale_langs_from_accounts_dbus (accounts_proxy, langs); + + g_ptr_array_add (langs, NULL); + + g_once_init_leave (&cached, langs); + } + + return (const GPtrArray *)cached; +} + +const GPtrArray * +flatpak_get_user_locales (void) +{ + static GPtrArray *cached = NULL; + + if (g_once_init_enter (&cached)) + { + GPtrArray *langs = g_ptr_array_new_with_free_func (g_free); + g_autoptr(GDBusProxy) accounts_proxy = NULL; + + accounts_proxy = flatpak_locale_get_accounts_dbus_proxy (); + + if (accounts_proxy != NULL) + flatpak_get_locale_langs_from_accounts_dbus_for_user (accounts_proxy, langs, getuid ()); + + g_ptr_array_add (langs, NULL); + + g_once_init_leave (&cached, langs); + } + + return (const GPtrArray *)cached; +} diff --git a/common/flatpak-metadata-private.h b/common/flatpak-metadata-private.h new file mode 100644 index 0000000..a5147f9 --- /dev/null +++ b/common/flatpak-metadata-private.h @@ -0,0 +1,112 @@ +/* + * Copyright 2014 Red Hat, Inc + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + */ + +#pragma once + +#include "libglnx.h" + +#include + +G_BEGIN_DECLS + +/* See flatpak-metadata(5) */ + +#define FLATPAK_METADATA_GROUP_APPLICATION "Application" +#define FLATPAK_METADATA_GROUP_RUNTIME "Runtime" +#define FLATPAK_METADATA_KEY_COMMAND "command" +#define FLATPAK_METADATA_KEY_NAME "name" +#define FLATPAK_METADATA_KEY_REQUIRED_FLATPAK "required-flatpak" +#define FLATPAK_METADATA_KEY_RUNTIME "runtime" +#define FLATPAK_METADATA_KEY_SDK "sdk" +#define FLATPAK_METADATA_KEY_TAGS "tags" + +#define FLATPAK_METADATA_GROUP_CONTEXT "Context" +#define FLATPAK_METADATA_KEY_SHARED "shared" +#define FLATPAK_METADATA_KEY_SOCKETS "sockets" +#define FLATPAK_METADATA_KEY_FILESYSTEMS "filesystems" +#define FLATPAK_METADATA_KEY_PERSISTENT "persistent" +#define FLATPAK_METADATA_KEY_DEVICES "devices" +#define FLATPAK_METADATA_KEY_FEATURES "features" +#define FLATPAK_METADATA_KEY_UNSET_ENVIRONMENT "unset-environment" + +#define FLATPAK_METADATA_GROUP_INSTANCE "Instance" +#define FLATPAK_METADATA_KEY_INSTANCE_PATH "instance-path" +#define FLATPAK_METADATA_KEY_INSTANCE_ID "instance-id" +#define FLATPAK_METADATA_KEY_ORIGINAL_APP_PATH "original-app-path" +#define FLATPAK_METADATA_KEY_APP_PATH "app-path" +#define FLATPAK_METADATA_KEY_APP_COMMIT "app-commit" +#define FLATPAK_METADATA_KEY_APP_EXTENSIONS "app-extensions" +#define FLATPAK_METADATA_KEY_ARCH "arch" +#define FLATPAK_METADATA_KEY_BRANCH "branch" +#define FLATPAK_METADATA_KEY_FLATPAK_VERSION "flatpak-version" +#define FLATPAK_METADATA_KEY_ORIGINAL_RUNTIME_PATH "original-runtime-path" +#define FLATPAK_METADATA_KEY_RUNTIME_PATH "runtime-path" +#define FLATPAK_METADATA_KEY_RUNTIME_COMMIT "runtime-commit" +#define FLATPAK_METADATA_KEY_RUNTIME_EXTENSIONS "runtime-extensions" +#define FLATPAK_METADATA_KEY_SESSION_BUS_PROXY "session-bus-proxy" +#define FLATPAK_METADATA_KEY_SYSTEM_BUS_PROXY "system-bus-proxy" +#define FLATPAK_METADATA_KEY_EXTRA_ARGS "extra-args" +#define FLATPAK_METADATA_KEY_SANDBOX "sandbox" +#define FLATPAK_METADATA_KEY_BUILD "build" +#define FLATPAK_METADATA_KEY_DEVEL "devel" + +#define FLATPAK_METADATA_GROUP_SESSION_BUS_POLICY "Session Bus Policy" +#define FLATPAK_METADATA_GROUP_SYSTEM_BUS_POLICY "System Bus Policy" +#define FLATPAK_METADATA_GROUP_A11Y_BUS_POLICY "Accessibility Bus Policy" +#define FLATPAK_METADATA_GROUP_PREFIX_POLICY "Policy " +#define FLATPAK_METADATA_GROUP_ENVIRONMENT "Environment" + +#define FLATPAK_METADATA_GROUP_PREFIX_EXTENSION "Extension " +#define FLATPAK_METADATA_KEY_ADD_LD_PATH "add-ld-path" +#define FLATPAK_METADATA_KEY_AUTODELETE "autodelete" +#define FLATPAK_METADATA_KEY_DIRECTORY "directory" +#define FLATPAK_METADATA_KEY_DOWNLOAD_IF "download-if" +#define FLATPAK_METADATA_KEY_ENABLE_IF "enable-if" +#define FLATPAK_METADATA_KEY_AUTOPRUNE_UNLESS "autoprune-unless" +#define FLATPAK_METADATA_KEY_MERGE_DIRS "merge-dirs" +#define FLATPAK_METADATA_KEY_NO_AUTODOWNLOAD "no-autodownload" +#define FLATPAK_METADATA_KEY_SUBDIRECTORIES "subdirectories" +#define FLATPAK_METADATA_KEY_SUBDIRECTORY_SUFFIX "subdirectory-suffix" +#define FLATPAK_METADATA_KEY_LOCALE_SUBSET "locale-subset" +#define FLATPAK_METADATA_KEY_VERSION "version" +#define FLATPAK_METADATA_KEY_VERSIONS "versions" + +#define FLATPAK_METADATA_KEY_COLLECTION_ID "collection-id" + +#define FLATPAK_METADATA_GROUP_EXTRA_DATA "Extra Data" +#define FLATPAK_METADATA_KEY_EXTRA_DATA_CHECKSUM "checksum" +#define FLATPAK_METADATA_KEY_EXTRA_DATA_INSTALLED_SIZE "installed-size" +#define FLATPAK_METADATA_KEY_EXTRA_DATA_NAME "name" +#define FLATPAK_METADATA_KEY_EXTRA_DATA_SIZE "size" +#define FLATPAK_METADATA_KEY_EXTRA_DATA_URI "uri" +#define FLATPAK_METADATA_KEY_NO_RUNTIME "NoRuntime" + +#define FLATPAK_METADATA_GROUP_EXTENSION_OF "ExtensionOf" +#define FLATPAK_METADATA_KEY_PRIORITY "priority" +#define FLATPAK_METADATA_KEY_REF "ref" +#define FLATPAK_METADATA_KEY_TAG "tag" + +#define FLATPAK_METADATA_GROUP_DCONF "X-DConf" +#define FLATPAK_METADATA_KEY_DCONF_PATHS "paths" +#define FLATPAK_METADATA_KEY_DCONF_MIGRATE_PATH "migrate-path" + +#define FLATPAK_METADATA_GROUP_USB_DEVICES "USB Devices" +#define FLATPAK_METADATA_KEY_USB_ENUMERABLE_DEVICES "enumerable-devices" +#define FLATPAK_METADATA_KEY_USB_HIDDEN_DEVICES "hidden-devices" + +G_END_DECLS diff --git a/common/flatpak-oci-registry-private.h b/common/flatpak-oci-registry-private.h index 83ec846..2c0608d 100644 --- a/common/flatpak-oci-registry-private.h +++ b/common/flatpak-oci-registry-private.h @@ -1,5 +1,5 @@ /* - * Copyright © 2016 Red Hat, Inc + * Copyright © 2014-2019 Red Hat, Inc * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -25,10 +25,13 @@ #include #include -#include +#include "flatpak-dir-private.h" #include "flatpak-json-oci-private.h" +#include "flatpak-utils-http-private.h" #include "flatpak-utils-private.h" +struct archive; + #define FLATPAK_TYPE_OCI_REGISTRY flatpak_oci_registry_get_type () #define FLATPAK_OCI_REGISTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FLATPAK_TYPE_OCI_REGISTRY, FlatpakOciRegistry)) #define FLATPAK_IS_OCI_REGISTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FLATPAK_TYPE_OCI_REGISTRY)) @@ -180,4 +183,38 @@ GBytes *flatpak_oci_index_make_appstream (FlatpakHttpSession *http_session, GCancellable *cancellable, GError **error); +typedef void (*FlatpakOciPullProgress) (guint64 total_size, + guint64 pulled_size, + guint32 n_layers, + guint32 pulled_layers, + gpointer data); + +char * flatpak_pull_from_oci (OstreeRepo *repo, + FlatpakOciRegistry *registry, + const char *oci_repository, + const char *digest, + const char *delta_url, + FlatpakOciManifest *manifest, + FlatpakOciImage *image_config, + const char *remote, + const char *ref, + FlatpakPullFlags flags, + FlatpakOciPullProgress progress_cb, + gpointer progress_data, + GCancellable *cancellable, + GError **error); + +gboolean flatpak_mirror_image_from_oci (FlatpakOciRegistry *dst_registry, + FlatpakOciRegistry *registry, + const char *oci_repository, + const char *digest, + const char *remote, + const char *ref, + const char *delta_url, + OstreeRepo *repo, + FlatpakOciPullProgress progress_cb, + gpointer progress_data, + GCancellable *cancellable, + GError **error); + #endif /* __FLATPAK_OCI_REGISTRY_H__ */ diff --git a/common/flatpak-oci-registry.c b/common/flatpak-oci-registry.c index 01dcd26..ad595e5 100644 --- a/common/flatpak-oci-registry.c +++ b/common/flatpak-oci-registry.c @@ -1,5 +1,5 @@ /* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: - * Copyright © 2016 Red Hat, Inc + * Copyright © 2014-2019 Red Hat, Inc * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -26,12 +26,17 @@ #include "libglnx.h" +#include #include #include "flatpak-oci-registry-private.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-utils-base-private.h" #include "flatpak-utils-private.h" #include "flatpak-uri-private.h" +#include "flatpak-variant-private.h" +#include "flatpak-variant-impl-private.h" #include "flatpak-dir-private.h" +#include "flatpak-xml-utils-private.h" #include "flatpak-zstd-decompressor-private.h" #define MAX_JSON_SIZE (1024 * 1024) @@ -39,6 +44,9 @@ typedef struct archive FlatpakAutoArchiveWrite; G_DEFINE_AUTOPTR_CLEANUP_FUNC (FlatpakAutoArchiveWrite, archive_write_free) +typedef struct archive FlatpakAutoArchiveRead; +G_DEFINE_AUTOPTR_CLEANUP_FUNC (FlatpakAutoArchiveRead, archive_read_free) + static void flatpak_oci_registry_initable_iface_init (GInitableIface *iface); /* A FlatpakOciRegistry represents either: @@ -300,7 +308,7 @@ local_open_file (int dfd, return -1; } - return glnx_steal_fd (&fd); + return g_steal_fd (&fd); } static GBytes * @@ -528,7 +536,7 @@ flatpak_oci_registry_ensure_local (FlatpakOciRegistry *self, } if (self->dfd == -1 && local_dfd != -1) - self->dfd = glnx_steal_fd (&local_dfd); + self->dfd = g_steal_fd (&local_dfd); return TRUE; } @@ -571,9 +579,18 @@ flatpak_oci_registry_initable_init (GInitable *initable, FlatpakOciRegistry *self = FLATPAK_OCI_REGISTRY (initable); gboolean res; - if (self->tmp_dfd == -1 && - !glnx_opendirat (AT_FDCWD, "/var/tmp", TRUE, &self->tmp_dfd, error)) - return FALSE; + if (self->tmp_dfd == -1) + { + /* We don't use TMPDIR because the downloaded artifacts can be + * very big, and we want to prefer /var/tmp to /tmp. + */ + const char *tmpdir = g_getenv ("FLATPAK_DOWNLOAD_TMPDIR"); + if (tmpdir == NULL) + tmpdir = "/var/tmp"; + + if (!glnx_opendirat (AT_FDCWD, tmpdir, TRUE, &self->tmp_dfd, error)) + return FALSE; + } if (g_str_has_prefix (self->uri, "file:/")) res = flatpak_oci_registry_ensure_local (self, self->for_write, cancellable, error); @@ -841,7 +858,7 @@ flatpak_oci_registry_download_blob (FlatpakOciRegistry *self, lseek (fd, 0, SEEK_SET); } - return glnx_steal_fd (&fd); + return g_steal_fd (&fd); } gboolean @@ -1072,7 +1089,7 @@ get_token_for_www_auth (FlatpakOciRegistry *self, } if (error_detail == NULL) - g_debug ("Unhandled error body format: %s", body_data); + g_info ("Unhandled error body format: %s", body_data); if (http_status == 401 /* UNAUTHORIZED */) { @@ -1994,7 +2011,7 @@ flatpak_oci_registry_apply_delta (FlatpakOciRegistry *self, if (!flatpak_oci_registry_apply_delta_stream (self, delta_fd, content_dir, out, cancellable, error)) return -1; - return glnx_steal_fd (&fd); + return g_steal_fd (&fd); } char * @@ -2985,7 +3002,7 @@ flatpak_oci_index_make_summary (GFile *index, if (!g_str_has_prefix (image->digest, "sha256:")) { - g_debug ("Ignoring digest type %s", image->digest); + g_info ("Ignoring digest type %s", image->digest); continue; } @@ -3036,9 +3053,9 @@ flatpak_oci_index_make_summary (GFile *index, if (token_type_v != NULL) g_variant_builder_add (sparse_builder, "{s@v}", FLATPAK_SPARSE_CACHE_KEY_TOKEN_TYPE, token_type_v); if (endoflife_v != NULL) - g_variant_builder_add (sparse_builder, "{s@v}", FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE, endoflife_v); + g_variant_builder_add (sparse_builder, "{s@v}", FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE, endoflife_v); if (endoflife_rebase_v != NULL) - g_variant_builder_add (sparse_builder, "{s@v}", FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE_REBASE, endoflife_rebase_v); + g_variant_builder_add (sparse_builder, "{s@v}", FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE_REBASE, endoflife_rebase_v); g_variant_builder_add (ref_sparse_data_builder, "{s@a{sv}}", ref, g_variant_builder_end (sparse_builder)); @@ -3380,3 +3397,437 @@ flatpak_oci_index_make_appstream (FlatpakHttpSession *http_session, return g_steal_pointer (&bytes); } + +typedef struct +{ + FlatpakOciPullProgress progress_cb; + gpointer progress_user_data; + guint64 total_size; + guint64 previous_layers_size; + guint32 n_layers; + guint32 pulled_layers; +} FlatpakOciPullProgressData; + +static void +oci_layer_progress (guint64 downloaded_bytes, + gpointer user_data) +{ + FlatpakOciPullProgressData *progress_data = user_data; + + if (progress_data->progress_cb) + progress_data->progress_cb (progress_data->total_size, progress_data->previous_layers_size + downloaded_bytes, + progress_data->n_layers, progress_data->pulled_layers, + progress_data->progress_user_data); +} + +gboolean +flatpak_mirror_image_from_oci (FlatpakOciRegistry *dst_registry, + FlatpakOciRegistry *registry, + const char *oci_repository, + const char *digest, + const char *remote, + const char *ref, + const char *delta_url, + OstreeRepo *repo, + FlatpakOciPullProgress progress_cb, + gpointer progress_user_data, + GCancellable *cancellable, + GError **error) +{ + FlatpakOciPullProgressData progress_data = { progress_cb, progress_user_data }; + g_autoptr(FlatpakOciVersioned) versioned = NULL; + FlatpakOciManifest *manifest = NULL; + g_autoptr(FlatpakOciDescriptor) manifest_desc = NULL; + g_autoptr(FlatpakOciManifest) delta_manifest = NULL; + g_autofree char *old_checksum = NULL; + g_autoptr(GVariant) old_commit = NULL; + g_autoptr(GFile) old_root = NULL; + OstreeRepoCommitState old_state = 0; + g_autofree char *old_diffid = NULL; + gsize versioned_size; + g_autoptr(FlatpakOciIndex) index = NULL; + g_autoptr(FlatpakOciImage) image_config = NULL; + int n_layers; + int i; + + if (!flatpak_oci_registry_mirror_blob (dst_registry, registry, oci_repository, TRUE, digest, NULL, NULL, NULL, cancellable, error)) + return FALSE; + + versioned = flatpak_oci_registry_load_versioned (dst_registry, NULL, digest, NULL, &versioned_size, cancellable, error); + if (versioned == NULL) + return FALSE; + + if (!FLATPAK_IS_OCI_MANIFEST (versioned)) + return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Image is not a manifest")); + + manifest = FLATPAK_OCI_MANIFEST (versioned); + + if (manifest->config.digest == NULL) + return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Image is not a manifest")); + + if (!flatpak_oci_registry_mirror_blob (dst_registry, registry, oci_repository, FALSE, manifest->config.digest, (const char **)manifest->config.urls, NULL, NULL, cancellable, error)) + return FALSE; + + image_config = flatpak_oci_registry_load_image_config (dst_registry, NULL, + manifest->config.digest, NULL, + NULL, cancellable, error); + if (image_config == NULL) + return FALSE; + + /* For deltas we ensure that the diffid and regular layers exists and match up */ + n_layers = flatpak_oci_manifest_get_n_layers (manifest); + if (n_layers == 0 || n_layers != flatpak_oci_image_get_n_layers (image_config)) + return flatpak_fail (error, _("Invalid OCI image config")); + + /* Look for delta manifest, and if it exists, the current (old) commit and its recorded diffid */ + if (flatpak_repo_resolve_rev (repo, NULL, remote, ref, FALSE, &old_checksum, NULL, NULL) && + ostree_repo_load_commit (repo, old_checksum, &old_commit, &old_state, NULL) && + (old_state == OSTREE_REPO_COMMIT_STATE_NORMAL) && + ostree_repo_read_commit (repo, old_checksum, &old_root, NULL, NULL, NULL)) + { + delta_manifest = flatpak_oci_registry_find_delta_manifest (registry, oci_repository, digest, delta_url, cancellable); + if (delta_manifest) + { + VarMetadataRef commit_metadata = var_commit_get_metadata (var_commit_from_gvariant (old_commit)); + const char *raw_old_diffid = var_metadata_lookup_string (commit_metadata, "xa.diff-id", NULL); + if (raw_old_diffid != NULL) + old_diffid = g_strconcat ("sha256:", raw_old_diffid, NULL); + } + } + + for (i = 0; manifest->layers[i] != NULL; i++) + { + FlatpakOciDescriptor *layer = manifest->layers[i]; + FlatpakOciDescriptor *delta_layer = NULL; + + if (delta_manifest) + delta_layer = flatpak_oci_manifest_find_delta_for (delta_manifest, old_diffid, image_config->rootfs.diff_ids[i]); + + if (delta_layer) + progress_data.total_size += delta_layer->size; + else + progress_data.total_size += layer->size; + progress_data.n_layers++; + } + + if (progress_cb) + progress_cb (progress_data.total_size, 0, + progress_data.n_layers, progress_data.pulled_layers, + progress_user_data); + + for (i = 0; manifest->layers[i] != NULL; i++) + { + FlatpakOciDescriptor *layer = manifest->layers[i]; + FlatpakOciDescriptor *delta_layer = NULL; + + if (delta_manifest) + delta_layer = flatpak_oci_manifest_find_delta_for (delta_manifest, old_diffid, image_config->rootfs.diff_ids[i]); + + if (delta_layer) + { + g_info ("Using OCI delta %s for layer %s", delta_layer->digest, layer->digest); + g_autofree char *delta_digest = NULL; + glnx_autofd int delta_fd = flatpak_oci_registry_download_blob (registry, oci_repository, FALSE, + delta_layer->digest, (const char **)delta_layer->urls, + oci_layer_progress, &progress_data, + cancellable, error); + if (delta_fd == -1) + return FALSE; + + delta_digest = flatpak_oci_registry_apply_delta_to_blob (dst_registry, delta_fd, old_root, cancellable, error); + if (delta_digest == NULL) + return FALSE; + + if (g_strcmp0 (delta_digest, image_config->rootfs.diff_ids[i]) != 0) + return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Wrong layer checksum, expected %s, was %s"), image_config->rootfs.diff_ids[i], delta_digest); + } + else + { + if (!flatpak_oci_registry_mirror_blob (dst_registry, registry, oci_repository, FALSE, layer->digest, (const char **)layer->urls, + oci_layer_progress, &progress_data, + cancellable, error)) + return FALSE; + } + + progress_data.pulled_layers++; + progress_data.previous_layers_size += delta_layer ? delta_layer->size : layer->size; + } + + index = flatpak_oci_registry_load_index (dst_registry, NULL, NULL); + if (index == NULL) + index = flatpak_oci_index_new (); + + manifest_desc = flatpak_oci_descriptor_new (versioned->mediatype, digest, versioned_size); + + flatpak_oci_index_add_manifest (index, ref, manifest_desc); + + if (!flatpak_oci_registry_save_index (dst_registry, index, cancellable, error)) + return FALSE; + + return TRUE; +} + +char * +flatpak_pull_from_oci (OstreeRepo *repo, + FlatpakOciRegistry *registry, + const char *oci_repository, + const char *digest, + const char *delta_url, + FlatpakOciManifest *manifest, + FlatpakOciImage *image_config, + const char *remote, + const char *ref, + FlatpakPullFlags flags, + FlatpakOciPullProgress progress_cb, + gpointer progress_user_data, + GCancellable *cancellable, + GError **error) +{ + gboolean force_disable_deltas = (flags & FLATPAK_PULL_FLAGS_NO_STATIC_DELTAS) != 0; + g_autoptr(OstreeMutableTree) archive_mtree = NULL; + g_autoptr(GFile) archive_root = NULL; + g_autoptr(FlatpakOciManifest) delta_manifest = NULL; + g_autofree char *old_checksum = NULL; + g_autoptr(GVariant) old_commit = NULL; + g_autoptr(GFile) old_root = NULL; + OstreeRepoCommitState old_state = 0; + g_autofree char *old_diffid = NULL; + g_autofree char *commit_checksum = NULL; + const char *parent = NULL; + g_autofree char *subject = NULL; + g_autofree char *body = NULL; + g_autofree char *manifest_ref = NULL; + g_autofree char *full_ref = NULL; + const char *diffid; + guint64 timestamp = 0; + FlatpakOciPullProgressData progress_data = { progress_cb, progress_user_data }; + g_autoptr(GVariantBuilder) metadata_builder = g_variant_builder_new (G_VARIANT_TYPE ("a{sv}")); + g_autoptr(GVariant) metadata = NULL; + GHashTable *labels; + int n_layers; + int i; + + g_assert (ref != NULL); + g_assert (g_str_has_prefix (digest, "sha256:")); + + labels = flatpak_oci_image_get_labels (image_config); + if (labels) + flatpak_oci_parse_commit_labels (labels, ×tamp, + &subject, &body, + &manifest_ref, NULL, NULL, + metadata_builder); + + if (manifest_ref == NULL) + { + flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("No ref specified for OCI image %s"), digest); + return NULL; + } + + if (strcmp (manifest_ref, ref) != 0) + { + flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Wrong ref (%s) specified for OCI image %s, expected %s"), manifest_ref, digest, ref); + return NULL; + } + + g_variant_builder_add (metadata_builder, "{s@v}", "xa.alt-id", + g_variant_new_variant (g_variant_new_string (digest + strlen ("sha256:")))); + + /* For deltas we ensure that the diffid and regular layers exists and match up */ + n_layers = flatpak_oci_manifest_get_n_layers (manifest); + if (n_layers == 0 || n_layers != flatpak_oci_image_get_n_layers (image_config)) + { + flatpak_fail (error, _("Invalid OCI image config")); + return NULL; + } + + /* Assuming everyting looks good, we record the uncompressed checksum (the diff-id) of the last layer, + because that is what we can read back easily from the deploy dir, and thus is easy to use for applying deltas */ + diffid = image_config->rootfs.diff_ids[n_layers-1]; + if (diffid != NULL && g_str_has_prefix (diffid, "sha256:")) + g_variant_builder_add (metadata_builder, "{s@v}", "xa.diff-id", + g_variant_new_variant (g_variant_new_string (diffid + strlen ("sha256:")))); + + /* Look for delta manifest, and if it exists, the current (old) commit and its recorded diffid */ + if (!force_disable_deltas && + !flatpak_oci_registry_is_local (registry) && + flatpak_repo_resolve_rev (repo, NULL, remote, ref, FALSE, &old_checksum, NULL, NULL) && + ostree_repo_load_commit (repo, old_checksum, &old_commit, &old_state, NULL) && + (old_state == OSTREE_REPO_COMMIT_STATE_NORMAL) && + ostree_repo_read_commit (repo, old_checksum, &old_root, NULL, NULL, NULL)) + { + delta_manifest = flatpak_oci_registry_find_delta_manifest (registry, oci_repository, digest, delta_url, cancellable); + if (delta_manifest) + { + VarMetadataRef commit_metadata = var_commit_get_metadata (var_commit_from_gvariant (old_commit)); + const char *raw_old_diffid = var_metadata_lookup_string (commit_metadata, "xa.diff-id", NULL); + if (raw_old_diffid != NULL) + old_diffid = g_strconcat ("sha256:", raw_old_diffid, NULL); + } + } + + if (!ostree_repo_prepare_transaction (repo, NULL, cancellable, error)) + return NULL; + + /* There is no way to write a subset of the archive to a mtree, so instead + we write all of it and then build a new mtree with the subset */ + archive_mtree = ostree_mutable_tree_new (); + + for (i = 0; manifest->layers[i] != NULL; i++) + { + FlatpakOciDescriptor *layer = manifest->layers[i]; + FlatpakOciDescriptor *delta_layer = NULL; + + if (delta_manifest) + delta_layer = flatpak_oci_manifest_find_delta_for (delta_manifest, old_diffid, image_config->rootfs.diff_ids[i]); + + if (delta_layer) + progress_data.total_size += delta_layer->size; + else + progress_data.total_size += layer->size; + + progress_data.n_layers++; + } + + if (progress_cb) + progress_cb (progress_data.total_size, 0, + progress_data.n_layers, progress_data.pulled_layers, + progress_user_data); + + for (i = 0; manifest->layers[i] != NULL; i++) + { + FlatpakOciDescriptor *layer = manifest->layers[i]; + FlatpakOciDescriptor *delta_layer = NULL; + OstreeRepoImportArchiveOptions opts = { 0, }; + g_autoptr(FlatpakAutoArchiveRead) a = NULL; + glnx_autofd int layer_fd = -1; + glnx_autofd int blob_fd = -1; + g_autoptr(GChecksum) checksum = g_checksum_new (G_CHECKSUM_SHA256); + g_autoptr(GError) local_error = NULL; + const char *layer_checksum; + const char *expected_digest; + + if (delta_manifest) + delta_layer = flatpak_oci_manifest_find_delta_for (delta_manifest, old_diffid, image_config->rootfs.diff_ids[i]); + + opts.autocreate_parents = TRUE; + opts.ignore_unsupported_content = TRUE; + + if (delta_layer) + { + g_info ("Using OCI delta %s for layer %s", delta_layer->digest, layer->digest); + expected_digest = image_config->rootfs.diff_ids[i]; /* The delta recreates the uncompressed tar so use that digest */ + } + else + { + layer_fd = g_steal_fd (&blob_fd); + expected_digest = layer->digest; + } + + blob_fd = flatpak_oci_registry_download_blob (registry, oci_repository, FALSE, + delta_layer ? delta_layer->digest : layer->digest, + (const char **)(delta_layer ? delta_layer->urls : layer->urls), + oci_layer_progress, &progress_data, + cancellable, &local_error); + + if (blob_fd == -1 && delta_layer == NULL && + flatpak_oci_registry_is_local (registry) && + g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND)) + { + /* Pulling regular layer from local repo and its not there, try the uncompressed version. + * This happens when we deploy via system helper using oci deltas */ + expected_digest = image_config->rootfs.diff_ids[i]; + blob_fd = flatpak_oci_registry_download_blob (registry, oci_repository, FALSE, + image_config->rootfs.diff_ids[i], NULL, + oci_layer_progress, &progress_data, + cancellable, NULL); /* No error here, we report the first error if this failes */ + } + + if (blob_fd == -1) + { + g_propagate_error (error, g_steal_pointer (&local_error)); + goto error; + } + + g_clear_error (&local_error); + + if (delta_layer) + { + layer_fd = flatpak_oci_registry_apply_delta (registry, blob_fd, old_root, cancellable, error); + if (layer_fd == -1) + goto error; + } + else + { + layer_fd = g_steal_fd (&blob_fd); + } + + a = archive_read_new (); +#ifdef HAVE_ARCHIVE_READ_SUPPORT_FILTER_ALL + archive_read_support_filter_all (a); +#else + archive_read_support_compression_all (a); +#endif + archive_read_support_format_all (a); + + if (!flatpak_archive_read_open_fd_with_checksum (a, layer_fd, checksum, error)) + goto error; + + if (!ostree_repo_import_archive_to_mtree (repo, &opts, a, archive_mtree, NULL, cancellable, error)) + goto error; + + if (archive_read_close (a) != ARCHIVE_OK) + { + propagate_libarchive_error (error, a); + goto error; + } + + layer_checksum = g_checksum_get_string (checksum); + if (!g_str_has_prefix (expected_digest, "sha256:") || + strcmp (expected_digest + strlen ("sha256:"), layer_checksum) != 0) + { + flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Wrong layer checksum, expected %s, was %s"), expected_digest, layer_checksum); + goto error; + } + + progress_data.pulled_layers++; + progress_data.previous_layers_size += delta_layer ? delta_layer->size : layer->size; + } + + if (!ostree_repo_write_mtree (repo, archive_mtree, &archive_root, cancellable, error)) + goto error; + + if (!ostree_repo_file_ensure_resolved ((OstreeRepoFile *) archive_root, error)) + goto error; + + metadata = g_variant_ref_sink (g_variant_builder_end (metadata_builder)); + if (!ostree_repo_write_commit_with_time (repo, + parent, + subject, + body, + metadata, + OSTREE_REPO_FILE (archive_root), + timestamp, + &commit_checksum, + cancellable, error)) + goto error; + + if (remote) + full_ref = g_strdup_printf ("%s:%s", remote, ref); + else + full_ref = g_strdup (ref); + + /* Don’t need to set the collection ID here, since the ref is bound to a + * collection via its remote. */ + ostree_repo_transaction_set_ref (repo, NULL, full_ref, commit_checksum); + + if (!ostree_repo_commit_transaction (repo, NULL, cancellable, error)) + return NULL; + + return g_steal_pointer (&commit_checksum); + +error: + + ostree_repo_abort_transaction (repo, cancellable, NULL); + return NULL; +} + diff --git a/common/flatpak-parental-controls.c b/common/flatpak-parental-controls.c index fd66295..5b9d0c4 100644 --- a/common/flatpak-parental-controls.c +++ b/common/flatpak-parental-controls.c @@ -129,10 +129,10 @@ flatpak_oars_check_rating (GHashTable *content_rating, (rating_value != MCT_APP_FILTER_OARS_VALUE_UNKNOWN && filter_value == MCT_APP_FILTER_OARS_VALUE_UNKNOWN)) { - g_debug ("%s: Comparing rating ‘%s’: app has ‘%s’ but policy has ‘%s’ unknown: OARS check failed", - G_STRFUNC, oars_sections[i], - app_filter_oars_value_to_string (rating_value), - app_filter_oars_value_to_string (filter_value)); + g_info ("%s: Comparing rating ‘%s’: app has ‘%s’ but policy has ‘%s’ unknown: OARS check failed", + G_STRFUNC, oars_sections[i], + app_filter_oars_value_to_string (rating_value), + app_filter_oars_value_to_string (filter_value)); return FALSE; } } diff --git a/common/flatpak-progress.c b/common/flatpak-progress.c index 4cbafad..1ca4b04 100644 --- a/common/flatpak-progress.c +++ b/common/flatpak-progress.c @@ -314,7 +314,7 @@ update_status_progress_and_estimating (FlatpakProgress *self) if (new_progress > 100) { if (!self->reported_overflow) - g_debug ("Unexpectedly got > 100%% progress, limiting"); + g_info ("Unexpectedly got > 100%% progress, limiting"); self->reported_overflow = TRUE; new_progress = 100; } diff --git a/common/flatpak-prune-private.h b/common/flatpak-prune-private.h index 94ed3ff..cba57ec 100644 --- a/common/flatpak-prune-private.h +++ b/common/flatpak-prune-private.h @@ -21,6 +21,8 @@ #ifndef __FLATPAK_PRUNE_H__ #define __FLATPAK_PRUNE_H__ +#include + #include "flatpak-utils-private.h" gboolean flatpak_repo_prune (OstreeRepo *repo, diff --git a/common/flatpak-prune.c b/common/flatpak-prune.c index 1259cc4..8fb6fd9 100644 --- a/common/flatpak-prune.c +++ b/common/flatpak-prune.c @@ -34,6 +34,7 @@ #include "flatpak-error.h" #include "flatpak-prune-private.h" +#include "flatpak-variant-private.h" #include "flatpak-variant-impl-private.h" #include "libglnx.h" #include "valgrind-private.h" @@ -201,7 +202,7 @@ get_repo_lock (OstreeRepo *repo, if (!do_repo_lock (lock_fd, flags)) return glnx_throw_errno_prefix (error, "Locking repo failed (%s)", (flags & LOCK_EX) != 0 ? "exclusive" : "shared"); - *out_lock_fd = glnx_steal_fd (&lock_fd); + *out_lock_fd = g_steal_fd (&lock_fd); return TRUE; } @@ -517,7 +518,7 @@ traverse_reachable_refs_unlocked (OstreeRepo *repo, if (object_name_bag_contains (reachable, &commit_name)) continue; - flatpak_debug2 ("Finding objects to keep for commit %s", checksum); + g_debug ("Finding objects to keep for commit %s", checksum); if (!load_extra_commitmeta (repo, checksum, &extra_commitmeta, cancellable, error)) return FALSE; @@ -608,8 +609,8 @@ prune_loose_object (OtPruneData *data, { guint64 storage_size = 0; - flatpak_debug2 ("Pruning unneeded object %s.%s", checksum, - ostree_object_type_to_string (objtype)); + g_debug ("Pruning unneeded object %s.%s", checksum, + ostree_object_type_to_string (objtype)); if (!ostree_repo_query_object_storage_size (data->repo, objtype, checksum, &storage_size, cancellable, error)) @@ -767,14 +768,15 @@ flatpak_repo_prune (OstreeRepo *repo, return FALSE; timer = g_timer_new (); - g_debug ("Finding reachable objects, unlocked (depth=%d)", depth); + g_info ("Finding reachable objects, unlocked (depth=%d)", depth); g_timer_start (timer); if (!traverse_reachable_refs_unlocked (repo, depth, reachable, cancellable, error)) return FALSE; g_timer_stop (timer); - g_debug ("Elapsed time: %.1f sec", g_timer_elapsed (timer, NULL)); + g_info ("Elapsed time: %.1f sec", g_timer_elapsed (timer, NULL)); + g_clear_pointer (&timer, g_timer_destroy); } { @@ -785,7 +787,7 @@ flatpak_repo_prune (OstreeRepo *repo, return FALSE; timer = g_timer_new (); - g_debug ("Finding reachable objects, locked (depth=%d)", depth); + g_info ("Finding reachable objects, locked (depth=%d)", depth); g_timer_start (timer); if (!traverse_reachable_refs_unlocked (repo, depth, reachable, cancellable, error)) @@ -796,29 +798,29 @@ flatpak_repo_prune (OstreeRepo *repo, data.dont_prune = dry_run; g_timer_stop (timer); - g_debug ("Elapsed time: %.1f sec", g_timer_elapsed (timer, NULL)); + g_info ("Elapsed time: %.1f sec", g_timer_elapsed (timer, NULL)); - g_debug ("Pruning unreachable objects"); + g_info ("Pruning unreachable objects"); g_timer_start (timer); if (!prune_unreachable_loose_objects (repo, &data, cancellable, error)) return FALSE; g_timer_stop (timer); - g_debug ("Elapsed time: %.1f sec", g_timer_elapsed (timer, NULL)); + g_info ("Elapsed time: %.1f sec", g_timer_elapsed (timer, NULL)); } /* Prune static deltas outside lock to avoid conflict with its exclusive lock */ if (!dry_run) { - g_debug ("Pruning static deltas"); + g_info ("Pruning static deltas"); g_timer_start (timer); if (!ostree_repo_prune_static_deltas (repo, NULL, cancellable, error)) return FALSE; g_timer_stop (timer); - g_debug ("Elapsed time: %.1f sec", g_timer_elapsed (timer, NULL)); + g_info ("Elapsed time: %.1f sec", g_timer_elapsed (timer, NULL)); } *out_objects_total = data.n_reachable + data.n_unreachable; diff --git a/common/flatpak-ref-utils-private.h b/common/flatpak-ref-utils-private.h index a62d7b9..74d91bd 100644 --- a/common/flatpak-ref-utils-private.h +++ b/common/flatpak-ref-utils-private.h @@ -45,7 +45,6 @@ gboolean flatpak_id_has_subref_suffix (const char *id, gboolean flatpak_is_app_runtime_or_appstream_ref (const char *ref); char * flatpak_get_arch_for_ref (const char *ref); -const char *flatpak_get_compat_arch_reverse (const char *compat_arch); FlatpakKinds flatpak_kinds_from_kind (FlatpakRefKind kind); diff --git a/common/flatpak-ref-utils.c b/common/flatpak-ref-utils.c index 45b1405..3e3b015 100644 --- a/common/flatpak-ref-utils.c +++ b/common/flatpak-ref-utils.c @@ -27,8 +27,11 @@ #include #include "flatpak-ref-utils-private.h" -#include "flatpak-run-private.h" + +#include + #include "flatpak-error.h" +#include "flatpak-metadata-private.h" #include "flatpak-utils-private.h" FlatpakKinds @@ -1687,3 +1690,46 @@ flatpak_build_app_ref (const char *app, return g_build_filename ("app", app, arch, branch, NULL); } +gboolean +flatpak_is_app_runtime_or_appstream_ref (const char *ref) +{ + return + g_str_has_prefix (ref, "appstream/") || + g_str_has_prefix (ref, "appstream2/") || + g_str_has_prefix (ref, "app/") || + g_str_has_prefix (ref, "runtime/"); +} + +char * +flatpak_get_arch_for_ref (const char *ref) +{ + if (g_str_has_prefix (ref, "appstream/") || + g_str_has_prefix (ref, "appstream2/")) + { + const char *rest = strchr (ref, '/') + 1; /* Guaranteed to exist per above check */ + const char *dash = strrchr (rest, '-'); /* Subset appstream refs are appstream2/$subset-$arch */ + if (dash != NULL) + rest = dash + 1; + return g_strdup (rest); + } + else if (g_str_has_prefix (ref, "app/") || + g_str_has_prefix (ref, "runtime/")) + { + const char *slash; + const char *arch; + + slash = strchr (ref, '/') + 1; /* Guaranteed to exist per above check */ + slash = strchr (slash, '/'); /* Skip id */ + if (slash == NULL) + return NULL; + arch = slash + 1; + + slash = strchr (arch, '/'); /* skip to end arch */ + if (slash == NULL) + return NULL; + + return g_strndup (arch, slash - arch); + } + + return NULL; +} diff --git a/common/flatpak-ref.c b/common/flatpak-ref.c index 1c7fda7..7f770bd 100644 --- a/common/flatpak-ref.c +++ b/common/flatpak-ref.c @@ -22,6 +22,7 @@ #include "flatpak-utils-private.h" #include "flatpak-ref.h" +#include "flatpak-ref-utils-private.h" #include "flatpak-enum-types.h" /** diff --git a/common/flatpak-remote-ref.c b/common/flatpak-remote-ref.c index 9f572c5..ba3b790 100644 --- a/common/flatpak-remote-ref.c +++ b/common/flatpak-remote-ref.c @@ -25,6 +25,7 @@ #include "flatpak-utils-private.h" #include "flatpak-remote-ref-private.h" #include "flatpak-remote-ref.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-enum-types.h" #include "flatpak-variant-impl-private.h" @@ -341,7 +342,7 @@ flatpak_remote_ref_new (FlatpakDecomposed *decomposed, &download_size, &installed_size, &metadata, NULL)) { - g_debug ("Can't find metadata for ref %s", flatpak_decomposed_get_ref (decomposed)); + g_info ("Can't find metadata for ref %s", flatpak_decomposed_get_ref (decomposed)); } if (metadata) @@ -353,8 +354,8 @@ flatpak_remote_ref_new (FlatpakDecomposed *decomposed, if (state && flatpak_remote_state_lookup_sparse_cache (state, flatpak_decomposed_get_ref (decomposed), &sparse_cache, NULL)) { - eol = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE, NULL); - eol_rebase = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE_REBASE, NULL); + eol = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE, NULL); + eol_rebase = var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE_REBASE, NULL); } ref = g_object_new (FLATPAK_TYPE_REMOTE_REF, diff --git a/common/flatpak-remote.c b/common/flatpak-remote.c index c13d6c2..98ac5c9 100644 --- a/common/flatpak-remote.c +++ b/common/flatpak-remote.c @@ -25,6 +25,7 @@ #include "flatpak-utils-private.h" #include "flatpak-remote-private.h" #include "flatpak-remote-ref-private.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-enum-types.h" #include @@ -1175,7 +1176,7 @@ flatpak_remote_commit_filter (FlatpakRemote *self, if (priv->local_filter_set && !flatpak_dir_compare_remote_filter (dir, priv->name, priv->local_filter)) { - GKeyFile *config = ostree_repo_copy_config (flatpak_dir_get_repo (dir)); + g_autoptr(GKeyFile) config = ostree_repo_copy_config (flatpak_dir_get_repo (dir)); g_key_file_set_string (config, group, "xa.filter", priv->local_filter ? priv->local_filter : ""); diff --git a/common/flatpak-repo-utils-private.h b/common/flatpak-repo-utils-private.h new file mode 100644 index 0000000..fecf425 --- /dev/null +++ b/common/flatpak-repo-utils-private.h @@ -0,0 +1,294 @@ +/* + * Copyright © 2014 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#pragma once + +#include "libglnx.h" + +#include + +#include "flatpak-ref-utils-private.h" +#include "flatpak-variant-private.h" + +/** + * FLATPAK_SUMMARY_INDEX_GVARIANT_FORMAT: + * + * dict + * s: subset name + * -> + * ay - checksum of subsummary + * aay - previous subsummary checksums + * a{sv} - per subset metadata + * a{sv} - metadata + + */ +#define FLATPAK_SUMMARY_INDEX_GVARIANT_STRING "(a{s(ayaaya{sv})}a{sv})" +#define FLATPAK_SUMMARY_INDEX_GVARIANT_FORMAT G_VARIANT_TYPE (FLATPAK_SUMMARY_INDEX_GVARIANT_STRING) + +#define FLATPAK_REF_GROUP "Flatpak Ref" +#define FLATPAK_REF_VERSION_KEY "Version" +#define FLATPAK_REF_URL_KEY "Url" +#define FLATPAK_REF_RUNTIME_REPO_KEY "RuntimeRepo" +#define FLATPAK_REF_SUGGEST_REMOTE_NAME_KEY "SuggestRemoteName" +#define FLATPAK_REF_TITLE_KEY "Title" +#define FLATPAK_REF_GPGKEY_KEY "GPGKey" +#define FLATPAK_REF_IS_RUNTIME_KEY "IsRuntime" +#define FLATPAK_REF_NAME_KEY "Name" +#define FLATPAK_REF_BRANCH_KEY "Branch" +#define FLATPAK_REF_COLLECTION_ID_KEY "CollectionID" +#define FLATPAK_REF_DEPLOY_COLLECTION_ID_KEY "DeployCollectionID" +#define FLATPAK_REF_DEPLOY_SIDELOAD_COLLECTION_ID_KEY "DeploySideloadCollectionID" + +#define FLATPAK_REPO_GROUP "Flatpak Repo" +#define FLATPAK_REPO_VERSION_KEY "Version" +#define FLATPAK_REPO_URL_KEY "Url" +#define FLATPAK_REPO_SUBSET_KEY "Subset" +#define FLATPAK_REPO_TITLE_KEY "Title" +#define FLATPAK_REPO_DEFAULT_BRANCH_KEY "DefaultBranch" +#define FLATPAK_REPO_GPGKEY_KEY "GPGKey" +#define FLATPAK_REPO_NODEPS_KEY "NoDeps" +#define FLATPAK_REPO_COMMENT_KEY "Comment" +#define FLATPAK_REPO_DESCRIPTION_KEY "Description" +#define FLATPAK_REPO_HOMEPAGE_KEY "Homepage" +#define FLATPAK_REPO_ICON_KEY "Icon" +#define FLATPAK_REPO_FILTER_KEY "Filter" +#define FLATPAK_REPO_AUTHENTICATOR_NAME_KEY "AuthenticatorName" +#define FLATPAK_REPO_AUTHENTICATOR_INSTALL_KEY "AuthenticatorInstall" + +#define FLATPAK_REPO_COLLECTION_ID_KEY "CollectionID" +#define FLATPAK_REPO_DEPLOY_COLLECTION_ID_KEY "DeployCollectionID" +#define FLATPAK_REPO_DEPLOY_SIDELOAD_COLLECTION_ID_KEY "DeploySideloadCollectionID" + +#define FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE "eol" +#define FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE_REBASE "eolr" +#define FLATPAK_SPARSE_CACHE_KEY_TOKEN_TYPE "tokt" +#define FLATPAK_SPARSE_CACHE_KEY_EXTRA_DATA_SIZE "eds" + +#define FLATPAK_SUMMARY_HISTORY_LENGTH_DEFAULT 16 + +gboolean flatpak_repo_set_title (OstreeRepo *repo, + const char *title, + GError **error); +gboolean flatpak_repo_set_comment (OstreeRepo *repo, + const char *comment, + GError **error); +gboolean flatpak_repo_set_description (OstreeRepo *repo, + const char *description, + GError **error); +gboolean flatpak_repo_set_icon (OstreeRepo *repo, + const char *icon, + GError **error); +gboolean flatpak_repo_set_homepage (OstreeRepo *repo, + const char *homepage, + GError **error); +gboolean flatpak_repo_set_redirect_url (OstreeRepo *repo, + const char *redirect_url, + GError **error); +gboolean flatpak_repo_set_authenticator_name (OstreeRepo *repo, + const char *authenticator_name, + GError **error); +gboolean flatpak_repo_set_authenticator_install (OstreeRepo *repo, + gboolean authenticator_install, + GError **error); +gboolean flatpak_repo_set_authenticator_option (OstreeRepo *repo, + const char *key, + const char *value, + GError **error); +gboolean flatpak_repo_set_default_branch (OstreeRepo *repo, + const char *branch, + GError **error); +gboolean flatpak_repo_set_collection_id (OstreeRepo *repo, + const char *collection_id, + GError **error); +gboolean flatpak_repo_set_deploy_collection_id (OstreeRepo *repo, + gboolean deploy_collection_id, + GError **error); +gboolean flatpak_repo_set_deploy_sideload_collection_id (OstreeRepo *repo, + gboolean deploy_collection_id, + GError **error); +gboolean flatpak_repo_set_summary_history_length (OstreeRepo *repo, + guint length, + GError **error); +guint flatpak_repo_get_summary_history_length (OstreeRepo *repo); +gboolean flatpak_repo_set_gpg_keys (OstreeRepo *repo, + GBytes *bytes, + GError **error); + +gboolean flatpak_repo_collect_sizes (OstreeRepo *repo, + GFile *root, + guint64 *installed_size, + guint64 *download_size, + GCancellable *cancellable, + GError **error); +GVariant *flatpak_commit_get_extra_data_sources (GVariant *commitv, + GError **error); +GVariant *flatpak_repo_get_extra_data_sources (OstreeRepo *repo, + const char *rev, + GCancellable *cancellable, + GError **error); +void flatpak_repo_parse_extra_data_sources (GVariant *extra_data_sources, + int index, + const char **name, + guint64 *download_size, + guint64 *installed_size, + const guchar **sha256, + const char **uri); +GVariant *flatpak_repo_load_summary (OstreeRepo *repo, + GError **error); +GVariant *flatpak_repo_load_summary_index (OstreeRepo *repo, + GError **error); +GVariant *flatpak_repo_load_digested_summary (OstreeRepo *repo, + const char *digest, + GError **error); + +GBytes *flatpak_summary_apply_diff (GBytes *old, + GBytes *diff, + GError **error); + +typedef enum +{ + FLATPAK_REPO_UPDATE_FLAG_NONE = 0, + FLATPAK_REPO_UPDATE_FLAG_DISABLE_INDEX = 1 << 0, +} FlatpakRepoUpdateFlags; + +gboolean flatpak_repo_update (OstreeRepo *repo, + FlatpakRepoUpdateFlags flags, + const char **gpg_key_ids, + const char *gpg_homedir, + GCancellable *cancellable, + GError **error); + +GPtrArray *flatpak_summary_match_subrefs (GVariant *summary, + const char *collection_id, + FlatpakDecomposed *ref); +gboolean flatpak_summary_lookup_ref (GVariant *summary, + const char *collection_id, + const char *ref, + char **out_checksum, + VarRefInfoRef *out_info); +gboolean flatpak_summary_find_ref_map (VarSummaryRef summary, + const char *collection_id, + VarRefMapRef *refs_out); +gboolean flatpak_var_ref_map_lookup_ref (VarRefMapRef ref_map, + const char *ref, + VarRefInfoRef *out_info); + +GKeyFile * flatpak_parse_repofile (const char *remote_name, + gboolean from_ref, + GKeyFile *keyfile, + GBytes **gpg_data_out, + GCancellable *cancellable, + GError **error); + +gboolean flatpak_mtree_ensure_dir_metadata (OstreeRepo *repo, + OstreeMutableTree *mtree, + GCancellable *cancellable, + GError **error); +gboolean flatpak_mtree_create_symlink (OstreeRepo *repo, + OstreeMutableTree *parent, + const char *name, + const char *target, + GError **error); +gboolean flatpak_mtree_add_file_from_bytes (OstreeRepo *repo, + GBytes *bytes, + OstreeMutableTree *parent, + const char *filename, + GCancellable *cancellable, + GError **error); +gboolean flatpak_mtree_create_dir (OstreeRepo *repo, + OstreeMutableTree *parent, + const char *name, + OstreeMutableTree **dir_out, + GError **error); + +gboolean flatpak_repo_generate_appstream (OstreeRepo *repo, + const char **gpg_key_ids, + const char *gpg_homedir, + guint64 timestamp, + GCancellable *cancellable, + GError **error); + +gboolean flatpak_repo_resolve_rev (OstreeRepo *repo, + const char *collection_id, /* nullable */ + const char *remote_name, /* nullable */ + const char *ref_name, + gboolean allow_noent, + char **out_rev, + GCancellable *cancellable, + GError **error); + +gboolean flatpak_pull_from_bundle (OstreeRepo *repo, + GFile *file, + const char *remote, + const char *ref, + gboolean require_gpg_signature, + GCancellable *cancellable, + GError **error); + +GVariant *flatpak_bundle_load (GFile *file, + char **commit, + FlatpakDecomposed **ref, + char **origin, + char **runtime_repo, + char **app_metadata, + guint64 *installed_size, + GBytes **gpg_keys, + char **collection_id, + GError **error); + +static inline void +flatpak_ostree_progress_finish (OstreeAsyncProgress *progress) +{ + if (progress != NULL) + { + ostree_async_progress_finish (progress); + g_object_unref (progress); + } +} + +typedef OstreeAsyncProgress OstreeAsyncProgressFinish; +G_DEFINE_AUTOPTR_CLEANUP_FUNC (OstreeAsyncProgressFinish, flatpak_ostree_progress_finish); + +typedef OstreeRepo FlatpakRepoTransaction; + +static inline void +flatpak_repo_transaction_cleanup (void *p) +{ + OstreeRepo *repo = p; + + if (repo) + { + g_autoptr(GError) error = NULL; + if (!ostree_repo_abort_transaction (repo, NULL, &error)) + g_warning ("Error aborting ostree transaction: %s", error->message); + g_object_unref (repo); + } +} + +static inline FlatpakRepoTransaction * +flatpak_repo_transaction_start (OstreeRepo *repo, + GCancellable *cancellable, + GError **error) +{ + if (!ostree_repo_prepare_transaction (repo, NULL, cancellable, error)) + return NULL; + return (FlatpakRepoTransaction *) g_object_ref (repo); +} +G_DEFINE_AUTOPTR_CLEANUP_FUNC (FlatpakRepoTransaction, flatpak_repo_transaction_cleanup) diff --git a/common/flatpak-repo-utils.c b/common/flatpak-repo-utils.c new file mode 100644 index 0000000..63dc998 --- /dev/null +++ b/common/flatpak-repo-utils.c @@ -0,0 +1,3947 @@ +/* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: + * Copyright © 1995-1998 Free Software Foundation, Inc. + * Copyright © 2014-2019 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#include "config.h" +#include "flatpak-repo-utils-private.h" + +#include + +#include + +#include "flatpak-utils-private.h" +#include "flatpak-variant-private.h" +#include "flatpak-variant-impl-private.h" +#include "flatpak-xml-utils-private.h" + +gboolean +flatpak_repo_set_title (OstreeRepo *repo, + const char *title, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + + config = ostree_repo_copy_config (repo); + + if (title) + g_key_file_set_string (config, "flatpak", "title", title); + else + g_key_file_remove_key (config, "flatpak", "title", NULL); + + if (!ostree_repo_write_config (repo, config, error)) + return FALSE; + + return TRUE; +} + +gboolean +flatpak_repo_set_comment (OstreeRepo *repo, + const char *comment, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + + config = ostree_repo_copy_config (repo); + + if (comment) + g_key_file_set_string (config, "flatpak", "comment", comment); + else + g_key_file_remove_key (config, "flatpak", "comment", NULL); + + if (!ostree_repo_write_config (repo, config, error)) + return FALSE; + + return TRUE; +} + +gboolean +flatpak_repo_set_description (OstreeRepo *repo, + const char *description, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + + config = ostree_repo_copy_config (repo); + + if (description) + g_key_file_set_string (config, "flatpak", "description", description); + else + g_key_file_remove_key (config, "flatpak", "description", NULL); + + if (!ostree_repo_write_config (repo, config, error)) + return FALSE; + + return TRUE; +} + + +gboolean +flatpak_repo_set_icon (OstreeRepo *repo, + const char *icon, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + + config = ostree_repo_copy_config (repo); + + if (icon) + g_key_file_set_string (config, "flatpak", "icon", icon); + else + g_key_file_remove_key (config, "flatpak", "icon", NULL); + + if (!ostree_repo_write_config (repo, config, error)) + return FALSE; + + return TRUE; +} + +gboolean +flatpak_repo_set_homepage (OstreeRepo *repo, + const char *homepage, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + + config = ostree_repo_copy_config (repo); + + if (homepage) + g_key_file_set_string (config, "flatpak", "homepage", homepage); + else + g_key_file_remove_key (config, "flatpak", "homepage", NULL); + + if (!ostree_repo_write_config (repo, config, error)) + return FALSE; + + return TRUE; +} + +gboolean +flatpak_repo_set_redirect_url (OstreeRepo *repo, + const char *redirect_url, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + + config = ostree_repo_copy_config (repo); + + if (redirect_url) + g_key_file_set_string (config, "flatpak", "redirect-url", redirect_url); + else + g_key_file_remove_key (config, "flatpak", "redirect-url", NULL); + + if (!ostree_repo_write_config (repo, config, error)) + return FALSE; + + return TRUE; +} + +gboolean +flatpak_repo_set_authenticator_name (OstreeRepo *repo, + const char *authenticator_name, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + + config = ostree_repo_copy_config (repo); + + if (authenticator_name) + g_key_file_set_string (config, "flatpak", "authenticator-name", authenticator_name); + else + g_key_file_remove_key (config, "flatpak", "authenticator-name", NULL); + + if (!ostree_repo_write_config (repo, config, error)) + return FALSE; + + return TRUE; +} + +gboolean +flatpak_repo_set_authenticator_install (OstreeRepo *repo, + gboolean authenticator_install, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + + config = ostree_repo_copy_config (repo); + + g_key_file_set_boolean (config, "flatpak", "authenticator-install", authenticator_install); + + if (!ostree_repo_write_config (repo, config, error)) + return FALSE; + + return TRUE; +} + +gboolean +flatpak_repo_set_authenticator_option (OstreeRepo *repo, + const char *key, + const char *value, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + g_autofree char *full_key = g_strdup_printf ("authenticator-options.%s", key); + + config = ostree_repo_copy_config (repo); + + if (value) + g_key_file_set_string (config, "flatpak", full_key, value); + else + g_key_file_remove_key (config, "flatpak", full_key, NULL); + + if (!ostree_repo_write_config (repo, config, error)) + return FALSE; + + return TRUE; +} + +gboolean +flatpak_repo_set_deploy_collection_id (OstreeRepo *repo, + gboolean deploy_collection_id, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + + config = ostree_repo_copy_config (repo); + g_key_file_set_boolean (config, "flatpak", "deploy-collection-id", deploy_collection_id); + return ostree_repo_write_config (repo, config, error); +} + +gboolean +flatpak_repo_set_deploy_sideload_collection_id (OstreeRepo *repo, + gboolean deploy_collection_id, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + + config = ostree_repo_copy_config (repo); + g_key_file_set_boolean (config, "flatpak", "deploy-sideload-collection-id", deploy_collection_id); + return ostree_repo_write_config (repo, config, error); +} + +gboolean +flatpak_repo_set_gpg_keys (OstreeRepo *repo, + GBytes *bytes, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + g_autofree char *value_base64 = NULL; + + config = ostree_repo_copy_config (repo); + + value_base64 = g_base64_encode (g_bytes_get_data (bytes, NULL), g_bytes_get_size (bytes)); + + g_key_file_set_string (config, "flatpak", "gpg-keys", value_base64); + + if (!ostree_repo_write_config (repo, config, error)) + return FALSE; + + return TRUE; +} + +gboolean +flatpak_repo_set_default_branch (OstreeRepo *repo, + const char *branch, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + + config = ostree_repo_copy_config (repo); + + if (branch) + g_key_file_set_string (config, "flatpak", "default-branch", branch); + else + g_key_file_remove_key (config, "flatpak", "default-branch", NULL); + + if (!ostree_repo_write_config (repo, config, error)) + return FALSE; + + return TRUE; +} + +gboolean +flatpak_repo_set_collection_id (OstreeRepo *repo, + const char *collection_id, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + + if (!ostree_repo_set_collection_id (repo, collection_id, error)) + return FALSE; + + config = ostree_repo_copy_config (repo); + if (!ostree_repo_write_config (repo, config, error)) + return FALSE; + + return TRUE; +} + +gboolean +flatpak_repo_set_summary_history_length (OstreeRepo *repo, + guint length, + GError **error) +{ + g_autoptr(GKeyFile) config = NULL; + + config = ostree_repo_copy_config (repo); + + if (length) + g_key_file_set_integer (config, "flatpak", "summary-history-length", length); + else + g_key_file_remove_key (config, "flatpak", "summary-history-length", NULL); + + if (!ostree_repo_write_config (repo, config, error)) + return FALSE; + + return TRUE; +} + +guint +flatpak_repo_get_summary_history_length (OstreeRepo *repo) +{ + GKeyFile *config = ostree_repo_get_config (repo); + int length; + + length = g_key_file_get_integer (config, "flatpak", "sumary-history-length", NULL); + + if (length <= 0) + return FLATPAK_SUMMARY_HISTORY_LENGTH_DEFAULT; + + return length; +} + +GVariant * +flatpak_commit_get_extra_data_sources (GVariant *commitv, + GError **error) +{ + g_autoptr(GVariant) commit_metadata = NULL; + g_autoptr(GVariant) extra_data_sources = NULL; + + commit_metadata = g_variant_get_child_value (commitv, 0); + extra_data_sources = g_variant_lookup_value (commit_metadata, + "xa.extra-data-sources", + G_VARIANT_TYPE ("a(ayttays)")); + + if (extra_data_sources == NULL) + { + g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND, + _("No extra data sources")); + return NULL; + } + + return g_steal_pointer (&extra_data_sources); +} + +GVariant * +flatpak_repo_get_extra_data_sources (OstreeRepo *repo, + const char *rev, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GVariant) commitv = NULL; + + if (!ostree_repo_load_variant (repo, + OSTREE_OBJECT_TYPE_COMMIT, + rev, &commitv, error)) + return NULL; + + return flatpak_commit_get_extra_data_sources (commitv, error); +} + +void +flatpak_repo_parse_extra_data_sources (GVariant *extra_data_sources, + int index, + const char **name, + guint64 *download_size, + guint64 *installed_size, + const guchar **sha256, + const char **uri) +{ + g_autoptr(GVariant) sha256_v = NULL; + g_variant_get_child (extra_data_sources, index, "(^&aytt@ay&s)", + name, + download_size, + installed_size, + &sha256_v, + uri); + + if (download_size) + *download_size = GUINT64_FROM_BE (*download_size); + + if (installed_size) + *installed_size = GUINT64_FROM_BE (*installed_size); + + if (sha256) + *sha256 = ostree_checksum_bytes_peek (sha256_v); +} + +#define OSTREE_GIO_FAST_QUERYINFO ("standard::name,standard::type,standard::size,standard::is-symlink,standard::symlink-target," \ + "unix::device,unix::inode,unix::mode,unix::uid,unix::gid,unix::rdev") + +static gboolean +_flatpak_repo_collect_sizes (OstreeRepo *repo, + GFile *file, + GFileInfo *file_info, + guint64 *installed_size, + guint64 *download_size, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GFileEnumerator) dir_enum = NULL; + GFileInfo *child_info_tmp; + g_autoptr(GError) temp_error = NULL; + + if (file_info != NULL && g_file_info_get_file_type (file_info) == G_FILE_TYPE_REGULAR) + { + const char *checksum = ostree_repo_file_get_checksum (OSTREE_REPO_FILE (file)); + guint64 obj_size; + guint64 file_size = g_file_info_get_size (file_info); + + if (installed_size) + *installed_size += ((file_size + 511) / 512) * 512; + + if (download_size) + { + g_autoptr(GInputStream) input = NULL; + GInputStream *base_input; + g_autoptr(GError) local_error = NULL; + + if (!ostree_repo_query_object_storage_size (repo, + OSTREE_OBJECT_TYPE_FILE, checksum, + &obj_size, cancellable, &local_error)) + { + int fd; + struct stat stbuf; + + /* Ostree does not look at the staging directory when querying storage + size, so may return a NOT_FOUND error here. We work around this + by loading the object and walking back until we find the original + fd which we can fstat(). */ + if (!g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND)) + return FALSE; + + if (!ostree_repo_load_file (repo, checksum, &input, NULL, NULL, NULL, error)) + return FALSE; + + base_input = input; + while (G_IS_FILTER_INPUT_STREAM (base_input)) + base_input = g_filter_input_stream_get_base_stream (G_FILTER_INPUT_STREAM (base_input)); + + if (!G_IS_UNIX_INPUT_STREAM (base_input)) + return flatpak_fail (error, "Unable to find size of commit %s, not an unix stream", checksum); + + fd = g_unix_input_stream_get_fd (G_UNIX_INPUT_STREAM (base_input)); + + if (fstat (fd, &stbuf) != 0) + return glnx_throw_errno_prefix (error, "Can't find commit size: "); + + obj_size = stbuf.st_size; + } + + *download_size += obj_size; + } + } + + if (file_info == NULL || g_file_info_get_file_type (file_info) == G_FILE_TYPE_DIRECTORY) + { + dir_enum = g_file_enumerate_children (file, OSTREE_GIO_FAST_QUERYINFO, + G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS, + cancellable, error); + if (!dir_enum) + return FALSE; + + + while ((child_info_tmp = g_file_enumerator_next_file (dir_enum, cancellable, &temp_error))) + { + g_autoptr(GFileInfo) child_info = child_info_tmp; + const char *name = g_file_info_get_name (child_info); + g_autoptr(GFile) child = g_file_get_child (file, name); + + if (!_flatpak_repo_collect_sizes (repo, child, child_info, installed_size, download_size, cancellable, error)) + return FALSE; + } + } + + return TRUE; +} + +gboolean +flatpak_repo_collect_sizes (OstreeRepo *repo, + GFile *root, + guint64 *installed_size, + guint64 *download_size, + GCancellable *cancellable, + GError **error) +{ + /* Initialize the sums */ + if (installed_size) + *installed_size = 0; + if (download_size) + *download_size = 0; + return _flatpak_repo_collect_sizes (repo, root, NULL, installed_size, download_size, cancellable, error); +} + +static void +flatpak_repo_collect_extra_data_sizes (OstreeRepo *repo, + const char *rev, + guint64 *installed_size, + guint64 *download_size) +{ + g_autoptr(GVariant) extra_data_sources = NULL; + gsize n_extra_data; + int i; + + extra_data_sources = flatpak_repo_get_extra_data_sources (repo, rev, NULL, NULL); + if (extra_data_sources == NULL) + return; + + n_extra_data = g_variant_n_children (extra_data_sources); + if (n_extra_data == 0) + return; + + for (i = 0; i < n_extra_data; i++) + { + guint64 extra_download_size; + guint64 extra_installed_size; + + flatpak_repo_parse_extra_data_sources (extra_data_sources, i, + NULL, + &extra_download_size, + &extra_installed_size, + NULL, NULL); + if (installed_size) + *installed_size += extra_installed_size; + if (download_size) + *download_size += extra_download_size; + } +} + +/* Loads the old compat summary file from a local repo */ +GVariant * +flatpak_repo_load_summary (OstreeRepo *repo, + GError **error) +{ + glnx_autofd int fd = -1; + g_autoptr(GMappedFile) mfile = NULL; + g_autoptr(GBytes) bytes = NULL; + + fd = openat (ostree_repo_get_dfd (repo), "summary", O_RDONLY | O_CLOEXEC); + if (fd < 0) + { + glnx_set_error_from_errno (error); + return NULL; + } + + mfile = g_mapped_file_new_from_fd (fd, FALSE, error); + if (!mfile) + return NULL; + + bytes = g_mapped_file_get_bytes (mfile); + + return g_variant_ref_sink (g_variant_new_from_bytes (OSTREE_SUMMARY_GVARIANT_FORMAT, bytes, TRUE)); +} + +GVariant * +flatpak_repo_load_summary_index (OstreeRepo *repo, + GError **error) +{ + glnx_autofd int fd = -1; + g_autoptr(GMappedFile) mfile = NULL; + g_autoptr(GBytes) bytes = NULL; + + fd = openat (ostree_repo_get_dfd (repo), "summary.idx", O_RDONLY | O_CLOEXEC); + if (fd < 0) + { + glnx_set_error_from_errno (error); + return NULL; + } + + mfile = g_mapped_file_new_from_fd (fd, FALSE, error); + if (!mfile) + return NULL; + + bytes = g_mapped_file_get_bytes (mfile); + + return g_variant_ref_sink (g_variant_new_from_bytes (FLATPAK_SUMMARY_INDEX_GVARIANT_FORMAT, bytes, TRUE)); +} + +static gboolean +flatpak_repo_save_compat_summary (OstreeRepo *repo, + GVariant *summary, + time_t *out_old_sig_mtime, + GCancellable *cancellable, + GError **error) +{ + int repo_dfd = ostree_repo_get_dfd (repo); + struct stat stbuf; + time_t old_sig_mtime = 0; + GLnxFileReplaceFlags flags; + + flags = GLNX_FILE_REPLACE_INCREASING_MTIME; + if (ostree_repo_get_disable_fsync (repo)) + flags |= GLNX_FILE_REPLACE_NODATASYNC; + else + flags |= GLNX_FILE_REPLACE_DATASYNC_NEW; + + if (!glnx_file_replace_contents_at (repo_dfd, "summary", + g_variant_get_data (summary), + g_variant_get_size (summary), + flags, + cancellable, error)) + return FALSE; + + if (fstatat (repo_dfd, "summary.sig", &stbuf, AT_SYMLINK_NOFOLLOW) == 0) + old_sig_mtime = stbuf.st_mtime; + + if (unlinkat (repo_dfd, "summary.sig", 0) != 0 && + G_UNLIKELY (errno != ENOENT)) + { + glnx_set_error_from_errno (error); + return FALSE; + } + + *out_old_sig_mtime = old_sig_mtime; + return TRUE; +} + +static gboolean +flatpak_repo_save_summary_index (OstreeRepo *repo, + GVariant *index, + const char *index_digest, + GBytes *index_sig, + GCancellable *cancellable, + GError **error) +{ + int repo_dfd = ostree_repo_get_dfd (repo); + GLnxFileReplaceFlags flags; + + if (index == NULL) + { + if (unlinkat (repo_dfd, "summary.idx", 0) != 0 && + G_UNLIKELY (errno != ENOENT)) + { + glnx_set_error_from_errno (error); + return FALSE; + } + if (unlinkat (repo_dfd, "summary.idx.sig", 0) != 0 && + G_UNLIKELY (errno != ENOENT)) + { + glnx_set_error_from_errno (error); + return FALSE; + } + + return TRUE; + } + + flags = GLNX_FILE_REPLACE_INCREASING_MTIME; + if (ostree_repo_get_disable_fsync (repo)) + flags |= GLNX_FILE_REPLACE_NODATASYNC; + else + flags |= GLNX_FILE_REPLACE_DATASYNC_NEW; + + if (index_sig) + { + g_autofree char *path = g_strconcat ("summaries/", index_digest, ".idx.sig", NULL); + + if (!glnx_shutil_mkdir_p_at (repo_dfd, "summaries", + 0775, cancellable, error)) + return FALSE; + + if (!glnx_file_replace_contents_at (repo_dfd, path, + g_bytes_get_data (index_sig, NULL), + g_bytes_get_size (index_sig), + flags, + cancellable, error)) + return FALSE; + } + + if (!glnx_file_replace_contents_at (repo_dfd, "summary.idx", + g_variant_get_data (index), + g_variant_get_size (index), + flags, + cancellable, error)) + return FALSE; + + /* Update the non-indexed summary.idx.sig file that was introduced in 1.9.1 but + * was made unnecessary in 1.9.3. Lets keep it for a while until everyone updates + */ + if (index_sig) + { + if (!glnx_file_replace_contents_at (repo_dfd, "summary.idx.sig", + g_bytes_get_data (index_sig, NULL), + g_bytes_get_size (index_sig), + flags, + cancellable, error)) + return FALSE; + } + else + { + if (unlinkat (repo_dfd, "summary.idx.sig", 0) != 0 && + G_UNLIKELY (errno != ENOENT)) + { + glnx_set_error_from_errno (error); + return FALSE; + } + } + + return TRUE; +} + +GVariant * +flatpak_repo_load_digested_summary (OstreeRepo *repo, + const char *digest, + GError **error) +{ + glnx_autofd int fd = -1; + g_autoptr(GMappedFile) mfile = NULL; + g_autoptr(GBytes) bytes = NULL; + g_autoptr(GBytes) compressed_bytes = NULL; + g_autofree char *path = NULL; + g_autofree char *filename = NULL; + + filename = g_strconcat (digest, ".gz", NULL); + path = g_build_filename ("summaries", filename, NULL); + + fd = openat (ostree_repo_get_dfd (repo), path, O_RDONLY | O_CLOEXEC); + if (fd < 0) + { + glnx_set_error_from_errno (error); + return NULL; + } + + mfile = g_mapped_file_new_from_fd (fd, FALSE, error); + if (!mfile) + return NULL; + + compressed_bytes = g_mapped_file_get_bytes (mfile); + bytes = flatpak_zlib_decompress_bytes (compressed_bytes, error); + if (bytes == NULL) + return NULL; + + return g_variant_ref_sink (g_variant_new_from_bytes (OSTREE_SUMMARY_GVARIANT_FORMAT, bytes, TRUE)); +} + +static char * +flatpak_repo_save_digested_summary (OstreeRepo *repo, + const char *name, + GVariant *summary, + GCancellable *cancellable, + GError **error) +{ + int repo_dfd = ostree_repo_get_dfd (repo); + g_autofree char *digest = NULL; + g_autofree char *filename = NULL; + g_autofree char *path = NULL; + g_autoptr(GBytes) data = NULL; + g_autoptr(GBytes) compressed_data = NULL; + struct stat stbuf; + + if (!glnx_shutil_mkdir_p_at (repo_dfd, "summaries", + 0775, + cancellable, + error)) + return NULL; + + digest = g_compute_checksum_for_data (G_CHECKSUM_SHA256, + g_variant_get_data (summary), + g_variant_get_size (summary)); + filename = g_strconcat (digest, ".gz", NULL); + + path = g_build_filename ("summaries", filename, NULL); + + /* Check for pre-existing (non-truncated) copy and avoid re-writing it */ + if (fstatat (repo_dfd, path, &stbuf, 0) == 0 && + stbuf.st_size != 0) + { + g_info ("Reusing digested summary at %s for %s", path, name); + return g_steal_pointer (&digest); + } + + data = g_variant_get_data_as_bytes (summary); + compressed_data = flatpak_zlib_compress_bytes (data, -1, error); + if (compressed_data == NULL) + return NULL; + + if (!glnx_file_replace_contents_at (repo_dfd, path, + g_bytes_get_data (compressed_data, NULL), + g_bytes_get_size (compressed_data), + ostree_repo_get_disable_fsync (repo) ? GLNX_FILE_REPLACE_NODATASYNC : GLNX_FILE_REPLACE_DATASYNC_NEW, + cancellable, error)) + return NULL; + + g_info ("Wrote digested summary at %s for %s", path, name); + return g_steal_pointer (&digest); +} + +static gboolean +flatpak_repo_save_digested_summary_delta (OstreeRepo *repo, + const char *from_digest, + const char *to_digest, + GBytes *delta, + GCancellable *cancellable, + GError **error) +{ + int repo_dfd = ostree_repo_get_dfd (repo); + g_autofree char *path = NULL; + g_autofree char *filename = g_strconcat (from_digest, "-", to_digest, ".delta", NULL); + struct stat stbuf; + + if (!glnx_shutil_mkdir_p_at (repo_dfd, "summaries", + 0775, + cancellable, + error)) + return FALSE; + + path = g_build_filename ("summaries", filename, NULL); + + /* Check for pre-existing copy of same size and avoid re-writing it */ + if (fstatat (repo_dfd, path, &stbuf, 0) == 0 && + stbuf.st_size == g_bytes_get_size (delta)) + { + g_info ("Reusing digested summary-diff for %s", filename); + return TRUE; + } + + if (!glnx_file_replace_contents_at (repo_dfd, path, + g_bytes_get_data (delta, NULL), + g_bytes_get_size (delta), + ostree_repo_get_disable_fsync (repo) ? GLNX_FILE_REPLACE_NODATASYNC : GLNX_FILE_REPLACE_DATASYNC_NEW, + cancellable, error)) + return FALSE; + + g_info ("Wrote digested summary delta at %s", path); + return TRUE; +} + +typedef struct +{ + guint64 installed_size; + guint64 download_size; + char *metadata_contents; + GPtrArray *subsets; + GVariant *sparse_data; + gsize commit_size; + guint64 commit_timestamp; +} CommitData; + +static void +commit_data_free (gpointer data) +{ + CommitData *rev_data = data; + + if (rev_data->subsets) + g_ptr_array_unref (rev_data->subsets); + g_free (rev_data->metadata_contents); + if (rev_data->sparse_data) + g_variant_unref (rev_data->sparse_data); + g_free (rev_data); +} + +G_DEFINE_AUTOPTR_CLEANUP_FUNC (CommitData, commit_data_free); + +static GHashTable * +commit_data_cache_new (void) +{ + return g_hash_table_new_full (g_str_hash, g_str_equal, g_free, commit_data_free); +} + +static GHashTable * +populate_commit_data_cache (OstreeRepo *repo, + GVariant *index_v) +{ + + VarSummaryIndexRef index = var_summary_index_from_gvariant (index_v); + VarMetadataRef index_metadata = var_summary_index_get_metadata (index); + VarSummaryIndexSubsummariesRef subsummaries = var_summary_index_get_subsummaries (index); + gsize n_subsummaries = var_summary_index_subsummaries_get_length (subsummaries); + guint32 cache_version; + g_autoptr(GHashTable) commit_data_cache = commit_data_cache_new (); + + cache_version = GUINT32_FROM_LE (var_metadata_lookup_uint32 (index_metadata, "xa.cache-version", 0)); + if (cache_version < FLATPAK_XA_CACHE_VERSION) + { + /* Need to re-index to get all data */ + g_info ("Old summary cache version %d, not using cache", cache_version); + return NULL; + } + + for (gsize i = 0; i < n_subsummaries; i++) + { + VarSummaryIndexSubsummariesEntryRef entry = var_summary_index_subsummaries_get_at (subsummaries, i); + const char *name = var_summary_index_subsummaries_entry_get_key (entry); + const char *s; + g_autofree char *subset = NULL; + VarSubsummaryRef subsummary = var_summary_index_subsummaries_entry_get_value (entry); + gsize checksum_bytes_len; + const guchar *checksum_bytes; + g_autofree char *digest = NULL; + g_autoptr(GVariant) summary_v = NULL; + VarSummaryRef summary; + VarRefMapRef ref_map; + gsize n_refs; + + checksum_bytes = var_subsummary_peek_checksum (subsummary, &checksum_bytes_len); + if (G_UNLIKELY (checksum_bytes_len != OSTREE_SHA256_DIGEST_LEN)) + { + g_info ("Invalid checksum for digested summary, not using cache"); + return NULL; + } + digest = ostree_checksum_from_bytes (checksum_bytes); + + s = strrchr (name, '-'); + if (s != NULL) + subset = g_strndup (name, s - name); + else + subset = g_strdup (""); + + summary_v = flatpak_repo_load_digested_summary (repo, digest, NULL); + if (summary_v == NULL) + { + g_info ("Failed to load digested summary %s, not using cache", digest); + return NULL; + } + + /* Note that all summaries refered to by the index is in new format */ + summary = var_summary_from_gvariant (summary_v); + ref_map = var_summary_get_ref_map (summary); + n_refs = var_ref_map_get_length (ref_map); + for (gsize j = 0; j < n_refs; j++) + { + VarRefMapEntryRef e = var_ref_map_get_at (ref_map, j); + const char *ref = var_ref_map_entry_get_ref (e); + VarRefInfoRef info = var_ref_map_entry_get_info (e); + VarMetadataRef commit_metadata = var_ref_info_get_metadata (info); + guint64 commit_size = var_ref_info_get_commit_size (info); + const guchar *commit_bytes; + gsize commit_bytes_len; + g_autofree char *rev = NULL; + CommitData *rev_data; + VarVariantRef xa_data_v; + VarCacheDataRef xa_data; + + if (!flatpak_is_app_runtime_or_appstream_ref (ref)) + continue; + + commit_bytes = var_ref_info_peek_checksum (info, &commit_bytes_len); + if (G_UNLIKELY (commit_bytes_len != OSTREE_SHA256_DIGEST_LEN)) + continue; + + if (!var_metadata_lookup (commit_metadata, "xa.data", NULL, &xa_data_v) || + !var_variant_is_type (xa_data_v, G_VARIANT_TYPE ("(tts)"))) + { + g_info ("Missing xa.data for ref %s, not using cache", ref); + return NULL; + } + + xa_data = var_cache_data_from_variant (xa_data_v); + + rev = ostree_checksum_from_bytes (commit_bytes); + rev_data = g_hash_table_lookup (commit_data_cache, rev); + if (rev_data == NULL) + { + g_auto(GVariantBuilder) sparse_builder = FLATPAK_VARIANT_BUILDER_INITIALIZER; + g_variant_builder_init (&sparse_builder, G_VARIANT_TYPE_VARDICT); + gboolean has_sparse = FALSE; + + rev_data = g_new0 (CommitData, 1); + rev_data->installed_size = var_cache_data_get_installed_size (xa_data); + rev_data->download_size = var_cache_data_get_download_size (xa_data); + rev_data->metadata_contents = g_strdup (var_cache_data_get_metadata (xa_data)); + rev_data->commit_size = commit_size; + rev_data->commit_timestamp = GUINT64_FROM_BE (var_metadata_lookup_uint64 (commit_metadata, OSTREE_COMMIT_TIMESTAMP2, 0)); + + /* Get sparse data */ + gsize len = var_metadata_get_length (commit_metadata); + for (gsize k = 0; k < len; k++) + { + VarMetadataEntryRef m = var_metadata_get_at (commit_metadata, k); + const char *m_key = var_metadata_entry_get_key (m); + if (!g_str_has_prefix (m_key, "ot.") && + !g_str_has_prefix (m_key, "ostree.") && + strcmp (m_key, "xa.data") != 0) + { + VarVariantRef v = var_metadata_entry_get_value (m); + g_autoptr(GVariant) vv = g_variant_ref_sink (var_variant_dup_to_gvariant (v)); + g_autoptr(GVariant) child = g_variant_get_child_value (vv, 0); + g_variant_builder_add (&sparse_builder, "{sv}", m_key, child); + has_sparse = TRUE; + } + } + + if (has_sparse) + rev_data->sparse_data = g_variant_ref_sink (g_variant_builder_end (&sparse_builder)); + + g_hash_table_insert (commit_data_cache, g_strdup (rev), (CommitData *)rev_data); + } + + if (*subset != 0) + { + if (rev_data->subsets == NULL) + rev_data->subsets = g_ptr_array_new_with_free_func (g_free); + + if (!flatpak_g_ptr_array_contains_string (rev_data->subsets, subset)) + g_ptr_array_add (rev_data->subsets, g_strdup (subset)); + } + } + } + + return g_steal_pointer (&commit_data_cache); +} + +static CommitData * +read_commit_data (OstreeRepo *repo, + const char *ref, + const char *rev, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GFile) root = NULL; + g_autoptr(GFile) metadata = NULL; + guint64 installed_size = 0; + guint64 download_size = 0; + g_autofree char *metadata_contents = NULL; + g_autofree char *commit = NULL; + g_autoptr(GVariant) commit_v = NULL; + g_autoptr(GVariant) commit_metadata = NULL; + g_autoptr(GPtrArray) subsets = NULL; + CommitData *rev_data; + const char *eol = NULL; + const char *eol_rebase = NULL; + int token_type = -1; + g_autoptr(GVariant) extra_data_sources = NULL; + guint32 n_extra_data = 0; + guint64 total_extra_data_download_size = 0; + g_autoptr(GVariantIter) subsets_iter = NULL; + + if (!ostree_repo_read_commit (repo, rev, &root, &commit, NULL, error)) + return NULL; + + if (!ostree_repo_load_commit (repo, commit, &commit_v, NULL, error)) + return NULL; + + commit_metadata = g_variant_get_child_value (commit_v, 0); + if (!g_variant_lookup (commit_metadata, "xa.metadata", "s", &metadata_contents)) + { + metadata = g_file_get_child (root, "metadata"); + if (!g_file_load_contents (metadata, cancellable, &metadata_contents, NULL, NULL, NULL)) + metadata_contents = g_strdup (""); + } + + if (g_variant_lookup (commit_metadata, "xa.installed-size", "t", &installed_size) && + g_variant_lookup (commit_metadata, "xa.download-size", "t", &download_size)) + { + installed_size = GUINT64_FROM_BE (installed_size); + download_size = GUINT64_FROM_BE (download_size); + } + else + { + if (!flatpak_repo_collect_sizes (repo, root, &installed_size, &download_size, cancellable, error)) + return NULL; + } + + if (g_variant_lookup (commit_metadata, "xa.subsets", "as", &subsets_iter)) + { + const char *subset; + subsets = g_ptr_array_new_with_free_func (g_free); + while (g_variant_iter_next (subsets_iter, "&s", &subset)) + g_ptr_array_add (subsets, g_strdup (subset)); + } + + flatpak_repo_collect_extra_data_sizes (repo, rev, &installed_size, &download_size); + + rev_data = g_new0 (CommitData, 1); + rev_data->installed_size = installed_size; + rev_data->download_size = download_size; + rev_data->metadata_contents = g_steal_pointer (&metadata_contents); + rev_data->subsets = g_steal_pointer (&subsets); + rev_data->commit_size = g_variant_get_size (commit_v); + rev_data->commit_timestamp = ostree_commit_get_timestamp (commit_v); + + g_variant_lookup (commit_metadata, OSTREE_COMMIT_META_KEY_ENDOFLIFE, "&s", &eol); + g_variant_lookup (commit_metadata, OSTREE_COMMIT_META_KEY_ENDOFLIFE_REBASE, "&s", &eol_rebase); + if (g_variant_lookup (commit_metadata, "xa.token-type", "i", &token_type)) + token_type = GINT32_FROM_LE(token_type); + + extra_data_sources = flatpak_commit_get_extra_data_sources (commit_v, NULL); + if (extra_data_sources) + { + n_extra_data = g_variant_n_children (extra_data_sources); + for (int i = 0; i < n_extra_data; i++) + { + guint64 extra_download_size; + flatpak_repo_parse_extra_data_sources (extra_data_sources, i, + NULL, + &extra_download_size, + NULL, + NULL, + NULL); + total_extra_data_download_size += extra_download_size; + } + } + + if (eol || eol_rebase || token_type >= 0 || n_extra_data > 0) + { + g_auto(GVariantBuilder) sparse_builder = FLATPAK_VARIANT_BUILDER_INITIALIZER; + g_variant_builder_init (&sparse_builder, G_VARIANT_TYPE_VARDICT); + if (eol) + g_variant_builder_add (&sparse_builder, "{sv}", FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE, g_variant_new_string (eol)); + if (eol_rebase) + g_variant_builder_add (&sparse_builder, "{sv}", FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE_REBASE, g_variant_new_string (eol_rebase)); + if (token_type >= 0) + g_variant_builder_add (&sparse_builder, "{sv}", FLATPAK_SPARSE_CACHE_KEY_TOKEN_TYPE, g_variant_new_int32 (GINT32_TO_LE(token_type))); + if (n_extra_data > 0) + g_variant_builder_add (&sparse_builder, "{sv}", FLATPAK_SPARSE_CACHE_KEY_EXTRA_DATA_SIZE, + g_variant_new ("(ut)", GUINT32_TO_LE(n_extra_data), GUINT64_TO_LE(total_extra_data_download_size))); + + rev_data->sparse_data = g_variant_ref_sink (g_variant_builder_end (&sparse_builder)); + } + + return rev_data; +} + +static void +_ostree_parse_delta_name (const char *delta_name, + char **out_from, + char **out_to) +{ + g_auto(GStrv) parts = g_strsplit (delta_name, "-", 2); + + if (parts[0] && parts[1]) + { + *out_from = g_steal_pointer (&parts[0]); + *out_to = g_steal_pointer (&parts[1]); + } + else + { + *out_from = NULL; + *out_to = g_steal_pointer (&parts[0]); + } +} + +static GString * +static_delta_path_base (const char *dir, + const char *from, + const char *to) +{ + guint8 csum_to[OSTREE_SHA256_DIGEST_LEN]; + char to_b64[44]; + guint8 csum_to_copy[OSTREE_SHA256_DIGEST_LEN]; + GString *ret = g_string_new (dir); + + ostree_checksum_inplace_to_bytes (to, csum_to); + ostree_checksum_b64_inplace_from_bytes (csum_to, to_b64); + ostree_checksum_b64_inplace_to_bytes (to_b64, csum_to_copy); + + g_assert (memcmp (csum_to, csum_to_copy, OSTREE_SHA256_DIGEST_LEN) == 0); + + if (from != NULL) + { + guint8 csum_from[OSTREE_SHA256_DIGEST_LEN]; + char from_b64[44]; + + ostree_checksum_inplace_to_bytes (from, csum_from); + ostree_checksum_b64_inplace_from_bytes (csum_from, from_b64); + + g_string_append_c (ret, from_b64[0]); + g_string_append_c (ret, from_b64[1]); + g_string_append_c (ret, '/'); + g_string_append (ret, from_b64 + 2); + g_string_append_c (ret, '-'); + } + + g_string_append_c (ret, to_b64[0]); + g_string_append_c (ret, to_b64[1]); + if (from == NULL) + g_string_append_c (ret, '/'); + g_string_append (ret, to_b64 + 2); + + return ret; +} + +static char * +_ostree_get_relative_static_delta_path (const char *from, + const char *to, + const char *target) +{ + GString *ret = static_delta_path_base ("deltas/", from, to); + + if (target != NULL) + { + g_string_append_c (ret, '/'); + g_string_append (ret, target); + } + + return g_string_free (ret, FALSE); +} + +static char * +_ostree_get_relative_static_delta_superblock_path (const char *from, + const char *to) +{ + return _ostree_get_relative_static_delta_path (from, to, "superblock"); +} + +static GVariant * +_ostree_repo_static_delta_superblock_digest (OstreeRepo *repo, + const char *from, + const char *to, + GCancellable *cancellable, + GError **error) +{ + g_autofree char *superblock = _ostree_get_relative_static_delta_superblock_path ((from && from[0]) ? from : NULL, to); + glnx_autofd int fd = -1; + guint8 digest[OSTREE_SHA256_DIGEST_LEN]; + gsize len; + gpointer data = NULL; + + if (!glnx_openat_rdonly (ostree_repo_get_dfd (repo), superblock, TRUE, &fd, error)) + return NULL; + + g_autoptr(GBytes) superblock_content = glnx_fd_readall_bytes (fd, cancellable, error); + if (!superblock_content) + return NULL; + + g_autoptr(GChecksum) checksum = g_checksum_new (G_CHECKSUM_SHA256); + g_checksum_update (checksum, g_bytes_get_data (superblock_content, NULL), g_bytes_get_size (superblock_content)); + len = sizeof digest; + g_checksum_get_digest (checksum, digest, &len); + + data = g_memdup2 (digest, len); + return g_variant_new_from_data (G_VARIANT_TYPE ("ay"), + data, len, + FALSE, g_free, data); +} + +typedef enum { + DIFF_OP_KIND_RESUSE_OLD, + DIFF_OP_KIND_SKIP_OLD, + DIFF_OP_KIND_DATA, +} DiffOpKind; + +typedef struct { + DiffOpKind kind; + gsize size; +} DiffOp; + +typedef struct { + const guchar *old_data; + const guchar *new_data; + + GArray *ops; + GArray *data; + + gsize last_old_offset; + gsize last_new_offset; +} DiffData; + +static gsize +match_bytes_at_start (const guchar *data1, + gsize data1_len, + const guchar *data2, + gsize data2_len) +{ + gsize len = 0; + gsize max_len = MIN (data1_len, data2_len); + + while (len < max_len) + { + if (*data1 != *data2) + break; + data1++; + data2++; + len++; + } + return len; +} + +static gsize +match_bytes_at_end (const guchar *data1, + gsize data1_len, + const guchar *data2, + gsize data2_len) +{ + gsize len = 0; + gsize max_len = MIN (data1_len, data2_len); + + data1 += data1_len - 1; + data2 += data2_len - 1; + + while (len < max_len) + { + if (*data1 != *data2) + break; + data1--; + data2--; + len++; + } + return len; +} + +static DiffOp * +diff_ensure_op (DiffData *data, + DiffOpKind kind) +{ + if (data->ops->len == 0 || + g_array_index (data->ops, DiffOp, data->ops->len-1).kind != kind) + { + DiffOp op = {kind, 0}; + g_array_append_val (data->ops, op); + } + + return &g_array_index (data->ops, DiffOp, data->ops->len-1); +} + +static void +diff_emit_reuse (DiffData *data, + gsize size) +{ + DiffOp *op; + + if (size == 0) + return; + + op = diff_ensure_op (data, DIFF_OP_KIND_RESUSE_OLD); + op->size += size; +} + +static void +diff_emit_skip (DiffData *data, + gsize size) +{ + DiffOp *op; + + if (size == 0) + return; + + op = diff_ensure_op (data, DIFF_OP_KIND_SKIP_OLD); + op->size += size; +} + +static void +diff_emit_data (DiffData *data, + gsize size, + const guchar *new_data) +{ + DiffOp *op; + + if (size == 0) + return; + + op = diff_ensure_op (data, DIFF_OP_KIND_DATA); + op->size += size; + + g_array_append_vals (data->data, new_data, size); +} + +static GBytes * +diff_encode (DiffData *data, GError **error) +{ + g_autoptr(GOutputStream) mem = g_memory_output_stream_new_resizable (); + g_autoptr(GDataOutputStream) out = g_data_output_stream_new (mem); + gsize ops_count = 0; + + g_data_output_stream_set_byte_order (out, G_DATA_STREAM_BYTE_ORDER_LITTLE_ENDIAN); + + /* Header */ + if (!g_output_stream_write_all (G_OUTPUT_STREAM (out), + FLATPAK_SUMMARY_DIFF_HEADER, 4, + NULL, NULL, error)) + return NULL; + + /* Write the ops count placeholder */ + if (!g_data_output_stream_put_uint32 (out, 0, NULL, error)) + return NULL; + + for (gsize i = 0; i < data->ops->len; i++) + { + DiffOp *op = &g_array_index (data->ops, DiffOp, i); + gsize size = op->size; + + while (size > 0) + { + /* We leave a nibble at the top for the op */ + guint32 opdata = (guint64)size & 0x0fffffff; + size -= opdata; + + opdata = opdata | ((0xf & op->kind) << 28); + + if (!g_data_output_stream_put_uint32 (out, opdata, NULL, error)) + return NULL; + ops_count++; + } + } + + /* Then add the data */ + if (data->data->len > 0 && + !g_output_stream_write_all (G_OUTPUT_STREAM (out), + data->data->data, data->data->len, + NULL, NULL, error)) + return NULL; + + /* Back-patch in the ops count */ + if (!g_seekable_seek (G_SEEKABLE(out), 4, G_SEEK_SET, NULL, error)) + return NULL; + + if (!g_data_output_stream_put_uint32 (out, ops_count, NULL, error)) + return NULL; + + if (!g_output_stream_close (G_OUTPUT_STREAM (out), NULL, error)) + return NULL; + + return g_memory_output_stream_steal_as_bytes (G_MEMORY_OUTPUT_STREAM (mem)); +} + +static void +diff_consume_block2 (DiffData *data, + gsize consume_old_offset, + gsize consume_old_size, + gsize produce_new_offset, + gsize produce_new_size) +{ + /* We consumed $consume_old_size bytes from $consume_old_offset to + produce $produce_new_size bytes at $produce_new_size */ + + /* First we copy old data for any matching prefix of the block */ + + gsize prefix_len = match_bytes_at_start (data->old_data + consume_old_offset, consume_old_size, + data->new_data + produce_new_offset, produce_new_size); + diff_emit_reuse (data, prefix_len); + + consume_old_size -= prefix_len; + consume_old_offset += prefix_len; + + produce_new_size -= prefix_len; + produce_new_offset += prefix_len; + + /* Then we find the matching suffix for the rest */ + gsize suffix_len = match_bytes_at_end (data->old_data + consume_old_offset, consume_old_size, + data->new_data + produce_new_offset, produce_new_size); + + /* Skip source data until suffix match */ + diff_emit_skip (data, consume_old_size - suffix_len); + + /* Copy new data until suffix match */ + diff_emit_data (data, produce_new_size - suffix_len, data->new_data + produce_new_offset); + + diff_emit_reuse (data, suffix_len); +} + +static void +diff_consume_block (DiffData *data, + gssize consume_old_offset, + gsize consume_old_size, + gssize produce_new_offset, + gsize produce_new_size) +{ + if (consume_old_offset == -1) + consume_old_offset = data->last_old_offset; + if (produce_new_offset == -1) + produce_new_offset = data->last_new_offset; + + /* We consumed $consume_old_size bytes from $consume_old_offset to + * produce $produce_new_size bytes at $produce_new_size, however + * while the emitted blocks are in order they may not cover the + * every byte, so we emit the inbetwen blocks separately. */ + + if (consume_old_offset != data->last_old_offset || + produce_new_offset != data->last_new_offset) + diff_consume_block2 (data, + data->last_old_offset, consume_old_offset - data->last_old_offset , + data->last_new_offset, produce_new_offset - data->last_new_offset); + + diff_consume_block2 (data, + consume_old_offset, consume_old_size, + produce_new_offset, produce_new_size); + + data->last_old_offset = consume_old_offset + consume_old_size; + data->last_new_offset = produce_new_offset + produce_new_size; +} + +GBytes * +flatpak_summary_apply_diff (GBytes *old, + GBytes *diff, + GError **error) +{ + g_autoptr(GBytes) uncompressed = NULL; + const guchar *diffdata; + gsize diff_size; + guint32 *ops; + guint32 n_ops; + gsize data_offset; + gsize data_size; + const guchar *data; + const guchar *old_data = g_bytes_get_data (old, NULL); + gsize old_size = g_bytes_get_size (old); + g_autoptr(GByteArray) res = g_byte_array_new (); + + uncompressed = flatpak_zlib_decompress_bytes (diff, error); + if (uncompressed == NULL) + { + g_prefix_error (error, "Invalid summary diff: "); + return NULL; + } + + diffdata = g_bytes_get_data (uncompressed, NULL); + diff_size = g_bytes_get_size (uncompressed); + + if (diff_size < 8 || + memcmp (diffdata, FLATPAK_SUMMARY_DIFF_HEADER, 4) != 0) + { + flatpak_fail (error, "Invalid summary diff"); + return NULL; + } + + n_ops = GUINT32_FROM_LE (*(guint32 *)(diffdata+4)); + ops = (guint32 *)(diffdata+8); + + data_offset = 4 + 4 + 4 * n_ops; + + /* All ops must fit in diff, and avoid wrapping the multiply */ + if (data_offset > diff_size || + (data_offset - 4 - 4) / 4 != n_ops) + { + flatpak_fail (error, "Invalid summary diff"); + return NULL; + } + + data = diffdata + data_offset; + data_size = diff_size - data_offset; + + for (gsize i = 0; i < n_ops; i++) + { + guint32 opdata = GUINT32_FROM_LE (ops[i]); + guint32 kind = (opdata & 0xf0000000) >> 28; + guint32 size = opdata & 0x0fffffff; + + switch (kind) + { + case DIFF_OP_KIND_RESUSE_OLD: + if (size > old_size) + { + flatpak_fail (error, "Invalid summary diff"); + return NULL; + } + g_byte_array_append (res, old_data, size); + old_data += size; + old_size -= size; + break; + case DIFF_OP_KIND_SKIP_OLD: + if (size > old_size) + { + flatpak_fail (error, "Invalid summary diff"); + return NULL; + } + old_data += size; + old_size -= size; + break; + case DIFF_OP_KIND_DATA: + if (size > data_size) + { + flatpak_fail (error, "Invalid summary diff"); + return NULL; + } + g_byte_array_append (res, data, size); + data += size; + data_size -= size; + break; + default: + flatpak_fail (error, "Invalid summary diff"); + return NULL; + } + } + + return g_byte_array_free_to_bytes (g_steal_pointer (&res)); +} + + +static GBytes * +flatpak_summary_generate_diff (GVariant *old_v, + GVariant *new_v, + GError **error) +{ + VarSummaryRef new, old; + VarRefMapRef new_refs, old_refs; + VarRefMapEntryRef new_entry, old_entry; + gsize new_len, old_len; + int new_i, old_i; + const char *old_ref, *new_ref; + g_autoptr(GArray) ops = g_array_new (FALSE, TRUE, sizeof (DiffOp)); + g_autoptr(GArray) data_bytes = g_array_new (FALSE, TRUE, 1); + g_autoptr(GBytes) diff_uncompressed = NULL; + g_autoptr(GBytes) diff_compressed = NULL; + DiffData data = { + g_variant_get_data (old_v), + g_variant_get_data (new_v), + ops, + data_bytes, + }; + + new = var_summary_from_gvariant (new_v); + old = var_summary_from_gvariant (old_v); + + new_refs = var_summary_get_ref_map (new); + old_refs = var_summary_get_ref_map (old); + + new_len = var_ref_map_get_length (new_refs); + old_len = var_ref_map_get_length (old_refs); + + new_i = old_i = 0; + while (new_i < new_len && old_i < old_len) + { + if (new_i == new_len) + { + /* Just old left */ + old_entry = var_ref_map_get_at (old_refs, old_i); + old_ref = var_ref_map_entry_get_ref (old_entry); + old_i++; + diff_consume_block (&data, + -1, 0, + (const guchar *)new_entry.base - (const guchar *)new.base, new_entry.size); + } + else if (old_i == old_len) + { + /* Just new left */ + new_entry = var_ref_map_get_at (new_refs, new_i); + new_ref = var_ref_map_entry_get_ref (new_entry); + diff_consume_block (&data, + (const guchar *)old_entry.base - (const guchar *)old.base, old_entry.size, + -1, 0); + + new_i++; + } + else + { + new_entry = var_ref_map_get_at (new_refs, new_i); + new_ref = var_ref_map_entry_get_ref (new_entry); + + old_entry = var_ref_map_get_at (old_refs, old_i); + old_ref = var_ref_map_entry_get_ref (old_entry); + + int cmp = strcmp (new_ref, old_ref); + if (cmp == 0) + { + /* same ref */ + diff_consume_block (&data, + (const guchar *)old_entry.base - (const guchar *)old.base, old_entry.size, + (const guchar *)new_entry.base - (const guchar *)new.base, new_entry.size); + old_i++; + new_i++; + } + else if (cmp < 0) + { + /* new added */ + diff_consume_block (&data, + -1, 0, + (const guchar *)new_entry.base - (const guchar *)new.base, new_entry.size); + new_i++; + } + else + { + /* old removed */ + diff_consume_block (&data, + (const guchar *)old_entry.base - (const guchar *)old.base, old_entry.size, + -1, 0); + old_i++; + } + } + } + + /* Flush till the end */ + diff_consume_block2 (&data, + data.last_old_offset, old.size - data.last_old_offset, + data.last_new_offset, new.size - data.last_new_offset); + + diff_uncompressed = diff_encode (&data, error); + if (diff_uncompressed == NULL) + return NULL; + + diff_compressed = flatpak_zlib_compress_bytes (diff_uncompressed, 9, error); + if (diff_compressed == NULL) + return NULL; + +#ifdef VALIDATE_DIFF + { + g_autoptr(GError) apply_error = NULL; + g_autoptr(GBytes) old_bytes = g_variant_get_data_as_bytes (old_v); + g_autoptr(GBytes) new_bytes = g_variant_get_data_as_bytes (new_v); + g_autoptr(GBytes) applied = flatpak_summary_apply_diff (old_bytes, diff_compressed, &apply_error); + g_assert (applied != NULL); + g_assert (g_bytes_equal (applied, new_bytes)); + } +#endif + + return g_steal_pointer (&diff_compressed); +} + +static void +variant_dict_merge (GVariantDict *dict, + GVariant *to_merge) +{ + GVariantIter iter; + gchar *key; + GVariant *value; + + if (to_merge) + { + g_variant_iter_init (&iter, to_merge); + while (g_variant_iter_next (&iter, "{sv}", &key, &value)) + { + g_variant_dict_insert_value (dict, key, value); + g_variant_unref (value); + g_free (key); + } + } +} + +static void +add_summary_metadata (OstreeRepo *repo, + GVariantBuilder *metadata_builder) +{ + GKeyFile *config; + g_autofree char *title = NULL; + g_autofree char *comment = NULL; + g_autofree char *description = NULL; + g_autofree char *homepage = NULL; + g_autofree char *icon = NULL; + g_autofree char *redirect_url = NULL; + g_autofree char *default_branch = NULL; + g_autofree char *remote_mode_str = NULL; + g_autofree char *authenticator_name = NULL; + g_autofree char *gpg_keys = NULL; + g_auto(GStrv) config_keys = NULL; + int authenticator_install = -1; + const char *collection_id; + gboolean deploy_collection_id = FALSE; + gboolean deploy_sideload_collection_id = FALSE; + gboolean tombstone_commits = FALSE; + + config = ostree_repo_get_config (repo); + + if (config) + { + remote_mode_str = g_key_file_get_string (config, "core", "mode", NULL); + tombstone_commits = g_key_file_get_boolean (config, "core", "tombstone-commits", NULL); + + title = g_key_file_get_string (config, "flatpak", "title", NULL); + comment = g_key_file_get_string (config, "flatpak", "comment", NULL); + description = g_key_file_get_string (config, "flatpak", "description", NULL); + homepage = g_key_file_get_string (config, "flatpak", "homepage", NULL); + icon = g_key_file_get_string (config, "flatpak", "icon", NULL); + default_branch = g_key_file_get_string (config, "flatpak", "default-branch", NULL); + gpg_keys = g_key_file_get_string (config, "flatpak", "gpg-keys", NULL); + redirect_url = g_key_file_get_string (config, "flatpak", "redirect-url", NULL); + deploy_sideload_collection_id = g_key_file_get_boolean (config, "flatpak", "deploy-sideload-collection-id", NULL); + deploy_collection_id = g_key_file_get_boolean (config, "flatpak", "deploy-collection-id", NULL); + authenticator_name = g_key_file_get_string (config, "flatpak", "authenticator-name", NULL); + if (g_key_file_has_key (config, "flatpak", "authenticator-install", NULL)) + authenticator_install = g_key_file_get_boolean (config, "flatpak", "authenticator-install", NULL); + + config_keys = g_key_file_get_keys (config, "flatpak", NULL, NULL); + } + + collection_id = ostree_repo_get_collection_id (repo); + + g_variant_builder_add (metadata_builder, "{sv}", "ostree.summary.mode", + g_variant_new_string (remote_mode_str ? remote_mode_str : "bare")); + g_variant_builder_add (metadata_builder, "{sv}", "ostree.summary.tombstone-commits", + g_variant_new_boolean (tombstone_commits)); + g_variant_builder_add (metadata_builder, "{sv}", "ostree.summary.indexed-deltas", + g_variant_new_boolean (TRUE)); + g_variant_builder_add (metadata_builder, "{sv}", "ostree.summary.last-modified", + g_variant_new_uint64 (GUINT64_TO_BE (g_get_real_time () / G_USEC_PER_SEC))); + + if (collection_id) + g_variant_builder_add (metadata_builder, "{sv}", "ostree.summary.collection-id", + g_variant_new_string (collection_id)); + + if (title) + g_variant_builder_add (metadata_builder, "{sv}", "xa.title", + g_variant_new_string (title)); + + if (comment) + g_variant_builder_add (metadata_builder, "{sv}", "xa.comment", + g_variant_new_string (comment)); + + if (description) + g_variant_builder_add (metadata_builder, "{sv}", "xa.description", + g_variant_new_string (description)); + + if (homepage) + g_variant_builder_add (metadata_builder, "{sv}", "xa.homepage", + g_variant_new_string (homepage)); + + if (icon) + g_variant_builder_add (metadata_builder, "{sv}", "xa.icon", + g_variant_new_string (icon)); + + if (redirect_url) + g_variant_builder_add (metadata_builder, "{sv}", "xa.redirect-url", + g_variant_new_string (redirect_url)); + + if (default_branch) + g_variant_builder_add (metadata_builder, "{sv}", "xa.default-branch", + g_variant_new_string (default_branch)); + + if (deploy_collection_id && collection_id != NULL) + g_variant_builder_add (metadata_builder, "{sv}", OSTREE_META_KEY_DEPLOY_COLLECTION_ID, + g_variant_new_string (collection_id)); + else if (deploy_sideload_collection_id && collection_id != NULL) + g_variant_builder_add (metadata_builder, "{sv}", "xa.deploy-collection-id", + g_variant_new_string (collection_id)); + else if (deploy_collection_id) + g_info ("Ignoring deploy-collection-id=true because no collection ID is set."); + + if (authenticator_name) + g_variant_builder_add (metadata_builder, "{sv}", "xa.authenticator-name", + g_variant_new_string (authenticator_name)); + + if (authenticator_install != -1) + g_variant_builder_add (metadata_builder, "{sv}", "xa.authenticator-install", + g_variant_new_boolean (authenticator_install)); + + g_variant_builder_add (metadata_builder, "{sv}", "xa.cache-version", + g_variant_new_uint32 (GUINT32_TO_LE (FLATPAK_XA_CACHE_VERSION))); + + if (config_keys != NULL) + { + for (int i = 0; config_keys[i] != NULL; i++) + { + const char *key = config_keys[i]; + g_autofree char *xa_key = NULL; + g_autofree char *value = NULL; + + if (!g_str_has_prefix (key, "authenticator-options.")) + continue; + + value = g_key_file_get_string (config, "flatpak", key, NULL); + if (value == NULL) + continue; + + xa_key = g_strconcat ("xa.", key, NULL); + g_variant_builder_add (metadata_builder, "{sv}", xa_key, + g_variant_new_string (value)); + } + } + + if (gpg_keys) + { + guchar *decoded; + gsize decoded_len; + + gpg_keys = g_strstrip (gpg_keys); + decoded = g_base64_decode (gpg_keys, &decoded_len); + + g_variant_builder_add (metadata_builder, "{sv}", "xa.gpg-keys", + g_variant_new_from_data (G_VARIANT_TYPE ("ay"), decoded, decoded_len, + TRUE, (GDestroyNotify) g_free, decoded)); + } +} + +static char * +appstream_ref_get_subset (const char *ref) +{ + if (!g_str_has_prefix (ref, "appstream2/")) + return NULL; + + const char *rest = ref + strlen ("appstream2/"); + const char *dash = strrchr (rest, '-'); + if (dash == NULL) + return NULL; + + return g_strndup (rest, dash - rest); +} + +static GVariant * +generate_summary (OstreeRepo *repo, + gboolean compat_format, + GHashTable *refs, + GHashTable *commit_data_cache, + GPtrArray *delta_names, + const char *subset, + const char **summary_arches, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GVariantBuilder) metadata_builder = g_variant_builder_new (G_VARIANT_TYPE_VARDICT); + g_autoptr(GVariantBuilder) ref_data_builder = g_variant_builder_new (G_VARIANT_TYPE ("a{s(tts)}")); + g_autoptr(GVariantBuilder) ref_sparse_data_builder = g_variant_builder_new (G_VARIANT_TYPE ("a{sa{sv}}")); + g_autoptr(GVariantBuilder) refs_builder = g_variant_builder_new (G_VARIANT_TYPE ("a(s(taya{sv}))")); + g_autoptr(GVariantBuilder) summary_builder = g_variant_builder_new (OSTREE_SUMMARY_GVARIANT_FORMAT); + g_autoptr(GHashTable) summary_arches_ht = NULL; + g_autoptr(GHashTable) commits = NULL; + g_autoptr(GList) ordered_keys = NULL; + GList *l = NULL; + + /* In the new format this goes in the summary index instead */ + if (compat_format) + add_summary_metadata (repo, metadata_builder); + + ordered_keys = g_hash_table_get_keys (refs); + ordered_keys = g_list_sort (ordered_keys, (GCompareFunc) strcmp); + + if (summary_arches) + { + summary_arches_ht = g_hash_table_new_full (g_str_hash, g_str_equal, NULL, NULL); + for (int i = 0; summary_arches[i] != NULL; i++) + { + const char *arch = summary_arches[i]; + + g_hash_table_add (summary_arches_ht, (char *)arch); + } + } + + /* Compute which commits to keep */ + commits = g_hash_table_new_full (g_str_hash, g_str_equal, NULL, NULL); /* strings owned by ref */ + for (l = ordered_keys; l; l = l->next) + { + const char *ref = l->data; + const char *rev = g_hash_table_lookup (refs, ref); + g_autofree char *arch = NULL; + const CommitData *rev_data = NULL; + + if (summary_arches) + { + /* NOTE: Non-arched (unknown) refs get into all summary versions */ + arch = flatpak_get_arch_for_ref (ref); + if (arch != NULL && !g_hash_table_contains (summary_arches_ht, arch)) + continue; /* Filter this ref by arch */ + } + + rev_data = g_hash_table_lookup (commit_data_cache, rev); + if (*subset != 0) + { + /* Subset summaries keep the appstream2/$subset-$arch, and have no appstream/ compat branch */ + + if (g_str_has_prefix (ref, "appstream/")) + { + continue; /* No compat branch in subsets */ + } + else if (g_str_has_prefix (ref, "appstream2/")) + { + g_autofree char *ref_subset = appstream_ref_get_subset (ref); + if (ref_subset == NULL) + continue; /* Non-subset, ignore */ + + if (strcmp (subset, ref_subset) != 0) + continue; /* Different subset, ignore */ + + /* Otherwise, keep */ + } + else if (rev_data) + { + if (rev_data->subsets == NULL || + !flatpak_g_ptr_array_contains_string (rev_data->subsets, subset)) + continue; /* Ref is not in this subset */ + } + } + else + { + /* non-subset, keep everything but subset appstream refs */ + + g_autofree char *ref_subset = appstream_ref_get_subset (ref); + if (ref_subset != NULL) + continue; /* Subset appstream ref, ignore */ + } + + g_hash_table_add (commits, (char *)rev); + } + + /* Create refs list, metadata and sparse_data */ + for (l = ordered_keys; l; l = l->next) + { + const char *ref = l->data; + const char *rev = g_hash_table_lookup (refs, ref); + const CommitData *rev_data = NULL; + g_auto(GVariantDict) commit_metadata_builder = FLATPAK_VARIANT_BUILDER_INITIALIZER; + guint64 commit_size; + guint64 commit_timestamp; + + if (!g_hash_table_contains (commits, rev)) + continue; /* Filter out commit (by arch & subset) */ + + if (flatpak_is_app_runtime_or_appstream_ref (ref)) + rev_data = g_hash_table_lookup (commit_data_cache, rev); + + if (rev_data != NULL) + { + commit_size = rev_data->commit_size; + commit_timestamp = rev_data->commit_timestamp; + } + else + { + g_autoptr(GVariant) commit_obj = NULL; + if (!ostree_repo_load_variant (repo, OSTREE_OBJECT_TYPE_COMMIT, rev, &commit_obj, error)) + return NULL; + commit_size = g_variant_get_size (commit_obj); + commit_timestamp = ostree_commit_get_timestamp (commit_obj); + } + + g_variant_dict_init (&commit_metadata_builder, NULL); + if (!compat_format && rev_data) + { + g_variant_dict_insert (&commit_metadata_builder, "xa.data", "(tts)", + GUINT64_TO_BE (rev_data->installed_size), + GUINT64_TO_BE (rev_data->download_size), + rev_data->metadata_contents); + variant_dict_merge (&commit_metadata_builder, rev_data->sparse_data); + } + + /* For the new format summary we use a shorter name for the timestamp to save space */ + g_variant_dict_insert_value (&commit_metadata_builder, + compat_format ? OSTREE_COMMIT_TIMESTAMP : OSTREE_COMMIT_TIMESTAMP2, + g_variant_new_uint64 (GUINT64_TO_BE (commit_timestamp))); + + g_variant_builder_add_value (refs_builder, + g_variant_new ("(s(t@ay@a{sv}))", ref, + commit_size, + ostree_checksum_to_bytes_v (rev), + g_variant_dict_end (&commit_metadata_builder))); + + if (compat_format && rev_data) + { + g_variant_builder_add (ref_data_builder, "{s(tts)}", + ref, + GUINT64_TO_BE (rev_data->installed_size), + GUINT64_TO_BE (rev_data->download_size), + rev_data->metadata_contents); + if (rev_data->sparse_data) + g_variant_builder_add (ref_sparse_data_builder, "{s@a{sv}}", + ref, rev_data->sparse_data); + } + } + + if (delta_names) + { + g_auto(GVariantDict) deltas_builder = FLATPAK_VARIANT_BUILDER_INITIALIZER; + + g_variant_dict_init (&deltas_builder, NULL); + for (guint i = 0; i < delta_names->len; i++) + { + g_autofree char *from = NULL; + g_autofree char *to = NULL; + GVariant *digest; + + _ostree_parse_delta_name (delta_names->pdata[i], &from, &to); + + /* Only keep deltas going to a ref that is in the summary + * (i.e. not arch filtered or random) */ + if (!g_hash_table_contains (commits, to)) + continue; + + digest = _ostree_repo_static_delta_superblock_digest (repo, + (from && from[0]) ? from : NULL, + to, cancellable, error); + if (digest == NULL) + return FALSE; + + g_variant_dict_insert_value (&deltas_builder, delta_names->pdata[i], digest); + } + + if (delta_names->len > 0) + g_variant_builder_add (metadata_builder, "{sv}", "ostree.static-deltas", g_variant_dict_end (&deltas_builder)); + } + + if (compat_format) + { + /* Note: xa.cache doesn’t need to support collection IDs for the refs listed + * in it, because the xa.cache metadata is stored on the ostree-metadata ref, + * which is itself strongly bound to a collection ID — so that collection ID + * is bound to all the refs in xa.cache. If a client is using the xa.cache + * data from a summary file (rather than an ostree-metadata branch), they are + * too old to care about collection IDs anyway. */ + g_variant_builder_add (metadata_builder, "{sv}", "xa.cache", + g_variant_new_variant (g_variant_builder_end (ref_data_builder))); + g_variant_builder_add (metadata_builder, "{sv}", "xa.sparse-cache", + g_variant_builder_end (ref_sparse_data_builder)); + } + else + { + g_variant_builder_add (metadata_builder, "{sv}", "xa.summary-version", + g_variant_new_uint32 (GUINT32_TO_LE (FLATPAK_XA_SUMMARY_VERSION))); + } + + g_variant_builder_add_value (summary_builder, g_variant_builder_end (refs_builder)); + g_variant_builder_add_value (summary_builder, g_variant_builder_end (metadata_builder)); + + return g_variant_ref_sink (g_variant_builder_end (summary_builder)); +} + +static GVariant * +read_digested_summary (OstreeRepo *repo, + const char *digest, + GHashTable *digested_summary_cache, + GCancellable *cancellable, + GError **error) +{ + GVariant *cached; + g_autoptr(GVariant) loaded = NULL; + + cached = g_hash_table_lookup (digested_summary_cache, digest); + if (cached) + return g_variant_ref (cached); + + loaded = flatpak_repo_load_digested_summary (repo, digest, error); + if (loaded == NULL) + return NULL; + + g_hash_table_insert (digested_summary_cache, g_strdup (digest), g_variant_ref (loaded)); + + return g_steal_pointer (&loaded); +} + +static gboolean +add_to_history (OstreeRepo *repo, + GVariantBuilder *history_builder, + VarChecksumRef old_digest_vv, + GVariant *current_digest_v, + GVariant *current_content, + GHashTable *digested_summary_cache, + guint *history_len, + guint max_history_length, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GVariant) old_digest_v = g_variant_ref_sink (var_checksum_dup_to_gvariant (old_digest_vv)); + g_autofree char *old_digest = NULL; + g_autoptr(GVariant) old_content = NULL; + g_autofree char *current_digest = NULL; + g_autoptr(GBytes) subsummary_diff = NULL; + + /* Limit history length */ + if (*history_len >= max_history_length) + return TRUE; + + /* Avoid repeats in the history (in case nothing changed in subsummary) */ + if (g_variant_equal (old_digest_v, current_digest_v)) + return TRUE; + + old_digest = ostree_checksum_from_bytes_v (old_digest_v); + old_content = read_digested_summary (repo, old_digest, digested_summary_cache, cancellable, NULL); + if (old_content == NULL) + return TRUE; /* Only add parents that still exist */ + + subsummary_diff = flatpak_summary_generate_diff (old_content, current_content, error); + if (subsummary_diff == NULL) + return FALSE; + + current_digest = ostree_checksum_from_bytes_v (current_digest_v); + + if (!flatpak_repo_save_digested_summary_delta (repo, old_digest, current_digest, + subsummary_diff, cancellable, error)) + return FALSE; + + *history_len += 1; + g_variant_builder_add_value (history_builder, old_digest_v); + + return TRUE; +} + +static GVariant * +generate_summary_index (OstreeRepo *repo, + GVariant *old_index_v, + GHashTable *summaries, + GHashTable *digested_summaries, + GHashTable *digested_summary_cache, + const char **gpg_key_ids, + const char *gpg_homedir, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GVariantBuilder) metadata_builder = g_variant_builder_new (G_VARIANT_TYPE_VARDICT); + g_autoptr(GVariantBuilder) subsummary_builder = g_variant_builder_new (G_VARIANT_TYPE ("a{s(ayaaya{sv})}")); + g_autoptr(GVariantBuilder) index_builder = g_variant_builder_new (FLATPAK_SUMMARY_INDEX_GVARIANT_FORMAT); + g_autoptr(GVariant) index = NULL; + g_autoptr(GList) ordered_summaries = NULL; + guint max_history_length = flatpak_repo_get_summary_history_length (repo); + GList *l; + + add_summary_metadata (repo, metadata_builder); + + ordered_summaries = g_hash_table_get_keys (summaries); + ordered_summaries = g_list_sort (ordered_summaries, (GCompareFunc) strcmp); + for (l = ordered_summaries; l; l = l->next) + { + g_auto(GVariantDict) subsummary_metadata_builder = FLATPAK_VARIANT_BUILDER_INITIALIZER; + const char *subsummary = l->data; + const char *digest = g_hash_table_lookup (summaries, subsummary); + g_autoptr(GVariant) digest_v = g_variant_ref_sink (ostree_checksum_to_bytes_v (digest)); + g_autoptr(GVariantBuilder) history_builder = g_variant_builder_new (G_VARIANT_TYPE ("aay")); + g_autoptr(GVariant) subsummary_content = NULL; + + subsummary_content = read_digested_summary (repo, digest, digested_summary_cache, cancellable, error); + if (subsummary_content == NULL) + return NULL; /* This really should always be there as we're supposed to index it */ + + if (old_index_v) + { + VarSummaryIndexRef old_index = var_summary_index_from_gvariant (old_index_v); + VarSummaryIndexSubsummariesRef old_subsummaries = var_summary_index_get_subsummaries (old_index); + VarSubsummaryRef old_subsummary; + guint history_len = 0; + + if (var_summary_index_subsummaries_lookup (old_subsummaries, subsummary, NULL, &old_subsummary)) + { + VarChecksumRef parent = var_subsummary_get_checksum (old_subsummary); + + /* Add current as first in history */ + if (!add_to_history (repo, history_builder, parent, digest_v, subsummary_content, digested_summary_cache, + &history_len, max_history_length, cancellable, error)) + return FALSE; + + /* Add previous history */ + VarArrayofChecksumRef history = var_subsummary_get_history (old_subsummary); + gsize len = var_arrayof_checksum_get_length (history); + for (gsize i = 0; i < len; i++) + { + VarChecksumRef c = var_arrayof_checksum_get_at (history, i); + if (!add_to_history (repo, history_builder, c, digest_v, subsummary_content, digested_summary_cache, + &history_len, max_history_length, cancellable, error)) + return FALSE; + } + } + } + + g_variant_dict_init (&subsummary_metadata_builder, NULL); + g_variant_builder_add (subsummary_builder, "{s(@ay@aay@a{sv})}", + subsummary, + digest_v, + g_variant_builder_end (history_builder), + g_variant_dict_end (&subsummary_metadata_builder)); + } + + g_variant_builder_add_value (index_builder, g_variant_builder_end (subsummary_builder)); + g_variant_builder_add_value (index_builder, g_variant_builder_end (metadata_builder)); + + index = g_variant_ref_sink (g_variant_builder_end (index_builder)); + + return g_steal_pointer (&index); +} + +static gboolean +flatpak_repo_gc_digested_summaries (OstreeRepo *repo, + const char *index_digest, /* The digest of the current (new) index (if any) */ + const char *old_index_digest, /* The digest of the previous index (if any) */ + GHashTable *digested_summaries, /* generated */ + GHashTable *digested_summary_cache, /* generated + referenced */ + GCancellable *cancellable, + GError **error) +{ + g_auto(GLnxDirFdIterator) iter = {0}; + int repo_fd = ostree_repo_get_dfd (repo); + struct dirent *dent; + const char *ext; + g_autoptr(GError) local_error = NULL; + + if (!glnx_dirfd_iterator_init_at (repo_fd, "summaries", FALSE, &iter, &local_error)) + { + if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND)) + return TRUE; + + g_propagate_error (error, g_steal_pointer (&local_error)); + return FALSE; + } + + while (TRUE) + { + gboolean remove = FALSE; + + if (!glnx_dirfd_iterator_next_dent_ensure_dtype (&iter, &dent, cancellable, error)) + return FALSE; + + if (dent == NULL) + break; + + if (dent->d_type != DT_REG) + continue; + + /* Keep it if its an unexpected type */ + ext = strchr (dent->d_name, '.'); + if (ext != NULL) + { + if (strcmp (ext, ".gz") == 0 && strlen (dent->d_name) == 64 + 3) + { + g_autofree char *sha256 = g_strndup (dent->d_name, 64); + + /* Keep all the referenced summaries */ + if (g_hash_table_contains (digested_summary_cache, sha256)) + { + g_info ("Keeping referenced summary %s", dent->d_name); + continue; + } + /* Remove rest */ + remove = TRUE; + } + else if (strcmp (ext, ".delta") == 0) + { + const char *dash = strchr (dent->d_name, '-'); + if (dash != NULL && dash < ext && (ext - dash) == 1 + 64) + { + g_autofree char *to_sha256 = g_strndup (dash + 1, 64); + + /* Only keep deltas going to a generated summary */ + if (g_hash_table_contains (digested_summaries, to_sha256)) + { + g_info ("Keeping delta to generated summary %s", dent->d_name); + continue; + } + /* Remove rest */ + remove = TRUE; + } + } + else if (strcmp (ext, ".idx.sig") == 0) + { + g_autofree char *digest = g_strndup (dent->d_name, strlen (dent->d_name) - strlen (".idx.sig")); + + if (g_strcmp0 (digest, index_digest) == 0) + continue; /* Always keep current */ + + if (g_strcmp0 (digest, old_index_digest) == 0) + continue; /* Always keep previous one, to avoid some races */ + + /* Remove the rest */ + remove = TRUE; + } + } + + if (remove) + { + g_info ("Removing old digested summary file %s", dent->d_name); + if (unlinkat (iter.fd, dent->d_name, 0) != 0) + { + glnx_set_error_from_errno (error); + return FALSE; + } + } + else + g_info ("Keeping unexpected summary file %s", dent->d_name); + } + + return TRUE; +} + +/* Update the metadata in the summary file for @repo, and then re-sign the file. + * If the repo has a collection ID set, additionally store the metadata on a + * contentless commit in a well-known branch, which is the preferred way of + * broadcasting per-repo metadata (putting it in the summary file is deprecated, + * but kept for backwards compatibility). + * + * Note that there are two keys for the collection ID: collection-id, and + * ostree.deploy-collection-id. If a client does not currently have a + * collection ID configured for this remote, it will *only* update its + * configuration from ostree.deploy-collection-id. This allows phased + * deployment of collection-based repositories. Clients will only update their + * configuration from an unset to a set collection ID once (otherwise the + * security properties of collection IDs are broken). */ +gboolean +flatpak_repo_update (OstreeRepo *repo, + FlatpakRepoUpdateFlags flags, + const char **gpg_key_ids, + const char *gpg_homedir, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GHashTable) commit_data_cache = NULL; + g_autoptr(GVariant) compat_summary = NULL; + g_autoptr(GVariant) summary_index = NULL; + g_autoptr(GVariant) old_index = NULL; + g_autoptr(GPtrArray) delta_names = NULL; + g_auto(GStrv) summary_arches = NULL; + g_autoptr(GHashTable) refs = NULL; + g_autoptr(GHashTable) arches = NULL; + g_autoptr(GHashTable) subsets = NULL; + g_autoptr(GHashTable) summaries = NULL; + g_autoptr(GHashTable) digested_summaries = NULL; + g_autoptr(GHashTable) digested_summary_cache = NULL; + g_autoptr(GBytes) index_sig = NULL; + time_t old_compat_sig_mtime; + GKeyFile *config; + gboolean disable_index = (flags & FLATPAK_REPO_UPDATE_FLAG_DISABLE_INDEX) != 0; + g_autofree char *index_digest = NULL; + g_autofree char *old_index_digest = NULL; + + config = ostree_repo_get_config (repo); + + if (!ostree_repo_list_refs_ext (repo, NULL, &refs, + OSTREE_REPO_LIST_REFS_EXT_EXCLUDE_REMOTES | OSTREE_REPO_LIST_REFS_EXT_EXCLUDE_MIRRORS, + cancellable, error)) + return FALSE; + + old_index = flatpak_repo_load_summary_index (repo, NULL); + if (old_index) + commit_data_cache = populate_commit_data_cache (repo, old_index); + + if (commit_data_cache == NULL) /* No index or failed to load it */ + commit_data_cache = commit_data_cache_new (); + + if (!ostree_repo_list_static_delta_names (repo, &delta_names, cancellable, error)) + return FALSE; + + if (config) + summary_arches = g_key_file_get_string_list (config, "flatpak", "summary-arches", NULL, NULL); + + summaries = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free); + /* These are the ones we generated */ + digested_summaries = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify)g_variant_unref); + /* These are the ones generated or references */ + digested_summary_cache = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify)g_variant_unref); + + arches = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); + subsets = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); + g_hash_table_add (subsets, g_strdup ("")); /* Always have everything subset */ + + GLNX_HASH_TABLE_FOREACH_KV (refs, const char *, ref, const char *, rev) + { + g_autofree char *arch = flatpak_get_arch_for_ref (ref); + CommitData *rev_data = NULL; + + if (arch != NULL && + !g_hash_table_contains (arches, arch)) + g_hash_table_add (arches, g_steal_pointer (&arch)); + + /* Add CommitData for flatpak refs that we didn't already pre-populate */ + if (flatpak_is_app_runtime_or_appstream_ref (ref)) + { + rev_data = g_hash_table_lookup (commit_data_cache, rev); + if (rev_data == NULL) + { + rev_data = read_commit_data (repo, ref, rev, cancellable, error); + if (rev_data == NULL) + return FALSE; + + g_hash_table_insert (commit_data_cache, g_strdup (rev), (CommitData *)rev_data); + } + + for (int i = 0; rev_data->subsets != NULL && i < rev_data->subsets->len; i++) + { + const char *subset = g_ptr_array_index (rev_data->subsets, i); + if (!g_hash_table_contains (subsets, subset)) + g_hash_table_add (subsets, g_strdup (subset)); + } + } + } + + compat_summary = generate_summary (repo, TRUE, refs, commit_data_cache, delta_names, + "", (const char **)summary_arches, + cancellable, error); + if (compat_summary == NULL) + return FALSE; + + if (!disable_index) + { + GLNX_HASH_TABLE_FOREACH (subsets, const char *, subset) + { + GLNX_HASH_TABLE_FOREACH (arches, const char *, arch) + { + const char *arch_v[] = { arch, NULL }; + g_autofree char *name = NULL; + g_autofree char *digest = NULL; + + if (*subset == 0) + name = g_strdup (arch); + else + name = g_strconcat (subset, "-", arch, NULL); + + g_autoptr(GVariant) arch_summary = generate_summary (repo, FALSE, refs, commit_data_cache, NULL, subset, arch_v, + cancellable, error); + if (arch_summary == NULL) + return FALSE; + + digest = flatpak_repo_save_digested_summary (repo, name, arch_summary, cancellable, error); + if (digest == NULL) + return FALSE; + + g_hash_table_insert (digested_summaries, g_strdup (digest), g_variant_ref (arch_summary)); + /* Prime summary cache with generated summaries */ + g_hash_table_insert (digested_summary_cache, g_strdup (digest), g_variant_ref (arch_summary)); + g_hash_table_insert (summaries, g_steal_pointer (&name), g_steal_pointer (&digest)); + } + } + + summary_index = generate_summary_index (repo, old_index, summaries, digested_summaries, digested_summary_cache, + gpg_key_ids, gpg_homedir, + cancellable, error); + if (summary_index == NULL) + return FALSE; + } + + if (!ostree_repo_static_delta_reindex (repo, 0, NULL, cancellable, error)) + return FALSE; + + if (summary_index && gpg_key_ids) + { + g_autoptr(GBytes) index_bytes = g_variant_get_data_as_bytes (summary_index); + + if (!ostree_repo_gpg_sign_data (repo, index_bytes, + NULL, + gpg_key_ids, + gpg_homedir, + &index_sig, + cancellable, + error)) + return FALSE; + } + + if (summary_index) + index_digest = g_compute_checksum_for_data (G_CHECKSUM_SHA256, + g_variant_get_data (summary_index), + g_variant_get_size (summary_index)); + if (old_index) + old_index_digest = g_compute_checksum_for_data (G_CHECKSUM_SHA256, + g_variant_get_data (old_index), + g_variant_get_size (old_index)); + + /* Release the memory-mapped summary index file before replacing it, + to avoid failure on filesystems like cifs */ + g_clear_pointer (&old_index, g_variant_unref); + + if (!flatpak_repo_save_summary_index (repo, summary_index, index_digest, index_sig, cancellable, error)) + return FALSE; + + if (!flatpak_repo_save_compat_summary (repo, compat_summary, &old_compat_sig_mtime, cancellable, error)) + return FALSE; + + if (gpg_key_ids) + { + if (!ostree_repo_add_gpg_signature_summary (repo, + gpg_key_ids, + gpg_homedir, + cancellable, + error)) + return FALSE; + + + if (old_compat_sig_mtime != 0) + { + int repo_dfd = ostree_repo_get_dfd (repo); + struct stat stbuf; + + /* Ensure we increase (in sec precision) */ + if (fstatat (repo_dfd, "summary.sig", &stbuf, AT_SYMLINK_NOFOLLOW) == 0 && + stbuf.st_mtime <= old_compat_sig_mtime) + { + struct timespec ts[2] = { {0, UTIME_OMIT}, {old_compat_sig_mtime + 1, 0} }; + (void) utimensat (repo_dfd, "summary.sig", ts, AT_SYMLINK_NOFOLLOW); + } + } + } + + if (!disable_index && + !flatpak_repo_gc_digested_summaries (repo, index_digest, old_index_digest, digested_summaries, digested_summary_cache, cancellable, error)) + return FALSE; + + return TRUE; +} + +/* Wrapper that uses ostree_repo_resolve_collection_ref() and on failure falls + * back to using ostree_repo_resolve_rev() for backwards compatibility. This + * means we support refs/heads/, refs/remotes/, and refs/mirrors/. */ +gboolean +flatpak_repo_resolve_rev (OstreeRepo *repo, + const char *collection_id, /* nullable */ + const char *remote_name, /* nullable */ + const char *ref_name, + gboolean allow_noent, + char **out_rev, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GError) local_error = NULL; + + if (collection_id != NULL) + { + /* Do a version check to ensure we have these: + * https://github.com/ostreedev/ostree/pull/1821 + * https://github.com/ostreedev/ostree/pull/1825 */ +#if OSTREE_CHECK_VERSION (2019, 2) + const OstreeCollectionRef c_r = + { + .collection_id = (char *) collection_id, + .ref_name = (char *) ref_name, + }; + OstreeRepoResolveRevExtFlags flags = remote_name == NULL ? + OSTREE_REPO_RESOLVE_REV_EXT_LOCAL_ONLY : + OSTREE_REPO_RESOLVE_REV_EXT_NONE; + if (ostree_repo_resolve_collection_ref (repo, &c_r, + allow_noent, + flags, + out_rev, + cancellable, NULL)) + return TRUE; +#endif + } + + /* There may be several remotes with the same branch (if we for + * instance changed the origin) so prepend the current origin to + * make sure we get the right one */ + if (remote_name != NULL) + { + g_autofree char *refspec = g_strdup_printf ("%s:%s", remote_name, ref_name); + ostree_repo_resolve_rev (repo, refspec, allow_noent, out_rev, &local_error); + } + else + ostree_repo_resolve_rev_ext (repo, ref_name, allow_noent, + OSTREE_REPO_RESOLVE_REV_EXT_NONE, out_rev, &local_error); + + if (local_error != NULL) + { + if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND)) + flatpak_fail_error (error, FLATPAK_ERROR_REF_NOT_FOUND, "%s", local_error->message); + else + g_propagate_error (error, g_steal_pointer (&local_error)); + + return FALSE; + } + + return TRUE; +} + +/* This special cases the ref lookup which by doing a + bsearch since the array is sorted */ +gboolean +flatpak_var_ref_map_lookup_ref (VarRefMapRef ref_map, + const char *ref, + VarRefInfoRef *out_info) +{ + gsize imax, imin; + gsize imid; + gsize n; + + g_return_val_if_fail (out_info != NULL, FALSE); + + n = var_ref_map_get_length (ref_map); + if (n == 0) + return FALSE; + + imax = n - 1; + imin = 0; + while (imax >= imin) + { + VarRefMapEntryRef entry; + const char *cur; + int cmp; + + imid = (imin + imax) / 2; + + entry = var_ref_map_get_at (ref_map, imid); + cur = var_ref_map_entry_get_ref (entry); + + cmp = strcmp (cur, ref); + if (cmp < 0) + { + imin = imid + 1; + } + else if (cmp > 0) + { + if (imid == 0) + break; + imax = imid - 1; + } + else + { + *out_info = var_ref_map_entry_get_info (entry); + return TRUE; + } + } + + return FALSE; +} + +/* Find the list of refs which belong to the given @collection_id in @summary. + * If @collection_id is %NULL, the main refs list from the summary will be + * returned. If @collection_id doesn’t match any collection IDs in the summary + * file, %FALSE will be returned. */ +gboolean +flatpak_summary_find_ref_map (VarSummaryRef summary, + const char *collection_id, + VarRefMapRef *refs_out) +{ + VarMetadataRef metadata = var_summary_get_metadata (summary); + const char *summary_collection_id; + + summary_collection_id = var_metadata_lookup_string (metadata, "ostree.summary.collection-id", NULL); + + if (collection_id == NULL || g_strcmp0 (collection_id, summary_collection_id) == 0) + { + if (refs_out) + *refs_out = var_summary_get_ref_map (summary); + return TRUE; + } + else if (collection_id != NULL) + { + VarVariantRef collection_map_v; + if (var_metadata_lookup (metadata, "ostree.summary.collection-map", NULL, &collection_map_v)) + { + VarCollectionMapRef collection_map = var_collection_map_from_variant (collection_map_v); + return var_collection_map_lookup (collection_map, collection_id, NULL, refs_out); + } + } + + return FALSE; +} + +/* This matches all refs from @collection_id that have ref, followed by '.' as prefix */ +GPtrArray * +flatpak_summary_match_subrefs (GVariant *summary_v, + const char *collection_id, + FlatpakDecomposed *ref) +{ + GPtrArray *res = g_ptr_array_new_with_free_func ((GDestroyNotify)flatpak_decomposed_unref); + gsize n, i; + g_autofree char *parts_prefix = NULL; + g_autofree char *ref_prefix = NULL; + g_autofree char *ref_suffix = NULL; + VarSummaryRef summary; + VarRefMapRef ref_map; + + summary = var_summary_from_gvariant (summary_v); + + /* Work out which refs list to use, based on the @collection_id. */ + if (flatpak_summary_find_ref_map (summary, collection_id, &ref_map)) + { + /* Match against the refs. */ + g_autofree char *id = flatpak_decomposed_dup_id (ref); + g_autofree char *arch = flatpak_decomposed_dup_arch (ref); + g_autofree char *branch = flatpak_decomposed_dup_branch (ref); + parts_prefix = g_strconcat (id, ".", NULL); + + ref_prefix = g_strconcat (flatpak_decomposed_get_kind_str (ref), "/", NULL); + ref_suffix = g_strconcat ("/", arch, "/", branch, NULL); + + n = var_ref_map_get_length (ref_map); + for (i = 0; i < n; i++) + { + VarRefMapEntryRef entry = var_ref_map_get_at (ref_map, i); + const char *cur; + const char *id_start; + const char *id_suffix; + const char *id_end; + + cur = var_ref_map_entry_get_ref (entry); + + /* Must match type */ + if (!g_str_has_prefix (cur, ref_prefix)) + continue; + + /* Must match arch & branch */ + if (!g_str_has_suffix (cur, ref_suffix)) + continue; + + id_start = strchr (cur, '/'); + if (id_start == NULL) + continue; + id_start += 1; + + id_end = strchr (id_start, '/'); + if (id_end == NULL) + continue; + + /* But only prefix of id */ + if (!g_str_has_prefix (id_start, parts_prefix)) + continue; + + /* And no dots (we want to install prefix.$ID, but not prefix.$ID.Sources) */ + id_suffix = id_start + strlen (parts_prefix); + if (memchr (id_suffix, '.', id_end - id_suffix) != NULL) + continue; + + FlatpakDecomposed *d = flatpak_decomposed_new_from_ref (cur, NULL); + if (d) + g_ptr_array_add (res, d); + } + } + + return g_steal_pointer (&res); +} + +gboolean +flatpak_summary_lookup_ref (GVariant *summary_v, + const char *collection_id, + const char *ref, + char **out_checksum, + VarRefInfoRef *out_info) +{ + VarSummaryRef summary; + VarRefMapRef ref_map; + VarRefInfoRef info; + const guchar *checksum_bytes; + gsize checksum_bytes_len; + + summary = var_summary_from_gvariant (summary_v); + + /* Work out which refs list to use, based on the @collection_id. */ + if (!flatpak_summary_find_ref_map (summary, collection_id, &ref_map)) + return FALSE; + + if (!flatpak_var_ref_map_lookup_ref (ref_map, ref, &info)) + return FALSE; + + checksum_bytes = var_ref_info_peek_checksum (info, &checksum_bytes_len); + if (G_UNLIKELY (checksum_bytes_len != OSTREE_SHA256_DIGEST_LEN)) + return FALSE; + + if (out_checksum) + *out_checksum = ostree_checksum_from_bytes (checksum_bytes); + + if (out_info) + *out_info = info; + + return TRUE; +} + +GKeyFile * +flatpak_parse_repofile (const char *remote_name, + gboolean from_ref, + GKeyFile *keyfile, + GBytes **gpg_data_out, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GBytes) gpg_data = NULL; + g_autofree char *uri = NULL; + g_autofree char *title = NULL; + g_autofree char *gpg_key = NULL; + g_autofree char *collection_id = NULL; + g_autofree char *default_branch = NULL; + g_autofree char *comment = NULL; + g_autofree char *description = NULL; + g_autofree char *icon = NULL; + g_autofree char *homepage = NULL; + g_autofree char *filter = NULL; + g_autofree char *subset = NULL; + g_autofree char *authenticator_name = NULL; + gboolean nodeps; + const char *source_group; + g_autofree char *version = NULL; + + if (from_ref) + source_group = FLATPAK_REF_GROUP; + else + source_group = FLATPAK_REPO_GROUP; + + GKeyFile *config = g_key_file_new (); + g_autofree char *group = g_strdup_printf ("remote \"%s\"", remote_name); + + if (!g_key_file_has_group (keyfile, source_group)) + { + flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Invalid %s: Missing group ‘%s’"), + from_ref ? ".flatpakref" : ".flatpakrepo", source_group); + return NULL; + } + + uri = g_key_file_get_string (keyfile, source_group, + FLATPAK_REPO_URL_KEY, NULL); + if (uri == NULL) + { + flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Invalid %s: Missing key ‘%s’"), + from_ref ? ".flatpakref" : ".flatpakrepo", FLATPAK_REPO_URL_KEY); + return NULL; + } + + version = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, + FLATPAK_REPO_VERSION_KEY, NULL); + if (version != NULL && strcmp (version, "1") != 0) + { + flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, + _("Invalid version %s, only 1 supported"), version); + return NULL; + } + + g_key_file_set_string (config, group, "url", uri); + + subset = g_key_file_get_locale_string (keyfile, source_group, + FLATPAK_REPO_SUBSET_KEY, NULL, NULL); + if (subset != NULL) + g_key_file_set_string (config, group, "xa.subset", subset); + + /* Don't use the title from flatpakref files; that's the title of the app */ + if (!from_ref) + title = g_key_file_get_locale_string (keyfile, FLATPAK_REPO_GROUP, + FLATPAK_REPO_TITLE_KEY, NULL, NULL); + if (title != NULL) + g_key_file_set_string (config, group, "xa.title", title); + + default_branch = g_key_file_get_locale_string (keyfile, source_group, + FLATPAK_REPO_DEFAULT_BRANCH_KEY, NULL, NULL); + if (default_branch != NULL) + g_key_file_set_string (config, group, "xa.default-branch", default_branch); + + nodeps = g_key_file_get_boolean (keyfile, source_group, + FLATPAK_REPO_NODEPS_KEY, NULL); + if (nodeps) + g_key_file_set_boolean (config, group, "xa.nodeps", TRUE); + + gpg_key = g_key_file_get_string (keyfile, source_group, + FLATPAK_REPO_GPGKEY_KEY, NULL); + if (gpg_key != NULL) + { + guchar *decoded; + gsize decoded_len; + + gpg_key = g_strstrip (gpg_key); + decoded = g_base64_decode (gpg_key, &decoded_len); + if (decoded_len < 10) /* Check some minimal size so we don't get crap */ + { + g_free (decoded); + flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Invalid gpg key")); + return NULL; + } + + gpg_data = g_bytes_new_take (decoded, decoded_len); + g_key_file_set_boolean (config, group, "gpg-verify", TRUE); + } + else + { + g_key_file_set_boolean (config, group, "gpg-verify", FALSE); + } + + /* We have a hierarchy of keys for setting the collection ID, which all have + * the same effect. The only difference is which versions of Flatpak support + * them, and therefore what P2P implementation is enabled by them: + * DeploySideloadCollectionID: supported by Flatpak >= 1.12.8 (1.7.1 + * introduced sideload support but this key was added late) + * DeployCollectionID: supported by Flatpak >= 1.0.6 (but fully supported in + * >= 1.2.0) + * CollectionID: supported by Flatpak >= 0.9.8 + */ + collection_id = flatpak_keyfile_get_string_non_empty (keyfile, source_group, + FLATPAK_REPO_DEPLOY_SIDELOAD_COLLECTION_ID_KEY); + if (collection_id == NULL) + collection_id = flatpak_keyfile_get_string_non_empty (keyfile, source_group, + FLATPAK_REPO_DEPLOY_COLLECTION_ID_KEY); + if (collection_id == NULL) + collection_id = flatpak_keyfile_get_string_non_empty (keyfile, source_group, + FLATPAK_REPO_COLLECTION_ID_KEY); + if (collection_id != NULL) + { + if (gpg_key == NULL) + { + flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Collection ID requires GPG key to be provided")); + return NULL; + } + + g_key_file_set_string (config, group, "collection-id", collection_id); + } + + g_key_file_set_boolean (config, group, "gpg-verify-summary", + (gpg_key != NULL)); + + authenticator_name = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, + FLATPAK_REPO_AUTHENTICATOR_NAME_KEY, NULL); + if (authenticator_name) + g_key_file_set_string (config, group, "xa.authenticator-name", authenticator_name); + + if (g_key_file_has_key (keyfile, FLATPAK_REPO_GROUP, FLATPAK_REPO_AUTHENTICATOR_INSTALL_KEY, NULL)) + { + gboolean authenticator_install = g_key_file_get_boolean (keyfile, FLATPAK_REPO_GROUP, + FLATPAK_REPO_AUTHENTICATOR_INSTALL_KEY, NULL); + g_key_file_set_boolean (config, group, "xa.authenticator-install", authenticator_install); + } + + comment = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, + FLATPAK_REPO_COMMENT_KEY, NULL); + if (comment) + g_key_file_set_string (config, group, "xa.comment", comment); + + description = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, + FLATPAK_REPO_DESCRIPTION_KEY, NULL); + if (description) + g_key_file_set_string (config, group, "xa.description", description); + + icon = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, + FLATPAK_REPO_ICON_KEY, NULL); + if (icon) + g_key_file_set_string (config, group, "xa.icon", icon); + + homepage = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, + FLATPAK_REPO_HOMEPAGE_KEY, NULL); + if (homepage) + g_key_file_set_string (config, group, "xa.homepage", homepage); + + filter = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, + FLATPAK_REPO_FILTER_KEY, NULL); + if (filter) + g_key_file_set_string (config, group, "xa.filter", filter); + else + g_key_file_set_string (config, group, "xa.filter", ""); /* Default to override any pre-existing filters */ + + *gpg_data_out = g_steal_pointer (&gpg_data); + + return g_steal_pointer (&config); +} + +gboolean +flatpak_mtree_create_dir (OstreeRepo *repo, + OstreeMutableTree *parent, + const char *name, + OstreeMutableTree **dir_out, + GError **error) +{ + g_autoptr(OstreeMutableTree) dir = NULL; + + if (!ostree_mutable_tree_ensure_dir (parent, name, &dir, error)) + return FALSE; + + if (!flatpak_mtree_ensure_dir_metadata (repo, dir, NULL, error)) + return FALSE; + + *dir_out = g_steal_pointer (&dir); + return TRUE; +} + +gboolean +flatpak_mtree_create_symlink (OstreeRepo *repo, + OstreeMutableTree *parent, + const char *filename, + const char *target, + GError **error) +{ + g_autoptr(GFileInfo) file_info = g_file_info_new (); + g_autoptr(GInputStream) content_stream = NULL; + g_autofree guchar *raw_checksum = NULL; + g_autofree char *checksum = NULL; + guint64 length; + + g_file_info_set_name (file_info, filename); + g_file_info_set_file_type (file_info, G_FILE_TYPE_SYMBOLIC_LINK); + g_file_info_set_size (file_info, 0); + g_file_info_set_attribute_uint32 (file_info, "unix::uid", 0); + g_file_info_set_attribute_uint32 (file_info, "unix::gid", 0); + g_file_info_set_attribute_uint32 (file_info, "unix::mode", S_IFLNK | 0777); + + g_file_info_set_attribute_boolean (file_info, "standard::is-symlink", TRUE); + g_file_info_set_attribute_byte_string (file_info, "standard::symlink-target", target); + + if (!ostree_raw_file_to_content_stream (NULL, file_info, NULL, + &content_stream, &length, + NULL, error)) + return FALSE; + + if (!ostree_repo_write_content (repo, NULL, content_stream, length, + &raw_checksum, NULL, error)) + return FALSE; + + checksum = ostree_checksum_from_bytes (raw_checksum); + + if (!ostree_mutable_tree_replace_file (parent, filename, checksum, error)) + return FALSE; + + return TRUE; +} + +gboolean +flatpak_mtree_add_file_from_bytes (OstreeRepo *repo, + GBytes *bytes, + OstreeMutableTree *parent, + const char *filename, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GFileInfo) info = g_file_info_new (); + g_autoptr(GInputStream) memstream = NULL; + g_autoptr(GInputStream) content_stream = NULL; + g_autofree guchar *raw_checksum = NULL; + g_autofree char *checksum = NULL; + guint64 length; + + g_file_info_set_attribute_uint32 (info, "standard::type", G_FILE_TYPE_REGULAR); + g_file_info_set_attribute_uint64 (info, "standard::size", g_bytes_get_size (bytes)); + g_file_info_set_attribute_uint32 (info, "unix::uid", 0); + g_file_info_set_attribute_uint32 (info, "unix::gid", 0); + g_file_info_set_attribute_uint32 (info, "unix::mode", S_IFREG | 0644); + + memstream = g_memory_input_stream_new_from_bytes (bytes); + + if (!ostree_raw_file_to_content_stream (memstream, info, NULL, + &content_stream, &length, + cancellable, error)) + return FALSE; + + if (!ostree_repo_write_content (repo, NULL, content_stream, length, + &raw_checksum, cancellable, error)) + return FALSE; + + checksum = ostree_checksum_from_bytes (raw_checksum); + + if (!ostree_mutable_tree_replace_file (parent, filename, checksum, error)) + return FALSE; + + return TRUE; +} + +gboolean +flatpak_mtree_ensure_dir_metadata (OstreeRepo *repo, + OstreeMutableTree *mtree, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GVariant) dirmeta = NULL; + g_autoptr(GFileInfo) file_info = g_file_info_new (); + g_autofree guchar *csum = NULL; + g_autofree char *checksum = NULL; + + g_file_info_set_name (file_info, "/"); + g_file_info_set_file_type (file_info, G_FILE_TYPE_DIRECTORY); + g_file_info_set_attribute_uint32 (file_info, "unix::uid", 0); + g_file_info_set_attribute_uint32 (file_info, "unix::gid", 0); + g_file_info_set_attribute_uint32 (file_info, "unix::mode", 040755); + + dirmeta = ostree_create_directory_metadata (file_info, NULL); + if (!ostree_repo_write_metadata (repo, OSTREE_OBJECT_TYPE_DIR_META, NULL, + dirmeta, &csum, cancellable, error)) + return FALSE; + + checksum = ostree_checksum_from_bytes (csum); + ostree_mutable_tree_set_metadata_checksum (mtree, checksum); + + return TRUE; +} + +static gboolean +copy_icon (const char *id, + GFile *icons_dir, + OstreeRepo *repo, + OstreeMutableTree *size_mtree, + const char *size, + GError **error) +{ + g_autofree char *icon_name = g_strconcat (id, ".png", NULL); + g_autoptr(GFile) size_dir = g_file_get_child (icons_dir, size); + g_autoptr(GFile) icon_file = g_file_get_child (size_dir, icon_name); + const char *checksum; + + if (!ostree_repo_file_ensure_resolved (OSTREE_REPO_FILE(icon_file), NULL)) + { + g_info ("No icon at size %s for %s", size, id); + return TRUE; + } + + checksum = ostree_repo_file_get_checksum (OSTREE_REPO_FILE(icon_file)); + if (!ostree_mutable_tree_replace_file (size_mtree, icon_name, checksum, error)) + return FALSE; + + return TRUE; +} + +static gboolean +extract_appstream (OstreeRepo *repo, + FlatpakXml *appstream_root, + FlatpakDecomposed *ref, + const char *id, + OstreeMutableTree *size1_mtree, + OstreeMutableTree *size2_mtree, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GFile) root = NULL; + g_autoptr(GFile) app_info_dir = NULL; + g_autoptr(GFile) xmls_dir = NULL; + g_autoptr(GFile) icons_dir = NULL; + g_autoptr(GFile) appstream_file = NULL; + g_autoptr(GFile) metadata = NULL; + g_autofree char *appstream_basename = NULL; + g_autoptr(GInputStream) in = NULL; + g_autoptr(FlatpakXml) xml_root = NULL; + g_autoptr(GKeyFile) keyfile = NULL; + + if (!ostree_repo_read_commit (repo, flatpak_decomposed_get_ref (ref), &root, NULL, NULL, error)) + return FALSE; + + keyfile = g_key_file_new (); + metadata = g_file_get_child (root, "metadata"); + if (g_file_query_exists (metadata, cancellable)) + { + g_autofree char *content = NULL; + gsize len; + + if (!g_file_load_contents (metadata, cancellable, &content, &len, NULL, error)) + return FALSE; + + if (!g_key_file_load_from_data (keyfile, content, len, G_KEY_FILE_NONE, error)) + return FALSE; + } + + app_info_dir = g_file_resolve_relative_path (root, "files/share/app-info"); + + xmls_dir = g_file_resolve_relative_path (app_info_dir, "xmls"); + icons_dir = g_file_resolve_relative_path (app_info_dir, "icons/flatpak"); + + appstream_basename = g_strconcat (id, ".xml.gz", NULL); + appstream_file = g_file_get_child (xmls_dir, appstream_basename); + + in = (GInputStream *) g_file_read (appstream_file, cancellable, error); + if (!in) + return FALSE; + + xml_root = flatpak_xml_parse (in, TRUE, cancellable, error); + if (xml_root == NULL) + return FALSE; + + if (flatpak_appstream_xml_migrate (xml_root, appstream_root, + flatpak_decomposed_get_ref (ref), id, keyfile)) + { + g_autoptr(GError) my_error = NULL; + FlatpakXml *components = appstream_root->first_child; + FlatpakXml *component = components->first_child; + + while (component != NULL) + { + FlatpakXml *component_id, *component_id_text_node; + g_autofree char *component_id_text = NULL; + char *component_id_suffix; + + if (g_strcmp0 (component->element_name, "component") != 0) + { + component = component->next_sibling; + continue; + } + + component_id = flatpak_xml_find (component, "id", NULL); + component_id_text_node = flatpak_xml_find (component_id, NULL, NULL); + + component_id_text = g_strstrip (g_strdup (component_id_text_node->text)); + + /* We're looking for a component that matches the app-id (id), but it + may have some further elements (separated by dot) and can also have + ".desktop" at the end which we need to strip out. Further complicating + things, some actual app ids ends in .desktop, such as org.telegram.desktop. */ + + component_id_suffix = component_id_text + strlen (id); /* Don't deref before we check for prefix match! */ + if (!g_str_has_prefix (component_id_text, id) || + (component_id_suffix[0] != 0 && component_id_suffix[0] != '.')) + { + component = component->next_sibling; + continue; + } + + if (g_str_has_suffix (component_id_suffix, ".desktop")) + component_id_suffix[strlen (component_id_suffix) - strlen (".desktop")] = 0; + + if (!copy_icon (component_id_text, icons_dir, repo, size1_mtree, "64x64", &my_error)) + { + g_print (_("Error copying 64x64 icon for component %s: %s\n"), component_id_text, my_error->message); + g_clear_error (&my_error); + } + + if (!copy_icon (component_id_text, icons_dir, repo, size2_mtree, "128x128", &my_error)) + { + g_print (_("Error copying 128x128 icon for component %s: %s\n"), component_id_text, my_error->message); + g_clear_error (&my_error); + } + + + /* We might match other prefixes, so keep on going */ + component = component->next_sibling; + } + } + + return TRUE; +} + +/* This is similar to ostree_repo_list_refs(), but returns only valid flatpak + * refs, as FlatpakDecomposed. */ +static GHashTable * +flatpak_repo_list_flatpak_refs (OstreeRepo *repo, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GHashTable) refspecs = NULL; + g_autoptr(GHashTable) refs = NULL; + GHashTableIter iter; + gpointer key, value; + + if (!ostree_repo_list_refs_ext (repo, NULL, &refspecs, + OSTREE_REPO_LIST_REFS_EXT_EXCLUDE_REMOTES | OSTREE_REPO_LIST_REFS_EXT_EXCLUDE_MIRRORS, + cancellable, error)) + return NULL; + + refs = g_hash_table_new_full ((GHashFunc)flatpak_decomposed_hash, (GEqualFunc)flatpak_decomposed_equal, (GDestroyNotify)flatpak_decomposed_unref, g_free); + + g_hash_table_iter_init (&iter, refspecs); + while (g_hash_table_iter_next (&iter, &key, &value)) + { + const char *refstr = key; + const char *checksum = value; + FlatpakDecomposed *ref = NULL; + + ref = flatpak_decomposed_new_from_ref_take ((char *)refstr, NULL); + if (ref) + { + g_hash_table_iter_steal (&iter); + g_hash_table_insert (refs, ref, (char *)checksum); + } + } + + return g_steal_pointer (&refs); +} + +static gboolean +_flatpak_repo_generate_appstream (OstreeRepo *repo, + const char **gpg_key_ids, + const char *gpg_homedir, + FlatpakDecomposed **all_refs_keys, + guint n_keys, + GHashTable *all_commits, + const char *arch, + const char *subset, + guint64 timestamp, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(FlatpakXml) appstream_root = NULL; + g_autoptr(GBytes) xml_data = NULL; + g_autoptr(GBytes) xml_gz_data = NULL; + g_autoptr(OstreeMutableTree) mtree = ostree_mutable_tree_new (); + g_autoptr(OstreeMutableTree) icons_mtree = NULL; + g_autoptr(OstreeMutableTree) icons_flatpak_mtree = NULL; + g_autoptr(OstreeMutableTree) size1_mtree = NULL; + g_autoptr(OstreeMutableTree) size2_mtree = NULL; + const char *compat_arch; + compat_arch = flatpak_get_compat_arch (arch); + const char *branch_names[] = { "appstream", "appstream2" }; + const char *collection_id; + + if (subset != NULL && *subset != 0) + g_info ("Generating appstream for %s, subset %s", arch, subset); + else + g_info ("Generating appstream for %s", arch); + + collection_id = ostree_repo_get_collection_id (repo); + + if (!flatpak_mtree_ensure_dir_metadata (repo, mtree, cancellable, error)) + return FALSE; + + if (!flatpak_mtree_create_dir (repo, mtree, "icons", &icons_mtree, error)) + return FALSE; + + if (!flatpak_mtree_create_dir (repo, icons_mtree, "64x64", &size1_mtree, error)) + return FALSE; + + if (!flatpak_mtree_create_dir (repo, icons_mtree, "128x128", &size2_mtree, error)) + return FALSE; + + /* For compatibility with libappstream we create a $origin ("flatpak") subdirectory with symlinks + * to the size directories thus matching the standard merged appstream layout if we assume the + * appstream has origin=flatpak, which flatpak-builder creates. + * + * See https://github.com/ximion/appstream/pull/224 for details. + */ + if (!flatpak_mtree_create_dir (repo, icons_mtree, "flatpak", &icons_flatpak_mtree, error)) + return FALSE; + if (!flatpak_mtree_create_symlink (repo, icons_flatpak_mtree, "64x64", "../64x64", error)) + return FALSE; + if (!flatpak_mtree_create_symlink (repo, icons_flatpak_mtree, "128x128", "../128x128", error)) + return FALSE; + + appstream_root = flatpak_appstream_xml_new (); + + for (int i = 0; i < n_keys; i++) + { + FlatpakDecomposed *ref = all_refs_keys[i]; + GVariant *commit_v = NULL; + VarMetadataRef commit_metadata; + g_autoptr(GError) my_error = NULL; + g_autofree char *id = NULL; + + if (!flatpak_decomposed_is_arch (ref, arch)) + { + g_autoptr(FlatpakDecomposed) main_ref = NULL; + + /* Include refs that don't match the main arch (e.g. x86_64), if they match + the compat arch (e.g. i386) and the main arch version is not in the repo */ + if (compat_arch != NULL && flatpak_decomposed_is_arch (ref, compat_arch)) + main_ref = flatpak_decomposed_new_from_decomposed (ref, 0, NULL, compat_arch, NULL, NULL); + + if (main_ref == NULL || + g_hash_table_lookup (all_commits, main_ref)) + continue; + } + + commit_v = g_hash_table_lookup (all_commits, ref); + g_assert (commit_v != NULL); + + commit_metadata = var_commit_get_metadata (var_commit_from_gvariant (commit_v)); + if (var_metadata_lookup (commit_metadata, OSTREE_COMMIT_META_KEY_ENDOFLIFE, NULL, NULL) || + var_metadata_lookup (commit_metadata, OSTREE_COMMIT_META_KEY_ENDOFLIFE_REBASE, NULL, NULL)) + { + g_info (_("%s is end-of-life, ignoring for appstream"), flatpak_decomposed_get_ref (ref)); + continue; + } + + if (*subset != 0) + { + VarVariantRef xa_subsets_v; + gboolean in_subset = FALSE; + + if (var_metadata_lookup (commit_metadata, "xa.subsets", NULL, &xa_subsets_v)) + { + VarArrayofstringRef xa_subsets = var_arrayofstring_from_variant (xa_subsets_v); + gsize len = var_arrayofstring_get_length (xa_subsets); + + for (gsize j = 0; j < len; j++) + { + const char *xa_subset = var_arrayofstring_get_at (xa_subsets, j); + if (strcmp (subset, xa_subset) == 0) + { + in_subset = TRUE; + break; + } + } + } + + if (!in_subset) + continue; + } + + id = flatpak_decomposed_dup_id (ref); + if (!extract_appstream (repo, appstream_root, + ref, id, size1_mtree, size2_mtree, + cancellable, &my_error)) + { + if (flatpak_decomposed_is_app (ref)) + g_print (_("No appstream data for %s: %s\n"), flatpak_decomposed_get_ref (ref), my_error->message); + continue; + } + } + + if (!flatpak_appstream_xml_root_to_data (appstream_root, &xml_data, &xml_gz_data, error)) + return FALSE; + + for (int i = 0; i < G_N_ELEMENTS (branch_names); i++) + { + gboolean skip_commit = FALSE; + const char *branch_prefix = branch_names[i]; + g_autoptr(GFile) root = NULL; + g_autofree char *branch = NULL; + g_autofree char *parent = NULL; + g_autofree char *commit_checksum = NULL; + + if (*subset != 0 && i == 0) + continue; /* No old-style branch for subsets */ + + if (*subset != 0) + branch = g_strdup_printf ("%s/%s-%s", branch_prefix, subset, arch); + else + branch = g_strdup_printf ("%s/%s", branch_prefix, arch); + + if (!flatpak_repo_resolve_rev (repo, collection_id, NULL, branch, TRUE, + &parent, cancellable, error)) + return FALSE; + + if (i == 0) + { + if (!flatpak_mtree_add_file_from_bytes (repo, xml_gz_data, mtree, "appstream.xml.gz", cancellable, error)) + return FALSE; + } + else + { + if (!ostree_mutable_tree_remove (mtree, "appstream.xml.gz", TRUE, error)) + return FALSE; + + if (!flatpak_mtree_add_file_from_bytes (repo, xml_data, mtree, "appstream.xml", cancellable, error)) + return FALSE; + } + + if (!ostree_repo_write_mtree (repo, mtree, &root, cancellable, error)) + return FALSE; + + /* No need to commit if nothing changed */ + if (parent) + { + g_autoptr(GFile) parent_root = NULL; + + if (!ostree_repo_read_commit (repo, parent, &parent_root, NULL, cancellable, error)) + return FALSE; + + if (g_file_equal (root, parent_root)) + { + skip_commit = TRUE; + g_info ("Not updating %s, no change", branch); + } + } + + if (!skip_commit) + { + g_autoptr(GVariantDict) metadata_dict = NULL; + g_autoptr(GVariant) metadata = NULL; + + /* Add bindings to the metadata. Do this even if P2P support is not + * enabled, as it might be enable for other flatpak builds. */ + metadata_dict = g_variant_dict_new (NULL); + g_variant_dict_insert (metadata_dict, "ostree.collection-binding", + "s", (collection_id != NULL) ? collection_id : ""); + g_variant_dict_insert_value (metadata_dict, "ostree.ref-binding", + g_variant_new_strv ((const gchar * const *) &branch, 1)); + metadata = g_variant_ref_sink (g_variant_dict_end (metadata_dict)); + + if (timestamp > 0) + { + if (!ostree_repo_write_commit_with_time (repo, parent, "Update", NULL, metadata, + OSTREE_REPO_FILE (root), + timestamp, + &commit_checksum, + cancellable, error)) + return FALSE; + } + else + { + if (!ostree_repo_write_commit (repo, parent, "Update", NULL, metadata, + OSTREE_REPO_FILE (root), + &commit_checksum, cancellable, error)) + return FALSE; + } + + if (gpg_key_ids) + { + for (int j = 0; gpg_key_ids[j] != NULL; j++) + { + const char *keyid = gpg_key_ids[j]; + + if (!ostree_repo_sign_commit (repo, + commit_checksum, + keyid, + gpg_homedir, + cancellable, + error)) + return FALSE; + } + } + + g_info ("Creating appstream branch %s", branch); + if (collection_id != NULL) + { + const OstreeCollectionRef collection_ref = { (char *) collection_id, branch }; + ostree_repo_transaction_set_collection_ref (repo, &collection_ref, commit_checksum); + } + else + { + ostree_repo_transaction_set_ref (repo, NULL, branch, commit_checksum); + } + } + } + + return TRUE; +} + +gboolean +flatpak_repo_generate_appstream (OstreeRepo *repo, + const char **gpg_key_ids, + const char *gpg_homedir, + guint64 timestamp, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GHashTable) all_refs = NULL; + g_autoptr(GHashTable) all_commits = NULL; + g_autofree FlatpakDecomposed **all_refs_keys = NULL; + guint n_keys; + g_autoptr(GPtrArray) arches = NULL; /* (element-type utf8 utf8) */ + g_autoptr(GPtrArray) subsets = NULL; /* (element-type utf8 utf8) */ + g_autoptr(FlatpakRepoTransaction) transaction = NULL; + OstreeRepoTransactionStats stats; + + arches = g_ptr_array_new_with_free_func (g_free); + subsets = g_ptr_array_new_with_free_func (g_free); + + g_ptr_array_add (subsets, g_strdup ("")); + + all_refs = flatpak_repo_list_flatpak_refs (repo, cancellable, error); + if (all_refs == NULL) + return FALSE; + + all_commits = g_hash_table_new_full ((GHashFunc)flatpak_decomposed_hash, (GEqualFunc)flatpak_decomposed_equal, (GDestroyNotify)flatpak_decomposed_unref, (GDestroyNotify)g_variant_unref); + + GLNX_HASH_TABLE_FOREACH_KV (all_refs, FlatpakDecomposed *, ref, const char *, commit) + { + VarMetadataRef commit_metadata; + VarVariantRef xa_subsets_v; + const char *reverse_compat_arch; + char *new_arch = NULL; + g_autoptr(GVariant) commit_v = NULL; + + if (!ostree_repo_load_variant (repo, OSTREE_OBJECT_TYPE_COMMIT, commit, &commit_v, NULL)) + { + g_warning ("Couldn't load commit %s (ref %s)", commit, flatpak_decomposed_get_ref (ref)); + continue; + } + + g_hash_table_insert (all_commits, flatpak_decomposed_ref (ref), g_variant_ref (commit_v)); + + /* Compute list of subsets */ + commit_metadata = var_commit_get_metadata (var_commit_from_gvariant (commit_v)); + if (var_metadata_lookup (commit_metadata, "xa.subsets", NULL, &xa_subsets_v)) + { + VarArrayofstringRef xa_subsets = var_arrayofstring_from_variant (xa_subsets_v); + gsize len = var_arrayofstring_get_length (xa_subsets); + for (gsize j = 0; j < len; j++) + { + const char *subset = var_arrayofstring_get_at (xa_subsets, j); + + if (!flatpak_g_ptr_array_contains_string (subsets, subset)) + g_ptr_array_add (subsets, g_strdup (subset)); + } + } + + /* Compute list of arches */ + if (!flatpak_decomposed_is_arches (ref, arches->len, (const char **) arches->pdata)) + { + new_arch = flatpak_decomposed_dup_arch (ref); + g_ptr_array_add (arches, new_arch); + + /* If repo contains e.g. i386, also generated x86-64 appdata */ + reverse_compat_arch = flatpak_get_compat_arch_reverse (new_arch); + if (reverse_compat_arch != NULL && + !flatpak_g_ptr_array_contains_string (arches, reverse_compat_arch)) + g_ptr_array_add (arches, g_strdup (reverse_compat_arch)); + } + } + + g_ptr_array_sort (subsets, flatpak_strcmp0_ptr); + g_ptr_array_sort (arches, flatpak_strcmp0_ptr); + + all_refs_keys = (FlatpakDecomposed **) g_hash_table_get_keys_as_array (all_refs, &n_keys); + + /* Sort refs so that appdata order is stable for e.g. deltas */ + qsort (all_refs_keys, n_keys, sizeof (FlatpakDecomposed *), + (GCompareFunc) flatpak_decomposed_strcmp_p); + + transaction = flatpak_repo_transaction_start (repo, cancellable, error); + if (transaction == NULL) + return FALSE; + + for (int l = 0; l < subsets->len; l++) + { + const char *subset = g_ptr_array_index (subsets, l); + + for (int k = 0; k < arches->len; k++) + { + const char *arch = g_ptr_array_index (arches, k); + + if (!_flatpak_repo_generate_appstream (repo, + gpg_key_ids, + gpg_homedir, + all_refs_keys, + n_keys, + all_commits, + arch, + subset, + timestamp, + cancellable, + error)) + return FALSE; + } + } + + if (!ostree_repo_commit_transaction (repo, &stats, cancellable, error)) + return FALSE; + + return TRUE; +} + +#define OSTREE_STATIC_DELTA_META_ENTRY_FORMAT "(uayttay)" +#define OSTREE_STATIC_DELTA_FALLBACK_FORMAT "(yaytt)" +#define OSTREE_STATIC_DELTA_SUPERBLOCK_FORMAT "(a{sv}tayay" OSTREE_COMMIT_GVARIANT_STRING "aya" OSTREE_STATIC_DELTA_META_ENTRY_FORMAT "a" OSTREE_STATIC_DELTA_FALLBACK_FORMAT ")" + +static inline guint64 +maybe_swap_endian_u64 (gboolean swap, + guint64 v) +{ + if (!swap) + return v; + return GUINT64_SWAP_LE_BE (v); +} + +static guint64 +flatpak_bundle_get_installed_size (GVariant *bundle, gboolean byte_swap) +{ + guint64 total_usize = 0; + g_autoptr(GVariant) meta_entries = NULL; + guint i, n_parts; + + g_variant_get_child (bundle, 6, "@a" OSTREE_STATIC_DELTA_META_ENTRY_FORMAT, &meta_entries); + n_parts = g_variant_n_children (meta_entries); + + for (i = 0; i < n_parts; i++) + { + guint32 version; + guint64 size, usize; + g_autoptr(GVariant) objects = NULL; + + g_variant_get_child (meta_entries, i, "(u@aytt@ay)", + &version, NULL, &size, &usize, &objects); + + total_usize += maybe_swap_endian_u64 (byte_swap, usize); + } + + return total_usize; +} + +GVariant * +flatpak_bundle_load (GFile *file, + char **commit, + FlatpakDecomposed **ref, + char **origin, + char **runtime_repo, + char **app_metadata, + guint64 *installed_size, + GBytes **gpg_keys, + char **collection_id, + GError **error) +{ + g_autoptr(GVariant) delta = NULL; + g_autoptr(GVariant) metadata = NULL; + g_autoptr(GBytes) bytes = NULL; + g_autoptr(GBytes) copy = NULL; + g_autoptr(GVariant) to_csum_v = NULL; + + guint8 endianness_char; + gboolean byte_swap = FALSE; + + GMappedFile *mfile = g_mapped_file_new (flatpak_file_get_path_cached (file), FALSE, error); + + if (mfile == NULL) + return NULL; + + bytes = g_mapped_file_get_bytes (mfile); + g_mapped_file_unref (mfile); + + delta = g_variant_new_from_bytes (G_VARIANT_TYPE (OSTREE_STATIC_DELTA_SUPERBLOCK_FORMAT), bytes, FALSE); + g_variant_ref_sink (delta); + + to_csum_v = g_variant_get_child_value (delta, 3); + if (!ostree_validate_structureof_csum_v (to_csum_v, error)) + return NULL; + + metadata = g_variant_get_child_value (delta, 0); + + if (g_variant_lookup (metadata, "ostree.endianness", "y", &endianness_char)) + { + int file_byte_order = G_BYTE_ORDER; + switch (endianness_char) + { + case 'l': + file_byte_order = G_LITTLE_ENDIAN; + break; + + case 'B': + file_byte_order = G_BIG_ENDIAN; + break; + + default: + break; + } + byte_swap = (G_BYTE_ORDER != file_byte_order); + } + + if (commit) + *commit = ostree_checksum_from_bytes_v (to_csum_v); + + if (installed_size) + *installed_size = flatpak_bundle_get_installed_size (delta, byte_swap); + + if (ref != NULL) + { + FlatpakDecomposed *the_ref = NULL; + g_autofree char *ref_str = NULL; + + if (!g_variant_lookup (metadata, "ref", "s", &ref_str)) + { + flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Invalid bundle, no ref in metadata")); + return NULL; + } + + the_ref = flatpak_decomposed_new_from_ref (ref_str, error); + if (the_ref == NULL) + return NULL; + + g_clear_pointer (ref, flatpak_decomposed_unref); + *ref = the_ref; + } + + if (origin != NULL) + { + if (!g_variant_lookup (metadata, "origin", "s", origin)) + *origin = NULL; + } + + if (runtime_repo != NULL) + { + if (!g_variant_lookup (metadata, "runtime-repo", "s", runtime_repo)) + *runtime_repo = NULL; + } + + if (collection_id != NULL) + { + if (!g_variant_lookup (metadata, "collection-id", "s", collection_id)) + { + *collection_id = NULL; + } + else if (**collection_id == '\0') + { + g_free (*collection_id); + *collection_id = NULL; + } + } + + if (app_metadata != NULL) + { + if (!g_variant_lookup (metadata, "metadata", "s", app_metadata)) + *app_metadata = NULL; + } + + if (gpg_keys != NULL) + { + g_autoptr(GVariant) gpg_value = g_variant_lookup_value (metadata, "gpg-keys", + G_VARIANT_TYPE ("ay")); + if (gpg_value) + { + gsize n_elements; + const char *data = g_variant_get_fixed_array (gpg_value, &n_elements, 1); + *gpg_keys = g_bytes_new (data, n_elements); + } + else + { + *gpg_keys = NULL; + } + } + + /* Make a copy of the data so we can return it after freeing the file */ + copy = g_bytes_new (g_variant_get_data (metadata), + g_variant_get_size (metadata)); + return g_variant_ref_sink (g_variant_new_from_bytes (g_variant_get_type (metadata), + copy, + FALSE)); +} + +gboolean +flatpak_pull_from_bundle (OstreeRepo *repo, + GFile *file, + const char *remote, + const char *ref, + gboolean require_gpg_signature, + GCancellable *cancellable, + GError **error) +{ + gsize metadata_size = 0; + g_autofree char *metadata_contents = NULL; + g_autofree char *to_checksum = NULL; + g_autoptr(GFile) root = NULL; + g_autoptr(GFile) metadata_file = NULL; + g_autoptr(GInputStream) in = NULL; + g_autoptr(OstreeGpgVerifyResult) gpg_result = NULL; + g_autoptr(GError) my_error = NULL; + g_autoptr(GVariant) metadata = NULL; + gboolean metadata_valid; + g_autofree char *remote_collection_id = NULL; + g_autofree char *collection_id = NULL; + + metadata = flatpak_bundle_load (file, &to_checksum, NULL, NULL, NULL, &metadata_contents, NULL, NULL, &collection_id, error); + if (metadata == NULL) + return FALSE; + + if (metadata_contents != NULL) + metadata_size = strlen (metadata_contents); + + if (!ostree_repo_get_remote_option (repo, remote, "collection-id", NULL, + &remote_collection_id, NULL)) + remote_collection_id = NULL; + + if (remote_collection_id != NULL && collection_id != NULL && + strcmp (remote_collection_id, collection_id) != 0) + return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote"), + collection_id, remote_collection_id); + + if (!ostree_repo_prepare_transaction (repo, NULL, cancellable, error)) + return FALSE; + + /* Don’t need to set the collection ID here, since the remote binds this ref to the collection. */ + ostree_repo_transaction_set_ref (repo, remote, ref, to_checksum); + + if (!ostree_repo_static_delta_execute_offline (repo, + file, + FALSE, + cancellable, + error)) + return FALSE; + + gpg_result = ostree_repo_verify_commit_ext (repo, to_checksum, + NULL, NULL, cancellable, &my_error); + if (gpg_result == NULL) + { + /* no gpg signature, we ignore this *if* there is no gpg key + * specified in the bundle or by the user */ + if (g_error_matches (my_error, OSTREE_GPG_ERROR, OSTREE_GPG_ERROR_NO_SIGNATURE) && + !require_gpg_signature) + { + g_clear_error (&my_error); + } + else + { + g_propagate_error (error, g_steal_pointer (&my_error)); + return FALSE; + } + } + else + { + /* If there is no valid gpg signature we fail, unless there is no gpg + key specified (on the command line or in the file) because then we + trust the source bundle. */ + if (ostree_gpg_verify_result_count_valid (gpg_result) == 0 && + require_gpg_signature) + return flatpak_fail_error (error, FLATPAK_ERROR_UNTRUSTED, _("GPG signatures found, but none are in trusted keyring")); + } + + if (!ostree_repo_read_commit (repo, to_checksum, &root, NULL, NULL, error)) + return FALSE; + + if (!ostree_repo_commit_transaction (repo, NULL, cancellable, error)) + return FALSE; + + /* We ensure that the actual installed metadata matches the one in the + header, because you may have made decisions on whether to install it or not + based on that data. */ + metadata_file = g_file_resolve_relative_path (root, "metadata"); + in = (GInputStream *) g_file_read (metadata_file, cancellable, NULL); + if (in != NULL) + { + g_autoptr(GMemoryOutputStream) data_stream = (GMemoryOutputStream *) g_memory_output_stream_new_resizable (); + + if (g_output_stream_splice (G_OUTPUT_STREAM (data_stream), in, + G_OUTPUT_STREAM_SPLICE_CLOSE_SOURCE, + cancellable, error) < 0) + return FALSE; + + metadata_valid = + metadata_contents != NULL && + metadata_size == g_memory_output_stream_get_data_size (data_stream) && + memcmp (metadata_contents, g_memory_output_stream_get_data (data_stream), metadata_size) == 0; + } + else + { + metadata_valid = (metadata_contents == NULL); + } + + if (!metadata_valid) + { + /* Immediately remove this broken commit */ + ostree_repo_set_ref_immediate (repo, remote, ref, NULL, cancellable, error); + return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Metadata in header and app are inconsistent")); + } + + return TRUE; +} diff --git a/subprojects/bubblewrap/network.h b/common/flatpak-run-cups-private.h similarity index 57% rename from subprojects/bubblewrap/network.h rename to common/flatpak-run-cups-private.h index 3346b49..13c0b6d 100644 --- a/subprojects/bubblewrap/network.h +++ b/common/flatpak-run-cups-private.h @@ -1,22 +1,32 @@ -/* bubblewrap - * Copyright (C) 2016 Alexander Larsson - * SPDX-License-Identifier: LGPL-2.0-or-later +/* + * Copyright © 2014 Red Hat, Inc * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. + * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library. If not, see . * + * Authors: + * Alexander Larsson */ #pragma once -void loopback_setup (void); +#include "libglnx.h" + +#include "flatpak-bwrap-private.h" +#include "flatpak-common-types-private.h" + +G_BEGIN_DECLS + +void flatpak_run_add_cups_args (FlatpakBwrap *bwrap); + +G_END_DECLS diff --git a/common/flatpak-run-cups.c b/common/flatpak-run-cups.c new file mode 100644 index 0000000..c355e0f --- /dev/null +++ b/common/flatpak-run-cups.c @@ -0,0 +1,127 @@ +/* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: + * Copyright © 2014-2019 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#include "config.h" +#include "flatpak-run-cups-private.h" + +#include "flatpak-utils-private.h" + +static gboolean +flatpak_run_cups_check_server_is_socket (const char *server) +{ + if (g_str_has_prefix (server, "/") && strstr (server, ":") == NULL) + return TRUE; + + return FALSE; +} + +/* Try to find a default server from a cups confguration file */ +static char * +flatpak_run_get_cups_server_name_config (const char *path) +{ + g_autoptr(GFile) file = g_file_new_for_path (path); + g_autoptr(GError) my_error = NULL; + g_autoptr(GFileInputStream) input_stream = NULL; + g_autoptr(GDataInputStream) data_stream = NULL; + size_t len; + + input_stream = g_file_read (file, NULL, &my_error); + if (my_error) + { + g_info ("CUPS configuration file '%s': %s", path, my_error->message); + return NULL; + } + + data_stream = g_data_input_stream_new (G_INPUT_STREAM (input_stream)); + + while (TRUE) + { + g_autofree char *line = g_data_input_stream_read_line (data_stream, &len, NULL, NULL); + if (line == NULL) + break; + + g_strchug (line); + + if ((*line == '\0') || (*line == '#')) + continue; + + g_auto(GStrv) tokens = g_strsplit (line, " ", 2); + + if ((tokens[0] != NULL) && (tokens[1] != NULL)) + { + if (strcmp ("ServerName", tokens[0]) == 0) + { + g_strchug (tokens[1]); + + if (flatpak_run_cups_check_server_is_socket (tokens[1])) + return g_strdup (tokens[1]); + } + } + } + + return NULL; +} + +static char * +flatpak_run_get_cups_server_name (void) +{ + g_autofree char * cups_server = NULL; + g_autofree char * cups_config_path = NULL; + + /* TODO + * we don't currently support cups servers located on the network, if such + * server is detected, we simply ignore it and in the worst case we fallback + * to the default socket + */ + cups_server = g_strdup (g_getenv ("CUPS_SERVER")); + if (cups_server && flatpak_run_cups_check_server_is_socket (cups_server)) + return g_steal_pointer (&cups_server); + g_clear_pointer (&cups_server, g_free); + + cups_config_path = g_build_filename (g_get_home_dir (), ".cups/client.conf", NULL); + cups_server = flatpak_run_get_cups_server_name_config (cups_config_path); + if (cups_server && flatpak_run_cups_check_server_is_socket (cups_server)) + return g_steal_pointer (&cups_server); + g_clear_pointer (&cups_server, g_free); + + cups_server = flatpak_run_get_cups_server_name_config ("/etc/cups/client.conf"); + if (cups_server && flatpak_run_cups_check_server_is_socket (cups_server)) + return g_steal_pointer (&cups_server); + + // Fallback to default socket + return g_strdup ("/var/run/cups/cups.sock"); +} + +void +flatpak_run_add_cups_args (FlatpakBwrap *bwrap) +{ + g_autofree char * sandbox_server_name = g_strdup ("/var/run/cups/cups.sock"); + g_autofree char * cups_server_name = flatpak_run_get_cups_server_name (); + + if (!g_file_test (cups_server_name, G_FILE_TEST_EXISTS)) + { + g_info ("Could not find CUPS server"); + return; + } + + flatpak_bwrap_add_args (bwrap, + "--ro-bind", cups_server_name, sandbox_server_name, + NULL); +} diff --git a/common/flatpak-run-dbus-private.h b/common/flatpak-run-dbus-private.h new file mode 100644 index 0000000..bfbe107 --- /dev/null +++ b/common/flatpak-run-dbus-private.h @@ -0,0 +1,53 @@ +/* + * Copyright © 2014 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#pragma once + +#include "libglnx.h" + +#include "flatpak-bwrap-private.h" +#include "flatpak-common-types-private.h" +#include "flatpak-context-private.h" + +G_BEGIN_DECLS + +gboolean flatpak_run_add_session_dbus_args (FlatpakBwrap *app_bwrap, + FlatpakBwrap *proxy_arg_bwrap, + FlatpakContext *context, + FlatpakRunFlags flags, + const char *app_id); + +gboolean flatpak_run_add_system_dbus_args (FlatpakBwrap *app_bwrap, + FlatpakBwrap *proxy_arg_bwrap, + FlatpakContext *context, + FlatpakRunFlags flags); + +gboolean flatpak_run_add_a11y_dbus_args (FlatpakBwrap *app_bwrap, + FlatpakBwrap *proxy_arg_bwrap, + FlatpakContext *context, + FlatpakRunFlags flags, + const char *app_id); + +gboolean flatpak_run_maybe_start_dbus_proxy (FlatpakBwrap *app_bwrap, + FlatpakBwrap *proxy_arg_bwrap, + const char *app_info_path, + GError **error); + +G_END_DECLS diff --git a/common/flatpak-run-dbus.c b/common/flatpak-run-dbus.c new file mode 100644 index 0000000..e33f093 --- /dev/null +++ b/common/flatpak-run-dbus.c @@ -0,0 +1,464 @@ +/* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: + * Copyright © 2014-2019 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#include "config.h" +#include "flatpak-run-dbus-private.h" + +#include + +#include + +#include "flatpak-utils-private.h" + +/* This wraps the argv in a bwrap call, primary to allow the + command to be run with a proper /.flatpak-info with data + taken from app_info_path */ +static gboolean +add_bwrap_wrapper (FlatpakBwrap *bwrap, + const char *app_info_path, + GError **error) +{ + glnx_autofd int app_info_fd = -1; + g_auto(GLnxDirFdIterator) dir_iter = { 0 }; + struct dirent *dent; + g_autofree char *user_runtime_dir = flatpak_get_real_xdg_runtime_dir (); + g_autofree char *proxy_socket_dir = g_build_filename (user_runtime_dir, ".dbus-proxy/", NULL); + + app_info_fd = open (app_info_path, O_RDONLY | O_CLOEXEC); + if (app_info_fd == -1) + return glnx_throw_errno_prefix (error, _("Failed to open app info file")); + + if (!glnx_dirfd_iterator_init_at (AT_FDCWD, "/", FALSE, &dir_iter, error)) + return FALSE; + + flatpak_bwrap_add_arg (bwrap, flatpak_get_bwrap ()); + + while (TRUE) + { + glnx_autofd int o_path_fd = -1; + struct statfs stfs; + + if (!glnx_dirfd_iterator_next_dent_ensure_dtype (&dir_iter, &dent, NULL, error)) + return FALSE; + + if (dent == NULL) + break; + + if (strcmp (dent->d_name, ".flatpak-info") == 0) + continue; + + /* O_PATH + fstatfs is the magic that we need to statfs without automounting the target */ + o_path_fd = openat (dir_iter.fd, dent->d_name, O_PATH | O_NOFOLLOW | O_CLOEXEC); + if (o_path_fd == -1 || fstatfs (o_path_fd, &stfs) != 0 || stfs.f_type == AUTOFS_SUPER_MAGIC) + continue; /* AUTOFS mounts are risky and can cause us to block (see issue #1633), so ignore it. Its unlikely the proxy needs such a directory. */ + + if (dent->d_type == DT_DIR) + { + if (strcmp (dent->d_name, "tmp") == 0 || + strcmp (dent->d_name, "var") == 0 || + strcmp (dent->d_name, "run") == 0) + flatpak_bwrap_add_arg (bwrap, "--bind"); + else + flatpak_bwrap_add_arg (bwrap, "--ro-bind"); + + flatpak_bwrap_add_arg_printf (bwrap, "/%s", dent->d_name); + flatpak_bwrap_add_arg_printf (bwrap, "/%s", dent->d_name); + } + else if (dent->d_type == DT_LNK) + { + g_autofree gchar *target = NULL; + + target = glnx_readlinkat_malloc (dir_iter.fd, dent->d_name, + NULL, error); + if (target == NULL) + return FALSE; + flatpak_bwrap_add_args (bwrap, "--symlink", target, NULL); + flatpak_bwrap_add_arg_printf (bwrap, "/%s", dent->d_name); + } + } + + flatpak_bwrap_add_args (bwrap, "--bind", proxy_socket_dir, proxy_socket_dir, NULL); + + /* This is a file rather than a bind mount, because it will then + not be unmounted from the namespace when the namespace dies. */ + flatpak_bwrap_add_args (bwrap, "--perms", "0600", NULL); + flatpak_bwrap_add_args_data_fd (bwrap, "--file", g_steal_fd (&app_info_fd), "/.flatpak-info"); + + if (!flatpak_bwrap_bundle_args (bwrap, 1, -1, FALSE, error)) + return FALSE; + + /* End of options: the next argument will be the executable name */ + flatpak_bwrap_add_arg (bwrap, "--"); + + return TRUE; +} + +gboolean +flatpak_run_maybe_start_dbus_proxy (FlatpakBwrap *app_bwrap, + FlatpakBwrap *proxy_arg_bwrap, + const char *app_info_path, + GError **error) +{ + char x = 'x'; + const char *proxy; + g_autofree char *commandline = NULL; + g_autoptr(FlatpakBwrap) proxy_bwrap = NULL; + int proxy_start_index; + int sync_fd; + + if (flatpak_bwrap_is_empty (proxy_arg_bwrap)) + { + g_debug ("D-Bus proxy not needed"); + return TRUE; + } + + proxy_bwrap = flatpak_bwrap_new (NULL); + + if (!add_bwrap_wrapper (proxy_bwrap, app_info_path, error)) + return FALSE; + + proxy = g_getenv ("FLATPAK_DBUSPROXY"); + if (proxy == NULL) + proxy = DBUSPROXY; + + flatpak_bwrap_add_arg (proxy_bwrap, proxy); + + proxy_start_index = proxy_bwrap->argv->len; + + sync_fd = flatpak_bwrap_add_sync_fd (app_bwrap); + if (sync_fd < 0) + { + g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (errno), + _("Unable to create sync pipe")); + return FALSE; + } + + flatpak_bwrap_add_fd (proxy_bwrap, sync_fd); + flatpak_bwrap_add_arg_printf (proxy_bwrap, "--fd=%d", sync_fd); + + /* Note: This steals the fds from proxy_arg_bwrap */ + flatpak_bwrap_append_bwrap (proxy_bwrap, proxy_arg_bwrap); + + if (!flatpak_bwrap_bundle_args (proxy_bwrap, proxy_start_index, -1, TRUE, error)) + return FALSE; + + flatpak_bwrap_finish (proxy_bwrap); + + commandline = flatpak_quote_argv ((const char **) proxy_bwrap->argv->pdata, -1); + g_info ("Running '%s'", commandline); + + /* We use LEAVE_DESCRIPTORS_OPEN and close them in the child_setup + * to work around a deadlock in GLib < 2.60 */ + if (!g_spawn_async (NULL, + (char **) proxy_bwrap->argv->pdata, + NULL, + G_SPAWN_SEARCH_PATH | G_SPAWN_LEAVE_DESCRIPTORS_OPEN, + flatpak_bwrap_child_setup_cb, proxy_bwrap->fds, + NULL, error)) + return FALSE; + + /* The write end can be closed now, otherwise the read below will hang of xdg-dbus-proxy + fails to start. */ + g_clear_pointer (&proxy_bwrap, flatpak_bwrap_free); + + /* Sync with proxy, i.e. wait until its listening on the sockets */ + if (read (app_bwrap->sync_fds[0], &x, 1) != 1) + { + g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (errno), + _("Failed to sync with dbus proxy")); + return FALSE; + } + + return TRUE; +} + +static char * +extract_unix_path_from_dbus_address (const char *address) +{ + const char *path, *path_end; + + if (address == NULL) + return NULL; + + if (!g_str_has_prefix (address, "unix:")) + return NULL; + + path = strstr (address, "path="); + if (path == NULL) + return NULL; + path += strlen ("path="); + path_end = path; + while (*path_end != 0 && *path_end != ',') + path_end++; + + return g_strndup (path, path_end - path); +} + +static char * +create_proxy_socket (const char *template) +{ + g_autofree char *user_runtime_dir = flatpak_get_real_xdg_runtime_dir (); + g_autofree char *proxy_socket_dir = g_build_filename (user_runtime_dir, ".dbus-proxy", NULL); + g_autofree char *proxy_socket = g_build_filename (proxy_socket_dir, template, NULL); + int fd; + + if (!glnx_shutil_mkdir_p_at (AT_FDCWD, proxy_socket_dir, 0755, NULL, NULL)) + return NULL; + + fd = g_mkstemp (proxy_socket); + if (fd == -1) + return NULL; + + close (fd); + + return g_steal_pointer (&proxy_socket); +} + +gboolean +flatpak_run_add_session_dbus_args (FlatpakBwrap *app_bwrap, + FlatpakBwrap *proxy_arg_bwrap, + FlatpakContext *context, + FlatpakRunFlags flags, + const char *app_id) +{ + static const char sandbox_socket_path[] = "/run/flatpak/bus"; + static const char sandbox_dbus_address[] = "unix:path=/run/flatpak/bus"; + gboolean unrestricted, no_proxy; + const char *dbus_address = g_getenv ("DBUS_SESSION_BUS_ADDRESS"); + g_autofree char *dbus_session_socket = NULL; + + unrestricted = (context->sockets & FLATPAK_CONTEXT_SOCKET_SESSION_BUS) != 0; + + if (dbus_address != NULL) + { + dbus_session_socket = extract_unix_path_from_dbus_address (dbus_address); + } + else + { + g_autofree char *user_runtime_dir = flatpak_get_real_xdg_runtime_dir (); + struct stat statbuf; + + dbus_session_socket = g_build_filename (user_runtime_dir, "bus", NULL); + + if (stat (dbus_session_socket, &statbuf) < 0 + || (statbuf.st_mode & S_IFMT) != S_IFSOCK + || statbuf.st_uid != getuid ()) + return FALSE; + } + + if (unrestricted) + g_info ("Allowing session-dbus access"); + + no_proxy = (flags & FLATPAK_RUN_FLAG_NO_SESSION_BUS_PROXY) != 0; + + if (dbus_session_socket != NULL && unrestricted) + { + flatpak_bwrap_add_args (app_bwrap, + "--ro-bind", dbus_session_socket, sandbox_socket_path, + NULL); + flatpak_bwrap_set_env (app_bwrap, "DBUS_SESSION_BUS_ADDRESS", sandbox_dbus_address, TRUE); + flatpak_bwrap_add_runtime_dir_member (app_bwrap, "bus"); + + return TRUE; + } + else if (!no_proxy && dbus_address != NULL) + { + g_autofree char *proxy_socket = create_proxy_socket ("session-bus-proxy-XXXXXX"); + + if (proxy_socket == NULL) + return FALSE; + + flatpak_bwrap_add_args (proxy_arg_bwrap, dbus_address, proxy_socket, NULL); + + if (!unrestricted) + { + flatpak_context_add_bus_filters (context, app_id, FLATPAK_SESSION_BUS, flags & FLATPAK_RUN_FLAG_SANDBOX, proxy_arg_bwrap); + + /* Allow calling any interface+method on all portals, but only receive broadcasts under /org/desktop/portal */ + flatpak_bwrap_add_arg (proxy_arg_bwrap, + "--call=org.freedesktop.portal.*=*"); + flatpak_bwrap_add_arg (proxy_arg_bwrap, + "--broadcast=org.freedesktop.portal.*=@/org/freedesktop/portal/*"); + } + + if ((flags & FLATPAK_RUN_FLAG_LOG_SESSION_BUS) != 0) + flatpak_bwrap_add_args (proxy_arg_bwrap, "--log", NULL); + + flatpak_bwrap_add_args (app_bwrap, + "--ro-bind", proxy_socket, sandbox_socket_path, + NULL); + flatpak_bwrap_set_env (app_bwrap, "DBUS_SESSION_BUS_ADDRESS", sandbox_dbus_address, TRUE); + flatpak_bwrap_add_runtime_dir_member (app_bwrap, "bus"); + + return TRUE; + } + + return FALSE; +} + +gboolean +flatpak_run_add_system_dbus_args (FlatpakBwrap *app_bwrap, + FlatpakBwrap *proxy_arg_bwrap, + FlatpakContext *context, + FlatpakRunFlags flags) +{ + gboolean unrestricted, no_proxy; + const char *dbus_address = g_getenv ("DBUS_SYSTEM_BUS_ADDRESS"); + g_autofree char *real_dbus_address = NULL; + g_autofree char *dbus_system_socket = NULL; + + unrestricted = (context->sockets & FLATPAK_CONTEXT_SOCKET_SYSTEM_BUS) != 0; + if (unrestricted) + g_info ("Allowing system-dbus access"); + + no_proxy = (flags & FLATPAK_RUN_FLAG_NO_SYSTEM_BUS_PROXY) != 0; + + if (dbus_address != NULL) + dbus_system_socket = extract_unix_path_from_dbus_address (dbus_address); + else if (g_file_test ("/var/run/dbus/system_bus_socket", G_FILE_TEST_EXISTS)) + dbus_system_socket = g_strdup ("/var/run/dbus/system_bus_socket"); + + if (dbus_system_socket != NULL && unrestricted) + { + flatpak_bwrap_add_args (app_bwrap, + "--ro-bind", dbus_system_socket, "/run/dbus/system_bus_socket", + NULL); + flatpak_bwrap_set_env (app_bwrap, "DBUS_SYSTEM_BUS_ADDRESS", "unix:path=/run/dbus/system_bus_socket", TRUE); + + return TRUE; + } + else if (!no_proxy && flatpak_context_get_needs_system_bus_proxy (context)) + { + g_autofree char *proxy_socket = create_proxy_socket ("system-bus-proxy-XXXXXX"); + + if (proxy_socket == NULL) + return FALSE; + + if (dbus_address) + real_dbus_address = g_strdup (dbus_address); + else + real_dbus_address = g_strdup_printf ("unix:path=%s", dbus_system_socket); + + flatpak_bwrap_add_args (proxy_arg_bwrap, real_dbus_address, proxy_socket, NULL); + + if (!unrestricted) + flatpak_context_add_bus_filters (context, NULL, FLATPAK_SYSTEM_BUS, flags & FLATPAK_RUN_FLAG_SANDBOX, proxy_arg_bwrap); + + if ((flags & FLATPAK_RUN_FLAG_LOG_SYSTEM_BUS) != 0) + flatpak_bwrap_add_args (proxy_arg_bwrap, "--log", NULL); + + flatpak_bwrap_add_args (app_bwrap, + "--ro-bind", proxy_socket, "/run/dbus/system_bus_socket", + NULL); + flatpak_bwrap_set_env (app_bwrap, "DBUS_SYSTEM_BUS_ADDRESS", "unix:path=/run/dbus/system_bus_socket", TRUE); + + return TRUE; + } + return FALSE; +} + +gboolean +flatpak_run_add_a11y_dbus_args (FlatpakBwrap *app_bwrap, + FlatpakBwrap *proxy_arg_bwrap, + FlatpakContext *context, + FlatpakRunFlags flags, + const char *app_id) +{ + static const char sandbox_socket_path[] = "/run/flatpak/at-spi-bus"; + static const char sandbox_dbus_address[] = "unix:path=/run/flatpak/at-spi-bus"; + g_autoptr(GDBusConnection) session_bus = NULL; + g_autofree char *a11y_address = NULL; + g_autoptr(GError) local_error = NULL; + g_autoptr(GDBusMessage) reply = NULL; + g_autoptr(GDBusMessage) msg = NULL; + g_autofree char *proxy_socket = NULL; + gboolean sandboxed; + + if ((flags & FLATPAK_RUN_FLAG_NO_A11Y_BUS_PROXY) != 0) + return FALSE; + + session_bus = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, NULL); + if (session_bus == NULL) + return FALSE; + + msg = g_dbus_message_new_method_call ("org.a11y.Bus", "/org/a11y/bus", "org.a11y.Bus", "GetAddress"); + g_dbus_message_set_body (msg, g_variant_new ("()")); + reply = + g_dbus_connection_send_message_with_reply_sync (session_bus, msg, + G_DBUS_SEND_MESSAGE_FLAGS_NONE, + 30000, + NULL, + NULL, + NULL); + if (reply) + { + if (g_dbus_message_to_gerror (reply, &local_error)) + { + if (!g_error_matches (local_error, G_DBUS_ERROR, G_DBUS_ERROR_SERVICE_UNKNOWN)) + g_message ("Can't find a11y bus: %s", local_error->message); + } + else + { + g_variant_get (g_dbus_message_get_body (reply), + "(s)", &a11y_address); + } + } + + if (!a11y_address) + return FALSE; + + proxy_socket = create_proxy_socket ("a11y-bus-proxy-XXXXXX"); + if (proxy_socket == NULL) + return FALSE; + + flatpak_bwrap_add_args (proxy_arg_bwrap, + a11y_address, + proxy_socket, "--filter", "--sloppy-names", + "--broadcast=org.a11y.atspi.Registry.EventListenerRegistered=@/org/a11y/atspi/registry", + "--broadcast=org.a11y.atspi.Registry.EventListenerDeregistered=@/org/a11y/atspi/registry", + "--call=org.a11y.atspi.Registry=org.a11y.atspi.Socket.Embed@/org/a11y/atspi/accessible/root", + "--call=org.a11y.atspi.Registry=org.a11y.atspi.Socket.Unembed@/org/a11y/atspi/accessible/root", + "--call=org.a11y.atspi.Registry=org.a11y.atspi.Registry.GetRegisteredEvents@/org/a11y/atspi/registry", + "--call=org.a11y.atspi.Registry=org.a11y.atspi.DeviceEventController.GetKeystrokeListeners@/org/a11y/atspi/registry/deviceeventcontroller", + "--call=org.a11y.atspi.Registry=org.a11y.atspi.DeviceEventController.GetDeviceEventListeners@/org/a11y/atspi/registry/deviceeventcontroller", + "--call=org.a11y.atspi.Registry=org.a11y.atspi.DeviceEventController.NotifyListenersSync@/org/a11y/atspi/registry/deviceeventcontroller", + "--call=org.a11y.atspi.Registry=org.a11y.atspi.DeviceEventController.NotifyListenersAsync@/org/a11y/atspi/registry/deviceeventcontroller", + NULL); + + sandboxed = flags & FLATPAK_RUN_FLAG_SANDBOX; + + flatpak_context_add_bus_filters (context, app_id, FLATPAK_A11Y_BUS, sandboxed, proxy_arg_bwrap); + + /* Allow the main sandbox instance call org.a11y.atspi.Socket.Embedded() on + * well-known names of the subsandboxes' objects on the a11y bus. + */ + if (!sandboxed) + flatpak_bwrap_add_arg_printf (proxy_arg_bwrap, "--call=%s.Sandboxed.*=org.a11y.atspi.Socket.Embedded", app_id); + + if ((flags & FLATPAK_RUN_FLAG_LOG_A11Y_BUS) != 0) + flatpak_bwrap_add_args (proxy_arg_bwrap, "--log", NULL); + + flatpak_bwrap_add_args (app_bwrap, + "--ro-bind", proxy_socket, sandbox_socket_path, + NULL); + flatpak_bwrap_set_env (app_bwrap, "AT_SPI_BUS_ADDRESS", sandbox_dbus_address, TRUE); + + return TRUE; +} diff --git a/common/flatpak-run-private.h b/common/flatpak-run-private.h index 72b45c8..40899e2 100644 --- a/common/flatpak-run-private.h +++ b/common/flatpak-run-private.h @@ -25,92 +25,14 @@ #include "flatpak-common-types-private.h" #include "flatpak-context-private.h" #include "flatpak-bwrap-private.h" +#include "flatpak-metadata-private.h" +#include "flatpak-ref-utils-private.h" #include "flatpak-utils-private.h" #include "flatpak-exports-private.h" gboolean flatpak_run_in_transient_unit (const char *app_id, GError **error); -/* See flatpak-metadata(5) */ - -#define FLATPAK_METADATA_GROUP_APPLICATION "Application" -#define FLATPAK_METADATA_GROUP_RUNTIME "Runtime" -#define FLATPAK_METADATA_KEY_COMMAND "command" -#define FLATPAK_METADATA_KEY_NAME "name" -#define FLATPAK_METADATA_KEY_REQUIRED_FLATPAK "required-flatpak" -#define FLATPAK_METADATA_KEY_RUNTIME "runtime" -#define FLATPAK_METADATA_KEY_SDK "sdk" -#define FLATPAK_METADATA_KEY_TAGS "tags" - -#define FLATPAK_METADATA_GROUP_CONTEXT "Context" -#define FLATPAK_METADATA_KEY_SHARED "shared" -#define FLATPAK_METADATA_KEY_SOCKETS "sockets" -#define FLATPAK_METADATA_KEY_FILESYSTEMS "filesystems" -#define FLATPAK_METADATA_KEY_PERSISTENT "persistent" -#define FLATPAK_METADATA_KEY_DEVICES "devices" -#define FLATPAK_METADATA_KEY_FEATURES "features" -#define FLATPAK_METADATA_KEY_UNSET_ENVIRONMENT "unset-environment" - -#define FLATPAK_METADATA_GROUP_INSTANCE "Instance" -#define FLATPAK_METADATA_KEY_INSTANCE_PATH "instance-path" -#define FLATPAK_METADATA_KEY_INSTANCE_ID "instance-id" -#define FLATPAK_METADATA_KEY_ORIGINAL_APP_PATH "original-app-path" -#define FLATPAK_METADATA_KEY_APP_PATH "app-path" -#define FLATPAK_METADATA_KEY_APP_COMMIT "app-commit" -#define FLATPAK_METADATA_KEY_APP_EXTENSIONS "app-extensions" -#define FLATPAK_METADATA_KEY_ARCH "arch" -#define FLATPAK_METADATA_KEY_BRANCH "branch" -#define FLATPAK_METADATA_KEY_FLATPAK_VERSION "flatpak-version" -#define FLATPAK_METADATA_KEY_ORIGINAL_RUNTIME_PATH "original-runtime-path" -#define FLATPAK_METADATA_KEY_RUNTIME_PATH "runtime-path" -#define FLATPAK_METADATA_KEY_RUNTIME_COMMIT "runtime-commit" -#define FLATPAK_METADATA_KEY_RUNTIME_EXTENSIONS "runtime-extensions" -#define FLATPAK_METADATA_KEY_SESSION_BUS_PROXY "session-bus-proxy" -#define FLATPAK_METADATA_KEY_SYSTEM_BUS_PROXY "system-bus-proxy" -#define FLATPAK_METADATA_KEY_EXTRA_ARGS "extra-args" -#define FLATPAK_METADATA_KEY_SANDBOX "sandbox" -#define FLATPAK_METADATA_KEY_BUILD "build" -#define FLATPAK_METADATA_KEY_DEVEL "devel" - -#define FLATPAK_METADATA_GROUP_SESSION_BUS_POLICY "Session Bus Policy" -#define FLATPAK_METADATA_GROUP_SYSTEM_BUS_POLICY "System Bus Policy" -#define FLATPAK_METADATA_GROUP_PREFIX_POLICY "Policy " -#define FLATPAK_METADATA_GROUP_ENVIRONMENT "Environment" - -#define FLATPAK_METADATA_GROUP_PREFIX_EXTENSION "Extension " -#define FLATPAK_METADATA_KEY_ADD_LD_PATH "add-ld-path" -#define FLATPAK_METADATA_KEY_AUTODELETE "autodelete" -#define FLATPAK_METADATA_KEY_DIRECTORY "directory" -#define FLATPAK_METADATA_KEY_DOWNLOAD_IF "download-if" -#define FLATPAK_METADATA_KEY_ENABLE_IF "enable-if" -#define FLATPAK_METADATA_KEY_AUTOPRUNE_UNLESS "autoprune-unless" -#define FLATPAK_METADATA_KEY_MERGE_DIRS "merge-dirs" -#define FLATPAK_METADATA_KEY_NO_AUTODOWNLOAD "no-autodownload" -#define FLATPAK_METADATA_KEY_SUBDIRECTORIES "subdirectories" -#define FLATPAK_METADATA_KEY_SUBDIRECTORY_SUFFIX "subdirectory-suffix" -#define FLATPAK_METADATA_KEY_LOCALE_SUBSET "locale-subset" -#define FLATPAK_METADATA_KEY_VERSION "version" -#define FLATPAK_METADATA_KEY_VERSIONS "versions" - -#define FLATPAK_METADATA_KEY_COLLECTION_ID "collection-id" - -#define FLATPAK_METADATA_GROUP_EXTRA_DATA "Extra Data" -#define FLATPAK_METADATA_KEY_EXTRA_DATA_CHECKSUM "checksum" -#define FLATPAK_METADATA_KEY_EXTRA_DATA_INSTALLED_SIZE "installed-size" -#define FLATPAK_METADATA_KEY_EXTRA_DATA_NAME "name" -#define FLATPAK_METADATA_KEY_EXTRA_DATA_SIZE "size" -#define FLATPAK_METADATA_KEY_EXTRA_DATA_URI "uri" -#define FLATPAK_METADATA_KEY_NO_RUNTIME "NoRuntime" - -#define FLATPAK_METADATA_GROUP_EXTENSION_OF "ExtensionOf" -#define FLATPAK_METADATA_KEY_PRIORITY "priority" -#define FLATPAK_METADATA_KEY_REF "ref" -#define FLATPAK_METADATA_KEY_TAG "tag" - -#define FLATPAK_METADATA_GROUP_DCONF "X-DConf" -#define FLATPAK_METADATA_KEY_DCONF_PATHS "paths" -#define FLATPAK_METADATA_KEY_DCONF_MIGRATE_PATH "migrate-path" - void flatpak_run_extend_ld_path (FlatpakBwrap *bwrap, const char *prepend, const char *append); @@ -131,6 +53,7 @@ gboolean flatpak_run_add_environment_args (FlatpakBwrap *bwrap, GFile *app_id_dir, GPtrArray *previous_app_id_dirs, int per_app_dir_lock_fd, + const char *instance_id, FlatpakExports **exports_out, GCancellable *cancellable, GError **error); @@ -138,14 +61,11 @@ char ** flatpak_run_get_minimal_env (gboolean devel, gboolean use_ld_so_cache); void flatpak_run_apply_env_default (FlatpakBwrap *bwrap, gboolean use_ld_so_cache); -void flatpak_run_apply_env_appid (FlatpakBwrap *bwrap, - GFile *app_dir); void flatpak_run_apply_env_vars (FlatpakBwrap *bwrap, FlatpakContext *context); FlatpakContext *flatpak_app_compute_permissions (GKeyFile *app_metadata, GKeyFile *runtime_metadata, GError **error); -GFile *flatpak_get_data_dir (const char *app_id); gboolean flatpak_ensure_data_dir (GFile *app_id_dir, GCancellable *cancellable, GError **error); @@ -177,34 +97,28 @@ gboolean flatpak_run_add_app_info_args (FlatpakBwrap *bwrap, char **app_info_path_out, int instance_id_fd, char **host_instance_id_host_dir_out, + char **host_instance_id_host_private_dir_out, + char **instance_id_out, GError **error); -gboolean flatpak_run_app (FlatpakDecomposed *app_ref, - FlatpakDeploy *app_deploy, - const char *custom_app_path, - FlatpakContext *extra_context, - const char *custom_runtime, - const char *custom_runtime_version, - const char *custom_runtime_commit, - const char *custom_usr_path, - int parent_pid, - FlatpakRunFlags flags, - const char *cwd, - const char *custom_command, - char *args[], - int n_args, - int instance_id_fd, - char **instance_dir_out, - GCancellable *cancellable, - GError **error); - -extern const char * const *flatpak_abs_usrmerged_dirs; - -gboolean flatpak_run_parse_x11_display (const char *display, - int *family, - char **x11_socket, - char **remote_host, - char **original_display_nr, - GError **error); +gboolean flatpak_run_app (FlatpakDecomposed *app_ref, + FlatpakDeploy *app_deploy, + const char *custom_app_path, + FlatpakContext *extra_context, + const char *custom_runtime, + const char *custom_runtime_version, + const char *custom_runtime_commit, + const char *custom_usr_path, + int parent_pid, + FlatpakRunFlags flags, + const char *cwd, + const char *custom_command, + char *args[], + int n_args, + int instance_id_fd, + const char * const *run_environ, + char **instance_dir_out, + GCancellable *cancellable, + GError **error); #endif /* __FLATPAK_RUN_H__ */ diff --git a/common/flatpak-run-pulseaudio-private.h b/common/flatpak-run-pulseaudio-private.h new file mode 100644 index 0000000..8fa4eb5 --- /dev/null +++ b/common/flatpak-run-pulseaudio-private.h @@ -0,0 +1,34 @@ +/* + * Copyright © 2014 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#pragma once + +#include "libglnx.h" + +#include "flatpak-bwrap-private.h" +#include "flatpak-common-types-private.h" +#include "flatpak-context-private.h" + +G_BEGIN_DECLS + +void flatpak_run_add_pulseaudio_args (FlatpakBwrap *bwrap, + FlatpakContextShares shares); + +G_END_DECLS diff --git a/common/flatpak-run-pulseaudio.c b/common/flatpak-run-pulseaudio.c new file mode 100644 index 0000000..9495f8a --- /dev/null +++ b/common/flatpak-run-pulseaudio.c @@ -0,0 +1,338 @@ +/* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: + * Copyright © 2014-2019 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#include "config.h" +#include "flatpak-run-pulseaudio-private.h" + +#include "flatpak-utils-private.h" + +/* Try to find a default server from a pulseaudio confguration file */ +static char * +flatpak_run_get_pulseaudio_server_user_config (const char *path) +{ + g_autoptr(GFile) file = g_file_new_for_path (path); + g_autoptr(GError) my_error = NULL; + g_autoptr(GFileInputStream) input_stream = NULL; + g_autoptr(GDataInputStream) data_stream = NULL; + size_t len; + + input_stream = g_file_read (file, NULL, &my_error); + if (my_error) + { + g_info ("Pulseaudio user configuration file '%s': %s", path, my_error->message); + return NULL; + } + + data_stream = g_data_input_stream_new (G_INPUT_STREAM (input_stream)); + + while (TRUE) + { + g_autofree char *line = g_data_input_stream_read_line (data_stream, &len, NULL, NULL); + if (line == NULL) + break; + + g_strchug (line); + + if ((*line == '\0') || (*line == ';') || (*line == '#')) + continue; + + if (g_str_has_prefix (line, ".include ")) + { + g_autofree char *rec_path = g_strdup (line + 9); + g_strstrip (rec_path); + char *found = flatpak_run_get_pulseaudio_server_user_config (rec_path); + if (found) + return found; + } + else if (g_str_has_prefix (line, "[")) + { + return NULL; + } + else + { + g_auto(GStrv) tokens = g_strsplit (line, "=", 2); + + if ((tokens[0] != NULL) && (tokens[1] != NULL)) + { + g_strchomp (tokens[0]); + if (strcmp ("default-server", tokens[0]) == 0) + { + g_strstrip (tokens[1]); + g_info ("Found pulseaudio socket from configuration file '%s': %s", path, tokens[1]); + return g_strdup (tokens[1]); + } + } + } + } + + return NULL; +} + +static char * +flatpak_run_get_pulseaudio_server (void) +{ + const char * pulse_clientconfig; + char *pulse_server; + g_autofree char *pulse_user_config = NULL; + + pulse_server = g_strdup (g_getenv ("PULSE_SERVER")); + if (pulse_server) + return pulse_server; + + pulse_clientconfig = g_getenv ("PULSE_CLIENTCONFIG"); + if (pulse_clientconfig) + return flatpak_run_get_pulseaudio_server_user_config (pulse_clientconfig); + + pulse_user_config = g_build_filename (g_get_user_config_dir (), "pulse/client.conf", NULL); + pulse_server = flatpak_run_get_pulseaudio_server_user_config (pulse_user_config); + if (pulse_server) + return pulse_server; + + pulse_server = flatpak_run_get_pulseaudio_server_user_config ("/etc/pulse/client.conf"); + if (pulse_server) + return pulse_server; + + return NULL; +} + +/* + * Parse a PulseAudio server string, as documented on + * https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/ServerStrings/. + * Returns the first supported server address, or NULL if none are supported, + * or NULL with @remote set if @value points to a remote server. + */ +static char * +flatpak_run_parse_pulse_server (const char *value, + gboolean *remote) +{ + g_auto(GStrv) servers = g_strsplit (value, " ", 0); + gsize i; + + for (i = 0; servers[i] != NULL; i++) + { + const char *server = servers[i]; + if (g_str_has_prefix (server, "{")) + { + /* + * TODO: compare the value within {} to the local hostname and D-Bus machine ID, + * and skip if it matches neither. + */ + const char * closing = strstr (server, "}"); + if (closing == NULL) + continue; + server = closing + 1; + } + + if (g_str_has_prefix (server, "unix:")) + return g_strdup (server + 5); + if (server[0] == '/') + return g_strdup (server); + + if (g_str_has_prefix (server, "tcp:")) + { + *remote = TRUE; + return NULL; + } + } + + return NULL; +} + +/* + * Get the machine ID as used by PulseAudio. This is the systemd/D-Bus + * machine ID, or failing that, the hostname. + */ +static char * +flatpak_run_get_pulse_machine_id (void) +{ + static const char * const machine_ids[] = + { + "/etc/machine-id", + "/var/lib/dbus/machine-id", + }; + gsize i; + + for (i = 0; i < G_N_ELEMENTS (machine_ids); i++) + { + g_autofree char *ret = NULL; + + if (g_file_get_contents (machine_ids[i], &ret, NULL, NULL)) + { + gsize j; + + g_strstrip (ret); + + for (j = 0; ret[j] != '\0'; j++) + { + if (!g_ascii_isxdigit (ret[j])) + break; + } + + if (ret[0] != '\0' && ret[j] == '\0') + return g_steal_pointer (&ret); + } + } + + return g_strdup (g_get_host_name ()); +} + +/* + * Get the directory used by PulseAudio for its configuration. + */ +static char * +flatpak_run_get_pulse_home (void) +{ + /* Legacy path ~/.pulse is tried first, for compatibility */ + { + const char *parent = g_get_home_dir (); + g_autofree char *ret = g_build_filename (parent, ".pulse", NULL); + + if (g_file_test (ret, G_FILE_TEST_IS_DIR)) + return g_steal_pointer (&ret); + } + + /* The more modern path, usually ~/.config/pulse */ + { + const char *parent = g_get_user_config_dir (); + /* Usually ~/.config/pulse */ + g_autofree char *ret = g_build_filename (parent, "pulse", NULL); + + if (g_file_test (ret, G_FILE_TEST_IS_DIR)) + return g_steal_pointer (&ret); + } + + return NULL; +} + +/* + * Get the runtime directory used by PulseAudio for its socket. + */ +static char * +flatpak_run_get_pulse_runtime_dir (void) +{ + const char *val = NULL; + + val = g_getenv ("PULSE_RUNTIME_PATH"); + + if (val != NULL) + return realpath (val, NULL); + + { + const char *user_runtime_dir = g_get_user_runtime_dir (); + + if (user_runtime_dir != NULL) + { + g_autofree char *dir = g_build_filename (user_runtime_dir, "pulse", NULL); + + if (g_file_test (dir, G_FILE_TEST_IS_DIR)) + return realpath (dir, NULL); + } + } + + { + g_autofree char *pulse_home = flatpak_run_get_pulse_home (); + g_autofree char *machine_id = flatpak_run_get_pulse_machine_id (); + + if (pulse_home != NULL && machine_id != NULL) + { + /* This is usually a symlink, but we take its realpath() anyway */ + g_autofree char *dir = g_strdup_printf ("%s/%s-runtime", pulse_home, machine_id); + + if (g_file_test (dir, G_FILE_TEST_IS_DIR)) + return realpath (dir, NULL); + } + } + + return NULL; +} + +void +flatpak_run_add_pulseaudio_args (FlatpakBwrap *bwrap, + FlatpakContextShares shares) +{ + g_autofree char *pulseaudio_server = flatpak_run_get_pulseaudio_server (); + g_autofree char *pulseaudio_socket = NULL; + g_autofree char *pulse_runtime_dir = flatpak_run_get_pulse_runtime_dir (); + gboolean remote = FALSE; + + if (pulseaudio_server) + pulseaudio_socket = flatpak_run_parse_pulse_server (pulseaudio_server, + &remote); + + if (pulseaudio_socket == NULL && !remote) + { + pulseaudio_socket = g_build_filename (pulse_runtime_dir, "native", NULL); + + if (!g_file_test (pulseaudio_socket, G_FILE_TEST_EXISTS)) + g_clear_pointer (&pulseaudio_socket, g_free); + } + + if (pulseaudio_socket == NULL && !remote) + { + pulseaudio_socket = realpath ("/var/run/pulse/native", NULL); + + if (pulseaudio_socket && !g_file_test (pulseaudio_socket, G_FILE_TEST_EXISTS)) + g_clear_pointer (&pulseaudio_socket, g_free); + } + + flatpak_bwrap_unset_env (bwrap, "PULSE_SERVER"); + + if (remote) + { + if ((shares & FLATPAK_CONTEXT_SHARED_NETWORK) == 0) + { + g_warning ("Remote PulseAudio server configured."); + g_warning ("PulseAudio access will require --share=network permission."); + } + + g_info ("Using remote PulseAudio server \"%s\"", pulseaudio_server); + flatpak_bwrap_set_env (bwrap, "PULSE_SERVER", pulseaudio_server, TRUE); + } + else if (pulseaudio_socket && g_file_test (pulseaudio_socket, G_FILE_TEST_EXISTS)) + { + static const char sandbox_socket_path[] = "/run/flatpak/pulse/native"; + static const char pulse_server[] = "unix:/run/flatpak/pulse/native"; + static const char config_path[] = "/run/flatpak/pulse/config"; + gboolean share_shm = FALSE; /* TODO: When do we add this? */ + g_autofree char *client_config = g_strdup_printf ("enable-shm=%s\n", share_shm ? "yes" : "no"); + + /* FIXME - error handling */ + if (!flatpak_bwrap_add_args_data (bwrap, "pulseaudio", client_config, -1, config_path, NULL)) + return; + + flatpak_bwrap_add_args (bwrap, + "--ro-bind", pulseaudio_socket, sandbox_socket_path, + NULL); + + flatpak_bwrap_set_env (bwrap, "PULSE_SERVER", pulse_server, TRUE); + flatpak_bwrap_set_env (bwrap, "PULSE_CLIENTCONFIG", config_path, TRUE); + flatpak_bwrap_add_runtime_dir_member (bwrap, "pulse"); + } + else + g_info ("Could not find pulseaudio socket"); + + /* Also allow ALSA access. This was added in 1.8, and is not ideally named. However, + * since the practical permission of ALSA and PulseAudio are essentially the same, and + * since we don't want to add more permissions for something we plan to replace with + * portals/pipewire going forward we reinterpret pulseaudio to also mean ALSA. + */ + if (!remote && g_file_test ("/dev/snd", G_FILE_TEST_IS_DIR)) + flatpak_bwrap_add_args (bwrap, "--dev-bind", "/dev/snd", "/dev/snd", NULL); +} diff --git a/common/flatpak-run-sockets-private.h b/common/flatpak-run-sockets-private.h new file mode 100644 index 0000000..536ef80 --- /dev/null +++ b/common/flatpak-run-sockets-private.h @@ -0,0 +1,39 @@ +/* + * Copyright © 2014 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#pragma once + +#include "libglnx.h" + +#include "flatpak-bwrap-private.h" +#include "flatpak-common-types-private.h" +#include "flatpak-context-private.h" + +G_BEGIN_DECLS + +void flatpak_run_add_socket_args_environment (FlatpakBwrap *bwrap, + FlatpakContextShares shares, + FlatpakContextSockets sockets, + const char *app_id, + const char *instance_id); +void flatpak_run_add_socket_args_late (FlatpakBwrap *bwrap, + FlatpakContextShares shares); + +G_END_DECLS diff --git a/common/flatpak-run-sockets.c b/common/flatpak-run-sockets.c new file mode 100644 index 0000000..be120f3 --- /dev/null +++ b/common/flatpak-run-sockets.c @@ -0,0 +1,240 @@ +/* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: + * Copyright © 2014-2019 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#include "config.h" +#include "flatpak-run-sockets-private.h" + +/* Setup for simple sockets that only need one function goes in this file. + * Setup for more complicated sockets should go in its own file. */ + +#include "flatpak-run-cups-private.h" +#include "flatpak-run-pulseaudio-private.h" +#include "flatpak-run-wayland-private.h" +#include "flatpak-run-x11-private.h" +#include "flatpak-utils-private.h" + +static void +flatpak_run_add_gssproxy_args (FlatpakBwrap *bwrap) +{ + /* We only expose the gssproxy user service. The gssproxy system service is + * not intended to be exposed to sandboxed environments. + */ + g_autofree char *gssproxy_host_dir = g_build_filename (g_get_user_runtime_dir (), "gssproxy", NULL); + const char *gssproxy_sandboxed_dir = "/run/flatpak/gssproxy/"; + + if (g_file_test (gssproxy_host_dir, G_FILE_TEST_EXISTS)) + flatpak_bwrap_add_args (bwrap, "--ro-bind", gssproxy_host_dir, gssproxy_sandboxed_dir, NULL); +} + +static void +flatpak_run_add_resolved_args (FlatpakBwrap *bwrap) +{ + const char *resolved_socket = "/run/systemd/resolve/io.systemd.Resolve"; + + if (g_file_test (resolved_socket, G_FILE_TEST_EXISTS)) + flatpak_bwrap_add_args (bwrap, "--bind", resolved_socket, resolved_socket, NULL); +} + +static void +flatpak_run_add_journal_args (FlatpakBwrap *bwrap) +{ + g_autofree char *journal_socket_socket = g_strdup ("/run/systemd/journal/socket"); + g_autofree char *journal_stdout_socket = g_strdup ("/run/systemd/journal/stdout"); + + if (g_file_test (journal_socket_socket, G_FILE_TEST_EXISTS)) + { + flatpak_bwrap_add_args (bwrap, + "--ro-bind", journal_socket_socket, journal_socket_socket, + NULL); + } + if (g_file_test (journal_stdout_socket, G_FILE_TEST_EXISTS)) + { + flatpak_bwrap_add_args (bwrap, + "--ro-bind", journal_stdout_socket, journal_stdout_socket, + NULL); + } +} + +static void +flatpak_run_add_pcsc_args (FlatpakBwrap *bwrap) +{ + const char * pcsc_socket; + const char * sandbox_pcsc_socket = "/run/pcscd/pcscd.comm"; + + pcsc_socket = g_getenv ("PCSCLITE_CSOCK_NAME"); + if (pcsc_socket) + { + if (!g_file_test (pcsc_socket, G_FILE_TEST_EXISTS)) + { + flatpak_bwrap_unset_env (bwrap, "PCSCLITE_CSOCK_NAME"); + return; + } + } + else + { + pcsc_socket = "/run/pcscd/pcscd.comm"; + if (!g_file_test (pcsc_socket, G_FILE_TEST_EXISTS)) + return; + } + + flatpak_bwrap_add_args (bwrap, + "--ro-bind", pcsc_socket, sandbox_pcsc_socket, + NULL); + flatpak_bwrap_set_env (bwrap, "PCSCLITE_CSOCK_NAME", sandbox_pcsc_socket, TRUE); +} + +static void +flatpak_run_add_gpg_agent_args (FlatpakBwrap *bwrap) +{ + const char * agent_socket; + g_autofree char * sandbox_agent_socket = NULL; + g_autoptr(GError) gpgconf_error = NULL; + g_autoptr(GSubprocess) process = NULL; + GInputStream *base_stream = NULL; + g_autoptr(GDataInputStream) data_stream = NULL; + + process = g_subprocess_new (G_SUBPROCESS_FLAGS_STDOUT_PIPE, + &gpgconf_error, + "gpgconf", "--list-dir", "agent-socket", NULL); + + if (gpgconf_error) + { + g_info ("GPG-Agent directories: %s", gpgconf_error->message); + return; + } + + base_stream = g_subprocess_get_stdout_pipe (process); + data_stream = g_data_input_stream_new (base_stream); + + agent_socket = g_data_input_stream_read_line (data_stream, + NULL, NULL, + &gpgconf_error); + + if (!agent_socket || gpgconf_error) + { + g_info ("GPG-Agent directories: %s", gpgconf_error->message); + return; + } + + sandbox_agent_socket = g_strdup_printf ("/run/user/%d/gnupg/S.gpg-agent", getuid ()); + + flatpak_bwrap_add_args (bwrap, + "--ro-bind-try", agent_socket, sandbox_agent_socket, + NULL); +} + +static void +flatpak_run_add_ssh_args (FlatpakBwrap *bwrap) +{ + static const char sandbox_auth_socket[] = "/run/flatpak/ssh-auth"; + const char * auth_socket; + + auth_socket = g_getenv ("SSH_AUTH_SOCK"); + + if (!auth_socket) + return; /* ssh agent not present */ + + if (!g_file_test (auth_socket, G_FILE_TEST_EXISTS)) + { + /* Let's clean it up, so that the application will not try to connect */ + flatpak_bwrap_unset_env (bwrap, "SSH_AUTH_SOCK"); + return; + } + + flatpak_bwrap_add_args (bwrap, + "--ro-bind", auth_socket, sandbox_auth_socket, + NULL); + flatpak_bwrap_set_env (bwrap, "SSH_AUTH_SOCK", sandbox_auth_socket, TRUE); +} + +/* + * Expose sockets that are available for `flatpak build`, apply_extra, and + * `flatpak run`, except for D-Bus which is handled separately due to its + * use of a proxy. + */ +void +flatpak_run_add_socket_args_environment (FlatpakBwrap *bwrap, + FlatpakContextShares shares, + FlatpakContextSockets sockets, + const char *app_id, + const char *instance_id) +{ + gboolean has_wayland = FALSE; + gboolean allow_x11; + gboolean inherit_wayland_socket; + + if (sockets & FLATPAK_CONTEXT_SOCKET_WAYLAND) + { + g_info ("Allowing wayland access"); + g_assert (app_id && instance_id); + inherit_wayland_socket = (sockets & FLATPAK_CONTEXT_SOCKET_INHERIT_WAYLAND_SOCKET) != 0; + has_wayland = flatpak_run_add_wayland_args (bwrap, app_id, instance_id, + inherit_wayland_socket); + } + + if ((sockets & FLATPAK_CONTEXT_SOCKET_FALLBACK_X11) != 0) + allow_x11 = !has_wayland; + else + allow_x11 = (sockets & FLATPAK_CONTEXT_SOCKET_X11) != 0; + + flatpak_run_add_x11_args (bwrap, allow_x11, shares); + + if (sockets & FLATPAK_CONTEXT_SOCKET_SSH_AUTH) + { + flatpak_run_add_ssh_args (bwrap); + } + + if (sockets & FLATPAK_CONTEXT_SOCKET_PULSEAUDIO) + { + g_info ("Allowing pulseaudio access"); + flatpak_run_add_pulseaudio_args (bwrap, shares); + } + + if (sockets & FLATPAK_CONTEXT_SOCKET_PCSC) + { + flatpak_run_add_pcsc_args (bwrap); + } + + if (sockets & FLATPAK_CONTEXT_SOCKET_CUPS) + { + flatpak_run_add_cups_args (bwrap); + } + + if (sockets & FLATPAK_CONTEXT_SOCKET_GPG_AGENT) + { + flatpak_run_add_gpg_agent_args (bwrap); + } +} + +/* + * Expose sockets that are available for `flatpak run` only. + */ +void +flatpak_run_add_socket_args_late (FlatpakBwrap *bwrap, + FlatpakContextShares shares) +{ + if ((shares & FLATPAK_CONTEXT_SHARED_NETWORK) != 0) + { + flatpak_run_add_gssproxy_args (bwrap); + flatpak_run_add_resolved_args (bwrap); + } + + flatpak_run_add_journal_args (bwrap); +} diff --git a/common/flatpak-run-wayland-private.h b/common/flatpak-run-wayland-private.h new file mode 100644 index 0000000..ad00d23 --- /dev/null +++ b/common/flatpak-run-wayland-private.h @@ -0,0 +1,37 @@ +/* + * Copyright © 2014 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#pragma once + +#include "libglnx.h" + +#include "flatpak-bwrap-private.h" +#include "flatpak-common-types-private.h" +#include "flatpak-context-private.h" + +G_BEGIN_DECLS + +gboolean +flatpak_run_add_wayland_args (FlatpakBwrap *bwrap, + const char *app_id, + const char *instance_id, + gboolean inherit_wayland_socket); + +G_END_DECLS diff --git a/common/flatpak-run-wayland.c b/common/flatpak-run-wayland.c new file mode 100644 index 0000000..d9d76e3 --- /dev/null +++ b/common/flatpak-run-wayland.c @@ -0,0 +1,328 @@ +/* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: + * Copyright © 2014-2019 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#include "config.h" +#include "flatpak-run-wayland-private.h" + +#ifdef ENABLE_WAYLAND_SECURITY_CONTEXT +#include +#include +#include +#include "security-context-v1-protocol.h" +#endif + +#include "flatpak-utils-private.h" + +static const char * +get_wayland_display_name (void) +{ + const char *wayland_display; + + wayland_display = g_getenv ("WAYLAND_DISPLAY"); + if (!wayland_display) + wayland_display = "wayland-0"; + + return wayland_display; +} + +static char * +get_wayland_socket_path (const char *wayland_display) +{ + g_autofree char *user_runtime_dir = flatpak_get_real_xdg_runtime_dir (); + + if (wayland_display[0] == '/') + return g_strdup (wayland_display); + + return g_build_filename (user_runtime_dir, wayland_display, NULL); +} + +static int +get_wayland_socket_fd (void) +{ + const char *wayland_socket_fd; + guint64 fd; + + wayland_socket_fd = g_getenv ("WAYLAND_SOCKET"); + if (!wayland_socket_fd) + return -1; + + if (!g_ascii_string_to_unsigned (wayland_socket_fd, 10, 0, INT_MAX, &fd, NULL)) + return -1; + + return (int) fd; +} + +#ifdef ENABLE_WAYLAND_SECURITY_CONTEXT + +static void registry_handle_global (void *data, struct wl_registry *registry, + uint32_t name, const char *interface, + uint32_t version) +{ + struct wp_security_context_manager_v1 **out = data; + + if (strcmp (interface, wp_security_context_manager_v1_interface.name) == 0) + { + *out = wl_registry_bind (registry, name, + &wp_security_context_manager_v1_interface, 1); + } +} + +static void registry_handle_global_remove (void *data, + struct wl_registry *registry, + uint32_t name) +{ + /* no-op */ +} + +static const struct wl_registry_listener registry_listener = { + .global = registry_handle_global, + .global_remove = registry_handle_global_remove, +}; + +/* Similar to wl_display_connect (), but does not use WAYLAND_SOCKET, + * which can only be used once, and also does not unset environment + * variables, which would not be thread-safe. */ +static struct wl_display * +connect_to_wayland_display (const char *wayland_display) +{ + struct sockaddr_un sockaddr = {0}; + g_autofree char *socket_path = NULL; + glnx_autofd int fd = -1; + + socket_path = get_wayland_socket_path (wayland_display); + fd = socket (AF_UNIX, SOCK_STREAM | SOCK_CLOEXEC, 0); + if (fd < 0) + return NULL; + + sockaddr.sun_family = AF_UNIX; + snprintf (sockaddr.sun_path, sizeof (sockaddr.sun_path), "%s", socket_path); + if (connect (fd, (struct sockaddr *) &sockaddr, sizeof (sockaddr)) < 0) + return NULL; + + return wl_display_connect_to_fd (g_steal_fd (&fd)); +} + +static char * +create_wl_socket (char *template) +{ + g_autofree char *user_runtime_dir = flatpak_get_real_xdg_runtime_dir (); + g_autofree char *proxy_socket_dir = g_build_filename (user_runtime_dir, ".flatpak/wl", NULL); + g_autofree char *proxy_socket = g_build_filename (proxy_socket_dir, template, NULL); + int fd; + + if (!glnx_shutil_mkdir_p_at (AT_FDCWD, proxy_socket_dir, 0755, NULL, NULL)) + return NULL; + + fd = g_mkstemp (proxy_socket); + if (fd == -1) + return NULL; + + close (fd); + + return g_steal_pointer (&proxy_socket); +} + +static gboolean +flatpak_run_create_wayland_security_context (FlatpakBwrap *bwrap, + const char *app_id, + const char *instance_id, + const char *wayland_display, + gboolean *available_out, + gchar **socket_path_out) +{ + gboolean res = FALSE; + struct wl_display *display; + struct wl_registry *registry; + struct wp_security_context_manager_v1 *security_context_manager = NULL; + struct wp_security_context_v1 *security_context; + struct sockaddr_un sockaddr = {0}; + g_autofree char *socket_path = NULL; + int listen_fd = -1, sync_fd, ret; + + *available_out = TRUE; + *socket_path_out = NULL; + + /* We don't use wl_display_connect () here, for two reasons: + * 1. It would unsetenv ("WAYLAND_SOCKET"), which is not thread-safe. + * 2. If the compositor has set WAYLAND_SOCKET to a special, higher-privileged + * socket, the application should be able to get those privileges for its first + * connection; but that fd can only be used once, so having flatpak itself + * do that first connection would defeat that mechanism. + * + * We still set up a security context for the second and subsequent connections + * to Wayland from within the sandbox. + */ + display = connect_to_wayland_display (wayland_display); + if (!display) + return FALSE; + + registry = wl_display_get_registry (display); + wl_registry_add_listener (registry, ®istry_listener, + &security_context_manager); + ret = wl_display_roundtrip (display); + wl_registry_destroy (registry); + if (ret < 0) + goto out; + + if (!security_context_manager) + { + g_debug ("Wayland display does not support security_context_manager_v1"); + *available_out = FALSE; + goto out; + } + + socket_path = create_wl_socket ("wayland-XXXXXX"); + if (!socket_path) + goto out; + + unlink (socket_path); + + listen_fd = socket (AF_UNIX, SOCK_STREAM, 0); + if (listen_fd < 0) + goto out; + + sockaddr.sun_family = AF_UNIX; + snprintf (sockaddr.sun_path, sizeof(sockaddr.sun_path), "%s", socket_path); + if (bind (listen_fd, (struct sockaddr *) &sockaddr, sizeof (sockaddr)) != 0) + goto out; + + if (listen (listen_fd, 0) != 0) + goto out; + + sync_fd = flatpak_bwrap_add_sync_fd (bwrap); + if (sync_fd < 0) + goto out; + + security_context = wp_security_context_manager_v1_create_listener (security_context_manager, + listen_fd, + sync_fd); + wp_security_context_v1_set_sandbox_engine (security_context, "org.flatpak"); + wp_security_context_v1_set_app_id (security_context, app_id); + wp_security_context_v1_set_instance_id (security_context, instance_id); + wp_security_context_v1_commit (security_context); + wp_security_context_v1_destroy (security_context); + if (wl_display_roundtrip (display) < 0) + goto out; + + *socket_path_out = g_steal_pointer (&socket_path); + res = TRUE; + +out: + if (listen_fd >= 0) + close (listen_fd); + if (security_context_manager) + wp_security_context_manager_v1_destroy (security_context_manager); + wl_display_disconnect (display); + return res; +} + +#endif /* ENABLE_WAYLAND_SECURITY_CONTEXT */ + +/** + * flatpak_run_add_wayland_args: + * + * Returns: %TRUE if a Wayland socket was found. + */ +gboolean +flatpak_run_add_wayland_args (FlatpakBwrap *bwrap, + const char *app_id, + const char *instance_id, + gboolean inherit_wayland_socket) +{ + const char *wayland_display; + g_autofree char *wayland_socket = NULL; + g_autofree char *sandbox_wayland_socket = NULL; + gboolean res = FALSE; + struct stat statbuf; + int fd; +#ifdef ENABLE_WAYLAND_SECURITY_CONTEXT + gboolean security_context_available = FALSE; +#endif + + wayland_display = get_wayland_display_name (); + +#ifdef ENABLE_WAYLAND_SECURITY_CONTEXT + if (flatpak_run_create_wayland_security_context (bwrap, app_id, instance_id, + wayland_display, + &security_context_available, + &wayland_socket)) + { + g_debug ("Created Wayland socket with security context: %s", + wayland_socket); + g_assert (security_context_available); + } + /* If security-context is available but we failed to set it up, bail out */ + else if (security_context_available) + { + g_debug ("Failed to set up Wayland security context"); + return FALSE; + } + else +#endif /* ENABLE_WAYLAND_SECURITY_CONTEXT */ + { + g_debug ("Using ordinary Wayland socket, without security context"); + wayland_socket = get_wayland_socket_path (wayland_display); + } + + if (!g_str_has_prefix (wayland_display, "wayland-") || + strchr (wayland_display, '/') != NULL) + { + g_debug ("Not preserving WAYLAND_DISPLAY=\"%s\"", wayland_display); + wayland_display = "wayland-0"; + flatpak_bwrap_set_env (bwrap, "WAYLAND_DISPLAY", wayland_display, TRUE); + } + + sandbox_wayland_socket = g_strdup_printf ("/run/flatpak/%s", wayland_display); + + if (stat (wayland_socket, &statbuf) == 0 && + (statbuf.st_mode & S_IFMT) == S_IFSOCK) + { + res = TRUE; + flatpak_bwrap_add_args (bwrap, + "--ro-bind", wayland_socket, sandbox_wayland_socket, + NULL); + flatpak_bwrap_add_runtime_dir_member (bwrap, wayland_display); + } + + /* If inherit-wayland-socket is not set, unset WAYLAND_SOCKET unconditionally + * without checking the validity of the value of WAYLAND_SOCKET. */ + if (!inherit_wayland_socket) + flatpak_bwrap_unset_env (bwrap, "WAYLAND_SOCKET"); + + fd = get_wayland_socket_fd (); + if (fd >= 0) + { + if (inherit_wayland_socket) + { + flatpak_bwrap_add_fd (bwrap, fd); + } + else + { + /* Make sure the fd is close-on-execute so it won't be inherited by the + * application. We do this in preference to closing it, because if this function + * was somehow called twice, and the same fd number was reused for an + * unrelated purpose, we don't want to close the unrelated fd the + * second time. */ + fcntl (fd, F_SETFD, FD_CLOEXEC); + } + } + + return res; +} diff --git a/common/flatpak-run-x11-private.h b/common/flatpak-run-x11-private.h new file mode 100644 index 0000000..96da2e6 --- /dev/null +++ b/common/flatpak-run-x11-private.h @@ -0,0 +1,42 @@ +/* + * Copyright © 2014 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#pragma once + +#include "libglnx.h" + +#include "flatpak-bwrap-private.h" +#include "flatpak-common-types-private.h" +#include "flatpak-context-private.h" + +G_BEGIN_DECLS + +void flatpak_run_add_x11_args (FlatpakBwrap *bwrap, + gboolean allowed, + FlatpakContextShares shares); + +gboolean flatpak_run_parse_x11_display (const char *display, + int *family, + char **x11_socket, + char **remote_host, + char **original_display_nr, + GError **error); + +G_END_DECLS diff --git a/common/flatpak-run-x11.c b/common/flatpak-run-x11.c new file mode 100644 index 0000000..90931c2 --- /dev/null +++ b/common/flatpak-run-x11.c @@ -0,0 +1,333 @@ +/* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: + * Copyright © 2014-2019 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#include "config.h" +#include "flatpak-run-x11-private.h" + +#include + +#ifdef ENABLE_XAUTH +#include +#endif + +/* This is part of the X11 protocol, so we can safely hard-code it here */ +#define FamilyInternet6 (6) + +#ifdef ENABLE_XAUTH +static gboolean +auth_streq (const char *str, + const char *au_str, + size_t au_len) +{ + return au_len == strlen (str) && memcmp (str, au_str, au_len) == 0; +} + +static gboolean +xauth_entry_should_propagate (const Xauth *xa, + int family, + const char *remote_hostname, + const char *local_hostname, + const char *number) +{ + /* ensure entry isn't for a different type of access */ + if (family != FamilyWild && xa->family != family && xa->family != FamilyWild) + return FALSE; + + /* ensure entry isn't for remote access, except that if remote_hostname + * is specified, then remote access to that hostname is OK */ + if (xa->family != FamilyWild && xa->family != FamilyLocal && + (remote_hostname == NULL || + !auth_streq (remote_hostname, xa->address, xa->address_length))) + return FALSE; + + /* ensure entry is for this machine */ + if (xa->family == FamilyLocal && !auth_streq (local_hostname, xa->address, xa->address_length)) + { + /* OpenSUSE inherits the hostname value from DHCP without updating + * its X11 authentication cookie. The old hostname value can still + * be found in the environment variable XAUTHLOCALHOSTNAME. + * For reference: + * https://bugzilla.opensuse.org/show_bug.cgi?id=262309 + * For this reason if we have a cookie whose address is equal to the + * variable XAUTHLOCALHOSTNAME, we still need to propagate it, but + * we also need to change its address to `unames.nodename`. + */ + const char *xauth_local_hostname; + xauth_local_hostname = g_getenv ("XAUTHLOCALHOSTNAME"); + if (xauth_local_hostname == NULL) + return FALSE; + + if (!auth_streq ((char *) xauth_local_hostname, xa->address, xa->address_length)) + return FALSE; + } + + /* ensure entry is for this session */ + if (xa->number != NULL && !auth_streq (number, xa->number, xa->number_length)) + return FALSE; + + return TRUE; +} + +static void +write_xauth (int family, + const char *remote_host, + const char *number, + FILE *output) +{ + Xauth *xa, local_xa; + char *filename; + FILE *f; + struct utsname unames; + + if (uname (&unames)) + { + g_warning ("uname failed"); + return; + } + + filename = XauFileName (); + f = fopen (filename, "rb"); + if (f == NULL) + return; + + while (TRUE) + { + xa = XauReadAuth (f); + if (xa == NULL) + break; + if (xauth_entry_should_propagate (xa, family, remote_host, + unames.nodename, number)) + { + local_xa = *xa; + + if (local_xa.family == FamilyLocal && + !auth_streq (unames.nodename, local_xa.address, local_xa.address_length)) + { + /* If we decided to propagate this cookie, but its address + * doesn't match `unames.nodename`, we need to change it or + * inside the container it will not work. + */ + local_xa.address = unames.nodename; + local_xa.address_length = strlen (local_xa.address); + } + + if (!XauWriteAuth (output, &local_xa)) + g_warning ("xauth write error"); + } + + XauDisposeAuth (xa); + } + + fclose (f); +} +#else /* !ENABLE_XAUTH */ + +/* When not doing Xauth, any distinct values will do, but use the same + * ones Xauth does so that we can refer to them in our unit test. */ +#define FamilyLocal (256) +#define FamilyWild (65535) + +#endif /* !ENABLE_XAUTH */ + +/* + * @family: (out) (not optional): + * @x11_socket: (out) (not optional): + * @display_nr_out: (out) (not optional): + */ +gboolean +flatpak_run_parse_x11_display (const char *display, + int *family, + char **x11_socket, + char **remote_host, + char **display_nr_out, + GError **error) +{ + const char *colon; + const char *display_nr; + const char *display_nr_end; + + /* Use the last ':', not the first, to cope with [::1]:0 */ + colon = strrchr (display, ':'); + + if (colon == NULL) + return glnx_throw (error, "No colon found in DISPLAY=%s", display); + + if (!g_ascii_isdigit (colon[1])) + return glnx_throw (error, "Colon not followed by a digit in DISPLAY=%s", display); + + display_nr = &colon[1]; + display_nr_end = display_nr; + + while (g_ascii_isdigit (*display_nr_end)) + display_nr_end++; + + *display_nr_out = g_strndup (display_nr, display_nr_end - display_nr); + + if (display == colon || g_str_has_prefix (display, "unix:")) + { + *family = FamilyLocal; + *x11_socket = g_strdup_printf ("/tmp/.X11-unix/X%s", *display_nr_out); + } + else if (display[0] == '[' && display[colon - display - 1] == ']') + { + *family = FamilyInternet6; + *remote_host = g_strndup (display + 1, colon - display - 2); + } + else + { + *family = FamilyWild; + *remote_host = g_strndup (display, colon - display); + } + + return TRUE; +} + +void +flatpak_run_add_x11_args (FlatpakBwrap *bwrap, + gboolean allowed, + FlatpakContextShares shares) +{ + g_autofree char *x11_socket = NULL; + const char *display; + g_autoptr(GError) local_error = NULL; + + /* Always cover /tmp/.X11-unix, that way we never see the host one in case + * we have access to the host /tmp. If you request X access we'll put the right + * thing in this anyway. + * + * We need to be a bit careful here, because there are two situations in + * which potentially hostile processes have access to /tmp and could + * create symlinks, which in principle could cause us to create the + * directory and mount the tmpfs at the target of the symlink instead + * of in the intended place: + * + * - With --filesystem=/tmp, it's the host /tmp - but because of the + * special historical status of /tmp/.X11-unix, we can assume that + * it is pre-created by the host system before user code gets to run. + * + * - When /tmp is shared between all instances of the same app ID, + * in principle the app has control over what's in /tmp, but in + * practice it can't interfere with /tmp/.X11-unix, because we do + * this unconditionally - therefore by the time app code runs, + * /tmp/.X11-unix is already a mount point, meaning the app cannot + * rename or delete it. + */ + flatpak_bwrap_add_args (bwrap, + "--tmpfs", "/tmp/.X11-unix", + NULL); + + if (!allowed) + { + flatpak_bwrap_unset_env (bwrap, "DISPLAY"); + return; + } + + g_info ("Allowing x11 access"); + + display = g_getenv ("DISPLAY"); + + if (display != NULL) + { + g_autofree char *remote_host = NULL; + g_autofree char *display_nr = NULL; + int family = -1; + + if (!flatpak_run_parse_x11_display (display, &family, &x11_socket, + &remote_host, &display_nr, + &local_error)) + { + g_warning ("%s", local_error->message); + flatpak_bwrap_unset_env (bwrap, "DISPLAY"); + return; + } + + g_assert (display_nr != NULL); + + if (x11_socket != NULL + && g_file_test (x11_socket, G_FILE_TEST_EXISTS)) + { + g_assert (g_str_has_prefix (x11_socket, "/tmp/.X11-unix/X")); + flatpak_bwrap_add_args (bwrap, + "--ro-bind", x11_socket, x11_socket, + NULL); + flatpak_bwrap_set_env (bwrap, "DISPLAY", display, TRUE); + } + else if ((shares & FLATPAK_CONTEXT_SHARED_NETWORK) == 0) + { + /* If DISPLAY is for example :42 but /tmp/.X11-unix/X42 + * doesn't exist, then the only way this is going to work + * is if the app can connect to abstract socket + * @/tmp/.X11-unix/X42 or to TCP port localhost:6042, + * either of which requires a shared network namespace. + * + * Alternatively, if DISPLAY is othermachine:23, then we + * definitely need access to TCP port othermachine:6023. */ + if (x11_socket != NULL) + g_warning ("X11 socket %s does not exist in filesystem.", + x11_socket); + else + g_warning ("Remote X11 display detected."); + + g_warning ("X11 access will require --share=network permission."); + } + else if (x11_socket != NULL) + { + g_warning ("X11 socket %s does not exist in filesystem, " + "trying to use abstract socket instead.", + x11_socket); + } + else + { + g_debug ("Assuming --share=network gives access to remote X11"); + } + +#ifdef ENABLE_XAUTH + g_auto(GLnxTmpfile) xauth_tmpf = { 0, }; + + if (glnx_open_anonymous_tmpfile_full (O_RDWR | O_CLOEXEC, "/tmp", &xauth_tmpf, NULL)) + { + FILE *output = fdopen (xauth_tmpf.fd, "wb"); + if (output != NULL) + { + /* fd is now owned by output, steal it from the tmpfile */ + int tmp_fd = dup (g_steal_fd (&xauth_tmpf.fd)); + if (tmp_fd != -1) + { + static const char dest[] = "/run/flatpak/Xauthority"; + + write_xauth (family, remote_host, display_nr, output); + flatpak_bwrap_add_args_data_fd (bwrap, "--ro-bind-data", tmp_fd, dest); + + flatpak_bwrap_set_env (bwrap, "XAUTHORITY", dest, TRUE); + } + + fclose (output); + + if (tmp_fd != -1) + lseek (tmp_fd, 0, SEEK_SET); + } + } +#endif + } + else + { + flatpak_bwrap_unset_env (bwrap, "DISPLAY"); + } +} diff --git a/common/flatpak-run.c b/common/flatpak-run.c index 31a5374..8c92924 100644 --- a/common/flatpak-run.c +++ b/common/flatpak-run.c @@ -1,5 +1,6 @@ /* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: * Copyright © 2014-2019 Red Hat, Inc + * Copyright © 2024 GNOME Foundation, Inc. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -16,6 +17,7 @@ * * Authors: * Alexander Larsson + * Hubert Figuière */ #include "config.h" @@ -48,1337 +50,31 @@ #include #endif -#ifdef ENABLE_XAUTH -#include -#endif - -#include - -#include -#include "libglnx.h" - -#include "flatpak-run-private.h" -#include "flatpak-utils-base-private.h" -#include "flatpak-dir-private.h" -#include "flatpak-instance-private.h" -#include "flatpak-systemd-dbus-generated.h" -#include "flatpak-document-dbus-generated.h" -#include "flatpak-error.h" -#include "session-helper/flatpak-session-helper.h" - -#define DEFAULT_SHELL "/bin/sh" - -const char * const abs_usrmerged_dirs[] = -{ - "/bin", - "/lib", - "/lib32", - "/lib64", - "/sbin", - NULL -}; -const char * const *flatpak_abs_usrmerged_dirs = abs_usrmerged_dirs; - -static char * -extract_unix_path_from_dbus_address (const char *address) -{ - const char *path, *path_end; - - if (address == NULL) - return NULL; - - if (!g_str_has_prefix (address, "unix:")) - return NULL; - - path = strstr (address, "path="); - if (path == NULL) - return NULL; - path += strlen ("path="); - path_end = path; - while (*path_end != 0 && *path_end != ',') - path_end++; - - return g_strndup (path, path_end - path); -} - -/* This is part of the X11 protocol, so we can safely hard-code it here */ -#define FamilyInternet6 (6) - -#ifdef ENABLE_XAUTH -static gboolean -auth_streq (const char *str, - const char *au_str, - size_t au_len) -{ - return au_len == strlen (str) && memcmp (str, au_str, au_len) == 0; -} - -static gboolean -xauth_entry_should_propagate (const Xauth *xa, - int family, - const char *remote_hostname, - const char *local_hostname, - const char *number) -{ - /* ensure entry isn't for a different type of access */ - if (family != FamilyWild && xa->family != family && xa->family != FamilyWild) - return FALSE; - - /* ensure entry isn't for remote access, except that if remote_hostname - * is specified, then remote access to that hostname is OK */ - if (xa->family != FamilyWild && xa->family != FamilyLocal && - (remote_hostname == NULL || - !auth_streq (remote_hostname, xa->address, xa->address_length))) - return FALSE; - - /* ensure entry is for this machine */ - if (xa->family == FamilyLocal && !auth_streq (local_hostname, xa->address, xa->address_length)) - { - /* OpenSUSE inherits the hostname value from DHCP without updating - * its X11 authentication cookie. The old hostname value can still - * be found in the environment variable XAUTHLOCALHOSTNAME. - * For reference: - * https://bugzilla.opensuse.org/show_bug.cgi?id=262309 - * For this reason if we have a cookie whose address is equal to the - * variable XAUTHLOCALHOSTNAME, we still need to propagate it, but - * we also need to change its address to `unames.nodename`. - */ - const char *xauth_local_hostname; - xauth_local_hostname = g_getenv ("XAUTHLOCALHOSTNAME"); - if (xauth_local_hostname == NULL) - return FALSE; - - if (!auth_streq ((char *) xauth_local_hostname, xa->address, xa->address_length)) - return FALSE; - } - - /* ensure entry is for this session */ - if (xa->number != NULL && !auth_streq (number, xa->number, xa->number_length)) - return FALSE; - - return TRUE; -} - -static void -write_xauth (int family, - const char *remote_host, - const char *number, - FILE *output) -{ - Xauth *xa, local_xa; - char *filename; - FILE *f; - struct utsname unames; - - if (uname (&unames)) - { - g_warning ("uname failed"); - return; - } - - filename = XauFileName (); - f = fopen (filename, "rb"); - if (f == NULL) - return; - - while (TRUE) - { - xa = XauReadAuth (f); - if (xa == NULL) - break; - if (xauth_entry_should_propagate (xa, family, remote_host, - unames.nodename, number)) - { - local_xa = *xa; - - if (local_xa.family == FamilyLocal && - !auth_streq (unames.nodename, local_xa.address, local_xa.address_length)) - { - /* If we decided to propagate this cookie, but its address - * doesn't match `unames.nodename`, we need to change it or - * inside the container it will not work. - */ - local_xa.address = unames.nodename; - local_xa.address_length = strlen (local_xa.address); - } - - if (!XauWriteAuth (output, &local_xa)) - g_warning ("xauth write error"); - } - - XauDisposeAuth (xa); - } - - fclose (f); -} -#else /* !ENABLE_XAUTH */ - -/* When not doing Xauth, any distinct values will do, but use the same - * ones Xauth does so that we can refer to them in our unit test. */ -#define FamilyLocal (256) -#define FamilyWild (65535) - -#endif /* !ENABLE_XAUTH */ - -/* - * @family: (out) (not optional): - * @x11_socket: (out) (not optional): - * @display_nr_out: (out) (not optional): - */ -gboolean -flatpak_run_parse_x11_display (const char *display, - int *family, - char **x11_socket, - char **remote_host, - char **display_nr_out, - GError **error) -{ - const char *colon; - const char *display_nr; - const char *display_nr_end; - - /* Use the last ':', not the first, to cope with [::1]:0 */ - colon = strrchr (display, ':'); - - if (colon == NULL) - return glnx_throw (error, "No colon found in DISPLAY=%s", display); - - if (!g_ascii_isdigit (colon[1])) - return glnx_throw (error, "Colon not followed by a digit in DISPLAY=%s", display); - - display_nr = &colon[1]; - display_nr_end = display_nr; - - while (g_ascii_isdigit (*display_nr_end)) - display_nr_end++; - - *display_nr_out = g_strndup (display_nr, display_nr_end - display_nr); - - if (display == colon || g_str_has_prefix (display, "unix:")) - { - *family = FamilyLocal; - *x11_socket = g_strdup_printf ("/tmp/.X11-unix/X%s", *display_nr_out); - } - else if (display[0] == '[' && display[colon - display - 1] == ']') - { - *family = FamilyInternet6; - *remote_host = g_strndup (display + 1, colon - display - 2); - } - else - { - *family = FamilyWild; - *remote_host = g_strndup (display, colon - display); - } - - return TRUE; -} - -static void -flatpak_run_add_x11_args (FlatpakBwrap *bwrap, - gboolean allowed, - FlatpakContextShares shares) -{ - g_autofree char *x11_socket = NULL; - const char *display; - g_autoptr(GError) local_error = NULL; - - /* Always cover /tmp/.X11-unix, that way we never see the host one in case - * we have access to the host /tmp. If you request X access we'll put the right - * thing in this anyway. - * - * We need to be a bit careful here, because there are two situations in - * which potentially hostile processes have access to /tmp and could - * create symlinks, which in principle could cause us to create the - * directory and mount the tmpfs at the target of the symlink instead - * of in the intended place: - * - * - With --filesystem=/tmp, it's the host /tmp - but because of the - * special historical status of /tmp/.X11-unix, we can assume that - * it is pre-created by the host system before user code gets to run. - * - * - When /tmp is shared between all instances of the same app ID, - * in principle the app has control over what's in /tmp, but in - * practice it can't interfere with /tmp/.X11-unix, because we do - * this unconditionally - therefore by the time app code runs, - * /tmp/.X11-unix is already a mount point, meaning the app cannot - * rename or delete it. - */ - flatpak_bwrap_add_args (bwrap, - "--tmpfs", "/tmp/.X11-unix", - NULL); - - if (!allowed) - { - flatpak_bwrap_unset_env (bwrap, "DISPLAY"); - return; - } - - g_debug ("Allowing x11 access"); - - display = g_getenv ("DISPLAY"); - - if (display != NULL) - { - g_autofree char *remote_host = NULL; - g_autofree char *display_nr = NULL; - int family = -1; - - if (!flatpak_run_parse_x11_display (display, &family, &x11_socket, - &remote_host, &display_nr, - &local_error)) - { - g_warning ("%s", local_error->message); - flatpak_bwrap_unset_env (bwrap, "DISPLAY"); - return; - } - - g_assert (display_nr != NULL); - - if (x11_socket != NULL - && g_file_test (x11_socket, G_FILE_TEST_EXISTS)) - { - g_assert (g_str_has_prefix (x11_socket, "/tmp/.X11-unix/X")); - flatpak_bwrap_add_args (bwrap, - "--ro-bind", x11_socket, x11_socket, - NULL); - flatpak_bwrap_set_env (bwrap, "DISPLAY", display, TRUE); - } - else if ((shares & FLATPAK_CONTEXT_SHARED_NETWORK) == 0) - { - /* If DISPLAY is for example :42 but /tmp/.X11-unix/X42 - * doesn't exist, then the only way this is going to work - * is if the app can connect to abstract socket - * @/tmp/.X11-unix/X42 or to TCP port localhost:6042, - * either of which requires a shared network namespace. - * - * Alternatively, if DISPLAY is othermachine:23, then we - * definitely need access to TCP port othermachine:6023. */ - if (x11_socket != NULL) - g_warning ("X11 socket %s does not exist in filesystem.", - x11_socket); - else - g_warning ("Remote X11 display detected."); - - g_warning ("X11 access will require --share=network permission."); - } - else if (x11_socket != NULL) - { - g_warning ("X11 socket %s does not exist in filesystem, " - "trying to use abstract socket instead.", - x11_socket); - } - else - { - flatpak_debug2 ("Assuming --share=network gives access to remote X11"); - } - -#ifdef ENABLE_XAUTH - g_auto(GLnxTmpfile) xauth_tmpf = { 0, }; - - if (glnx_open_anonymous_tmpfile_full (O_RDWR | O_CLOEXEC, "/tmp", &xauth_tmpf, NULL)) - { - FILE *output = fdopen (xauth_tmpf.fd, "wb"); - if (output != NULL) - { - /* fd is now owned by output, steal it from the tmpfile */ - int tmp_fd = dup (glnx_steal_fd (&xauth_tmpf.fd)); - if (tmp_fd != -1) - { - static const char dest[] = "/run/flatpak/Xauthority"; - - write_xauth (family, remote_host, display_nr, output); - flatpak_bwrap_add_args_data_fd (bwrap, "--ro-bind-data", tmp_fd, dest); - - flatpak_bwrap_set_env (bwrap, "XAUTHORITY", dest, TRUE); - } - - fclose (output); - - if (tmp_fd != -1) - lseek (tmp_fd, 0, SEEK_SET); - } - } -#endif - } - else - { - flatpak_bwrap_unset_env (bwrap, "DISPLAY"); - } -} - -static gboolean -flatpak_run_add_wayland_args (FlatpakBwrap *bwrap) -{ - const char *wayland_display; - g_autofree char *user_runtime_dir = flatpak_get_real_xdg_runtime_dir (); - g_autofree char *wayland_socket = NULL; - g_autofree char *sandbox_wayland_socket = NULL; - gboolean res = FALSE; - struct stat statbuf; - - wayland_display = g_getenv ("WAYLAND_DISPLAY"); - if (!wayland_display) - wayland_display = "wayland-0"; - - if (wayland_display[0] == '/') - wayland_socket = g_strdup (wayland_display); - else - wayland_socket = g_build_filename (user_runtime_dir, wayland_display, NULL); - - if (!g_str_has_prefix (wayland_display, "wayland-") || - strchr (wayland_display, '/') != NULL) - { - wayland_display = "wayland-0"; - flatpak_bwrap_set_env (bwrap, "WAYLAND_DISPLAY", wayland_display, TRUE); - } - - sandbox_wayland_socket = g_strdup_printf ("/run/flatpak/%s", wayland_display); - - if (stat (wayland_socket, &statbuf) == 0 && - (statbuf.st_mode & S_IFMT) == S_IFSOCK) - { - res = TRUE; - flatpak_bwrap_add_args (bwrap, - "--ro-bind", wayland_socket, sandbox_wayland_socket, - NULL); - flatpak_bwrap_add_runtime_dir_member (bwrap, wayland_display); - } - return res; -} - -static void -flatpak_run_add_ssh_args (FlatpakBwrap *bwrap) -{ - static const char sandbox_auth_socket[] = "/run/flatpak/ssh-auth"; - const char * auth_socket; - - auth_socket = g_getenv ("SSH_AUTH_SOCK"); - - if (!auth_socket) - return; /* ssh agent not present */ - - if (!g_file_test (auth_socket, G_FILE_TEST_EXISTS)) - { - /* Let's clean it up, so that the application will not try to connect */ - flatpak_bwrap_unset_env (bwrap, "SSH_AUTH_SOCK"); - return; - } - - flatpak_bwrap_add_args (bwrap, - "--ro-bind", auth_socket, sandbox_auth_socket, - NULL); - flatpak_bwrap_set_env (bwrap, "SSH_AUTH_SOCK", sandbox_auth_socket, TRUE); -} - -static void -flatpak_run_add_pcsc_args (FlatpakBwrap *bwrap) -{ - const char * pcsc_socket; - const char * sandbox_pcsc_socket = "/run/pcscd/pcscd.comm"; - - pcsc_socket = g_getenv ("PCSCLITE_CSOCK_NAME"); - if (pcsc_socket) - { - if (!g_file_test (pcsc_socket, G_FILE_TEST_EXISTS)) - { - flatpak_bwrap_unset_env (bwrap, "PCSCLITE_CSOCK_NAME"); - return; - } - } - else - { - pcsc_socket = "/run/pcscd/pcscd.comm"; - if (!g_file_test (pcsc_socket, G_FILE_TEST_EXISTS)) - return; - } - - flatpak_bwrap_add_args (bwrap, - "--ro-bind", pcsc_socket, sandbox_pcsc_socket, - NULL); - flatpak_bwrap_set_env (bwrap, "PCSCLITE_CSOCK_NAME", sandbox_pcsc_socket, TRUE); -} - -static gboolean -flatpak_run_cups_check_server_is_socket (const char *server) -{ - if (g_str_has_prefix (server, "/") && strstr (server, ":") == NULL) - return TRUE; - - return FALSE; -} - -/* Try to find a default server from a cups confguration file */ -static char * -flatpak_run_get_cups_server_name_config (const char *path) -{ - g_autoptr(GFile) file = g_file_new_for_path (path); - g_autoptr(GError) my_error = NULL; - g_autoptr(GFileInputStream) input_stream = NULL; - g_autoptr(GDataInputStream) data_stream = NULL; - size_t len; - - input_stream = g_file_read (file, NULL, &my_error); - if (my_error) - { - g_debug ("CUPS configuration file '%s': %s", path, my_error->message); - return NULL; - } - - data_stream = g_data_input_stream_new (G_INPUT_STREAM (input_stream)); - - while (TRUE) - { - g_autofree char *line = g_data_input_stream_read_line (data_stream, &len, NULL, NULL); - if (line == NULL) - break; - - g_strchug (line); - - if ((*line == '\0') || (*line == '#')) - continue; - - g_auto(GStrv) tokens = g_strsplit (line, " ", 2); - - if ((tokens[0] != NULL) && (tokens[1] != NULL)) - { - if (strcmp ("ServerName", tokens[0]) == 0) - { - g_strchug (tokens[1]); - - if (flatpak_run_cups_check_server_is_socket (tokens[1])) - return g_strdup (tokens[1]); - } - } - } - - return NULL; -} - -static char * -flatpak_run_get_cups_server_name (void) -{ - g_autofree char * cups_server = NULL; - g_autofree char * cups_config_path = NULL; - - /* TODO - * we don't currently support cups servers located on the network, if such - * server is detected, we simply ignore it and in the worst case we fallback - * to the default socket - */ - cups_server = g_strdup (g_getenv ("CUPS_SERVER")); - if (cups_server && flatpak_run_cups_check_server_is_socket (cups_server)) - return g_steal_pointer (&cups_server); - g_clear_pointer (&cups_server, g_free); - - cups_config_path = g_build_filename (g_get_home_dir (), ".cups/client.conf", NULL); - cups_server = flatpak_run_get_cups_server_name_config (cups_config_path); - if (cups_server && flatpak_run_cups_check_server_is_socket (cups_server)) - return g_steal_pointer (&cups_server); - g_clear_pointer (&cups_server, g_free); - - cups_server = flatpak_run_get_cups_server_name_config ("/etc/cups/client.conf"); - if (cups_server && flatpak_run_cups_check_server_is_socket (cups_server)) - return g_steal_pointer (&cups_server); - - // Fallback to default socket - return g_strdup ("/var/run/cups/cups.sock"); -} - -static void -flatpak_run_add_cups_args (FlatpakBwrap *bwrap) -{ - g_autofree char * sandbox_server_name = g_strdup ("/var/run/cups/cups.sock"); - g_autofree char * cups_server_name = flatpak_run_get_cups_server_name (); - - if (!g_file_test (cups_server_name, G_FILE_TEST_EXISTS)) - { - g_debug ("Could not find CUPS server"); - return; - } - - flatpak_bwrap_add_args (bwrap, - "--ro-bind", cups_server_name, sandbox_server_name, - NULL); -} - -static void -flatpak_run_add_gpg_agent_args (FlatpakBwrap *bwrap) -{ - const char * agent_socket; - g_autofree char * sandbox_agent_socket = NULL; - g_autoptr(GError) gpgconf_error = NULL; - g_autoptr(GSubprocess) process = NULL; - GInputStream *base_stream = NULL; - g_autoptr(GDataInputStream) data_stream = NULL; - - process = g_subprocess_new (G_SUBPROCESS_FLAGS_STDOUT_PIPE, - &gpgconf_error, - "gpgconf", "--list-dir", "agent-socket", NULL); - - if (gpgconf_error) - { - g_debug ("GPG-Agent directories: %s", gpgconf_error->message); - return; - } - - base_stream = g_subprocess_get_stdout_pipe (process); - data_stream = g_data_input_stream_new (base_stream); - - agent_socket = g_data_input_stream_read_line (data_stream, - NULL, NULL, - &gpgconf_error); - - if (!agent_socket || gpgconf_error) - { - g_debug ("GPG-Agent directories: %s", gpgconf_error->message); - return; - } - - sandbox_agent_socket = g_strdup_printf ("/run/user/%d/gnupg/S.gpg-agent", getuid ()); - - flatpak_bwrap_add_args (bwrap, - "--ro-bind-try", agent_socket, sandbox_agent_socket, - NULL); -} - -/* Try to find a default server from a pulseaudio confguration file */ -static char * -flatpak_run_get_pulseaudio_server_user_config (const char *path) -{ - g_autoptr(GFile) file = g_file_new_for_path (path); - g_autoptr(GError) my_error = NULL; - g_autoptr(GFileInputStream) input_stream = NULL; - g_autoptr(GDataInputStream) data_stream = NULL; - size_t len; - - input_stream = g_file_read (file, NULL, &my_error); - if (my_error) - { - g_debug ("Pulseaudio user configuration file '%s': %s", path, my_error->message); - return NULL; - } - - data_stream = g_data_input_stream_new (G_INPUT_STREAM (input_stream)); - - while (TRUE) - { - g_autofree char *line = g_data_input_stream_read_line (data_stream, &len, NULL, NULL); - if (line == NULL) - break; - - g_strchug (line); - - if ((*line == '\0') || (*line == ';') || (*line == '#')) - continue; - - if (g_str_has_prefix (line, ".include ")) - { - g_autofree char *rec_path = g_strdup (line + 9); - g_strstrip (rec_path); - char *found = flatpak_run_get_pulseaudio_server_user_config (rec_path); - if (found) - return found; - } - else if (g_str_has_prefix (line, "[")) - { - return NULL; - } - else - { - g_auto(GStrv) tokens = g_strsplit (line, "=", 2); - - if ((tokens[0] != NULL) && (tokens[1] != NULL)) - { - g_strchomp (tokens[0]); - if (strcmp ("default-server", tokens[0]) == 0) - { - g_strstrip (tokens[1]); - g_debug ("Found pulseaudio socket from configuration file '%s': %s", path, tokens[1]); - return g_strdup (tokens[1]); - } - } - } - } - - return NULL; -} - -static char * -flatpak_run_get_pulseaudio_server (void) -{ - const char * pulse_clientconfig; - char *pulse_server; - g_autofree char *pulse_user_config = NULL; - - pulse_server = g_strdup (g_getenv ("PULSE_SERVER")); - if (pulse_server) - return pulse_server; - - pulse_clientconfig = g_getenv ("PULSE_CLIENTCONFIG"); - if (pulse_clientconfig) - return flatpak_run_get_pulseaudio_server_user_config (pulse_clientconfig); - - pulse_user_config = g_build_filename (g_get_user_config_dir (), "pulse/client.conf", NULL); - pulse_server = flatpak_run_get_pulseaudio_server_user_config (pulse_user_config); - if (pulse_server) - return pulse_server; - - pulse_server = flatpak_run_get_pulseaudio_server_user_config ("/etc/pulse/client.conf"); - if (pulse_server) - return pulse_server; - - return NULL; -} - -/* - * Parse a PulseAudio server string, as documented on - * https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/ServerStrings/. - * Returns the first supported server address, or NULL if none are supported, - * or NULL with @remote set if @value points to a remote server. - */ -static char * -flatpak_run_parse_pulse_server (const char *value, - gboolean *remote) -{ - g_auto(GStrv) servers = g_strsplit (value, " ", 0); - gsize i; - - for (i = 0; servers[i] != NULL; i++) - { - const char *server = servers[i]; - if (g_str_has_prefix (server, "{")) - { - /* - * TODO: compare the value within {} to the local hostname and D-Bus machine ID, - * and skip if it matches neither. - */ - const char * closing = strstr (server, "}"); - if (closing == NULL) - continue; - server = closing + 1; - } - - if (g_str_has_prefix (server, "unix:")) - return g_strdup (server + 5); - if (server[0] == '/') - return g_strdup (server); - - if (g_str_has_prefix (server, "tcp:")) - { - *remote = TRUE; - return NULL; - } - } - - return NULL; -} - -/* - * Get the machine ID as used by PulseAudio. This is the systemd/D-Bus - * machine ID, or failing that, the hostname. - */ -static char * -flatpak_run_get_pulse_machine_id (void) -{ - static const char * const machine_ids[] = - { - "/etc/machine-id", - "/var/lib/dbus/machine-id", - }; - gsize i; - - for (i = 0; i < G_N_ELEMENTS (machine_ids); i++) - { - g_autofree char *ret = NULL; - - if (g_file_get_contents (machine_ids[i], &ret, NULL, NULL)) - { - gsize j; - - g_strstrip (ret); - - for (j = 0; ret[j] != '\0'; j++) - { - if (!g_ascii_isxdigit (ret[j])) - break; - } - - if (ret[0] != '\0' && ret[j] == '\0') - return g_steal_pointer (&ret); - } - } - - return g_strdup (g_get_host_name ()); -} - -/* - * Get the directory used by PulseAudio for its configuration. - */ -static char * -flatpak_run_get_pulse_home (void) -{ - /* Legacy path ~/.pulse is tried first, for compatibility */ - { - const char *parent = g_get_home_dir (); - g_autofree char *ret = g_build_filename (parent, ".pulse", NULL); - - if (g_file_test (ret, G_FILE_TEST_IS_DIR)) - return g_steal_pointer (&ret); - } - - /* The more modern path, usually ~/.config/pulse */ - { - const char *parent = g_get_user_config_dir (); - /* Usually ~/.config/pulse */ - g_autofree char *ret = g_build_filename (parent, "pulse", NULL); - - if (g_file_test (ret, G_FILE_TEST_IS_DIR)) - return g_steal_pointer (&ret); - } - - return NULL; -} - -/* - * Get the runtime directory used by PulseAudio for its socket. - */ -static char * -flatpak_run_get_pulse_runtime_dir (void) -{ - const char *val = NULL; - - val = g_getenv ("PULSE_RUNTIME_PATH"); - - if (val != NULL) - return realpath (val, NULL); - - { - const char *user_runtime_dir = g_get_user_runtime_dir (); - - if (user_runtime_dir != NULL) - { - g_autofree char *dir = g_build_filename (user_runtime_dir, "pulse", NULL); - - if (g_file_test (dir, G_FILE_TEST_IS_DIR)) - return realpath (dir, NULL); - } - } - - { - g_autofree char *pulse_home = flatpak_run_get_pulse_home (); - g_autofree char *machine_id = flatpak_run_get_pulse_machine_id (); - - if (pulse_home != NULL && machine_id != NULL) - { - /* This is usually a symlink, but we take its realpath() anyway */ - g_autofree char *dir = g_strdup_printf ("%s/%s-runtime", pulse_home, machine_id); - - if (g_file_test (dir, G_FILE_TEST_IS_DIR)) - return realpath (dir, NULL); - } - } - - return NULL; -} - -static void -flatpak_run_add_pulseaudio_args (FlatpakBwrap *bwrap, - FlatpakContextShares shares) -{ - g_autofree char *pulseaudio_server = flatpak_run_get_pulseaudio_server (); - g_autofree char *pulseaudio_socket = NULL; - g_autofree char *pulse_runtime_dir = flatpak_run_get_pulse_runtime_dir (); - gboolean remote = FALSE; - - if (pulseaudio_server) - pulseaudio_socket = flatpak_run_parse_pulse_server (pulseaudio_server, - &remote); - - if (pulseaudio_socket == NULL && !remote) - { - pulseaudio_socket = g_build_filename (pulse_runtime_dir, "native", NULL); - - if (!g_file_test (pulseaudio_socket, G_FILE_TEST_EXISTS)) - g_clear_pointer (&pulseaudio_socket, g_free); - } - - if (pulseaudio_socket == NULL && !remote) - { - pulseaudio_socket = realpath ("/var/run/pulse/native", NULL); - - if (pulseaudio_socket && !g_file_test (pulseaudio_socket, G_FILE_TEST_EXISTS)) - g_clear_pointer (&pulseaudio_socket, g_free); - } - - flatpak_bwrap_unset_env (bwrap, "PULSE_SERVER"); - - if (remote) - { - if ((shares & FLATPAK_CONTEXT_SHARED_NETWORK) == 0) - { - g_warning ("Remote PulseAudio server configured."); - g_warning ("PulseAudio access will require --share=network permission."); - } - - g_debug ("Using remote PulseAudio server \"%s\"", pulseaudio_server); - flatpak_bwrap_set_env (bwrap, "PULSE_SERVER", pulseaudio_server, TRUE); - } - else if (pulseaudio_socket && g_file_test (pulseaudio_socket, G_FILE_TEST_EXISTS)) - { - static const char sandbox_socket_path[] = "/run/flatpak/pulse/native"; - static const char pulse_server[] = "unix:/run/flatpak/pulse/native"; - static const char config_path[] = "/run/flatpak/pulse/config"; - gboolean share_shm = FALSE; /* TODO: When do we add this? */ - g_autofree char *client_config = g_strdup_printf ("enable-shm=%s\n", share_shm ? "yes" : "no"); - - /* FIXME - error handling */ - if (!flatpak_bwrap_add_args_data (bwrap, "pulseaudio", client_config, -1, config_path, NULL)) - return; - - flatpak_bwrap_add_args (bwrap, - "--ro-bind", pulseaudio_socket, sandbox_socket_path, - NULL); - - flatpak_bwrap_set_env (bwrap, "PULSE_SERVER", pulse_server, TRUE); - flatpak_bwrap_set_env (bwrap, "PULSE_CLIENTCONFIG", config_path, TRUE); - flatpak_bwrap_add_runtime_dir_member (bwrap, "pulse"); - } - else - g_debug ("Could not find pulseaudio socket"); - - /* Also allow ALSA access. This was added in 1.8, and is not ideally named. However, - * since the practical permission of ALSA and PulseAudio are essentially the same, and - * since we don't want to add more permissions for something we plan to replace with - * portals/pipewire going forward we reinterpret pulseaudio to also mean ALSA. - */ - if (!remote && g_file_test ("/dev/snd", G_FILE_TEST_IS_DIR)) - flatpak_bwrap_add_args (bwrap, "--dev-bind", "/dev/snd", "/dev/snd", NULL); -} - -static void -flatpak_run_add_resolved_args (FlatpakBwrap *bwrap) -{ - const char *resolved_socket = "/run/systemd/resolve/io.systemd.Resolve"; - - if (g_file_test (resolved_socket, G_FILE_TEST_EXISTS)) - flatpak_bwrap_add_args (bwrap, "--bind", resolved_socket, resolved_socket, NULL); -} - -static void -flatpak_run_add_journal_args (FlatpakBwrap *bwrap) -{ - g_autofree char *journal_socket_socket = g_strdup ("/run/systemd/journal/socket"); - g_autofree char *journal_stdout_socket = g_strdup ("/run/systemd/journal/stdout"); - - if (g_file_test (journal_socket_socket, G_FILE_TEST_EXISTS)) - { - flatpak_bwrap_add_args (bwrap, - "--ro-bind", journal_socket_socket, journal_socket_socket, - NULL); - } - if (g_file_test (journal_stdout_socket, G_FILE_TEST_EXISTS)) - { - flatpak_bwrap_add_args (bwrap, - "--ro-bind", journal_stdout_socket, journal_stdout_socket, - NULL); - } -} - -static char * -create_proxy_socket (char *template) -{ - g_autofree char *user_runtime_dir = flatpak_get_real_xdg_runtime_dir (); - g_autofree char *proxy_socket_dir = g_build_filename (user_runtime_dir, ".dbus-proxy", NULL); - g_autofree char *proxy_socket = g_build_filename (proxy_socket_dir, template, NULL); - int fd; - - if (!glnx_shutil_mkdir_p_at (AT_FDCWD, proxy_socket_dir, 0755, NULL, NULL)) - return NULL; - - fd = g_mkstemp (proxy_socket); - if (fd == -1) - return NULL; - - close (fd); - - return g_steal_pointer (&proxy_socket); -} - -static gboolean -flatpak_run_add_system_dbus_args (FlatpakBwrap *app_bwrap, - FlatpakBwrap *proxy_arg_bwrap, - FlatpakContext *context, - FlatpakRunFlags flags) -{ - gboolean unrestricted, no_proxy; - const char *dbus_address = g_getenv ("DBUS_SYSTEM_BUS_ADDRESS"); - g_autofree char *real_dbus_address = NULL; - g_autofree char *dbus_system_socket = NULL; - - unrestricted = (context->sockets & FLATPAK_CONTEXT_SOCKET_SYSTEM_BUS) != 0; - if (unrestricted) - g_debug ("Allowing system-dbus access"); - - no_proxy = (flags & FLATPAK_RUN_FLAG_NO_SYSTEM_BUS_PROXY) != 0; - - if (dbus_address != NULL) - dbus_system_socket = extract_unix_path_from_dbus_address (dbus_address); - else if (g_file_test ("/var/run/dbus/system_bus_socket", G_FILE_TEST_EXISTS)) - dbus_system_socket = g_strdup ("/var/run/dbus/system_bus_socket"); - - if (dbus_system_socket != NULL && unrestricted) - { - flatpak_bwrap_add_args (app_bwrap, - "--ro-bind", dbus_system_socket, "/run/dbus/system_bus_socket", - NULL); - flatpak_bwrap_set_env (app_bwrap, "DBUS_SYSTEM_BUS_ADDRESS", "unix:path=/run/dbus/system_bus_socket", TRUE); - - return TRUE; - } - else if (!no_proxy && flatpak_context_get_needs_system_bus_proxy (context)) - { - g_autofree char *proxy_socket = create_proxy_socket ("system-bus-proxy-XXXXXX"); - - if (proxy_socket == NULL) - return FALSE; - - if (dbus_address) - real_dbus_address = g_strdup (dbus_address); - else - real_dbus_address = g_strdup_printf ("unix:path=%s", dbus_system_socket); - - flatpak_bwrap_add_args (proxy_arg_bwrap, real_dbus_address, proxy_socket, NULL); - - if (!unrestricted) - flatpak_context_add_bus_filters (context, NULL, FALSE, flags & FLATPAK_RUN_FLAG_SANDBOX, proxy_arg_bwrap); - - if ((flags & FLATPAK_RUN_FLAG_LOG_SYSTEM_BUS) != 0) - flatpak_bwrap_add_args (proxy_arg_bwrap, "--log", NULL); - - flatpak_bwrap_add_args (app_bwrap, - "--ro-bind", proxy_socket, "/run/dbus/system_bus_socket", - NULL); - flatpak_bwrap_set_env (app_bwrap, "DBUS_SYSTEM_BUS_ADDRESS", "unix:path=/run/dbus/system_bus_socket", TRUE); - - return TRUE; - } - return FALSE; -} - -static gboolean -flatpak_run_add_session_dbus_args (FlatpakBwrap *app_bwrap, - FlatpakBwrap *proxy_arg_bwrap, - FlatpakContext *context, - FlatpakRunFlags flags, - const char *app_id) -{ - static const char sandbox_socket_path[] = "/run/flatpak/bus"; - static const char sandbox_dbus_address[] = "unix:path=/run/flatpak/bus"; - gboolean unrestricted, no_proxy; - const char *dbus_address = g_getenv ("DBUS_SESSION_BUS_ADDRESS"); - g_autofree char *dbus_session_socket = NULL; - - unrestricted = (context->sockets & FLATPAK_CONTEXT_SOCKET_SESSION_BUS) != 0; - - if (dbus_address != NULL) - { - dbus_session_socket = extract_unix_path_from_dbus_address (dbus_address); - } - else - { - g_autofree char *user_runtime_dir = flatpak_get_real_xdg_runtime_dir (); - struct stat statbuf; - - dbus_session_socket = g_build_filename (user_runtime_dir, "bus", NULL); - - if (stat (dbus_session_socket, &statbuf) < 0 - || (statbuf.st_mode & S_IFMT) != S_IFSOCK - || statbuf.st_uid != getuid ()) - return FALSE; - } - - if (unrestricted) - g_debug ("Allowing session-dbus access"); - - no_proxy = (flags & FLATPAK_RUN_FLAG_NO_SESSION_BUS_PROXY) != 0; - - if (dbus_session_socket != NULL && unrestricted) - { - flatpak_bwrap_add_args (app_bwrap, - "--ro-bind", dbus_session_socket, sandbox_socket_path, - NULL); - flatpak_bwrap_set_env (app_bwrap, "DBUS_SESSION_BUS_ADDRESS", sandbox_dbus_address, TRUE); - flatpak_bwrap_add_runtime_dir_member (app_bwrap, "bus"); - - return TRUE; - } - else if (!no_proxy && dbus_address != NULL) - { - g_autofree char *proxy_socket = create_proxy_socket ("session-bus-proxy-XXXXXX"); - - if (proxy_socket == NULL) - return FALSE; - - flatpak_bwrap_add_args (proxy_arg_bwrap, dbus_address, proxy_socket, NULL); - - if (!unrestricted) - { - flatpak_context_add_bus_filters (context, app_id, TRUE, flags & FLATPAK_RUN_FLAG_SANDBOX, proxy_arg_bwrap); - - /* Allow calling any interface+method on all portals, but only receive broadcasts under /org/desktop/portal */ - flatpak_bwrap_add_arg (proxy_arg_bwrap, - "--call=org.freedesktop.portal.*=*"); - flatpak_bwrap_add_arg (proxy_arg_bwrap, - "--broadcast=org.freedesktop.portal.*=@/org/freedesktop/portal/*"); - } - - if ((flags & FLATPAK_RUN_FLAG_LOG_SESSION_BUS) != 0) - flatpak_bwrap_add_args (proxy_arg_bwrap, "--log", NULL); - - flatpak_bwrap_add_args (app_bwrap, - "--ro-bind", proxy_socket, sandbox_socket_path, - NULL); - flatpak_bwrap_set_env (app_bwrap, "DBUS_SESSION_BUS_ADDRESS", sandbox_dbus_address, TRUE); - flatpak_bwrap_add_runtime_dir_member (app_bwrap, "bus"); - - return TRUE; - } - - return FALSE; -} - -static gboolean -flatpak_run_add_a11y_dbus_args (FlatpakBwrap *app_bwrap, - FlatpakBwrap *proxy_arg_bwrap, - FlatpakContext *context, - FlatpakRunFlags flags) -{ - static const char sandbox_socket_path[] = "/run/flatpak/at-spi-bus"; - static const char sandbox_dbus_address[] = "unix:path=/run/flatpak/at-spi-bus"; - g_autoptr(GDBusConnection) session_bus = NULL; - g_autofree char *a11y_address = NULL; - g_autoptr(GError) local_error = NULL; - g_autoptr(GDBusMessage) reply = NULL; - g_autoptr(GDBusMessage) msg = NULL; - g_autofree char *proxy_socket = NULL; - - if ((flags & FLATPAK_RUN_FLAG_NO_A11Y_BUS_PROXY) != 0) - return FALSE; - - session_bus = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, NULL); - if (session_bus == NULL) - return FALSE; - - msg = g_dbus_message_new_method_call ("org.a11y.Bus", "/org/a11y/bus", "org.a11y.Bus", "GetAddress"); - g_dbus_message_set_body (msg, g_variant_new ("()")); - reply = - g_dbus_connection_send_message_with_reply_sync (session_bus, msg, - G_DBUS_SEND_MESSAGE_FLAGS_NONE, - 30000, - NULL, - NULL, - NULL); - if (reply) - { - if (g_dbus_message_to_gerror (reply, &local_error)) - { - if (!g_error_matches (local_error, G_DBUS_ERROR, G_DBUS_ERROR_SERVICE_UNKNOWN)) - g_message ("Can't find a11y bus: %s", local_error->message); - } - else - { - g_variant_get (g_dbus_message_get_body (reply), - "(s)", &a11y_address); - } - } - - if (!a11y_address) - return FALSE; - - proxy_socket = create_proxy_socket ("a11y-bus-proxy-XXXXXX"); - if (proxy_socket == NULL) - return FALSE; - - flatpak_bwrap_add_args (proxy_arg_bwrap, - a11y_address, - proxy_socket, "--filter", "--sloppy-names", - "--call=org.a11y.atspi.Registry=org.a11y.atspi.Socket.Embed@/org/a11y/atspi/accessible/root", - "--call=org.a11y.atspi.Registry=org.a11y.atspi.Socket.Unembed@/org/a11y/atspi/accessible/root", - "--call=org.a11y.atspi.Registry=org.a11y.atspi.Registry.GetRegisteredEvents@/org/a11y/atspi/registry", - "--call=org.a11y.atspi.Registry=org.a11y.atspi.DeviceEventController.GetKeystrokeListeners@/org/a11y/atspi/registry/deviceeventcontroller", - "--call=org.a11y.atspi.Registry=org.a11y.atspi.DeviceEventController.GetDeviceEventListeners@/org/a11y/atspi/registry/deviceeventcontroller", - "--call=org.a11y.atspi.Registry=org.a11y.atspi.DeviceEventController.NotifyListenersSync@/org/a11y/atspi/registry/deviceeventcontroller", - "--call=org.a11y.atspi.Registry=org.a11y.atspi.DeviceEventController.NotifyListenersAsync@/org/a11y/atspi/registry/deviceeventcontroller", - NULL); - - if ((flags & FLATPAK_RUN_FLAG_LOG_A11Y_BUS) != 0) - flatpak_bwrap_add_args (proxy_arg_bwrap, "--log", NULL); - - flatpak_bwrap_add_args (app_bwrap, - "--ro-bind", proxy_socket, sandbox_socket_path, - NULL); - flatpak_bwrap_set_env (app_bwrap, "AT_SPI_BUS_ADDRESS", sandbox_dbus_address, TRUE); - - return TRUE; -} - -/* This wraps the argv in a bwrap call, primary to allow the - command to be run with a proper /.flatpak-info with data - taken from app_info_path */ -static gboolean -add_bwrap_wrapper (FlatpakBwrap *bwrap, - const char *app_info_path, - GError **error) -{ - glnx_autofd int app_info_fd = -1; - g_auto(GLnxDirFdIterator) dir_iter = { 0 }; - struct dirent *dent; - g_autofree char *user_runtime_dir = flatpak_get_real_xdg_runtime_dir (); - g_autofree char *proxy_socket_dir = g_build_filename (user_runtime_dir, ".dbus-proxy/", NULL); - - app_info_fd = open (app_info_path, O_RDONLY | O_CLOEXEC); - if (app_info_fd == -1) - return glnx_throw_errno_prefix (error, _("Failed to open app info file")); - - if (!glnx_dirfd_iterator_init_at (AT_FDCWD, "/", FALSE, &dir_iter, error)) - return FALSE; - - flatpak_bwrap_add_arg (bwrap, flatpak_get_bwrap ()); - - while (TRUE) - { - glnx_autofd int o_path_fd = -1; - struct statfs stfs; - - if (!glnx_dirfd_iterator_next_dent_ensure_dtype (&dir_iter, &dent, NULL, error)) - return FALSE; - - if (dent == NULL) - break; - - if (strcmp (dent->d_name, ".flatpak-info") == 0) - continue; - - /* O_PATH + fstatfs is the magic that we need to statfs without automounting the target */ - o_path_fd = openat (dir_iter.fd, dent->d_name, O_PATH | O_NOFOLLOW | O_CLOEXEC); - if (o_path_fd == -1 || fstatfs (o_path_fd, &stfs) != 0 || stfs.f_type == AUTOFS_SUPER_MAGIC) - continue; /* AUTOFS mounts are risky and can cause us to block (see issue #1633), so ignore it. Its unlikely the proxy needs such a directory. */ - - if (dent->d_type == DT_DIR) - { - if (strcmp (dent->d_name, "tmp") == 0 || - strcmp (dent->d_name, "var") == 0 || - strcmp (dent->d_name, "run") == 0) - flatpak_bwrap_add_arg (bwrap, "--bind"); - else - flatpak_bwrap_add_arg (bwrap, "--ro-bind"); - - flatpak_bwrap_add_arg_printf (bwrap, "/%s", dent->d_name); - flatpak_bwrap_add_arg_printf (bwrap, "/%s", dent->d_name); - } - else if (dent->d_type == DT_LNK) - { - g_autofree gchar *target = NULL; - - target = glnx_readlinkat_malloc (dir_iter.fd, dent->d_name, - NULL, error); - if (target == NULL) - return FALSE; - flatpak_bwrap_add_args (bwrap, "--symlink", target, NULL); - flatpak_bwrap_add_arg_printf (bwrap, "/%s", dent->d_name); - } - } - - flatpak_bwrap_add_args (bwrap, "--bind", proxy_socket_dir, proxy_socket_dir, NULL); - - /* This is a file rather than a bind mount, because it will then - not be unmounted from the namespace when the namespace dies. */ - flatpak_bwrap_add_args (bwrap, "--perms", "0600", NULL); - flatpak_bwrap_add_args_data_fd (bwrap, "--file", glnx_steal_fd (&app_info_fd), "/.flatpak-info"); - - if (!flatpak_bwrap_bundle_args (bwrap, 1, -1, FALSE, error)) - return FALSE; - - /* End of options: the next argument will be the executable name */ - flatpak_bwrap_add_arg (bwrap, "--"); - - return TRUE; -} - -static gboolean -start_dbus_proxy (FlatpakBwrap *app_bwrap, - FlatpakBwrap *proxy_arg_bwrap, - const char *app_info_path, - GError **error) -{ - char x = 'x'; - const char *proxy; - g_autofree char *commandline = NULL; - g_autoptr(FlatpakBwrap) proxy_bwrap = NULL; - int sync_fds[2] = {-1, -1}; - int proxy_start_index; - - proxy_bwrap = flatpak_bwrap_new (NULL); - - if (!add_bwrap_wrapper (proxy_bwrap, app_info_path, error)) - return FALSE; - - proxy = g_getenv ("FLATPAK_DBUSPROXY"); - if (proxy == NULL) - proxy = DBUSPROXY; - - flatpak_bwrap_add_arg (proxy_bwrap, proxy); - - proxy_start_index = proxy_bwrap->argv->len; - - if (pipe2 (sync_fds, O_CLOEXEC) < 0) - { - g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (errno), - _("Unable to create sync pipe")); - return FALSE; - } - - /* read end goes to app */ - flatpak_bwrap_add_args_data_fd (app_bwrap, "--sync-fd", sync_fds[0], NULL); - - /* write end goes to proxy */ - flatpak_bwrap_add_fd (proxy_bwrap, sync_fds[1]); - flatpak_bwrap_add_arg_printf (proxy_bwrap, "--fd=%d", sync_fds[1]); - - /* Note: This steals the fds from proxy_arg_bwrap */ - flatpak_bwrap_append_bwrap (proxy_bwrap, proxy_arg_bwrap); - - if (!flatpak_bwrap_bundle_args (proxy_bwrap, proxy_start_index, -1, TRUE, error)) - return FALSE; - - flatpak_bwrap_finish (proxy_bwrap); +#include - commandline = flatpak_quote_argv ((const char **) proxy_bwrap->argv->pdata, -1); - g_debug ("Running '%s'", commandline); +#include +#include "libglnx.h" - /* We use LEAVE_DESCRIPTORS_OPEN to work around dead-lock, see flatpak_close_fds_workaround */ - if (!g_spawn_async (NULL, - (char **) proxy_bwrap->argv->pdata, - NULL, - G_SPAWN_SEARCH_PATH | G_SPAWN_LEAVE_DESCRIPTORS_OPEN, - flatpak_bwrap_child_setup_cb, proxy_bwrap->fds, - NULL, error)) - return FALSE; +#include "flatpak-dbus-generated.h" +#include "flatpak-run-dbus-private.h" +#include "flatpak-run-private.h" +#include "flatpak-run-sockets-private.h" +#include "flatpak-utils-base-private.h" +#include "flatpak-dir-private.h" +#include "flatpak-dir-utils-private.h" +#include "flatpak-instance-private.h" +#include "flatpak-systemd-dbus-generated.h" +#include "flatpak-document-dbus-generated.h" +#include "flatpak-error.h" +#include "session-helper/flatpak-session-helper.h" - /* The write end can be closed now, otherwise the read below will hang of xdg-dbus-proxy - fails to start. */ - g_clear_pointer (&proxy_bwrap, flatpak_bwrap_free); +#define DEFAULT_SHELL "/bin/sh" - /* Sync with proxy, i.e. wait until its listening on the sockets */ - if (read (sync_fds[0], &x, 1) != 1) - { - g_set_error_literal (error, G_IO_ERROR, g_io_error_from_errno (errno), - _("Failed to sync with dbus proxy")); - return FALSE; - } +typedef FlatpakSessionHelper AutoFlatpakSessionHelper; +G_DEFINE_AUTOPTR_CLEANUP_FUNC (AutoFlatpakSessionHelper, g_object_unref) - return TRUE; -} +typedef XdpDbusDocuments AutoXdpDbusDocuments; +G_DEFINE_AUTOPTR_CLEANUP_FUNC (AutoXdpDbusDocuments, g_object_unref) static int flatpak_extension_compare_by_path (gconstpointer _a, @@ -1459,12 +155,12 @@ flatpak_run_add_extension_args (FlatpakBwrap *bwrap, { g_autofree char *parent = g_path_get_dirname (directory); - if (g_hash_table_lookup (mounted_tmpfs, parent) == NULL) + if (!g_hash_table_contains (mounted_tmpfs, parent)) { flatpak_bwrap_add_args (bwrap, "--tmpfs", parent, NULL); - g_hash_table_insert (mounted_tmpfs, g_steal_pointer (&parent), "mounted"); + g_hash_table_add (mounted_tmpfs, g_steal_pointer (&parent)); } } @@ -1535,13 +231,13 @@ flatpak_run_add_extension_args (FlatpakBwrap *bwrap, { g_autofree char *symlink_path = g_build_filename (merge_dir, dent->d_name, NULL); /* Only create the first, because extensions are listed in prio order */ - if (g_hash_table_lookup (created_symlink, symlink_path) == NULL) + if (!g_hash_table_contains (created_symlink, symlink_path)) { g_autofree char *symlink = g_build_filename (directory, ext->merge_dirs[i], dent->d_name, NULL); flatpak_bwrap_add_args (bwrap, "--symlink", symlink, symlink_path, NULL); - g_hash_table_insert (created_symlink, g_steal_pointer (&symlink_path), "created"); + g_hash_table_add (created_symlink, g_steal_pointer (&symlink_path)); } } } @@ -1572,6 +268,7 @@ flatpak_run_add_environment_args (FlatpakBwrap *bwrap, GFile *app_id_dir, GPtrArray *previous_app_id_dirs, int per_app_dir_lock_fd, + const char *instance_id, FlatpakExports **exports_out, GCancellable *cancellable, GError **error) @@ -1580,20 +277,18 @@ flatpak_run_add_environment_args (FlatpakBwrap *bwrap, g_autoptr(FlatpakExports) exports = NULL; g_autoptr(FlatpakBwrap) proxy_arg_bwrap = flatpak_bwrap_new (flatpak_bwrap_empty_env); g_autofree char *xdg_dirs_conf = NULL; - gboolean has_wayland = FALSE; - gboolean allow_x11 = FALSE; gboolean home_access = FALSE; gboolean sandboxed = (flags & FLATPAK_RUN_FLAG_SANDBOX) != 0; if ((context->shares & FLATPAK_CONTEXT_SHARED_IPC) == 0) { - g_debug ("Disallowing ipc access"); + g_info ("Disallowing ipc access"); flatpak_bwrap_add_args (bwrap, "--unshare-ipc", NULL); } if ((context->shares & FLATPAK_CONTEXT_SHARED_NETWORK) == 0) { - g_debug ("Disallowing network access"); + g_info ("Disallowing network access"); flatpak_bwrap_add_args (bwrap, "--unshare-net", NULL); } @@ -1688,11 +383,20 @@ flatpak_run_add_environment_args (FlatpakBwrap *bwrap, flatpak_bwrap_add_args (bwrap, "--dev", "/dev", NULL); + + if (context->devices & FLATPAK_CONTEXT_DEVICE_USB) + { + g_info ("Allowing USB device access."); + + if (g_file_test ("/dev/bus/usb", G_FILE_TEST_IS_DIR)) + flatpak_bwrap_add_args (bwrap, "--dev-bind", "/dev/bus/usb", "/dev/bus/usb", NULL); + } + if (context->devices & FLATPAK_CONTEXT_DEVICE_DRI) { - g_debug ("Allowing dri access"); + g_info ("Allowing dri access"); int i; - char *dri_devices[] = { + static const char * const dri_devices[] = { "/dev/dri", /* mali */ "/dev/mali", @@ -1723,9 +427,17 @@ flatpak_run_add_environment_args (FlatpakBwrap *bwrap, } } + if (context->devices & FLATPAK_CONTEXT_DEVICE_INPUT) + { + g_info ("Allowing input device access. Note: raw and virtual input currently require --device=all"); + + if (g_file_test ("/dev/input", G_FILE_TEST_IS_DIR)) + flatpak_bwrap_add_args (bwrap, "--dev-bind", "/dev/input", "/dev/input", NULL); + } + if (context->devices & FLATPAK_CONTEXT_DEVICE_KVM) { - g_debug ("Allowing kvm access"); + g_info ("Allowing kvm access"); if (g_file_test ("/dev/kvm", G_FILE_TEST_EXISTS)) flatpak_bwrap_add_args (bwrap, "--dev-bind", "/dev/kvm", "/dev/kvm", NULL); } @@ -1735,7 +447,7 @@ flatpak_run_add_environment_args (FlatpakBwrap *bwrap, /* This is a symlink to /run/shm on debian, so bind to real target */ g_autofree char *real_dev_shm = realpath ("/dev/shm", NULL); - g_debug ("Allowing /dev/shm access (as %s)", real_dev_shm); + g_info ("Allowing /dev/shm access (as %s)", real_dev_shm); if (real_dev_shm != NULL) flatpak_bwrap_add_args (bwrap, "--bind", real_dev_shm, "/dev/shm", NULL); } @@ -1792,48 +504,10 @@ flatpak_run_add_environment_args (FlatpakBwrap *bwrap, flatpak_context_append_bwrap_filesystem (context, bwrap, app_id, app_id_dir, exports, xdg_dirs_conf, home_access); - if (context->sockets & FLATPAK_CONTEXT_SOCKET_WAYLAND) - { - g_debug ("Allowing wayland access"); - has_wayland = flatpak_run_add_wayland_args (bwrap); - } - - if ((context->sockets & FLATPAK_CONTEXT_SOCKET_FALLBACK_X11) != 0) - allow_x11 = !has_wayland; - else - allow_x11 = (context->sockets & FLATPAK_CONTEXT_SOCKET_X11) != 0; - - flatpak_run_add_x11_args (bwrap, allow_x11, context->shares); - - if (context->sockets & FLATPAK_CONTEXT_SOCKET_SSH_AUTH) - { - flatpak_run_add_ssh_args (bwrap); - } - - if (context->sockets & FLATPAK_CONTEXT_SOCKET_PULSEAUDIO) - { - g_debug ("Allowing pulseaudio access"); - flatpak_run_add_pulseaudio_args (bwrap, context->shares); - } - - if (context->sockets & FLATPAK_CONTEXT_SOCKET_PCSC) - { - flatpak_run_add_pcsc_args (bwrap); - } - - if (context->sockets & FLATPAK_CONTEXT_SOCKET_CUPS) - { - flatpak_run_add_cups_args (bwrap); - } - - if (context->sockets & FLATPAK_CONTEXT_SOCKET_GPG_AGENT) - { - flatpak_run_add_gpg_agent_args (bwrap); - } - + flatpak_run_add_socket_args_environment (bwrap, context->shares, context->sockets, app_id, instance_id); flatpak_run_add_session_dbus_args (bwrap, proxy_arg_bwrap, context, flags, app_id); flatpak_run_add_system_dbus_args (bwrap, proxy_arg_bwrap, context, flags); - flatpak_run_add_a11y_dbus_args (bwrap, proxy_arg_bwrap, context, flags); + flatpak_run_add_a11y_dbus_args (bwrap, proxy_arg_bwrap, context, flags, app_id); /* Must run this before spawning the dbus proxy, to ensure it ends up in the app cgroup */ @@ -1841,12 +515,12 @@ flatpak_run_add_environment_args (FlatpakBwrap *bwrap, { /* We still run along even if we don't get a cgroup, as nothing really depends on it. Its just nice to have */ - g_debug ("Failed to run in transient scope: %s", my_error->message); + g_info ("Failed to run in transient scope: %s", my_error->message); g_clear_error (&my_error); } - if (!flatpak_bwrap_is_empty (proxy_arg_bwrap) && - !start_dbus_proxy (bwrap, proxy_arg_bwrap, app_info_path, error)) + if (!flatpak_run_maybe_start_dbus_proxy (bwrap, proxy_arg_bwrap, + app_info_path, error)) return FALSE; if (exports_out) @@ -1885,6 +559,9 @@ static const ExportData default_exports[] = { /* Ensure our container environment variable takes precedence over the one * set by a container manager. */ {"container", NULL}, + /* We always make the zoneinfo available at /usr/share/zoneinfo even if it + * is somewhere else outside of the sandbox. */ + {"TZDIR", NULL}, /* Some env vars are common enough and will affect the sandbox badly if set on the host. We clear these always. If updating this list, @@ -2055,37 +732,6 @@ flatpak_run_apply_env_prompt (FlatpakBwrap *bwrap, const char *app_id) flatpak_bwrap_set_env (bwrap, "PS1", "[📦 $FLATPAK_ID \\W]\\$ ", FALSE); } -void -flatpak_run_apply_env_appid (FlatpakBwrap *bwrap, - GFile *app_dir) -{ - g_autoptr(GFile) app_dir_data = NULL; - g_autoptr(GFile) app_dir_config = NULL; - g_autoptr(GFile) app_dir_cache = NULL; - g_autoptr(GFile) app_dir_state = NULL; - - app_dir_data = g_file_get_child (app_dir, "data"); - app_dir_config = g_file_get_child (app_dir, "config"); - app_dir_cache = g_file_get_child (app_dir, "cache"); - /* Yes, this is inconsistent with data, config and cache. However, using - * this path lets apps provide backwards-compatibility with older Flatpak - * versions by using `--persist=.local/state --unset-env=XDG_STATE_DIR`. */ - app_dir_state = g_file_get_child (app_dir, ".local/state"); - flatpak_bwrap_set_env (bwrap, "XDG_DATA_HOME", flatpak_file_get_path_cached (app_dir_data), TRUE); - flatpak_bwrap_set_env (bwrap, "XDG_CONFIG_HOME", flatpak_file_get_path_cached (app_dir_config), TRUE); - flatpak_bwrap_set_env (bwrap, "XDG_CACHE_HOME", flatpak_file_get_path_cached (app_dir_cache), TRUE); - flatpak_bwrap_set_env (bwrap, "XDG_STATE_HOME", flatpak_file_get_path_cached (app_dir_state), TRUE); - - if (g_getenv ("XDG_DATA_HOME")) - flatpak_bwrap_set_env (bwrap, "HOST_XDG_DATA_HOME", g_getenv ("XDG_DATA_HOME"), TRUE); - if (g_getenv ("XDG_CONFIG_HOME")) - flatpak_bwrap_set_env (bwrap, "HOST_XDG_CONFIG_HOME", g_getenv ("XDG_CONFIG_HOME"), TRUE); - if (g_getenv ("XDG_CACHE_HOME")) - flatpak_bwrap_set_env (bwrap, "HOST_XDG_CACHE_HOME", g_getenv ("XDG_CACHE_HOME"), TRUE); - if (g_getenv ("XDG_STATE_HOME")) - flatpak_bwrap_set_env (bwrap, "HOST_XDG_STATE_HOME", g_getenv ("XDG_STATE_HOME"), TRUE); -} - void flatpak_run_apply_env_vars (FlatpakBwrap *bwrap, FlatpakContext *context) { @@ -2105,15 +751,6 @@ flatpak_run_apply_env_vars (FlatpakBwrap *bwrap, FlatpakContext *context) } } -GFile * -flatpak_get_data_dir (const char *app_id) -{ - g_autoptr(GFile) home = g_file_new_for_path (g_get_home_dir ()); - g_autoptr(GFile) var_app = g_file_resolve_relative_path (home, ".var/app"); - - return g_file_get_child (var_app, app_id); -} - gboolean flatpak_ensure_data_dir (GFile *app_id_dir, GCancellable *cancellable, @@ -2423,12 +1060,15 @@ flatpak_app_compute_permissions (GKeyFile *app_metadata, /* Don't inherit any permissions from the runtime, only things like env vars. */ flatpak_context_reset_permissions (app_context); + + flatpak_context_dump (app_context, "Metadata from runtime"); } if (app_metadata != NULL && !flatpak_context_load_metadata (app_context, app_metadata, error)) return NULL; + flatpak_context_dump (app_context, "Metadata from app manifest"); return g_steal_pointer (&app_context); } @@ -2520,17 +1160,17 @@ get_dconf_data (const char *app_id, if (migrate_path) { - g_debug ("Add values in dir '%s', prefix is '%s'", migrate_path, prefix); + g_info ("Add values in dir '%s', prefix is '%s'", migrate_path, prefix); if (flatpak_dconf_path_is_similar (migrate_path, prefix)) add_dconf_dir_to_keyfile (values_data, client, migrate_path, DCONF_READ_USER_VALUE); else g_warning ("Ignoring D-Conf migrate-path setting %s", migrate_path); } - g_debug ("Add defaults in dir %s", prefix); + g_info ("Add defaults in dir %s", prefix); add_dconf_dir_to_keyfile (defaults_data, client, prefix, DCONF_READ_DEFAULT_VALUE); - g_debug ("Add locks in dir %s", prefix); + g_info ("Add locks in dir %s", prefix); add_dconf_locks_to_list (locks_data, client, prefix); /* We allow extra paths for defaults and locks, but not for user values */ @@ -2541,15 +1181,15 @@ get_dconf_data (const char *app_id, { if (dconf_is_dir (paths[i], NULL)) { - g_debug ("Add defaults in dir %s", paths[i]); + g_info ("Add defaults in dir %s", paths[i]); add_dconf_dir_to_keyfile (defaults_data, client, paths[i], DCONF_READ_DEFAULT_VALUE); - g_debug ("Add locks in dir %s", paths[i]); + g_info ("Add locks in dir %s", paths[i]); add_dconf_locks_to_list (locks_data, client, paths[i]); } else if (dconf_is_key (paths[i], NULL)) { - g_debug ("Add individual key %s", paths[i]); + g_info ("Add individual key %s", paths[i]); add_dconf_key_to_keyfile (defaults_data, client, paths[i], DCONF_READ_DEFAULT_VALUE); add_dconf_key_to_keyfile (values_data, client, paths[i], DCONF_READ_USER_VALUE); } @@ -2633,7 +1273,7 @@ flatpak_run_add_dconf_args (FlatpakBwrap *bwrap, "config/glib-2.0/settings/keyfile", NULL); - g_debug ("writing D-Conf values to %s", filename); + g_info ("writing D-Conf values to %s", filename); if (values_size != 0 && !g_file_test (filename, G_FILE_TEST_EXISTS)) { @@ -2656,6 +1296,43 @@ flatpak_run_add_dconf_args (FlatpakBwrap *bwrap, return TRUE; } +static gboolean +flatpak_run_save_environ (const char * const *run_environ, + const char *dir, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GByteArray) buffer = g_byte_array_new (); + int i; + glnx_autofd int dir_fd = -1; + + g_assert (run_environ != NULL); + + for (i = 0; run_environ[i] != NULL; i++) + { + gsize size = strlen (run_environ[i]) + 1; + + g_byte_array_append (buffer, + (const guint8 *) run_environ[i], + size); + } + + if (!glnx_opendirat (AT_FDCWD, dir, TRUE, + &dir_fd, + error)) + return FALSE; + + if (!glnx_file_replace_contents_with_perms_at (dir_fd, "run-environ", + buffer->data, buffer->len, + (mode_t) 0400, + (uid_t) -1, (gid_t) -1, + 0, + cancellable, error)) + return FALSE; + + return TRUE; +} + gboolean flatpak_run_add_app_info_args (FlatpakBwrap *bwrap, GFile *app_files, @@ -2678,6 +1355,8 @@ flatpak_run_add_app_info_args (FlatpakBwrap *bwrap, char **app_info_path_out, int instance_id_fd, char **instance_id_host_dir_out, + char **instance_id_host_private_dir_out, + char **instance_id_out, GError **error) { g_autofree char *info_path = NULL; @@ -2689,13 +1368,16 @@ flatpak_run_add_app_info_args (FlatpakBwrap *bwrap, g_autofree char *instance_id = NULL; glnx_autofd int lock_fd = -1; g_autofree char *instance_id_host_dir = NULL; + g_autofree char *instance_id_host_private_dir = NULL; g_autofree char *instance_id_sandbox_dir = NULL; g_autofree char *instance_id_lock_file = NULL; g_autofree char *arch = flatpak_decomposed_dup_arch (runtime_ref); g_return_val_if_fail (app_id != NULL, FALSE); - instance_id = flatpak_instance_allocate_id (&instance_id_host_dir, &lock_fd); + instance_id = flatpak_instance_allocate_id (&instance_id_host_dir, + &instance_id_host_private_dir, + &lock_fd); if (instance_id == NULL) return flatpak_fail_error (error, FLATPAK_ERROR_SETUP_FAILED, _("Unable to allocate instance id")); @@ -2711,7 +1393,7 @@ flatpak_run_add_app_info_args (FlatpakBwrap *bwrap, NULL); flatpak_bwrap_add_runtime_dir_member (bwrap, ".flatpak"); /* Keep the .ref lock held until we've started bwrap to avoid races */ - flatpak_bwrap_add_noinherit_fd (bwrap, glnx_steal_fd (&lock_fd)); + flatpak_bwrap_add_noinherit_fd (bwrap, g_steal_fd (&lock_fd)); info_path = g_build_filename (instance_id_host_dir, "info", NULL); @@ -2916,6 +1598,12 @@ flatpak_run_add_app_info_args (FlatpakBwrap *bwrap, if (instance_id_host_dir_out != NULL) *instance_id_host_dir_out = g_steal_pointer (&instance_id_host_dir); + if (instance_id_host_private_dir_out != NULL) + *instance_id_host_private_dir_out = g_steal_pointer (&instance_id_host_private_dir); + + if (instance_id_out != NULL) + *instance_id_out = g_steal_pointer (&instance_id); + return TRUE; } @@ -2934,12 +1622,14 @@ add_tzdata_args (FlatpakBwrap *bwrap, /* Check for runtime /usr/share/zoneinfo */ if (runtime_zoneinfo != NULL && g_file_query_exists (runtime_zoneinfo, NULL)) { + const char *tzdir = flatpak_get_tzdir (); + /* Check for host /usr/share/zoneinfo */ - if (g_file_test ("/usr/share/zoneinfo", G_FILE_TEST_IS_DIR)) + if (g_file_test (tzdir, G_FILE_TEST_IS_DIR)) { /* Here we assume the host timezone file exist in the host data */ flatpak_bwrap_add_args (bwrap, - "--ro-bind", "/usr/share/zoneinfo", "/usr/share/zoneinfo", + "--ro-bind", tzdir, "/usr/share/zoneinfo", "--symlink", localtime_content, "/etc/localtime", NULL); } @@ -3064,7 +1754,7 @@ add_document_portal_args (FlatpakBwrap *bwrap, if (g_dbus_message_to_gerror (reply, &local_error)) { if (g_error_matches (local_error, G_DBUS_ERROR, G_DBUS_ERROR_SERVICE_UNKNOWN)) - g_debug ("Document portal not available, not mounting /run/flatpak/doc"); + g_info ("Document portal not available, not mounting /run/flatpak/doc"); else g_message ("Can't get document portal: %s", local_error->message); } @@ -3191,9 +1881,6 @@ setup_seccomp (FlatpakBwrap *bwrap, {SCMP_SYS (uselib), EPERM}, /* Don't allow disabling accounting */ {SCMP_SYS (acct), EPERM}, - /* 16-bit code is unnecessary in the sandbox, and modify_ldt is a - historic source of interesting information leaks. */ - {SCMP_SYS (modify_ldt), EPERM}, /* Don't allow reading current quota use */ {SCMP_SYS (quotactl), EPERM}, @@ -3236,13 +1923,13 @@ setup_seccomp (FlatpakBwrap *bwrap, /* seccomp can't look into clone3()'s struct clone_args to check whether * the flags are OK, so we have no choice but to block clone3(). * Return ENOSYS so user-space will fall back to clone(). - * (GHSA-67h7-w3jq-vh4q; see also https://github.com/moby/moby/commit/9f6b562d) */ + * (CVE-2021-41133; see also https://github.com/moby/moby/commit/9f6b562d) */ {SCMP_SYS (clone3), ENOSYS}, /* New mount manipulation APIs can also change our VFS. There's no * legitimate reason to do these in the sandbox, so block all of them * rather than thinking about which ones might be dangerous. - * (GHSA-67h7-w3jq-vh4q) */ + * (CVE-2021-41133) */ {SCMP_SYS (open_tree), ENOSYS}, {SCMP_SYS (move_mount), ENOSYS}, {SCMP_SYS (fsopen), ENOSYS}, @@ -3363,8 +2050,25 @@ setup_seccomp (FlatpakBwrap *bwrap, * libseccomp cannot map the syscall number to a name and back to a * number for the non-native architecture. */ if (r == -EFAULT) - flatpak_debug2 ("Unable to block syscall %d: syscall not known to libseccomp?", - scall); + g_debug ("Unable to block syscall %d: syscall not known to libseccomp?", + scall); + else if (r < 0) + return flatpak_fail_error (error, FLATPAK_ERROR_SETUP_FAILED, _("Failed to block syscall %d: %s"), scall, flatpak_seccomp_strerror (r)); + } + + if (!multiarch) + { + /* modify_ldt is a historic source of interesting information leaks, + * so it's disabled as a hardening measure. + * However, it is required to run old 16-bit applications + * as well as some Wine patches, so it's allowed in multiarch. */ + int scall = SCMP_SYS (modify_ldt); + r = seccomp_rule_add (seccomp, SCMP_ACT_ERRNO (EPERM), scall, 0); + + /* See above for the meaning of EFAULT. */ + if (r == -EFAULT) + g_debug ("Unable to block syscall %d: syscall not known to libseccomp?", + scall); else if (r < 0) return flatpak_fail_error (error, FLATPAK_ERROR_SETUP_FAILED, _("Failed to block syscall %d: %s"), scall, flatpak_seccomp_strerror (r)); } @@ -3385,8 +2089,8 @@ setup_seccomp (FlatpakBwrap *bwrap, /* See above for the meaning of EFAULT. */ if (r == -EFAULT) - flatpak_debug2 ("Unable to block syscall %d: syscall not known to libseccomp?", - scall); + g_debug ("Unable to block syscall %d: syscall not known to libseccomp?", + scall); else if (r < 0) return flatpak_fail_error (error, FLATPAK_ERROR_SETUP_FAILED, _("Failed to block syscall %d: %s"), scall, flatpak_seccomp_strerror (r)); } @@ -3426,7 +2130,7 @@ setup_seccomp (FlatpakBwrap *bwrap, lseek (seccomp_tmpf.fd, 0, SEEK_SET); flatpak_bwrap_add_args_data_fd (bwrap, - "--seccomp", glnx_steal_fd (&seccomp_tmpf.fd), NULL); + "--seccomp", g_steal_fd (&seccomp_tmpf.fd), NULL); return TRUE; } @@ -3467,12 +2171,22 @@ flatpak_run_setup_usr_links (FlatpakBwrap *bwrap, } else { - g_debug ("%s does not exist", - flatpak_file_get_path_cached (runtime_subdir)); + g_info ("%s does not exist", + flatpak_file_get_path_cached (runtime_subdir)); } } } +/* Directories in /sys to share with the sandbox if accessible. */ +static const char *const sysfs_dirs[] = +{ + "/sys/block", + "/sys/bus", + "/sys/class", + "/sys/dev", + "/sys/devices" +}; + gboolean flatpak_run_setup_base_argv (FlatpakBwrap *bwrap, GFile *runtime_files, @@ -3489,6 +2203,39 @@ flatpak_run_setup_base_argv (FlatpakBwrap *bwrap, gulong pers; gid_t gid = getgid (); g_autoptr(GFile) etc = NULL; + gboolean parent_expose_pids = (flags & FLATPAK_RUN_FLAG_PARENT_EXPOSE_PIDS) != 0; + gboolean parent_share_pids = (flags & FLATPAK_RUN_FLAG_PARENT_SHARE_PIDS) != 0; + gboolean bwrap_unprivileged = flatpak_bwrap_is_unprivileged (); + gsize i; + + /* Disable recursive userns for all flatpak processes, as we need this + * to guarantee that the sandbox can't restructure the filesystem. + * Allowing to change e.g. /.flatpak-info would allow sandbox escape + * via portals. + * + * This is also done via seccomp, but here we do it using userns + * unsharing in combination with max_user_namespaces. + * + * If bwrap is setuid, then --disable-userns will not work, which + * makes the seccomp filter security-critical. + */ + if (bwrap_unprivileged) + { + if (parent_expose_pids || parent_share_pids) + { + /* If we're joining an existing sandbox's user and process + * namespaces, then it should already have creation of + * nested user namespaces disabled. */ + flatpak_bwrap_add_arg (bwrap, "--assert-userns-disabled"); + } + else + { + /* This is a new sandbox, so we need to disable creation of + * nested user namespaces. */ + flatpak_bwrap_add_arg (bwrap, "--unshare-user"); + flatpak_bwrap_add_arg (bwrap, "--disable-userns"); + } + } run_dir = g_strdup_printf ("/run/user/%d", getuid ()); @@ -3528,16 +2275,21 @@ flatpak_run_setup_base_argv (FlatpakBwrap *bwrap, "--perms", "0700", "--dir", run_dir, "--setenv", "XDG_RUNTIME_DIR", run_dir, "--symlink", "../run", "/var/run", - "--ro-bind", "/sys/block", "/sys/block", - "--ro-bind", "/sys/bus", "/sys/bus", - "--ro-bind", "/sys/class", "/sys/class", - "--ro-bind", "/sys/dev", "/sys/dev", - "--ro-bind", "/sys/devices", "/sys/devices", "--ro-bind-try", "/proc/self/ns/user", "/run/.userns", /* glib uses this like /etc/timezone */ "--symlink", "/etc/timezone", "/var/db/zoneinfo", NULL); + for (i = 0; i < G_N_ELEMENTS (sysfs_dirs); i++) + { + const char *dir = sysfs_dirs[i]; + + if (access (dir, R_OK|X_OK) == 0) + flatpak_bwrap_add_args (bwrap, "--ro-bind", dir, dir, NULL); + else + g_info ("Not sharing %s with sandbox: %s", dir, g_strerror (errno)); + } + if (flags & FLATPAK_RUN_FLAG_DIE_WITH_PARENT) flatpak_bwrap_add_args (bwrap, "--die-with-parent", @@ -3640,7 +2392,7 @@ flatpak_run_setup_base_argv (FlatpakBwrap *bwrap, if ((flags & FLATPAK_RUN_FLAG_SET_PERSONALITY) && flatpak_is_linux32_arch (arch)) { - g_debug ("Setting personality linux32"); + g_info ("Setting personality linux32"); pers = PER_LINUX32; } @@ -3794,7 +2546,7 @@ add_rest_args (FlatpakBwrap *bwrap, g_assert (doc_path != NULL); } - g_debug ("Forwarding file '%s' as '%s' to %s", args[i], doc_path, app_id); + g_info ("Forwarding file '%s' as '%s' to %s", args[i], doc_path, app_id); flatpak_bwrap_add_arg (bwrap, doc_path); } else @@ -3888,9 +2640,9 @@ regenerate_ld_cache (GPtrArray *base_argv_array, ld_so_cache = g_file_get_child (ld_so_dir, checksum); ld_so_fd = open (flatpak_file_get_path_cached (ld_so_cache), O_RDONLY); if (ld_so_fd >= 0) - return glnx_steal_fd (&ld_so_fd); + return g_steal_fd (&ld_so_fd); - g_debug ("Regenerating ld.so.cache %s", flatpak_file_get_path_cached (ld_so_cache)); + g_info ("Regenerating ld.so.cache %s", flatpak_file_get_path_cached (ld_so_cache)); if (!flatpak_mkdir_p (ld_so_dir, cancellable, error)) return FALSE; @@ -3938,13 +2690,14 @@ regenerate_ld_cache (GPtrArray *base_argv_array, flatpak_bwrap_finish (bwrap); commandline = flatpak_quote_argv ((const char **) bwrap->argv->pdata, -1); - g_debug ("Running: '%s'", commandline); + g_info ("Running: '%s'", commandline); combined_fd_array = g_array_new (FALSE, TRUE, sizeof (int)); g_array_append_vals (combined_fd_array, base_fd_array->data, base_fd_array->len); g_array_append_vals (combined_fd_array, bwrap->fds->data, bwrap->fds->len); - /* We use LEAVE_DESCRIPTORS_OPEN to work around dead-lock, see flatpak_close_fds_workaround */ + /* We use LEAVE_DESCRIPTORS_OPEN and close them in the child_setup + * to work around a deadlock in GLib < 2.60 */ if (!g_spawn_sync (NULL, (char **) bwrap->argv->pdata, bwrap->envp, @@ -3992,7 +2745,7 @@ regenerate_ld_cache (GPtrArray *base_argv_array, return -1; } - return glnx_steal_fd (&ld_so_fd); + return g_steal_fd (&ld_so_fd); } /* Check that this user is actually allowed to run this app. When running @@ -4029,19 +2782,19 @@ check_parental_controls (FlatpakDecomposed *app_ref, manager = mct_manager_new (system_bus); app_filter = mct_manager_get_app_filter (manager, getuid (), - MCT_GET_APP_FILTER_FLAGS_INTERACTIVE, + MCT_MANAGER_GET_VALUE_FLAGS_INTERACTIVE, cancellable, &local_error); - if (g_error_matches (local_error, MCT_APP_FILTER_ERROR, MCT_APP_FILTER_ERROR_DISABLED)) + if (g_error_matches (local_error, MCT_MANAGER_ERROR, MCT_MANAGER_ERROR_DISABLED)) { - g_debug ("Skipping parental controls check for %s since parental " - "controls are disabled globally", flatpak_decomposed_get_ref (app_ref)); + g_info ("Skipping parental controls check for %s since parental " + "controls are disabled globally", flatpak_decomposed_get_ref (app_ref)); return TRUE; } else if (g_error_matches (local_error, G_DBUS_ERROR, G_DBUS_ERROR_SERVICE_UNKNOWN) || g_error_matches (local_error, G_DBUS_ERROR, G_DBUS_ERROR_NAME_HAS_NO_OWNER)) { - g_debug ("Skipping parental controls check for %s since a required " - "service was not found", flatpak_decomposed_get_ref (app_ref)); + g_info ("Skipping parental controls check for %s since a required " + "service was not found", flatpak_decomposed_get_ref (app_ref)); return TRUE; } else if (local_error != NULL) @@ -4115,24 +2868,25 @@ open_namespace_fd_if_needed (const char *path, } gboolean -flatpak_run_app (FlatpakDecomposed *app_ref, - FlatpakDeploy *app_deploy, - const char *custom_app_path, - FlatpakContext *extra_context, - const char *custom_runtime, - const char *custom_runtime_version, - const char *custom_runtime_commit, - const char *custom_usr_path, - int parent_pid, - FlatpakRunFlags flags, - const char *cwd, - const char *custom_command, - char *args[], - int n_args, - int instance_id_fd, - char **instance_dir_out, - GCancellable *cancellable, - GError **error) +flatpak_run_app (FlatpakDecomposed *app_ref, + FlatpakDeploy *app_deploy, + const char *custom_app_path, + FlatpakContext *extra_context, + const char *custom_runtime, + const char *custom_runtime_version, + const char *custom_runtime_commit, + const char *custom_usr_path, + int parent_pid, + FlatpakRunFlags flags, + const char *cwd, + const char *custom_command, + char *args[], + int n_args, + int instance_id_fd, + const char * const *run_environ, + char **instance_dir_out, + GCancellable *cancellable, + GError **error) { g_autoptr(FlatpakDeploy) runtime_deploy = NULL; g_autoptr(GBytes) runtime_deploy_data = NULL; @@ -4160,6 +2914,8 @@ flatpak_run_app (FlatpakDecomposed *app_ref, g_autofree char *app_info_path = NULL; g_autofree char *app_ld_path = NULL; g_autofree char *instance_id_host_dir = NULL; + g_autofree char *instance_id_host_private_dir = NULL; + g_autofree char *instance_id = NULL; g_autoptr(FlatpakContext) app_context = NULL; g_autoptr(FlatpakContext) overrides = NULL; g_autoptr(FlatpakExports) exports = NULL; @@ -4183,6 +2939,8 @@ flatpak_run_app (FlatpakDecomposed *app_ref, const char *runtime_target_path = "/usr"; struct stat s; + g_assert (run_environ != NULL); + g_return_val_if_fail (app_ref != NULL, FALSE); /* This check exists to stop accidental usage of `sudo flatpak run` @@ -4297,11 +3055,18 @@ flatpak_run_app (FlatpakDecomposed *app_ref, } if (sandboxed) - flatpak_context_make_sandboxed (app_context); + { + flatpak_context_make_sandboxed (app_context); + flatpak_context_dump (app_context, "After making sandboxed"); + } if (extra_context) - flatpak_context_merge (app_context, extra_context); + { + flatpak_context_dump (extra_context, "Command-line overrides"); + flatpak_context_merge (app_context, extra_context); + } + flatpak_context_dump (app_context, "Final context"); original_runtime_files = flatpak_deploy_get_files (runtime_deploy); if (custom_usr_path != NULL) @@ -4600,8 +3365,15 @@ flatpak_run_app (FlatpakDecomposed *app_ref, app_id, flatpak_decomposed_get_branch (app_ref), runtime_ref, app_id_dir, app_context, extra_context, sandboxed, FALSE, flags & FLATPAK_RUN_FLAG_DEVEL, - &app_info_path, instance_id_fd, &instance_id_host_dir, - error)) + &app_info_path, instance_id_fd, + &instance_id_host_dir, &instance_id_host_private_dir, + &instance_id, error)) + return FALSE; + + if (!flatpak_run_save_environ (run_environ, + instance_id_host_private_dir, + cancellable, + error)) return FALSE; if (!sandboxed) @@ -4631,7 +3403,7 @@ flatpak_run_app (FlatpakDecomposed *app_ref, if (!flatpak_run_add_environment_args (bwrap, app_info_path, flags, app_id, app_context, app_id_dir, previous_app_id_dirs, - per_app_dir_lock_fd, + per_app_dir_lock_fd, instance_id, &exports, cancellable, error)) return FALSE; @@ -4645,10 +3417,7 @@ flatpak_run_app (FlatpakDecomposed *app_ref, NULL); } - if ((app_context->shares & FLATPAK_CONTEXT_SHARED_NETWORK) != 0) - flatpak_run_add_resolved_args (bwrap); - - flatpak_run_add_journal_args (bwrap); + flatpak_run_add_socket_args_late (bwrap, app_context->shares); add_font_path_args (bwrap); add_icon_path_args (bwrap); @@ -4725,12 +3494,12 @@ flatpak_run_app (FlatpakDecomposed *app_ref, return FALSE; /* Hold onto the lock until we execute bwrap */ - flatpak_bwrap_add_noinherit_fd (bwrap, glnx_steal_fd (&per_app_dir_lock_fd)); + flatpak_bwrap_add_noinherit_fd (bwrap, g_steal_fd (&per_app_dir_lock_fd)); flatpak_bwrap_finish (bwrap); commandline = flatpak_quote_argv ((const char **) bwrap->argv->pdata, -1); - g_debug ("Running '%s'", commandline); + g_info ("Running '%s'", commandline); if ((flags & (FLATPAK_RUN_FLAG_BACKGROUND)) != 0 || g_getenv ("FLATPAK_TEST_COVERAGE") != NULL) @@ -4739,13 +3508,21 @@ flatpak_run_app (FlatpakDecomposed *app_ref, char pid_str[64]; g_autofree char *pid_path = NULL; GSpawnFlags spawn_flags; + GSpawnChildSetupFunc child_setup; spawn_flags = G_SPAWN_SEARCH_PATH; if (flags & FLATPAK_RUN_FLAG_DO_NOT_REAP || (flags & FLATPAK_RUN_FLAG_BACKGROUND) == 0) spawn_flags |= G_SPAWN_DO_NOT_REAP_CHILD; - /* We use LEAVE_DESCRIPTORS_OPEN to work around dead-lock, see flatpak_close_fds_workaround */ + if (flags & FLATPAK_RUN_FLAG_BACKGROUND) + child_setup = flatpak_bwrap_child_setup_cb; + else + child_setup = flatpak_bwrap_child_setup_inherit_fds_cb; + + /* Even in the case where we want them closed, we use + * LEAVE_DESCRIPTORS_OPEN and close them in the child_setup + * to work around a deadlock in GLib < 2.60 */ spawn_flags |= G_SPAWN_LEAVE_DESCRIPTORS_OPEN; /* flatpak_bwrap_envp_to_args() moved the environment variables to @@ -4758,7 +3535,7 @@ flatpak_run_app (FlatpakDecomposed *app_ref, (char **) bwrap->argv->pdata, bwrap->envp, spawn_flags, - flatpak_bwrap_child_setup_cb, bwrap->fds, + child_setup, bwrap->fds, &child_pid, error)) return FALSE; diff --git a/common/flatpak-transaction.c b/common/flatpak-transaction.c index c9a2187..7339aca 100644 --- a/common/flatpak-transaction.c +++ b/common/flatpak-transaction.c @@ -24,10 +24,13 @@ #include #include "flatpak-auth-private.h" +#include "flatpak-dir-private.h" #include "flatpak-error.h" #include "flatpak-installation-private.h" #include "flatpak-progress-private.h" +#include "flatpak-repo-utils-private.h" #include "flatpak-transaction-private.h" +#include "flatpak-utils-http-private.h" #include "flatpak-utils-private.h" #include "flatpak-uri-private.h" #include "flatpak-variant-impl-private.h" @@ -128,7 +131,7 @@ struct _FlatpakTransactionOperation int run_after_prio; /* Higher => run later (when it becomes runnable). Used to run related ops (runtime extensions) before deps (apps using the runtime) */ GList *run_before_ops; gboolean run_last; /* Run this after all the other apps that are not run_last */ - FlatpakTransactionOperation *fail_if_op_fails; /* main app/runtime for related extensions, runtime for apps */ + FlatpakTransactionOperation *fail_if_op_fails; /* main app/runtime for related extensions, runtime for apps, install/update for uninstalls of eol-rebase apps */ /* main app/runtime for related extensions, app for runtimes; could be multiple * related-to-ops if this op is for a runtime which is needed by multiple apps * in the transaction: */ @@ -1189,7 +1192,7 @@ flatpak_transaction_class_init (FlatpakTransactionClass *klass) * The ::operation-error signal gets emitted when an error occurs during the * execution of the transaction. * - * Returns: the %TRUE to contine transaction, %FALSE to stop + * Returns: the %TRUE to continue transaction, %FALSE to stop */ signals[OPERATION_ERROR] = g_signal_new ("operation-error", @@ -1275,9 +1278,8 @@ flatpak_transaction_class_init (FlatpakTransactionClass *klass) * ref. * * If the caller wants to install the rebased ref, they should call - * flatpak_transaction_add_uninstall() on @ref, - * flatpak_transaction_add_rebase() on @rebased_to_ref, and return %TRUE. - * Otherwise %FALSE may be returned. + * flatpak_transaction_add_rebase_and_uninstall() on @rebased_to_ref and @ref, + * and return %TRUE. Otherwise %FALSE may be returned. * * Returns: %TRUE if the operation on this end-of-lifed ref should * be skipped (e.g. because the rebased ref has been added to the @@ -2113,19 +2115,18 @@ flatpak_transaction_add_op (FlatpakTransaction *self, const char *commit, GFile *bundle, FlatpakTransactionOperationType kind, - gboolean pin_on_deploy, - GError **error) + gboolean pin_on_deploy) { FlatpakTransactionPrivate *priv = flatpak_transaction_get_instance_private (self); FlatpakTransactionOperation *op; g_autofree char *subpaths_str = NULL; subpaths_str = subpaths_to_string (subpaths); - g_debug ("Transaction: %s %s:%s%s%s%s", - kind_to_str (kind), remote, flatpak_decomposed_get_ref (ref), - commit != NULL ? "@" : "", - commit != NULL ? commit : "", - subpaths_str); + g_info ("Transaction: %s %s:%s%s%s%s", + kind_to_str (kind), remote, flatpak_decomposed_get_ref (ref), + commit != NULL ? "@" : "", + commit != NULL ? commit : "", + subpaths_str); op = flatpak_transaction_get_last_op_for_ref (self, ref); /* If previous_ids is given, then this is a rebase operation. */ @@ -2192,7 +2193,7 @@ op_get_related (FlatpakTransaction *self, if (op->resolved_metakey == NULL) { - g_debug ("no resolved metadata for related to %s", flatpak_decomposed_get_ref (op->ref)); + g_info ("no resolved metadata for related to %s", flatpak_decomposed_get_ref (op->ref)); return TRUE; } @@ -2252,10 +2253,7 @@ add_related (FlatpakTransaction *self, related_op = flatpak_transaction_add_op (self, rel->remote, rel->ref, NULL, NULL, NULL, NULL, FLATPAK_TRANSACTION_OPERATION_UNINSTALL, - FALSE, error); - if (related_op == NULL) - return FALSE; - + FALSE); related_op->non_fatal = TRUE; related_op->fail_if_op_fails = op; flatpak_transaction_operation_add_related_to_op (related_op, op); @@ -2284,10 +2282,7 @@ add_related (FlatpakTransaction *self, (const char **) rel->subpaths, NULL, NULL, NULL, FLATPAK_TRANSACTION_OPERATION_INSTALL_OR_UPDATE, - FALSE, error); - if (related_op == NULL) - return FALSE; - + FALSE); related_op->non_fatal = TRUE; related_op->fail_if_op_fails = op; flatpak_transaction_operation_add_related_to_op (related_op, op); @@ -2352,7 +2347,7 @@ search_for_dependency (FlatpakTransaction *self, state = flatpak_transaction_ensure_remote_state (self, FLATPAK_TRANSACTION_OPERATION_INSTALL, remote, arch, &local_error); if (state == NULL) { - g_debug ("Can't get state for remote %s, ignoring: %s", remote, local_error->message); + g_info ("Can't get state for remote %s, ignoring: %s", remote, local_error->message); continue; } @@ -2415,9 +2410,8 @@ find_runtime_remote (FlatpakTransaction *self, /* Put @app_remote before the others at its priority level */ rsd.dir = priv->dir; rsd.prioritized_remote = app_remote; - g_qsort_with_data (all_remotes, g_strv_length (all_remotes), sizeof (char *), - cmp_remote_with_prioritized, &rsd); - + qsort_r (all_remotes, g_strv_length (all_remotes), sizeof (char *), + cmp_remote_with_prioritized, &rsd); app_pref = flatpak_decomposed_get_pref (app_ref); runtime_pref = flatpak_decomposed_get_pref (runtime_ref); @@ -2475,7 +2469,7 @@ op_get_runtime_ref (FlatpakTransactionOperation *op) decomposed = flatpak_decomposed_new_from_pref (FLATPAK_KINDS_RUNTIME, runtime_pref, NULL); if (decomposed == NULL) - g_debug ("Invalid runtime ref %s in metadata", runtime_pref); + g_info ("Invalid runtime ref %s in metadata", runtime_pref); return decomposed; } @@ -2495,7 +2489,7 @@ op_get_sdk_ref (FlatpakTransactionOperation *op) decomposed = flatpak_decomposed_new_from_pref (FLATPAK_KINDS_RUNTIME, sdk_pref, NULL); if (decomposed == NULL) - g_debug ("Invalid runtime ref %s in metadata", sdk_pref); + g_info ("Invalid runtime ref %s in metadata", sdk_pref); return decomposed; } @@ -2512,28 +2506,24 @@ add_new_dep_op (FlatpakTransaction *self, if (!ref_is_installed (self, dep_ref)) { - g_debug ("Installing dependency %s of %s", flatpak_decomposed_get_pref (dep_ref), - flatpak_decomposed_get_pref (op->ref)); + g_info ("Installing dependency %s of %s", flatpak_decomposed_get_pref (dep_ref), + flatpak_decomposed_get_pref (op->ref)); dep_remote = find_runtime_remote (self, op->ref, op->remote, dep_ref, op->kind, NULL, error); if (dep_remote == NULL) return FALSE; *dep_op = flatpak_transaction_add_op (self, dep_remote, dep_ref, NULL, NULL, NULL, NULL, - FLATPAK_TRANSACTION_OPERATION_INSTALL_OR_UPDATE, FALSE, error); - if (*dep_op == NULL) - return FALSE; + FLATPAK_TRANSACTION_OPERATION_INSTALL_OR_UPDATE, FALSE); } else { /* Update if in same dir */ if (dir_ref_is_installed (priv->dir, dep_ref, &dep_remote, NULL)) { - g_debug ("Updating dependency %s of %s", flatpak_decomposed_get_pref (dep_ref), - flatpak_decomposed_get_pref (op->ref)); + g_info ("Updating dependency %s of %s", flatpak_decomposed_get_pref (dep_ref), + flatpak_decomposed_get_pref (op->ref)); *dep_op = flatpak_transaction_add_op (self, dep_remote, dep_ref, NULL, NULL, NULL, NULL, - FLATPAK_TRANSACTION_OPERATION_UPDATE, FALSE, error); - if (*dep_op == NULL) - return FALSE; + FLATPAK_TRANSACTION_OPERATION_UPDATE, FALSE); (*dep_op)->non_fatal = TRUE; } } @@ -2616,6 +2606,7 @@ add_deps (FlatpakTransaction *self, return TRUE; } +/* @out_op may return %NULL even when this function returns %TRUE. It’s (transfer none). */ static gboolean flatpak_transaction_add_ref (FlatpakTransaction *self, const char *remote, @@ -2627,6 +2618,7 @@ flatpak_transaction_add_ref (FlatpakTransaction *self, GFile *bundle, const char *external_metadata, gboolean pin_on_deploy, + FlatpakTransactionOperation **out_op, GError **error) { FlatpakTransactionPrivate *priv = flatpak_transaction_get_instance_private (self); @@ -2637,6 +2629,9 @@ flatpak_transaction_add_ref (FlatpakTransaction *self, g_autoptr(FlatpakRemoteState) state = NULL; FlatpakTransactionOperation *op; + if (out_op != NULL) + *out_op = NULL; + if (remote_name_is_file (remote)) { gboolean changed_config; @@ -2675,7 +2670,7 @@ flatpak_transaction_add_ref (FlatpakTransaction *self, if (flatpak_dir_get_remote_disabled (priv->dir, origin)) { - g_debug (_("Remote %s disabled, ignoring %s update"), origin, pref); + g_info (_("Remote %s disabled, ignoring %s update"), origin, pref); return TRUE; } remote = origin; @@ -2746,13 +2741,14 @@ flatpak_transaction_add_ref (FlatpakTransaction *self, } op = flatpak_transaction_add_op (self, remote, ref, subpaths, previous_ids, - commit, bundle, kind, pin_on_deploy, error); - if (op == NULL) - return FALSE; + commit, bundle, kind, pin_on_deploy); if (external_metadata) op->external_metadata = g_bytes_new (external_metadata, strlen (external_metadata)); + if (out_op != NULL) + *out_op = op; + return TRUE; } @@ -2800,7 +2796,7 @@ flatpak_transaction_add_install (FlatpakTransaction *self, if (!flatpak_transaction_add_ref (self, remote, decomposed, subpaths, NULL, NULL, FLATPAK_TRANSACTION_OPERATION_INSTALL, - NULL, NULL, pin_on_deploy, error)) + NULL, NULL, pin_on_deploy, NULL, error)) return FALSE; return TRUE; @@ -2822,6 +2818,10 @@ flatpak_transaction_add_install (FlatpakTransaction *self, * treat @ref as the result of following an eol-rebase, and data migration from * the refs in @previous_ids will be set up. * + * If you want to rebase the ref and uninstall the old version of it, consider + * using flatpak_transaction_add_rebase_and_uninstall() instead. It will add + * appropriate dependencies between the rebase and uninstall operations. + * * See flatpak_transaction_add_install() for a description of @remote. * * Returns: %TRUE on success; %FALSE with @error set on failure. @@ -2856,7 +2856,116 @@ flatpak_transaction_add_rebase (FlatpakTransaction *self, if (dir_ref_is_installed (priv->dir, decomposed, &installed_origin, NULL)) remote = installed_origin; - return flatpak_transaction_add_ref (self, remote, decomposed, subpaths, previous_ids, NULL, FLATPAK_TRANSACTION_OPERATION_INSTALL_OR_UPDATE, NULL, NULL, FALSE, error); + return flatpak_transaction_add_ref (self, remote, decomposed, subpaths, previous_ids, NULL, FLATPAK_TRANSACTION_OPERATION_INSTALL_OR_UPDATE, NULL, NULL, FALSE, NULL, error); +} + +/** + * flatpak_transaction_add_rebase_and_uninstall: + * @self: a #FlatpakTransaction + * @remote: the name of the remote + * @new_ref: the ref to rebase to + * @old_ref: the ref to uninstall + * @subpaths: (nullable): the subpaths to include, or %NULL to install the complete ref + * @previous_ids: (nullable) (array zero-terminated=1): Previous ids to add to the + * given ref. These should simply be the ids, not the full ref names (e.g. org.foo.Bar, + * not org.foo.Bar/x86_64/master). + * @error: return location for a #GError + * + * Adds updating the @previous_ids of the given @new_ref to this transaction, + * via either installing the @new_ref if it was not already present or updating + * it. This will treat @new_ref as the result of following an eol-rebase, and + * data migration from the refs in @previous_ids will be set up. + * + * Also adds an operation to uninstall @old_ref to this transaction. This + * operation will only be run if the operation to install/update @new_ref + * succeeds. + * + * If @old_ref is not already installed (which can happen if requesting to + * install an EOLed app, rather than update one which is already installed), the + * uninstall operation will silently not be added, and this function will behave + * similarly to flatpak_transaction_add_rebase(). + * + * See flatpak_transaction_add_install() for a description of @remote. + * + * Returns: %TRUE on success; %FALSE with @error set on failure. + * Since: 1.15.4 + */ +gboolean +flatpak_transaction_add_rebase_and_uninstall (FlatpakTransaction *self, + const char *remote, + const char *new_ref, + const char *old_ref, + const char **subpaths, + const char **previous_ids, + GError **error) +{ + FlatpakTransactionPrivate *priv = flatpak_transaction_get_instance_private (self); + const char *all_paths[] = { NULL }; + g_autoptr(FlatpakDecomposed) old_decomposed = NULL; + g_autoptr(FlatpakDecomposed) new_decomposed = NULL; + g_autofree char *installed_origin = NULL; + g_autoptr(GError) local_error = NULL; + FlatpakTransactionOperation *rebase_op = NULL, *uninstall_op = NULL; + + g_return_val_if_fail (new_ref != NULL, FALSE); + g_return_val_if_fail (old_ref != NULL, FALSE); + g_return_val_if_fail (remote != NULL, FALSE); + /* flatpak_transaction_add_rebase_and_uninstall() without previous_ids doesn't make sense */ + g_return_val_if_fail (previous_ids != NULL, FALSE); + + new_decomposed = flatpak_decomposed_new_from_ref (new_ref, error); + if (new_decomposed == NULL) + return FALSE; + + old_decomposed = flatpak_decomposed_new_from_ref (old_ref, error); + if (old_decomposed == NULL) + return FALSE; + + /* If we install with no special args pull all subpaths */ + if (subpaths == NULL) + subpaths = all_paths; + + if (dir_ref_is_installed (priv->dir, new_decomposed, &installed_origin, NULL)) + remote = installed_origin; + + /* Add the install/update and uninstall ops. */ + if (!flatpak_transaction_add_ref (self, remote, new_decomposed, subpaths, + previous_ids, NULL, + FLATPAK_TRANSACTION_OPERATION_INSTALL_OR_UPDATE, + NULL, NULL, FALSE, &rebase_op, error)) + return FALSE; + + if (!flatpak_transaction_add_ref (self, NULL, old_decomposed, NULL, NULL, NULL, + FLATPAK_TRANSACTION_OPERATION_UNINSTALL, + NULL, NULL, FALSE, &uninstall_op, &local_error)) + { + /* If the user is trying to install an eol-rebased app from scratch, the + * @old_ref can’t be uninstalled because it’s not installed already. + * Silently ignore that. */ + if (g_error_matches (local_error, FLATPAK_ERROR, FLATPAK_ERROR_NOT_INSTALLED)) + { + g_clear_error (&local_error); + } + else + { + g_propagate_error (error, g_steal_pointer (&local_error)); + return FALSE; + } + } + + /* Link the ops together so that the install/update is done first, and if + * that fails then the uninstall is skipped. @uninstall_op might be %NULL even + * if the flatpak_transaction_add_ref() call succeeded above, as this might be + * a no-deploy transaction. */ + if (uninstall_op != NULL) + { + uninstall_op->non_fatal = TRUE; + uninstall_op->fail_if_op_fails = rebase_op; + flatpak_transaction_operation_add_related_to_op (uninstall_op, rebase_op); + run_operation_before (rebase_op, uninstall_op, 1); + } + + return TRUE; } /** @@ -2950,7 +3059,7 @@ flatpak_transaction_add_update (FlatpakTransaction *self, return FALSE; /* Note: we implement the merge when subpaths == NULL in flatpak_transaction_add_ref() */ - return flatpak_transaction_add_ref (self, NULL, decomposed, subpaths, NULL, commit, FLATPAK_TRANSACTION_OPERATION_UPDATE, NULL, NULL, FALSE, error); + return flatpak_transaction_add_ref (self, NULL, decomposed, subpaths, NULL, commit, FLATPAK_TRANSACTION_OPERATION_UPDATE, NULL, NULL, FALSE, NULL, error); } /** @@ -2977,7 +3086,7 @@ flatpak_transaction_add_uninstall (FlatpakTransaction *self, if (decomposed == NULL) return FALSE; - return flatpak_transaction_add_ref (self, NULL, decomposed, NULL, NULL, NULL, FLATPAK_TRANSACTION_OPERATION_UNINSTALL, NULL, NULL, FALSE, error); + return flatpak_transaction_add_ref (self, NULL, decomposed, NULL, NULL, NULL, FLATPAK_TRANSACTION_OPERATION_UNINSTALL, NULL, NULL, FALSE, NULL, error); } static gboolean @@ -3021,13 +3130,13 @@ flatpak_transaction_update_metadata (FlatpakTransaction *self, g_autoptr(GError) my_error = NULL; g_autoptr(FlatpakRemoteState) state = flatpak_transaction_ensure_remote_state (self, FLATPAK_TRANSACTION_OPERATION_UPDATE, remote, NULL, NULL); - g_debug ("Looking for remote metadata updates for %s", remote); + g_info ("Looking for remote metadata updates for %s", remote); if (!flatpak_dir_update_remote_configuration (priv->dir, remote, state, &updated, cancellable, &my_error)) - g_debug (_("Error updating remote metadata for '%s': %s"), remote, my_error->message); + g_info (_("Error updating remote metadata for '%s': %s"), remote, my_error->message); if (updated) { - g_debug ("Got updated metadata for %s", remote); + g_info ("Got updated metadata for %s", remote); some_updated = TRUE; } } @@ -3085,13 +3194,13 @@ flatpak_transaction_add_auto_install (FlatpakTransaction *self, if (state != NULL && flatpak_remote_state_lookup_ref (state, flatpak_decomposed_get_ref (auto_install_ref), NULL, NULL, NULL, NULL, NULL)) { - g_debug ("Auto adding install of %s from remote %s", flatpak_decomposed_get_ref (auto_install_ref), remote); + g_info ("Auto adding install of %s from remote %s", flatpak_decomposed_get_ref (auto_install_ref), remote); if (!flatpak_transaction_add_ref (self, remote, auto_install_ref, NULL, NULL, NULL, FLATPAK_TRANSACTION_OPERATION_INSTALL_OR_UPDATE, - NULL, NULL, FALSE, + NULL, NULL, FALSE, NULL, &local_error)) - g_debug ("Failed to add auto-install ref %s: %s", flatpak_decomposed_get_ref (auto_install_ref), + g_info ("Failed to add auto-install ref %s: %s", flatpak_decomposed_get_ref (auto_install_ref), local_error->message); } } @@ -3159,7 +3268,7 @@ load_deployed_metadata (FlatpakTransaction *self, FlatpakDecomposed *ref, char * if (!g_file_load_contents (metadata_file, NULL, &metadata_contents, &metadata_contents_length, NULL, NULL)) { - g_debug ("No metadata in local deploy of %s", flatpak_decomposed_get_ref (ref)); + g_info ("No metadata in local deploy of %s", flatpak_decomposed_get_ref (ref)); return NULL; } @@ -3191,7 +3300,7 @@ mark_op_resolved (FlatpakTransactionOperation *op, GBytes *old_metadata, GError **error) { - g_debug ("marking op %s:%s resolved to %s", kind_to_str (op->kind), flatpak_decomposed_get_ref (op->ref), commit ? commit : "-"); + g_info ("marking op %s:%s resolved to %s", kind_to_str (op->kind), flatpak_decomposed_get_ref (op->ref), commit ? commit : "-"); g_assert (op != NULL); @@ -3345,8 +3454,8 @@ try_resolve_op_from_metadata (FlatpakTransaction *self, if (flatpak_remote_state_lookup_sparse_cache (state, flatpak_decomposed_get_ref (op->ref), &sparse_cache, NULL)) { - op->eol = g_strdup (var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE, NULL)); - op->eol_rebase = g_strdup (var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE_REBASE, NULL)); + op->eol = g_strdup (var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE, NULL)); + op->eol_rebase = g_strdup (var_metadata_lookup_string (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_ENDOFLIFE_REBASE, NULL)); op->token_type = GINT32_FROM_LE (var_metadata_lookup_int32 (sparse_cache, FLATPAK_SPARSE_CACHE_KEY_TOKEN_TYPE, op->token_type)); if (op->eol_rebase) @@ -3493,7 +3602,7 @@ resolve_ops (FlatpakTransaction *self, if (latest_sideload_path != NULL && local_commit_data && latest_timestamp != 0 && ostree_commit_get_timestamp (local_commit_data) > latest_timestamp) { - g_debug ("Installed commit %s newer than sideloaded %s, ignoring", local_checksum, latest_checksum); + g_info ("Installed commit %s newer than sideloaded %s, ignoring", local_checksum, latest_checksum); checksum = g_steal_pointer (&local_checksum); } else @@ -3551,7 +3660,7 @@ resolve_ops (FlatpakTransaction *self, if (g_error_matches (local_error, FLATPAK_HTTP_ERROR, FLATPAK_HTTP_ERROR_UNAUTHORIZED) && !op->requested_token) { - g_debug ("Unauthorized access during resolve by commit of %s, retrying with token", flatpak_decomposed_get_ref (op->ref)); + g_info ("Unauthorized access during resolve by commit of %s, retrying with token", flatpak_decomposed_get_ref (op->ref)); priv->needs_resolve = TRUE; priv->needs_tokens = TRUE; @@ -3637,7 +3746,7 @@ request_tokens_webflow (FlatpakAuthenticatorRequest *object, g_assert (priv->active_request_id == 0); priv->active_request_id = ++priv->next_request_id; - g_debug ("Webflow start %s", arg_uri); + g_info ("Webflow start %s", arg_uri); g_signal_emit (transaction, signals[WEBFLOW_START], 0, data->remote, arg_uri, options, priv->active_request_id, &retval); if (!retval) { @@ -3647,7 +3756,7 @@ request_tokens_webflow (FlatpakAuthenticatorRequest *object, /* We didn't handle the uri, cancel the auth op. */ if (!flatpak_authenticator_request_call_close_sync (data->request, NULL, &local_error)) - g_debug ("Failed to close auth request: %s", local_error->message); + g_info ("Failed to close auth request: %s", local_error->message); } } @@ -3667,7 +3776,7 @@ request_tokens_webflow_done (FlatpakAuthenticatorRequest *object, id = priv->active_request_id; priv->active_request_id = 0; - g_debug ("Webflow done"); + g_info ("Webflow done"); g_signal_emit (transaction, signals[WEBFLOW_DONE], 0, options, id); } @@ -3687,7 +3796,7 @@ request_tokens_basic_auth (FlatpakAuthenticatorRequest *object, g_assert (priv->active_request_id == 0); priv->active_request_id = ++priv->next_request_id; - g_debug ("BasicAuth start %s", arg_realm); + g_info ("BasicAuth start %s", arg_realm); g_signal_emit (transaction, signals[BASIC_AUTH_START], 0, data->remote, arg_realm, options, priv->active_request_id, &retval); if (!retval) { @@ -3697,7 +3806,7 @@ request_tokens_basic_auth (FlatpakAuthenticatorRequest *object, /* We didn't handle the request, cancel the auth op. */ if (!flatpak_authenticator_request_call_close_sync (data->request, NULL, &local_error)) - g_debug ("Failed to close auth request: %s", local_error->message); + g_info ("Failed to close auth request: %s", local_error->message); } } @@ -3734,7 +3843,7 @@ flatpak_transaction_abort_webflow (FlatpakTransaction *self, if (!data->done) { if (!flatpak_authenticator_request_call_close_sync (data->request, NULL, &local_error)) - g_debug ("Failed to close auth request: %s", local_error->message); + g_info ("Failed to close auth request: %s", local_error->message); } } } @@ -3778,7 +3887,7 @@ flatpak_transaction_complete_basic_auth (FlatpakTransaction *self, if (user == NULL) { if (!flatpak_authenticator_request_call_close_sync (data->request, NULL, &local_error)) - g_debug ("Failed to abort basic auth request: %s", local_error->message); + g_info ("Failed to abort basic auth request: %s", local_error->message); } else { @@ -3786,7 +3895,7 @@ flatpak_transaction_complete_basic_auth (FlatpakTransaction *self, user, password, options, NULL, &local_error)) - g_debug ("Failed to reply to basic auth request: %s", local_error->message); + g_info ("Failed to reply to basic auth request: %s", local_error->message); } } } @@ -3832,9 +3941,11 @@ request_tokens_for_remote (FlatpakTransaction *self, g_autoptr(GFile) deploy = NULL; deploy = flatpak_dir_get_if_deployed (priv->dir, auto_install_ref, NULL, cancellable); if (deploy == NULL) - g_signal_emit (self, signals[INSTALL_AUTHENTICATOR], 0, - remote, flatpak_decomposed_get_ref (auto_install_ref)); - deploy = flatpak_dir_get_if_deployed (priv->dir, auto_install_ref, NULL, cancellable); + { + g_signal_emit (self, signals[INSTALL_AUTHENTICATOR], 0, + remote, flatpak_decomposed_get_ref (auto_install_ref)); + deploy = flatpak_dir_get_if_deployed (priv->dir, auto_install_ref, NULL, cancellable); + } if (deploy == NULL) return flatpak_fail (error, _("No authenticator installed for remote '%s'"), remote); } @@ -3873,7 +3984,7 @@ request_tokens_for_remote (FlatpakTransaction *self, g_string_append (refs_as_str, ", "); } - g_debug ("Requesting tokens for remote %s: %s", remote, refs_as_str->str); + g_info ("Requesting tokens for remote %s: %s", remote, refs_as_str->str); refs = g_variant_ref_sink (g_variant_builder_end (&refs_builder)); extra_builder = g_variant_builder_new (G_VARIANT_TYPE ("a{sv}")); @@ -3915,11 +4026,11 @@ request_tokens_for_remote (FlatpakTransaction *self, g_assert (priv->active_request_id == 0); /* No outstanding requests */ priv->active_request = NULL; - results = data.results; /* Make sure its freed as needed */ + results = data.results; /* Make sure it's freed as needed */ { g_autofree char *results_str = results != NULL ? g_variant_print (results, FALSE) : g_strdup ("NULL"); - g_debug ("Response from request_tokens: %d - %s\n", data.response, results_str); + g_info ("Response from request_tokens: %d - %s\n", data.response, results_str); } if (data.response == FLATPAK_AUTH_RESPONSE_CANCELLED) @@ -3973,6 +4084,7 @@ request_tokens_for_remote (FlatpakTransaction *self, token = token_for_refs; break; } + g_clear_pointer (&refs_strv, g_free); } if (token == NULL) @@ -4589,7 +4701,7 @@ flatpak_transaction_resolve_bundles (FlatpakTransaction *self, if (!flatpak_transaction_add_ref (self, remote, ref, NULL, NULL, commit, FLATPAK_TRANSACTION_OPERATION_INSTALL_BUNDLE, - data->file, metadata, FALSE, error)) + data->file, metadata, FALSE, NULL, error)) return FALSE; } @@ -4770,7 +4882,7 @@ _run_op_kind (FlatpakTransaction *self, } } else - g_debug ("%s need no update", flatpak_decomposed_get_ref (op->ref)); + g_info ("%s need no update", flatpak_decomposed_get_ref (op->ref)); } else if (op->kind == FLATPAK_TRANSACTION_OPERATION_INSTALL_BUNDLE) { @@ -4891,7 +5003,7 @@ add_uninstall_unused_ops (FlatpakTransaction *self, NULL, /* metadata_injection */ NULL, /* eol_injection */ NULL, /* exclude_refs */ - TRUE, /* filter_by_eol */ + FLATPAK_DIR_FILTER_EOL | FLATPAK_DIR_FILTER_AUTOPRUNE, cancellable, error); if (old_unused_refs == NULL) return FALSE; @@ -4948,7 +5060,7 @@ add_uninstall_unused_ops (FlatpakTransaction *self, metadata_injection, eol_injection, to_be_excluded_strv, - TRUE, /* filter_by_eol */ + FLATPAK_DIR_FILTER_EOL | FLATPAK_DIR_FILTER_AUTOPRUNE, cancellable, error); if (unused_refs == NULL) return FALSE; @@ -4983,9 +5095,8 @@ add_uninstall_unused_ops (FlatpakTransaction *self, uninstall_op = flatpak_transaction_add_op (self, origin, unused_ref, NULL, NULL, NULL, NULL, FLATPAK_TRANSACTION_OPERATION_UNINSTALL, - FALSE, NULL); - if (uninstall_op) - run_operation_last (uninstall_op); + FALSE); + run_operation_last (uninstall_op); } } diff --git a/common/flatpak-transaction.h b/common/flatpak-transaction.h index c5832dc..0b8f2de 100644 --- a/common/flatpak-transaction.h +++ b/common/flatpak-transaction.h @@ -313,6 +313,14 @@ gboolean flatpak_transaction_add_rebase (FlatpakTransaction *self, const char **previous_ids, GError **error); FLATPAK_EXTERN +gboolean flatpak_transaction_add_rebase_and_uninstall (FlatpakTransaction *self, + const char *remote, + const char *new_ref, + const char *old_ref, + const char **subpaths, + const char **previous_ids, + GError **error); +FLATPAK_EXTERN gboolean flatpak_transaction_add_install_bundle (FlatpakTransaction *self, GFile *file, GBytes *gpg_data, diff --git a/common/flatpak-usb-private.h b/common/flatpak-usb-private.h new file mode 100644 index 0000000..9e4adfd --- /dev/null +++ b/common/flatpak-usb-private.h @@ -0,0 +1,97 @@ +/* + * Copyright © 2024 GNOME Foundation, Inc. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Georges Basile Stavracas Neto + * Hubert Figuière + */ + +#pragma once + +#include + +typedef enum +{ + FLATPAK_USB_RULE_TYPE_ALL, + FLATPAK_USB_RULE_TYPE_CLASS, + FLATPAK_USB_RULE_TYPE_DEVICE, + FLATPAK_USB_RULE_TYPE_VENDOR, +} UsbRuleType; + +typedef enum +{ + FLATPAK_USB_RULE_CLASS_TYPE_CLASS_ONLY, + FLATPAK_USB_RULE_CLASS_TYPE_CLASS_SUBCLASS, +} UsbDeviceClassType; + +typedef struct +{ + UsbDeviceClassType type; + uint16_t class; + uint16_t subclass; +} UsbDeviceClass; + +typedef struct +{ + uint16_t id; +} UsbProduct; + +typedef struct +{ + uint16_t id; +} UsbVendor; + +typedef struct +{ + UsbRuleType rule_type; + + union { + UsbDeviceClass device_class; + UsbProduct product; + UsbVendor vendor; + } d; +} FlatpakUsbRule; + +typedef struct +{ + GPtrArray *rules; +} FlatpakUsbQuery; + + +void flatpak_usb_rule_print (FlatpakUsbRule *usb_rule, + GString *string); +void flatpak_usb_rule_free (FlatpakUsbRule *usb_rule); + +G_DEFINE_AUTOPTR_CLEANUP_FUNC (FlatpakUsbRule, flatpak_usb_rule_free) + +FlatpakUsbQuery *flatpak_usb_query_new (void); +FlatpakUsbQuery *flatpak_usb_query_copy (const FlatpakUsbQuery *query); +void flatpak_usb_query_print (const FlatpakUsbQuery *usb_query, + GString *string); +void flatpak_usb_query_free (FlatpakUsbQuery *usb_query); + +G_DEFINE_AUTOPTR_CLEANUP_FUNC (FlatpakUsbQuery, flatpak_usb_query_free) + +gboolean flatpak_usb_parse_usb_rule (const char *data, + FlatpakUsbRule **out_usb_rule, + GError **error); +gboolean flatpak_usb_parse_usb (const char *data, + FlatpakUsbQuery **out_usb_query, + GError **error); +gboolean flatpak_usb_parse_usb_list (const char *buffer, + GHashTable *enumerable, + GHashTable *hidden, + GError **error); diff --git a/common/flatpak-usb.c b/common/flatpak-usb.c new file mode 100644 index 0000000..7773bf6 --- /dev/null +++ b/common/flatpak-usb.c @@ -0,0 +1,449 @@ +/* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: + * Copyright © 2024 GNOME Foundation, Inc. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Georges Basile Stavracas Neto + * Hubert Figuière + */ + +#include +#include +#include +#include "libglnx.h" + +#include "flatpak-usb-private.h" + +void +flatpak_usb_rule_free (FlatpakUsbRule *usb_rule) +{ + g_clear_pointer (&usb_rule, g_free); +} + +void +flatpak_usb_query_free (FlatpakUsbQuery *usb_query) +{ + if (!usb_query) + return; + + g_clear_pointer (&usb_query->rules, g_ptr_array_unref); + g_clear_pointer (&usb_query, g_free); +} + +static gboolean +validate_hex_uint16 (const char *value, + size_t expected_length, + uint16_t *out_value) +{ + size_t len; + char *end; + long n; + + g_return_val_if_fail (value != NULL, FALSE); + g_return_val_if_fail (expected_length > 0 && expected_length <= 4, FALSE); + + len = strlen (value); + if (len != expected_length) + return FALSE; + + n = strtol (value, &end, 16); + + if (end - value != len) + return FALSE; + + if (n < 0 || n > UINT16_MAX) + return FALSE; + + if (out_value) + *out_value = n; + + return TRUE; +} + +static gboolean +parse_all_usb_rule (FlatpakUsbRule *dest, + GStrv data, + GError **error) +{ + if (g_strv_length (data) != 1) + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, + _("USB device query 'all' must not have data")); + return FALSE; + } + + dest->rule_type = FLATPAK_USB_RULE_TYPE_ALL; + return TRUE; +} + +static gboolean +parse_cls_usb_rule (FlatpakUsbRule *dest, + GStrv data, + GError **error) +{ + const char *subclass; + const char *class; + + if (g_strv_length (data) < 3) + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, + _("USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*")); + return FALSE; + } + + class = data[1]; + subclass = data[2]; + + if (!validate_hex_uint16 (class, 2, &dest->d.device_class.class)) + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, _("Invalid USB class")); + return FALSE; + } + + if (g_strcmp0 (subclass, "*") == 0) + { + dest->d.device_class.type = FLATPAK_USB_RULE_CLASS_TYPE_CLASS_ONLY; + } + else if (validate_hex_uint16 (subclass, 2, &dest->d.device_class.subclass)) + { + dest->d.device_class.type = FLATPAK_USB_RULE_CLASS_TYPE_CLASS_SUBCLASS; + } + else + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, _("Invalid USB subclass")); + return FALSE; + } + + dest->rule_type = FLATPAK_USB_RULE_TYPE_CLASS; + return TRUE; +} + +static gboolean +parse_dev_usb_rule (FlatpakUsbRule *dest, + GStrv data, + GError **error) +{ + if (g_strv_length (data) != 2) + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, + _("USB query rule 'dev' must have a valid 4-digit hexadecimal product id")); + return FALSE; + } + + if (!validate_hex_uint16 (data[1], 4, &dest->d.product.id)) + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, + _("USB query rule 'dev' must have a valid 4-digit hexadecimal product id")); + return FALSE; + } + + dest->rule_type = FLATPAK_USB_RULE_TYPE_DEVICE; + return TRUE; +} + +static gboolean +parse_vnd_usb_rule (FlatpakUsbRule *dest, + GStrv data, + GError **error) +{ + if (g_strv_length (data) != 2) + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, + _("USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id")); + return FALSE; + } + + if (!validate_hex_uint16 (data[1], 4, &dest->d.product.id)) + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, + _("USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id")); + return FALSE; + } + + dest->rule_type = FLATPAK_USB_RULE_TYPE_VENDOR; + return TRUE; +} + +static const struct { + const char *name; + gboolean (*parse) (FlatpakUsbRule *dest, + GStrv data, + GError **error); +} rule_parsers[] = { + { "all", parse_all_usb_rule }, + { "cls", parse_cls_usb_rule }, + { "dev", parse_dev_usb_rule }, + { "vnd", parse_vnd_usb_rule }, +}; + +gboolean +flatpak_usb_parse_usb_rule (const char *data, + FlatpakUsbRule **out_usb_rule, + GError **error) +{ + g_autoptr(FlatpakUsbRule) usb_rule = NULL; + g_auto(GStrv) split = NULL; + gboolean parsed = FALSE; + + split = g_strsplit (data, ":", 0); + + if (!split || g_strv_length (split) > 3) + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, + _("USB device queries must be in the form TYPE:DATA")); + return FALSE; + } + + usb_rule = g_new0 (FlatpakUsbRule, 1); + + for (size_t i = 0; i < G_N_ELEMENTS (rule_parsers); i++) + { + if (g_strcmp0 (rule_parsers[i].name, split[0])) + continue; + + if (!rule_parsers[i].parse (usb_rule, split, error)) + return FALSE; + + parsed = TRUE; + } + + if (!parsed) + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, + _("Unknown USB query rule %s"), split[0]); + return FALSE; + } + + if (out_usb_rule) + *out_usb_rule = g_steal_pointer (&usb_rule); + + return TRUE; +} + +gboolean +flatpak_usb_parse_usb (const char *data, + FlatpakUsbQuery **out_usb_query, + GError **error) +{ + g_autoptr(FlatpakUsbQuery) usb_query = NULL; + g_autoptr(GHashTable) rule_types = NULL; + g_auto(GStrv) split = NULL; + + split = g_strsplit (data, "+", 0); + + if (!*split) + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, _("Empty USB query")); + return FALSE; + } + + usb_query = flatpak_usb_query_new (); + + for (size_t i = 0; split[i] != NULL; i++) + { + g_autoptr(FlatpakUsbRule) usb_rule = NULL; + const char *rule = split[i]; + + if (!flatpak_usb_parse_usb_rule (rule, &usb_rule, error)) + return FALSE; + + g_ptr_array_add (usb_query->rules, g_steal_pointer (&usb_rule)); + } + + g_assert (usb_query->rules->len > 0); + + rule_types = g_hash_table_new (g_direct_hash, g_direct_equal); + for (size_t i = 0; i < usb_query->rules->len; i++) + { + FlatpakUsbRule *usb_rule = g_ptr_array_index (usb_query->rules, i); + if (!g_hash_table_add (rule_types, GINT_TO_POINTER (usb_rule->rule_type))) + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, + _("Multiple USB query rules of the same type is not supported")); + return FALSE; + } + } + + if (g_hash_table_contains (rule_types, GINT_TO_POINTER (FLATPAK_USB_RULE_TYPE_ALL)) && + g_hash_table_size (rule_types) > 1) + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, + _("'all' must not contain extra query rules")); + return FALSE; + } + + if (g_hash_table_contains (rule_types, GINT_TO_POINTER (FLATPAK_USB_RULE_TYPE_DEVICE)) && + !g_hash_table_contains (rule_types, GINT_TO_POINTER (FLATPAK_USB_RULE_TYPE_VENDOR))) + { + g_set_error (error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE, + _("USB queries with 'dev' must also specify vendors")); + return FALSE; + } + + if (out_usb_query) + *out_usb_query = g_steal_pointer (&usb_query); + + return TRUE; +} + +gboolean +flatpak_usb_parse_usb_list (const char *buffer, + GHashTable *enumerable, + GHashTable *hidden, + GError **error) +{ + char *aux = NULL; + g_autoptr(FlatpakUsbQuery) usb_query = NULL; + g_autoptr(GInputStream) stream = NULL; + g_autoptr(GDataInputStream) buffered = NULL; + g_autoptr(GError) local_error = NULL; + + stream = g_memory_input_stream_new_from_data (buffer, -1, NULL); + if (!stream) + return FALSE; + + buffered = g_data_input_stream_new (G_INPUT_STREAM (stream)); + + while ((aux = g_data_input_stream_read_line (buffered, NULL, NULL, &local_error))) + { + g_autofree char *line = g_steal_pointer (&aux); + g_auto(GStrv) split = NULL; + gboolean blocking = FALSE; + + if (line[0] == '#') + continue; + + split = g_strsplit (line, ";", 0); + if (!split || !*split) + continue; + + for (size_t i = 0; split[i] != NULL; i++) + { + const char *item = split[i]; + + blocking = item[0] == '!'; + if (blocking) + item++; + + if (flatpak_usb_parse_usb (item, &usb_query, NULL)) + { + GString *string = g_string_new (NULL); + flatpak_usb_query_print (usb_query, string); + + if (blocking) + { + g_hash_table_insert (hidden, + g_string_free (string, FALSE), + g_steal_pointer (&usb_query)); + } + else + { + g_hash_table_insert (enumerable, + g_string_free (string, FALSE), + g_steal_pointer (&usb_query)); + } + } + } + } + + g_input_stream_close (G_INPUT_STREAM (buffered), NULL, error); + g_input_stream_close (G_INPUT_STREAM (stream), NULL, error); + + if (local_error) + { + g_propagate_error (error, g_steal_pointer (&local_error)); + return FALSE; + } + + return TRUE; +} + +void +flatpak_usb_rule_print (FlatpakUsbRule *usb_rule, + GString *string) +{ + g_return_if_fail (usb_rule != NULL); + g_assert (string != NULL); + + switch (usb_rule->rule_type) + { + case FLATPAK_USB_RULE_TYPE_ALL: + g_string_append (string, "all"); + break; + + case FLATPAK_USB_RULE_TYPE_CLASS: + g_string_append (string, "cls:"); + if (usb_rule->d.device_class.type == FLATPAK_USB_RULE_CLASS_TYPE_CLASS_ONLY) + g_string_append_printf (string, "%02x:*", usb_rule->d.device_class.class); + else if (usb_rule->d.device_class.type == FLATPAK_USB_RULE_CLASS_TYPE_CLASS_SUBCLASS) + g_string_append_printf (string, "%02x:%02x", usb_rule->d.device_class.class, usb_rule->d.device_class.subclass); + else + g_assert_not_reached (); + break; + + case FLATPAK_USB_RULE_TYPE_DEVICE: + g_string_append_printf (string, "dev:%04x", usb_rule->d.product.id); + break; + + case FLATPAK_USB_RULE_TYPE_VENDOR: + g_string_append_printf (string, "vnd:%04x", usb_rule->d.vendor.id); + break; + + default: + g_assert_not_reached (); + } +} + +FlatpakUsbQuery * +flatpak_usb_query_new (void) +{ + g_autoptr(FlatpakUsbQuery) usb_query = NULL; + + usb_query = g_new0 (FlatpakUsbQuery, 1); + usb_query->rules = g_ptr_array_new_with_free_func ((GDestroyNotify) flatpak_usb_rule_free); + + return g_steal_pointer (&usb_query); +} + +FlatpakUsbQuery * +flatpak_usb_query_copy (const FlatpakUsbQuery *query) +{ + FlatpakUsbQuery *copy = flatpak_usb_query_new (); + + for (size_t i = 0; i < query->rules->len; i++) + { + FlatpakUsbRule *usb_rule = g_ptr_array_index (query->rules, i); + g_ptr_array_add (copy->rules, g_memdup2 (usb_rule, sizeof (FlatpakUsbRule))); + } + return copy; +} + +void +flatpak_usb_query_print (const FlatpakUsbQuery *usb_query, + GString *string) +{ + g_assert (usb_query != NULL && usb_query->rules != NULL); + g_assert (string != NULL); + + for (size_t i = 0; i < usb_query->rules->len; i++) + { + FlatpakUsbRule *usb_rule = g_ptr_array_index (usb_query->rules, i); + + if (i > 0) + g_string_append_c (string, '+'); + + flatpak_usb_rule_print (usb_rule, string); + } +} diff --git a/common/flatpak-utils-base-private.h b/common/flatpak-utils-base-private.h index 9d10a53..6784ad6 100644 --- a/common/flatpak-utils-base-private.h +++ b/common/flatpak-utils-base-private.h @@ -29,13 +29,14 @@ # define G_DBUS_METHOD_INVOCATION_UNHANDLED FALSE #endif -char *flatpak_get_timezone (void); +const char * flatpak_get_tzdir (void); + +char * flatpak_get_timezone (void); char * flatpak_readlink (const char *path, GError **error); char * flatpak_resolve_link (const char *path, GError **error); char * flatpak_canonicalize_filename (const char *path); -void flatpak_close_fds_workaround (int start_fd); #endif /* __FLATPAK_UTILS_BASE_H__ */ diff --git a/common/flatpak-utils-base.c b/common/flatpak-utils-base.c index ef91d1b..4cc760a 100644 --- a/common/flatpak-utils-base.c +++ b/common/flatpak-utils-base.c @@ -28,13 +28,23 @@ #include #include "libglnx.h" +const char * +flatpak_get_tzdir (void) +{ + const gchar *tzdir; + + tzdir = getenv ("TZDIR"); + if (tzdir) + return tzdir; + + return "/usr/share/zoneinfo"; +} + char * flatpak_get_timezone (void) { g_autofree gchar *symlink = NULL; gchar *etc_timezone = NULL; - const gchar *tzdir; - const gchar *default_tzdir = "/usr/share/zoneinfo"; symlink = flatpak_resolve_link ("/etc/localtime", NULL); if (symlink != NULL) @@ -42,11 +52,10 @@ flatpak_get_timezone (void) /* Resolve relative path */ g_autofree gchar *canonical = flatpak_canonicalize_filename (symlink); char *canonical_suffix; + const gchar *tzdir = flatpak_get_tzdir (); /* Strip the prefix and slashes if possible. */ - - tzdir = getenv ("TZDIR"); - if (tzdir != NULL && g_str_has_prefix (canonical, tzdir)) + if (g_str_has_prefix (canonical, tzdir)) { canonical_suffix = canonical + strlen (tzdir); while (*canonical_suffix == '/') @@ -54,15 +63,6 @@ flatpak_get_timezone (void) return g_strdup (canonical_suffix); } - - if (g_str_has_prefix (canonical, default_tzdir)) - { - canonical_suffix = canonical + strlen (default_tzdir); - while (*canonical_suffix == '/') - canonical_suffix++; - - return g_strdup (canonical_suffix); - } } if (g_file_get_contents ("/etc/timezone", &etc_timezone, @@ -112,19 +112,3 @@ flatpak_canonicalize_filename (const char *path) g_autoptr(GFile) file = g_file_new_for_path (path); return g_file_get_path (file); } - -/* There is a dead-lock in glib versions before 2.60 when it closes - * the fds. See: https://gitlab.gnome.org/GNOME/glib/merge_requests/490 - * This was hitting the test-suite a lot, so we work around it by using - * the G_SPAWN_LEAVE_DESCRIPTORS_OPEN/G_SUBPROCESS_FLAGS_INHERIT_FDS flag - * and setting CLOEXEC ourselves. - */ -void -flatpak_close_fds_workaround (int start_fd) -{ - int max_open_fds = sysconf (_SC_OPEN_MAX); - int fd; - - for (fd = start_fd; fd < max_open_fds; fd++) - fcntl (fd, F_SETFD, FD_CLOEXEC); -} diff --git a/common/flatpak-utils-http.c b/common/flatpak-utils-http.c index 18098d4..27de9c7 100644 --- a/common/flatpak-utils-http.c +++ b/common/flatpak-utils-http.c @@ -373,7 +373,11 @@ flatpak_create_http_session (const char *user_agent) g_mutex_init (&session->lock); curl_easy_setopt (curl, CURLOPT_USERAGENT, user_agent); +#if CURL_AT_LEAST_VERSION(7, 85, 0) + rc = curl_easy_setopt (curl, CURLOPT_PROTOCOLS_STR, "http,https"); +#else rc = curl_easy_setopt (curl, CURLOPT_PROTOCOLS, (long)(CURLPROTO_HTTP | CURLPROTO_HTTPS)); +#endif g_assert_cmpint (rc, ==, CURLM_OK); curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); @@ -467,7 +471,7 @@ flatpak_download_http_uri_once (FlatpakHttpSession *session, long response; CURL *curl = session->curl; - g_debug ("Loading %s using curl", uri); + g_info ("Loading %s using curl", uri); curl_easy_setopt (curl, CURLOPT_URL, uri); curl_easy_setopt (curl, CURLOPT_WRITEDATA, (void *)data); @@ -556,7 +560,7 @@ flatpak_download_http_uri_once (FlatpakHttpSession *session, !check_http_status (data->status, error)) return FALSE; - g_debug ("Received %" G_GUINT64_FORMAT " bytes", data->downloaded_bytes); + g_info ("Received %" G_GUINT64_FORMAT " bytes", data->downloaded_bytes); /* This is not really needed, but the auto-pointer confuses some compilers in the CI */ g_clear_pointer (&curl_lock, g_mutex_locker_free); @@ -816,7 +820,7 @@ flatpak_download_http_uri_once (FlatpakHttpSession *http_session, g_autoptr(SoupRequestHTTP) request = NULL; SoupMessage *m; - g_debug ("Loading %s using libsoup", uri); + g_info ("Loading %s using libsoup", uri); request = soup_session_request_http (soup_session, (data->flags & FLATPAK_HTTP_FLAGS_HEAD) != 0 ? "HEAD" : "GET", @@ -881,7 +885,7 @@ flatpak_download_http_uri_once (FlatpakHttpSession *http_session, return FALSE; } - g_debug ("Received %" G_GUINT64_FORMAT " bytes", data->downloaded_bytes); + g_info ("Received %" G_GUINT64_FORMAT " bytes", data->downloaded_bytes); return TRUE; } @@ -912,8 +916,8 @@ flatpak_http_should_retry_request (const GError *error, g_error_matches (error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_NOT_FOUND) || g_error_matches (error, G_RESOLVER_ERROR, G_RESOLVER_ERROR_TEMPORARY_FAILURE)) { - g_debug ("Should retry request (remaining: %u retries), due to transient error: %s", - n_retries_remaining, error->message); + g_info ("Should retry request (remaining: %u retries), due to transient error: %s", + n_retries_remaining, error->message); return TRUE; } diff --git a/common/flatpak-utils-private.h b/common/flatpak-utils-private.h index eb97a8d..d87c2eb 100644 --- a/common/flatpak-utils-private.h +++ b/common/flatpak-utils-private.h @@ -24,36 +24,13 @@ #include #include "libglnx.h" -#include #include #include -#include "flatpak-dbus-generated.h" -#include "flatpak-document-dbus-generated.h" -#include "flatpak-context-private.h" #include "flatpak-error.h" -#include "flatpak-utils-http-private.h" -#include "flatpak-variant-private.h" -#include "flatpak-dir-private.h" -#include -#include +#include "flatpak-glib-backports-private.h" #define AUTOFS_SUPER_MAGIC 0x0187 -#define FLATPAK_ANSI_ALT_SCREEN_ON "\x1b[?1049h" -#define FLATPAK_ANSI_ALT_SCREEN_OFF "\x1b[?1049l" -#define FLATPAK_ANSI_HIDE_CURSOR "\x1b[?25l" -#define FLATPAK_ANSI_SHOW_CURSOR "\x1b[?25h" -#define FLATPAK_ANSI_BOLD_ON "\x1b[1m" -#define FLATPAK_ANSI_BOLD_OFF "\x1b[22m" -#define FLATPAK_ANSI_FAINT_ON "\x1b[2m" -#define FLATPAK_ANSI_FAINT_OFF "\x1b[22m" -#define FLATPAK_ANSI_RED "\x1b[31m" -#define FLATPAK_ANSI_GREEN "\x1b[32m" -#define FLATPAK_ANSI_COLOR_RESET "\x1b[0m" - -#define FLATPAK_ANSI_ROW_N "\x1b[%d;1H" -#define FLATPAK_ANSI_CLEAR "\x1b[0J" - #define FLATPAK_XA_CACHE_VERSION 2 /* version 1 added extra data download size */ /* version 2 added ot.ts timestamps (to new format) */ @@ -69,19 +46,6 @@ #define FLATPAK_SUMMARY_DIFF_HEADER "xadf" -#define FLATPAK_SUMMARY_HISTORY_LENGTH_DEFAULT 16 - -gboolean flatpak_set_tty_echo (gboolean echo); -void flatpak_get_window_size (int *rows, - int *cols); -gboolean flatpak_get_cursor_pos (int *row, - int *col); -void flatpak_hide_cursor (void); -void flatpak_show_cursor (void); - -void flatpak_enable_raw_mode (void); -void flatpak_disable_raw_mode (void); - /* https://bugzilla.gnome.org/show_bug.cgi?id=766370 */ #if !GLIB_CHECK_VERSION (2, 49, 3) #define FLATPAK_VARIANT_BUILDER_INITIALIZER {{0, }} @@ -102,9 +66,6 @@ gboolean flatpak_fail_error (GError **error, const char *fmt, ...) G_GNUC_PRINTF (3, 4); -void flatpak_debug2 (const char *format, - ...) G_GNUC_PRINTF (1, 2); - gint flatpak_strcmp0_ptr (gconstpointer a, gconstpointer b); @@ -118,13 +79,11 @@ gboolean flatpak_has_path_prefix (const char *str, const char * flatpak_path_match_prefix (const char *pattern, const char *path); -void flatpak_disable_fancy_output (void); -void flatpak_enable_fancy_output (void); -gboolean flatpak_fancy_output (void); - const char * flatpak_get_arch (void); const char ** flatpak_get_arches (void); gboolean flatpak_is_linux32_arch (const char *arch); +const char *flatpak_get_compat_arch (const char *kernel_arch); +const char *flatpak_get_compat_arch_reverse (const char *compat_arch); const char ** flatpak_get_gl_drivers (void); gboolean flatpak_extension_matches_reason (const char *extension_id, @@ -132,6 +91,7 @@ gboolean flatpak_extension_matches_reason (const char *extension_id, gboolean default_value); const char * flatpak_get_bwrap (void); +gboolean flatpak_bwrap_is_unprivileged (void); char **flatpak_strv_sort_by_length (const char * const *strv); char **flatpak_strv_merge (char **strv1, @@ -139,27 +99,6 @@ char **flatpak_strv_merge (char **strv1, char **flatpak_subpaths_merge (char **subpaths1, char **subpaths2); -const char * const *flatpak_get_locale_categories (void); -char *flatpak_get_lang_from_locale (const char *locale); -char **flatpak_get_current_locale_langs (void); - -gboolean flatpak_write_update_checksum (GOutputStream *out, - gconstpointer data, - gsize len, - gsize *out_bytes_written, - GChecksum *checksum, - GCancellable *cancellable, - GError **error); - - -gboolean flatpak_splice_update_checksum (GOutputStream * out, - GInputStream *in, - GChecksum *checksum, - FlatpakLoadUriProgress progress, - gpointer progress_data, - GCancellable *cancellable, - GError **error); - GBytes * flatpak_read_stream (GInputStream * in, gboolean null_terminate, GError **error); @@ -173,206 +112,11 @@ gboolean flatpak_variant_save (GFile *dest, GVariant *variant, GCancellable *cancellable, GError **error); -GVariant *flatpak_repo_load_summary (OstreeRepo *repo, - GError **error); -GVariant *flatpak_repo_load_summary_index (OstreeRepo *repo, - GError **error); -GVariant *flatpak_repo_load_digested_summary (OstreeRepo *repo, - const char *digest, - GError **error); -GPtrArray *flatpak_summary_match_subrefs (GVariant *summary, - const char *collection_id, - FlatpakDecomposed *ref); -gboolean flatpak_summary_lookup_ref (GVariant *summary, - const char *collection_id, - const char *ref, - char **out_checksum, - VarRefInfoRef *out_info); -gboolean flatpak_summary_find_ref_map (VarSummaryRef summary, - const char *collection_id, - VarRefMapRef *refs_out); -gboolean flatpak_var_ref_map_lookup_ref (VarRefMapRef ref_map, - const char *ref, - VarRefInfoRef *out_info); - -gboolean flatpak_get_allowed_exports (const char *source_path, - const char *app_id, - FlatpakContext *context, - char ***allowed_extensions_out, - char ***allowed_prefixes_out, - gboolean *require_exact_match_out); - -FlatpakDecomposed *flatpak_find_current_ref (const char *app_id, - GCancellable *cancellable, - GError **error); -GFile *flatpak_find_deploy_dir_for_ref (FlatpakDecomposed *ref, - FlatpakDir **dir_out, - GCancellable *cancellable, - GError **error); -GFile * flatpak_find_files_dir_for_ref (FlatpakDecomposed *ref, - GCancellable *cancellable, - GError **error); -GFile * flatpak_find_unmaintained_extension_dir_if_exists (const char *name, - const char *arch, - const char *branch, - GCancellable *cancellable); -FlatpakDeploy * flatpak_find_deploy_for_ref_in (GPtrArray *dirs, - const char *ref, - const char *commit, - GCancellable *cancellable, - GError **error); -FlatpakDeploy * flatpak_find_deploy_for_ref (const char *ref, - const char *commit, - FlatpakDir *opt_user_dir, - GCancellable *cancellable, - GError **error); -char ** flatpak_list_deployed_refs (const char *type, - const char *name_prefix, - const char *arch, - const char *branch, - GCancellable *cancellable, - GError **error); -char ** flatpak_list_unmaintained_refs (const char *name_prefix, - const char *branch, - const char *arch, - GCancellable *cancellable, - GError **error); gboolean flatpak_remove_dangling_symlinks (GFile *dir, GCancellable *cancellable, GError **error); -gboolean flatpak_utils_ascii_string_to_unsigned (const gchar *str, - guint base, - guint64 min, - guint64 max, - guint64 *out_num, - GError **error); - - -#if !GLIB_CHECK_VERSION (2, 40, 0) -static inline gboolean -g_key_file_save_to_file (GKeyFile *key_file, - const gchar *filename, - GError **error) -{ - gchar *contents; - gboolean success; - gsize length; - - contents = g_key_file_to_data (key_file, &length, NULL); - success = g_file_set_contents (filename, contents, length, error); - g_free (contents); - - return success; -} -#endif - -#if !GLIB_CHECK_VERSION (2, 50, 0) -static inline gboolean -g_key_file_load_from_bytes (GKeyFile *key_file, - GBytes *bytes, - GKeyFileFlags flags, - GError **error) -{ - const guchar *data; - gsize size; - - data = g_bytes_get_data (bytes, &size); - return g_key_file_load_from_data (key_file, (const gchar *) data, size, flags, error); -} -#endif - -#if !GLIB_CHECK_VERSION (2, 54, 0) -static inline gboolean -g_ptr_array_find_with_equal_func (GPtrArray *haystack, - gconstpointer needle, - GEqualFunc equal_func, - guint *index_) -{ - guint i; - - g_return_val_if_fail (haystack != NULL, FALSE); - - if (equal_func == NULL) - equal_func = g_direct_equal; - - for (i = 0; i < haystack->len; i++) - { - if (equal_func (g_ptr_array_index (haystack, i), needle)) - { - if (index_ != NULL) - *index_ = i; - return TRUE; - } - } - - return FALSE; -} -#endif - -#if !GLIB_CHECK_VERSION (2, 56, 0) -GDateTime *flatpak_g_date_time_new_from_iso8601 (const gchar *text, - GTimeZone *default_tz); - -static inline GDateTime * -g_date_time_new_from_iso8601 (const gchar *text, GTimeZone *default_tz) -{ - return flatpak_g_date_time_new_from_iso8601 (text, default_tz); -} -#endif - - -#if !GLIB_CHECK_VERSION (2, 56, 0) -typedef void (* GClearHandleFunc) (guint handle_id); - -static inline void -g_clear_handle_id (guint *tag_ptr, - GClearHandleFunc clear_func) -{ - guint _handle_id; - - _handle_id = *tag_ptr; - if (_handle_id > 0) - { - *tag_ptr = 0; - clear_func (_handle_id); - } -} -#endif - - -#if !GLIB_CHECK_VERSION (2, 58, 0) -static inline gboolean -g_hash_table_steal_extended (GHashTable *hash_table, - gconstpointer lookup_key, - gpointer *stolen_key, - gpointer *stolen_value) -{ - if (g_hash_table_lookup_extended (hash_table, lookup_key, stolen_key, stolen_value)) - { - g_hash_table_steal (hash_table, lookup_key); - return TRUE; - } - else - return FALSE; -} -#endif - -#if !GLIB_CHECK_VERSION (2, 62, 0) -void g_ptr_array_extend (GPtrArray *array_to_extend, - GPtrArray *array, - GCopyFunc func, - gpointer user_data); -#endif - -#if !GLIB_CHECK_VERSION (2, 68, 0) -guint g_string_replace (GString *string, - const gchar *find, - const gchar *replace, - guint limit); -#endif - gboolean flatpak_g_ptr_array_contains_string (GPtrArray *array, const char *str); @@ -418,201 +162,16 @@ char *flatpak_keyfile_get_string_non_empty (GKeyFile *keyfile, const char *group, const char *key); -GKeyFile * flatpak_parse_repofile (const char *remote_name, - gboolean from_ref, - GKeyFile *keyfile, - GBytes **gpg_data_out, - GCancellable *cancellable, - GError **error); - -gboolean flatpak_repo_set_title (OstreeRepo *repo, - const char *title, - GError **error); -gboolean flatpak_repo_set_comment (OstreeRepo *repo, - const char *comment, - GError **error); -gboolean flatpak_repo_set_description (OstreeRepo *repo, - const char *description, - GError **error); -gboolean flatpak_repo_set_icon (OstreeRepo *repo, - const char *icon, - GError **error); -gboolean flatpak_repo_set_homepage (OstreeRepo *repo, - const char *homepage, - GError **error); -gboolean flatpak_repo_set_redirect_url (OstreeRepo *repo, - const char *redirect_url, - GError **error); -gboolean flatpak_repo_set_authenticator_name (OstreeRepo *repo, - const char *authenticator_name, - GError **error); -gboolean flatpak_repo_set_authenticator_install (OstreeRepo *repo, - gboolean authenticator_install, - GError **error); -gboolean flatpak_repo_set_authenticator_option (OstreeRepo *repo, - const char *key, - const char *value, - GError **error); -gboolean flatpak_repo_set_default_branch (OstreeRepo *repo, - const char *branch, - GError **error); -gboolean flatpak_repo_set_collection_id (OstreeRepo *repo, - const char *collection_id, - GError **error); -gboolean flatpak_repo_set_deploy_collection_id (OstreeRepo *repo, - gboolean deploy_collection_id, - GError **error); -gboolean flatpak_repo_set_deploy_sideload_collection_id (OstreeRepo *repo, - gboolean deploy_collection_id, - GError **error); -gboolean flatpak_repo_set_summary_history_length (OstreeRepo *repo, - guint length, - GError **error); -guint flatpak_repo_get_summary_history_length (OstreeRepo *repo); -gboolean flatpak_repo_set_gpg_keys (OstreeRepo *repo, - GBytes *bytes, - GError **error); - GBytes *flatpak_zlib_compress_bytes (GBytes *bytes, int level, GError **error); GBytes *flatpak_zlib_decompress_bytes (GBytes *bytes, GError **error); -GBytes *flatpak_summary_apply_diff (GBytes *old, - GBytes *diff, - GError **error); - -typedef enum { - FLATPAK_REPO_UPDATE_FLAG_NONE = 0, - FLATPAK_REPO_UPDATE_FLAG_DISABLE_INDEX = 1 << 0, -} FlatpakRepoUpdateFlags; - -gboolean flatpak_repo_update (OstreeRepo *repo, - FlatpakRepoUpdateFlags flags, - const char **gpg_key_ids, - const char *gpg_homedir, - GCancellable *cancellable, - GError **error); -gboolean flatpak_repo_collect_sizes (OstreeRepo *repo, - GFile *root, - guint64 *installed_size, - guint64 *download_size, - GCancellable *cancellable, - GError **error); -GVariant *flatpak_commit_get_extra_data_sources (GVariant *commitv, - GError **error); -GVariant *flatpak_repo_get_extra_data_sources (OstreeRepo *repo, - const char *rev, - GCancellable *cancellable, - GError **error); -void flatpak_repo_parse_extra_data_sources (GVariant *extra_data_sources, - int index, - const char **name, - guint64 *download_size, - guint64 *installed_size, - const guchar **sha256, - const char **uri); -gboolean flatpak_mtree_ensure_dir_metadata (OstreeRepo *repo, - OstreeMutableTree *mtree, - GCancellable *cancellable, - GError **error); -gboolean flatpak_mtree_create_symlink (OstreeRepo *repo, - OstreeMutableTree *parent, - const char *name, - const char *target, - GError **error); -gboolean flatpak_mtree_add_file_from_bytes (OstreeRepo *repo, - GBytes *bytes, - OstreeMutableTree *parent, - const char *filename, - GCancellable *cancellable, - GError **error); -gboolean flatpak_mtree_create_dir (OstreeRepo *repo, - OstreeMutableTree *parent, - const char *name, - OstreeMutableTree **dir_out, - GError **error); - -GVariant *flatpak_bundle_load (GFile *file, - char **commit, - FlatpakDecomposed **ref, - char **origin, - char **runtime_repo, - char **app_metadata, - guint64 *installed_size, - GBytes **gpg_keys, - char **collection_id, - GError **error); - -gboolean flatpak_pull_from_bundle (OstreeRepo *repo, - GFile *file, - const char *remote, - const char *ref, - gboolean require_gpg_signature, - GCancellable *cancellable, - GError **error); - -typedef void (*FlatpakOciPullProgress) (guint64 total_size, - guint64 pulled_size, - guint32 n_layers, - guint32 pulled_layers, - gpointer data); - -char * flatpak_pull_from_oci (OstreeRepo *repo, - FlatpakOciRegistry *registry, - const char *oci_repository, - const char *digest, - const char *delta_url, - FlatpakOciManifest *manifest, - FlatpakOciImage *image_config, - const char *remote, - const char *ref, - FlatpakPullFlags flags, - FlatpakOciPullProgress progress_cb, - gpointer progress_data, - GCancellable *cancellable, - GError **error); - -gboolean flatpak_mirror_image_from_oci (FlatpakOciRegistry *dst_registry, - FlatpakOciRegistry *registry, - const char *oci_repository, - const char *digest, - const char *remote, - const char *ref, - const char *delta_url, - OstreeRepo *repo, - FlatpakOciPullProgress progress_cb, - gpointer progress_data, - GCancellable *cancellable, - GError **error); - -typedef struct -{ - char *id; - char *installed_id; - char *commit; - FlatpakDecomposed *ref; - char *directory; - char *files_path; - char *subdir_suffix; - char *add_ld_path; - char **merge_dirs; - int priority; - gboolean needs_tmpfs; - gboolean is_unmaintained; -} FlatpakExtension; - -void flatpak_extension_free (FlatpakExtension *extension); - void flatpak_parse_extension_with_tag (const char *extension, char **name, char **tag); -GList *flatpak_list_extensions (GKeyFile *metakey, - const char *arch, - const char *branch); - gboolean flatpak_argument_needs_quoting (const char *arg); char * flatpak_quote_argv (const char *argv[], gssize len); @@ -720,111 +279,8 @@ flatpak_main_context_new_default (void) G_DEFINE_AUTOPTR_CLEANUP_FUNC (GMainContextPopDefault, flatpak_main_context_pop_default_destroy) -typedef OstreeRepo FlatpakRepoTransaction; - -static inline void -flatpak_repo_transaction_cleanup (void *p) -{ - OstreeRepo *repo = p; - - if (repo) - { - g_autoptr(GError) error = NULL; - if (!ostree_repo_abort_transaction (repo, NULL, &error)) - g_warning ("Error aborting ostree transaction: %s", error->message); - g_object_unref (repo); - } -} - -static inline FlatpakRepoTransaction * -flatpak_repo_transaction_start (OstreeRepo *repo, - GCancellable *cancellable, - GError **error) -{ - if (!ostree_repo_prepare_transaction (repo, NULL, cancellable, error)) - return NULL; - return (FlatpakRepoTransaction *) g_object_ref (repo); -} -G_DEFINE_AUTOPTR_CLEANUP_FUNC (FlatpakRepoTransaction, flatpak_repo_transaction_cleanup) - #define AUTOLOCK(name) G_GNUC_UNUSED __attribute__((cleanup (flatpak_auto_unlock_helper))) GMutex * G_PASTE (auto_unlock, __LINE__) = flatpak_auto_lock_helper (&G_LOCK_NAME (name)) -#if !JSON_CHECK_VERSION (1, 1, 2) -G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonArray, json_array_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonBuilder, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonGenerator, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonNode, json_node_free) -G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonObject, json_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonParser, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonPath, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC (JsonReader, g_object_unref) -#endif - -#if !GLIB_CHECK_VERSION (2, 43, 4) -G_DEFINE_AUTOPTR_CLEANUP_FUNC (GUnixFDList, g_object_unref) -#endif - -/* This uses a weird Auto prefix to avoid conflicts with later added autogenerated autoptr support, per: - * https://git.gnome.org/browse/glib/commit/?id=1c6cd5f0a3104aa9b62c7f1d3086181f63e71b59 - */ -typedef FlatpakSessionHelper AutoFlatpakSessionHelper; -G_DEFINE_AUTOPTR_CLEANUP_FUNC (AutoFlatpakSessionHelper, g_object_unref) -typedef XdpDbusDocuments AutoXdpDbusDocuments; -G_DEFINE_AUTOPTR_CLEANUP_FUNC (AutoXdpDbusDocuments, g_object_unref) - -typedef struct FlatpakXml FlatpakXml; - -struct FlatpakXml -{ - gchar *element_name; /* NULL == text */ - char **attribute_names; - char **attribute_values; - char *text; - FlatpakXml *parent; - FlatpakXml *first_child; - FlatpakXml *last_child; - FlatpakXml *next_sibling; -}; - -FlatpakXml *flatpak_xml_new (const gchar *element_name); -FlatpakXml *flatpak_xml_new_text (const gchar *text); -void flatpak_xml_add (FlatpakXml *parent, - FlatpakXml *node); -void flatpak_xml_free (FlatpakXml *node); -FlatpakXml *flatpak_xml_parse (GInputStream * in, - gboolean compressed, - GCancellable *cancellable, - GError **error); -void flatpak_xml_to_string (FlatpakXml *node, - GString *res); -FlatpakXml *flatpak_xml_unlink (FlatpakXml *node, - FlatpakXml *prev_sibling); -FlatpakXml *flatpak_xml_find (FlatpakXml *node, - const char *type, - FlatpakXml **prev_child_out); - -G_DEFINE_AUTOPTR_CLEANUP_FUNC (FlatpakXml, flatpak_xml_free); - -FlatpakXml *flatpak_appstream_xml_new (void); -gboolean flatpak_appstream_xml_migrate (FlatpakXml *source, - FlatpakXml *dest, - const char *ref, - const char *id, - GKeyFile *metadata); -gboolean flatpak_appstream_xml_root_to_data (FlatpakXml *appstream_root, - GBytes **uncompressed, - GBytes **compressed, - GError **error); -gboolean flatpak_repo_generate_appstream (OstreeRepo *repo, - const char **gpg_key_ids, - const char *gpg_homedir, - guint64 timestamp, - GCancellable *cancellable, - GError **error); -void flatpak_appstream_xml_filter (FlatpakXml *appstream, - GRegex *allow_refs, - GRegex *deny_refs); - char * flatpak_filter_glob_to_regexp (const char *glob, gboolean runtime_only, GError **error); gboolean flatpak_parse_filters (const char *data, GRegex **allow_refs_out, @@ -844,54 +300,6 @@ gboolean flatpak_allocate_tmpdir (int tmpdir_dfd, GCancellable *cancellable, GError **error); -gboolean flatpak_allow_fuzzy_matching (const char *term); - -char * flatpak_prompt (gboolean allow_empty, - const char *prompt, - ...) G_GNUC_PRINTF (2, 3); - -char * flatpak_password_prompt (const char *prompt, - ...) G_GNUC_PRINTF (1, 2); - -gboolean flatpak_yes_no_prompt (gboolean default_yes, - const char *prompt, - ...) G_GNUC_PRINTF (2, 3); - -long flatpak_number_prompt (gboolean default_yes, - int min, - int max, - const char *prompt, - ...) G_GNUC_PRINTF (4, 5); -int *flatpak_numbers_prompt (gboolean default_yes, - int min, - int max, - const char *prompt, - ...) G_GNUC_PRINTF (4, 5); -int *flatpak_parse_numbers (const char *buf, - int min, - int max); - -void flatpak_format_choices (const char **choices, - const char *prompt, - ...) G_GNUC_PRINTF (2, 3); - - -static inline void -flatpak_ostree_progress_finish (OstreeAsyncProgress *progress) -{ - if (progress != NULL) - { - ostree_async_progress_finish (progress); - g_object_unref (progress); - } -} - -typedef OstreeAsyncProgress OstreeAsyncProgressFinish; -G_DEFINE_AUTOPTR_CLEANUP_FUNC (OstreeAsyncProgressFinish, flatpak_ostree_progress_finish); - - -void flatpak_log_dir_access (FlatpakDir *dir); - gboolean flatpak_check_required_version (const char *ref, GKeyFile *metakey, GError **error); @@ -905,21 +313,16 @@ char * flatpak_dconf_path_for_app_id (const char *app_id); gboolean flatpak_dconf_path_is_similar (const char *path1, const char *path2); -gboolean flatpak_repo_resolve_rev (OstreeRepo *repo, - const char *collection_id, /* nullable */ - const char *remote_name, /* nullable */ - const char *ref_name, - gboolean allow_noent, - char **out_rev, - GCancellable *cancellable, - GError **error); - static inline void null_safe_g_ptr_array_unref (gpointer data) { g_clear_pointer (&data, g_ptr_array_unref); } +GStrv flatpak_parse_env_block (const char *data, + gsize length, + GError **error); + int flatpak_envp_cmp (const void *p1, const void *p2); @@ -936,14 +339,15 @@ typedef enum { char * flatpak_escape_string (const char *s, FlatpakEscapeFlags flags); -void flatpak_print_escaped_string (const char *s, - FlatpakEscapeFlags flags); gboolean flatpak_validate_path_characters (const char *path, GError **error); gboolean running_under_sudo (void); +void flatpak_set_debugging (gboolean debugging); +gboolean flatpak_is_debugging (void); + #define FLATPAK_MESSAGE_ID "c7b39b1e006b464599465e105b361485" #endif /* __FLATPAK_UTILS_H__ */ diff --git a/common/flatpak-utils.c b/common/flatpak-utils.c index f8ac758..99ccd51 100644 --- a/common/flatpak-utils.c +++ b/common/flatpak-utils.c @@ -41,16 +41,10 @@ #include #include -#include -#include "flatpak-dir-private.h" #include "flatpak-error.h" -#include "flatpak-oci-registry-private.h" -#include "flatpak-progress-private.h" -#include "flatpak-run-private.h" #include "flatpak-utils-base-private.h" #include "flatpak-utils-private.h" -#include "flatpak-variant-impl-private.h" #include "libglnx.h" #include "valgrind-private.h" @@ -83,17 +77,6 @@ static const GDBusErrorEntry flatpak_error_entries[] = { {FLATPAK_ERROR_NOT_AUTHORIZED, "org.freedesktop.Flatpak.Error.NotAuthorized"}, /* Since: 1.7.3 */ }; -typedef struct archive FlatpakAutoArchiveRead; -G_DEFINE_AUTOPTR_CLEANUP_FUNC (FlatpakAutoArchiveRead, archive_read_free) - -static void -propagate_libarchive_error (GError **error, - struct archive *a) -{ - g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED, - "%s", archive_error_string (a)); -} - GQuark flatpak_error_quark (void) { @@ -120,85 +103,6 @@ flatpak_fail_error (GError **error, FlatpakError code, const char *fmt, ...) return FALSE; } -void -flatpak_debug2 (const char *format, ...) -{ - va_list var_args; - - va_start (var_args, format); - g_logv (G_LOG_DOMAIN "2", - G_LOG_LEVEL_DEBUG, - format, var_args); - va_end (var_args); -} - -gboolean -flatpak_write_update_checksum (GOutputStream *out, - gconstpointer data, - gsize len, - gsize *out_bytes_written, - GChecksum *checksum, - GCancellable *cancellable, - GError **error) -{ - if (out) - { - if (!g_output_stream_write_all (out, data, len, out_bytes_written, - cancellable, error)) - return FALSE; - } - else if (out_bytes_written) - { - *out_bytes_written = len; - } - - if (checksum) - g_checksum_update (checksum, data, len); - - return TRUE; -} - -gboolean -flatpak_splice_update_checksum (GOutputStream *out, - GInputStream *in, - GChecksum *checksum, - FlatpakLoadUriProgress progress, - gpointer progress_data, - GCancellable *cancellable, - GError **error) -{ - gsize bytes_read, bytes_written; - char buf[32 * 1024]; - guint64 downloaded_bytes = 0; - gint64 progress_start; - - progress_start = g_get_monotonic_time (); - do - { - if (!g_input_stream_read_all (in, buf, sizeof buf, &bytes_read, cancellable, error)) - return FALSE; - - if (!flatpak_write_update_checksum (out, buf, bytes_read, &bytes_written, checksum, - cancellable, error)) - return FALSE; - - downloaded_bytes += bytes_read; - - if (progress && - g_get_monotonic_time () - progress_start > 5 * 1000000) - { - progress (downloaded_bytes, progress_data); - progress_start = g_get_monotonic_time (); - } - } - while (bytes_read > 0); - - if (progress) - progress (downloaded_bytes, progress_data); - - return TRUE; -} - GBytes * flatpak_zlib_compress_bytes (GBytes *bytes, int level, @@ -400,7 +304,7 @@ static const char * flatpak_get_kernel_arch (void) { static struct utsname buf; - static char *arch = NULL; + static const char *arch = NULL; char *m; if (arch != NULL) @@ -504,7 +408,7 @@ static struct { "aarch64", "arm" }, }; -static const char * +const char * flatpak_get_compat_arch (const char *kernel_arch) { int i; @@ -628,7 +532,7 @@ load_kernel_module_list (void) if (!g_file_get_contents ("/proc/modules", &modules_data, NULL, &error)) { - g_debug ("Failed to read /proc/modules: %s", error->message); + g_info ("Failed to read /proc/modules: %s", error->message); return modules; } @@ -700,47 +604,6 @@ flatpak_get_gtk_theme (void) return (const char *) gtk_theme; } -static int fancy_output = -1; - -void -flatpak_disable_fancy_output (void) -{ - fancy_output = FALSE; -} - -void -flatpak_enable_fancy_output (void) -{ - fancy_output = TRUE; -} - -gboolean -flatpak_fancy_output (void) -{ - static gsize fancy_output_once = 0; - enum { - PLAIN_OUTPUT = 1, - FANCY_OUTPUT = 2 - }; - - if (fancy_output != -1) - return fancy_output; - - if (g_once_init_enter (&fancy_output_once)) - { - if (g_strcmp0 (g_getenv ("FLATPAK_FANCY_OUTPUT"), "0") == 0) - g_once_init_leave (&fancy_output_once, PLAIN_OUTPUT); - else if (getenv ("G_MESSAGES_DEBUG")) - g_once_init_leave (&fancy_output_once, PLAIN_OUTPUT); - else if (!isatty (STDOUT_FILENO)) - g_once_init_leave (&fancy_output_once, PLAIN_OUTPUT); - else - g_once_init_leave (&fancy_output_once, FANCY_OUTPUT); - } - - return fancy_output_once == FANCY_OUTPUT; -} - const char * flatpak_get_bwrap (void) { @@ -752,75 +615,18 @@ flatpak_get_bwrap (void) } gboolean -flatpak_get_allowed_exports (const char *source_path, - const char *app_id, - FlatpakContext *context, - char ***allowed_extensions_out, - char ***allowed_prefixes_out, - gboolean *require_exact_match_out) +flatpak_bwrap_is_unprivileged (void) { - g_autoptr(GPtrArray) allowed_extensions = g_ptr_array_new_with_free_func (g_free); - g_autoptr(GPtrArray) allowed_prefixes = g_ptr_array_new_with_free_func (g_free); - gboolean require_exact_match = FALSE; - - g_ptr_array_add (allowed_prefixes, g_strdup_printf ("%s.*", app_id)); - - if (strcmp (source_path, "share/applications") == 0) - { - g_ptr_array_add (allowed_extensions, g_strdup (".desktop")); - } - else if (flatpak_has_path_prefix (source_path, "share/icons")) - { - g_ptr_array_add (allowed_extensions, g_strdup (".svgz")); - g_ptr_array_add (allowed_extensions, g_strdup (".png")); - g_ptr_array_add (allowed_extensions, g_strdup (".svg")); - g_ptr_array_add (allowed_extensions, g_strdup (".ico")); - } - else if (strcmp (source_path, "share/dbus-1/services") == 0) - { - g_auto(GStrv) owned_dbus_names = flatpak_context_get_session_bus_policy_allowed_own_names (context); - - g_ptr_array_add (allowed_extensions, g_strdup (".service")); - - for (GStrv iter = owned_dbus_names; *iter != NULL; ++iter) - g_ptr_array_add (allowed_prefixes, g_strdup (*iter)); - - /* We need an exact match with no extra garbage, because the filename refers to busnames - * and we can *only* match exactly these */ - require_exact_match = TRUE; - } - else if (strcmp (source_path, "share/gnome-shell/search-providers") == 0) - { - g_ptr_array_add (allowed_extensions, g_strdup (".ini")); - } - else if (strcmp (source_path, "share/mime/packages") == 0) - { - g_ptr_array_add (allowed_extensions, g_strdup (".xml")); - } - else if (strcmp (source_path, "share/metainfo") == 0 || - strcmp (source_path, "share/appdata") == 0) - { - g_ptr_array_add (allowed_extensions, g_strdup (".xml")); - } - else - return FALSE; + g_autofree char *path = g_find_program_in_path (flatpak_get_bwrap ()); + struct stat st; - g_ptr_array_add (allowed_extensions, NULL); - g_ptr_array_add (allowed_prefixes, NULL); - - if (allowed_extensions_out) - *allowed_extensions_out = (char **) g_ptr_array_free (g_steal_pointer (&allowed_extensions), FALSE); - - if (allowed_prefixes_out) - *allowed_prefixes_out = (char **) g_ptr_array_free (g_steal_pointer (&allowed_prefixes), FALSE); - - if (require_exact_match_out) - *require_exact_match_out = require_exact_match; - - return TRUE; + /* Various features are supported only if bwrap exists and is not setuid */ + return + path != NULL && + stat (path, &st) == 0 && + (st.st_mode & S_ISUID) == 0; } - static char * line_get_word (char **line) { @@ -1052,297 +858,6 @@ flatpak_filters_allow_ref (GRegex *allow_refs, return FALSE; } -char ** -flatpak_list_deployed_refs (const char *type, - const char *name_prefix, - const char *arch, - const char *branch, - GCancellable *cancellable, - GError **error) -{ - gchar **ret = NULL; - g_autoptr(GPtrArray) names = NULL; - g_autoptr(GHashTable) hash = NULL; - g_autoptr(FlatpakDir) user_dir = NULL; - g_autoptr(GPtrArray) system_dirs = NULL; - int i; - - hash = g_hash_table_new_full ((GHashFunc)flatpak_decomposed_hash, (GEqualFunc)flatpak_decomposed_equal, (GDestroyNotify)flatpak_decomposed_unref, NULL); - - user_dir = flatpak_dir_get_user (); - system_dirs = flatpak_dir_get_system_list (cancellable, error); - if (system_dirs == NULL) - goto out; - - if (!flatpak_dir_collect_deployed_refs (user_dir, type, name_prefix, - arch, branch, hash, cancellable, - error)) - goto out; - - for (i = 0; i < system_dirs->len; i++) - { - FlatpakDir *system_dir = g_ptr_array_index (system_dirs, i); - if (!flatpak_dir_collect_deployed_refs (system_dir, type, name_prefix, - arch, branch, hash, cancellable, - error)) - goto out; - } - - names = g_ptr_array_new (); - - GLNX_HASH_TABLE_FOREACH (hash, FlatpakDecomposed *, ref) - { - g_ptr_array_add (names, flatpak_decomposed_dup_id (ref)); - } - - g_ptr_array_sort (names, flatpak_strcmp0_ptr); - g_ptr_array_add (names, NULL); - - ret = (char **) g_ptr_array_free (names, FALSE); - names = NULL; - -out: - return ret; -} - -char ** -flatpak_list_unmaintained_refs (const char *name_prefix, - const char *arch, - const char *branch, - GCancellable *cancellable, - GError **error) -{ - gchar **ret = NULL; - g_autoptr(GPtrArray) names = NULL; - g_autoptr(GHashTable) hash = NULL; - g_autoptr(FlatpakDir) user_dir = NULL; - const char *key; - GHashTableIter iter; - g_autoptr(GPtrArray) system_dirs = NULL; - int i; - - hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); - - user_dir = flatpak_dir_get_user (); - - if (!flatpak_dir_collect_unmaintained_refs (user_dir, name_prefix, - arch, branch, hash, cancellable, - error)) - return NULL; - - system_dirs = flatpak_dir_get_system_list (cancellable, error); - if (system_dirs == NULL) - return NULL; - - for (i = 0; i < system_dirs->len; i++) - { - FlatpakDir *system_dir = g_ptr_array_index (system_dirs, i); - - if (!flatpak_dir_collect_unmaintained_refs (system_dir, name_prefix, - arch, branch, hash, cancellable, - error)) - return NULL; - } - - names = g_ptr_array_new (); - g_hash_table_iter_init (&iter, hash); - while (g_hash_table_iter_next (&iter, (gpointer *) &key, NULL)) - g_ptr_array_add (names, g_strdup (key)); - - g_ptr_array_sort (names, flatpak_strcmp0_ptr); - g_ptr_array_add (names, NULL); - - ret = (char **) g_ptr_array_free (names, FALSE); - names = NULL; - - return ret; -} - -GFile * -flatpak_find_deploy_dir_for_ref (FlatpakDecomposed *ref, - FlatpakDir **dir_out, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(FlatpakDir) user_dir = NULL; - g_autoptr(GPtrArray) system_dirs = NULL; - FlatpakDir *dir = NULL; - g_autoptr(GFile) deploy = NULL; - - user_dir = flatpak_dir_get_user (); - system_dirs = flatpak_dir_get_system_list (cancellable, error); - if (system_dirs == NULL) - return NULL; - - dir = user_dir; - deploy = flatpak_dir_get_if_deployed (dir, ref, NULL, cancellable); - if (deploy == NULL) - { - int i; - for (i = 0; deploy == NULL && i < system_dirs->len; i++) - { - dir = g_ptr_array_index (system_dirs, i); - deploy = flatpak_dir_get_if_deployed (dir, ref, NULL, cancellable); - if (deploy != NULL) - break; - } - } - - if (deploy == NULL) - { - flatpak_fail_error (error, FLATPAK_ERROR_NOT_INSTALLED, _("%s not installed"), flatpak_decomposed_get_ref (ref)); - return NULL; - } - - if (dir_out) - *dir_out = g_object_ref (dir); - return g_steal_pointer (&deploy); -} - -GFile * -flatpak_find_files_dir_for_ref (FlatpakDecomposed *ref, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GFile) deploy = NULL; - - deploy = flatpak_find_deploy_dir_for_ref (ref, NULL, cancellable, error); - if (deploy == NULL) - return NULL; - - return g_file_get_child (deploy, "files"); -} - -GFile * -flatpak_find_unmaintained_extension_dir_if_exists (const char *name, - const char *arch, - const char *branch, - GCancellable *cancellable) -{ - g_autoptr(FlatpakDir) user_dir = NULL; - g_autoptr(GFile) extension_dir = NULL; - g_autoptr(GError) local_error = NULL; - - user_dir = flatpak_dir_get_user (); - - extension_dir = flatpak_dir_get_unmaintained_extension_dir_if_exists (user_dir, name, arch, branch, cancellable); - if (extension_dir == NULL) - { - g_autoptr(GPtrArray) system_dirs = NULL; - int i; - - system_dirs = flatpak_dir_get_system_list (cancellable, &local_error); - if (system_dirs == NULL) - { - g_warning ("Could not get the system installations: %s", local_error->message); - return NULL; - } - - for (i = 0; i < system_dirs->len; i++) - { - FlatpakDir *system_dir = g_ptr_array_index (system_dirs, i); - extension_dir = flatpak_dir_get_unmaintained_extension_dir_if_exists (system_dir, name, arch, branch, cancellable); - if (extension_dir != NULL) - break; - } - } - - if (extension_dir == NULL) - return NULL; - - return g_steal_pointer (&extension_dir); -} - -FlatpakDecomposed * -flatpak_find_current_ref (const char *app_id, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(FlatpakDecomposed) current_ref = NULL; - g_autoptr(FlatpakDir) user_dir = flatpak_dir_get_user (); - int i; - - current_ref = flatpak_dir_current_ref (user_dir, app_id, NULL); - if (current_ref == NULL) - { - g_autoptr(GPtrArray) system_dirs = NULL; - - system_dirs = flatpak_dir_get_system_list (cancellable, error); - if (system_dirs == NULL) - return FALSE; - - for (i = 0; i < system_dirs->len; i++) - { - FlatpakDir *dir = g_ptr_array_index (system_dirs, i); - current_ref = flatpak_dir_current_ref (dir, app_id, cancellable); - if (current_ref != NULL) - break; - } - } - - if (current_ref) - return g_steal_pointer (¤t_ref); - - flatpak_fail_error (error, FLATPAK_ERROR_NOT_INSTALLED, _("%s not installed"), app_id); - return NULL; -} - -FlatpakDeploy * -flatpak_find_deploy_for_ref_in (GPtrArray *dirs, - const char *ref_str, - const char *commit, - GCancellable *cancellable, - GError **error) -{ - FlatpakDeploy *deploy = NULL; - int i; - g_autoptr(GError) my_error = NULL; - - g_autoptr(FlatpakDecomposed) ref = flatpak_decomposed_new_from_ref (ref_str, error); - if (ref == NULL) - return NULL; - - for (i = 0; deploy == NULL && i < dirs->len; i++) - { - FlatpakDir *dir = g_ptr_array_index (dirs, i); - - flatpak_log_dir_access (dir); - g_clear_error (&my_error); - deploy = flatpak_dir_load_deployed (dir, ref, commit, cancellable, &my_error); - } - - if (deploy == NULL) - g_propagate_error (error, g_steal_pointer (&my_error)); - - return deploy; -} - -FlatpakDeploy * -flatpak_find_deploy_for_ref (const char *ref, - const char *commit, - FlatpakDir *opt_user_dir, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GPtrArray) dirs = NULL; - - dirs = flatpak_dir_get_system_list (cancellable, error); - if (dirs == NULL) - return NULL; - - /* If an custom dir was passed, use that instead of the user dir. - * This is used when running apply-extra-data where if the target - * is a custom installation location the regular user one may not - * have the (possibly just installed in this transaction) runtime. - */ - if (opt_user_dir) - g_ptr_array_insert (dirs, 0, g_object_ref (opt_user_dir)); - else - g_ptr_array_insert (dirs, 0, flatpak_dir_get_user ()); - - return flatpak_find_deploy_for_ref_in (dirs, ref, commit, cancellable, error); -} - static gboolean remove_dangling_symlinks (int parent_fd, const char *name, @@ -1965,7 +1480,7 @@ flatpak_buffer_to_sealed_memfd_or_tmpfile (GLnxTmpfile *tmpf, fcntl (memfd, F_ADD_SEALS, F_SEAL_SHRINK | F_SEAL_GROW | F_SEAL_WRITE | F_SEAL_SEAL) < 0) return glnx_throw_errno_prefix (error, "fcntl(F_ADD_SEALS)"); /* The other values can stay default */ - tmpf->fd = glnx_steal_fd (&memfd); + tmpf->fd = g_steal_fd (&memfd); tmpf->initialized = TRUE; } return TRUE; @@ -2071,6940 +1586,486 @@ flatpak_variant_save (GFile *dest, return TRUE; } -/* This special cases the ref lookup which by doing a - bsearch since the array is sorted */ +char * +flatpak_keyfile_get_string_non_empty (GKeyFile *keyfile, + const char *group, + const char *key) +{ + g_autofree char *value = NULL; + + value = g_key_file_get_string (keyfile, group, key, NULL); + if (value != NULL && *value == '\0') + g_clear_pointer (&value, g_free); + + return g_steal_pointer (&value); +} + gboolean -flatpak_var_ref_map_lookup_ref (VarRefMapRef ref_map, - const char *ref, - VarRefInfoRef *out_info) +flatpak_extension_matches_reason (const char *extension_id, + const char *reasons, + gboolean default_value) { - gsize imax, imin; - gsize imid; - gsize n; + const char *extension_basename; + g_auto(GStrv) reason_list = NULL; + size_t i; - g_return_val_if_fail (out_info != NULL, FALSE); + if (reasons == NULL || *reasons == 0) + return default_value; - n = var_ref_map_get_length (ref_map); - if (n == 0) + extension_basename = strrchr (extension_id, '.'); + if (extension_basename == NULL) return FALSE; + extension_basename += 1; - imax = n - 1; - imin = 0; - while (imax >= imin) - { - VarRefMapEntryRef entry; - const char *cur; - int cmp; - - imid = (imin + imax) / 2; + reason_list = g_strsplit (reasons, ";", -1); - entry = var_ref_map_get_at (ref_map, imid); - cur = var_ref_map_entry_get_ref (entry); + for (i = 0; reason_list[i]; ++i) + { + const char *reason = reason_list[i]; - cmp = strcmp (cur, ref); - if (cmp < 0) + if (strcmp (reason, "active-gl-driver") == 0) { - imin = imid + 1; + /* handled below */ + const char **gl_drivers = flatpak_get_gl_drivers (); + size_t j; + + for (j = 0; gl_drivers[j]; j++) + { + if (strcmp (gl_drivers[j], extension_basename) == 0) + return TRUE; + } } - else if (cmp > 0) + else if (strcmp (reason, "active-gtk-theme") == 0) { - if (imid == 0) - break; - imax = imid - 1; - } - else + const char *gtk_theme = flatpak_get_gtk_theme (); + if (strcmp (gtk_theme, extension_basename) == 0) + return TRUE; + } + else if (strcmp (reason, "have-intel-gpu") == 0) { - *out_info = var_ref_map_entry_get_info (entry); - return TRUE; + /* Used for Intel VAAPI driver extension */ + if (flatpak_get_have_intel_gpu ()) + return TRUE; } - } + else if (g_str_has_prefix (reason, "have-kernel-module-")) + { + const char *module_name = reason + strlen ("have-kernel-module-"); - return FALSE; -} + if (flatpak_get_have_kernel_module (module_name)) + return TRUE; + } + else if (g_str_has_prefix (reason, "on-xdg-desktop-")) + { + const char *desktop_name = reason + strlen ("on-xdg-desktop-"); + const char *current_desktop_var = g_getenv ("XDG_CURRENT_DESKTOP"); + g_auto(GStrv) current_desktop_names = NULL; + size_t j; -/* Find the list of refs which belong to the given @collection_id in @summary. - * If @collection_id is %NULL, the main refs list from the summary will be - * returned. If @collection_id doesn’t match any collection IDs in the summary - * file, %FALSE will be returned. */ -gboolean -flatpak_summary_find_ref_map (VarSummaryRef summary, - const char *collection_id, - VarRefMapRef *refs_out) -{ - VarMetadataRef metadata = var_summary_get_metadata (summary); - const char *summary_collection_id; + if (!current_desktop_var) + continue; - summary_collection_id = var_metadata_lookup_string (metadata, "ostree.summary.collection-id", NULL); + current_desktop_names = g_strsplit (current_desktop_var, ":", -1); - if (collection_id == NULL || g_strcmp0 (collection_id, summary_collection_id) == 0) - { - if (refs_out) - *refs_out = var_summary_get_ref_map (summary); - return TRUE; - } - else if (collection_id != NULL) - { - VarVariantRef collection_map_v; - if (var_metadata_lookup (metadata, "ostree.summary.collection-map", NULL, &collection_map_v)) - { - VarCollectionMapRef collection_map = var_collection_map_from_variant (collection_map_v); - return var_collection_map_lookup (collection_map, collection_id, NULL, refs_out); + for (j = 0; current_desktop_names[j]; ++j) + { + if (g_ascii_strcasecmp (desktop_name, current_desktop_names[j]) == 0) + return TRUE; + } } } return FALSE; } -/* This matches all refs from @collection_id that have ref, followed by '.' as prefix */ -GPtrArray * -flatpak_summary_match_subrefs (GVariant *summary_v, - const char *collection_id, - FlatpakDecomposed *ref) +void +flatpak_parse_extension_with_tag (const char *extension, + char **name, + char **tag) { - GPtrArray *res = g_ptr_array_new_with_free_func ((GDestroyNotify)flatpak_decomposed_unref); - gsize n, i; - g_autofree char *parts_prefix = NULL; - g_autofree char *ref_prefix = NULL; - g_autofree char *ref_suffix = NULL; - VarSummaryRef summary; - VarRefMapRef ref_map; - - summary = var_summary_from_gvariant (summary_v); - - /* Work out which refs list to use, based on the @collection_id. */ - if (flatpak_summary_find_ref_map (summary, collection_id, &ref_map)) - { - /* Match against the refs. */ - g_autofree char *id = flatpak_decomposed_dup_id (ref); - g_autofree char *arch = flatpak_decomposed_dup_arch (ref); - g_autofree char *branch = flatpak_decomposed_dup_branch (ref); - parts_prefix = g_strconcat (id, ".", NULL); - - ref_prefix = g_strconcat (flatpak_decomposed_get_kind_str (ref), "/", NULL); - ref_suffix = g_strconcat ("/", arch, "/", branch, NULL); - - n = var_ref_map_get_length (ref_map); - for (i = 0; i < n; i++) - { - VarRefMapEntryRef entry = var_ref_map_get_at (ref_map, i); - const char *cur; - const char *id_start; - const char *id_suffix; - const char *id_end; - - cur = var_ref_map_entry_get_ref (entry); - - /* Must match type */ - if (!g_str_has_prefix (cur, ref_prefix)) - continue; - - /* Must match arch & branch */ - if (!g_str_has_suffix (cur, ref_suffix)) - continue; - - id_start = strchr (cur, '/'); - if (id_start == NULL) - continue; - id_start += 1; - - id_end = strchr (id_start, '/'); - if (id_end == NULL) - continue; + const char *tag_chr = strchr (extension, '@'); - /* But only prefix of id */ - if (!g_str_has_prefix (id_start, parts_prefix)) - continue; + if (tag_chr) + { + if (name != NULL) + *name = g_strndup (extension, tag_chr - extension); - /* And no dots (we want to install prefix.$ID, but not prefix.$ID.Sources) */ - id_suffix = id_start + strlen (parts_prefix); - if (memchr (id_suffix, '.', id_end - id_suffix) != NULL) - continue; + /* Everything after the @ */ + if (tag != NULL) + *tag = g_strdup (tag_chr + 1); - FlatpakDecomposed *d = flatpak_decomposed_new_from_ref (cur, NULL); - if (d) - g_ptr_array_add (res, d); - } + return; } - return g_steal_pointer (&res); + if (name != NULL) + *name = g_strdup (extension); + + if (tag != NULL) + *tag = NULL; } +/* This allocates and locks a subdir of the tmp dir, using an existing + * one with the same prefix if it is not in use already. */ gboolean -flatpak_summary_lookup_ref (GVariant *summary_v, - const char *collection_id, - const char *ref, - char **out_checksum, - VarRefInfoRef *out_info) +flatpak_allocate_tmpdir (int tmpdir_dfd, + const char *tmpdir_relpath, + const char *tmpdir_prefix, + char **tmpdir_name_out, + int *tmpdir_fd_out, + GLnxLockFile *file_lock_out, + gboolean *reusing_dir_out, + GCancellable *cancellable, + GError **error) { - VarSummaryRef summary; - VarRefMapRef ref_map; - VarRefInfoRef info; - const guchar *checksum_bytes; - gsize checksum_bytes_len; - - summary = var_summary_from_gvariant (summary_v); - - /* Work out which refs list to use, based on the @collection_id. */ - if (!flatpak_summary_find_ref_map (summary, collection_id, &ref_map)) - return FALSE; - - if (!flatpak_var_ref_map_lookup_ref (ref_map, ref, &info)) - return FALSE; + gboolean reusing_dir = FALSE; + g_autofree char *tmpdir_name = NULL; + glnx_autofd int tmpdir_fd = -1; + g_auto(GLnxDirFdIterator) dfd_iter = { 0, }; - checksum_bytes = var_ref_info_peek_checksum (info, &checksum_bytes_len); - if (G_UNLIKELY (checksum_bytes_len != OSTREE_SHA256_DIGEST_LEN)) + /* Look for existing tmpdir (with same prefix) to reuse */ + if (!glnx_dirfd_iterator_init_at (tmpdir_dfd, tmpdir_relpath ? tmpdir_relpath : ".", FALSE, &dfd_iter, error)) return FALSE; - if (out_checksum) - *out_checksum = ostree_checksum_from_bytes (checksum_bytes); - - if (out_info) - *out_info = info; + while (tmpdir_name == NULL) + { + struct dirent *dent; + glnx_autofd int existing_tmpdir_fd = -1; + g_autoptr(GError) local_error = NULL; + g_autofree char *lock_name = NULL; - return TRUE; -} + if (!glnx_dirfd_iterator_next_dent (&dfd_iter, &dent, cancellable, error)) + return FALSE; -char * -flatpak_keyfile_get_string_non_empty (GKeyFile *keyfile, - const char *group, - const char *key) -{ - g_autofree char *value = NULL; + if (dent == NULL) + break; - value = g_key_file_get_string (keyfile, group, key, NULL); - if (value != NULL && *value == '\0') - g_clear_pointer (&value, g_free); + if (!g_str_has_prefix (dent->d_name, tmpdir_prefix)) + continue; - return g_steal_pointer (&value); -} + /* Quickly skip non-dirs, if unknown we ignore ENOTDIR when opening instead */ + if (dent->d_type != DT_UNKNOWN && + dent->d_type != DT_DIR) + continue; -GKeyFile * -flatpak_parse_repofile (const char *remote_name, - gboolean from_ref, - GKeyFile *keyfile, - GBytes **gpg_data_out, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GBytes) gpg_data = NULL; - g_autofree char *uri = NULL; - g_autofree char *title = NULL; - g_autofree char *gpg_key = NULL; - g_autofree char *collection_id = NULL; - g_autofree char *default_branch = NULL; - g_autofree char *comment = NULL; - g_autofree char *description = NULL; - g_autofree char *icon = NULL; - g_autofree char *homepage = NULL; - g_autofree char *filter = NULL; - g_autofree char *subset = NULL; - g_autofree char *authenticator_name = NULL; - gboolean nodeps; - const char *source_group; - g_autofree char *version = NULL; - - if (from_ref) - source_group = FLATPAK_REF_GROUP; - else - source_group = FLATPAK_REPO_GROUP; + if (!glnx_opendirat (dfd_iter.fd, dent->d_name, FALSE, + &existing_tmpdir_fd, &local_error)) + { + if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_DIRECTORY)) + { + continue; + } + else + { + g_propagate_error (error, g_steal_pointer (&local_error)); + return FALSE; + } + } - GKeyFile *config = g_key_file_new (); - g_autofree char *group = g_strdup_printf ("remote \"%s\"", remote_name); + lock_name = g_strconcat (dent->d_name, "-lock", NULL); - if (!g_key_file_has_group (keyfile, source_group)) - { - flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Invalid %s: Missing group ‘%s’"), - from_ref ? ".flatpakref" : ".flatpakrepo", source_group); - return NULL; - } + /* We put the lock outside the dir, so we can hold the lock + * until the directory is fully removed */ + if (!glnx_make_lock_file (dfd_iter.fd, lock_name, LOCK_EX | LOCK_NB, + file_lock_out, &local_error)) + { + if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_WOULD_BLOCK)) + { + continue; + } + else + { + g_propagate_error (error, g_steal_pointer (&local_error)); + return FALSE; + } + } - uri = g_key_file_get_string (keyfile, source_group, - FLATPAK_REPO_URL_KEY, NULL); - if (uri == NULL) - { - flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Invalid %s: Missing key ‘%s’"), - from_ref ? ".flatpakref" : ".flatpakrepo", FLATPAK_REPO_URL_KEY); - return NULL; - } + /* Touch the reused directory so that we don't accidentally + * remove it due to being old when cleaning up the tmpdir + */ + (void) futimens (existing_tmpdir_fd, NULL); - version = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, - FLATPAK_REPO_VERSION_KEY, NULL); - if (version != NULL && strcmp (version, "1") != 0) - { - flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, - _("Invalid version %s, only 1 supported"), version); - return NULL; + /* We found an existing tmpdir which we managed to lock */ + tmpdir_name = g_strdup (dent->d_name); + tmpdir_fd = g_steal_fd (&existing_tmpdir_fd); + reusing_dir = TRUE; } - g_key_file_set_string (config, group, "url", uri); - - subset = g_key_file_get_locale_string (keyfile, source_group, - FLATPAK_REPO_SUBSET_KEY, NULL, NULL); - if (subset != NULL) - g_key_file_set_string (config, group, "xa.subset", subset); - - /* Don't use the title from flatpakref files; that's the title of the app */ - if (!from_ref) - title = g_key_file_get_locale_string (keyfile, FLATPAK_REPO_GROUP, - FLATPAK_REPO_TITLE_KEY, NULL, NULL); - if (title != NULL) - g_key_file_set_string (config, group, "xa.title", title); - - default_branch = g_key_file_get_locale_string (keyfile, source_group, - FLATPAK_REPO_DEFAULT_BRANCH_KEY, NULL, NULL); - if (default_branch != NULL) - g_key_file_set_string (config, group, "xa.default-branch", default_branch); - - nodeps = g_key_file_get_boolean (keyfile, source_group, - FLATPAK_REPO_NODEPS_KEY, NULL); - if (nodeps) - g_key_file_set_boolean (config, group, "xa.nodeps", TRUE); - - gpg_key = g_key_file_get_string (keyfile, source_group, - FLATPAK_REPO_GPGKEY_KEY, NULL); - if (gpg_key != NULL) + while (tmpdir_name == NULL) { - guchar *decoded; - gsize decoded_len; + g_autofree char *tmpdir_name_template = g_strconcat (tmpdir_prefix, "XXXXXX", NULL); + g_autoptr(GError) local_error = NULL; + g_autofree char *lock_name = NULL; + g_auto(GLnxTmpDir) new_tmpdir = { 0, }; + /* No existing tmpdir found, create a new */ - gpg_key = g_strstrip (gpg_key); - decoded = g_base64_decode (gpg_key, &decoded_len); - if (decoded_len < 10) /* Check some minimal size so we don't get crap */ - { - g_free (decoded); - flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Invalid gpg key")); - return NULL; - } + if (!glnx_mkdtempat (dfd_iter.fd, tmpdir_name_template, 0777, + &new_tmpdir, error)) + return FALSE; - gpg_data = g_bytes_new_take (decoded, decoded_len); - g_key_file_set_boolean (config, group, "gpg-verify", TRUE); - } - else - { - g_key_file_set_boolean (config, group, "gpg-verify", FALSE); - } + lock_name = g_strconcat (new_tmpdir.path, "-lock", NULL); - /* We have a hierarchy of keys for setting the collection ID, which all have - * the same effect. The only difference is which versions of Flatpak support - * them, and therefore what P2P implementation is enabled by them: - * DeploySideloadCollectionID: supported by Flatpak >= 1.12.8 (1.7.1 - * introduced sideload support but this key was added late) - * DeployCollectionID: supported by Flatpak >= 1.0.6 (but fully supported in - * >= 1.2.0) - * CollectionID: supported by Flatpak >= 0.9.8 - */ - collection_id = flatpak_keyfile_get_string_non_empty (keyfile, source_group, - FLATPAK_REPO_DEPLOY_SIDELOAD_COLLECTION_ID_KEY); - if (collection_id == NULL) - collection_id = flatpak_keyfile_get_string_non_empty (keyfile, source_group, - FLATPAK_REPO_DEPLOY_COLLECTION_ID_KEY); - if (collection_id == NULL) - collection_id = flatpak_keyfile_get_string_non_empty (keyfile, source_group, - FLATPAK_REPO_COLLECTION_ID_KEY); - if (collection_id != NULL) - { - if (gpg_key == NULL) + /* Note, at this point we can race with another process that picks up this + * new directory. If that happens we need to retry, making a new directory. */ + if (!glnx_make_lock_file (dfd_iter.fd, lock_name, LOCK_EX | LOCK_NB, + file_lock_out, &local_error)) { - flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Collection ID requires GPG key to be provided")); - return NULL; + if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_WOULD_BLOCK)) + { + glnx_tmpdir_unset (&new_tmpdir); /* Don't delete */ + continue; + } + else + { + g_propagate_error (error, g_steal_pointer (&local_error)); + return FALSE; + } } - g_key_file_set_string (config, group, "collection-id", collection_id); + tmpdir_name = g_strdup (new_tmpdir.path); + tmpdir_fd = dup (new_tmpdir.fd); + glnx_tmpdir_unset (&new_tmpdir); /* Don't delete */ } - g_key_file_set_boolean (config, group, "gpg-verify-summary", - (gpg_key != NULL)); - - authenticator_name = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, - FLATPAK_REPO_AUTHENTICATOR_NAME_KEY, NULL); - if (authenticator_name) - g_key_file_set_string (config, group, "xa.authenticator-name", authenticator_name); - - if (g_key_file_has_key (keyfile, FLATPAK_REPO_GROUP, FLATPAK_REPO_AUTHENTICATOR_INSTALL_KEY, NULL)) - { - gboolean authenticator_install = g_key_file_get_boolean (keyfile, FLATPAK_REPO_GROUP, - FLATPAK_REPO_AUTHENTICATOR_INSTALL_KEY, NULL); - g_key_file_set_boolean (config, group, "xa.authenticator-install", authenticator_install); - } + if (tmpdir_name_out) + *tmpdir_name_out = g_steal_pointer (&tmpdir_name); - comment = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, - FLATPAK_REPO_COMMENT_KEY, NULL); - if (comment) - g_key_file_set_string (config, group, "xa.comment", comment); - - description = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, - FLATPAK_REPO_DESCRIPTION_KEY, NULL); - if (description) - g_key_file_set_string (config, group, "xa.description", description); - - icon = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, - FLATPAK_REPO_ICON_KEY, NULL); - if (icon) - g_key_file_set_string (config, group, "xa.icon", icon); - - homepage = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, - FLATPAK_REPO_HOMEPAGE_KEY, NULL); - if (homepage) - g_key_file_set_string (config, group, "xa.homepage", homepage); - - filter = g_key_file_get_string (keyfile, FLATPAK_REPO_GROUP, - FLATPAK_REPO_FILTER_KEY, NULL); - if (filter) - g_key_file_set_string (config, group, "xa.filter", filter); - else - g_key_file_set_string (config, group, "xa.filter", ""); /* Default to override any pre-existing filters */ + if (tmpdir_fd_out) + *tmpdir_fd_out = g_steal_fd (&tmpdir_fd); - *gpg_data_out = g_steal_pointer (&gpg_data); + if (reusing_dir_out) + *reusing_dir_out = reusing_dir; - return g_steal_pointer (&config); + return TRUE; } -gboolean -flatpak_repo_set_title (OstreeRepo *repo, - const char *title, - GError **error) +static gint +string_length_compare_func (gconstpointer a, + gconstpointer b) { - g_autoptr(GKeyFile) config = NULL; - - config = ostree_repo_copy_config (repo); - - if (title) - g_key_file_set_string (config, "flatpak", "title", title); - else - g_key_file_remove_key (config, "flatpak", "title", NULL); - - if (!ostree_repo_write_config (repo, config, error)) - return FALSE; - - return TRUE; + return strlen (*(char * const *) a) - strlen (*(char * const *) b); } -gboolean -flatpak_repo_set_comment (OstreeRepo *repo, - const char *comment, - GError **error) +/* Sort a string array by decreasing length */ +char ** +flatpak_strv_sort_by_length (const char * const *strv) { - g_autoptr(GKeyFile) config = NULL; - - config = ostree_repo_copy_config (repo); - - if (comment) - g_key_file_set_string (config, "flatpak", "comment", comment); - else - g_key_file_remove_key (config, "flatpak", "comment", NULL); + GPtrArray *array; + int i; - if (!ostree_repo_write_config (repo, config, error)) - return FALSE; + if (strv == NULL) + return NULL; - return TRUE; -} + /* Combine both */ + array = g_ptr_array_new (); -gboolean -flatpak_repo_set_description (OstreeRepo *repo, - const char *description, - GError **error) -{ - g_autoptr(GKeyFile) config = NULL; + for (i = 0; strv[i] != NULL; i++) + g_ptr_array_add (array, g_strdup (strv[i])); - config = ostree_repo_copy_config (repo); + g_ptr_array_sort (array, string_length_compare_func); - if (description) - g_key_file_set_string (config, "flatpak", "description", description); - else - g_key_file_remove_key (config, "flatpak", "description", NULL); - - if (!ostree_repo_write_config (repo, config, error)) - return FALSE; - - return TRUE; -} - - -gboolean -flatpak_repo_set_icon (OstreeRepo *repo, - const char *icon, - GError **error) -{ - g_autoptr(GKeyFile) config = NULL; - - config = ostree_repo_copy_config (repo); - - if (icon) - g_key_file_set_string (config, "flatpak", "icon", icon); - else - g_key_file_remove_key (config, "flatpak", "icon", NULL); - - if (!ostree_repo_write_config (repo, config, error)) - return FALSE; - - return TRUE; -} - -gboolean -flatpak_repo_set_homepage (OstreeRepo *repo, - const char *homepage, - GError **error) -{ - g_autoptr(GKeyFile) config = NULL; - - config = ostree_repo_copy_config (repo); - - if (homepage) - g_key_file_set_string (config, "flatpak", "homepage", homepage); - else - g_key_file_remove_key (config, "flatpak", "homepage", NULL); - - if (!ostree_repo_write_config (repo, config, error)) - return FALSE; - - return TRUE; -} - -gboolean -flatpak_repo_set_redirect_url (OstreeRepo *repo, - const char *redirect_url, - GError **error) -{ - g_autoptr(GKeyFile) config = NULL; - - config = ostree_repo_copy_config (repo); - - if (redirect_url) - g_key_file_set_string (config, "flatpak", "redirect-url", redirect_url); - else - g_key_file_remove_key (config, "flatpak", "redirect-url", NULL); - - if (!ostree_repo_write_config (repo, config, error)) - return FALSE; - - return TRUE; -} - -gboolean -flatpak_repo_set_authenticator_name (OstreeRepo *repo, - const char *authenticator_name, - GError **error) -{ - g_autoptr(GKeyFile) config = NULL; - - config = ostree_repo_copy_config (repo); - - if (authenticator_name) - g_key_file_set_string (config, "flatpak", "authenticator-name", authenticator_name); - else - g_key_file_remove_key (config, "flatpak", "authenticator-name", NULL); - - if (!ostree_repo_write_config (repo, config, error)) - return FALSE; - - return TRUE; -} - -gboolean -flatpak_repo_set_authenticator_install (OstreeRepo *repo, - gboolean authenticator_install, - GError **error) -{ - g_autoptr(GKeyFile) config = NULL; - - config = ostree_repo_copy_config (repo); - - g_key_file_set_boolean (config, "flatpak", "authenticator-install", authenticator_install); - - if (!ostree_repo_write_config (repo, config, error)) - return FALSE; - - return TRUE; -} - -gboolean -flatpak_repo_set_authenticator_option (OstreeRepo *repo, - const char *key, - const char *value, - GError **error) -{ - g_autoptr(GKeyFile) config = NULL; - g_autofree char *full_key = g_strdup_printf ("authenticator-options.%s", key); - - config = ostree_repo_copy_config (repo); - - if (value) - g_key_file_set_string (config, "flatpak", full_key, value); - else - g_key_file_remove_key (config, "flatpak", full_key, NULL); - - if (!ostree_repo_write_config (repo, config, error)) - return FALSE; - - return TRUE; -} - -gboolean -flatpak_repo_set_deploy_collection_id (OstreeRepo *repo, - gboolean deploy_collection_id, - GError **error) -{ - g_autoptr(GKeyFile) config = NULL; - - config = ostree_repo_copy_config (repo); - g_key_file_set_boolean (config, "flatpak", "deploy-collection-id", deploy_collection_id); - return ostree_repo_write_config (repo, config, error); -} - -gboolean -flatpak_repo_set_deploy_sideload_collection_id (OstreeRepo *repo, - gboolean deploy_collection_id, - GError **error) -{ - g_autoptr(GKeyFile) config = NULL; - - config = ostree_repo_copy_config (repo); - g_key_file_set_boolean (config, "flatpak", "deploy-sideload-collection-id", deploy_collection_id); - return ostree_repo_write_config (repo, config, error); -} - -gboolean -flatpak_repo_set_gpg_keys (OstreeRepo *repo, - GBytes *bytes, - GError **error) -{ - g_autoptr(GKeyFile) config = NULL; - g_autofree char *value_base64 = NULL; - - config = ostree_repo_copy_config (repo); - - value_base64 = g_base64_encode (g_bytes_get_data (bytes, NULL), g_bytes_get_size (bytes)); - - g_key_file_set_string (config, "flatpak", "gpg-keys", value_base64); - - if (!ostree_repo_write_config (repo, config, error)) - return FALSE; - - return TRUE; -} - -gboolean -flatpak_repo_set_default_branch (OstreeRepo *repo, - const char *branch, - GError **error) -{ - g_autoptr(GKeyFile) config = NULL; - - config = ostree_repo_copy_config (repo); - - if (branch) - g_key_file_set_string (config, "flatpak", "default-branch", branch); - else - g_key_file_remove_key (config, "flatpak", "default-branch", NULL); - - if (!ostree_repo_write_config (repo, config, error)) - return FALSE; - - return TRUE; -} - -gboolean -flatpak_repo_set_collection_id (OstreeRepo *repo, - const char *collection_id, - GError **error) -{ - g_autoptr(GKeyFile) config = NULL; - - if (!ostree_repo_set_collection_id (repo, collection_id, error)) - return FALSE; - - config = ostree_repo_copy_config (repo); - if (!ostree_repo_write_config (repo, config, error)) - return FALSE; - - return TRUE; -} - -gboolean -flatpak_repo_set_summary_history_length (OstreeRepo *repo, - guint length, - GError **error) -{ - g_autoptr(GKeyFile) config = NULL; - - config = ostree_repo_copy_config (repo); - - if (length) - g_key_file_set_integer (config, "flatpak", "summary-history-length", length); - else - g_key_file_remove_key (config, "flatpak", "summary-history-length", NULL); - - if (!ostree_repo_write_config (repo, config, error)) - return FALSE; - - return TRUE; -} - -guint -flatpak_repo_get_summary_history_length (OstreeRepo *repo) -{ - GKeyFile *config = ostree_repo_get_config (repo); - int length; - - length = g_key_file_get_integer (config, "flatpak", "sumary-history-length", NULL); - - if (length <= 0) - return FLATPAK_SUMMARY_HISTORY_LENGTH_DEFAULT; - - return length; -} - -GVariant * -flatpak_commit_get_extra_data_sources (GVariant *commitv, - GError **error) -{ - g_autoptr(GVariant) commit_metadata = NULL; - g_autoptr(GVariant) extra_data_sources = NULL; - - commit_metadata = g_variant_get_child_value (commitv, 0); - extra_data_sources = g_variant_lookup_value (commit_metadata, - "xa.extra-data-sources", - G_VARIANT_TYPE ("a(ayttays)")); - - if (extra_data_sources == NULL) - { - g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND, - _("No extra data sources")); - return NULL; - } - - return g_steal_pointer (&extra_data_sources); -} - - -GVariant * -flatpak_repo_get_extra_data_sources (OstreeRepo *repo, - const char *rev, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GVariant) commitv = NULL; - - if (!ostree_repo_load_variant (repo, - OSTREE_OBJECT_TYPE_COMMIT, - rev, &commitv, error)) - return NULL; - - return flatpak_commit_get_extra_data_sources (commitv, error); -} - -void -flatpak_repo_parse_extra_data_sources (GVariant *extra_data_sources, - int index, - const char **name, - guint64 *download_size, - guint64 *installed_size, - const guchar **sha256, - const char **uri) -{ - g_autoptr(GVariant) sha256_v = NULL; - g_variant_get_child (extra_data_sources, index, "(^aytt@ay&s)", - name, - download_size, - installed_size, - &sha256_v, - uri); - - if (download_size) - *download_size = GUINT64_FROM_BE (*download_size); - - if (installed_size) - *installed_size = GUINT64_FROM_BE (*installed_size); - - if (sha256) - *sha256 = ostree_checksum_bytes_peek (sha256_v); -} - -#define OSTREE_GIO_FAST_QUERYINFO ("standard::name,standard::type,standard::size,standard::is-symlink,standard::symlink-target," \ - "unix::device,unix::inode,unix::mode,unix::uid,unix::gid,unix::rdev") - -static gboolean -_flatpak_repo_collect_sizes (OstreeRepo *repo, - GFile *file, - GFileInfo *file_info, - guint64 *installed_size, - guint64 *download_size, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GFileEnumerator) dir_enum = NULL; - GFileInfo *child_info_tmp; - g_autoptr(GError) temp_error = NULL; - - if (file_info != NULL && g_file_info_get_file_type (file_info) == G_FILE_TYPE_REGULAR) - { - const char *checksum = ostree_repo_file_get_checksum (OSTREE_REPO_FILE (file)); - guint64 obj_size; - guint64 file_size = g_file_info_get_size (file_info); - - if (installed_size) - *installed_size += ((file_size + 511) / 512) * 512; - - if (download_size) - { - g_autoptr(GInputStream) input = NULL; - GInputStream *base_input; - g_autoptr(GError) local_error = NULL; - - if (!ostree_repo_query_object_storage_size (repo, - OSTREE_OBJECT_TYPE_FILE, checksum, - &obj_size, cancellable, &local_error)) - { - int fd; - struct stat stbuf; - - /* Ostree does not look at the staging directory when querying storage - size, so may return a NOT_FOUND error here. We work around this - by loading the object and walking back until we find the original - fd which we can fstat(). */ - if (!g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND)) - return FALSE; - - if (!ostree_repo_load_file (repo, checksum, &input, NULL, NULL, NULL, error)) - return FALSE; - - base_input = input; - while (G_IS_FILTER_INPUT_STREAM (base_input)) - base_input = g_filter_input_stream_get_base_stream (G_FILTER_INPUT_STREAM (base_input)); - - if (!G_IS_UNIX_INPUT_STREAM (base_input)) - return flatpak_fail (error, "Unable to find size of commit %s, not an unix stream", checksum); - - fd = g_unix_input_stream_get_fd (G_UNIX_INPUT_STREAM (base_input)); - - if (fstat (fd, &stbuf) != 0) - return glnx_throw_errno_prefix (error, "Can't find commit size: "); - - obj_size = stbuf.st_size; - } - - *download_size += obj_size; - } - } - - if (file_info == NULL || g_file_info_get_file_type (file_info) == G_FILE_TYPE_DIRECTORY) - { - dir_enum = g_file_enumerate_children (file, OSTREE_GIO_FAST_QUERYINFO, - G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS, - cancellable, error); - if (!dir_enum) - return FALSE; - - - while ((child_info_tmp = g_file_enumerator_next_file (dir_enum, cancellable, &temp_error))) - { - g_autoptr(GFileInfo) child_info = child_info_tmp; - const char *name = g_file_info_get_name (child_info); - g_autoptr(GFile) child = g_file_get_child (file, name); - - if (!_flatpak_repo_collect_sizes (repo, child, child_info, installed_size, download_size, cancellable, error)) - return FALSE; - } - } - - return TRUE; -} - -gboolean -flatpak_repo_collect_sizes (OstreeRepo *repo, - GFile *root, - guint64 *installed_size, - guint64 *download_size, - GCancellable *cancellable, - GError **error) -{ - /* Initialize the sums */ - if (installed_size) - *installed_size = 0; - if (download_size) - *download_size = 0; - return _flatpak_repo_collect_sizes (repo, root, NULL, installed_size, download_size, cancellable, error); -} - - -static void -flatpak_repo_collect_extra_data_sizes (OstreeRepo *repo, - const char *rev, - guint64 *installed_size, - guint64 *download_size) -{ - g_autoptr(GVariant) extra_data_sources = NULL; - gsize n_extra_data; - int i; - - extra_data_sources = flatpak_repo_get_extra_data_sources (repo, rev, NULL, NULL); - if (extra_data_sources == NULL) - return; - - n_extra_data = g_variant_n_children (extra_data_sources); - if (n_extra_data == 0) - return; - - for (i = 0; i < n_extra_data; i++) - { - guint64 extra_download_size; - guint64 extra_installed_size; - - flatpak_repo_parse_extra_data_sources (extra_data_sources, i, - NULL, - &extra_download_size, - &extra_installed_size, - NULL, NULL); - if (installed_size) - *installed_size += extra_installed_size; - if (download_size) - *download_size += extra_download_size; - } -} - -/* Loads the old compat summary file from a local repo */ -GVariant * -flatpak_repo_load_summary (OstreeRepo *repo, - GError **error) -{ - glnx_autofd int fd = -1; - g_autoptr(GMappedFile) mfile = NULL; - g_autoptr(GBytes) bytes = NULL; - - fd = openat (ostree_repo_get_dfd (repo), "summary", O_RDONLY | O_CLOEXEC); - if (fd < 0) - { - glnx_set_error_from_errno (error); - return NULL; - } - - mfile = g_mapped_file_new_from_fd (fd, FALSE, error); - if (!mfile) - return NULL; - - bytes = g_mapped_file_get_bytes (mfile); - - return g_variant_ref_sink (g_variant_new_from_bytes (OSTREE_SUMMARY_GVARIANT_FORMAT, bytes, TRUE)); -} - -GVariant * -flatpak_repo_load_summary_index (OstreeRepo *repo, - GError **error) -{ - glnx_autofd int fd = -1; - g_autoptr(GMappedFile) mfile = NULL; - g_autoptr(GBytes) bytes = NULL; - - fd = openat (ostree_repo_get_dfd (repo), "summary.idx", O_RDONLY | O_CLOEXEC); - if (fd < 0) - { - glnx_set_error_from_errno (error); - return NULL; - } - - mfile = g_mapped_file_new_from_fd (fd, FALSE, error); - if (!mfile) - return NULL; - - bytes = g_mapped_file_get_bytes (mfile); - - return g_variant_ref_sink (g_variant_new_from_bytes (FLATPAK_SUMMARY_INDEX_GVARIANT_FORMAT, bytes, TRUE)); -} - -static gboolean -flatpak_repo_save_compat_summary (OstreeRepo *repo, - GVariant *summary, - time_t *out_old_sig_mtime, - GCancellable *cancellable, - GError **error) -{ - int repo_dfd = ostree_repo_get_dfd (repo); - struct stat stbuf; - time_t old_sig_mtime = 0; - GLnxFileReplaceFlags flags; - - flags = GLNX_FILE_REPLACE_INCREASING_MTIME; - if (ostree_repo_get_disable_fsync (repo)) - flags |= GLNX_FILE_REPLACE_NODATASYNC; - else - flags |= GLNX_FILE_REPLACE_DATASYNC_NEW; - - if (!glnx_file_replace_contents_at (repo_dfd, "summary", - g_variant_get_data (summary), - g_variant_get_size (summary), - flags, - cancellable, error)) - return FALSE; - - if (fstatat (repo_dfd, "summary.sig", &stbuf, AT_SYMLINK_NOFOLLOW) == 0) - old_sig_mtime = stbuf.st_mtime; - - if (unlinkat (repo_dfd, "summary.sig", 0) != 0 && - G_UNLIKELY (errno != ENOENT)) - { - glnx_set_error_from_errno (error); - return FALSE; - } - - *out_old_sig_mtime = old_sig_mtime; - return TRUE; -} - -static gboolean -flatpak_repo_save_summary_index (OstreeRepo *repo, - GVariant *index, - const char *index_digest, - GBytes *index_sig, - GCancellable *cancellable, - GError **error) -{ - int repo_dfd = ostree_repo_get_dfd (repo); - GLnxFileReplaceFlags flags; - - if (index == NULL) - { - if (unlinkat (repo_dfd, "summary.idx", 0) != 0 && - G_UNLIKELY (errno != ENOENT)) - { - glnx_set_error_from_errno (error); - return FALSE; - } - if (unlinkat (repo_dfd, "summary.idx.sig", 0) != 0 && - G_UNLIKELY (errno != ENOENT)) - { - glnx_set_error_from_errno (error); - return FALSE; - } - - return TRUE; - } - - flags = GLNX_FILE_REPLACE_INCREASING_MTIME; - if (ostree_repo_get_disable_fsync (repo)) - flags |= GLNX_FILE_REPLACE_NODATASYNC; - else - flags |= GLNX_FILE_REPLACE_DATASYNC_NEW; - - if (index_sig) - { - g_autofree char *path = g_strconcat ("summaries/", index_digest, ".idx.sig", NULL); - - if (!glnx_shutil_mkdir_p_at (repo_dfd, "summaries", - 0775, cancellable, error)) - return FALSE; - - if (!glnx_file_replace_contents_at (repo_dfd, path, - g_bytes_get_data (index_sig, NULL), - g_bytes_get_size (index_sig), - flags, - cancellable, error)) - return FALSE; - } - - if (!glnx_file_replace_contents_at (repo_dfd, "summary.idx", - g_variant_get_data (index), - g_variant_get_size (index), - flags, - cancellable, error)) - return FALSE; - - /* Update the non-indexed summary.idx.sig file that was introduced in 1.9.1 but - * was made unnecessary in 1.9.3. Lets keep it for a while until everyone updates - */ - if (index_sig) - { - if (!glnx_file_replace_contents_at (repo_dfd, "summary.idx.sig", - g_bytes_get_data (index_sig, NULL), - g_bytes_get_size (index_sig), - flags, - cancellable, error)) - return FALSE; - } - else - { - if (unlinkat (repo_dfd, "summary.idx.sig", 0) != 0 && - G_UNLIKELY (errno != ENOENT)) - { - glnx_set_error_from_errno (error); - return FALSE; - } - } - - return TRUE; -} - -GVariant * -flatpak_repo_load_digested_summary (OstreeRepo *repo, - const char *digest, - GError **error) -{ - glnx_autofd int fd = -1; - g_autoptr(GMappedFile) mfile = NULL; - g_autoptr(GBytes) bytes = NULL; - g_autoptr(GBytes) compressed_bytes = NULL; - g_autofree char *path = NULL; - g_autofree char *filename = NULL; - - filename = g_strconcat (digest, ".gz", NULL); - path = g_build_filename ("summaries", filename, NULL); - - fd = openat (ostree_repo_get_dfd (repo), path, O_RDONLY | O_CLOEXEC); - if (fd < 0) - { - glnx_set_error_from_errno (error); - return NULL; - } - - mfile = g_mapped_file_new_from_fd (fd, FALSE, error); - if (!mfile) - return NULL; - - compressed_bytes = g_mapped_file_get_bytes (mfile); - bytes = flatpak_zlib_decompress_bytes (compressed_bytes, error); - if (bytes == NULL) - return NULL; - - return g_variant_ref_sink (g_variant_new_from_bytes (OSTREE_SUMMARY_GVARIANT_FORMAT, bytes, TRUE)); -} - -static char * -flatpak_repo_save_digested_summary (OstreeRepo *repo, - const char *name, - GVariant *summary, - GCancellable *cancellable, - GError **error) -{ - int repo_dfd = ostree_repo_get_dfd (repo); - g_autofree char *digest = NULL; - g_autofree char *filename = NULL; - g_autofree char *path = NULL; - g_autoptr(GBytes) data = NULL; - g_autoptr(GBytes) compressed_data = NULL; - struct stat stbuf; - - if (!glnx_shutil_mkdir_p_at (repo_dfd, "summaries", - 0775, - cancellable, - error)) - return NULL; - - digest = g_compute_checksum_for_data (G_CHECKSUM_SHA256, - g_variant_get_data (summary), - g_variant_get_size (summary)); - filename = g_strconcat (digest, ".gz", NULL); - - path = g_build_filename ("summaries", filename, NULL); - - /* Check for pre-existing (non-truncated) copy and avoid re-writing it */ - if (fstatat (repo_dfd, path, &stbuf, 0) == 0 && - stbuf.st_size != 0) - { - g_debug ("Reusing digested summary at %s for %s", path, name); - return g_steal_pointer (&digest); - } - - data = g_variant_get_data_as_bytes (summary); - compressed_data = flatpak_zlib_compress_bytes (data, -1, error); - if (compressed_data == NULL) - return NULL; - - if (!glnx_file_replace_contents_at (repo_dfd, path, - g_bytes_get_data (compressed_data, NULL), - g_bytes_get_size (compressed_data), - ostree_repo_get_disable_fsync (repo) ? GLNX_FILE_REPLACE_NODATASYNC : GLNX_FILE_REPLACE_DATASYNC_NEW, - cancellable, error)) - return NULL; - - g_debug ("Wrote digested summary at %s for %s", path, name); - return g_steal_pointer (&digest); -} - -static gboolean -flatpak_repo_save_digested_summary_delta (OstreeRepo *repo, - const char *from_digest, - const char *to_digest, - GBytes *delta, - GCancellable *cancellable, - GError **error) -{ - int repo_dfd = ostree_repo_get_dfd (repo); - g_autofree char *path = NULL; - g_autofree char *filename = g_strconcat (from_digest, "-", to_digest, ".delta", NULL); - struct stat stbuf; - - if (!glnx_shutil_mkdir_p_at (repo_dfd, "summaries", - 0775, - cancellable, - error)) - return FALSE; - - path = g_build_filename ("summaries", filename, NULL); - - /* Check for pre-existing copy of same size and avoid re-writing it */ - if (fstatat (repo_dfd, path, &stbuf, 0) == 0 && - stbuf.st_size == g_bytes_get_size (delta)) - { - g_debug ("Reusing digested summary-diff for %s", filename); - return TRUE; - } - - if (!glnx_file_replace_contents_at (repo_dfd, path, - g_bytes_get_data (delta, NULL), - g_bytes_get_size (delta), - ostree_repo_get_disable_fsync (repo) ? GLNX_FILE_REPLACE_NODATASYNC : GLNX_FILE_REPLACE_DATASYNC_NEW, - cancellable, error)) - return FALSE; - - g_debug ("Wrote digested summary delta at %s", path); - return TRUE; -} - - -gboolean -flatpak_is_app_runtime_or_appstream_ref (const char *ref) -{ - return - g_str_has_prefix (ref, "appstream/") || - g_str_has_prefix (ref, "appstream2/") || - g_str_has_prefix (ref, "app/") || - g_str_has_prefix (ref, "runtime/"); -} - -typedef struct -{ - guint64 installed_size; - guint64 download_size; - char *metadata_contents; - GPtrArray *subsets; - GVariant *sparse_data; - gsize commit_size; - guint64 commit_timestamp; -} CommitData; - -static void -commit_data_free (gpointer data) -{ - CommitData *rev_data = data; - - if (rev_data->subsets) - g_ptr_array_unref (rev_data->subsets); - g_free (rev_data->metadata_contents); - if (rev_data->sparse_data) - g_variant_unref (rev_data->sparse_data); - g_free (rev_data); -} - -G_DEFINE_AUTOPTR_CLEANUP_FUNC (CommitData, commit_data_free); - -static GHashTable * -commit_data_cache_new (void) -{ - return g_hash_table_new_full (g_str_hash, g_str_equal, g_free, commit_data_free); -} - -static GHashTable * -populate_commit_data_cache (OstreeRepo *repo, - GVariant *index_v) -{ - - VarSummaryIndexRef index = var_summary_index_from_gvariant (index_v); - VarMetadataRef index_metadata = var_summary_index_get_metadata (index); - VarSummaryIndexSubsummariesRef subsummaries = var_summary_index_get_subsummaries (index); - gsize n_subsummaries = var_summary_index_subsummaries_get_length (subsummaries); - guint32 cache_version; - g_autoptr(GHashTable) commit_data_cache = commit_data_cache_new (); - - cache_version = GUINT32_FROM_LE (var_metadata_lookup_uint32 (index_metadata, "xa.cache-version", 0)); - if (cache_version < FLATPAK_XA_CACHE_VERSION) - { - /* Need to re-index to get all data */ - g_debug ("Old summary cache version %d, not using cache", cache_version); - return NULL; - } - - for (gsize i = 0; i < n_subsummaries; i++) - { - VarSummaryIndexSubsummariesEntryRef entry = var_summary_index_subsummaries_get_at (subsummaries, i); - const char *name = var_summary_index_subsummaries_entry_get_key (entry); - const char *s; - g_autofree char *subset = NULL; - VarSubsummaryRef subsummary = var_summary_index_subsummaries_entry_get_value (entry); - gsize checksum_bytes_len; - const guchar *checksum_bytes; - g_autofree char *digest = NULL; - g_autoptr(GVariant) summary_v = NULL; - VarSummaryRef summary; - VarRefMapRef ref_map; - gsize n_refs; - - checksum_bytes = var_subsummary_peek_checksum (subsummary, &checksum_bytes_len); - if (G_UNLIKELY (checksum_bytes_len != OSTREE_SHA256_DIGEST_LEN)) - { - g_debug ("Invalid checksum for digested summary, not using cache"); - return NULL; - } - digest = ostree_checksum_from_bytes (checksum_bytes); - - s = strrchr (name, '-'); - if (s != NULL) - subset = g_strndup (name, s - name); - else - subset = g_strdup (""); - - summary_v = flatpak_repo_load_digested_summary (repo, digest, NULL); - if (summary_v == NULL) - { - g_debug ("Failed to load digested summary %s, not using cache", digest); - return NULL; - } - - /* Note that all summaries refered to by the index is in new format */ - summary = var_summary_from_gvariant (summary_v); - ref_map = var_summary_get_ref_map (summary); - n_refs = var_ref_map_get_length (ref_map); - for (gsize j = 0; j < n_refs; j++) - { - VarRefMapEntryRef e = var_ref_map_get_at (ref_map, j); - const char *ref = var_ref_map_entry_get_ref (e); - VarRefInfoRef info = var_ref_map_entry_get_info (e); - VarMetadataRef commit_metadata = var_ref_info_get_metadata (info); - guint64 commit_size = var_ref_info_get_commit_size (info); - const guchar *commit_bytes; - gsize commit_bytes_len; - g_autofree char *rev = NULL; - CommitData *rev_data; - VarVariantRef xa_data_v; - VarCacheDataRef xa_data; - - if (!flatpak_is_app_runtime_or_appstream_ref (ref)) - continue; - - commit_bytes = var_ref_info_peek_checksum (info, &commit_bytes_len); - if (G_UNLIKELY (commit_bytes_len != OSTREE_SHA256_DIGEST_LEN)) - continue; - - if (!var_metadata_lookup (commit_metadata, "xa.data", NULL, &xa_data_v) || - !var_variant_is_type (xa_data_v, G_VARIANT_TYPE ("(tts)"))) - { - g_debug ("Missing xa.data for ref %s, not using cache", ref); - return NULL; - } - - xa_data = var_cache_data_from_variant (xa_data_v); - - rev = ostree_checksum_from_bytes (commit_bytes); - rev_data = g_hash_table_lookup (commit_data_cache, rev); - if (rev_data == NULL) - { - g_auto(GVariantBuilder) sparse_builder = FLATPAK_VARIANT_BUILDER_INITIALIZER; - g_variant_builder_init (&sparse_builder, G_VARIANT_TYPE_VARDICT); - gboolean has_sparse = FALSE; - - rev_data = g_new0 (CommitData, 1); - rev_data->installed_size = var_cache_data_get_installed_size (xa_data); - rev_data->download_size = var_cache_data_get_download_size (xa_data); - rev_data->metadata_contents = g_strdup (var_cache_data_get_metadata (xa_data)); - rev_data->commit_size = commit_size; - rev_data->commit_timestamp = GUINT64_FROM_BE (var_metadata_lookup_uint64 (commit_metadata, OSTREE_COMMIT_TIMESTAMP2, 0)); - - /* Get sparse data */ - gsize len = var_metadata_get_length (commit_metadata); - for (gsize k = 0; k < len; k++) - { - VarMetadataEntryRef m = var_metadata_get_at (commit_metadata, k); - const char *m_key = var_metadata_entry_get_key (m); - if (!g_str_has_prefix (m_key, "ot.") && - !g_str_has_prefix (m_key, "ostree.") && - strcmp (m_key, "xa.data") != 0) - { - VarVariantRef v = var_metadata_entry_get_value (m); - GVariant *vv = var_variant_dup_to_gvariant (v); - g_variant_builder_add (&sparse_builder, "{sv}", m_key, g_variant_get_child_value (vv, 0)); - has_sparse = TRUE; - } - } - - if (has_sparse) - rev_data->sparse_data = g_variant_ref_sink (g_variant_builder_end (&sparse_builder)); - - g_hash_table_insert (commit_data_cache, g_strdup (rev), (CommitData *)rev_data); - } - - if (*subset != 0) - { - if (rev_data->subsets == NULL) - rev_data->subsets = g_ptr_array_new_with_free_func (g_free); - - if (!flatpak_g_ptr_array_contains_string (rev_data->subsets, subset)) - g_ptr_array_add (rev_data->subsets, g_strdup (subset)); - } - } - } - - return g_steal_pointer (&commit_data_cache); -} - -static CommitData * -read_commit_data (OstreeRepo *repo, - const char *ref, - const char *rev, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GFile) root = NULL; - g_autoptr(GFile) metadata = NULL; - guint64 installed_size = 0; - guint64 download_size = 0; - g_autofree char *metadata_contents = NULL; - g_autofree char *commit = NULL; - g_autoptr(GVariant) commit_v = NULL; - g_autoptr(GVariant) commit_metadata = NULL; - g_autoptr(GPtrArray) subsets = NULL; - CommitData *rev_data; - const char *eol = NULL; - const char *eol_rebase = NULL; - int token_type = -1; - g_autoptr(GVariant) extra_data_sources = NULL; - guint32 n_extra_data = 0; - guint64 total_extra_data_download_size = 0; - g_autoptr(GVariantIter) subsets_iter = NULL; - - if (!ostree_repo_read_commit (repo, rev, &root, &commit, NULL, error)) - return NULL; - - if (!ostree_repo_load_commit (repo, commit, &commit_v, NULL, error)) - return NULL; - - commit_metadata = g_variant_get_child_value (commit_v, 0); - if (!g_variant_lookup (commit_metadata, "xa.metadata", "s", &metadata_contents)) - { - metadata = g_file_get_child (root, "metadata"); - if (!g_file_load_contents (metadata, cancellable, &metadata_contents, NULL, NULL, NULL)) - metadata_contents = g_strdup (""); - } - - if (g_variant_lookup (commit_metadata, "xa.installed-size", "t", &installed_size) && - g_variant_lookup (commit_metadata, "xa.download-size", "t", &download_size)) - { - installed_size = GUINT64_FROM_BE (installed_size); - download_size = GUINT64_FROM_BE (download_size); - } - else - { - if (!flatpak_repo_collect_sizes (repo, root, &installed_size, &download_size, cancellable, error)) - return NULL; - } - - if (g_variant_lookup (commit_metadata, "xa.subsets", "as", &subsets_iter)) - { - const char *subset; - subsets = g_ptr_array_new_with_free_func (g_free); - while (g_variant_iter_next (subsets_iter, "&s", &subset)) - g_ptr_array_add (subsets, g_strdup (subset)); - } - - flatpak_repo_collect_extra_data_sizes (repo, rev, &installed_size, &download_size); - - rev_data = g_new0 (CommitData, 1); - rev_data->installed_size = installed_size; - rev_data->download_size = download_size; - rev_data->metadata_contents = g_steal_pointer (&metadata_contents); - rev_data->subsets = g_steal_pointer (&subsets); - rev_data->commit_size = g_variant_get_size (commit_v); - rev_data->commit_timestamp = ostree_commit_get_timestamp (commit_v); - - g_variant_lookup (commit_metadata, OSTREE_COMMIT_META_KEY_ENDOFLIFE, "&s", &eol); - g_variant_lookup (commit_metadata, OSTREE_COMMIT_META_KEY_ENDOFLIFE_REBASE, "&s", &eol_rebase); - if (g_variant_lookup (commit_metadata, "xa.token-type", "i", &token_type)) - token_type = GINT32_FROM_LE(token_type); - - extra_data_sources = flatpak_commit_get_extra_data_sources (commit_v, NULL); - if (extra_data_sources) - { - n_extra_data = g_variant_n_children (extra_data_sources); - for (int i = 0; i < n_extra_data; i++) - { - guint64 extra_download_size; - flatpak_repo_parse_extra_data_sources (extra_data_sources, i, - NULL, - &extra_download_size, - NULL, - NULL, - NULL); - total_extra_data_download_size += extra_download_size; - } - } - - if (eol || eol_rebase || token_type >= 0 || n_extra_data > 0) - { - g_auto(GVariantBuilder) sparse_builder = FLATPAK_VARIANT_BUILDER_INITIALIZER; - g_variant_builder_init (&sparse_builder, G_VARIANT_TYPE_VARDICT); - if (eol) - g_variant_builder_add (&sparse_builder, "{sv}", FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE, g_variant_new_string (eol)); - if (eol_rebase) - g_variant_builder_add (&sparse_builder, "{sv}", FLATPAK_SPARSE_CACHE_KEY_ENDOFLINE_REBASE, g_variant_new_string (eol_rebase)); - if (token_type >= 0) - g_variant_builder_add (&sparse_builder, "{sv}", FLATPAK_SPARSE_CACHE_KEY_TOKEN_TYPE, g_variant_new_int32 (GINT32_TO_LE(token_type))); - if (n_extra_data > 0) - g_variant_builder_add (&sparse_builder, "{sv}", FLATPAK_SPARSE_CACHE_KEY_EXTRA_DATA_SIZE, - g_variant_new ("(ut)", GUINT32_TO_LE(n_extra_data), GUINT64_TO_LE(total_extra_data_download_size))); - - rev_data->sparse_data = g_variant_ref_sink (g_variant_builder_end (&sparse_builder)); - } - - return rev_data; -} - -static void -_ostree_parse_delta_name (const char *delta_name, - char **out_from, - char **out_to) -{ - g_auto(GStrv) parts = g_strsplit (delta_name, "-", 2); - - if (parts[0] && parts[1]) - { - *out_from = g_steal_pointer (&parts[0]); - *out_to = g_steal_pointer (&parts[1]); - } - else - { - *out_from = NULL; - *out_to = g_steal_pointer (&parts[0]); - } -} - -static GString * -static_delta_path_base (const char *dir, - const char *from, - const char *to) -{ - guint8 csum_to[OSTREE_SHA256_DIGEST_LEN]; - char to_b64[44]; - guint8 csum_to_copy[OSTREE_SHA256_DIGEST_LEN]; - GString *ret = g_string_new (dir); - - ostree_checksum_inplace_to_bytes (to, csum_to); - ostree_checksum_b64_inplace_from_bytes (csum_to, to_b64); - ostree_checksum_b64_inplace_to_bytes (to_b64, csum_to_copy); - - g_assert (memcmp (csum_to, csum_to_copy, OSTREE_SHA256_DIGEST_LEN) == 0); - - if (from != NULL) - { - guint8 csum_from[OSTREE_SHA256_DIGEST_LEN]; - char from_b64[44]; - - ostree_checksum_inplace_to_bytes (from, csum_from); - ostree_checksum_b64_inplace_from_bytes (csum_from, from_b64); - - g_string_append_c (ret, from_b64[0]); - g_string_append_c (ret, from_b64[1]); - g_string_append_c (ret, '/'); - g_string_append (ret, from_b64 + 2); - g_string_append_c (ret, '-'); - } - - g_string_append_c (ret, to_b64[0]); - g_string_append_c (ret, to_b64[1]); - if (from == NULL) - g_string_append_c (ret, '/'); - g_string_append (ret, to_b64 + 2); - - return ret; -} - -static char * -_ostree_get_relative_static_delta_path (const char *from, - const char *to, - const char *target) -{ - GString *ret = static_delta_path_base ("deltas/", from, to); - - if (target != NULL) - { - g_string_append_c (ret, '/'); - g_string_append (ret, target); - } - - return g_string_free (ret, FALSE); -} - -static char * -_ostree_get_relative_static_delta_superblock_path (const char *from, - const char *to) -{ - return _ostree_get_relative_static_delta_path (from, to, "superblock"); -} - -static GVariant * -_ostree_repo_static_delta_superblock_digest (OstreeRepo *repo, - const char *from, - const char *to, - GCancellable *cancellable, - GError **error) -{ - g_autofree char *superblock = _ostree_get_relative_static_delta_superblock_path ((from && from[0]) ? from : NULL, to); - glnx_autofd int fd = -1; - guint8 digest[OSTREE_SHA256_DIGEST_LEN]; - gsize len; - - if (!glnx_openat_rdonly (ostree_repo_get_dfd (repo), superblock, TRUE, &fd, error)) - return NULL; - - g_autoptr(GBytes) superblock_content = glnx_fd_readall_bytes (fd, cancellable, error); - if (!superblock_content) - return NULL; - - g_autoptr(GChecksum) checksum = g_checksum_new (G_CHECKSUM_SHA256); - g_checksum_update (checksum, g_bytes_get_data (superblock_content, NULL), g_bytes_get_size (superblock_content)); - len = sizeof digest; - g_checksum_get_digest (checksum, digest, &len); - - return g_variant_new_from_data (G_VARIANT_TYPE ("ay"), - g_memdup (digest, len), len, - FALSE, g_free, FALSE); -} - -static char * -appstream_ref_get_subset (const char *ref) -{ - if (!g_str_has_prefix (ref, "appstream2/")) - return NULL; - - const char *rest = ref + strlen ("appstream2/"); - const char *dash = strrchr (rest, '-'); - if (dash == NULL) - return NULL; - - return g_strndup (rest, dash - rest); -} - -char * -flatpak_get_arch_for_ref (const char *ref) -{ - if (g_str_has_prefix (ref, "appstream/") || - g_str_has_prefix (ref, "appstream2/")) - { - const char *rest = strchr (ref, '/') + 1; /* Guaranteed to exist per above check */ - const char *dash = strrchr (rest, '-'); /* Subset appstream refs are appstream2/$subset-$arch */ - if (dash != NULL) - rest = dash + 1; - return g_strdup (rest); - } - else if (g_str_has_prefix (ref, "app/") || - g_str_has_prefix (ref, "runtime/")) - { - const char *slash; - const char *arch; - - slash = strchr (ref, '/') + 1; /* Guaranteed to exist per above check */ - slash = strchr (slash, '/'); /* Skip id */ - if (slash == NULL) - return NULL; - arch = slash + 1; - - slash = strchr (arch, '/'); /* skip to end arch */ - if (slash == NULL) - return NULL; - - return g_strndup (arch, slash - arch); - } - - return NULL; -} - -typedef enum { - DIFF_OP_KIND_RESUSE_OLD, - DIFF_OP_KIND_SKIP_OLD, - DIFF_OP_KIND_DATA, -} DiffOpKind; - -typedef struct { - DiffOpKind kind; - gsize size; -} DiffOp; - -typedef struct { - const guchar *old_data; - const guchar *new_data; - - GArray *ops; - GArray *data; - - gsize last_old_offset; - gsize last_new_offset; -} DiffData; - -static gsize -match_bytes_at_start (const guchar *data1, - gsize data1_len, - const guchar *data2, - gsize data2_len) -{ - gsize len = 0; - gsize max_len = MIN (data1_len, data2_len); - - while (len < max_len) - { - if (*data1 != *data2) - break; - data1++; - data2++; - len++; - } - return len; -} - -static gsize -match_bytes_at_end (const guchar *data1, - gsize data1_len, - const guchar *data2, - gsize data2_len) -{ - gsize len = 0; - gsize max_len = MIN (data1_len, data2_len); - - data1 += data1_len - 1; - data2 += data2_len - 1; - - while (len < max_len) - { - if (*data1 != *data2) - break; - data1--; - data2--; - len++; - } - return len; -} - -static DiffOp * -diff_ensure_op (DiffData *data, - DiffOpKind kind) -{ - if (data->ops->len == 0 || - g_array_index (data->ops, DiffOp, data->ops->len-1).kind != kind) - { - DiffOp op = {kind, 0}; - g_array_append_val (data->ops, op); - } - - return &g_array_index (data->ops, DiffOp, data->ops->len-1); -} - -static void -diff_emit_reuse (DiffData *data, - gsize size) -{ - DiffOp *op; - - if (size == 0) - return; - - op = diff_ensure_op (data, DIFF_OP_KIND_RESUSE_OLD); - op->size += size; -} - -static void -diff_emit_skip (DiffData *data, - gsize size) -{ - DiffOp *op; - - if (size == 0) - return; - - op = diff_ensure_op (data, DIFF_OP_KIND_SKIP_OLD); - op->size += size; -} - -static void -diff_emit_data (DiffData *data, - gsize size, - const guchar *new_data) -{ - DiffOp *op; - - if (size == 0) - return; - - op = diff_ensure_op (data, DIFF_OP_KIND_DATA); - op->size += size; - - g_array_append_vals (data->data, new_data, size); -} - -static GBytes * -diff_encode (DiffData *data, GError **error) -{ - g_autoptr(GOutputStream) mem = g_memory_output_stream_new_resizable (); - g_autoptr(GDataOutputStream) out = g_data_output_stream_new (mem); - gsize ops_count = 0; - - g_data_output_stream_set_byte_order (out, G_DATA_STREAM_BYTE_ORDER_LITTLE_ENDIAN); - - /* Header */ - if (!g_output_stream_write_all (G_OUTPUT_STREAM (out), - FLATPAK_SUMMARY_DIFF_HEADER, 4, - NULL, NULL, error)) - return NULL; - - /* Write the ops count placeholder */ - if (!g_data_output_stream_put_uint32 (out, 0, NULL, error)) - return NULL; - - for (gsize i = 0; i < data->ops->len; i++) - { - DiffOp *op = &g_array_index (data->ops, DiffOp, i); - gsize size = op->size; - - while (size > 0) - { - /* We leave a nibble at the top for the op */ - guint32 opdata = (guint64)size & 0x0fffffff; - size -= opdata; - - opdata = opdata | ((0xf & op->kind) << 28); - - if (!g_data_output_stream_put_uint32 (out, opdata, NULL, error)) - return NULL; - ops_count++; - } - } - - /* Then add the data */ - if (data->data->len > 0 && - !g_output_stream_write_all (G_OUTPUT_STREAM (out), - data->data->data, data->data->len, - NULL, NULL, error)) - return NULL; - - /* Back-patch in the ops count */ - if (!g_seekable_seek (G_SEEKABLE(out), 4, G_SEEK_SET, NULL, error)) - return NULL; - - if (!g_data_output_stream_put_uint32 (out, ops_count, NULL, error)) - return NULL; - - if (!g_output_stream_close (G_OUTPUT_STREAM (out), NULL, error)) - return NULL; - - return g_memory_output_stream_steal_as_bytes (G_MEMORY_OUTPUT_STREAM (mem)); -} - -static void -diff_consume_block2 (DiffData *data, - gsize consume_old_offset, - gsize consume_old_size, - gsize produce_new_offset, - gsize produce_new_size) -{ - /* We consumed $consume_old_size bytes from $consume_old_offset to - produce $produce_new_size bytes at $produce_new_size */ - - /* First we copy old data for any matching prefix of the block */ - - gsize prefix_len = match_bytes_at_start (data->old_data + consume_old_offset, consume_old_size, - data->new_data + produce_new_offset, produce_new_size); - diff_emit_reuse (data, prefix_len); - - consume_old_size -= prefix_len; - consume_old_offset += prefix_len; - - produce_new_size -= prefix_len; - produce_new_offset += prefix_len; - - /* Then we find the matching suffix for the rest */ - gsize suffix_len = match_bytes_at_end (data->old_data + consume_old_offset, consume_old_size, - data->new_data + produce_new_offset, produce_new_size); - - /* Skip source data until suffix match */ - diff_emit_skip (data, consume_old_size - suffix_len); - - /* Copy new data until suffix match */ - diff_emit_data (data, produce_new_size - suffix_len, data->new_data + produce_new_offset); - - diff_emit_reuse (data, suffix_len); -} - -static void -diff_consume_block (DiffData *data, - gssize consume_old_offset, - gsize consume_old_size, - gssize produce_new_offset, - gsize produce_new_size) -{ - if (consume_old_offset == -1) - consume_old_offset = data->last_old_offset; - if (produce_new_offset == -1) - produce_new_offset = data->last_new_offset; - - /* We consumed $consume_old_size bytes from $consume_old_offset to - * produce $produce_new_size bytes at $produce_new_size, however - * while the emitted blocks are in order they may not cover the - * every byte, so we emit the inbetwen blocks separately. */ - - if (consume_old_offset != data->last_old_offset || - produce_new_offset != data->last_new_offset) - diff_consume_block2 (data, - data->last_old_offset, consume_old_offset - data->last_old_offset , - data->last_new_offset, produce_new_offset - data->last_new_offset); - - diff_consume_block2 (data, - consume_old_offset, consume_old_size, - produce_new_offset, produce_new_size); - - data->last_old_offset = consume_old_offset + consume_old_size; - data->last_new_offset = produce_new_offset + produce_new_size; -} - -GBytes * -flatpak_summary_apply_diff (GBytes *old, - GBytes *diff, - GError **error) -{ - g_autoptr(GBytes) uncompressed = NULL; - const guchar *diffdata; - gsize diff_size; - guint32 *ops; - guint32 n_ops; - gsize data_offset; - gsize data_size; - const guchar *data; - const guchar *old_data = g_bytes_get_data (old, NULL); - gsize old_size = g_bytes_get_size (old); - g_autoptr(GByteArray) res = g_byte_array_new (); - - uncompressed = flatpak_zlib_decompress_bytes (diff, error); - if (uncompressed == NULL) - { - g_prefix_error (error, "Invalid summary diff: "); - return NULL; - } - - diffdata = g_bytes_get_data (uncompressed, NULL); - diff_size = g_bytes_get_size (uncompressed); - - if (diff_size < 8 || - memcmp (diffdata, FLATPAK_SUMMARY_DIFF_HEADER, 4) != 0) - { - flatpak_fail (error, "Invalid summary diff"); - return NULL; - } - - n_ops = GUINT32_FROM_LE (*(guint32 *)(diffdata+4)); - ops = (guint32 *)(diffdata+8); - - data_offset = 4 + 4 + 4 * n_ops; - - /* All ops must fit in diff, and avoid wrapping the multiply */ - if (data_offset > diff_size || - (data_offset - 4 - 4) / 4 != n_ops) - { - flatpak_fail (error, "Invalid summary diff"); - return NULL; - } - - data = diffdata + data_offset; - data_size = diff_size - data_offset; - - for (gsize i = 0; i < n_ops; i++) - { - guint32 opdata = GUINT32_FROM_LE (ops[i]); - guint32 kind = (opdata & 0xf0000000) >> 28; - guint32 size = opdata & 0x0fffffff; - - switch (kind) - { - case DIFF_OP_KIND_RESUSE_OLD: - if (size > old_size) - { - flatpak_fail (error, "Invalid summary diff"); - return NULL; - } - g_byte_array_append (res, old_data, size); - old_data += size; - old_size -= size; - break; - case DIFF_OP_KIND_SKIP_OLD: - if (size > old_size) - { - flatpak_fail (error, "Invalid summary diff"); - return NULL; - } - old_data += size; - old_size -= size; - break; - case DIFF_OP_KIND_DATA: - if (size > data_size) - { - flatpak_fail (error, "Invalid summary diff"); - return NULL; - } - g_byte_array_append (res, data, size); - data += size; - data_size -= size; - break; - default: - flatpak_fail (error, "Invalid summary diff"); - return NULL; - } - } - - return g_byte_array_free_to_bytes (g_steal_pointer (&res)); -} - - -static GBytes * -flatpak_summary_generate_diff (GVariant *old_v, - GVariant *new_v, - GError **error) -{ - VarSummaryRef new, old; - VarRefMapRef new_refs, old_refs; - VarRefMapEntryRef new_entry, old_entry; - gsize new_len, old_len; - int new_i, old_i; - const char *old_ref, *new_ref; - g_autoptr(GArray) ops = g_array_new (FALSE, TRUE, sizeof (DiffOp)); - g_autoptr(GArray) data_bytes = g_array_new (FALSE, TRUE, 1); - g_autoptr(GBytes) diff_uncompressed = NULL; - g_autoptr(GBytes) diff_compressed = NULL; - DiffData data = { - g_variant_get_data (old_v), - g_variant_get_data (new_v), - ops, - data_bytes, - }; - - new = var_summary_from_gvariant (new_v); - old = var_summary_from_gvariant (old_v); - - new_refs = var_summary_get_ref_map (new); - old_refs = var_summary_get_ref_map (old); - - new_len = var_ref_map_get_length (new_refs); - old_len = var_ref_map_get_length (old_refs); - - new_i = old_i = 0; - while (new_i < new_len && old_i < old_len) - { - if (new_i == new_len) - { - /* Just old left */ - old_entry = var_ref_map_get_at (old_refs, old_i); - old_ref = var_ref_map_entry_get_ref (old_entry); - old_i++; - diff_consume_block (&data, - -1, 0, - (const guchar *)new_entry.base - (const guchar *)new.base, new_entry.size); - } - else if (old_i == old_len) - { - /* Just new left */ - new_entry = var_ref_map_get_at (new_refs, new_i); - new_ref = var_ref_map_entry_get_ref (new_entry); - diff_consume_block (&data, - (const guchar *)old_entry.base - (const guchar *)old.base, old_entry.size, - -1, 0); - - new_i++; - } - else - { - new_entry = var_ref_map_get_at (new_refs, new_i); - new_ref = var_ref_map_entry_get_ref (new_entry); - - old_entry = var_ref_map_get_at (old_refs, old_i); - old_ref = var_ref_map_entry_get_ref (old_entry); - - int cmp = strcmp (new_ref, old_ref); - if (cmp == 0) - { - /* same ref */ - diff_consume_block (&data, - (const guchar *)old_entry.base - (const guchar *)old.base, old_entry.size, - (const guchar *)new_entry.base - (const guchar *)new.base, new_entry.size); - old_i++; - new_i++; - } - else if (cmp < 0) - { - /* new added */ - diff_consume_block (&data, - -1, 0, - (const guchar *)new_entry.base - (const guchar *)new.base, new_entry.size); - new_i++; - } - else - { - /* old removed */ - diff_consume_block (&data, - (const guchar *)old_entry.base - (const guchar *)old.base, old_entry.size, - -1, 0); - old_i++; - } - } - } - - /* Flush till the end */ - diff_consume_block2 (&data, - data.last_old_offset, old.size - data.last_old_offset, - data.last_new_offset, new.size - data.last_new_offset); - - diff_uncompressed = diff_encode (&data, error); - if (diff_uncompressed == NULL) - return NULL; - - diff_compressed = flatpak_zlib_compress_bytes (diff_uncompressed, 9, error); - if (diff_compressed == NULL) - return NULL; - -#ifdef VALIDATE_DIFF - { - g_autoptr(GError) apply_error = NULL; - g_autoptr(GBytes) old_bytes = g_variant_get_data_as_bytes (old_v); - g_autoptr(GBytes) new_bytes = g_variant_get_data_as_bytes (new_v); - g_autoptr(GBytes) applied = flatpak_summary_apply_diff (old_bytes, diff_compressed, &apply_error); - g_assert (applied != NULL); - g_assert (g_bytes_equal (applied, new_bytes)); - } -#endif - - return g_steal_pointer (&diff_compressed); -} - -static void -variant_dict_merge (GVariantDict *dict, - GVariant *to_merge) -{ - GVariantIter iter; - gchar *key; - GVariant *value; - - if (to_merge) - { - g_variant_iter_init (&iter, to_merge); - while (g_variant_iter_next (&iter, "{sv}", &key, &value)) - { - g_variant_dict_insert_value (dict, key, value); - g_variant_unref (value); - g_free (key); - } - } -} - -static void -add_summary_metadata (OstreeRepo *repo, - GVariantBuilder *metadata_builder) -{ - GKeyFile *config; - g_autofree char *title = NULL; - g_autofree char *comment = NULL; - g_autofree char *description = NULL; - g_autofree char *homepage = NULL; - g_autofree char *icon = NULL; - g_autofree char *redirect_url = NULL; - g_autofree char *default_branch = NULL; - g_autofree char *remote_mode_str = NULL; - g_autofree char *authenticator_name = NULL; - g_autofree char *gpg_keys = NULL; - g_auto(GStrv) config_keys = NULL; - int authenticator_install = -1; - const char *collection_id; - gboolean deploy_collection_id = FALSE; - gboolean deploy_sideload_collection_id = FALSE; - gboolean tombstone_commits = FALSE; - - config = ostree_repo_get_config (repo); - - if (config) - { - remote_mode_str = g_key_file_get_string (config, "core", "mode", NULL); - tombstone_commits = g_key_file_get_boolean (config, "core", "tombstone-commits", NULL); - - title = g_key_file_get_string (config, "flatpak", "title", NULL); - comment = g_key_file_get_string (config, "flatpak", "comment", NULL); - description = g_key_file_get_string (config, "flatpak", "description", NULL); - homepage = g_key_file_get_string (config, "flatpak", "homepage", NULL); - icon = g_key_file_get_string (config, "flatpak", "icon", NULL); - default_branch = g_key_file_get_string (config, "flatpak", "default-branch", NULL); - gpg_keys = g_key_file_get_string (config, "flatpak", "gpg-keys", NULL); - redirect_url = g_key_file_get_string (config, "flatpak", "redirect-url", NULL); - deploy_sideload_collection_id = g_key_file_get_boolean (config, "flatpak", "deploy-sideload-collection-id", NULL); - deploy_collection_id = g_key_file_get_boolean (config, "flatpak", "deploy-collection-id", NULL); - authenticator_name = g_key_file_get_string (config, "flatpak", "authenticator-name", NULL); - if (g_key_file_has_key (config, "flatpak", "authenticator-install", NULL)) - authenticator_install = g_key_file_get_boolean (config, "flatpak", "authenticator-install", NULL); - - config_keys = g_key_file_get_keys (config, "flatpak", NULL, NULL); - } - - collection_id = ostree_repo_get_collection_id (repo); - - g_variant_builder_add (metadata_builder, "{sv}", "ostree.summary.mode", - g_variant_new_string (remote_mode_str ? remote_mode_str : "bare")); - g_variant_builder_add (metadata_builder, "{sv}", "ostree.summary.tombstone-commits", - g_variant_new_boolean (tombstone_commits)); - g_variant_builder_add (metadata_builder, "{sv}", "ostree.summary.indexed-deltas", - g_variant_new_boolean (TRUE)); - g_variant_builder_add (metadata_builder, "{sv}", "ostree.summary.last-modified", - g_variant_new_uint64 (GUINT64_TO_BE (g_get_real_time () / G_USEC_PER_SEC))); - - if (collection_id) - g_variant_builder_add (metadata_builder, "{sv}", "ostree.summary.collection-id", - g_variant_new_string (collection_id)); - - if (title) - g_variant_builder_add (metadata_builder, "{sv}", "xa.title", - g_variant_new_string (title)); - - if (comment) - g_variant_builder_add (metadata_builder, "{sv}", "xa.comment", - g_variant_new_string (comment)); - - if (description) - g_variant_builder_add (metadata_builder, "{sv}", "xa.description", - g_variant_new_string (description)); - - if (homepage) - g_variant_builder_add (metadata_builder, "{sv}", "xa.homepage", - g_variant_new_string (homepage)); - - if (icon) - g_variant_builder_add (metadata_builder, "{sv}", "xa.icon", - g_variant_new_string (icon)); - - if (redirect_url) - g_variant_builder_add (metadata_builder, "{sv}", "xa.redirect-url", - g_variant_new_string (redirect_url)); - - if (default_branch) - g_variant_builder_add (metadata_builder, "{sv}", "xa.default-branch", - g_variant_new_string (default_branch)); - - if (deploy_collection_id && collection_id != NULL) - g_variant_builder_add (metadata_builder, "{sv}", OSTREE_META_KEY_DEPLOY_COLLECTION_ID, - g_variant_new_string (collection_id)); - else if (deploy_sideload_collection_id && collection_id != NULL) - g_variant_builder_add (metadata_builder, "{sv}", "xa.deploy-collection-id", - g_variant_new_string (collection_id)); - else if (deploy_collection_id) - g_debug ("Ignoring deploy-collection-id=true because no collection ID is set."); - - if (authenticator_name) - g_variant_builder_add (metadata_builder, "{sv}", "xa.authenticator-name", - g_variant_new_string (authenticator_name)); - - if (authenticator_install != -1) - g_variant_builder_add (metadata_builder, "{sv}", "xa.authenticator-install", - g_variant_new_boolean (authenticator_install)); - - g_variant_builder_add (metadata_builder, "{sv}", "xa.cache-version", - g_variant_new_uint32 (GUINT32_TO_LE (FLATPAK_XA_CACHE_VERSION))); - - if (config_keys != NULL) - { - for (int i = 0; config_keys[i] != NULL; i++) - { - const char *key = config_keys[i]; - g_autofree char *xa_key = NULL; - g_autofree char *value = NULL; - - if (!g_str_has_prefix (key, "authenticator-options.")) - continue; - - value = g_key_file_get_string (config, "flatpak", key, NULL); - if (value == NULL) - continue; - - xa_key = g_strconcat ("xa.", key, NULL); - g_variant_builder_add (metadata_builder, "{sv}", xa_key, - g_variant_new_string (value)); - } - } - - if (gpg_keys) - { - guchar *decoded; - gsize decoded_len; - - gpg_keys = g_strstrip (gpg_keys); - decoded = g_base64_decode (gpg_keys, &decoded_len); - - g_variant_builder_add (metadata_builder, "{sv}", "xa.gpg-keys", - g_variant_new_from_data (G_VARIANT_TYPE ("ay"), decoded, decoded_len, - TRUE, (GDestroyNotify) g_free, decoded)); - } -} - -static GVariant * -generate_summary (OstreeRepo *repo, - gboolean compat_format, - GHashTable *refs, - GHashTable *commit_data_cache, - GPtrArray *delta_names, - const char *subset, - const char **summary_arches, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GVariantBuilder) metadata_builder = g_variant_builder_new (G_VARIANT_TYPE_VARDICT); - g_autoptr(GVariantBuilder) ref_data_builder = g_variant_builder_new (G_VARIANT_TYPE ("a{s(tts)}")); - g_autoptr(GVariantBuilder) ref_sparse_data_builder = g_variant_builder_new (G_VARIANT_TYPE ("a{sa{sv}}")); - g_autoptr(GVariantBuilder) refs_builder = g_variant_builder_new (G_VARIANT_TYPE ("a(s(taya{sv}))")); - g_autoptr(GVariantBuilder) summary_builder = g_variant_builder_new (OSTREE_SUMMARY_GVARIANT_FORMAT); - g_autoptr(GHashTable) summary_arches_ht = NULL; - g_autoptr(GHashTable) commits = NULL; - g_autoptr(GList) ordered_keys = NULL; - GList *l = NULL; - - /* In the new format this goes in the summary index instead */ - if (compat_format) - add_summary_metadata (repo, metadata_builder); - - ordered_keys = g_hash_table_get_keys (refs); - ordered_keys = g_list_sort (ordered_keys, (GCompareFunc) strcmp); - - if (summary_arches) - { - summary_arches_ht = g_hash_table_new_full (g_str_hash, g_str_equal, NULL, NULL); - for (int i = 0; summary_arches[i] != NULL; i++) - { - const char *arch = summary_arches[i]; - - g_hash_table_add (summary_arches_ht, (char *)arch); - } - } - - /* Compute which commits to keep */ - commits = g_hash_table_new_full (g_str_hash, g_str_equal, NULL, NULL); /* strings owned by ref */ - for (l = ordered_keys; l; l = l->next) - { - const char *ref = l->data; - const char *rev = g_hash_table_lookup (refs, ref); - g_autofree char *arch = NULL; - const CommitData *rev_data = NULL; - - if (summary_arches) - { - /* NOTE: Non-arched (unknown) refs get into all summary versions */ - arch = flatpak_get_arch_for_ref (ref); - if (arch != NULL && !g_hash_table_contains (summary_arches_ht, arch)) - continue; /* Filter this ref by arch */ - } - - rev_data = g_hash_table_lookup (commit_data_cache, rev); - if (*subset != 0) - { - /* Subset summaries keep the appstream2/$subset-$arch, and have no appstream/ compat branch */ - - if (g_str_has_prefix (ref, "appstream/")) - { - continue; /* No compat branch in subsets */ - } - else if (g_str_has_prefix (ref, "appstream2/")) - { - g_autofree char *ref_subset = appstream_ref_get_subset (ref); - if (ref_subset == NULL) - continue; /* Non-subset, ignore */ - - if (strcmp (subset, ref_subset) != 0) - continue; /* Different subset, ignore */ - - /* Otherwise, keep */ - } - else if (rev_data) - { - if (rev_data->subsets == NULL || - !flatpak_g_ptr_array_contains_string (rev_data->subsets, subset)) - continue; /* Ref is not in this subset */ - } - } - else - { - /* non-subset, keep everything but subset appstream refs */ - - g_autofree char *ref_subset = appstream_ref_get_subset (ref); - if (ref_subset != NULL) - continue; /* Subset appstream ref, ignore */ - } - - g_hash_table_add (commits, (char *)rev); - } - - /* Create refs list, metadata and sparse_data */ - for (l = ordered_keys; l; l = l->next) - { - const char *ref = l->data; - const char *rev = g_hash_table_lookup (refs, ref); - const CommitData *rev_data = NULL; - g_auto(GVariantDict) commit_metadata_builder = FLATPAK_VARIANT_BUILDER_INITIALIZER; - guint64 commit_size; - guint64 commit_timestamp; - - if (!g_hash_table_contains (commits, rev)) - continue; /* Filter out commit (by arch & subset) */ - - if (flatpak_is_app_runtime_or_appstream_ref (ref)) - rev_data = g_hash_table_lookup (commit_data_cache, rev); - - if (rev_data != NULL) - { - commit_size = rev_data->commit_size; - commit_timestamp = rev_data->commit_timestamp; - } - else - { - g_autoptr(GVariant) commit_obj = NULL; - if (!ostree_repo_load_variant (repo, OSTREE_OBJECT_TYPE_COMMIT, rev, &commit_obj, error)) - return NULL; - commit_size = g_variant_get_size (commit_obj); - commit_timestamp = ostree_commit_get_timestamp (commit_obj); - } - - g_variant_dict_init (&commit_metadata_builder, NULL); - if (!compat_format && rev_data) - { - g_variant_dict_insert (&commit_metadata_builder, "xa.data", "(tts)", - GUINT64_TO_BE (rev_data->installed_size), - GUINT64_TO_BE (rev_data->download_size), - rev_data->metadata_contents); - variant_dict_merge (&commit_metadata_builder, rev_data->sparse_data); - } - - /* For the new format summary we use a shorter name for the timestamp to save space */ - g_variant_dict_insert_value (&commit_metadata_builder, - compat_format ? OSTREE_COMMIT_TIMESTAMP : OSTREE_COMMIT_TIMESTAMP2, - g_variant_new_uint64 (GUINT64_TO_BE (commit_timestamp))); - - g_variant_builder_add_value (refs_builder, - g_variant_new ("(s(t@ay@a{sv}))", ref, - commit_size, - ostree_checksum_to_bytes_v (rev), - g_variant_dict_end (&commit_metadata_builder))); - - if (compat_format && rev_data) - { - g_variant_builder_add (ref_data_builder, "{s(tts)}", - ref, - GUINT64_TO_BE (rev_data->installed_size), - GUINT64_TO_BE (rev_data->download_size), - rev_data->metadata_contents); - if (rev_data->sparse_data) - g_variant_builder_add (ref_sparse_data_builder, "{s@a{sv}}", - ref, rev_data->sparse_data); - } - } - - if (delta_names) - { - g_auto(GVariantDict) deltas_builder = FLATPAK_VARIANT_BUILDER_INITIALIZER; - - g_variant_dict_init (&deltas_builder, NULL); - for (guint i = 0; i < delta_names->len; i++) - { - g_autofree char *from = NULL; - g_autofree char *to = NULL; - GVariant *digest; - - _ostree_parse_delta_name (delta_names->pdata[i], &from, &to); - - /* Only keep deltas going to a ref that is in the summary - * (i.e. not arch filtered or random) */ - if (!g_hash_table_contains (commits, to)) - continue; - - digest = _ostree_repo_static_delta_superblock_digest (repo, - (from && from[0]) ? from : NULL, - to, cancellable, error); - if (digest == NULL) - return FALSE; - - g_variant_dict_insert_value (&deltas_builder, delta_names->pdata[i], digest); - } - - if (delta_names->len > 0) - g_variant_builder_add (metadata_builder, "{sv}", "ostree.static-deltas", g_variant_dict_end (&deltas_builder)); - } - - if (compat_format) - { - /* Note: xa.cache doesn’t need to support collection IDs for the refs listed - * in it, because the xa.cache metadata is stored on the ostree-metadata ref, - * which is itself strongly bound to a collection ID — so that collection ID - * is bound to all the refs in xa.cache. If a client is using the xa.cache - * data from a summary file (rather than an ostree-metadata branch), they are - * too old to care about collection IDs anyway. */ - g_variant_builder_add (metadata_builder, "{sv}", "xa.cache", - g_variant_new_variant (g_variant_builder_end (ref_data_builder))); - g_variant_builder_add (metadata_builder, "{sv}", "xa.sparse-cache", - g_variant_builder_end (ref_sparse_data_builder)); - } - else - { - g_variant_builder_add (metadata_builder, "{sv}", "xa.summary-version", - g_variant_new_uint32 (GUINT32_TO_LE (FLATPAK_XA_SUMMARY_VERSION))); - } - - g_variant_builder_add_value (summary_builder, g_variant_builder_end (refs_builder)); - g_variant_builder_add_value (summary_builder, g_variant_builder_end (metadata_builder)); - - return g_variant_ref_sink (g_variant_builder_end (summary_builder)); -} - -static GVariant * -read_digested_summary (OstreeRepo *repo, - const char *digest, - GHashTable *digested_summary_cache, - GCancellable *cancellable, - GError **error) -{ - GVariant *cached; - g_autoptr(GVariant) loaded = NULL; - - cached = g_hash_table_lookup (digested_summary_cache, digest); - if (cached) - return g_variant_ref (cached); - - loaded = flatpak_repo_load_digested_summary (repo, digest, error); - if (loaded == NULL) - return NULL; - - g_hash_table_insert (digested_summary_cache, g_strdup (digest), g_variant_ref (loaded)); - - return g_steal_pointer (&loaded); -} - -static gboolean -add_to_history (OstreeRepo *repo, - GVariantBuilder *history_builder, - VarChecksumRef old_digest_vv, - GVariant *current_digest_v, - GVariant *current_content, - GHashTable *digested_summary_cache, - guint *history_len, - guint max_history_length, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GVariant) old_digest_v = g_variant_ref_sink (var_checksum_dup_to_gvariant (old_digest_vv)); - g_autofree char *old_digest = NULL; - g_autoptr(GVariant) old_content = NULL; - g_autofree char *current_digest = NULL; - g_autoptr(GBytes) subsummary_diff = NULL; - - /* Limit history length */ - if (*history_len >= max_history_length) - return TRUE; - - /* Avoid repeats in the history (in case nothing changed in subsummary) */ - if (g_variant_equal (old_digest_v, current_digest_v)) - return TRUE; - - old_digest = ostree_checksum_from_bytes_v (old_digest_v); - old_content = read_digested_summary (repo, old_digest, digested_summary_cache, cancellable, NULL); - if (old_content == NULL) - return TRUE; /* Only add parents that still exist */ - - subsummary_diff = flatpak_summary_generate_diff (old_content, current_content, error); - if (subsummary_diff == NULL) - return FALSE; - - current_digest = ostree_checksum_from_bytes_v (current_digest_v); - - if (!flatpak_repo_save_digested_summary_delta (repo, old_digest, current_digest, - subsummary_diff, cancellable, error)) - return FALSE; - - *history_len += 1; - g_variant_builder_add_value (history_builder, old_digest_v); - - return TRUE; -} - -static GVariant * -generate_summary_index (OstreeRepo *repo, - GVariant *old_index_v, - GHashTable *summaries, - GHashTable *digested_summaries, - GHashTable *digested_summary_cache, - const char **gpg_key_ids, - const char *gpg_homedir, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GVariantBuilder) metadata_builder = g_variant_builder_new (G_VARIANT_TYPE_VARDICT); - g_autoptr(GVariantBuilder) subsummary_builder = g_variant_builder_new (G_VARIANT_TYPE ("a{s(ayaaya{sv})}")); - g_autoptr(GVariantBuilder) index_builder = g_variant_builder_new (FLATPAK_SUMMARY_INDEX_GVARIANT_FORMAT); - g_autoptr(GVariant) index = NULL; - g_autoptr(GList) ordered_summaries = NULL; - guint max_history_length = flatpak_repo_get_summary_history_length (repo); - GList *l; - - add_summary_metadata (repo, metadata_builder); - - ordered_summaries = g_hash_table_get_keys (summaries); - ordered_summaries = g_list_sort (ordered_summaries, (GCompareFunc) strcmp); - for (l = ordered_summaries; l; l = l->next) - { - g_auto(GVariantDict) subsummary_metadata_builder = FLATPAK_VARIANT_BUILDER_INITIALIZER; - const char *subsummary = l->data; - const char *digest = g_hash_table_lookup (summaries, subsummary); - g_autoptr(GVariant) digest_v = g_variant_ref_sink (ostree_checksum_to_bytes_v (digest)); - g_autoptr(GVariantBuilder) history_builder = g_variant_builder_new (G_VARIANT_TYPE ("aay")); - g_autoptr(GVariant) subsummary_content = NULL; - - subsummary_content = read_digested_summary (repo, digest, digested_summary_cache, cancellable, error); - if (subsummary_content == NULL) - return NULL; /* This really should always be there as we're supposed to index it */ - - if (old_index_v) - { - VarSummaryIndexRef old_index = var_summary_index_from_gvariant (old_index_v); - VarSummaryIndexSubsummariesRef old_subsummaries = var_summary_index_get_subsummaries (old_index); - VarSubsummaryRef old_subsummary; - guint history_len = 0; - - if (var_summary_index_subsummaries_lookup (old_subsummaries, subsummary, NULL, &old_subsummary)) - { - VarChecksumRef parent = var_subsummary_get_checksum (old_subsummary); - - /* Add current as first in history */ - if (!add_to_history (repo, history_builder, parent, digest_v, subsummary_content, digested_summary_cache, - &history_len, max_history_length, cancellable, error)) - return FALSE; - - /* Add previous history */ - VarArrayofChecksumRef history = var_subsummary_get_history (old_subsummary); - gsize len = var_arrayof_checksum_get_length (history); - for (gsize i = 0; i < len; i++) - { - VarChecksumRef c = var_arrayof_checksum_get_at (history, i); - if (!add_to_history (repo, history_builder, c, digest_v, subsummary_content, digested_summary_cache, - &history_len, max_history_length, cancellable, error)) - return FALSE; - } - } - } - - g_variant_dict_init (&subsummary_metadata_builder, NULL); - g_variant_builder_add (subsummary_builder, "{s(@ay@aay@a{sv})}", - subsummary, - digest_v, - g_variant_builder_end (history_builder), - g_variant_dict_end (&subsummary_metadata_builder)); - } - - g_variant_builder_add_value (index_builder, g_variant_builder_end (subsummary_builder)); - g_variant_builder_add_value (index_builder, g_variant_builder_end (metadata_builder)); - - index = g_variant_ref_sink (g_variant_builder_end (index_builder)); - - return g_steal_pointer (&index); -} - -static gboolean -flatpak_repo_gc_digested_summaries (OstreeRepo *repo, - const char *index_digest, /* The digest of the current (new) index (if any) */ - const char *old_index_digest, /* The digest of the previous index (if any) */ - GHashTable *digested_summaries, /* generated */ - GHashTable *digested_summary_cache, /* generated + referenced */ - GCancellable *cancellable, - GError **error) -{ - g_auto(GLnxDirFdIterator) iter = {0}; - int repo_fd = ostree_repo_get_dfd (repo); - struct dirent *dent; - const char *ext; - g_autoptr(GError) local_error = NULL; - - if (!glnx_dirfd_iterator_init_at (repo_fd, "summaries", FALSE, &iter, &local_error)) - { - if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND)) - return TRUE; - - g_propagate_error (error, g_steal_pointer (&local_error)); - return FALSE; - } - - while (TRUE) - { - gboolean remove = FALSE; - - if (!glnx_dirfd_iterator_next_dent_ensure_dtype (&iter, &dent, cancellable, error)) - return FALSE; - - if (dent == NULL) - break; - - if (dent->d_type != DT_REG) - continue; - - /* Keep it if its an unexpected type */ - ext = strchr (dent->d_name, '.'); - if (ext != NULL) - { - if (strcmp (ext, ".gz") == 0 && strlen (dent->d_name) == 64 + 3) - { - char *sha256 = g_strndup (dent->d_name, 64); - - /* Keep all the referenced summaries */ - if (g_hash_table_contains (digested_summary_cache, sha256)) - { - g_debug ("Keeping referenced summary %s", dent->d_name); - continue; - } - /* Remove rest */ - remove = TRUE; - } - else if (strcmp (ext, ".delta") == 0) - { - const char *dash = strchr (dent->d_name, '-'); - if (dash != NULL && dash < ext && (ext - dash) == 1 + 64) - { - char *to_sha256 = g_strndup (dash + 1, 64); - - /* Only keep deltas going to a generated summary */ - if (g_hash_table_contains (digested_summaries, to_sha256)) - { - g_debug ("Keeping delta to generated summary %s", dent->d_name); - continue; - } - /* Remove rest */ - remove = TRUE; - } - } - else if (strcmp (ext, ".idx.sig") == 0) - { - g_autofree char *digest = g_strndup (dent->d_name, strlen (dent->d_name) - strlen (".idx.sig")); - - if (g_strcmp0 (digest, index_digest) == 0) - continue; /* Always keep current */ - - if (g_strcmp0 (digest, old_index_digest) == 0) - continue; /* Always keep previous one, to avoid some races */ - - /* Remove the rest */ - remove = TRUE; - } - } - - if (remove) - { - g_debug ("Removing old digested summary file %s", dent->d_name); - if (unlinkat (iter.fd, dent->d_name, 0) != 0) - { - glnx_set_error_from_errno (error); - return FALSE; - } - } - else - g_debug ("Keeping unexpected summary file %s", dent->d_name); - } - - return TRUE; -} - - -/* Update the metadata in the summary file for @repo, and then re-sign the file. - * If the repo has a collection ID set, additionally store the metadata on a - * contentless commit in a well-known branch, which is the preferred way of - * broadcasting per-repo metadata (putting it in the summary file is deprecated, - * but kept for backwards compatibility). - * - * Note that there are two keys for the collection ID: collection-id, and - * ostree.deploy-collection-id. If a client does not currently have a - * collection ID configured for this remote, it will *only* update its - * configuration from ostree.deploy-collection-id. This allows phased - * deployment of collection-based repositories. Clients will only update their - * configuration from an unset to a set collection ID once (otherwise the - * security properties of collection IDs are broken). */ -gboolean -flatpak_repo_update (OstreeRepo *repo, - FlatpakRepoUpdateFlags flags, - const char **gpg_key_ids, - const char *gpg_homedir, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GHashTable) commit_data_cache = NULL; - g_autoptr(GVariant) compat_summary = NULL; - g_autoptr(GVariant) summary_index = NULL; - g_autoptr(GVariant) old_index = NULL; - g_autoptr(GPtrArray) delta_names = NULL; - g_auto(GStrv) summary_arches = NULL; - g_autoptr(GHashTable) refs = NULL; - g_autoptr(GHashTable) arches = NULL; - g_autoptr(GHashTable) subsets = NULL; - g_autoptr(GHashTable) summaries = NULL; - g_autoptr(GHashTable) digested_summaries = NULL; - g_autoptr(GHashTable) digested_summary_cache = NULL; - g_autoptr(GBytes) index_sig = NULL; - time_t old_compat_sig_mtime; - GKeyFile *config; - gboolean disable_index = (flags & FLATPAK_REPO_UPDATE_FLAG_DISABLE_INDEX) != 0; - g_autofree char *index_digest = NULL; - g_autofree char *old_index_digest = NULL; - - config = ostree_repo_get_config (repo); - - if (!ostree_repo_list_refs_ext (repo, NULL, &refs, - OSTREE_REPO_LIST_REFS_EXT_EXCLUDE_REMOTES | OSTREE_REPO_LIST_REFS_EXT_EXCLUDE_MIRRORS, - cancellable, error)) - return FALSE; - - old_index = flatpak_repo_load_summary_index (repo, NULL); - if (old_index) - commit_data_cache = populate_commit_data_cache (repo, old_index); - - if (commit_data_cache == NULL) /* No index or failed to load it */ - commit_data_cache = commit_data_cache_new (); - - if (!ostree_repo_list_static_delta_names (repo, &delta_names, cancellable, error)) - return FALSE; - - if (config) - summary_arches = g_key_file_get_string_list (config, "flatpak", "summary-arches", NULL, NULL); - - summaries = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free); - /* These are the ones we generated */ - digested_summaries = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify)g_variant_unref); - /* These are the ones generated or references */ - digested_summary_cache = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify)g_variant_unref); - - arches = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); - subsets = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); - g_hash_table_add (subsets, g_strdup ("")); /* Always have everything subset */ - - GLNX_HASH_TABLE_FOREACH_KV (refs, const char *, ref, const char *, rev) - { - g_autofree char *arch = flatpak_get_arch_for_ref (ref); - CommitData *rev_data = NULL; - - if (arch != NULL && - !g_hash_table_contains (arches, arch)) - g_hash_table_add (arches, g_steal_pointer (&arch)); - - /* Add CommitData for flatpak refs that we didn't already pre-populate */ - if (flatpak_is_app_runtime_or_appstream_ref (ref)) - { - rev_data = g_hash_table_lookup (commit_data_cache, rev); - if (rev_data == NULL) - { - rev_data = read_commit_data (repo, ref, rev, cancellable, error); - if (rev_data == NULL) - return FALSE; - - g_hash_table_insert (commit_data_cache, g_strdup (rev), (CommitData *)rev_data); - } - - for (int i = 0; rev_data->subsets != NULL && i < rev_data->subsets->len; i++) - { - const char *subset = g_ptr_array_index (rev_data->subsets, i); - if (!g_hash_table_contains (subsets, subset)) - g_hash_table_add (subsets, g_strdup (subset)); - } - } - } - - compat_summary = generate_summary (repo, TRUE, refs, commit_data_cache, delta_names, - "", (const char **)summary_arches, - cancellable, error); - if (compat_summary == NULL) - return FALSE; - - if (!disable_index) - { - GLNX_HASH_TABLE_FOREACH (subsets, const char *, subset) - { - GLNX_HASH_TABLE_FOREACH (arches, const char *, arch) - { - const char *arch_v[] = { arch, NULL }; - g_autofree char *name = NULL; - g_autofree char *digest = NULL; - - if (*subset == 0) - name = g_strdup (arch); - else - name = g_strconcat (subset, "-", arch, NULL); - - g_autoptr(GVariant) arch_summary = generate_summary (repo, FALSE, refs, commit_data_cache, NULL, subset, arch_v, - cancellable, error); - if (arch_summary == NULL) - return FALSE; - - digest = flatpak_repo_save_digested_summary (repo, name, arch_summary, cancellable, error); - if (digest == NULL) - return FALSE; - - g_hash_table_insert (digested_summaries, g_strdup (digest), g_variant_ref (arch_summary)); - /* Prime summary cache with generated summaries */ - g_hash_table_insert (digested_summary_cache, g_strdup (digest), g_variant_ref (arch_summary)); - g_hash_table_insert (summaries, g_steal_pointer (&name), g_steal_pointer (&digest)); - } - } - - summary_index = generate_summary_index (repo, old_index, summaries, digested_summaries, digested_summary_cache, - gpg_key_ids, gpg_homedir, - cancellable, error); - if (summary_index == NULL) - return FALSE; - } - - if (!ostree_repo_static_delta_reindex (repo, 0, NULL, cancellable, error)) - return FALSE; - - if (summary_index && gpg_key_ids) - { - g_autoptr(GBytes) index_bytes = g_variant_get_data_as_bytes (summary_index); - - if (!ostree_repo_gpg_sign_data (repo, index_bytes, - NULL, - gpg_key_ids, - gpg_homedir, - &index_sig, - cancellable, - error)) - return FALSE; - } - - if (summary_index) - index_digest = g_compute_checksum_for_data (G_CHECKSUM_SHA256, - g_variant_get_data (summary_index), - g_variant_get_size (summary_index)); - if (old_index) - old_index_digest = g_compute_checksum_for_data (G_CHECKSUM_SHA256, - g_variant_get_data (old_index), - g_variant_get_size (old_index)); - - /* Release the memory-mapped summary index file before replacing it, - to avoid failure on filesystems like cifs */ - g_clear_pointer (&old_index, g_variant_unref); - - if (!flatpak_repo_save_summary_index (repo, summary_index, index_digest, index_sig, cancellable, error)) - return FALSE; - - if (!flatpak_repo_save_compat_summary (repo, compat_summary, &old_compat_sig_mtime, cancellable, error)) - return FALSE; - - if (gpg_key_ids) - { - if (!ostree_repo_add_gpg_signature_summary (repo, - gpg_key_ids, - gpg_homedir, - cancellable, - error)) - return FALSE; - - - if (old_compat_sig_mtime != 0) - { - int repo_dfd = ostree_repo_get_dfd (repo); - struct stat stbuf; - - /* Ensure we increase (in sec precision) */ - if (fstatat (repo_dfd, "summary.sig", &stbuf, AT_SYMLINK_NOFOLLOW) == 0 && - stbuf.st_mtime <= old_compat_sig_mtime) - { - struct timespec ts[2] = { {0, UTIME_OMIT}, {old_compat_sig_mtime + 1, 0} }; - (void) utimensat (repo_dfd, "summary.sig", ts, AT_SYMLINK_NOFOLLOW); - } - } - } - - if (!disable_index && - !flatpak_repo_gc_digested_summaries (repo, index_digest, old_index_digest, digested_summaries, digested_summary_cache, cancellable, error)) - return FALSE; - - return TRUE; -} - -gboolean -flatpak_mtree_create_dir (OstreeRepo *repo, - OstreeMutableTree *parent, - const char *name, - OstreeMutableTree **dir_out, - GError **error) -{ - g_autoptr(OstreeMutableTree) dir = NULL; - - if (!ostree_mutable_tree_ensure_dir (parent, name, &dir, error)) - return FALSE; - - if (!flatpak_mtree_ensure_dir_metadata (repo, dir, NULL, error)) - return FALSE; - - *dir_out = g_steal_pointer (&dir); - return TRUE; -} - -gboolean -flatpak_mtree_create_symlink (OstreeRepo *repo, - OstreeMutableTree *parent, - const char *filename, - const char *target, - GError **error) -{ - g_autoptr(GFileInfo) file_info = g_file_info_new (); - g_autoptr(GInputStream) content_stream = NULL; - g_autofree guchar *raw_checksum = NULL; - g_autofree char *checksum = NULL; - guint64 length; - - g_file_info_set_name (file_info, filename); - g_file_info_set_file_type (file_info, G_FILE_TYPE_SYMBOLIC_LINK); - g_file_info_set_size (file_info, 0); - g_file_info_set_attribute_uint32 (file_info, "unix::uid", 0); - g_file_info_set_attribute_uint32 (file_info, "unix::gid", 0); - g_file_info_set_attribute_uint32 (file_info, "unix::mode", S_IFLNK | 0777); - - g_file_info_set_attribute_boolean (file_info, "standard::is-symlink", TRUE); - g_file_info_set_attribute_byte_string (file_info, "standard::symlink-target", target); - - if (!ostree_raw_file_to_content_stream (NULL, file_info, NULL, - &content_stream, &length, - NULL, error)) - return FALSE; - - if (!ostree_repo_write_content (repo, NULL, content_stream, length, - &raw_checksum, NULL, error)) - return FALSE; - - checksum = ostree_checksum_from_bytes (raw_checksum); - - if (!ostree_mutable_tree_replace_file (parent, filename, checksum, error)) - return FALSE; - - return TRUE; -} - -gboolean -flatpak_mtree_add_file_from_bytes (OstreeRepo *repo, - GBytes *bytes, - OstreeMutableTree *parent, - const char *filename, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GFileInfo) info = g_file_info_new (); - g_autoptr(GInputStream) memstream = NULL; - g_autoptr(GInputStream) content_stream = NULL; - g_autofree guchar *raw_checksum = NULL; - g_autofree char *checksum = NULL; - guint64 length; - - g_file_info_set_attribute_uint32 (info, "standard::type", G_FILE_TYPE_REGULAR); - g_file_info_set_attribute_uint64 (info, "standard::size", g_bytes_get_size (bytes)); - g_file_info_set_attribute_uint32 (info, "unix::uid", 0); - g_file_info_set_attribute_uint32 (info, "unix::gid", 0); - g_file_info_set_attribute_uint32 (info, "unix::mode", S_IFREG | 0644); - - memstream = g_memory_input_stream_new_from_bytes (bytes); - - if (!ostree_raw_file_to_content_stream (memstream, info, NULL, - &content_stream, &length, - cancellable, error)) - return FALSE; - - if (!ostree_repo_write_content (repo, NULL, content_stream, length, - &raw_checksum, cancellable, error)) - return FALSE; - - checksum = ostree_checksum_from_bytes (raw_checksum); - - if (!ostree_mutable_tree_replace_file (parent, filename, checksum, error)) - return FALSE; - - return TRUE; -} - -gboolean -flatpak_mtree_ensure_dir_metadata (OstreeRepo *repo, - OstreeMutableTree *mtree, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GVariant) dirmeta = NULL; - g_autoptr(GFileInfo) file_info = g_file_info_new (); - g_autofree guchar *csum = NULL; - g_autofree char *checksum = NULL; - - g_file_info_set_name (file_info, "/"); - g_file_info_set_file_type (file_info, G_FILE_TYPE_DIRECTORY); - g_file_info_set_attribute_uint32 (file_info, "unix::uid", 0); - g_file_info_set_attribute_uint32 (file_info, "unix::gid", 0); - g_file_info_set_attribute_uint32 (file_info, "unix::mode", 040755); - - dirmeta = ostree_create_directory_metadata (file_info, NULL); - if (!ostree_repo_write_metadata (repo, OSTREE_OBJECT_TYPE_DIR_META, NULL, - dirmeta, &csum, cancellable, error)) - return FALSE; - - checksum = ostree_checksum_from_bytes (csum); - ostree_mutable_tree_set_metadata_checksum (mtree, checksum); - - return TRUE; -} - -static gboolean -validate_component (FlatpakXml *component, - const char *ref, - const char *id, - char **tags, - const char *runtime, - const char *sdk) -{ - FlatpakXml *bundle, *text, *prev, *id_node, *id_text_node, *metadata, *value; - g_autofree char *id_text = NULL; - int i; - - if (g_strcmp0 (component->element_name, "component") != 0) - return FALSE; - - id_node = flatpak_xml_find (component, "id", NULL); - if (id_node == NULL) - return FALSE; - - id_text_node = flatpak_xml_find (id_node, NULL, NULL); - if (id_text_node == NULL || id_text_node->text == NULL) - return FALSE; - - id_text = g_strstrip (g_strdup (id_text_node->text)); - - /* Drop .desktop file suffix (unless the actual app id ends with .desktop) */ - if (g_str_has_suffix (id_text, ".desktop") && - !g_str_has_suffix (id, ".desktop")) - id_text[strlen (id_text) - strlen (".desktop")] = 0; - - if (!g_str_has_prefix (id_text, id)) - { - g_warning ("Invalid id %s", id_text); - return FALSE; - } - - while ((bundle = flatpak_xml_find (component, "bundle", &prev)) != NULL) - flatpak_xml_free (flatpak_xml_unlink (bundle, prev)); - - bundle = flatpak_xml_new ("bundle"); - bundle->attribute_names = g_new0 (char *, 2 * 4); - bundle->attribute_values = g_new0 (char *, 2 * 4); - bundle->attribute_names[0] = g_strdup ("type"); - bundle->attribute_values[0] = g_strdup ("flatpak"); - - i = 1; - if (runtime && !g_str_has_prefix (runtime, "runtime/")) - { - bundle->attribute_names[i] = g_strdup ("runtime"); - bundle->attribute_values[i] = g_strdup (runtime); - i++; - } - - if (sdk) - { - bundle->attribute_names[i] = g_strdup ("sdk"); - bundle->attribute_values[i] = g_strdup (sdk); - i++; - } - - text = flatpak_xml_new (NULL); - text->text = g_strdup (ref); - flatpak_xml_add (bundle, text); - - flatpak_xml_add (component, flatpak_xml_new_text (" ")); - flatpak_xml_add (component, bundle); - flatpak_xml_add (component, flatpak_xml_new_text ("\n ")); - - if (tags != NULL && tags[0] != NULL) - { - metadata = flatpak_xml_find (component, "metadata", NULL); - if (metadata == NULL) - { - metadata = flatpak_xml_new ("metadata"); - metadata->attribute_names = g_new0 (char *, 1); - metadata->attribute_values = g_new0 (char *, 1); - - flatpak_xml_add (component, flatpak_xml_new_text (" ")); - flatpak_xml_add (component, metadata); - flatpak_xml_add (component, flatpak_xml_new_text ("\n ")); - } - - value = flatpak_xml_new ("value"); - value->attribute_names = g_new0 (char *, 2); - value->attribute_values = g_new0 (char *, 2); - value->attribute_names[0] = g_strdup ("key"); - value->attribute_values[0] = g_strdup ("X-Flatpak-Tags"); - flatpak_xml_add (metadata, flatpak_xml_new_text ("\n ")); - flatpak_xml_add (metadata, value); - flatpak_xml_add (metadata, flatpak_xml_new_text ("\n ")); - - text = flatpak_xml_new (NULL); - text->text = g_strjoinv (",", tags); - flatpak_xml_add (value, text); - } - - return TRUE; -} - -gboolean -flatpak_appstream_xml_migrate (FlatpakXml *source, - FlatpakXml *dest, - const char *ref, - const char *id, - GKeyFile *metadata) -{ - FlatpakXml *source_components; - FlatpakXml *dest_components; - FlatpakXml *component; - FlatpakXml *prev_component; - gboolean migrated = FALSE; - g_auto(GStrv) tags = NULL; - g_autofree const char *runtime = NULL; - g_autofree const char *sdk = NULL; - const char *group; - - if (source->first_child == NULL || - source->first_child->next_sibling != NULL || - g_strcmp0 (source->first_child->element_name, "components") != 0) - return FALSE; - - if (g_str_has_prefix (ref, "app/")) - group = FLATPAK_METADATA_GROUP_APPLICATION; - else - group = FLATPAK_METADATA_GROUP_RUNTIME; - - tags = g_key_file_get_string_list (metadata, group, FLATPAK_METADATA_KEY_TAGS, - NULL, NULL); - runtime = g_key_file_get_string (metadata, group, - FLATPAK_METADATA_KEY_RUNTIME, NULL); - sdk = g_key_file_get_string (metadata, group, FLATPAK_METADATA_KEY_SDK, NULL); - - source_components = source->first_child; - dest_components = dest->first_child; - - component = source_components->first_child; - prev_component = NULL; - while (component != NULL) - { - FlatpakXml *next = component->next_sibling; - - if (validate_component (component, ref, id, tags, runtime, sdk)) - { - flatpak_xml_add (dest_components, - flatpak_xml_unlink (component, prev_component)); - migrated = TRUE; - } - else - { - prev_component = component; - } - - component = next; - } - - return migrated; -} - -static gboolean -copy_icon (const char *id, - GFile *icons_dir, - OstreeRepo *repo, - OstreeMutableTree *size_mtree, - const char *size, - GError **error) -{ - g_autofree char *icon_name = g_strconcat (id, ".png", NULL); - g_autoptr(GFile) size_dir = g_file_get_child (icons_dir, size); - g_autoptr(GFile) icon_file = g_file_get_child (size_dir, icon_name); - const char *checksum; - - if (!ostree_repo_file_ensure_resolved (OSTREE_REPO_FILE(icon_file), NULL)) - { - g_debug ("No icon at size %s for %s", size, id); - return TRUE; - } - - checksum = ostree_repo_file_get_checksum (OSTREE_REPO_FILE(icon_file)); - if (!ostree_mutable_tree_replace_file (size_mtree, icon_name, checksum, error)) - return FALSE; - - return TRUE; -} - -static gboolean -extract_appstream (OstreeRepo *repo, - FlatpakXml *appstream_root, - FlatpakDecomposed *ref, - const char *id, - OstreeMutableTree *size1_mtree, - OstreeMutableTree *size2_mtree, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GFile) root = NULL; - g_autoptr(GFile) app_info_dir = NULL; - g_autoptr(GFile) xmls_dir = NULL; - g_autoptr(GFile) icons_dir = NULL; - g_autoptr(GFile) appstream_file = NULL; - g_autoptr(GFile) metadata = NULL; - g_autofree char *appstream_basename = NULL; - g_autoptr(GInputStream) in = NULL; - g_autoptr(FlatpakXml) xml_root = NULL; - g_autoptr(GKeyFile) keyfile = NULL; - - if (!ostree_repo_read_commit (repo, flatpak_decomposed_get_ref (ref), &root, NULL, NULL, error)) - return FALSE; - - keyfile = g_key_file_new (); - metadata = g_file_get_child (root, "metadata"); - if (g_file_query_exists (metadata, cancellable)) - { - g_autofree char *content = NULL; - gsize len; - - if (!g_file_load_contents (metadata, cancellable, &content, &len, NULL, error)) - return FALSE; - - if (!g_key_file_load_from_data (keyfile, content, len, G_KEY_FILE_NONE, error)) - return FALSE; - } - - app_info_dir = g_file_resolve_relative_path (root, "files/share/app-info"); - - xmls_dir = g_file_resolve_relative_path (app_info_dir, "xmls"); - icons_dir = g_file_resolve_relative_path (app_info_dir, "icons/flatpak"); - - appstream_basename = g_strconcat (id, ".xml.gz", NULL); - appstream_file = g_file_get_child (xmls_dir, appstream_basename); - - in = (GInputStream *) g_file_read (appstream_file, cancellable, error); - if (!in) - return FALSE; - - xml_root = flatpak_xml_parse (in, TRUE, cancellable, error); - if (xml_root == NULL) - return FALSE; - - if (flatpak_appstream_xml_migrate (xml_root, appstream_root, - flatpak_decomposed_get_ref (ref), id, keyfile)) - { - g_autoptr(GError) my_error = NULL; - FlatpakXml *components = appstream_root->first_child; - FlatpakXml *component = components->first_child; - - while (component != NULL) - { - FlatpakXml *component_id, *component_id_text_node; - g_autofree char *component_id_text = NULL; - char *component_id_suffix; - - if (g_strcmp0 (component->element_name, "component") != 0) - { - component = component->next_sibling; - continue; - } - - component_id = flatpak_xml_find (component, "id", NULL); - component_id_text_node = flatpak_xml_find (component_id, NULL, NULL); - - component_id_text = g_strstrip (g_strdup (component_id_text_node->text)); - - /* We're looking for a component that matches the app-id (id), but it - may have some further elements (separated by dot) and can also have - ".desktop" at the end which we need to strip out. Further complicating - things, some actual app ids ends in .desktop, such as org.telegram.desktop. */ - - component_id_suffix = component_id_text + strlen (id); /* Don't deref before we check for prefix match! */ - if (!g_str_has_prefix (component_id_text, id) || - (component_id_suffix[0] != 0 && component_id_suffix[0] != '.')) - { - component = component->next_sibling; - continue; - } - - if (g_str_has_suffix (component_id_suffix, ".desktop")) - component_id_suffix[strlen (component_id_suffix) - strlen (".desktop")] = 0; - - if (!copy_icon (component_id_text, icons_dir, repo, size1_mtree, "64x64", &my_error)) - { - g_print (_("Error copying 64x64 icon for component %s: %s\n"), component_id_text, my_error->message); - g_clear_error (&my_error); - } - - if (!copy_icon (component_id_text, icons_dir, repo, size2_mtree, "128x128", &my_error)) - { - g_print (_("Error copying 128x128 icon for component %s: %s\n"), component_id_text, my_error->message); - g_clear_error (&my_error); - } - - - /* We might match other prefixes, so keep on going */ - component = component->next_sibling; - } - } - - return TRUE; -} - -FlatpakXml * -flatpak_appstream_xml_new (void) -{ - FlatpakXml *appstream_root = NULL; - FlatpakXml *appstream_components; - - appstream_root = flatpak_xml_new ("root"); - appstream_components = flatpak_xml_new ("components"); - flatpak_xml_add (appstream_root, appstream_components); - flatpak_xml_add (appstream_components, flatpak_xml_new_text ("\n ")); - - appstream_components->attribute_names = g_new0 (char *, 3); - appstream_components->attribute_values = g_new0 (char *, 3); - appstream_components->attribute_names[0] = g_strdup ("version"); - appstream_components->attribute_values[0] = g_strdup ("0.8"); - appstream_components->attribute_names[1] = g_strdup ("origin"); - appstream_components->attribute_values[1] = g_strdup ("flatpak"); - - return appstream_root; -} - -gboolean -flatpak_appstream_xml_root_to_data (FlatpakXml *appstream_root, - GBytes **uncompressed, - GBytes **compressed, - GError **error) -{ - g_autoptr(GString) xml = NULL; - g_autoptr(GZlibCompressor) compressor = NULL; - g_autoptr(GOutputStream) out2 = NULL; - g_autoptr(GOutputStream) out = NULL; - - flatpak_xml_add (appstream_root->first_child, flatpak_xml_new_text ("\n")); - - xml = g_string_new (""); - flatpak_xml_to_string (appstream_root, xml); - - if (compressed) - { - compressor = g_zlib_compressor_new (G_ZLIB_COMPRESSOR_FORMAT_GZIP, -1); - out = g_memory_output_stream_new_resizable (); - out2 = g_converter_output_stream_new (out, G_CONVERTER (compressor)); - if (!g_output_stream_write_all (out2, xml->str, xml->len, - NULL, NULL, error)) - return FALSE; - if (!g_output_stream_close (out2, NULL, error)) - return FALSE; - } - - if (uncompressed) - *uncompressed = g_string_free_to_bytes (g_steal_pointer (&xml)); - - if (compressed) - *compressed = g_memory_output_stream_steal_as_bytes (G_MEMORY_OUTPUT_STREAM (out)); - - return TRUE; -} - -void -flatpak_appstream_xml_filter (FlatpakXml *appstream, - GRegex *allow_refs, - GRegex *deny_refs) -{ - FlatpakXml *components; - FlatpakXml *component; - FlatpakXml *prev_component, *old; - - for (components = appstream->first_child; - components != NULL; - components = components->next_sibling) - { - if (g_strcmp0 (components->element_name, "components") != 0) - continue; - - - prev_component = NULL; - component = components->first_child; - while (component != NULL) - { - FlatpakXml *bundle; - gboolean allow = FALSE; - - if (g_strcmp0 (component->element_name, "component") == 0) - { - bundle = flatpak_xml_find (component, "bundle", NULL); - if (bundle && bundle->first_child && bundle->first_child->text) - allow = flatpak_filters_allow_ref (allow_refs, deny_refs, bundle->first_child->text); - } - - if (allow) - { - prev_component = component; - component = component->next_sibling; - } - else - { - old = component; - - /* prev_component is same as before */ - component = component->next_sibling; - - flatpak_xml_unlink (old, prev_component); - flatpak_xml_free (old); - } - } - } -} - -/* This is similar to ostree_repo_list_refs(), but returns only valid flatpak - * refs, as FlatpakDecomposed. */ -static GHashTable * -flatpak_repo_list_flatpak_refs (OstreeRepo *repo, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GHashTable) refspecs = NULL; - g_autoptr(GHashTable) refs = NULL; - GHashTableIter iter; - gpointer key, value; - - if (!ostree_repo_list_refs_ext (repo, NULL, &refspecs, - OSTREE_REPO_LIST_REFS_EXT_EXCLUDE_REMOTES | OSTREE_REPO_LIST_REFS_EXT_EXCLUDE_MIRRORS, - cancellable, error)) - return NULL; - - refs = g_hash_table_new_full ((GHashFunc)flatpak_decomposed_hash, (GEqualFunc)flatpak_decomposed_equal, (GDestroyNotify)flatpak_decomposed_unref, g_free); - - g_hash_table_iter_init (&iter, refspecs); - while (g_hash_table_iter_next (&iter, &key, &value)) - { - const char *refstr = key; - const char *checksum = value; - FlatpakDecomposed *ref = NULL; - - ref = flatpak_decomposed_new_from_ref_take ((char *)refstr, NULL); - if (ref) - { - g_hash_table_iter_steal (&iter); - g_hash_table_insert (refs, ref, (char *)checksum); - } - } - - return g_steal_pointer (&refs); -} - -static gboolean -_flatpak_repo_generate_appstream (OstreeRepo *repo, - const char **gpg_key_ids, - const char *gpg_homedir, - FlatpakDecomposed **all_refs_keys, - guint n_keys, - GHashTable *all_commits, - const char *arch, - const char *subset, - guint64 timestamp, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(FlatpakXml) appstream_root = NULL; - g_autoptr(GBytes) xml_data = NULL; - g_autoptr(GBytes) xml_gz_data = NULL; - g_autoptr(OstreeMutableTree) mtree = ostree_mutable_tree_new (); - g_autoptr(OstreeMutableTree) icons_mtree = NULL; - g_autoptr(OstreeMutableTree) icons_flatpak_mtree = NULL; - g_autoptr(OstreeMutableTree) size1_mtree = NULL; - g_autoptr(OstreeMutableTree) size2_mtree = NULL; - const char *compat_arch; - compat_arch = flatpak_get_compat_arch (arch); - const char *branch_names[] = { "appstream", "appstream2" }; - const char *collection_id; - - if (subset != NULL && *subset != 0) - g_debug ("Generating appstream for %s, subset %s", arch, subset); - else - g_debug ("Generating appstream for %s", arch); - - collection_id = ostree_repo_get_collection_id (repo); - - if (!flatpak_mtree_ensure_dir_metadata (repo, mtree, cancellable, error)) - return FALSE; - - if (!flatpak_mtree_create_dir (repo, mtree, "icons", &icons_mtree, error)) - return FALSE; - - if (!flatpak_mtree_create_dir (repo, icons_mtree, "64x64", &size1_mtree, error)) - return FALSE; - - if (!flatpak_mtree_create_dir (repo, icons_mtree, "128x128", &size2_mtree, error)) - return FALSE; - - /* For compatibility with libappstream we create a $origin ("flatpak") subdirectory with symlinks - * to the size directories thus matching the standard merged appstream layout if we assume the - * appstream has origin=flatpak, which flatpak-builder creates. - * - * See https://github.com/ximion/appstream/pull/224 for details. - */ - if (!flatpak_mtree_create_dir (repo, icons_mtree, "flatpak", &icons_flatpak_mtree, error)) - return FALSE; - if (!flatpak_mtree_create_symlink (repo, icons_flatpak_mtree, "64x64", "../64x64", error)) - return FALSE; - if (!flatpak_mtree_create_symlink (repo, icons_flatpak_mtree, "128x128", "../128x128", error)) - return FALSE; - - appstream_root = flatpak_appstream_xml_new (); - - for (int i = 0; i < n_keys; i++) - { - FlatpakDecomposed *ref = all_refs_keys[i]; - GVariant *commit_v = NULL; - VarMetadataRef commit_metadata; - g_autoptr(GError) my_error = NULL; - g_autofree char *id = NULL; - - if (!flatpak_decomposed_is_arch (ref, arch)) - { - g_autoptr(FlatpakDecomposed) main_ref = NULL; - - /* Include refs that don't match the main arch (e.g. x86_64), if they match - the compat arch (e.g. i386) and the main arch version is not in the repo */ - if (compat_arch != NULL && flatpak_decomposed_is_arch (ref, compat_arch)) - main_ref = flatpak_decomposed_new_from_decomposed (ref, 0, NULL, compat_arch, NULL, NULL); - - if (main_ref == NULL || - g_hash_table_lookup (all_commits, main_ref)) - continue; - } - - commit_v = g_hash_table_lookup (all_commits, ref); - g_assert (commit_v != NULL); - - commit_metadata = var_commit_get_metadata (var_commit_from_gvariant (commit_v)); - if (var_metadata_lookup (commit_metadata, OSTREE_COMMIT_META_KEY_ENDOFLIFE, NULL, NULL) || - var_metadata_lookup (commit_metadata, OSTREE_COMMIT_META_KEY_ENDOFLIFE_REBASE, NULL, NULL)) - { - g_debug (_("%s is end-of-life, ignoring for appstream"), flatpak_decomposed_get_ref (ref)); - continue; - } - - if (*subset != 0) - { - VarVariantRef xa_subsets_v; - gboolean in_subset = FALSE; - - if (var_metadata_lookup (commit_metadata, "xa.subsets", NULL, &xa_subsets_v)) - { - VarArrayofstringRef xa_subsets = var_arrayofstring_from_variant (xa_subsets_v); - gsize len = var_arrayofstring_get_length (xa_subsets); - - for (gsize j = 0; j < len; j++) - { - const char *xa_subset = var_arrayofstring_get_at (xa_subsets, j); - if (strcmp (subset, xa_subset) == 0) - { - in_subset = TRUE; - break; - } - } - } - - if (!in_subset) - continue; - } - - id = flatpak_decomposed_dup_id (ref); - if (!extract_appstream (repo, appstream_root, - ref, id, size1_mtree, size2_mtree, - cancellable, &my_error)) - { - if (flatpak_decomposed_is_app (ref)) - g_print (_("No appstream data for %s: %s\n"), flatpak_decomposed_get_ref (ref), my_error->message); - continue; - } - } - - if (!flatpak_appstream_xml_root_to_data (appstream_root, &xml_data, &xml_gz_data, error)) - return FALSE; - - for (int i = 0; i < G_N_ELEMENTS (branch_names); i++) - { - gboolean skip_commit = FALSE; - const char *branch_prefix = branch_names[i]; - g_autoptr(GFile) root = NULL; - g_autofree char *branch = NULL; - g_autofree char *parent = NULL; - g_autofree char *commit_checksum = NULL; - - if (*subset != 0 && i == 0) - continue; /* No old-style branch for subsets */ - - if (*subset != 0) - branch = g_strdup_printf ("%s/%s-%s", branch_prefix, subset, arch); - else - branch = g_strdup_printf ("%s/%s", branch_prefix, arch); - - if (!flatpak_repo_resolve_rev (repo, collection_id, NULL, branch, TRUE, - &parent, cancellable, error)) - return FALSE; - - if (i == 0) - { - if (!flatpak_mtree_add_file_from_bytes (repo, xml_gz_data, mtree, "appstream.xml.gz", cancellable, error)) - return FALSE; - } - else - { - if (!ostree_mutable_tree_remove (mtree, "appstream.xml.gz", TRUE, error)) - return FALSE; - - if (!flatpak_mtree_add_file_from_bytes (repo, xml_data, mtree, "appstream.xml", cancellable, error)) - return FALSE; - } - - if (!ostree_repo_write_mtree (repo, mtree, &root, cancellable, error)) - return FALSE; - - /* No need to commit if nothing changed */ - if (parent) - { - g_autoptr(GFile) parent_root = NULL; - - if (!ostree_repo_read_commit (repo, parent, &parent_root, NULL, cancellable, error)) - return FALSE; - - if (g_file_equal (root, parent_root)) - { - skip_commit = TRUE; - g_debug ("Not updating %s, no change", branch); - } - } - - if (!skip_commit) - { - g_autoptr(GVariantDict) metadata_dict = NULL; - g_autoptr(GVariant) metadata = NULL; - - /* Add bindings to the metadata. Do this even if P2P support is not - * enabled, as it might be enable for other flatpak builds. */ - metadata_dict = g_variant_dict_new (NULL); - g_variant_dict_insert (metadata_dict, "ostree.collection-binding", - "s", (collection_id != NULL) ? collection_id : ""); - g_variant_dict_insert_value (metadata_dict, "ostree.ref-binding", - g_variant_new_strv ((const gchar * const *) &branch, 1)); - metadata = g_variant_ref_sink (g_variant_dict_end (metadata_dict)); - - if (timestamp > 0) - { - if (!ostree_repo_write_commit_with_time (repo, parent, "Update", NULL, metadata, - OSTREE_REPO_FILE (root), - timestamp, - &commit_checksum, - cancellable, error)) - return FALSE; - } - else - { - if (!ostree_repo_write_commit (repo, parent, "Update", NULL, metadata, - OSTREE_REPO_FILE (root), - &commit_checksum, cancellable, error)) - return FALSE; - } - - if (gpg_key_ids) - { - for (int j = 0; gpg_key_ids[j] != NULL; j++) - { - const char *keyid = gpg_key_ids[j]; - - if (!ostree_repo_sign_commit (repo, - commit_checksum, - keyid, - gpg_homedir, - cancellable, - error)) - return FALSE; - } - } - - g_debug ("Creating appstream branch %s", branch); - if (collection_id != NULL) - { - const OstreeCollectionRef collection_ref = { (char *) collection_id, branch }; - ostree_repo_transaction_set_collection_ref (repo, &collection_ref, commit_checksum); - } - else - { - ostree_repo_transaction_set_ref (repo, NULL, branch, commit_checksum); - } - } - } - - return TRUE; -} - - -gboolean -flatpak_repo_generate_appstream (OstreeRepo *repo, - const char **gpg_key_ids, - const char *gpg_homedir, - guint64 timestamp, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GHashTable) all_refs = NULL; - g_autoptr(GHashTable) all_commits = NULL; - g_autofree FlatpakDecomposed **all_refs_keys = NULL; - guint n_keys; - g_autoptr(GPtrArray) arches = NULL; /* (element-type utf8 utf8) */ - g_autoptr(GPtrArray) subsets = NULL; /* (element-type utf8 utf8) */ - g_autoptr(FlatpakRepoTransaction) transaction = NULL; - OstreeRepoTransactionStats stats; - - arches = g_ptr_array_new_with_free_func (g_free); - subsets = g_ptr_array_new_with_free_func (g_free); - - g_ptr_array_add (subsets, g_strdup ("")); - - all_refs = flatpak_repo_list_flatpak_refs (repo, cancellable, error); - if (all_refs == NULL) - return FALSE; - - all_commits = g_hash_table_new_full ((GHashFunc)flatpak_decomposed_hash, (GEqualFunc)flatpak_decomposed_equal, (GDestroyNotify)flatpak_decomposed_unref, (GDestroyNotify)g_variant_unref); - - GLNX_HASH_TABLE_FOREACH_KV (all_refs, FlatpakDecomposed *, ref, const char *, commit) - { - VarMetadataRef commit_metadata; - VarVariantRef xa_subsets_v; - const char *reverse_compat_arch; - char *new_arch = NULL; - g_autoptr(GVariant) commit_v = NULL; - - if (!ostree_repo_load_variant (repo, OSTREE_OBJECT_TYPE_COMMIT, commit, &commit_v, NULL)) - { - g_warning ("Couldn't load commit %s (ref %s)", commit, flatpak_decomposed_get_ref (ref)); - continue; - } - - g_hash_table_insert (all_commits, flatpak_decomposed_ref (ref), g_variant_ref (commit_v)); - - /* Compute list of subsets */ - commit_metadata = var_commit_get_metadata (var_commit_from_gvariant (commit_v)); - if (var_metadata_lookup (commit_metadata, "xa.subsets", NULL, &xa_subsets_v)) - { - VarArrayofstringRef xa_subsets = var_arrayofstring_from_variant (xa_subsets_v); - gsize len = var_arrayofstring_get_length (xa_subsets); - for (gsize j = 0; j < len; j++) - { - const char *subset = var_arrayofstring_get_at (xa_subsets, j); - - if (!flatpak_g_ptr_array_contains_string (subsets, subset)) - g_ptr_array_add (subsets, g_strdup (subset)); - } - } - - /* Compute list of arches */ - if (!flatpak_decomposed_is_arches (ref, arches->len, (const char **) arches->pdata)) - { - new_arch = flatpak_decomposed_dup_arch (ref); - g_ptr_array_add (arches, new_arch); - - /* If repo contains e.g. i386, also generated x86-64 appdata */ - reverse_compat_arch = flatpak_get_compat_arch_reverse (new_arch); - if (reverse_compat_arch != NULL && - !flatpak_g_ptr_array_contains_string (arches, reverse_compat_arch)) - g_ptr_array_add (arches, g_strdup (reverse_compat_arch)); - } - } - - g_ptr_array_sort (subsets, flatpak_strcmp0_ptr); - g_ptr_array_sort (arches, flatpak_strcmp0_ptr); - - all_refs_keys = (FlatpakDecomposed **) g_hash_table_get_keys_as_array (all_refs, &n_keys); - - /* Sort refs so that appdata order is stable for e.g. deltas */ - g_qsort_with_data (all_refs_keys, n_keys, sizeof (FlatpakDecomposed *), (GCompareDataFunc) flatpak_decomposed_strcmp_p, NULL); - - transaction = flatpak_repo_transaction_start (repo, cancellable, error); - if (transaction == NULL) - return FALSE; - - for (int l = 0; l < subsets->len; l++) - { - const char *subset = g_ptr_array_index (subsets, l); - - for (int k = 0; k < arches->len; k++) - { - const char *arch = g_ptr_array_index (arches, k); - - if (!_flatpak_repo_generate_appstream (repo, - gpg_key_ids, - gpg_homedir, - all_refs_keys, - n_keys, - all_commits, - arch, - subset, - timestamp, - cancellable, - error)) - return FALSE; - } - } - - if (!ostree_repo_commit_transaction (repo, &stats, cancellable, error)) - return FALSE; - - return TRUE; -} - -void -flatpak_extension_free (FlatpakExtension *extension) -{ - g_free (extension->id); - g_free (extension->installed_id); - g_free (extension->commit); - flatpak_decomposed_unref (extension->ref); - g_free (extension->directory); - g_free (extension->files_path); - g_free (extension->add_ld_path); - g_free (extension->subdir_suffix); - g_strfreev (extension->merge_dirs); - g_free (extension); -} - -static int -flatpak_extension_compare (gconstpointer _a, - gconstpointer _b) -{ - const FlatpakExtension *a = _a; - const FlatpakExtension *b = _b; - - return b->priority - a->priority; -} - -static FlatpakExtension * -flatpak_extension_new (const char *id, - const char *extension, - FlatpakDecomposed *ref, - const char *directory, - const char *add_ld_path, - const char *subdir_suffix, - char **merge_dirs, - GFile *files, - GFile *deploy_dir, - gboolean is_unmaintained, - OstreeRepo *repo) -{ - FlatpakExtension *ext = g_new0 (FlatpakExtension, 1); - g_autoptr(GBytes) deploy_data = NULL; - - ext->id = g_strdup (id); - ext->installed_id = g_strdup (extension); - ext->ref = flatpak_decomposed_ref (ref); - ext->directory = g_strdup (directory); - ext->files_path = g_file_get_path (files); - ext->add_ld_path = g_strdup (add_ld_path); - ext->subdir_suffix = g_strdup (subdir_suffix); - ext->merge_dirs = g_strdupv (merge_dirs); - ext->is_unmaintained = is_unmaintained; - - /* Unmaintained extensions won't have a deploy or commit; see - * https://github.com/flatpak/flatpak/issues/167 */ - if (deploy_dir && !is_unmaintained) - { - deploy_data = flatpak_load_deploy_data (deploy_dir, ref, repo, FLATPAK_DEPLOY_VERSION_ANY, NULL, NULL); - if (deploy_data) - ext->commit = g_strdup (flatpak_deploy_data_get_commit (deploy_data)); - } - - if (is_unmaintained) - ext->priority = 1000; - else - { - g_autoptr(GKeyFile) keyfile = g_key_file_new (); - g_autofree char *metadata_path = g_build_filename (ext->files_path, "../metadata", NULL); - - if (g_key_file_load_from_file (keyfile, metadata_path, G_KEY_FILE_NONE, NULL)) - ext->priority = g_key_file_get_integer (keyfile, - FLATPAK_METADATA_GROUP_EXTENSION_OF, - FLATPAK_METADATA_KEY_PRIORITY, - NULL); - } - - return ext; -} - -gboolean -flatpak_extension_matches_reason (const char *extension_id, - const char *reasons, - gboolean default_value) -{ - const char *extension_basename; - g_auto(GStrv) reason_list = NULL; - size_t i; - - if (reasons == NULL || *reasons == 0) - return default_value; - - extension_basename = strrchr (extension_id, '.'); - if (extension_basename == NULL) - return FALSE; - extension_basename += 1; - - reason_list = g_strsplit (reasons, ";", -1); - - for (i = 0; reason_list[i]; ++i) - { - const char *reason = reason_list[i]; - - if (strcmp (reason, "active-gl-driver") == 0) - { - /* handled below */ - const char **gl_drivers = flatpak_get_gl_drivers (); - size_t j; - - for (j = 0; gl_drivers[j]; j++) - { - if (strcmp (gl_drivers[j], extension_basename) == 0) - return TRUE; - } - } - else if (strcmp (reason, "active-gtk-theme") == 0) - { - const char *gtk_theme = flatpak_get_gtk_theme (); - if (strcmp (gtk_theme, extension_basename) == 0) - return TRUE; - } - else if (strcmp (reason, "have-intel-gpu") == 0) - { - /* Used for Intel VAAPI driver extension */ - if (flatpak_get_have_intel_gpu ()) - return TRUE; - } - else if (g_str_has_prefix (reason, "have-kernel-module-")) - { - const char *module_name = reason + strlen ("have-kernel-module-"); - - if (flatpak_get_have_kernel_module (module_name)) - return TRUE; - } - else if (g_str_has_prefix (reason, "on-xdg-desktop-")) - { - const char *desktop_name = reason + strlen ("on-xdg-desktop-"); - const char *current_desktop_var = g_getenv ("XDG_CURRENT_DESKTOP"); - g_auto(GStrv) current_desktop_names = NULL; - size_t j; - - if (!current_desktop_var) - continue; - - current_desktop_names = g_strsplit (current_desktop_var, ":", -1); - - for (j = 0; current_desktop_names[j]; ++j) - { - if (g_ascii_strcasecmp (desktop_name, current_desktop_names[j]) == 0) - return TRUE; - } - } - } - - return FALSE; -} - -static GList * -add_extension (GKeyFile *metakey, - const char *group, - const char *extension, - const char *arch, - const char *branch, - GList *res) -{ - FlatpakExtension *ext; - g_autofree char *directory = g_key_file_get_string (metakey, group, - FLATPAK_METADATA_KEY_DIRECTORY, - NULL); - g_autofree char *add_ld_path = g_key_file_get_string (metakey, group, - FLATPAK_METADATA_KEY_ADD_LD_PATH, - NULL); - g_auto(GStrv) merge_dirs = g_key_file_get_string_list (metakey, group, - FLATPAK_METADATA_KEY_MERGE_DIRS, - NULL, NULL); - g_autofree char *enable_if = g_key_file_get_string (metakey, group, - FLATPAK_METADATA_KEY_ENABLE_IF, - NULL); - g_autofree char *subdir_suffix = g_key_file_get_string (metakey, group, - FLATPAK_METADATA_KEY_SUBDIRECTORY_SUFFIX, - NULL); - g_autoptr(FlatpakDecomposed) ref = NULL; - gboolean is_unmaintained = FALSE; - g_autoptr(GFile) files = NULL; - g_autoptr(GFile) deploy_dir = NULL; - g_autoptr(FlatpakDir) dir = NULL; - - if (directory == NULL) - return res; - - ref = flatpak_decomposed_new_from_parts (FLATPAK_KINDS_RUNTIME, extension, arch, branch, NULL); - if (ref == NULL) - return res; - - files = flatpak_find_unmaintained_extension_dir_if_exists (extension, arch, branch, NULL); - - if (files == NULL) - { - deploy_dir = flatpak_find_deploy_dir_for_ref (ref, &dir, NULL, NULL); - if (deploy_dir) - files = g_file_get_child (deploy_dir, "files"); - } - else - is_unmaintained = TRUE; - - /* Prefer a full extension (org.freedesktop.Locale) over subdirectory ones (org.freedesktop.Locale.sv) */ - if (files != NULL) - { - if (flatpak_extension_matches_reason (extension, enable_if, TRUE)) - { - ext = flatpak_extension_new (extension, extension, ref, directory, - add_ld_path, subdir_suffix, merge_dirs, - files, deploy_dir, is_unmaintained, - is_unmaintained ? NULL : flatpak_dir_get_repo (dir)); - res = g_list_prepend (res, ext); - } - } - else if (g_key_file_get_boolean (metakey, group, - FLATPAK_METADATA_KEY_SUBDIRECTORIES, NULL)) - { - g_autofree char *prefix = g_strconcat (extension, ".", NULL); - g_auto(GStrv) ids = NULL; - g_auto(GStrv) unmaintained_refs = NULL; - int j; - - ids = flatpak_list_deployed_refs ("runtime", prefix, arch, branch, - NULL, NULL); - for (j = 0; ids != NULL && ids[j] != NULL; j++) - { - const char *id = ids[j]; - g_autofree char *extended_dir = g_build_filename (directory, id + strlen (prefix), NULL); - g_autoptr(FlatpakDecomposed) dir_ref = NULL; - g_autoptr(GFile) subdir_deploy_dir = NULL; - g_autoptr(GFile) subdir_files = NULL; - g_autoptr(FlatpakDir) subdir_dir = NULL; - - dir_ref = flatpak_decomposed_new_from_parts (FLATPAK_KINDS_RUNTIME, id, arch, branch, NULL); - if (dir_ref == NULL) - continue; - - subdir_deploy_dir = flatpak_find_deploy_dir_for_ref (dir_ref, &subdir_dir, NULL, NULL); - if (subdir_deploy_dir) - subdir_files = g_file_get_child (subdir_deploy_dir, "files"); - - if (subdir_files && flatpak_extension_matches_reason (id, enable_if, TRUE)) - { - ext = flatpak_extension_new (extension, id, dir_ref, extended_dir, - add_ld_path, subdir_suffix, merge_dirs, - subdir_files, subdir_deploy_dir, FALSE, - flatpak_dir_get_repo (subdir_dir)); - ext->needs_tmpfs = TRUE; - res = g_list_prepend (res, ext); - } - } - - unmaintained_refs = flatpak_list_unmaintained_refs (prefix, arch, branch, - NULL, NULL); - for (j = 0; unmaintained_refs != NULL && unmaintained_refs[j] != NULL; j++) - { - g_autofree char *extended_dir = g_build_filename (directory, unmaintained_refs[j] + strlen (prefix), NULL); - g_autoptr(FlatpakDecomposed) dir_ref = NULL; - g_autoptr(GFile) subdir_files = flatpak_find_unmaintained_extension_dir_if_exists (unmaintained_refs[j], arch, branch, NULL); - - dir_ref = flatpak_decomposed_new_from_parts (FLATPAK_KINDS_RUNTIME, unmaintained_refs[j], arch, branch, NULL); - if (dir_ref == NULL) - continue; - - if (subdir_files && flatpak_extension_matches_reason (unmaintained_refs[j], enable_if, TRUE)) - { - ext = flatpak_extension_new (extension, unmaintained_refs[j], dir_ref, - extended_dir, add_ld_path, subdir_suffix, - merge_dirs, subdir_files, NULL, TRUE, NULL); - ext->needs_tmpfs = TRUE; - res = g_list_prepend (res, ext); - } - } - } - - return res; -} - -void -flatpak_parse_extension_with_tag (const char *extension, - char **name, - char **tag) -{ - const char *tag_chr = strchr (extension, '@'); - - if (tag_chr) - { - if (name != NULL) - *name = g_strndup (extension, tag_chr - extension); - - /* Everything after the @ */ - if (tag != NULL) - *tag = g_strdup (tag_chr + 1); - - return; - } - - if (name != NULL) - *name = g_strdup (extension); - - if (tag != NULL) - *tag = NULL; -} - -GList * -flatpak_list_extensions (GKeyFile *metakey, - const char *arch, - const char *default_branch) -{ - g_auto(GStrv) groups = NULL; - int i, j; - GList *res; - - res = NULL; - - if (arch == NULL) - arch = flatpak_get_arch (); - - groups = g_key_file_get_groups (metakey, NULL); - for (i = 0; groups[i] != NULL; i++) - { - char *extension; - - if (g_str_has_prefix (groups[i], FLATPAK_METADATA_GROUP_PREFIX_EXTENSION) && - *(extension = (groups[i] + strlen (FLATPAK_METADATA_GROUP_PREFIX_EXTENSION))) != 0) - { - g_autofree char *version = g_key_file_get_string (metakey, groups[i], - FLATPAK_METADATA_KEY_VERSION, - NULL); - g_auto(GStrv) versions = g_key_file_get_string_list (metakey, groups[i], - FLATPAK_METADATA_KEY_VERSIONS, - NULL, NULL); - g_autofree char *name = NULL; - const char *default_branches[] = { default_branch, NULL}; - const char **branches; - - flatpak_parse_extension_with_tag (extension, &name, NULL); - - if (versions) - branches = (const char **) versions; - else - { - if (version) - default_branches[0] = version; - branches = default_branches; - } - - for (j = 0; branches[j] != NULL; j++) - res = add_extension (metakey, groups[i], name, arch, branches[j], res); - } - } - - return g_list_sort (g_list_reverse (res), flatpak_extension_compare); -} - -typedef struct -{ - FlatpakXml *current; -} XmlData; - -FlatpakXml * -flatpak_xml_new (const gchar *element_name) -{ - FlatpakXml *node = g_new0 (FlatpakXml, 1); - - node->element_name = g_strdup (element_name); - return node; -} - -FlatpakXml * -flatpak_xml_new_text (const gchar *text) -{ - FlatpakXml *node = g_new0 (FlatpakXml, 1); - - node->text = g_strdup (text); - return node; -} - -void -flatpak_xml_add (FlatpakXml *parent, FlatpakXml *node) -{ - node->parent = parent; - - if (parent->first_child == NULL) - parent->first_child = node; - else - parent->last_child->next_sibling = node; - parent->last_child = node; -} - -static void -xml_start_element (GMarkupParseContext *context, - const gchar *element_name, - const gchar **attribute_names, - const gchar **attribute_values, - gpointer user_data, - GError **error) -{ - XmlData *data = user_data; - FlatpakXml *node; - - node = flatpak_xml_new (element_name); - node->attribute_names = g_strdupv ((char **) attribute_names); - node->attribute_values = g_strdupv ((char **) attribute_values); - - flatpak_xml_add (data->current, node); - data->current = node; -} - -static void -xml_end_element (GMarkupParseContext *context, - const gchar *element_name, - gpointer user_data, - GError **error) -{ - XmlData *data = user_data; - - data->current = data->current->parent; -} - -static void -xml_text (GMarkupParseContext *context, - const gchar *text, - gsize text_len, - gpointer user_data, - GError **error) -{ - XmlData *data = user_data; - FlatpakXml *node; - - node = flatpak_xml_new (NULL); - node->text = g_strndup (text, text_len); - flatpak_xml_add (data->current, node); -} - -static void -xml_passthrough (GMarkupParseContext *context, - const gchar *passthrough_text, - gsize text_len, - gpointer user_data, - GError **error) -{ -} - -static GMarkupParser xml_parser = { - xml_start_element, - xml_end_element, - xml_text, - xml_passthrough, - NULL -}; - -void -flatpak_xml_free (FlatpakXml *node) -{ - FlatpakXml *child; - - if (node == NULL) - return; - - child = node->first_child; - while (child != NULL) - { - FlatpakXml *next = child->next_sibling; - flatpak_xml_free (child); - child = next; - } - - g_free (node->element_name); - g_free (node->text); - g_strfreev (node->attribute_names); - g_strfreev (node->attribute_values); - g_free (node); -} - - -void -flatpak_xml_to_string (FlatpakXml *node, GString *res) -{ - int i; - FlatpakXml *child; - - if (node->parent == NULL) - g_string_append (res, "\n"); - - if (node->element_name) - { - if (node->parent != NULL) - { - g_string_append (res, "<"); - g_string_append (res, node->element_name); - if (node->attribute_names) - { - for (i = 0; node->attribute_names[i] != NULL; i++) - { - g_string_append_printf (res, " %s=\"%s\"", - node->attribute_names[i], - node->attribute_values[i]); - } - } - if (node->first_child == NULL) - g_string_append (res, "/>"); - else - g_string_append (res, ">"); - } - - child = node->first_child; - while (child != NULL) - { - flatpak_xml_to_string (child, res); - child = child->next_sibling; - } - if (node->parent != NULL) - { - if (node->first_child != NULL) - g_string_append_printf (res, "", node->element_name); - } - } - else if (node->text) - { - g_autofree char *escaped = g_markup_escape_text (node->text, -1); - g_string_append (res, escaped); - } -} - -FlatpakXml * -flatpak_xml_unlink (FlatpakXml *node, - FlatpakXml *prev_sibling) -{ - FlatpakXml *parent = node->parent; - - if (parent == NULL) - return node; - - if (parent->first_child == node) - parent->first_child = node->next_sibling; - - if (parent->last_child == node) - parent->last_child = prev_sibling; - - if (prev_sibling) - prev_sibling->next_sibling = node->next_sibling; - - node->parent = NULL; - node->next_sibling = NULL; - - return node; -} - -FlatpakXml * -flatpak_xml_find (FlatpakXml *node, - const char *type, - FlatpakXml **prev_child_out) -{ - FlatpakXml *child = NULL; - FlatpakXml *prev_child = NULL; - - child = node->first_child; - prev_child = NULL; - while (child != NULL) - { - FlatpakXml *next = child->next_sibling; - - if (g_strcmp0 (child->element_name, type) == 0) - { - if (prev_child_out) - *prev_child_out = prev_child; - return child; - } - - prev_child = child; - child = next; - } - - return NULL; -} - - -FlatpakXml * -flatpak_xml_parse (GInputStream *in, - gboolean compressed, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GInputStream) real_in = NULL; - g_autoptr(FlatpakXml) xml_root = NULL; - XmlData data = { 0 }; - char buffer[32 * 1024]; - gssize len; - g_autoptr(GMarkupParseContext) ctx = NULL; - - if (compressed) - { - g_autoptr(GZlibDecompressor) decompressor = NULL; - decompressor = g_zlib_decompressor_new (G_ZLIB_COMPRESSOR_FORMAT_GZIP); - real_in = g_converter_input_stream_new (in, G_CONVERTER (decompressor)); - } - else - { - real_in = g_object_ref (in); - } - - xml_root = flatpak_xml_new ("root"); - data.current = xml_root; - - ctx = g_markup_parse_context_new (&xml_parser, - G_MARKUP_PREFIX_ERROR_POSITION, - &data, - NULL); - - while ((len = g_input_stream_read (real_in, buffer, sizeof (buffer), - cancellable, error)) > 0) - { - if (!g_markup_parse_context_parse (ctx, buffer, len, error)) - return NULL; - } - - if (len < 0) - return NULL; - - return g_steal_pointer (&xml_root); -} - -#define OSTREE_STATIC_DELTA_META_ENTRY_FORMAT "(uayttay)" -#define OSTREE_STATIC_DELTA_FALLBACK_FORMAT "(yaytt)" -#define OSTREE_STATIC_DELTA_SUPERBLOCK_FORMAT "(a{sv}tayay" OSTREE_COMMIT_GVARIANT_STRING "aya" OSTREE_STATIC_DELTA_META_ENTRY_FORMAT "a" OSTREE_STATIC_DELTA_FALLBACK_FORMAT ")" - -static inline guint64 -maybe_swap_endian_u64 (gboolean swap, - guint64 v) -{ - if (!swap) - return v; - return GUINT64_SWAP_LE_BE (v); -} - -static guint64 -flatpak_bundle_get_installed_size (GVariant *bundle, gboolean byte_swap) -{ - guint64 total_usize = 0; - g_autoptr(GVariant) meta_entries = NULL; - guint i, n_parts; - - g_variant_get_child (bundle, 6, "@a" OSTREE_STATIC_DELTA_META_ENTRY_FORMAT, &meta_entries); - n_parts = g_variant_n_children (meta_entries); - - for (i = 0; i < n_parts; i++) - { - guint32 version; - guint64 size, usize; - g_autoptr(GVariant) objects = NULL; - - g_variant_get_child (meta_entries, i, "(u@aytt@ay)", - &version, NULL, &size, &usize, &objects); - - total_usize += maybe_swap_endian_u64 (byte_swap, usize); - } - - return total_usize; -} - -GVariant * -flatpak_bundle_load (GFile *file, - char **commit, - FlatpakDecomposed **ref, - char **origin, - char **runtime_repo, - char **app_metadata, - guint64 *installed_size, - GBytes **gpg_keys, - char **collection_id, - GError **error) -{ - g_autoptr(GVariant) delta = NULL; - g_autoptr(GVariant) metadata = NULL; - g_autoptr(GBytes) bytes = NULL; - g_autoptr(GBytes) copy = NULL; - g_autoptr(GVariant) to_csum_v = NULL; - - guint8 endianness_char; - gboolean byte_swap = FALSE; - - GMappedFile *mfile = g_mapped_file_new (flatpak_file_get_path_cached (file), FALSE, error); - - if (mfile == NULL) - return NULL; - - bytes = g_mapped_file_get_bytes (mfile); - g_mapped_file_unref (mfile); - - delta = g_variant_new_from_bytes (G_VARIANT_TYPE (OSTREE_STATIC_DELTA_SUPERBLOCK_FORMAT), bytes, FALSE); - g_variant_ref_sink (delta); - - to_csum_v = g_variant_get_child_value (delta, 3); - if (!ostree_validate_structureof_csum_v (to_csum_v, error)) - return NULL; - - metadata = g_variant_get_child_value (delta, 0); - - if (g_variant_lookup (metadata, "ostree.endianness", "y", &endianness_char)) - { - int file_byte_order = G_BYTE_ORDER; - switch (endianness_char) - { - case 'l': - file_byte_order = G_LITTLE_ENDIAN; - break; - - case 'B': - file_byte_order = G_BIG_ENDIAN; - break; - - default: - break; - } - byte_swap = (G_BYTE_ORDER != file_byte_order); - } - - if (commit) - *commit = ostree_checksum_from_bytes_v (to_csum_v); - - if (installed_size) - *installed_size = flatpak_bundle_get_installed_size (delta, byte_swap); - - if (ref != NULL) - { - FlatpakDecomposed *the_ref = NULL; - g_autofree char *ref_str = NULL; - - if (!g_variant_lookup (metadata, "ref", "s", &ref_str)) - { - flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Invalid bundle, no ref in metadata")); - return NULL; - } - - the_ref = flatpak_decomposed_new_from_ref (ref_str, error); - if (the_ref == NULL) - return NULL; - - g_clear_pointer (ref, flatpak_decomposed_unref); - *ref = the_ref; - } - - if (origin != NULL) - { - if (!g_variant_lookup (metadata, "origin", "s", origin)) - *origin = NULL; - } - - if (runtime_repo != NULL) - { - if (!g_variant_lookup (metadata, "runtime-repo", "s", runtime_repo)) - *runtime_repo = NULL; - } - - if (collection_id != NULL) - { - if (!g_variant_lookup (metadata, "collection-id", "s", collection_id)) - { - *collection_id = NULL; - } - else if (**collection_id == '\0') - { - g_free (*collection_id); - *collection_id = NULL; - } - } - - if (app_metadata != NULL) - { - if (!g_variant_lookup (metadata, "metadata", "s", app_metadata)) - *app_metadata = NULL; - } - - if (gpg_keys != NULL) - { - g_autoptr(GVariant) gpg_value = g_variant_lookup_value (metadata, "gpg-keys", - G_VARIANT_TYPE ("ay")); - if (gpg_value) - { - gsize n_elements; - const char *data = g_variant_get_fixed_array (gpg_value, &n_elements, 1); - *gpg_keys = g_bytes_new (data, n_elements); - } - else - { - *gpg_keys = NULL; - } - } - - /* Make a copy of the data so we can return it after freeing the file */ - copy = g_bytes_new (g_variant_get_data (metadata), - g_variant_get_size (metadata)); - return g_variant_ref_sink (g_variant_new_from_bytes (g_variant_get_type (metadata), - copy, - FALSE)); -} - -gboolean -flatpak_pull_from_bundle (OstreeRepo *repo, - GFile *file, - const char *remote, - const char *ref, - gboolean require_gpg_signature, - GCancellable *cancellable, - GError **error) -{ - gsize metadata_size = 0; - g_autofree char *metadata_contents = NULL; - g_autofree char *to_checksum = NULL; - g_autoptr(GFile) root = NULL; - g_autoptr(GFile) metadata_file = NULL; - g_autoptr(GInputStream) in = NULL; - g_autoptr(OstreeGpgVerifyResult) gpg_result = NULL; - g_autoptr(GError) my_error = NULL; - g_autoptr(GVariant) metadata = NULL; - gboolean metadata_valid; - g_autofree char *remote_collection_id = NULL; - g_autofree char *collection_id = NULL; - - metadata = flatpak_bundle_load (file, &to_checksum, NULL, NULL, NULL, &metadata_contents, NULL, NULL, &collection_id, error); - if (metadata == NULL) - return FALSE; - - if (metadata_contents != NULL) - metadata_size = strlen (metadata_contents); - - if (!ostree_repo_get_remote_option (repo, remote, "collection-id", NULL, - &remote_collection_id, NULL)) - remote_collection_id = NULL; - - if (remote_collection_id != NULL && collection_id != NULL && - strcmp (remote_collection_id, collection_id) != 0) - return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote"), - collection_id, remote_collection_id); - - if (!ostree_repo_prepare_transaction (repo, NULL, cancellable, error)) - return FALSE; - - /* Don’t need to set the collection ID here, since the remote binds this ref to the collection. */ - ostree_repo_transaction_set_ref (repo, remote, ref, to_checksum); - - if (!ostree_repo_static_delta_execute_offline (repo, - file, - FALSE, - cancellable, - error)) - return FALSE; - - gpg_result = ostree_repo_verify_commit_ext (repo, to_checksum, - NULL, NULL, cancellable, &my_error); - if (gpg_result == NULL) - { - /* no gpg signature, we ignore this *if* there is no gpg key - * specified in the bundle or by the user */ - if (g_error_matches (my_error, OSTREE_GPG_ERROR, OSTREE_GPG_ERROR_NO_SIGNATURE) && - !require_gpg_signature) - { - g_clear_error (&my_error); - } - else - { - g_propagate_error (error, g_steal_pointer (&my_error)); - return FALSE; - } - } - else - { - /* If there is no valid gpg signature we fail, unless there is no gpg - key specified (on the command line or in the file) because then we - trust the source bundle. */ - if (ostree_gpg_verify_result_count_valid (gpg_result) == 0 && - require_gpg_signature) - return flatpak_fail_error (error, FLATPAK_ERROR_UNTRUSTED, _("GPG signatures found, but none are in trusted keyring")); - } - - if (!ostree_repo_read_commit (repo, to_checksum, &root, NULL, NULL, error)) - return FALSE; - - if (!ostree_repo_commit_transaction (repo, NULL, cancellable, error)) - return FALSE; - - /* We ensure that the actual installed metadata matches the one in the - header, because you may have made decisions on whether to install it or not - based on that data. */ - metadata_file = g_file_resolve_relative_path (root, "metadata"); - in = (GInputStream *) g_file_read (metadata_file, cancellable, NULL); - if (in != NULL) - { - g_autoptr(GMemoryOutputStream) data_stream = (GMemoryOutputStream *) g_memory_output_stream_new_resizable (); - - if (g_output_stream_splice (G_OUTPUT_STREAM (data_stream), in, - G_OUTPUT_STREAM_SPLICE_CLOSE_SOURCE, - cancellable, error) < 0) - return FALSE; - - metadata_valid = - metadata_contents != NULL && - metadata_size == g_memory_output_stream_get_data_size (data_stream) && - memcmp (metadata_contents, g_memory_output_stream_get_data (data_stream), metadata_size) == 0; - } - else - { - metadata_valid = (metadata_contents == NULL); - } - - if (!metadata_valid) - { - /* Immediately remove this broken commit */ - ostree_repo_set_ref_immediate (repo, remote, ref, NULL, cancellable, error); - return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Metadata in header and app are inconsistent")); - } - - return TRUE; -} - -typedef struct -{ - FlatpakOciPullProgress progress_cb; - gpointer progress_user_data; - guint64 total_size; - guint64 previous_layers_size; - guint32 n_layers; - guint32 pulled_layers; -} FlatpakOciPullProgressData; - -static void -oci_layer_progress (guint64 downloaded_bytes, - gpointer user_data) -{ - FlatpakOciPullProgressData *progress_data = user_data; - - if (progress_data->progress_cb) - progress_data->progress_cb (progress_data->total_size, progress_data->previous_layers_size + downloaded_bytes, - progress_data->n_layers, progress_data->pulled_layers, - progress_data->progress_user_data); -} - -gboolean -flatpak_mirror_image_from_oci (FlatpakOciRegistry *dst_registry, - FlatpakOciRegistry *registry, - const char *oci_repository, - const char *digest, - const char *remote, - const char *ref, - const char *delta_url, - OstreeRepo *repo, - FlatpakOciPullProgress progress_cb, - gpointer progress_user_data, - GCancellable *cancellable, - GError **error) -{ - FlatpakOciPullProgressData progress_data = { progress_cb, progress_user_data }; - g_autoptr(FlatpakOciVersioned) versioned = NULL; - FlatpakOciManifest *manifest = NULL; - g_autoptr(FlatpakOciDescriptor) manifest_desc = NULL; - g_autoptr(FlatpakOciManifest) delta_manifest = NULL; - g_autofree char *old_checksum = NULL; - g_autoptr(GVariant) old_commit = NULL; - g_autoptr(GFile) old_root = NULL; - OstreeRepoCommitState old_state = 0; - g_autofree char *old_diffid = NULL; - gsize versioned_size; - g_autoptr(FlatpakOciIndex) index = NULL; - g_autoptr(FlatpakOciImage) image_config = NULL; - int n_layers; - int i; - - if (!flatpak_oci_registry_mirror_blob (dst_registry, registry, oci_repository, TRUE, digest, NULL, NULL, NULL, cancellable, error)) - return FALSE; - - versioned = flatpak_oci_registry_load_versioned (dst_registry, NULL, digest, NULL, &versioned_size, cancellable, error); - if (versioned == NULL) - return FALSE; - - if (!FLATPAK_IS_OCI_MANIFEST (versioned)) - return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Image is not a manifest")); - - manifest = FLATPAK_OCI_MANIFEST (versioned); - - if (manifest->config.digest == NULL) - return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Image is not a manifest")); - - if (!flatpak_oci_registry_mirror_blob (dst_registry, registry, oci_repository, FALSE, manifest->config.digest, (const char **)manifest->config.urls, NULL, NULL, cancellable, error)) - return FALSE; - - image_config = flatpak_oci_registry_load_image_config (dst_registry, NULL, - manifest->config.digest, NULL, - NULL, cancellable, error); - if (image_config == NULL) - return FALSE; - - /* For deltas we ensure that the diffid and regular layers exists and match up */ - n_layers = flatpak_oci_manifest_get_n_layers (manifest); - if (n_layers == 0 || n_layers != flatpak_oci_image_get_n_layers (image_config)) - return flatpak_fail (error, _("Invalid OCI image config")); - - /* Look for delta manifest, and if it exists, the current (old) commit and its recorded diffid */ - if (flatpak_repo_resolve_rev (repo, NULL, remote, ref, FALSE, &old_checksum, NULL, NULL) && - ostree_repo_load_commit (repo, old_checksum, &old_commit, &old_state, NULL) && - (old_state == OSTREE_REPO_COMMIT_STATE_NORMAL) && - ostree_repo_read_commit (repo, old_checksum, &old_root, NULL, NULL, NULL)) - { - delta_manifest = flatpak_oci_registry_find_delta_manifest (registry, oci_repository, digest, delta_url, cancellable); - if (delta_manifest) - { - VarMetadataRef commit_metadata = var_commit_get_metadata (var_commit_from_gvariant (old_commit)); - const char *raw_old_diffid = var_metadata_lookup_string (commit_metadata, "xa.diff-id", NULL); - if (raw_old_diffid != NULL) - old_diffid = g_strconcat ("sha256:", raw_old_diffid, NULL); - } - } - - for (i = 0; manifest->layers[i] != NULL; i++) - { - FlatpakOciDescriptor *layer = manifest->layers[i]; - FlatpakOciDescriptor *delta_layer = NULL; - - if (delta_manifest) - delta_layer = flatpak_oci_manifest_find_delta_for (delta_manifest, old_diffid, image_config->rootfs.diff_ids[i]); - - if (delta_layer) - progress_data.total_size += delta_layer->size; - else - progress_data.total_size += layer->size; - progress_data.n_layers++; - } - - if (progress_cb) - progress_cb (progress_data.total_size, 0, - progress_data.n_layers, progress_data.pulled_layers, - progress_user_data); - - for (i = 0; manifest->layers[i] != NULL; i++) - { - FlatpakOciDescriptor *layer = manifest->layers[i]; - FlatpakOciDescriptor *delta_layer = NULL; - - if (delta_manifest) - delta_layer = flatpak_oci_manifest_find_delta_for (delta_manifest, old_diffid, image_config->rootfs.diff_ids[i]); - - if (delta_layer) - { - g_debug ("Using OCI delta %s for layer %s", delta_layer->digest, layer->digest); - g_autofree char *delta_digest = NULL; - glnx_autofd int delta_fd = flatpak_oci_registry_download_blob (registry, oci_repository, FALSE, - delta_layer->digest, (const char **)delta_layer->urls, - oci_layer_progress, &progress_data, - cancellable, error); - if (delta_fd == -1) - return FALSE; - - delta_digest = flatpak_oci_registry_apply_delta_to_blob (dst_registry, delta_fd, old_root, cancellable, error); - if (delta_digest == NULL) - return FALSE; - - if (g_strcmp0 (delta_digest, image_config->rootfs.diff_ids[i]) != 0) - return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Wrong layer checksum, expected %s, was %s"), image_config->rootfs.diff_ids[i], delta_digest); - } - else - { - if (!flatpak_oci_registry_mirror_blob (dst_registry, registry, oci_repository, FALSE, layer->digest, (const char **)layer->urls, - oci_layer_progress, &progress_data, - cancellable, error)) - return FALSE; - } - - progress_data.pulled_layers++; - progress_data.previous_layers_size += delta_layer ? delta_layer->size : layer->size; - } - - index = flatpak_oci_registry_load_index (dst_registry, NULL, NULL); - if (index == NULL) - index = flatpak_oci_index_new (); - - manifest_desc = flatpak_oci_descriptor_new (versioned->mediatype, digest, versioned_size); - - flatpak_oci_index_add_manifest (index, ref, manifest_desc); - - if (!flatpak_oci_registry_save_index (dst_registry, index, cancellable, error)) - return FALSE; - - return TRUE; -} - -char * -flatpak_pull_from_oci (OstreeRepo *repo, - FlatpakOciRegistry *registry, - const char *oci_repository, - const char *digest, - const char *delta_url, - FlatpakOciManifest *manifest, - FlatpakOciImage *image_config, - const char *remote, - const char *ref, - FlatpakPullFlags flags, - FlatpakOciPullProgress progress_cb, - gpointer progress_user_data, - GCancellable *cancellable, - GError **error) -{ - gboolean force_disable_deltas = (flags & FLATPAK_PULL_FLAGS_NO_STATIC_DELTAS) != 0; - g_autoptr(OstreeMutableTree) archive_mtree = NULL; - g_autoptr(GFile) archive_root = NULL; - g_autoptr(FlatpakOciManifest) delta_manifest = NULL; - g_autofree char *old_checksum = NULL; - g_autoptr(GVariant) old_commit = NULL; - g_autoptr(GFile) old_root = NULL; - OstreeRepoCommitState old_state = 0; - g_autofree char *old_diffid = NULL; - g_autofree char *commit_checksum = NULL; - const char *parent = NULL; - g_autofree char *subject = NULL; - g_autofree char *body = NULL; - g_autofree char *manifest_ref = NULL; - g_autofree char *full_ref = NULL; - const char *diffid; - guint64 timestamp = 0; - FlatpakOciPullProgressData progress_data = { progress_cb, progress_user_data }; - g_autoptr(GVariantBuilder) metadata_builder = g_variant_builder_new (G_VARIANT_TYPE ("a{sv}")); - g_autoptr(GVariant) metadata = NULL; - GHashTable *labels; - int n_layers; - int i; - - g_assert (ref != NULL); - g_assert (g_str_has_prefix (digest, "sha256:")); - - labels = flatpak_oci_image_get_labels (image_config); - if (labels) - flatpak_oci_parse_commit_labels (labels, ×tamp, - &subject, &body, - &manifest_ref, NULL, NULL, - metadata_builder); - - if (manifest_ref == NULL) - { - flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("No ref specified for OCI image %s"), digest); - return NULL; - } - - if (strcmp (manifest_ref, ref) != 0) - { - flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Wrong ref (%s) specified for OCI image %s, expected %s"), manifest_ref, digest, ref); - return NULL; - } - - g_variant_builder_add (metadata_builder, "{s@v}", "xa.alt-id", - g_variant_new_variant (g_variant_new_string (digest + strlen ("sha256:")))); - - /* For deltas we ensure that the diffid and regular layers exists and match up */ - n_layers = flatpak_oci_manifest_get_n_layers (manifest); - if (n_layers == 0 || n_layers != flatpak_oci_image_get_n_layers (image_config)) - { - flatpak_fail (error, _("Invalid OCI image config")); - return NULL; - } - - /* Assuming everyting looks good, we record the uncompressed checksum (the diff-id) of the last layer, - because that is what we can read back easily from the deploy dir, and thus is easy to use for applying deltas */ - diffid = image_config->rootfs.diff_ids[n_layers-1]; - if (diffid != NULL && g_str_has_prefix (diffid, "sha256:")) - g_variant_builder_add (metadata_builder, "{s@v}", "xa.diff-id", - g_variant_new_variant (g_variant_new_string (diffid + strlen ("sha256:")))); - - /* Look for delta manifest, and if it exists, the current (old) commit and its recorded diffid */ - if (!force_disable_deltas && - !flatpak_oci_registry_is_local (registry) && - flatpak_repo_resolve_rev (repo, NULL, remote, ref, FALSE, &old_checksum, NULL, NULL) && - ostree_repo_load_commit (repo, old_checksum, &old_commit, &old_state, NULL) && - (old_state == OSTREE_REPO_COMMIT_STATE_NORMAL) && - ostree_repo_read_commit (repo, old_checksum, &old_root, NULL, NULL, NULL)) - { - delta_manifest = flatpak_oci_registry_find_delta_manifest (registry, oci_repository, digest, delta_url, cancellable); - if (delta_manifest) - { - VarMetadataRef commit_metadata = var_commit_get_metadata (var_commit_from_gvariant (old_commit)); - const char *raw_old_diffid = var_metadata_lookup_string (commit_metadata, "xa.diff-id", NULL); - if (raw_old_diffid != NULL) - old_diffid = g_strconcat ("sha256:", raw_old_diffid, NULL); - } - } - - if (!ostree_repo_prepare_transaction (repo, NULL, cancellable, error)) - return NULL; - - /* There is no way to write a subset of the archive to a mtree, so instead - we write all of it and then build a new mtree with the subset */ - archive_mtree = ostree_mutable_tree_new (); - - for (i = 0; manifest->layers[i] != NULL; i++) - { - FlatpakOciDescriptor *layer = manifest->layers[i]; - FlatpakOciDescriptor *delta_layer = NULL; - - if (delta_manifest) - delta_layer = flatpak_oci_manifest_find_delta_for (delta_manifest, old_diffid, image_config->rootfs.diff_ids[i]); - - if (delta_layer) - progress_data.total_size += delta_layer->size; - else - progress_data.total_size += layer->size; - - progress_data.n_layers++; - } - - if (progress_cb) - progress_cb (progress_data.total_size, 0, - progress_data.n_layers, progress_data.pulled_layers, - progress_user_data); - - for (i = 0; manifest->layers[i] != NULL; i++) - { - FlatpakOciDescriptor *layer = manifest->layers[i]; - FlatpakOciDescriptor *delta_layer = NULL; - OstreeRepoImportArchiveOptions opts = { 0, }; - g_autoptr(FlatpakAutoArchiveRead) a = NULL; - glnx_autofd int layer_fd = -1; - glnx_autofd int blob_fd = -1; - g_autoptr(GChecksum) checksum = g_checksum_new (G_CHECKSUM_SHA256); - g_autoptr(GError) local_error = NULL; - const char *layer_checksum; - const char *expected_digest; - - if (delta_manifest) - delta_layer = flatpak_oci_manifest_find_delta_for (delta_manifest, old_diffid, image_config->rootfs.diff_ids[i]); - - opts.autocreate_parents = TRUE; - opts.ignore_unsupported_content = TRUE; - - if (delta_layer) - { - g_debug ("Using OCI delta %s for layer %s", delta_layer->digest, layer->digest); - expected_digest = image_config->rootfs.diff_ids[i]; /* The delta recreates the uncompressed tar so use that digest */ - } - else - { - layer_fd = glnx_steal_fd (&blob_fd); - expected_digest = layer->digest; - } - - blob_fd = flatpak_oci_registry_download_blob (registry, oci_repository, FALSE, - delta_layer ? delta_layer->digest : layer->digest, - (const char **)(delta_layer ? delta_layer->urls : layer->urls), - oci_layer_progress, &progress_data, - cancellable, &local_error); - - if (blob_fd == -1 && delta_layer == NULL && - flatpak_oci_registry_is_local (registry) && - g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND)) - { - /* Pulling regular layer from local repo and its not there, try the uncompressed version. - * This happens when we deploy via system helper using oci deltas */ - expected_digest = image_config->rootfs.diff_ids[i]; - blob_fd = flatpak_oci_registry_download_blob (registry, oci_repository, FALSE, - image_config->rootfs.diff_ids[i], NULL, - oci_layer_progress, &progress_data, - cancellable, NULL); /* No error here, we report the first error if this failes */ - } - - if (blob_fd == -1) - { - g_propagate_error (error, g_steal_pointer (&local_error)); - goto error; - } - - g_clear_error (&local_error); - - if (delta_layer) - { - layer_fd = flatpak_oci_registry_apply_delta (registry, blob_fd, old_root, cancellable, error); - if (layer_fd == -1) - goto error; - } - else - { - layer_fd = glnx_steal_fd (&blob_fd); - } - - a = archive_read_new (); -#ifdef HAVE_ARCHIVE_READ_SUPPORT_FILTER_ALL - archive_read_support_filter_all (a); -#else - archive_read_support_compression_all (a); -#endif - archive_read_support_format_all (a); - - if (!flatpak_archive_read_open_fd_with_checksum (a, layer_fd, checksum, error)) - goto error; - - if (!ostree_repo_import_archive_to_mtree (repo, &opts, a, archive_mtree, NULL, cancellable, error)) - goto error; - - if (archive_read_close (a) != ARCHIVE_OK) - { - propagate_libarchive_error (error, a); - goto error; - } - - layer_checksum = g_checksum_get_string (checksum); - if (!g_str_has_prefix (expected_digest, "sha256:") || - strcmp (expected_digest + strlen ("sha256:"), layer_checksum) != 0) - { - flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Wrong layer checksum, expected %s, was %s"), expected_digest, layer_checksum); - goto error; - } - - progress_data.pulled_layers++; - progress_data.previous_layers_size += delta_layer ? delta_layer->size : layer->size; - } - - if (!ostree_repo_write_mtree (repo, archive_mtree, &archive_root, cancellable, error)) - goto error; - - if (!ostree_repo_file_ensure_resolved ((OstreeRepoFile *) archive_root, error)) - goto error; - - metadata = g_variant_ref_sink (g_variant_builder_end (metadata_builder)); - if (!ostree_repo_write_commit_with_time (repo, - parent, - subject, - body, - metadata, - OSTREE_REPO_FILE (archive_root), - timestamp, - &commit_checksum, - cancellable, error)) - goto error; - - if (remote) - full_ref = g_strdup_printf ("%s:%s", remote, ref); - else - full_ref = g_strdup (ref); - - /* Don’t need to set the collection ID here, since the ref is bound to a - * collection via its remote. */ - ostree_repo_transaction_set_ref (repo, NULL, full_ref, commit_checksum); - - if (!ostree_repo_commit_transaction (repo, NULL, cancellable, error)) - return NULL; - - return g_steal_pointer (&commit_checksum); - -error: - - ostree_repo_abort_transaction (repo, cancellable, NULL); - return NULL; -} - -/* This allocates and locks a subdir of the tmp dir, using an existing - * one with the same prefix if it is not in use already. */ -gboolean -flatpak_allocate_tmpdir (int tmpdir_dfd, - const char *tmpdir_relpath, - const char *tmpdir_prefix, - char **tmpdir_name_out, - int *tmpdir_fd_out, - GLnxLockFile *file_lock_out, - gboolean *reusing_dir_out, - GCancellable *cancellable, - GError **error) -{ - gboolean reusing_dir = FALSE; - g_autofree char *tmpdir_name = NULL; - glnx_autofd int tmpdir_fd = -1; - g_auto(GLnxDirFdIterator) dfd_iter = { 0, }; - - /* Look for existing tmpdir (with same prefix) to reuse */ - if (!glnx_dirfd_iterator_init_at (tmpdir_dfd, tmpdir_relpath ? tmpdir_relpath : ".", FALSE, &dfd_iter, error)) - return FALSE; - - while (tmpdir_name == NULL) - { - struct dirent *dent; - glnx_autofd int existing_tmpdir_fd = -1; - g_autoptr(GError) local_error = NULL; - g_autofree char *lock_name = NULL; - - if (!glnx_dirfd_iterator_next_dent (&dfd_iter, &dent, cancellable, error)) - return FALSE; - - if (dent == NULL) - break; - - if (!g_str_has_prefix (dent->d_name, tmpdir_prefix)) - continue; - - /* Quickly skip non-dirs, if unknown we ignore ENOTDIR when opening instead */ - if (dent->d_type != DT_UNKNOWN && - dent->d_type != DT_DIR) - continue; - - if (!glnx_opendirat (dfd_iter.fd, dent->d_name, FALSE, - &existing_tmpdir_fd, &local_error)) - { - if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_DIRECTORY)) - { - continue; - } - else - { - g_propagate_error (error, g_steal_pointer (&local_error)); - return FALSE; - } - } - - lock_name = g_strconcat (dent->d_name, "-lock", NULL); - - /* We put the lock outside the dir, so we can hold the lock - * until the directory is fully removed */ - if (!glnx_make_lock_file (dfd_iter.fd, lock_name, LOCK_EX | LOCK_NB, - file_lock_out, &local_error)) - { - if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_WOULD_BLOCK)) - { - continue; - } - else - { - g_propagate_error (error, g_steal_pointer (&local_error)); - return FALSE; - } - } - - /* Touch the reused directory so that we don't accidentally - * remove it due to being old when cleaning up the tmpdir - */ - (void) futimens (existing_tmpdir_fd, NULL); - - /* We found an existing tmpdir which we managed to lock */ - tmpdir_name = g_strdup (dent->d_name); - tmpdir_fd = glnx_steal_fd (&existing_tmpdir_fd); - reusing_dir = TRUE; - } - - while (tmpdir_name == NULL) - { - g_autofree char *tmpdir_name_template = g_strconcat (tmpdir_prefix, "XXXXXX", NULL); - g_autoptr(GError) local_error = NULL; - g_autofree char *lock_name = NULL; - g_auto(GLnxTmpDir) new_tmpdir = { 0, }; - /* No existing tmpdir found, create a new */ - - if (!glnx_mkdtempat (dfd_iter.fd, tmpdir_name_template, 0777, - &new_tmpdir, error)) - return FALSE; - - lock_name = g_strconcat (new_tmpdir.path, "-lock", NULL); - - /* Note, at this point we can race with another process that picks up this - * new directory. If that happens we need to retry, making a new directory. */ - if (!glnx_make_lock_file (dfd_iter.fd, lock_name, LOCK_EX | LOCK_NB, - file_lock_out, &local_error)) - { - if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_WOULD_BLOCK)) - { - glnx_tmpdir_unset (&new_tmpdir); /* Don't delete */ - continue; - } - else - { - g_propagate_error (error, g_steal_pointer (&local_error)); - return FALSE; - } - } - - tmpdir_name = g_strdup (new_tmpdir.path); - tmpdir_fd = dup (new_tmpdir.fd); - glnx_tmpdir_unset (&new_tmpdir); /* Don't delete */ - } - - if (tmpdir_name_out) - *tmpdir_name_out = g_steal_pointer (&tmpdir_name); - - if (tmpdir_fd_out) - *tmpdir_fd_out = glnx_steal_fd (&tmpdir_fd); - - if (reusing_dir_out) - *reusing_dir_out = reusing_dir; - - return TRUE; -} - -gboolean -flatpak_allow_fuzzy_matching (const char *term) -{ - if (strchr (term, '/') != NULL || strchr (term, '.') != NULL) - return FALSE; - - /* This env var is used by the unit tests and only skips the tty test not the - * check above. - */ - if (g_strcmp0 (g_getenv ("FLATPAK_FORCE_ALLOW_FUZZY_MATCHING"), "1") == 0) - return TRUE; - - if (!isatty (STDIN_FILENO) || !isatty (STDOUT_FILENO)) - return FALSE; - - return TRUE; -} - -char * -flatpak_prompt (gboolean allow_empty, - const char *prompt, ...) -{ - char buf[512]; - va_list var_args; - g_autofree char *s = NULL; - - - va_start (var_args, prompt); - s = g_strdup_vprintf (prompt, var_args); - va_end (var_args); - - while (TRUE) - { - g_print ("%s: ", s); - - if (!isatty (STDIN_FILENO) || !isatty (STDOUT_FILENO)) - { - g_print ("n\n"); - return NULL; - } - - if (fgets (buf, sizeof (buf), stdin) == NULL) - return NULL; - - g_strstrip (buf); - - if (buf[0] != 0 || allow_empty) - return g_strdup (buf); - } -} - -char * -flatpak_password_prompt (const char *prompt, ...) -{ - char buf[512]; - va_list var_args; - g_autofree char *s = NULL; - gboolean was_echo; - - - va_start (var_args, prompt); - s = g_strdup_vprintf (prompt, var_args); - va_end (var_args); - - while (TRUE) - { - g_print ("%s: ", s); - - if (!isatty (STDIN_FILENO) || !isatty (STDOUT_FILENO)) - return NULL; - - was_echo = flatpak_set_tty_echo (FALSE); - - if (fgets (buf, sizeof (buf), stdin) == NULL) - return NULL; - - flatpak_set_tty_echo (was_echo); - - g_strstrip (buf); - - /* We stole the return, so manual new line */ - g_print ("\n"); - return g_strdup (buf); - } -} - - -gboolean -flatpak_yes_no_prompt (gboolean default_yes, const char *prompt, ...) -{ - char buf[512]; - va_list var_args; - g_autofree char *s = NULL; - - - va_start (var_args, prompt); - s = g_strdup_vprintf (prompt, var_args); - va_end (var_args); - - while (TRUE) - { - g_print ("%s %s: ", s, default_yes ? "[Y/n]" : "[y/n]"); - - if (!isatty (STDIN_FILENO) || !isatty (STDOUT_FILENO)) - { - g_print ("n\n"); - return FALSE; - } - - if (fgets (buf, sizeof (buf), stdin) == NULL) - return FALSE; - - g_strstrip (buf); - - if (default_yes && strlen (buf) == 0) - return TRUE; - - if (g_ascii_strcasecmp (buf, "y") == 0 || - g_ascii_strcasecmp (buf, "yes") == 0) - return TRUE; - - if (g_ascii_strcasecmp (buf, "n") == 0 || - g_ascii_strcasecmp (buf, "no") == 0) - return FALSE; - } -} - -static gboolean -is_number (const char *s) -{ - if (*s == '\0') - return FALSE; - - while (*s != 0) - { - if (!g_ascii_isdigit (*s)) - return FALSE; - s++; - } - - return TRUE; -} - -long -flatpak_number_prompt (gboolean default_yes, int min, int max, const char *prompt, ...) -{ - char buf[512]; - va_list var_args; - g_autofree char *s = NULL; - - va_start (var_args, prompt); - s = g_strdup_vprintf (prompt, var_args); - va_end (var_args); - - while (TRUE) - { - g_print ("%s [%d-%d]: ", s, min, max); - - if (!isatty (STDIN_FILENO) || !isatty (STDOUT_FILENO)) - { - g_print ("0\n"); - return 0; - } - - if (fgets (buf, sizeof (buf), stdin) == NULL) - return 0; - - g_strstrip (buf); - - if (default_yes && strlen (buf) == 0 && - max - min == 1 && min == 0) - return 1; - - if (is_number (buf)) - { - long res = strtol (buf, NULL, 10); - - if (res >= min && res <= max) - return res; - } - } -} - -static gboolean -parse_range (const char *s, int *a, int *b) -{ - char *p; - - p = strchr (s, '-'); - if (!p) - return FALSE; - - p++; - p[-1] = '\0'; - - if (is_number (s) && is_number (p)) - { - *a = (int) strtol (s, NULL, 10); - *b = (int) strtol (p, NULL, 10); - p[-1] = '-'; - return TRUE; - } - - p[-1] = '-'; - return FALSE; -} - -static void -add_number (GArray *numbers, - int num) -{ - int i; - - for (i = 0; i < numbers->len; i++) - { - if (g_array_index (numbers, int, i) == num) - return; - } - - g_array_append_val (numbers, num); -} - -int * -flatpak_parse_numbers (const char *buf, - int min, - int max) -{ - g_autoptr(GArray) numbers = g_array_new (FALSE, FALSE, sizeof (int)); - g_auto(GStrv) parts = g_strsplit_set (buf, " ,", 0); - int i, j; - - for (i = 0; parts[i]; i++) - { - int a, b; - - g_strstrip (parts[i]); - - if (parse_range (parts[i], &a, &b) && - min <= a && a <= max && - min <= b && b <= max) - { - for (j = a; j <= b; j++) - add_number (numbers, j); - } - else if (is_number (parts[i])) - { - int res = (int) strtol (parts[i], NULL, 10); - if (min <= res && res <= max) - add_number (numbers, res); - else - return NULL; - } - else - return NULL; - } - - j = 0; - g_array_append_val (numbers, j); - - return (int *) g_array_free (g_steal_pointer (&numbers), FALSE); -} - -/* Returns a 0-terminated array of ints. Free with g_free */ -int * -flatpak_numbers_prompt (gboolean default_yes, int min, int max, const char *prompt, ...) -{ - char buf[512]; - va_list var_args; - g_autofree char *s = NULL; - g_autofree int *choice = g_new0 (int, 2); - int *numbers; - - va_start (var_args, prompt); - s = g_strdup_vprintf (prompt, var_args); - va_end (var_args); - - while (TRUE) - { - g_print ("%s [%d-%d]: ", s, min, max); - - if (!isatty (STDIN_FILENO) || !isatty (STDOUT_FILENO)) - { - g_print ("0\n"); - choice[0] = 0; - return g_steal_pointer (&choice); - } - - if (fgets (buf, sizeof (buf), stdin) == NULL) - { - choice[0] = 0; - return g_steal_pointer (&choice); - } - - g_strstrip (buf); - - if (default_yes && strlen (buf) == 0 && - max - min == 1 && min == 0) - { - choice[0] = 0; - return g_steal_pointer (&choice); - } - - numbers = flatpak_parse_numbers (buf, min, max); - if (numbers) - return numbers; - } -} - -void -flatpak_format_choices (const char **choices, - const char *prompt, - ...) -{ - va_list var_args; - g_autofree char *s = NULL; - int i; - - va_start (var_args, prompt); - s = g_strdup_vprintf (prompt, var_args); - va_end (var_args); - - g_print ("%s\n\n", s); - for (i = 0; choices[i]; i++) - g_print (" %2d) %s\n", i + 1, choices[i]); - g_print ("\n"); -} - -static gint -string_length_compare_func (gconstpointer a, - gconstpointer b) -{ - return strlen (*(char * const *) a) - strlen (*(char * const *) b); -} - -/* Sort a string array by decreasing length */ -char ** -flatpak_strv_sort_by_length (const char * const *strv) -{ - GPtrArray *array; - int i; - - if (strv == NULL) - return NULL; - - /* Combine both */ - array = g_ptr_array_new (); - - for (i = 0; strv[i] != NULL; i++) - g_ptr_array_add (array, g_strdup (strv[i])); - - g_ptr_array_sort (array, string_length_compare_func); - - g_ptr_array_add (array, NULL); - return (char **) g_ptr_array_free (array, FALSE); -} - -char ** -flatpak_strv_merge (char **strv1, - char **strv2) -{ - GPtrArray *array; - int i; - - /* Maybe either (or both) is unspecified */ - if (strv1 == NULL) - return g_strdupv (strv2); - if (strv2 == NULL) - return g_strdupv (strv1); - - /* Combine both */ - array = g_ptr_array_new (); - - for (i = 0; strv1[i] != NULL; i++) - { - if (!flatpak_g_ptr_array_contains_string (array, strv1[i])) - g_ptr_array_add (array, g_strdup (strv1[i])); - } - - for (i = 0; strv2[i] != NULL; i++) - { - if (!flatpak_g_ptr_array_contains_string (array, strv2[i])) - g_ptr_array_add (array, g_strdup (strv2[i])); - } - - g_ptr_array_add (array, NULL); - return (char **) g_ptr_array_free (array, FALSE); -} - -/* In this NULL means don't care about these paths, while - an empty array means match anything */ -char ** -flatpak_subpaths_merge (char **subpaths1, - char **subpaths2) -{ - char **res; - - if (subpaths1 != NULL && subpaths1[0] == NULL) - return g_strdupv (subpaths1); - if (subpaths2 != NULL && subpaths2[0] == NULL) - return g_strdupv (subpaths2); - - res = flatpak_strv_merge (subpaths1, subpaths2); - if (res) - qsort (res, g_strv_length (res), sizeof (const char *), flatpak_strcmp0_ptr); - - return res; -} - -const char * const * -flatpak_get_locale_categories (void) -{ - /* See locale(7) for these categories */ - static const char * const categories[] = { - "LANG", "LC_ALL", "LC_MESSAGES", "LC_ADDRESS", "LC_COLLATE", "LC_CTYPE", - "LC_IDENTIFICATION", "LC_MONETARY", "LC_MEASUREMENT", "LC_NAME", "LC_NUMERIC", - "LC_PAPER", "LC_TELEPHONE", "LC_TIME", - NULL - }; - - return categories; -} - -char * -flatpak_get_lang_from_locale (const char *locale) -{ - g_autofree char *lang = g_strdup (locale); - char *c; - - c = strchr (lang, '@'); - if (c != NULL) - *c = 0; - c = strchr (lang, '_'); - if (c != NULL) - *c = 0; - c = strchr (lang, '.'); - if (c != NULL) - *c = 0; - - if (strcmp (lang, "C") == 0) - return NULL; - - return g_steal_pointer (&lang); -} - -gboolean -flatpak_g_ptr_array_contains_string (GPtrArray *array, const char *str) -{ - int i; - - for (i = 0; i < array->len; i++) - { - if (strcmp (g_ptr_array_index (array, i), str) == 0) - return TRUE; - } - return FALSE; -} - -#if !GLIB_CHECK_VERSION (2, 58, 0) -/* All this code is backported directly from glib 2.66 */ - -typedef struct _GLanguageNamesCache GLanguageNamesCache; - -struct _GLanguageNamesCache { - gchar *languages; - gchar **language_names; -}; - -static void -language_names_cache_free (gpointer data) -{ - GLanguageNamesCache *cache = data; - g_free (cache->languages); - g_strfreev (cache->language_names); - g_free (cache); -} - -/* read an alias file for the locales */ -static void -read_aliases (const gchar *file, - GHashTable *alias_table) -{ - FILE *fp; - char buf[256]; - - fp = fopen (file,"r"); - if (!fp) - return; - while (fgets (buf, 256, fp)) - { - char *p, *q; - - g_strstrip (buf); - - /* Line is a comment */ - if ((buf[0] == '#') || (buf[0] == '\0')) - continue; - - /* Reads first column */ - for (p = buf, q = NULL; *p; p++) { - if ((*p == '\t') || (*p == ' ') || (*p == ':')) { - *p = '\0'; - q = p+1; - while ((*q == '\t') || (*q == ' ')) { - q++; - } - break; - } - } - /* The line only had one column */ - if (!q || *q == '\0') - continue; - - /* Read second column */ - for (p = q; *p; p++) { - if ((*p == '\t') || (*p == ' ')) { - *p = '\0'; - break; - } - } - - /* Add to alias table if necessary */ - if (!g_hash_table_lookup (alias_table, buf)) { - g_hash_table_insert (alias_table, g_strdup (buf), g_strdup (q)); - } - } - fclose (fp); -} - -static char * -unalias_lang (char *lang) -{ - static GHashTable *alias_table = NULL; - char *p; - int i; - - if (g_once_init_enter (&alias_table)) - { - GHashTable *table = g_hash_table_new (g_str_hash, g_str_equal); - read_aliases ("/usr/share/locale/locale.alias", table); - g_once_init_leave (&alias_table, table); - } - - i = 0; - while ((p = g_hash_table_lookup (alias_table, lang)) && (strcmp (p, lang) != 0)) - { - lang = p; - if (i++ == 30) - { - static gboolean said_before = FALSE; - if (!said_before) - g_warning ("Too many alias levels for a locale, " - "may indicate a loop"); - said_before = TRUE; - return lang; - } - } - return lang; -} - -/* Mask for components of locale spec. The ordering here is from - * least significant to most significant - */ -enum -{ - COMPONENT_CODESET = 1 << 0, - COMPONENT_TERRITORY = 1 << 1, - COMPONENT_MODIFIER = 1 << 2 -}; - -/* Break an X/Open style locale specification into components - */ -static guint -explode_locale (const gchar *locale, - gchar **language, - gchar **territory, - gchar **codeset, - gchar **modifier) -{ - const gchar *uscore_pos; - const gchar *at_pos; - const gchar *dot_pos; - - guint mask = 0; - - uscore_pos = strchr (locale, '_'); - dot_pos = strchr (uscore_pos ? uscore_pos : locale, '.'); - at_pos = strchr (dot_pos ? dot_pos : (uscore_pos ? uscore_pos : locale), '@'); - - if (at_pos) - { - mask |= COMPONENT_MODIFIER; - *modifier = g_strdup (at_pos); - } - else - at_pos = locale + strlen (locale); - - if (dot_pos) - { - mask |= COMPONENT_CODESET; - *codeset = g_strndup (dot_pos, at_pos - dot_pos); - } - else - dot_pos = at_pos; - - if (uscore_pos) - { - mask |= COMPONENT_TERRITORY; - *territory = g_strndup (uscore_pos, dot_pos - uscore_pos); - } - else - uscore_pos = dot_pos; - - *language = g_strndup (locale, uscore_pos - locale); - - return mask; -} - -/* - * Compute all interesting variants for a given locale name - - * by stripping off different components of the value. - * - * For simplicity, we assume that the locale is in - * X/Open format: language[_territory][.codeset][@modifier] - * - * TODO: Extend this to handle the CEN format (see the GNUlibc docs) - * as well. We could just copy the code from glibc wholesale - * but it is big, ugly, and complicated, so I'm reluctant - * to do so when this should handle 99% of the time... - */ -static void -append_locale_variants (GPtrArray *array, - const gchar *locale) -{ - gchar *language = NULL; - gchar *territory = NULL; - gchar *codeset = NULL; - gchar *modifier = NULL; - - guint mask; - guint i, j; - - g_return_if_fail (locale != NULL); - - mask = explode_locale (locale, &language, &territory, &codeset, &modifier); - - /* Iterate through all possible combinations, from least attractive - * to most attractive. - */ - for (j = 0; j <= mask; ++j) - { - i = mask - j; - - if ((i & ~mask) == 0) - { - gchar *val = g_strconcat (language, - (i & COMPONENT_TERRITORY) ? territory : "", - (i & COMPONENT_CODESET) ? codeset : "", - (i & COMPONENT_MODIFIER) ? modifier : "", - NULL); - g_ptr_array_add (array, val); - } - } - - g_free (language); - if (mask & COMPONENT_CODESET) - g_free (codeset); - if (mask & COMPONENT_TERRITORY) - g_free (territory); - if (mask & COMPONENT_MODIFIER) - g_free (modifier); -} - -/* The following is (partly) taken from the gettext package. - Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. */ - -static const gchar * -guess_category_value (const gchar *category_name) -{ - const gchar *retval; - - /* The highest priority value is the 'LANGUAGE' environment - variable. This is a GNU extension. */ - retval = g_getenv ("LANGUAGE"); - if ((retval != NULL) && (retval[0] != '\0')) - return retval; - - /* 'LANGUAGE' is not set. So we have to proceed with the POSIX - methods of looking to 'LC_ALL', 'LC_xxx', and 'LANG'. On some - systems this can be done by the 'setlocale' function itself. */ - - /* Setting of LC_ALL overwrites all other. */ - retval = g_getenv ("LC_ALL"); - if ((retval != NULL) && (retval[0] != '\0')) - return retval; - - /* Next comes the name of the desired category. */ - retval = g_getenv (category_name); - if ((retval != NULL) && (retval[0] != '\0')) - return retval; - - /* Last possibility is the LANG environment variable. */ - retval = g_getenv ("LANG"); - if ((retval != NULL) && (retval[0] != '\0')) - return retval; - -#ifdef G_PLATFORM_WIN32 - /* g_win32_getlocale() first checks for LC_ALL, LC_MESSAGES and - * LANG, which we already did above. Oh well. The main point of - * calling g_win32_getlocale() is to get the thread's locale as used - * by Windows and the Microsoft C runtime (in the "English_United - * States" format) translated into the Unixish format. - */ - { - char *locale = g_win32_getlocale (); - retval = g_intern_string (locale); - g_free (locale); - return retval; - } -#endif - - return NULL; -} - -static const gchar * const * -g_get_language_names_with_category (const gchar *category_name) -{ - static GPrivate cache_private = G_PRIVATE_INIT ((void (*)(gpointer)) g_hash_table_unref); - GHashTable *cache = g_private_get (&cache_private); - const gchar *languages; - GLanguageNamesCache *name_cache; - - g_return_val_if_fail (category_name != NULL, NULL); - - if (!cache) - { - cache = g_hash_table_new_full (g_str_hash, g_str_equal, - g_free, language_names_cache_free); - g_private_set (&cache_private, cache); - } - - languages = guess_category_value (category_name); - if (!languages) - languages = "C"; - - name_cache = (GLanguageNamesCache *) g_hash_table_lookup (cache, category_name); - if (!(name_cache && name_cache->languages && - strcmp (name_cache->languages, languages) == 0)) - { - GPtrArray *array; - gchar **alist, **a; - - g_hash_table_remove (cache, category_name); - - array = g_ptr_array_sized_new (8); - - alist = g_strsplit (languages, ":", 0); - for (a = alist; *a; a++) - append_locale_variants (array, unalias_lang (*a)); - g_strfreev (alist); - g_ptr_array_add (array, g_strdup ("C")); - g_ptr_array_add (array, NULL); - - name_cache = g_new0 (GLanguageNamesCache, 1); - name_cache->languages = g_strdup (languages); - name_cache->language_names = (gchar **) g_ptr_array_free (array, FALSE); - g_hash_table_insert (cache, g_strdup (category_name), name_cache); - } - - return (const gchar * const *) name_cache->language_names; -} - -#endif - -char ** -flatpak_get_current_locale_langs (void) -{ - const char * const *categories = flatpak_get_locale_categories (); - GPtrArray *langs = g_ptr_array_new (); - int i; - - for (; categories != NULL && *categories != NULL; categories++) - { - const gchar * const *locales = g_get_language_names_with_category (*categories); - - for (i = 0; locales[i] != NULL; i++) - { - g_autofree char *lang = flatpak_get_lang_from_locale (locales[i]); - if (lang != NULL && !flatpak_g_ptr_array_contains_string (langs, lang)) - g_ptr_array_add (langs, g_steal_pointer (&lang)); - } - } - - g_ptr_array_sort (langs, flatpak_strcmp0_ptr); - g_ptr_array_add (langs, NULL); - - return (char **) g_ptr_array_free (langs, FALSE); -} - -void -flatpak_log_dir_access (FlatpakDir *dir) -{ - if (dir != NULL) - { - GFile *dir_path = NULL; - g_autofree char *dir_path_str = NULL; - g_autofree char *dir_name = NULL; - - dir_path = flatpak_dir_get_path (dir); - if (dir_path != NULL) - dir_path_str = g_file_get_path (dir_path); - dir_name = flatpak_dir_get_name (dir); - g_debug ("Opening %s flatpak installation at path %s", dir_name, dir_path_str); - } -} - -gboolean -flatpak_check_required_version (const char *ref, - GKeyFile *metakey, - GError **error) -{ - g_auto(GStrv) required_versions = NULL; - const char *group; - int max_required_major = 0, max_required_minor = 0; - const char *max_required_version = "0.0"; - int i; - - if (g_str_has_prefix (ref, "app/")) - group = "Application"; - else - group = "Runtime"; - - /* We handle handle multiple version requirements here. Each requirement must - * be in the form major.minor.micro, and if the flatpak version matches the - * major.minor part, t must be equal or later in the micro. If the major.minor part - * doesn't exactly match any of the specified requirements it must be larger - * than the maximum specified requirement. - * - * For example, specifying - * required-flatpak=1.6.2;1.4.2;1.0.2; - * would allow flatpak versions: - * 1.7.0, 1.6.2, 1.6.3, 1.4.2, 1.4.3, 1.0.2, 1.0.3 - * but not: - * 1.6.1, 1.4.1 or 1.2.100. - * - * The goal here is to be able to specify a version (like 1.6.2 above) where a feature - * was introduced, but also allow backports of said feature to earlier version series. - * - * Earlier versions that only support specifying one version will only look at the first - * element in the list, so put the largest version first. - */ - required_versions = g_key_file_get_string_list (metakey, group, "required-flatpak", NULL, NULL); - if (required_versions == 0 || required_versions[0] == NULL) - return TRUE; - - for (i = 0; required_versions[i] != NULL; i++) - { - int required_major, required_minor, required_micro; - const char *required_version = required_versions[i]; - - if (sscanf (required_version, "%d.%d.%d", &required_major, &required_minor, &required_micro) != 3) - return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, - _("Invalid require-flatpak argument %s"), required_version); - else - { - /* If flatpak is in the same major.minor series as the requirement, do a micro check */ - if (required_major == PACKAGE_MAJOR_VERSION && required_minor == PACKAGE_MINOR_VERSION) - { - if (required_micro <= PACKAGE_MICRO_VERSION) - return TRUE; - else - return flatpak_fail_error (error, FLATPAK_ERROR_NEED_NEW_FLATPAK, - _("%s needs a later flatpak version (%s)"), - ref, required_version); - } - - /* Otherwise, keep track of the largest major.minor that is required */ - if ((required_major > max_required_major) || - (required_major == max_required_major && - required_minor > max_required_minor)) - { - max_required_major = required_major; - max_required_minor = required_minor; - max_required_version = required_version; - } - } - } - - if (max_required_major > PACKAGE_MAJOR_VERSION || - (max_required_major == PACKAGE_MAJOR_VERSION && max_required_minor > PACKAGE_MINOR_VERSION)) - return flatpak_fail_error (error, FLATPAK_ERROR_NEED_NEW_FLATPAK, - _("%s needs a later flatpak version (%s)"), - ref, max_required_version); - - return TRUE; -} - -static gboolean -str_has_sign (const gchar *str) -{ - return str[0] == '-' || str[0] == '+'; -} - -static gboolean -str_has_hex_prefix (const gchar *str) -{ - return str[0] == '0' && g_ascii_tolower (str[1]) == 'x'; -} - -/* Copied from glib-2.54.0 to avoid the Glib's version bump. - * Function name in glib: g_ascii_string_to_unsigned - * If this is being dropped(migration to g_ascii_string_to_unsigned) - * make sure to remove str_has_hex_prefix and str_has_sign helpers too. - */ -gboolean -flatpak_utils_ascii_string_to_unsigned (const gchar *str, - guint base, - guint64 min, - guint64 max, - guint64 *out_num, - GError **error) -{ - guint64 number; - const gchar *end_ptr = NULL; - gint saved_errno = 0; - - g_return_val_if_fail (str != NULL, FALSE); - g_return_val_if_fail (base >= 2 && base <= 36, FALSE); - g_return_val_if_fail (min <= max, FALSE); - g_return_val_if_fail (error == NULL || *error == NULL, FALSE); - - if (str[0] == '\0') - { - g_set_error_literal (error, - G_IO_ERROR, G_IO_ERROR_INVALID_ARGUMENT, - _("Empty string is not a number")); - return FALSE; - } - - errno = 0; - number = g_ascii_strtoull (str, (gchar **) &end_ptr, base); - saved_errno = errno; - - if (/* We do not allow leading whitespace, but g_ascii_strtoull - * accepts it and just skips it, so we need to check for it - * ourselves. - */ - g_ascii_isspace (str[0]) || - /* Unsigned number should have no sign. - */ - str_has_sign (str) || - /* We don't support hexadecimal numbers prefixed with 0x or - * 0X. - */ - (base == 16 && str_has_hex_prefix (str)) || - (saved_errno != 0 && saved_errno != ERANGE) || - end_ptr == NULL || - *end_ptr != '\0') - { - g_set_error (error, - G_IO_ERROR, G_IO_ERROR_INVALID_ARGUMENT, - _("“%s” is not an unsigned number"), str); - return FALSE; - } - if (saved_errno == ERANGE || number < min || number > max) - { - gchar *min_str = g_strdup_printf ("%" G_GUINT64_FORMAT, min); - gchar *max_str = g_strdup_printf ("%" G_GUINT64_FORMAT, max); - - g_set_error (error, - G_IO_ERROR, G_IO_ERROR_INVALID_ARGUMENT, - _("Number “%s” is out of bounds [%s, %s]"), - str, min_str, max_str); - g_free (min_str); - g_free (max_str); - return FALSE; - } - if (out_num != NULL) - *out_num = number; - return TRUE; -} - -static int -dist (const char *s, int ls, const char *t, int lt, int i, int j, int *d) -{ - int x, y; - - if (d[i * (lt + 1) + j] >= 0) - return d[i * (lt + 1) + j]; - - if (i == ls) - x = lt - j; - else if (j == lt) - x = ls - i; - else if (s[i] == t[j]) - x = dist (s, ls, t, lt, i + 1, j + 1, d); - else - { - x = dist (s, ls, t, lt, i + 1, j + 1, d); - y = dist (s, ls, t, lt, i, j + 1, d); - if (y < x) - x = y; - y = dist (s, ls, t, lt, i + 1, j, d); - if (y < x) - x = y; - x++; - } - - d[i * (lt + 1) + j] = x; - - return x; -} - -int -flatpak_levenshtein_distance (const char *s, - gssize ls, - const char *t, - gssize lt) -{ - int i, j; - int *d; - - if (ls < 0) - ls = strlen (s); - - if (lt < 0) - lt = strlen (t); - - d = alloca (sizeof (int) * (ls + 1) * (lt + 1)); - - for (i = 0; i <= ls; i++) - for (j = 0; j <= lt; j++) - d[i * (lt + 1) + j] = -1; - - return dist (s, ls, t, lt, 0, 0, d); -} - -void -flatpak_get_window_size (int *rows, int *cols) -{ - struct winsize w; - - if (ioctl (STDOUT_FILENO, TIOCGWINSZ, &w) == 0) - { - /* For whatever reason, in buildbot this returns 0, 0 so add a fallback */ - if (w.ws_row == 0) - w.ws_row = 24; - if (w.ws_col == 0) - w.ws_col = 80; - *rows = w.ws_row; - *cols = w.ws_col; - } - else - { - *rows = 24; - *cols = 80; - } -} - -gboolean -flatpak_set_tty_echo (gboolean echo) -{ - struct termios term; - gboolean was; - - tcgetattr (STDIN_FILENO, &term); - was = (term.c_lflag & ECHO) != 0; - - if (echo) - term.c_lflag |= ECHO; - else - term.c_lflag &= ~ECHO; - tcsetattr (STDIN_FILENO, TCSANOW, &term); - - return was; -} - -gboolean -flatpak_get_cursor_pos (int * row, int *col) -{ - fd_set readset; - struct timeval time; - struct termios term, initial_term; - int res = 0; - - tcgetattr (STDIN_FILENO, &initial_term); - term = initial_term; - term.c_lflag &= ~ICANON; - term.c_lflag &= ~ECHO; - tcsetattr (STDIN_FILENO, TCSANOW, &term); - - printf ("\033[6n"); - fflush (stdout); - - FD_ZERO (&readset); - FD_SET (STDIN_FILENO, &readset); - time.tv_sec = 0; - time.tv_usec = 100000; - - if (select (STDIN_FILENO + 1, &readset, NULL, NULL, &time) == 1) - res = scanf ("\033[%d;%dR", row, col); - - tcsetattr (STDIN_FILENO, TCSADRAIN, &initial_term); - - return res == 2; -} - -void -flatpak_hide_cursor (void) -{ - const size_t flatpak_hide_cursor_len = strlen (FLATPAK_ANSI_HIDE_CURSOR); - const ssize_t write_ret = write (STDOUT_FILENO, FLATPAK_ANSI_HIDE_CURSOR, - flatpak_hide_cursor_len); - - if (write_ret < 0) - g_warning ("write() failed: %zd = write(STDOUT_FILENO, FLATPAK_ANSI_HIDE_CURSOR, %zu)", - write_ret, flatpak_hide_cursor_len); -} - -void -flatpak_show_cursor (void) -{ - const size_t flatpak_show_cursor_len = strlen (FLATPAK_ANSI_SHOW_CURSOR); - const ssize_t write_ret = write (STDOUT_FILENO, FLATPAK_ANSI_SHOW_CURSOR, - flatpak_show_cursor_len); - - if (write_ret < 0) - g_warning ("write() failed: %zd = write(STDOUT_FILENO, FLATPAK_ANSI_SHOW_CURSOR, %zu)", - write_ret, flatpak_show_cursor_len); -} - -void -flatpak_enable_raw_mode (void) -{ - struct termios raw; - - tcgetattr (STDIN_FILENO, &raw); - - raw.c_lflag &= ~(ECHO | ICANON); - - tcsetattr (STDIN_FILENO, TCSAFLUSH, &raw); -} - -void -flatpak_disable_raw_mode (void) -{ - struct termios raw; - - tcgetattr (STDIN_FILENO, &raw); - - raw.c_lflag |= (ECHO | ICANON); - - tcsetattr (STDIN_FILENO, TCSAFLUSH, &raw); -} - -/* Wrapper that uses ostree_repo_resolve_collection_ref() and on failure falls - * back to using ostree_repo_resolve_rev() for backwards compatibility. This - * means we support refs/heads/, refs/remotes/, and refs/mirrors/. */ -gboolean -flatpak_repo_resolve_rev (OstreeRepo *repo, - const char *collection_id, /* nullable */ - const char *remote_name, /* nullable */ - const char *ref_name, - gboolean allow_noent, - char **out_rev, - GCancellable *cancellable, - GError **error) -{ - g_autoptr(GError) local_error = NULL; - - if (collection_id != NULL) - { - /* Do a version check to ensure we have these: - * https://github.com/ostreedev/ostree/pull/1821 - * https://github.com/ostreedev/ostree/pull/1825 */ -#if OSTREE_CHECK_VERSION (2019, 2) - const OstreeCollectionRef c_r = - { - .collection_id = (char *) collection_id, - .ref_name = (char *) ref_name, - }; - OstreeRepoResolveRevExtFlags flags = remote_name == NULL ? - OSTREE_REPO_RESOLVE_REV_EXT_LOCAL_ONLY : - OSTREE_REPO_RESOLVE_REV_EXT_NONE; - if (ostree_repo_resolve_collection_ref (repo, &c_r, - allow_noent, - flags, - out_rev, - cancellable, NULL)) - return TRUE; -#endif - } - - /* There may be several remotes with the same branch (if we for - * instance changed the origin) so prepend the current origin to - * make sure we get the right one */ - if (remote_name != NULL) - { - g_autofree char *refspec = g_strdup_printf ("%s:%s", remote_name, ref_name); - ostree_repo_resolve_rev (repo, refspec, allow_noent, out_rev, &local_error); - } - else - ostree_repo_resolve_rev_ext (repo, ref_name, allow_noent, - OSTREE_REPO_RESOLVE_REV_EXT_NONE, out_rev, &local_error); - - if (local_error != NULL) - { - if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND)) - flatpak_fail_error (error, FLATPAK_ERROR_REF_NOT_FOUND, "%s", local_error->message); - else - g_propagate_error (error, g_steal_pointer (&local_error)); - - return FALSE; - } - - return TRUE; -} - - -#if !GLIB_CHECK_VERSION (2, 56, 0) -/* All this code is backported directly from glib */ - -static void -g_date_time_get_week_number (GDateTime *datetime, - gint *week_number, - gint *day_of_week, - gint *day_of_year) -{ - gint a, b, c, d, e, f, g, n, s, month, day, year; - - g_date_time_get_ymd (datetime, &year, &month, &day); - - if (month <= 2) - { - a = g_date_time_get_year (datetime) - 1; - b = (a / 4) - (a / 100) + (a / 400); - c = ((a - 1) / 4) - ((a - 1) / 100) + ((a - 1) / 400); - s = b - c; - e = 0; - f = day - 1 + (31 * (month - 1)); - } - else - { - a = year; - b = (a / 4) - (a / 100) + (a / 400); - c = ((a - 1) / 4) - ((a - 1) / 100) + ((a - 1) / 400); - s = b - c; - e = s + 1; - f = day + (((153 * (month - 3)) + 2) / 5) + 58 + s; - } - - g = (a + b) % 7; - d = (f + g - e) % 7; - n = f + 3 - d; - - if (week_number) - { - if (n < 0) - *week_number = 53 - ((g - s) / 5); - else if (n > 364 + s) - *week_number = 1; - else - *week_number = (n / 7) + 1; - } - - if (day_of_week) - *day_of_week = d + 1; - - if (day_of_year) - *day_of_year = f + 1; -} - -#define GREGORIAN_LEAP(y) ((((y) % 4) == 0) && (!((((y) % 100) == 0) && (((y) % 400) != 0)))) - -/* Parse integers in the form d (week days), dd (hours etc), ddd (ordinal days) or dddd (years) */ -static gboolean -get_iso8601_int (const gchar *text, gsize length, gint *value) -{ - gint i, v = 0; - - if (length < 1 || length > 4) - return FALSE; - - for (i = 0; i < length; i++) - { - const gchar c = text[i]; - if (c < '0' || c > '9') - return FALSE; - v = v * 10 + (c - '0'); - } - - *value = v; - return TRUE; + g_ptr_array_add (array, NULL); + return (char **) g_ptr_array_free (array, FALSE); } -/* Parse seconds in the form ss or ss.sss (variable length decimal) */ -static gboolean -get_iso8601_seconds (const gchar *text, gsize length, gdouble *value) +char ** +flatpak_strv_merge (char **strv1, + char **strv2) { - gint i; - gdouble divisor = 1, v = 0; + GPtrArray *array; + int i; - if (length < 2) - return FALSE; + /* Maybe either (or both) is unspecified */ + if (strv1 == NULL) + return g_strdupv (strv2); + if (strv2 == NULL) + return g_strdupv (strv1); + + /* Combine both */ + array = g_ptr_array_new (); - for (i = 0; i < 2; i++) + for (i = 0; strv1[i] != NULL; i++) { - const gchar c = text[i]; - if (c < '0' || c > '9') - return FALSE; - v = v * 10 + (c - '0'); + if (!flatpak_g_ptr_array_contains_string (array, strv1[i])) + g_ptr_array_add (array, g_strdup (strv1[i])); } - if (length > 2 && !(text[i] == '.' || text[i] == ',')) - return FALSE; - i++; - if (i == length) - return FALSE; - - for (; i < length; i++) + for (i = 0; strv2[i] != NULL; i++) { - const gchar c = text[i]; - if (c < '0' || c > '9') - return FALSE; - v = v * 10 + (c - '0'); - divisor *= 10; + if (!flatpak_g_ptr_array_contains_string (array, strv2[i])) + g_ptr_array_add (array, g_strdup (strv2[i])); } - *value = v / divisor; - return TRUE; + g_ptr_array_add (array, NULL); + return (char **) g_ptr_array_free (array, FALSE); } -static GDateTime * -g_date_time_new_ordinal (GTimeZone *tz, gint year, gint ordinal_day, gint hour, gint minute, gdouble seconds) +/* In this NULL means don't care about these paths, while + an empty array means match anything */ +char ** +flatpak_subpaths_merge (char **subpaths1, + char **subpaths2) { - GDateTime *dt, *dt2; + char **res; - if (ordinal_day < 1 || ordinal_day > (GREGORIAN_LEAP (year) ? 366 : 365)) - return NULL; + if (subpaths1 != NULL && subpaths1[0] == NULL) + return g_strdupv (subpaths1); + if (subpaths2 != NULL && subpaths2[0] == NULL) + return g_strdupv (subpaths2); - dt = g_date_time_new (tz, year, 1, 1, hour, minute, seconds); - dt2 = g_date_time_add_days (dt, ordinal_day - 1); - g_date_time_unref (dt); + res = flatpak_strv_merge (subpaths1, subpaths2); + if (res) + qsort (res, g_strv_length (res), sizeof (const char *), flatpak_strcmp0_ptr); - return dt2; + return res; } -static GDateTime * -g_date_time_new_week (GTimeZone *tz, gint year, gint week, gint week_day, gint hour, gint minute, gdouble seconds) +gboolean +flatpak_g_ptr_array_contains_string (GPtrArray *array, const char *str) { - gint64 p; - gint max_week, jan4_week_day, ordinal_day; - GDateTime *dt; - - p = (year * 365 + (year / 4) - (year / 100) + (year / 400)) % 7; - max_week = p == 4 ? 53 : 52; - - if (week < 1 || week > max_week || week_day < 1 || week_day > 7) - return NULL; - - dt = g_date_time_new (tz, year, 1, 4, 0, 0, 0); - g_date_time_get_week_number (dt, NULL, &jan4_week_day, NULL); - g_date_time_unref (dt); + int i; - ordinal_day = (week * 7) + week_day - (jan4_week_day + 3); - if (ordinal_day < 0) - { - year--; - ordinal_day += GREGORIAN_LEAP (year) ? 366 : 365; - } - else if (ordinal_day > (GREGORIAN_LEAP (year) ? 366 : 365)) + for (i = 0; i < array->len; i++) { - ordinal_day -= (GREGORIAN_LEAP (year) ? 366 : 365); - year++; + if (strcmp (g_ptr_array_index (array, i), str) == 0) + return TRUE; } - - return g_date_time_new_ordinal (tz, year, ordinal_day, hour, minute, seconds); + return FALSE; } -static GDateTime * -parse_iso8601_date (const gchar *text, gsize length, - gint hour, gint minute, gdouble seconds, GTimeZone *tz) +gboolean +flatpak_check_required_version (const char *ref, + GKeyFile *metakey, + GError **error) { - /* YYYY-MM-DD */ - if (length == 10 && text[4] == '-' && text[7] == '-') - { - int year, month, day; - if (!get_iso8601_int (text, 4, &year) || - !get_iso8601_int (text + 5, 2, &month) || - !get_iso8601_int (text + 8, 2, &day)) - return NULL; - return g_date_time_new (tz, year, month, day, hour, minute, seconds); - } - /* YYYY-DDD */ - else if (length == 8 && text[4] == '-') - { - gint year, ordinal_day; - if (!get_iso8601_int (text, 4, &year) || - !get_iso8601_int (text + 5, 3, &ordinal_day)) - return NULL; - return g_date_time_new_ordinal (tz, year, ordinal_day, hour, minute, seconds); - } - /* YYYY-Www-D */ - else if (length == 10 && text[4] == '-' && text[5] == 'W' && text[8] == '-') - { - gint year, week, week_day; - if (!get_iso8601_int (text, 4, &year) || - !get_iso8601_int (text + 6, 2, &week) || - !get_iso8601_int (text + 9, 1, &week_day)) - return NULL; - return g_date_time_new_week (tz, year, week, week_day, hour, minute, seconds); - } - /* YYYYWwwD */ - else if (length == 8 && text[4] == 'W') - { - gint year, week, week_day; - if (!get_iso8601_int (text, 4, &year) || - !get_iso8601_int (text + 5, 2, &week) || - !get_iso8601_int (text + 7, 1, &week_day)) - return NULL; - return g_date_time_new_week (tz, year, week, week_day, hour, minute, seconds); - } - /* YYYYMMDD */ - else if (length == 8) - { - int year, month, day; - if (!get_iso8601_int (text, 4, &year) || - !get_iso8601_int (text + 4, 2, &month) || - !get_iso8601_int (text + 6, 2, &day)) - return NULL; - return g_date_time_new (tz, year, month, day, hour, minute, seconds); - } - /* YYYYDDD */ - else if (length == 7) - { - gint year, ordinal_day; - if (!get_iso8601_int (text, 4, &year) || - !get_iso8601_int (text + 4, 3, &ordinal_day)) - return NULL; - return g_date_time_new_ordinal (tz, year, ordinal_day, hour, minute, seconds); - } + g_auto(GStrv) required_versions = NULL; + const char *group; + int max_required_major = 0, max_required_minor = 0; + const char *max_required_version = "0.0"; + int i; + + if (g_str_has_prefix (ref, "app/")) + group = "Application"; else - return FALSE; -} + group = "Runtime"; -static GTimeZone * -parse_iso8601_timezone (const gchar *text, gsize length, gssize *tz_offset) -{ - gint i, tz_length, offset_sign = 1, offset_hours, offset_minutes; - GTimeZone *tz; + /* We handle handle multiple version requirements here. Each requirement must + * be in the form major.minor.micro, and if the flatpak version matches the + * major.minor part, t must be equal or later in the micro. If the major.minor part + * doesn't exactly match any of the specified requirements it must be larger + * than the maximum specified requirement. + * + * For example, specifying + * required-flatpak=1.6.2;1.4.2;1.0.2; + * would allow flatpak versions: + * 1.7.0, 1.6.2, 1.6.3, 1.4.2, 1.4.3, 1.0.2, 1.0.3 + * but not: + * 1.6.1, 1.4.1 or 1.2.100. + * + * The goal here is to be able to specify a version (like 1.6.2 above) where a feature + * was introduced, but also allow backports of said feature to earlier version series. + * + * Earlier versions that only support specifying one version will only look at the first + * element in the list, so put the largest version first. + */ + required_versions = g_key_file_get_string_list (metakey, group, "required-flatpak", NULL, NULL); + if (required_versions == 0 || required_versions[0] == NULL) + return TRUE; - /* UTC uses Z suffix */ - if (length > 0 && text[length - 1] == 'Z') + for (i = 0; required_versions[i] != NULL; i++) { - *tz_offset = length - 1; - return g_time_zone_new_utc (); - } + int required_major, required_minor, required_micro; + const char *required_version = required_versions[i]; - /* Look for '+' or '-' of offset */ - for (i = length - 1; i >= 0; i--) - if (text[i] == '+' || text[i] == '-') - { - offset_sign = text[i] == '-' ? -1 : 1; - break; - } - if (i < 0) - return NULL; - tz_length = length - i; + if (sscanf (required_version, "%d.%d.%d", &required_major, &required_minor, &required_micro) != 3) + return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, + _("Invalid require-flatpak argument %s"), required_version); + else + { + /* If flatpak is in the same major.minor series as the requirement, do a micro check */ + if (required_major == PACKAGE_MAJOR_VERSION && required_minor == PACKAGE_MINOR_VERSION) + { + if (required_micro <= PACKAGE_MICRO_VERSION) + return TRUE; + else + return flatpak_fail_error (error, FLATPAK_ERROR_NEED_NEW_FLATPAK, + _("%s needs a later flatpak version (%s)"), + ref, required_version); + } - /* +hh:mm or -hh:mm */ - if (tz_length == 6 && text[i + 3] == ':') - { - if (!get_iso8601_int (text + i + 1, 2, &offset_hours) || - !get_iso8601_int (text + i + 4, 2, &offset_minutes)) - return NULL; - } - /* +hhmm or -hhmm */ - else if (tz_length == 5) - { - if (!get_iso8601_int (text + i + 1, 2, &offset_hours) || - !get_iso8601_int (text + i + 3, 2, &offset_minutes)) - return NULL; - } - /* +hh or -hh */ - else if (tz_length == 3) - { - if (!get_iso8601_int (text + i + 1, 2, &offset_hours)) - return NULL; - offset_minutes = 0; + /* Otherwise, keep track of the largest major.minor that is required */ + if ((required_major > max_required_major) || + (required_major == max_required_major && + required_minor > max_required_minor)) + { + max_required_major = required_major; + max_required_minor = required_minor; + max_required_version = required_version; + } + } } - else - return NULL; - *tz_offset = i; - tz = g_time_zone_new (text + i); - - /* Double-check that the GTimeZone matches our interpretation of the timezone. - * Failure would indicate a bug either here of in the GTimeZone code. */ - g_assert (g_time_zone_get_offset (tz, 0) == offset_sign * (offset_hours * 3600 + offset_minutes * 60)); + if (max_required_major > PACKAGE_MAJOR_VERSION || + (max_required_major == PACKAGE_MAJOR_VERSION && max_required_minor > PACKAGE_MINOR_VERSION)) + return flatpak_fail_error (error, FLATPAK_ERROR_NEED_NEW_FLATPAK, + _("%s needs a later flatpak version (%s)"), + ref, max_required_version); - return tz; + return TRUE; } -static gboolean -parse_iso8601_time (const gchar *text, gsize length, - gint *hour, gint *minute, gdouble *seconds, GTimeZone **tz) +static int +dist (const char *s, int ls, const char *t, int lt, int i, int j, int *d) { - gssize tz_offset = -1; + int x, y; - /* Check for timezone suffix */ - *tz = parse_iso8601_timezone (text, length, &tz_offset); - if (tz_offset >= 0) - length = tz_offset; + if (d[i * (lt + 1) + j] >= 0) + return d[i * (lt + 1) + j]; - /* hh:mm:ss(.sss) */ - if (length >= 8 && text[2] == ':' && text[5] == ':') - { - return get_iso8601_int (text, 2, hour) && - get_iso8601_int (text + 3, 2, minute) && - get_iso8601_seconds (text + 6, length - 6, seconds); - } - /* hhmmss(.sss) */ - else if (length >= 6) + if (i == ls) + x = lt - j; + else if (j == lt) + x = ls - i; + else if (s[i] == t[j]) + x = dist (s, ls, t, lt, i + 1, j + 1, d); + else { - return get_iso8601_int (text, 2, hour) && - get_iso8601_int (text + 2, 2, minute) && - get_iso8601_seconds (text + 4, length - 4, seconds); + x = dist (s, ls, t, lt, i + 1, j + 1, d); + y = dist (s, ls, t, lt, i, j + 1, d); + if (y < x) + x = y; + y = dist (s, ls, t, lt, i + 1, j, d); + if (y < x) + x = y; + x++; } - else - return FALSE; -} + d[i * (lt + 1) + j] = x; -GDateTime * -flatpak_g_date_time_new_from_iso8601 (const gchar *text, GTimeZone *default_tz) -{ - gint length, date_length = -1; - gint hour = 0, minute = 0; - gdouble seconds = 0.0; - GTimeZone *tz = NULL; - GDateTime *datetime = NULL; + return x; +} - g_return_val_if_fail (text != NULL, NULL); +int +flatpak_levenshtein_distance (const char *s, + gssize ls, + const char *t, + gssize lt) +{ + int i, j; + int *d; - /* Count length of string and find date / time separator ('T', 't', or ' ') */ - for (length = 0; text[length] != '\0'; length++) - { - if (date_length < 0 && (text[length] == 'T' || text[length] == 't' || text[length] == ' ')) - date_length = length; - } + if (ls < 0) + ls = strlen (s); - if (date_length < 0) - return NULL; + if (lt < 0) + lt = strlen (t); - if (!parse_iso8601_time (text + date_length + 1, length - (date_length + 1), - &hour, &minute, &seconds, &tz)) - goto out; - if (tz == NULL && default_tz == NULL) - return NULL; + d = alloca (sizeof (int) * (ls + 1) * (lt + 1)); - datetime = parse_iso8601_date (text, date_length, hour, minute, seconds, tz ? tz : default_tz); + for (i = 0; i <= ls; i++) + for (j = 0; j <= lt; j++) + d[i * (lt + 1) + j] = -1; -out: - if (tz != NULL) - g_time_zone_unref (tz); - return datetime; + return dist (s, ls, t, lt, 0, 0, d); } -#endif /* Convert an app id to a dconf path in the obvious way. */ @@ -9106,6 +2167,48 @@ flatpak_dconf_path_is_similar (const char *path1, return (path1[i1] == '\0'); } +GStrv +flatpak_parse_env_block (const char *data, + gsize length, + GError **error) +{ + g_autoptr(GPtrArray) env_vars = g_ptr_array_new_with_free_func (g_free); + const char *p = data; + gsize remaining = length; + + /* env_block might not be \0-terminated */ + while (remaining > 0) + { + size_t len = strnlen (p, remaining); + const char *equals; + + g_assert (len <= remaining); + + equals = memchr (p, '=', len); + + if (equals == NULL || equals == p) + return glnx_null_throw (error, + "Environment variable must be in the form VARIABLE=VALUE, not %.*s", (int) len, p); + + g_ptr_array_add (env_vars, + g_strndup (p, len)); + + p += len; + remaining -= len; + + if (remaining > 0) + { + g_assert (*p == '\0'); + p += 1; + remaining -= 1; + } + } + + g_ptr_array_add (env_vars, NULL); + + return (GStrv) g_ptr_array_free (g_steal_pointer (&env_vars), FALSE); +} + /** * flatpak_envp_cmp: * @p1: a `const char * const *` @@ -9301,14 +2404,6 @@ flatpak_escape_string (const char *s, return g_string_free (g_steal_pointer (&res), FALSE); } -void -flatpak_print_escaped_string (const char *s, - FlatpakEscapeFlags flags) -{ - g_autofree char *escaped = flatpak_escape_string (s, flags); - g_print ("%s", escaped); -} - gboolean flatpak_validate_path_characters (const char *path, GError **error) @@ -9358,64 +2453,21 @@ running_under_sudo (void) return FALSE; } -#if !GLIB_CHECK_VERSION (2, 62, 0) +static gboolean is_debugging = FALSE; + void -g_ptr_array_extend (GPtrArray *array_to_extend, - GPtrArray *array, - GCopyFunc func, - gpointer user_data) +flatpak_set_debugging (gboolean debugging) { - for (gsize i = 0; i < array->len; i++) - { - if (func) - g_ptr_array_add (array_to_extend, func (g_ptr_array_index (array, i), user_data)); - else - g_ptr_array_add (array_to_extend, g_ptr_array_index (array, i)); - } + is_debugging = debugging; } -#endif -#if !GLIB_CHECK_VERSION (2, 68, 0) -/* All this code is backported directly from glib */ -guint -g_string_replace (GString *string, - const gchar *find, - const gchar *replace, - guint limit) +gboolean +flatpak_is_debugging (void) { - gsize f_len, r_len, pos; - gchar *cur, *next; - guint n = 0; - - g_return_val_if_fail (string != NULL, 0); - g_return_val_if_fail (find != NULL, 0); - g_return_val_if_fail (replace != NULL, 0); - - f_len = strlen (find); - r_len = strlen (replace); - cur = string->str; - - while ((next = strstr (cur, find)) != NULL) - { - pos = next - string->str; - g_string_erase (string, pos, f_len); - g_string_insert (string, pos, replace); - cur = string->str + pos + r_len; - n++; - /* Only match the empty string once at any given position, to - * avoid infinite loops */ - if (f_len == 0) - { - if (cur[0] == '\0') - break; - else - cur++; - } - if (n == limit) - break; - } +#if GLIB_CHECK_VERSION (2, 68, 0) + if (!g_log_writer_default_would_drop (G_LOG_LEVEL_DEBUG, G_LOG_DOMAIN)) + return TRUE; +#endif - return n; + return is_debugging; } - -#endif /* GLIB_CHECK_VERSION (2, 68, 0) */ diff --git a/common/flatpak-version-macros.h b/common/flatpak-version-macros.h deleted file mode 100644 index 8070313..0000000 --- a/common/flatpak-version-macros.h +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Copyright © 2015 Red Hat, Inc - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library. If not, see . - * - * Authors: - * Alexander Larsson - */ - -#if !defined (__FLATPAK_H_INSIDE__) && !defined (FLATPAK_COMPILATION) -#error "Only can be included directly." -#endif - -#ifndef __FLATPAK_VERSION_MACROS_H__ -#define __FLATPAK_VERSION_MACROS_H__ - - -/** - * FLATPAK_MAJOR_VERSION: - * - * The major version. - */ -#define FLATPAK_MAJOR_VERSION (1) - -/** - * FLATPAK_MINOR_VERSION: - * - * The minor version. - */ -#define FLATPAK_MINOR_VERSION (14) - -/** - * FLATPAK_MICRO_VERSION: - * - * The micro version. - */ -#define FLATPAK_MICRO_VERSION (10) - -/** - * FLATPAK_CHECK_VERSION: - * @major: major version to compare against - * @minor: minor version to compare against - * @micro: micro version to compare against - * - * Check that the current version is at least @major.@minor.@micro. - */ -#define FLATPAK_CHECK_VERSION(major,minor,micro) \ - (FLATPAK_MAJOR_VERSION > (major) || \ - (FLATPAK_MAJOR_VERSION == (major) && FLATPAK_MINOR_VERSION > (minor)) || \ - (FLATPAK_MAJOR_VERSION == (major) && FLATPAK_MINOR_VERSION == (minor) && \ - FLATPAK_MICRO_VERSION >= (micro))) - -#ifndef FLATPAK_EXTERN -#define FLATPAK_EXTERN extern -#endif - -/** - * SECTION:flatpak-version-macros - * @Title: Version information - * - * These macros can be used to check the library version in use. - */ - -#endif /* __FLATPAK_VERSION_MACROS_H__ */ diff --git a/common/flatpak-xml-utils-private.h b/common/flatpak-xml-utils-private.h new file mode 100644 index 0000000..bbf28b0 --- /dev/null +++ b/common/flatpak-xml-utils-private.h @@ -0,0 +1,63 @@ +/* + * Copyright © 2014 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + */ + +#pragma once + +#include "libglnx.h" + +typedef struct FlatpakXml FlatpakXml; + +struct FlatpakXml +{ + gchar *element_name; /* NULL == text */ + char **attribute_names; + char **attribute_values; + char *text; + FlatpakXml *parent; + FlatpakXml *first_child; + FlatpakXml *last_child; + FlatpakXml *next_sibling; +}; + +void flatpak_xml_add (FlatpakXml *parent, + FlatpakXml *node); +void flatpak_xml_free (FlatpakXml *node); +FlatpakXml *flatpak_xml_parse (GInputStream * in, + gboolean compressed, + GCancellable *cancellable, + GError **error); +FlatpakXml *flatpak_xml_unlink (FlatpakXml *node, + FlatpakXml *prev_sibling); +FlatpakXml *flatpak_xml_find (FlatpakXml *node, + const char *type, + FlatpakXml **prev_child_out); + +G_DEFINE_AUTOPTR_CLEANUP_FUNC (FlatpakXml, flatpak_xml_free); + +FlatpakXml *flatpak_appstream_xml_new (void); +gboolean flatpak_appstream_xml_migrate (FlatpakXml *source, + FlatpakXml *dest, + const char *ref, + const char *id, + GKeyFile *metadata); +gboolean flatpak_appstream_xml_root_to_data (FlatpakXml *appstream_root, + GBytes **uncompressed, + GBytes **compressed, + GError **error); +void flatpak_appstream_xml_filter (FlatpakXml *appstream, + GRegex *allow_refs, + GRegex *deny_refs); diff --git a/common/flatpak-xml-utils.c b/common/flatpak-xml-utils.c new file mode 100644 index 0000000..2b433dd --- /dev/null +++ b/common/flatpak-xml-utils.c @@ -0,0 +1,560 @@ +/* vi:set et sw=2 sts=2 cin cino=t0,f0,(0,{s,>2s,n-s,^-s,e-s: + * Copyright © 1995-1998 Free Software Foundation, Inc. + * Copyright © 2014-2019 Red Hat, Inc + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . + * + * Authors: + * Alexander Larsson + */ + +#include "config.h" +#include "flatpak-xml-utils-private.h" + +#include "flatpak-run-private.h" +#include "flatpak-utils-private.h" + +typedef struct +{ + FlatpakXml *current; +} XmlData; + +static FlatpakXml * +flatpak_xml_new (const gchar *element_name) +{ + FlatpakXml *node = g_new0 (FlatpakXml, 1); + + node->element_name = g_strdup (element_name); + return node; +} + +static FlatpakXml * +flatpak_xml_new_text (const gchar *text) +{ + FlatpakXml *node = g_new0 (FlatpakXml, 1); + + node->text = g_strdup (text); + return node; +} + +void +flatpak_xml_add (FlatpakXml *parent, FlatpakXml *node) +{ + node->parent = parent; + + if (parent->first_child == NULL) + parent->first_child = node; + else + parent->last_child->next_sibling = node; + parent->last_child = node; +} + +static void +xml_start_element (GMarkupParseContext *context, + const gchar *element_name, + const gchar **attribute_names, + const gchar **attribute_values, + gpointer user_data, + GError **error) +{ + XmlData *data = user_data; + FlatpakXml *node; + + node = flatpak_xml_new (element_name); + node->attribute_names = g_strdupv ((char **) attribute_names); + node->attribute_values = g_strdupv ((char **) attribute_values); + + flatpak_xml_add (data->current, node); + data->current = node; +} + +static void +xml_end_element (GMarkupParseContext *context, + const gchar *element_name, + gpointer user_data, + GError **error) +{ + XmlData *data = user_data; + + data->current = data->current->parent; +} + +static void +xml_text (GMarkupParseContext *context, + const gchar *text, + gsize text_len, + gpointer user_data, + GError **error) +{ + XmlData *data = user_data; + FlatpakXml *node; + + node = flatpak_xml_new (NULL); + node->text = g_strndup (text, text_len); + flatpak_xml_add (data->current, node); +} + +static void +xml_passthrough (GMarkupParseContext *context, + const gchar *passthrough_text, + gsize text_len, + gpointer user_data, + GError **error) +{ +} + +static GMarkupParser xml_parser = { + xml_start_element, + xml_end_element, + xml_text, + xml_passthrough, + NULL +}; + +void +flatpak_xml_free (FlatpakXml *node) +{ + FlatpakXml *child; + + if (node == NULL) + return; + + child = node->first_child; + while (child != NULL) + { + FlatpakXml *next = child->next_sibling; + flatpak_xml_free (child); + child = next; + } + + g_free (node->element_name); + g_free (node->text); + g_strfreev (node->attribute_names); + g_strfreev (node->attribute_values); + g_free (node); +} + + +static void +flatpak_xml_to_string (FlatpakXml *node, GString *res) +{ + int i; + FlatpakXml *child; + + if (node->parent == NULL) + g_string_append (res, "\n"); + + if (node->element_name) + { + if (node->parent != NULL) + { + g_string_append (res, "<"); + g_string_append (res, node->element_name); + if (node->attribute_names) + { + for (i = 0; node->attribute_names[i] != NULL; i++) + { + g_string_append_printf (res, " %s=\"%s\"", + node->attribute_names[i], + node->attribute_values[i]); + } + } + if (node->first_child == NULL) + g_string_append (res, "/>"); + else + g_string_append (res, ">"); + } + + child = node->first_child; + while (child != NULL) + { + flatpak_xml_to_string (child, res); + child = child->next_sibling; + } + if (node->parent != NULL) + { + if (node->first_child != NULL) + g_string_append_printf (res, "", node->element_name); + } + } + else if (node->text) + { + g_autofree char *escaped = g_markup_escape_text (node->text, -1); + g_string_append (res, escaped); + } +} + +FlatpakXml * +flatpak_xml_unlink (FlatpakXml *node, + FlatpakXml *prev_sibling) +{ + FlatpakXml *parent = node->parent; + + if (parent == NULL) + return node; + + if (parent->first_child == node) + parent->first_child = node->next_sibling; + + if (parent->last_child == node) + parent->last_child = prev_sibling; + + if (prev_sibling) + prev_sibling->next_sibling = node->next_sibling; + + node->parent = NULL; + node->next_sibling = NULL; + + return node; +} + +FlatpakXml * +flatpak_xml_find (FlatpakXml *node, + const char *type, + FlatpakXml **prev_child_out) +{ + FlatpakXml *child = NULL; + FlatpakXml *prev_child = NULL; + + child = node->first_child; + prev_child = NULL; + while (child != NULL) + { + FlatpakXml *next = child->next_sibling; + + if (g_strcmp0 (child->element_name, type) == 0) + { + if (prev_child_out) + *prev_child_out = prev_child; + return child; + } + + prev_child = child; + child = next; + } + + return NULL; +} + + +FlatpakXml * +flatpak_xml_parse (GInputStream *in, + gboolean compressed, + GCancellable *cancellable, + GError **error) +{ + g_autoptr(GInputStream) real_in = NULL; + g_autoptr(FlatpakXml) xml_root = NULL; + XmlData data = { 0 }; + char buffer[32 * 1024]; + gssize len; + g_autoptr(GMarkupParseContext) ctx = NULL; + + if (compressed) + { + g_autoptr(GZlibDecompressor) decompressor = NULL; + decompressor = g_zlib_decompressor_new (G_ZLIB_COMPRESSOR_FORMAT_GZIP); + real_in = g_converter_input_stream_new (in, G_CONVERTER (decompressor)); + } + else + { + real_in = g_object_ref (in); + } + + xml_root = flatpak_xml_new ("root"); + data.current = xml_root; + + ctx = g_markup_parse_context_new (&xml_parser, + G_MARKUP_PREFIX_ERROR_POSITION, + &data, + NULL); + + while ((len = g_input_stream_read (real_in, buffer, sizeof (buffer), + cancellable, error)) > 0) + { + if (!g_markup_parse_context_parse (ctx, buffer, len, error)) + return NULL; + } + + if (len < 0) + return NULL; + + return g_steal_pointer (&xml_root); +} + +FlatpakXml * +flatpak_appstream_xml_new (void) +{ + FlatpakXml *appstream_root = NULL; + FlatpakXml *appstream_components; + + appstream_root = flatpak_xml_new ("root"); + appstream_components = flatpak_xml_new ("components"); + flatpak_xml_add (appstream_root, appstream_components); + flatpak_xml_add (appstream_components, flatpak_xml_new_text ("\n ")); + + appstream_components->attribute_names = g_new0 (char *, 3); + appstream_components->attribute_values = g_new0 (char *, 3); + appstream_components->attribute_names[0] = g_strdup ("version"); + appstream_components->attribute_values[0] = g_strdup ("0.8"); + appstream_components->attribute_names[1] = g_strdup ("origin"); + appstream_components->attribute_values[1] = g_strdup ("flatpak"); + + return appstream_root; +} + +gboolean +flatpak_appstream_xml_root_to_data (FlatpakXml *appstream_root, + GBytes **uncompressed, + GBytes **compressed, + GError **error) +{ + g_autoptr(GString) xml = NULL; + g_autoptr(GZlibCompressor) compressor = NULL; + g_autoptr(GOutputStream) out2 = NULL; + g_autoptr(GOutputStream) out = NULL; + + flatpak_xml_add (appstream_root->first_child, flatpak_xml_new_text ("\n")); + + xml = g_string_new (""); + flatpak_xml_to_string (appstream_root, xml); + + if (compressed) + { + compressor = g_zlib_compressor_new (G_ZLIB_COMPRESSOR_FORMAT_GZIP, -1); + out = g_memory_output_stream_new_resizable (); + out2 = g_converter_output_stream_new (out, G_CONVERTER (compressor)); + if (!g_output_stream_write_all (out2, xml->str, xml->len, + NULL, NULL, error)) + return FALSE; + if (!g_output_stream_close (out2, NULL, error)) + return FALSE; + } + + if (uncompressed) + *uncompressed = g_string_free_to_bytes (g_steal_pointer (&xml)); + + if (compressed) + *compressed = g_memory_output_stream_steal_as_bytes (G_MEMORY_OUTPUT_STREAM (out)); + + return TRUE; +} + +void +flatpak_appstream_xml_filter (FlatpakXml *appstream, + GRegex *allow_refs, + GRegex *deny_refs) +{ + FlatpakXml *components; + FlatpakXml *component; + FlatpakXml *prev_component, *old; + + for (components = appstream->first_child; + components != NULL; + components = components->next_sibling) + { + if (g_strcmp0 (components->element_name, "components") != 0) + continue; + + + prev_component = NULL; + component = components->first_child; + while (component != NULL) + { + FlatpakXml *bundle; + gboolean allow = FALSE; + + if (g_strcmp0 (component->element_name, "component") == 0) + { + bundle = flatpak_xml_find (component, "bundle", NULL); + if (bundle && bundle->first_child && bundle->first_child->text) + allow = flatpak_filters_allow_ref (allow_refs, deny_refs, bundle->first_child->text); + } + + if (allow) + { + prev_component = component; + component = component->next_sibling; + } + else + { + old = component; + + /* prev_component is same as before */ + component = component->next_sibling; + + flatpak_xml_unlink (old, prev_component); + flatpak_xml_free (old); + } + } + } +} + +static gboolean +validate_component (FlatpakXml *component, + const char *ref, + const char *id, + char **tags, + const char *runtime, + const char *sdk) +{ + FlatpakXml *bundle, *text, *prev, *id_node, *id_text_node, *metadata, *value; + g_autofree char *id_text = NULL; + int i; + + if (g_strcmp0 (component->element_name, "component") != 0) + return FALSE; + + id_node = flatpak_xml_find (component, "id", NULL); + if (id_node == NULL) + return FALSE; + + id_text_node = flatpak_xml_find (id_node, NULL, NULL); + if (id_text_node == NULL || id_text_node->text == NULL) + return FALSE; + + id_text = g_strstrip (g_strdup (id_text_node->text)); + + /* Drop .desktop file suffix (unless the actual app id ends with .desktop) */ + if (g_str_has_suffix (id_text, ".desktop") && + !g_str_has_suffix (id, ".desktop")) + id_text[strlen (id_text) - strlen (".desktop")] = 0; + + if (!g_str_has_prefix (id_text, id)) + { + g_warning ("Invalid id %s", id_text); + return FALSE; + } + + while ((bundle = flatpak_xml_find (component, "bundle", &prev)) != NULL) + flatpak_xml_free (flatpak_xml_unlink (bundle, prev)); + + bundle = flatpak_xml_new ("bundle"); + bundle->attribute_names = g_new0 (char *, 2 * 4); + bundle->attribute_values = g_new0 (char *, 2 * 4); + bundle->attribute_names[0] = g_strdup ("type"); + bundle->attribute_values[0] = g_strdup ("flatpak"); + + i = 1; + if (runtime && !g_str_has_prefix (runtime, "runtime/")) + { + bundle->attribute_names[i] = g_strdup ("runtime"); + bundle->attribute_values[i] = g_strdup (runtime); + i++; + } + + if (sdk) + { + bundle->attribute_names[i] = g_strdup ("sdk"); + bundle->attribute_values[i] = g_strdup (sdk); + i++; + } + + text = flatpak_xml_new (NULL); + text->text = g_strdup (ref); + flatpak_xml_add (bundle, text); + + flatpak_xml_add (component, flatpak_xml_new_text (" ")); + flatpak_xml_add (component, bundle); + flatpak_xml_add (component, flatpak_xml_new_text ("\n ")); + + if (tags != NULL && tags[0] != NULL) + { + metadata = flatpak_xml_find (component, "metadata", NULL); + if (metadata == NULL) + { + metadata = flatpak_xml_new ("metadata"); + metadata->attribute_names = g_new0 (char *, 1); + metadata->attribute_values = g_new0 (char *, 1); + + flatpak_xml_add (component, flatpak_xml_new_text (" ")); + flatpak_xml_add (component, metadata); + flatpak_xml_add (component, flatpak_xml_new_text ("\n ")); + } + + value = flatpak_xml_new ("value"); + value->attribute_names = g_new0 (char *, 2); + value->attribute_values = g_new0 (char *, 2); + value->attribute_names[0] = g_strdup ("key"); + value->attribute_values[0] = g_strdup ("X-Flatpak-Tags"); + flatpak_xml_add (metadata, flatpak_xml_new_text ("\n ")); + flatpak_xml_add (metadata, value); + flatpak_xml_add (metadata, flatpak_xml_new_text ("\n ")); + + text = flatpak_xml_new (NULL); + text->text = g_strjoinv (",", tags); + flatpak_xml_add (value, text); + } + + return TRUE; +} + +gboolean +flatpak_appstream_xml_migrate (FlatpakXml *source, + FlatpakXml *dest, + const char *ref, + const char *id, + GKeyFile *metadata) +{ + FlatpakXml *source_components; + FlatpakXml *dest_components; + FlatpakXml *component; + FlatpakXml *prev_component; + gboolean migrated = FALSE; + g_auto(GStrv) tags = NULL; + g_autofree const char *runtime = NULL; + g_autofree const char *sdk = NULL; + const char *group; + + if (source->first_child == NULL || + source->first_child->next_sibling != NULL || + g_strcmp0 (source->first_child->element_name, "components") != 0) + return FALSE; + + if (g_str_has_prefix (ref, "app/")) + group = FLATPAK_METADATA_GROUP_APPLICATION; + else + group = FLATPAK_METADATA_GROUP_RUNTIME; + + tags = g_key_file_get_string_list (metadata, group, FLATPAK_METADATA_KEY_TAGS, + NULL, NULL); + runtime = g_key_file_get_string (metadata, group, + FLATPAK_METADATA_KEY_RUNTIME, NULL); + sdk = g_key_file_get_string (metadata, group, FLATPAK_METADATA_KEY_SDK, NULL); + + source_components = source->first_child; + dest_components = dest->first_child; + + component = source_components->first_child; + prev_component = NULL; + while (component != NULL) + { + FlatpakXml *next = component->next_sibling; + + if (validate_component (component, ref, id, tags, runtime, sdk)) + { + flatpak_xml_add (dest_components, + flatpak_xml_unlink (component, prev_component)); + migrated = TRUE; + } + else + { + prev_component = component; + } + + component = next; + } + + return migrated; +} diff --git a/common/meson.build b/common/meson.build new file mode 100644 index 0000000..bd5dbf3 --- /dev/null +++ b/common/meson.build @@ -0,0 +1,307 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +public_headers = [ + 'flatpak-bundle-ref.h', + 'flatpak-error.h', + 'flatpak-installation.h', + 'flatpak-installed-ref.h', + 'flatpak-instance.h', + 'flatpak-portal-error.h', + 'flatpak-ref.h', + 'flatpak-related-ref.h', + 'flatpak-remote-ref.h', + 'flatpak-remote.h', + 'flatpak-transaction.h', + 'flatpak.h', +] + +install_headers( + public_headers, + subdir : 'flatpak', +) + +flatpak_version_macros = configure_file( + input : 'flatpak-version-macros.h.in', + output : 'flatpak-version-macros.h', + configuration : { + 'FLATPAK_MAJOR_VERSION' : flatpak_major_version, + 'FLATPAK_MINOR_VERSION' : flatpak_minor_version, + 'FLATPAK_MICRO_VERSION' : flatpak_micro_version, + }, + install_dir : get_option('includedir') / 'flatpak', +) + +# TODO: After the Autotools build system is removed, we can probably +# switch this to gnome.mkenums_simple, but it's easier to keep them +# consistent if we use the same templates +enums = gnome.mkenums( + 'flatpak-enum-types', + c_template : 'flatpak-enum-types.c.template', + h_template : 'flatpak-enum-types.h.template', + install_dir : get_option('includedir') / 'flatpak', + install_header : true, + sources : public_headers, +) + +flatpak_gdbus = gnome.gdbus_codegen( + 'flatpak-dbus-generated', + sources : [ + '../data/org.freedesktop.Flatpak.xml', + '../data/org.freedesktop.Flatpak.Authenticator.xml', + ], + interface_prefix : 'org.freedesktop.Flatpak.', + namespace : 'Flatpak', +) + +flatpak_document_gdbus = gnome.gdbus_codegen( + 'flatpak-document-dbus-generated', + sources: [ + '../data/org.freedesktop.portal.Documents.xml', + ], + interface_prefix : 'org.freedesktop.portal.', + namespace : 'XdpDbus', +) + +systemd_gdbus = gnome.gdbus_codegen( + 'flatpak-systemd-dbus-generated', + sources: [ + '../data/org.freedesktop.systemd1.xml', + ], + interface_prefix : 'org.freedesktop.systemd1.', + namespace : 'Systemd', +) + +variant_schema_compiler_command = [ + global_source_root / 'subprojects' / 'variant-schema-compiler' / 'variant-schema-compiler', +] + +if get_option('internal_checks') + variant_schema_compiler_command += ['--internal-validation'] +endif + +variant_schema_compiler_command += [ + '--outfile', '@OUTPUT0@', + '--outfile-header', '@OUTPUT1@', + '--prefix', 'var', + '@INPUT@', +] + +flatpak_variant = custom_target( + 'flatpak-variant-private.h', + input : [ + '../data/flatpak-variants.gv', + ], + output : [ + 'flatpak-variant-impl-private.h', + 'flatpak-variant-private.h', + ], + build_by_default : true, + command : variant_schema_compiler_command, +) + +libflatpak_common_base_deps = base_deps + [libglnx_dep] + +libflatpak_common_base_sources = [ + 'flatpak-utils-base.c', + 'flatpak-utils-base-private.h', +] + flatpak_gdbus + flatpak_document_gdbus + +built_headers = [ + enums[1], + flatpak_version_macros, + flatpak_gdbus[1], + flatpak_document_gdbus[1], + systemd_gdbus[1], + flatpak_variant[1], +] + +libflatpak_common_deps = [] +built_sources = [] + +if build_wayland_security_context + wayland_scanner_prog = find_program(wayland_scanner.get_variable(pkgconfig: 'wayland_scanner')) + wayland_protocols_dir = wayland_protocols.get_variable(pkgconfig: 'pkgdatadir') + wl_security_context_xml = wayland_protocols_dir / 'staging/security-context/security-context-v1.xml' + wl_security_context = [ + custom_target( + 'security-context-v1-protocol.c', + input : wl_security_context_xml, + output : 'security-context-v1-protocol.c', + command : [wayland_scanner_prog, 'private-code', '@INPUT@', '@OUTPUT@'], + ), + custom_target( + 'security-context-v1-protocol.h', + input : wl_security_context_xml, + output : 'security-context-v1-protocol.h', + command : [wayland_scanner_prog, 'client-header', '@INPUT@', '@OUTPUT@'], + ), + ] + + libflatpak_common_deps += [wayland_client] + built_sources += [wl_security_context] + built_headers += [wl_security_context[1]] +endif + +libflatpak_common_base = static_library( + 'flatpak-common-base', + dependencies : libflatpak_common_base_deps, + gnu_symbol_visibility : 'hidden', + include_directories : [common_include_directories], + install : false, + sources : libflatpak_common_base_sources, +) +libflatpak_common_base_dep = declare_dependency( + dependencies : base_deps + [libglnx_dep], + include_directories : [common_include_directories], + link_with : [ + libflatpak_common_base, + ], + sources : built_headers, +) + +sources = [ + 'flatpak-appdata.c', + 'flatpak-auth.c', + 'flatpak-bundle-ref.c', + 'flatpak-bwrap.c', + 'flatpak-chain-input-stream.c', + 'flatpak-context.c', + 'flatpak-dir.c', + 'flatpak-dir-utils.c', + 'flatpak-error.c', + 'flatpak-exports.c', + 'flatpak-glib-backports.c', + 'flatpak-installation.c', + 'flatpak-installed-ref.c', + 'flatpak-instance.c', + 'flatpak-json-oci.c', + 'flatpak-json.c', + 'flatpak-locale-utils.c', + 'flatpak-oci-registry.c', + 'flatpak-portal-error.c', + 'flatpak-progress.c', + 'flatpak-prune.c', + 'flatpak-ref-utils.c', + 'flatpak-ref.c', + 'flatpak-related-ref.c', + 'flatpak-remote-ref.c', + 'flatpak-remote.c', + 'flatpak-repo-utils.c', + 'flatpak-run.c', + 'flatpak-run-cups.c', + 'flatpak-run-dbus.c', + 'flatpak-run-pulseaudio.c', + 'flatpak-run-sockets.c', + 'flatpak-run-wayland.c', + 'flatpak-run-x11.c', + 'flatpak-transaction.c', + 'flatpak-utils-http.c', + 'flatpak-utils.c', + 'flatpak-uri.c', + 'flatpak-usb.c', + 'flatpak-xml-utils.c', + 'flatpak-zstd-decompressor.c', +] + +if malcontent_dep.found() + sources += ['flatpak-parental-controls.c'] +endif + +libflatpak_common = static_library( + 'flatpak-common', + dependencies : [ + base_deps, + dconf_dep, + gpgme_dep, + json_glib_dep, + libarchive_dep, + libcurl_dep, + libflatpak_common_base_dep, + libflatpak_common_deps, + libglnx_dep, + libostree_dep, + libseccomp_dep, + libsoup_dep, + libsystemd_dep, + libxml_dep, + libzstd_dep, + malcontent_dep, + polkit_agent_dep, + xau_dep, + ], + gnu_symbol_visibility : 'hidden', + include_directories : [common_include_directories], + install : false, + sources : enums + public_headers + sources + built_sources + systemd_gdbus + [ + flatpak_variant[0], + flatpak_variant[1], + ], +) +libflatpak_common_dep = declare_dependency( + dependencies : [ + base_deps, + libflatpak_common_base_dep, + libglnx_dep, + ], + include_directories : [common_include_directories], + link_with : [ + libflatpak_common, + ], + sources : built_headers, +) + +libflatpak = library( + 'flatpak', + 'flatpak.c', + gnu_symbol_visibility : 'hidden', + include_directories : [common_include_directories], + install : true, + link_args : ['-Wl,--export-dynamic'], + link_whole : [ + libflatpak_common_base, + libflatpak_common, + ], + soversion : '0', + version : '0.@0@.0'.format(flatpak_binary_age), +) +libflatpak_dep = declare_dependency( + dependencies : base_deps, + include_directories : [common_include_directories], + link_with : [ + libflatpak, + ], + sources : built_headers, +) + +test_libflatpak = executable( + 'test-libflatpak', + 'test-lib.c', + dependencies : base_deps + [libglnx_dep, libflatpak_dep], + install : false, +) + +if gir_dep.found() + gnome.generate_gir( + libflatpak, + export_packages : 'flatpak', + extra_args : [ + '-DFLATPAK_EXTERN=__attribute__((visibility("default"))) extern', + '-DFLATPAK_COMPILATION=1', + '--warn-all', + ], + header : 'flatpak.h', + identifier_prefix : 'Flatpak', + includes : ['GObject-2.0', 'Gio-2.0'], + install : true, + namespace : 'Flatpak', + nsversion : '1.0', + sources : [ + enums, + flatpak_version_macros, + public_headers, + sources, + ], + symbol_prefix : 'flatpak', + ) +endif diff --git a/compile b/compile deleted file mode 100755 index df363c8..0000000 --- a/compile +++ /dev/null @@ -1,348 +0,0 @@ -#! /bin/sh -# Wrapper for compilers which do not understand '-c -o'. - -scriptversion=2018-03-07.03; # UTC - -# Copyright (C) 1999-2021 Free Software Foundation, Inc. -# Written by Tom Tromey . -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to or send patches to -# . - -nl=' -' - -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent tools from complaining about whitespace usage. -IFS=" "" $nl" - -file_conv= - -# func_file_conv build_file lazy -# Convert a $build file to $host form and store it in $file -# Currently only supports Windows hosts. If the determined conversion -# type is listed in (the comma separated) LAZY, no conversion will -# take place. -func_file_conv () -{ - file=$1 - case $file in - / | /[!/]*) # absolute file, and not a UNC file - if test -z "$file_conv"; then - # lazily determine how to convert abs files - case `uname -s` in - MINGW*) - file_conv=mingw - ;; - CYGWIN* | MSYS*) - file_conv=cygwin - ;; - *) - file_conv=wine - ;; - esac - fi - case $file_conv/,$2, in - *,$file_conv,*) - ;; - mingw/*) - file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` - ;; - cygwin/* | msys/*) - file=`cygpath -m "$file" || echo "$file"` - ;; - wine/*) - file=`winepath -w "$file" || echo "$file"` - ;; - esac - ;; - esac -} - -# func_cl_dashL linkdir -# Make cl look for libraries in LINKDIR -func_cl_dashL () -{ - func_file_conv "$1" - if test -z "$lib_path"; then - lib_path=$file - else - lib_path="$lib_path;$file" - fi - linker_opts="$linker_opts -LIBPATH:$file" -} - -# func_cl_dashl library -# Do a library search-path lookup for cl -func_cl_dashl () -{ - lib=$1 - found=no - save_IFS=$IFS - IFS=';' - for dir in $lib_path $LIB - do - IFS=$save_IFS - if $shared && test -f "$dir/$lib.dll.lib"; then - found=yes - lib=$dir/$lib.dll.lib - break - fi - if test -f "$dir/$lib.lib"; then - found=yes - lib=$dir/$lib.lib - break - fi - if test -f "$dir/lib$lib.a"; then - found=yes - lib=$dir/lib$lib.a - break - fi - done - IFS=$save_IFS - - if test "$found" != yes; then - lib=$lib.lib - fi -} - -# func_cl_wrapper cl arg... -# Adjust compile command to suit cl -func_cl_wrapper () -{ - # Assume a capable shell - lib_path= - shared=: - linker_opts= - for arg - do - if test -n "$eat"; then - eat= - else - case $1 in - -o) - # configure might choose to run compile as 'compile cc -o foo foo.c'. - eat=1 - case $2 in - *.o | *.[oO][bB][jJ]) - func_file_conv "$2" - set x "$@" -Fo"$file" - shift - ;; - *) - func_file_conv "$2" - set x "$@" -Fe"$file" - shift - ;; - esac - ;; - -I) - eat=1 - func_file_conv "$2" mingw - set x "$@" -I"$file" - shift - ;; - -I*) - func_file_conv "${1#-I}" mingw - set x "$@" -I"$file" - shift - ;; - -l) - eat=1 - func_cl_dashl "$2" - set x "$@" "$lib" - shift - ;; - -l*) - func_cl_dashl "${1#-l}" - set x "$@" "$lib" - shift - ;; - -L) - eat=1 - func_cl_dashL "$2" - ;; - -L*) - func_cl_dashL "${1#-L}" - ;; - -static) - shared=false - ;; - -Wl,*) - arg=${1#-Wl,} - save_ifs="$IFS"; IFS=',' - for flag in $arg; do - IFS="$save_ifs" - linker_opts="$linker_opts $flag" - done - IFS="$save_ifs" - ;; - -Xlinker) - eat=1 - linker_opts="$linker_opts $2" - ;; - -*) - set x "$@" "$1" - shift - ;; - *.cc | *.CC | *.cxx | *.CXX | *.[cC]++) - func_file_conv "$1" - set x "$@" -Tp"$file" - shift - ;; - *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO]) - func_file_conv "$1" mingw - set x "$@" "$file" - shift - ;; - *) - set x "$@" "$1" - shift - ;; - esac - fi - shift - done - if test -n "$linker_opts"; then - linker_opts="-link$linker_opts" - fi - exec "$@" $linker_opts - exit 1 -} - -eat= - -case $1 in - '') - echo "$0: No command. Try '$0 --help' for more information." 1>&2 - exit 1; - ;; - -h | --h*) - cat <<\EOF -Usage: compile [--help] [--version] PROGRAM [ARGS] - -Wrapper for compilers which do not understand '-c -o'. -Remove '-o dest.o' from ARGS, run PROGRAM with the remaining -arguments, and rename the output as expected. - -If you are trying to build a whole package this is not the -right script to run: please start by reading the file 'INSTALL'. - -Report bugs to . -EOF - exit $? - ;; - -v | --v*) - echo "compile $scriptversion" - exit $? - ;; - cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \ - icl | *[/\\]icl | icl.exe | *[/\\]icl.exe ) - func_cl_wrapper "$@" # Doesn't return... - ;; -esac - -ofile= -cfile= - -for arg -do - if test -n "$eat"; then - eat= - else - case $1 in - -o) - # configure might choose to run compile as 'compile cc -o foo foo.c'. - # So we strip '-o arg' only if arg is an object. - eat=1 - case $2 in - *.o | *.obj) - ofile=$2 - ;; - *) - set x "$@" -o "$2" - shift - ;; - esac - ;; - *.c) - cfile=$1 - set x "$@" "$1" - shift - ;; - *) - set x "$@" "$1" - shift - ;; - esac - fi - shift -done - -if test -z "$ofile" || test -z "$cfile"; then - # If no '-o' option was seen then we might have been invoked from a - # pattern rule where we don't need one. That is ok -- this is a - # normal compilation that the losing compiler can handle. If no - # '.c' file was seen then we are probably linking. That is also - # ok. - exec "$@" -fi - -# Name of file we expect compiler to create. -cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'` - -# Create the lock directory. -# Note: use '[/\\:.-]' here to ensure that we don't use the same name -# that we are using for the .o file. Also, base the name on the expected -# object file name, since that is what matters with a parallel build. -lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d -while true; do - if mkdir "$lockdir" >/dev/null 2>&1; then - break - fi - sleep 1 -done -# FIXME: race condition here if user kills between mkdir and trap. -trap "rmdir '$lockdir'; exit 1" 1 2 15 - -# Run the compile. -"$@" -ret=$? - -if test -f "$cofile"; then - test "$cofile" = "$ofile" || mv "$cofile" "$ofile" -elif test -f "${cofile}bj"; then - test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile" -fi - -rmdir "$lockdir" -exit $ret - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC0" -# time-stamp-end: "; # UTC" -# End: diff --git a/completion/meson.build b/completion/meson.build new file mode 100644 index 0000000..05ae43f --- /dev/null +++ b/completion/meson.build @@ -0,0 +1,15 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +install_data( + 'flatpak', + install_dir : get_option('datadir') / 'bash-completion' / 'completions', +) +install_data( + '_flatpak', + install_dir : get_option('datadir') / 'zsh' / 'site-functions', +) +install_data( + 'flatpak.fish', + install_dir : get_option('datadir') / 'fish' / 'vendor_completions.d', +) diff --git a/config.guess b/config.guess deleted file mode 100755 index 7f76b62..0000000 --- a/config.guess +++ /dev/null @@ -1,1754 +0,0 @@ -#! /bin/sh -# Attempt to guess a canonical system name. -# Copyright 1992-2022 Free Software Foundation, Inc. - -# shellcheck disable=SC2006,SC2268 # see below for rationale - -timestamp='2022-01-09' - -# This file is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, see . -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that -# program. This Exception is an additional permission under section 7 -# of the GNU General Public License, version 3 ("GPLv3"). -# -# Originally written by Per Bothner; maintained since 2000 by Ben Elliston. -# -# You can get the latest version of this script from: -# https://git.savannah.gnu.org/cgit/config.git/plain/config.guess -# -# Please send patches to . - - -# The "shellcheck disable" line above the timestamp inhibits complaints -# about features and limitations of the classic Bourne shell that were -# superseded or lifted in POSIX. However, this script identifies a wide -# variety of pre-POSIX systems that do not have POSIX shells at all, and -# even some reasonably current systems (Solaris 10 as case-in-point) still -# have a pre-POSIX /bin/sh. - - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] - -Output the configuration name of the system \`$me' is run on. - -Options: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.guess ($timestamp) - -Originally written by Per Bothner. -Copyright 1992-2022 Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" >&2 - exit 1 ;; - * ) - break ;; - esac -done - -if test $# != 0; then - echo "$me: too many arguments$help" >&2 - exit 1 -fi - -# Just in case it came from the environment. -GUESS= - -# CC_FOR_BUILD -- compiler used by this script. Note that the use of a -# compiler to aid in system detection is discouraged as it requires -# temporary files to be created and, as you can see below, it is a -# headache to deal with in a portable fashion. - -# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still -# use `HOST_CC' if defined, but it is deprecated. - -# Portable tmp directory creation inspired by the Autoconf team. - -tmp= -# shellcheck disable=SC2172 -trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15 - -set_cc_for_build() { - # prevent multiple calls if $tmp is already set - test "$tmp" && return 0 - : "${TMPDIR=/tmp}" - # shellcheck disable=SC2039,SC3028 - { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } || - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } || - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } - dummy=$tmp/dummy - case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in - ,,) echo "int x;" > "$dummy.c" - for driver in cc gcc c89 c99 ; do - if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then - CC_FOR_BUILD=$driver - break - fi - done - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; - esac -} - -# This is needed to find uname on a Pyramid OSx when run in the BSD universe. -# (ghazi@noc.rutgers.edu 1994-08-24) -if test -f /.attbin/uname ; then - PATH=$PATH:/.attbin ; export PATH -fi - -UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown -UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown -UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown -UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown - -case $UNAME_SYSTEM in -Linux|GNU|GNU/*) - LIBC=unknown - - set_cc_for_build - cat <<-EOF > "$dummy.c" - #include - #if defined(__UCLIBC__) - LIBC=uclibc - #elif defined(__dietlibc__) - LIBC=dietlibc - #elif defined(__GLIBC__) - LIBC=gnu - #else - #include - /* First heuristic to detect musl libc. */ - #ifdef __DEFINED_va_list - LIBC=musl - #endif - #endif - EOF - cc_set_libc=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` - eval "$cc_set_libc" - - # Second heuristic to detect musl libc. - if [ "$LIBC" = unknown ] && - command -v ldd >/dev/null && - ldd --version 2>&1 | grep -q ^musl; then - LIBC=musl - fi - - # If the system lacks a compiler, then just pick glibc. - # We could probably try harder. - if [ "$LIBC" = unknown ]; then - LIBC=gnu - fi - ;; -esac - -# Note: order is significant - the case branches are not exclusive. - -case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in - *:NetBSD:*:*) - # NetBSD (nbsd) targets should (where applicable) match one or - # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, - # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently - # switched to ELF, *-*-netbsd* would select the old - # object file format. This provides both forward - # compatibility and a consistent mechanism for selecting the - # object file format. - # - # Note: NetBSD doesn't particularly care about the vendor - # portion of the name. We always set it to "unknown". - UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ - /sbin/sysctl -n hw.machine_arch 2>/dev/null || \ - /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \ - echo unknown)` - case $UNAME_MACHINE_ARCH in - aarch64eb) machine=aarch64_be-unknown ;; - armeb) machine=armeb-unknown ;; - arm*) machine=arm-unknown ;; - sh3el) machine=shl-unknown ;; - sh3eb) machine=sh-unknown ;; - sh5el) machine=sh5le-unknown ;; - earmv*) - arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'` - endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` - machine=${arch}${endian}-unknown - ;; - *) machine=$UNAME_MACHINE_ARCH-unknown ;; - esac - # The Operating System including object format, if it has switched - # to ELF recently (or will in the future) and ABI. - case $UNAME_MACHINE_ARCH in - earm*) - os=netbsdelf - ;; - arm*|i386|m68k|ns32k|sh3*|sparc|vax) - set_cc_for_build - if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ELF__ - then - # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). - # Return netbsd for either. FIX? - os=netbsd - else - os=netbsdelf - fi - ;; - *) - os=netbsd - ;; - esac - # Determine ABI tags. - case $UNAME_MACHINE_ARCH in - earm*) - expr='s/^earmv[0-9]/-eabi/;s/eb$//' - abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"` - ;; - esac - # The OS release - # Debian GNU/NetBSD machines have a different userland, and - # thus, need a distinct triplet. However, they do not need - # kernel version information, so it can be replaced with a - # suitable tag, in the style of linux-gnu. - case $UNAME_VERSION in - Debian*) - release='-gnu' - ;; - *) - release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2` - ;; - esac - # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: - # contains redundant information, the shorter form: - # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - GUESS=$machine-${os}${release}${abi-} - ;; - *:Bitrig:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` - GUESS=$UNAME_MACHINE_ARCH-unknown-bitrig$UNAME_RELEASE - ;; - *:OpenBSD:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` - GUESS=$UNAME_MACHINE_ARCH-unknown-openbsd$UNAME_RELEASE - ;; - *:SecBSD:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'` - GUESS=$UNAME_MACHINE_ARCH-unknown-secbsd$UNAME_RELEASE - ;; - *:LibertyBSD:*:*) - UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` - GUESS=$UNAME_MACHINE_ARCH-unknown-libertybsd$UNAME_RELEASE - ;; - *:MidnightBSD:*:*) - GUESS=$UNAME_MACHINE-unknown-midnightbsd$UNAME_RELEASE - ;; - *:ekkoBSD:*:*) - GUESS=$UNAME_MACHINE-unknown-ekkobsd$UNAME_RELEASE - ;; - *:SolidBSD:*:*) - GUESS=$UNAME_MACHINE-unknown-solidbsd$UNAME_RELEASE - ;; - *:OS108:*:*) - GUESS=$UNAME_MACHINE-unknown-os108_$UNAME_RELEASE - ;; - macppc:MirBSD:*:*) - GUESS=powerpc-unknown-mirbsd$UNAME_RELEASE - ;; - *:MirBSD:*:*) - GUESS=$UNAME_MACHINE-unknown-mirbsd$UNAME_RELEASE - ;; - *:Sortix:*:*) - GUESS=$UNAME_MACHINE-unknown-sortix - ;; - *:Twizzler:*:*) - GUESS=$UNAME_MACHINE-unknown-twizzler - ;; - *:Redox:*:*) - GUESS=$UNAME_MACHINE-unknown-redox - ;; - mips:OSF1:*.*) - GUESS=mips-dec-osf1 - ;; - alpha:OSF1:*:*) - # Reset EXIT trap before exiting to avoid spurious non-zero exit code. - trap '' 0 - case $UNAME_RELEASE in - *4.0) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` - ;; - *5.*) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` - ;; - esac - # According to Compaq, /usr/sbin/psrinfo has been available on - # OSF/1 and Tru64 systems produced since 1995. I hope that - # covers most systems running today. This code pipes the CPU - # types through head -n 1, so we only detect the type of CPU 0. - ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` - case $ALPHA_CPU_TYPE in - "EV4 (21064)") - UNAME_MACHINE=alpha ;; - "EV4.5 (21064)") - UNAME_MACHINE=alpha ;; - "LCA4 (21066/21068)") - UNAME_MACHINE=alpha ;; - "EV5 (21164)") - UNAME_MACHINE=alphaev5 ;; - "EV5.6 (21164A)") - UNAME_MACHINE=alphaev56 ;; - "EV5.6 (21164PC)") - UNAME_MACHINE=alphapca56 ;; - "EV5.7 (21164PC)") - UNAME_MACHINE=alphapca57 ;; - "EV6 (21264)") - UNAME_MACHINE=alphaev6 ;; - "EV6.7 (21264A)") - UNAME_MACHINE=alphaev67 ;; - "EV6.8CB (21264C)") - UNAME_MACHINE=alphaev68 ;; - "EV6.8AL (21264B)") - UNAME_MACHINE=alphaev68 ;; - "EV6.8CX (21264D)") - UNAME_MACHINE=alphaev68 ;; - "EV6.9A (21264/EV69A)") - UNAME_MACHINE=alphaev69 ;; - "EV7 (21364)") - UNAME_MACHINE=alphaev7 ;; - "EV7.9 (21364A)") - UNAME_MACHINE=alphaev79 ;; - esac - # A Pn.n version is a patched version. - # A Vn.n version is a released version. - # A Tn.n version is a released field test version. - # A Xn.n version is an unreleased experimental baselevel. - # 1.2 uses "1.2" for uname -r. - OSF_REL=`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` - GUESS=$UNAME_MACHINE-dec-osf$OSF_REL - ;; - Amiga*:UNIX_System_V:4.0:*) - GUESS=m68k-unknown-sysv4 - ;; - *:[Aa]miga[Oo][Ss]:*:*) - GUESS=$UNAME_MACHINE-unknown-amigaos - ;; - *:[Mm]orph[Oo][Ss]:*:*) - GUESS=$UNAME_MACHINE-unknown-morphos - ;; - *:OS/390:*:*) - GUESS=i370-ibm-openedition - ;; - *:z/VM:*:*) - GUESS=s390-ibm-zvmoe - ;; - *:OS400:*:*) - GUESS=powerpc-ibm-os400 - ;; - arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) - GUESS=arm-acorn-riscix$UNAME_RELEASE - ;; - arm*:riscos:*:*|arm*:RISCOS:*:*) - GUESS=arm-unknown-riscos - ;; - SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) - GUESS=hppa1.1-hitachi-hiuxmpp - ;; - Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) - # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. - case `(/bin/universe) 2>/dev/null` in - att) GUESS=pyramid-pyramid-sysv3 ;; - *) GUESS=pyramid-pyramid-bsd ;; - esac - ;; - NILE*:*:*:dcosx) - GUESS=pyramid-pyramid-svr4 - ;; - DRS?6000:unix:4.0:6*) - GUESS=sparc-icl-nx6 - ;; - DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) - case `/usr/bin/uname -p` in - sparc) GUESS=sparc-icl-nx7 ;; - esac - ;; - s390x:SunOS:*:*) - SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` - GUESS=$UNAME_MACHINE-ibm-solaris2$SUN_REL - ;; - sun4H:SunOS:5.*:*) - SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` - GUESS=sparc-hal-solaris2$SUN_REL - ;; - sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` - GUESS=sparc-sun-solaris2$SUN_REL - ;; - i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) - GUESS=i386-pc-auroraux$UNAME_RELEASE - ;; - i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) - set_cc_for_build - SUN_ARCH=i386 - # If there is a compiler, see if it is configured for 64-bit objects. - # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. - # This test works for both compilers. - if test "$CC_FOR_BUILD" != no_compiler_found; then - if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -m64 -E - 2>/dev/null) | \ - grep IS_64BIT_ARCH >/dev/null - then - SUN_ARCH=x86_64 - fi - fi - SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` - GUESS=$SUN_ARCH-pc-solaris2$SUN_REL - ;; - sun4*:SunOS:6*:*) - # According to config.sub, this is the proper way to canonicalize - # SunOS6. Hard to guess exactly what SunOS6 will be like, but - # it's likely to be more like Solaris than SunOS4. - SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` - GUESS=sparc-sun-solaris3$SUN_REL - ;; - sun4*:SunOS:*:*) - case `/usr/bin/arch -k` in - Series*|S4*) - UNAME_RELEASE=`uname -v` - ;; - esac - # Japanese Language versions have a version number like `4.1.3-JL'. - SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/'` - GUESS=sparc-sun-sunos$SUN_REL - ;; - sun3*:SunOS:*:*) - GUESS=m68k-sun-sunos$UNAME_RELEASE - ;; - sun*:*:4.2BSD:*) - UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` - test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 - case `/bin/arch` in - sun3) - GUESS=m68k-sun-sunos$UNAME_RELEASE - ;; - sun4) - GUESS=sparc-sun-sunos$UNAME_RELEASE - ;; - esac - ;; - aushp:SunOS:*:*) - GUESS=sparc-auspex-sunos$UNAME_RELEASE - ;; - # The situation for MiNT is a little confusing. The machine name - # can be virtually everything (everything which is not - # "atarist" or "atariste" at least should have a processor - # > m68000). The system name ranges from "MiNT" over "FreeMiNT" - # to the lowercase version "mint" (or "freemint"). Finally - # the system name "TOS" denotes a system which is actually not - # MiNT. But MiNT is downward compatible to TOS, so this should - # be no problem. - atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) - GUESS=m68k-atari-mint$UNAME_RELEASE - ;; - atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) - GUESS=m68k-atari-mint$UNAME_RELEASE - ;; - *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - GUESS=m68k-atari-mint$UNAME_RELEASE - ;; - milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - GUESS=m68k-milan-mint$UNAME_RELEASE - ;; - hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - GUESS=m68k-hades-mint$UNAME_RELEASE - ;; - *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - GUESS=m68k-unknown-mint$UNAME_RELEASE - ;; - m68k:machten:*:*) - GUESS=m68k-apple-machten$UNAME_RELEASE - ;; - powerpc:machten:*:*) - GUESS=powerpc-apple-machten$UNAME_RELEASE - ;; - RISC*:Mach:*:*) - GUESS=mips-dec-mach_bsd4.3 - ;; - RISC*:ULTRIX:*:*) - GUESS=mips-dec-ultrix$UNAME_RELEASE - ;; - VAX*:ULTRIX*:*:*) - GUESS=vax-dec-ultrix$UNAME_RELEASE - ;; - 2020:CLIX:*:* | 2430:CLIX:*:*) - GUESS=clipper-intergraph-clix$UNAME_RELEASE - ;; - mips:*:*:UMIPS | mips:*:*:RISCos) - set_cc_for_build - sed 's/^ //' << EOF > "$dummy.c" -#ifdef __cplusplus -#include /* for printf() prototype */ - int main (int argc, char *argv[]) { -#else - int main (argc, argv) int argc; char *argv[]; { -#endif - #if defined (host_mips) && defined (MIPSEB) - #if defined (SYSTYPE_SYSV) - printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_SVR4) - printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) - printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0); - #endif - #endif - exit (-1); - } -EOF - $CC_FOR_BUILD -o "$dummy" "$dummy.c" && - dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` && - SYSTEM_NAME=`"$dummy" "$dummyarg"` && - { echo "$SYSTEM_NAME"; exit; } - GUESS=mips-mips-riscos$UNAME_RELEASE - ;; - Motorola:PowerMAX_OS:*:*) - GUESS=powerpc-motorola-powermax - ;; - Motorola:*:4.3:PL8-*) - GUESS=powerpc-harris-powermax - ;; - Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) - GUESS=powerpc-harris-powermax - ;; - Night_Hawk:Power_UNIX:*:*) - GUESS=powerpc-harris-powerunix - ;; - m88k:CX/UX:7*:*) - GUESS=m88k-harris-cxux7 - ;; - m88k:*:4*:R4*) - GUESS=m88k-motorola-sysv4 - ;; - m88k:*:3*:R3*) - GUESS=m88k-motorola-sysv3 - ;; - AViiON:dgux:*:*) - # DG/UX returns AViiON for all architectures - UNAME_PROCESSOR=`/usr/bin/uname -p` - if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110 - then - if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \ - test "$TARGET_BINARY_INTERFACE"x = x - then - GUESS=m88k-dg-dgux$UNAME_RELEASE - else - GUESS=m88k-dg-dguxbcs$UNAME_RELEASE - fi - else - GUESS=i586-dg-dgux$UNAME_RELEASE - fi - ;; - M88*:DolphinOS:*:*) # DolphinOS (SVR3) - GUESS=m88k-dolphin-sysv3 - ;; - M88*:*:R3*:*) - # Delta 88k system running SVR3 - GUESS=m88k-motorola-sysv3 - ;; - XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) - GUESS=m88k-tektronix-sysv3 - ;; - Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) - GUESS=m68k-tektronix-bsd - ;; - *:IRIX*:*:*) - IRIX_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/g'` - GUESS=mips-sgi-irix$IRIX_REL - ;; - ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. - GUESS=romp-ibm-aix # uname -m gives an 8 hex-code CPU id - ;; # Note that: echo "'`uname -s`'" gives 'AIX ' - i*86:AIX:*:*) - GUESS=i386-ibm-aix - ;; - ia64:AIX:*:*) - if test -x /usr/bin/oslevel ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=$UNAME_VERSION.$UNAME_RELEASE - fi - GUESS=$UNAME_MACHINE-ibm-aix$IBM_REV - ;; - *:AIX:2:3) - if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - set_cc_for_build - sed 's/^ //' << EOF > "$dummy.c" - #include - - main() - { - if (!__power_pc()) - exit(1); - puts("powerpc-ibm-aix3.2.5"); - exit(0); - } -EOF - if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` - then - GUESS=$SYSTEM_NAME - else - GUESS=rs6000-ibm-aix3.2.5 - fi - elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then - GUESS=rs6000-ibm-aix3.2.4 - else - GUESS=rs6000-ibm-aix3.2 - fi - ;; - *:AIX:*:[4567]) - IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` - if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then - IBM_ARCH=rs6000 - else - IBM_ARCH=powerpc - fi - if test -x /usr/bin/lslpp ; then - IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | \ - awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` - else - IBM_REV=$UNAME_VERSION.$UNAME_RELEASE - fi - GUESS=$IBM_ARCH-ibm-aix$IBM_REV - ;; - *:AIX:*:*) - GUESS=rs6000-ibm-aix - ;; - ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*) - GUESS=romp-ibm-bsd4.4 - ;; - ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and - GUESS=romp-ibm-bsd$UNAME_RELEASE # 4.3 with uname added to - ;; # report: romp-ibm BSD 4.3 - *:BOSX:*:*) - GUESS=rs6000-bull-bosx - ;; - DPX/2?00:B.O.S.:*:*) - GUESS=m68k-bull-sysv3 - ;; - 9000/[34]??:4.3bsd:1.*:*) - GUESS=m68k-hp-bsd - ;; - hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) - GUESS=m68k-hp-bsd4.4 - ;; - 9000/[34678]??:HP-UX:*:*) - HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'` - case $UNAME_MACHINE in - 9000/31?) HP_ARCH=m68000 ;; - 9000/[34]??) HP_ARCH=m68k ;; - 9000/[678][0-9][0-9]) - if test -x /usr/bin/getconf; then - sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` - sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case $sc_cpu_version in - 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 - 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 - 532) # CPU_PA_RISC2_0 - case $sc_kernel_bits in - 32) HP_ARCH=hppa2.0n ;; - 64) HP_ARCH=hppa2.0w ;; - '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 - esac ;; - esac - fi - if test "$HP_ARCH" = ""; then - set_cc_for_build - sed 's/^ //' << EOF > "$dummy.c" - - #define _HPUX_SOURCE - #include - #include - - int main () - { - #if defined(_SC_KERNEL_BITS) - long bits = sysconf(_SC_KERNEL_BITS); - #endif - long cpu = sysconf (_SC_CPU_VERSION); - - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1"); break; - case CPU_PA_RISC2_0: - #if defined(_SC_KERNEL_BITS) - switch (bits) - { - case 64: puts ("hppa2.0w"); break; - case 32: puts ("hppa2.0n"); break; - default: puts ("hppa2.0"); break; - } break; - #else /* !defined(_SC_KERNEL_BITS) */ - puts ("hppa2.0"); break; - #endif - default: puts ("hppa1.0"); break; - } - exit (0); - } -EOF - (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"` - test -z "$HP_ARCH" && HP_ARCH=hppa - fi ;; - esac - if test "$HP_ARCH" = hppa2.0w - then - set_cc_for_build - - # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating - # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler - # generating 64-bit code. GNU and HP use different nomenclature: - # - # $ CC_FOR_BUILD=cc ./config.guess - # => hppa2.0w-hp-hpux11.23 - # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess - # => hppa64-hp-hpux11.23 - - if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | - grep -q __LP64__ - then - HP_ARCH=hppa2.0w - else - HP_ARCH=hppa64 - fi - fi - GUESS=$HP_ARCH-hp-hpux$HPUX_REV - ;; - ia64:HP-UX:*:*) - HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'` - GUESS=ia64-hp-hpux$HPUX_REV - ;; - 3050*:HI-UX:*:*) - set_cc_for_build - sed 's/^ //' << EOF > "$dummy.c" - #include - int - main () - { - long cpu = sysconf (_SC_CPU_VERSION); - /* The order matters, because CPU_IS_HP_MC68K erroneously returns - true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct - results, however. */ - if (CPU_IS_PA_RISC (cpu)) - { - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; - case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; - default: puts ("hppa-hitachi-hiuxwe2"); break; - } - } - else if (CPU_IS_HP_MC68K (cpu)) - puts ("m68k-hitachi-hiuxwe2"); - else puts ("unknown-hitachi-hiuxwe2"); - exit (0); - } -EOF - $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` && - { echo "$SYSTEM_NAME"; exit; } - GUESS=unknown-hitachi-hiuxwe2 - ;; - 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*) - GUESS=hppa1.1-hp-bsd - ;; - 9000/8??:4.3bsd:*:*) - GUESS=hppa1.0-hp-bsd - ;; - *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) - GUESS=hppa1.0-hp-mpeix - ;; - hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*) - GUESS=hppa1.1-hp-osf - ;; - hp8??:OSF1:*:*) - GUESS=hppa1.0-hp-osf - ;; - i*86:OSF1:*:*) - if test -x /usr/sbin/sysversion ; then - GUESS=$UNAME_MACHINE-unknown-osf1mk - else - GUESS=$UNAME_MACHINE-unknown-osf1 - fi - ;; - parisc*:Lites*:*:*) - GUESS=hppa1.1-hp-lites - ;; - C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) - GUESS=c1-convex-bsd - ;; - C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit ;; - C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) - GUESS=c34-convex-bsd - ;; - C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) - GUESS=c38-convex-bsd - ;; - C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) - GUESS=c4-convex-bsd - ;; - CRAY*Y-MP:*:*:*) - CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` - GUESS=ymp-cray-unicos$CRAY_REL - ;; - CRAY*[A-Z]90:*:*:*) - echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \ - | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ - -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ - -e 's/\.[^.]*$/.X/' - exit ;; - CRAY*TS:*:*:*) - CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` - GUESS=t90-cray-unicos$CRAY_REL - ;; - CRAY*T3E:*:*:*) - CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` - GUESS=alphaev5-cray-unicosmk$CRAY_REL - ;; - CRAY*SV1:*:*:*) - CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` - GUESS=sv1-cray-unicos$CRAY_REL - ;; - *:UNICOS/mp:*:*) - CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` - GUESS=craynv-cray-unicosmp$CRAY_REL - ;; - F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) - FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` - FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` - FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'` - GUESS=${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL} - ;; - 5000:UNIX_System_V:4.*:*) - FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` - FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` - GUESS=sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL} - ;; - i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) - GUESS=$UNAME_MACHINE-pc-bsdi$UNAME_RELEASE - ;; - sparc*:BSD/OS:*:*) - GUESS=sparc-unknown-bsdi$UNAME_RELEASE - ;; - *:BSD/OS:*:*) - GUESS=$UNAME_MACHINE-unknown-bsdi$UNAME_RELEASE - ;; - arm:FreeBSD:*:*) - UNAME_PROCESSOR=`uname -p` - set_cc_for_build - if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ARM_PCS_VFP - then - FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` - GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabi - else - FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` - GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabihf - fi - ;; - *:FreeBSD:*:*) - UNAME_PROCESSOR=`/usr/bin/uname -p` - case $UNAME_PROCESSOR in - amd64) - UNAME_PROCESSOR=x86_64 ;; - i386) - UNAME_PROCESSOR=i586 ;; - esac - FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` - GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL - ;; - i*:CYGWIN*:*) - GUESS=$UNAME_MACHINE-pc-cygwin - ;; - *:MINGW64*:*) - GUESS=$UNAME_MACHINE-pc-mingw64 - ;; - *:MINGW*:*) - GUESS=$UNAME_MACHINE-pc-mingw32 - ;; - *:MSYS*:*) - GUESS=$UNAME_MACHINE-pc-msys - ;; - i*:PW*:*) - GUESS=$UNAME_MACHINE-pc-pw32 - ;; - *:SerenityOS:*:*) - GUESS=$UNAME_MACHINE-pc-serenity - ;; - *:Interix*:*) - case $UNAME_MACHINE in - x86) - GUESS=i586-pc-interix$UNAME_RELEASE - ;; - authenticamd | genuineintel | EM64T) - GUESS=x86_64-unknown-interix$UNAME_RELEASE - ;; - IA64) - GUESS=ia64-unknown-interix$UNAME_RELEASE - ;; - esac ;; - i*:UWIN*:*) - GUESS=$UNAME_MACHINE-pc-uwin - ;; - amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) - GUESS=x86_64-pc-cygwin - ;; - prep*:SunOS:5.*:*) - SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` - GUESS=powerpcle-unknown-solaris2$SUN_REL - ;; - *:GNU:*:*) - # the GNU system - GNU_ARCH=`echo "$UNAME_MACHINE" | sed -e 's,[-/].*$,,'` - GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's,/.*$,,'` - GUESS=$GNU_ARCH-unknown-$LIBC$GNU_REL - ;; - *:GNU/*:*:*) - # other systems with GNU libc and userland - GNU_SYS=`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"` - GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` - GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC - ;; - *:Minix:*:*) - GUESS=$UNAME_MACHINE-unknown-minix - ;; - aarch64:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - aarch64_be:Linux:*:*) - UNAME_MACHINE=aarch64_be - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in - EV5) UNAME_MACHINE=alphaev5 ;; - EV56) UNAME_MACHINE=alphaev56 ;; - PCA56) UNAME_MACHINE=alphapca56 ;; - PCA57) UNAME_MACHINE=alphapca56 ;; - EV6) UNAME_MACHINE=alphaev6 ;; - EV67) UNAME_MACHINE=alphaev67 ;; - EV68*) UNAME_MACHINE=alphaev68 ;; - esac - objdump --private-headers /bin/sh | grep -q ld.so.1 - if test "$?" = 0 ; then LIBC=gnulibc1 ; fi - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - arc:Linux:*:* | arceb:Linux:*:* | arc32:Linux:*:* | arc64:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - arm*:Linux:*:*) - set_cc_for_build - if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ARM_EABI__ - then - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - else - if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep -q __ARM_PCS_VFP - then - GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabi - else - GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabihf - fi - fi - ;; - avr32*:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - cris:Linux:*:*) - GUESS=$UNAME_MACHINE-axis-linux-$LIBC - ;; - crisv32:Linux:*:*) - GUESS=$UNAME_MACHINE-axis-linux-$LIBC - ;; - e2k:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - frv:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - hexagon:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - i*86:Linux:*:*) - GUESS=$UNAME_MACHINE-pc-linux-$LIBC - ;; - ia64:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - k1om:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - m32r*:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - m68*:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - mips:Linux:*:* | mips64:Linux:*:*) - set_cc_for_build - IS_GLIBC=0 - test x"${LIBC}" = xgnu && IS_GLIBC=1 - sed 's/^ //' << EOF > "$dummy.c" - #undef CPU - #undef mips - #undef mipsel - #undef mips64 - #undef mips64el - #if ${IS_GLIBC} && defined(_ABI64) - LIBCABI=gnuabi64 - #else - #if ${IS_GLIBC} && defined(_ABIN32) - LIBCABI=gnuabin32 - #else - LIBCABI=${LIBC} - #endif - #endif - - #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 - CPU=mipsisa64r6 - #else - #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 - CPU=mipsisa32r6 - #else - #if defined(__mips64) - CPU=mips64 - #else - CPU=mips - #endif - #endif - #endif - - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - MIPS_ENDIAN=el - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - MIPS_ENDIAN= - #else - MIPS_ENDIAN= - #endif - #endif -EOF - cc_set_vars=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'` - eval "$cc_set_vars" - test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; } - ;; - mips64el:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - openrisc*:Linux:*:*) - GUESS=or1k-unknown-linux-$LIBC - ;; - or32:Linux:*:* | or1k*:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - padre:Linux:*:*) - GUESS=sparc-unknown-linux-$LIBC - ;; - parisc64:Linux:*:* | hppa64:Linux:*:*) - GUESS=hppa64-unknown-linux-$LIBC - ;; - parisc:Linux:*:* | hppa:Linux:*:*) - # Look for CPU level - case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) GUESS=hppa1.1-unknown-linux-$LIBC ;; - PA8*) GUESS=hppa2.0-unknown-linux-$LIBC ;; - *) GUESS=hppa-unknown-linux-$LIBC ;; - esac - ;; - ppc64:Linux:*:*) - GUESS=powerpc64-unknown-linux-$LIBC - ;; - ppc:Linux:*:*) - GUESS=powerpc-unknown-linux-$LIBC - ;; - ppc64le:Linux:*:*) - GUESS=powerpc64le-unknown-linux-$LIBC - ;; - ppcle:Linux:*:*) - GUESS=powerpcle-unknown-linux-$LIBC - ;; - riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - s390:Linux:*:* | s390x:Linux:*:*) - GUESS=$UNAME_MACHINE-ibm-linux-$LIBC - ;; - sh64*:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - sh*:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - sparc:Linux:*:* | sparc64:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - tile*:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - vax:Linux:*:*) - GUESS=$UNAME_MACHINE-dec-linux-$LIBC - ;; - x86_64:Linux:*:*) - set_cc_for_build - LIBCABI=$LIBC - if test "$CC_FOR_BUILD" != no_compiler_found; then - if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_X32 >/dev/null - then - LIBCABI=${LIBC}x32 - fi - fi - GUESS=$UNAME_MACHINE-pc-linux-$LIBCABI - ;; - xtensa*:Linux:*:*) - GUESS=$UNAME_MACHINE-unknown-linux-$LIBC - ;; - i*86:DYNIX/ptx:4*:*) - # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. - # earlier versions are messed up and put the nodename in both - # sysname and nodename. - GUESS=i386-sequent-sysv4 - ;; - i*86:UNIX_SV:4.2MP:2.*) - # Unixware is an offshoot of SVR4, but it has its own version - # number series starting with 2... - # I am not positive that other SVR4 systems won't match this, - # I just have to hope. -- rms. - # Use sysv4.2uw... so that sysv4* matches it. - GUESS=$UNAME_MACHINE-pc-sysv4.2uw$UNAME_VERSION - ;; - i*86:OS/2:*:*) - # If we were able to find `uname', then EMX Unix compatibility - # is probably installed. - GUESS=$UNAME_MACHINE-pc-os2-emx - ;; - i*86:XTS-300:*:STOP) - GUESS=$UNAME_MACHINE-unknown-stop - ;; - i*86:atheos:*:*) - GUESS=$UNAME_MACHINE-unknown-atheos - ;; - i*86:syllable:*:*) - GUESS=$UNAME_MACHINE-pc-syllable - ;; - i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) - GUESS=i386-unknown-lynxos$UNAME_RELEASE - ;; - i*86:*DOS:*:*) - GUESS=$UNAME_MACHINE-pc-msdosdjgpp - ;; - i*86:*:4.*:*) - UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'` - if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then - GUESS=$UNAME_MACHINE-univel-sysv$UNAME_REL - else - GUESS=$UNAME_MACHINE-pc-sysv$UNAME_REL - fi - ;; - i*86:*:5:[678]*) - # UnixWare 7.x, OpenUNIX and OpenServer 6. - case `/bin/uname -X | grep "^Machine"` in - *486*) UNAME_MACHINE=i486 ;; - *Pentium) UNAME_MACHINE=i586 ;; - *Pent*|*Celeron) UNAME_MACHINE=i686 ;; - esac - GUESS=$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} - ;; - i*86:*:3.2:*) - if test -f /usr/options/cb.name; then - UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then - UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` - (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 - (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ - && UNAME_MACHINE=i586 - (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ - && UNAME_MACHINE=i686 - (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ - && UNAME_MACHINE=i686 - GUESS=$UNAME_MACHINE-pc-sco$UNAME_REL - else - GUESS=$UNAME_MACHINE-pc-sysv32 - fi - ;; - pc:*:*:*) - # Left here for compatibility: - # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i586. - # Note: whatever this is, it MUST be the same as what config.sub - # prints for the "djgpp" host, or else GDB configure will decide that - # this is a cross-build. - GUESS=i586-pc-msdosdjgpp - ;; - Intel:Mach:3*:*) - GUESS=i386-pc-mach3 - ;; - paragon:*:*:*) - GUESS=i860-intel-osf1 - ;; - i860:*:4.*:*) # i860-SVR4 - if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then - GUESS=i860-stardent-sysv$UNAME_RELEASE # Stardent Vistra i860-SVR4 - else # Add other i860-SVR4 vendors below as they are discovered. - GUESS=i860-unknown-sysv$UNAME_RELEASE # Unknown i860-SVR4 - fi - ;; - mini*:CTIX:SYS*5:*) - # "miniframe" - GUESS=m68010-convergent-sysv - ;; - mc68k:UNIX:SYSTEM5:3.51m) - GUESS=m68k-convergent-sysv - ;; - M680?0:D-NIX:5.3:*) - GUESS=m68k-diab-dnix - ;; - M68*:*:R3V[5678]*:*) - test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; - 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) - OS_REL='' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; - 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4; exit; } ;; - NCR*:*:4.2:* | MPRAS*:*:4.2:*) - OS_REL='.3' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } - /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ - && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; - m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - GUESS=m68k-unknown-lynxos$UNAME_RELEASE - ;; - mc68030:UNIX_System_V:4.*:*) - GUESS=m68k-atari-sysv4 - ;; - TSUNAMI:LynxOS:2.*:*) - GUESS=sparc-unknown-lynxos$UNAME_RELEASE - ;; - rs6000:LynxOS:2.*:*) - GUESS=rs6000-unknown-lynxos$UNAME_RELEASE - ;; - PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) - GUESS=powerpc-unknown-lynxos$UNAME_RELEASE - ;; - SM[BE]S:UNIX_SV:*:*) - GUESS=mips-dde-sysv$UNAME_RELEASE - ;; - RM*:ReliantUNIX-*:*:*) - GUESS=mips-sni-sysv4 - ;; - RM*:SINIX-*:*:*) - GUESS=mips-sni-sysv4 - ;; - *:SINIX-*:*:*) - if uname -p 2>/dev/null >/dev/null ; then - UNAME_MACHINE=`(uname -p) 2>/dev/null` - GUESS=$UNAME_MACHINE-sni-sysv4 - else - GUESS=ns32k-sni-sysv - fi - ;; - PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort - # says - GUESS=i586-unisys-sysv4 - ;; - *:UNIX_System_V:4*:FTX*) - # From Gerald Hewes . - # How about differentiating between stratus architectures? -djm - GUESS=hppa1.1-stratus-sysv4 - ;; - *:*:*:FTX*) - # From seanf@swdc.stratus.com. - GUESS=i860-stratus-sysv4 - ;; - i*86:VOS:*:*) - # From Paul.Green@stratus.com. - GUESS=$UNAME_MACHINE-stratus-vos - ;; - *:VOS:*:*) - # From Paul.Green@stratus.com. - GUESS=hppa1.1-stratus-vos - ;; - mc68*:A/UX:*:*) - GUESS=m68k-apple-aux$UNAME_RELEASE - ;; - news*:NEWS-OS:6*:*) - GUESS=mips-sony-newsos6 - ;; - R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if test -d /usr/nec; then - GUESS=mips-nec-sysv$UNAME_RELEASE - else - GUESS=mips-unknown-sysv$UNAME_RELEASE - fi - ;; - BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. - GUESS=powerpc-be-beos - ;; - BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. - GUESS=powerpc-apple-beos - ;; - BePC:BeOS:*:*) # BeOS running on Intel PC compatible. - GUESS=i586-pc-beos - ;; - BePC:Haiku:*:*) # Haiku running on Intel PC compatible. - GUESS=i586-pc-haiku - ;; - x86_64:Haiku:*:*) - GUESS=x86_64-unknown-haiku - ;; - SX-4:SUPER-UX:*:*) - GUESS=sx4-nec-superux$UNAME_RELEASE - ;; - SX-5:SUPER-UX:*:*) - GUESS=sx5-nec-superux$UNAME_RELEASE - ;; - SX-6:SUPER-UX:*:*) - GUESS=sx6-nec-superux$UNAME_RELEASE - ;; - SX-7:SUPER-UX:*:*) - GUESS=sx7-nec-superux$UNAME_RELEASE - ;; - SX-8:SUPER-UX:*:*) - GUESS=sx8-nec-superux$UNAME_RELEASE - ;; - SX-8R:SUPER-UX:*:*) - GUESS=sx8r-nec-superux$UNAME_RELEASE - ;; - SX-ACE:SUPER-UX:*:*) - GUESS=sxace-nec-superux$UNAME_RELEASE - ;; - Power*:Rhapsody:*:*) - GUESS=powerpc-apple-rhapsody$UNAME_RELEASE - ;; - *:Rhapsody:*:*) - GUESS=$UNAME_MACHINE-apple-rhapsody$UNAME_RELEASE - ;; - arm64:Darwin:*:*) - GUESS=aarch64-apple-darwin$UNAME_RELEASE - ;; - *:Darwin:*:*) - UNAME_PROCESSOR=`uname -p` - case $UNAME_PROCESSOR in - unknown) UNAME_PROCESSOR=powerpc ;; - esac - if command -v xcode-select > /dev/null 2> /dev/null && \ - ! xcode-select --print-path > /dev/null 2> /dev/null ; then - # Avoid executing cc if there is no toolchain installed as - # cc will be a stub that puts up a graphical alert - # prompting the user to install developer tools. - CC_FOR_BUILD=no_compiler_found - else - set_cc_for_build - fi - if test "$CC_FOR_BUILD" != no_compiler_found; then - if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_64BIT_ARCH >/dev/null - then - case $UNAME_PROCESSOR in - i386) UNAME_PROCESSOR=x86_64 ;; - powerpc) UNAME_PROCESSOR=powerpc64 ;; - esac - fi - # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc - if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_PPC >/dev/null - then - UNAME_PROCESSOR=powerpc - fi - elif test "$UNAME_PROCESSOR" = i386 ; then - # uname -m returns i386 or x86_64 - UNAME_PROCESSOR=$UNAME_MACHINE - fi - GUESS=$UNAME_PROCESSOR-apple-darwin$UNAME_RELEASE - ;; - *:procnto*:*:* | *:QNX:[0123456789]*:*) - UNAME_PROCESSOR=`uname -p` - if test "$UNAME_PROCESSOR" = x86; then - UNAME_PROCESSOR=i386 - UNAME_MACHINE=pc - fi - GUESS=$UNAME_PROCESSOR-$UNAME_MACHINE-nto-qnx$UNAME_RELEASE - ;; - *:QNX:*:4*) - GUESS=i386-pc-qnx - ;; - NEO-*:NONSTOP_KERNEL:*:*) - GUESS=neo-tandem-nsk$UNAME_RELEASE - ;; - NSE-*:NONSTOP_KERNEL:*:*) - GUESS=nse-tandem-nsk$UNAME_RELEASE - ;; - NSR-*:NONSTOP_KERNEL:*:*) - GUESS=nsr-tandem-nsk$UNAME_RELEASE - ;; - NSV-*:NONSTOP_KERNEL:*:*) - GUESS=nsv-tandem-nsk$UNAME_RELEASE - ;; - NSX-*:NONSTOP_KERNEL:*:*) - GUESS=nsx-tandem-nsk$UNAME_RELEASE - ;; - *:NonStop-UX:*:*) - GUESS=mips-compaq-nonstopux - ;; - BS2000:POSIX*:*:*) - GUESS=bs2000-siemens-sysv - ;; - DS/*:UNIX_System_V:*:*) - GUESS=$UNAME_MACHINE-$UNAME_SYSTEM-$UNAME_RELEASE - ;; - *:Plan9:*:*) - # "uname -m" is not consistent, so use $cputype instead. 386 - # is converted to i386 for consistency with other x86 - # operating systems. - if test "${cputype-}" = 386; then - UNAME_MACHINE=i386 - elif test "x${cputype-}" != x; then - UNAME_MACHINE=$cputype - fi - GUESS=$UNAME_MACHINE-unknown-plan9 - ;; - *:TOPS-10:*:*) - GUESS=pdp10-unknown-tops10 - ;; - *:TENEX:*:*) - GUESS=pdp10-unknown-tenex - ;; - KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) - GUESS=pdp10-dec-tops20 - ;; - XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) - GUESS=pdp10-xkl-tops20 - ;; - *:TOPS-20:*:*) - GUESS=pdp10-unknown-tops20 - ;; - *:ITS:*:*) - GUESS=pdp10-unknown-its - ;; - SEI:*:*:SEIUX) - GUESS=mips-sei-seiux$UNAME_RELEASE - ;; - *:DragonFly:*:*) - DRAGONFLY_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` - GUESS=$UNAME_MACHINE-unknown-dragonfly$DRAGONFLY_REL - ;; - *:*VMS:*:*) - UNAME_MACHINE=`(uname -p) 2>/dev/null` - case $UNAME_MACHINE in - A*) GUESS=alpha-dec-vms ;; - I*) GUESS=ia64-dec-vms ;; - V*) GUESS=vax-dec-vms ;; - esac ;; - *:XENIX:*:SysV) - GUESS=i386-pc-xenix - ;; - i*86:skyos:*:*) - SKYOS_REL=`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'` - GUESS=$UNAME_MACHINE-pc-skyos$SKYOS_REL - ;; - i*86:rdos:*:*) - GUESS=$UNAME_MACHINE-pc-rdos - ;; - i*86:Fiwix:*:*) - GUESS=$UNAME_MACHINE-pc-fiwix - ;; - *:AROS:*:*) - GUESS=$UNAME_MACHINE-unknown-aros - ;; - x86_64:VMkernel:*:*) - GUESS=$UNAME_MACHINE-unknown-esx - ;; - amd64:Isilon\ OneFS:*:*) - GUESS=x86_64-unknown-onefs - ;; - *:Unleashed:*:*) - GUESS=$UNAME_MACHINE-unknown-unleashed$UNAME_RELEASE - ;; -esac - -# Do we have a guess based on uname results? -if test "x$GUESS" != x; then - echo "$GUESS" - exit -fi - -# No uname command or uname output not recognized. -set_cc_for_build -cat > "$dummy.c" < -#include -#endif -#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) -#if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) -#include -#if defined(_SIZE_T_) || defined(SIGLOST) -#include -#endif -#endif -#endif -main () -{ -#if defined (sony) -#if defined (MIPSEB) - /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, - I don't know.... */ - printf ("mips-sony-bsd\n"); exit (0); -#else -#include - printf ("m68k-sony-newsos%s\n", -#ifdef NEWSOS4 - "4" -#else - "" -#endif - ); exit (0); -#endif -#endif - -#if defined (NeXT) -#if !defined (__ARCHITECTURE__) -#define __ARCHITECTURE__ "m68k" -#endif - int version; - version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; - if (version < 4) - printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); - else - printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); - exit (0); -#endif - -#if defined (MULTIMAX) || defined (n16) -#if defined (UMAXV) - printf ("ns32k-encore-sysv\n"); exit (0); -#else -#if defined (CMU) - printf ("ns32k-encore-mach\n"); exit (0); -#else - printf ("ns32k-encore-bsd\n"); exit (0); -#endif -#endif -#endif - -#if defined (__386BSD__) - printf ("i386-pc-bsd\n"); exit (0); -#endif - -#if defined (sequent) -#if defined (i386) - printf ("i386-sequent-dynix\n"); exit (0); -#endif -#if defined (ns32000) - printf ("ns32k-sequent-dynix\n"); exit (0); -#endif -#endif - -#if defined (_SEQUENT_) - struct utsname un; - - uname(&un); - if (strncmp(un.version, "V2", 2) == 0) { - printf ("i386-sequent-ptx2\n"); exit (0); - } - if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ - printf ("i386-sequent-ptx1\n"); exit (0); - } - printf ("i386-sequent-ptx\n"); exit (0); -#endif - -#if defined (vax) -#if !defined (ultrix) -#include -#if defined (BSD) -#if BSD == 43 - printf ("vax-dec-bsd4.3\n"); exit (0); -#else -#if BSD == 199006 - printf ("vax-dec-bsd4.3reno\n"); exit (0); -#else - printf ("vax-dec-bsd\n"); exit (0); -#endif -#endif -#else - printf ("vax-dec-bsd\n"); exit (0); -#endif -#else -#if defined(_SIZE_T_) || defined(SIGLOST) - struct utsname un; - uname (&un); - printf ("vax-dec-ultrix%s\n", un.release); exit (0); -#else - printf ("vax-dec-ultrix\n"); exit (0); -#endif -#endif -#endif -#if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) -#if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) -#if defined(_SIZE_T_) || defined(SIGLOST) - struct utsname *un; - uname (&un); - printf ("mips-dec-ultrix%s\n", un.release); exit (0); -#else - printf ("mips-dec-ultrix\n"); exit (0); -#endif -#endif -#endif - -#if defined (alliant) && defined (i860) - printf ("i860-alliant-bsd\n"); exit (0); -#endif - - exit (1); -} -EOF - -$CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`"$dummy"` && - { echo "$SYSTEM_NAME"; exit; } - -# Apollos put the system type in the environment. -test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; } - -echo "$0: unable to guess system type" >&2 - -case $UNAME_MACHINE:$UNAME_SYSTEM in - mips:Linux | mips64:Linux) - # If we got here on MIPS GNU/Linux, output extra information. - cat >&2 <&2 <&2 </dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null` - -hostinfo = `(hostinfo) 2>/dev/null` -/bin/universe = `(/bin/universe) 2>/dev/null` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` -/bin/arch = `(/bin/arch) 2>/dev/null` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` - -UNAME_MACHINE = "$UNAME_MACHINE" -UNAME_RELEASE = "$UNAME_RELEASE" -UNAME_SYSTEM = "$UNAME_SYSTEM" -UNAME_VERSION = "$UNAME_VERSION" -EOF -fi - -exit 1 - -# Local variables: -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/config.h.in b/config.h.in deleted file mode 100644 index 0e168bf..0000000 --- a/config.h.in +++ /dev/null @@ -1,257 +0,0 @@ -/* config.h.in. Generated from configure.ac by autoheader. */ - -/* Define if we should avoid using O_TMPFILE */ -#undef DISABLE_OTMPFILE - -/* Define if sandboxed triggers are disabled */ -#undef DISABLE_SANDBOXED_TRIGGERS - -/* Define to 1 if translation of program messages to the user's native - language is requested. */ -#undef ENABLE_NLS - -/* Define if using seccomp */ -#undef ENABLE_SECCOMP - -/* Define if we should be compatible with pseudo */ -#undef ENABLE_WRPSEUDO_COMPAT - -/* Define if using xauth */ -#undef ENABLE_XAUTH - -/* defines how to decorate public symbols while building */ -#undef FLATPAK_EXTERN - -/* Define to the FUSE API version */ -#undef FUSE_USE_VERSION - -/* gettext domain */ -#undef GETTEXT_PACKAGE - -/* Ignore massive GTimeVal deprecation warnings in 2.62 */ -#undef GLIB_VERSION_MIN_REQUIRED - -/* Define to 1 if you have the `archive_read_support_filter_all' function. */ -#undef HAVE_ARCHIVE_READ_SUPPORT_FILTER_ALL - -/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the - CoreFoundation framework. */ -#undef HAVE_CFLOCALECOPYCURRENT - -/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in - the CoreFoundation framework. */ -#undef HAVE_CFPREFERENCESCOPYAPPVALUE - -/* Define if we have libcurl.pc */ -#undef HAVE_CURL - -/* Define if the GNU dcgettext() function is already present or preinstalled. - */ -#undef HAVE_DCGETTEXT - -/* Define if dconf is available */ -#undef HAVE_DCONF - -/* Define to 1 if you have the declaration of `copy_file_range', and to 0 if - you don't. */ -#undef HAVE_DECL_COPY_FILE_RANGE - -/* Define to 1 if you have the declaration of `memfd_create', and to 0 if you - don't. */ -#undef HAVE_DECL_MEMFD_CREATE - -/* Define to 1 if you have the declaration of `renameat2', and to 0 if you - don't. */ -#undef HAVE_DECL_RENAMEAT2 - -/* Define to 1 if you have the header file. */ -#undef HAVE_DLFCN_H - -/* Define to 1 if you have the `fdwalk' function. */ -#undef HAVE_FDWALK - -/* Define if the GNU gettext() function is already present or preinstalled. */ -#undef HAVE_GETTEXT - -/* Define if you have the iconv() function and it works. */ -#undef HAVE_ICONV - -/* Define to 1 if you have the header file. */ -#undef HAVE_INTTYPES_H - -/* Define if libmalcontent is available */ -#undef HAVE_LIBMALCONTENT - -/* Define if libsystemd is available */ -#undef HAVE_LIBSYSTEMD - -/* Define to 1 if you have the header file. */ -#undef HAVE_MINIX_CONFIG_H - -/* Define if we have libsoup-2.4.pc */ -#undef HAVE_SOUP - -/* Define to 1 if you have the header file. */ -#undef HAVE_STDINT_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_STDIO_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_STDLIB_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_STRINGS_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_STRING_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_STAT_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_TYPES_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_UNISTD_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_WCHAR_H - -/* Define if libzstd is available */ -#undef HAVE_ZSTD - -/* Define to the sub-directory where libtool stores uninstalled libraries. */ -#undef LT_OBJDIR - -/* Define to the address where bug reports for this package should be sent. */ -#undef PACKAGE_BUGREPORT - -/* Extra version */ -#undef PACKAGE_EXTRA_VERSION - -/* Major version */ -#undef PACKAGE_MAJOR_VERSION - -/* Micro version */ -#undef PACKAGE_MICRO_VERSION - -/* Minor version */ -#undef PACKAGE_MINOR_VERSION - -/* Define to the full name of this package. */ -#undef PACKAGE_NAME - -/* Define to the full name and version of this package. */ -#undef PACKAGE_STRING - -/* Define to the one symbol short name of this package. */ -#undef PACKAGE_TARNAME - -/* Define to the home page for this package. */ -#undef PACKAGE_URL - -/* Define to the version of this package. */ -#undef PACKAGE_VERSION - -/* Define to 1 if all of the C90 standard headers exist (not just the ones - required in a freestanding environment). This macro is provided for - backward compatibility; new code need not use it. */ -#undef STDC_HEADERS - -/* Enable extensions on AIX 3, Interix. */ -#ifndef _ALL_SOURCE -# undef _ALL_SOURCE -#endif -/* Enable general extensions on macOS. */ -#ifndef _DARWIN_C_SOURCE -# undef _DARWIN_C_SOURCE -#endif -/* Enable general extensions on Solaris. */ -#ifndef __EXTENSIONS__ -# undef __EXTENSIONS__ -#endif -/* Enable GNU extensions on systems that have them. */ -#ifndef _GNU_SOURCE -# undef _GNU_SOURCE -#endif -/* Enable X/Open compliant socket functions that do not require linking - with -lxnet on HP-UX 11.11. */ -#ifndef _HPUX_ALT_XOPEN_SOCKET_API -# undef _HPUX_ALT_XOPEN_SOCKET_API -#endif -/* Identify the host operating system as Minix. - This macro does not affect the system headers' behavior. - A future release of Autoconf may stop defining this macro. */ -#ifndef _MINIX -# undef _MINIX -#endif -/* Enable general extensions on NetBSD. - Enable NetBSD compatibility extensions on Minix. */ -#ifndef _NETBSD_SOURCE -# undef _NETBSD_SOURCE -#endif -/* Enable OpenBSD compatibility extensions on NetBSD. - Oddly enough, this does nothing on OpenBSD. */ -#ifndef _OPENBSD_SOURCE -# undef _OPENBSD_SOURCE -#endif -/* Define to 1 if needed for POSIX-compatible behavior. */ -#ifndef _POSIX_SOURCE -# undef _POSIX_SOURCE -#endif -/* Define to 2 if needed for POSIX-compatible behavior. */ -#ifndef _POSIX_1_SOURCE -# undef _POSIX_1_SOURCE -#endif -/* Enable POSIX-compatible threading on Solaris. */ -#ifndef _POSIX_PTHREAD_SEMANTICS -# undef _POSIX_PTHREAD_SEMANTICS -#endif -/* Enable extensions specified by ISO/IEC TS 18661-5:2014. */ -#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ -# undef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ -#endif -/* Enable extensions specified by ISO/IEC TS 18661-1:2014. */ -#ifndef __STDC_WANT_IEC_60559_BFP_EXT__ -# undef __STDC_WANT_IEC_60559_BFP_EXT__ -#endif -/* Enable extensions specified by ISO/IEC TS 18661-2:2015. */ -#ifndef __STDC_WANT_IEC_60559_DFP_EXT__ -# undef __STDC_WANT_IEC_60559_DFP_EXT__ -#endif -/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */ -#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__ -# undef __STDC_WANT_IEC_60559_FUNCS_EXT__ -#endif -/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */ -#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__ -# undef __STDC_WANT_IEC_60559_TYPES_EXT__ -#endif -/* Enable extensions specified by ISO/IEC TR 24731-2:2010. */ -#ifndef __STDC_WANT_LIB_EXT2__ -# undef __STDC_WANT_LIB_EXT2__ -#endif -/* Enable extensions specified by ISO/IEC 24747:2009. */ -#ifndef __STDC_WANT_MATH_SPEC_FUNCS__ -# undef __STDC_WANT_MATH_SPEC_FUNCS__ -#endif -/* Enable extensions on HP NonStop. */ -#ifndef _TANDEM_SOURCE -# undef _TANDEM_SOURCE -#endif -/* Enable X/Open extensions. Define to 500 only if necessary - to make mbstate_t available. */ -#ifndef _XOPEN_SOURCE -# undef _XOPEN_SOURCE -#endif - - -/* Define if using system-helper */ -#undef USE_SYSTEM_HELPER - -/* Number of bits in a file offset, on hosts where this is settable. */ -#undef _FILE_OFFSET_BITS - -/* Define for large files, on AIX-style hosts. */ -#undef _LARGE_FILES diff --git a/config.rpath b/config.rpath deleted file mode 100755 index c38b914..0000000 --- a/config.rpath +++ /dev/null @@ -1,690 +0,0 @@ -#! /bin/sh -# Output a system dependent set of variables, describing how to set the -# run time search path of shared libraries in an executable. -# -# Copyright 1996-2013 Free Software Foundation, Inc. -# Taken from GNU libtool, 2001 -# Originally by Gordon Matzigkeit , 1996 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. -# -# The first argument passed to this file is the canonical host specification, -# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# or -# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -# The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld -# should be set by the caller. -# -# The set of defined variables is at the end of this script. - -# Known limitations: -# - On IRIX 6.5 with CC="cc", the run time search patch must not be longer -# than 256 bytes, otherwise the compiler driver will dump core. The only -# known workaround is to choose shorter directory names for the build -# directory and/or the installation directory. - -# All known linkers require a '.a' archive for static linking (except MSVC, -# which needs '.lib'). -libext=a -shrext=.so - -host="$1" -host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - -# Code taken from libtool.m4's _LT_CC_BASENAME. - -for cc_temp in $CC""; do - case $cc_temp in - compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; - distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; - \-*) ;; - *) break;; - esac -done -cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'` - -# Code taken from libtool.m4's _LT_COMPILER_PIC. - -wl= -if test "$GCC" = yes; then - wl='-Wl,' -else - case "$host_os" in - aix*) - wl='-Wl,' - ;; - mingw* | cygwin* | pw32* | os2* | cegcc*) - ;; - hpux9* | hpux10* | hpux11*) - wl='-Wl,' - ;; - irix5* | irix6* | nonstopux*) - wl='-Wl,' - ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) - case $cc_basename in - ecc*) - wl='-Wl,' - ;; - icc* | ifort*) - wl='-Wl,' - ;; - lf95*) - wl='-Wl,' - ;; - nagfor*) - wl='-Wl,-Wl,,' - ;; - pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) - wl='-Wl,' - ;; - ccc*) - wl='-Wl,' - ;; - xl* | bgxl* | bgf* | mpixl*) - wl='-Wl,' - ;; - como) - wl='-lopt=' - ;; - *) - case `$CC -V 2>&1 | sed 5q` in - *Sun\ F* | *Sun*Fortran*) - wl= - ;; - *Sun\ C*) - wl='-Wl,' - ;; - esac - ;; - esac - ;; - newsos6) - ;; - *nto* | *qnx*) - ;; - osf3* | osf4* | osf5*) - wl='-Wl,' - ;; - rdos*) - ;; - solaris*) - case $cc_basename in - f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) - wl='-Qoption ld ' - ;; - *) - wl='-Wl,' - ;; - esac - ;; - sunos4*) - wl='-Qoption ld ' - ;; - sysv4 | sysv4.2uw2* | sysv4.3*) - wl='-Wl,' - ;; - sysv4*MP*) - ;; - sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) - wl='-Wl,' - ;; - unicos*) - wl='-Wl,' - ;; - uts4*) - ;; - esac -fi - -# Code taken from libtool.m4's _LT_LINKER_SHLIBS. - -hardcode_libdir_flag_spec= -hardcode_libdir_separator= -hardcode_direct=no -hardcode_minus_L=no - -case "$host_os" in - cygwin* | mingw* | pw32* | cegcc*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$GCC" != yes; then - with_gnu_ld=no - fi - ;; - interix*) - # we just hope/assume this is gcc and not c89 (= MSVC++) - with_gnu_ld=yes - ;; - openbsd*) - with_gnu_ld=no - ;; -esac - -ld_shlibs=yes -if test "$with_gnu_ld" = yes; then - # Set some defaults for GNU ld with shared library support. These - # are reset later if shared libraries are not supported. Putting them - # here allows them to be overridden if necessary. - # Unlike libtool, we use -rpath here, not --rpath, since the documented - # option of GNU ld is called -rpath, not --rpath. - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - case "$host_os" in - aix[3-9]*) - # On AIX/PPC, the GNU linker is very broken - if test "$host_cpu" != ia64; then - ld_shlibs=no - fi - ;; - amigaos*) - case "$host_cpu" in - powerpc) - ;; - m68k) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - ;; - esac - ;; - beos*) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - : - else - ld_shlibs=no - fi - ;; - cygwin* | mingw* | pw32* | cegcc*) - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec='-L$libdir' - if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then - : - else - ld_shlibs=no - fi - ;; - haiku*) - ;; - interix[3-9]*) - hardcode_direct=no - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - ;; - gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - : - else - ld_shlibs=no - fi - ;; - netbsd*) - ;; - solaris*) - if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then - ld_shlibs=no - elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - : - else - ld_shlibs=no - fi - ;; - sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) - case `$LD -v 2>&1` in - *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*) - ld_shlibs=no - ;; - *) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`' - else - ld_shlibs=no - fi - ;; - esac - ;; - sunos4*) - hardcode_direct=yes - ;; - *) - if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then - : - else - ld_shlibs=no - fi - ;; - esac - if test "$ld_shlibs" = no; then - hardcode_libdir_flag_spec= - fi -else - case "$host_os" in - aix3*) - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - hardcode_minus_L=yes - if test "$GCC" = yes; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - hardcode_direct=unsupported - fi - ;; - aix[4-9]*) - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - else - aix_use_runtimelinking=no - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. - case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) - for ld_flag in $LDFLAGS; do - if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then - aix_use_runtimelinking=yes - break - fi - done - ;; - esac - fi - hardcode_direct=yes - hardcode_libdir_separator=':' - if test "$GCC" = yes; then - case $host_os in aix4.[012]|aix4.[012].*) - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - : - else - # We have old collect2 - hardcode_direct=unsupported - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - ;; - esac - fi - # Begin _LT_AC_SYS_LIBPATH_AIX. - echo 'int main () { return 0; }' > conftest.c - ${CC} ${LDFLAGS} conftest.c -o conftest - aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } -}'` - if test -z "$aix_libpath"; then - aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } -}'` - fi - if test -z "$aix_libpath"; then - aix_libpath="/usr/lib:/lib" - fi - rm -f conftest.c conftest - # End _LT_AC_SYS_LIBPATH_AIX. - if test "$aix_use_runtimelinking" = yes; then - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" - else - if test "$host_cpu" = ia64; then - hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' - else - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" - fi - fi - ;; - amigaos*) - case "$host_cpu" in - powerpc) - ;; - m68k) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - ;; - esac - ;; - bsdi[45]*) - ;; - cygwin* | mingw* | pw32* | cegcc*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec=' ' - libext=lib - ;; - darwin* | rhapsody*) - hardcode_direct=no - if { case $cc_basename in ifort*) true;; *) test "$GCC" = yes;; esac; }; then - : - else - ld_shlibs=no - fi - ;; - dgux*) - hardcode_libdir_flag_spec='-L$libdir' - ;; - freebsd2.2*) - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - ;; - freebsd2*) - hardcode_direct=yes - hardcode_minus_L=yes - ;; - freebsd* | dragonfly*) - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - ;; - hpux9*) - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - hardcode_minus_L=yes - ;; - hpux10*) - if test "$with_gnu_ld" = no; then - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - hardcode_minus_L=yes - fi - ;; - hpux11*) - if test "$with_gnu_ld" = no; then - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - case $host_cpu in - hppa*64*|ia64*) - hardcode_direct=no - ;; - *) - hardcode_direct=yes - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - hardcode_minus_L=yes - ;; - esac - fi - ;; - irix5* | irix6* | nonstopux*) - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - netbsd*) - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - ;; - newsos6) - hardcode_direct=yes - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - *nto* | *qnx*) - ;; - openbsd*) - if test -f /usr/libexec/ld.so; then - hardcode_direct=yes - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - else - case "$host_os" in - openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) - hardcode_libdir_flag_spec='-R$libdir' - ;; - *) - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - ;; - esac - fi - else - ld_shlibs=no - fi - ;; - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - ;; - osf3*) - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - osf4* | osf5*) - if test "$GCC" = yes; then - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - # Both cc and cxx compiler support -rpath directly - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - ;; - solaris*) - hardcode_libdir_flag_spec='-R$libdir' - ;; - sunos4*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=yes - hardcode_minus_L=yes - ;; - sysv4) - case $host_vendor in - sni) - hardcode_direct=yes # is this really true??? - ;; - siemens) - hardcode_direct=no - ;; - motorola) - hardcode_direct=no #Motorola manual says yes, but my tests say they lie - ;; - esac - ;; - sysv4.3*) - ;; - sysv4*MP*) - if test -d /usr/nec; then - ld_shlibs=yes - fi - ;; - sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) - ;; - sysv5* | sco3.2v5* | sco5v6*) - hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`' - hardcode_libdir_separator=':' - ;; - uts4*) - hardcode_libdir_flag_spec='-L$libdir' - ;; - *) - ld_shlibs=no - ;; - esac -fi - -# Check dynamic linker characteristics -# Code taken from libtool.m4's _LT_SYS_DYNAMIC_LINKER. -# Unlike libtool.m4, here we don't care about _all_ names of the library, but -# only about the one the linker finds when passed -lNAME. This is the last -# element of library_names_spec in libtool.m4, or possibly two of them if the -# linker has special search rules. -library_names_spec= # the last element of library_names_spec in libtool.m4 -libname_spec='lib$name' -case "$host_os" in - aix3*) - library_names_spec='$libname.a' - ;; - aix[4-9]*) - library_names_spec='$libname$shrext' - ;; - amigaos*) - case "$host_cpu" in - powerpc*) - library_names_spec='$libname$shrext' ;; - m68k) - library_names_spec='$libname.a' ;; - esac - ;; - beos*) - library_names_spec='$libname$shrext' - ;; - bsdi[45]*) - library_names_spec='$libname$shrext' - ;; - cygwin* | mingw* | pw32* | cegcc*) - shrext=.dll - library_names_spec='$libname.dll.a $libname.lib' - ;; - darwin* | rhapsody*) - shrext=.dylib - library_names_spec='$libname$shrext' - ;; - dgux*) - library_names_spec='$libname$shrext' - ;; - freebsd* | dragonfly*) - case "$host_os" in - freebsd[123]*) - library_names_spec='$libname$shrext$versuffix' ;; - *) - library_names_spec='$libname$shrext' ;; - esac - ;; - gnu*) - library_names_spec='$libname$shrext' - ;; - haiku*) - library_names_spec='$libname$shrext' - ;; - hpux9* | hpux10* | hpux11*) - case $host_cpu in - ia64*) - shrext=.so - ;; - hppa*64*) - shrext=.sl - ;; - *) - shrext=.sl - ;; - esac - library_names_spec='$libname$shrext' - ;; - interix[3-9]*) - library_names_spec='$libname$shrext' - ;; - irix5* | irix6* | nonstopux*) - library_names_spec='$libname$shrext' - case "$host_os" in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in - *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;; - *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;; - *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;; - *) libsuff= shlibsuff= ;; - esac - ;; - esac - ;; - linux*oldld* | linux*aout* | linux*coff*) - ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) - library_names_spec='$libname$shrext' - ;; - knetbsd*-gnu) - library_names_spec='$libname$shrext' - ;; - netbsd*) - library_names_spec='$libname$shrext' - ;; - newsos6) - library_names_spec='$libname$shrext' - ;; - *nto* | *qnx*) - library_names_spec='$libname$shrext' - ;; - openbsd*) - library_names_spec='$libname$shrext$versuffix' - ;; - os2*) - libname_spec='$name' - shrext=.dll - library_names_spec='$libname.a' - ;; - osf3* | osf4* | osf5*) - library_names_spec='$libname$shrext' - ;; - rdos*) - ;; - solaris*) - library_names_spec='$libname$shrext' - ;; - sunos4*) - library_names_spec='$libname$shrext$versuffix' - ;; - sysv4 | sysv4.3*) - library_names_spec='$libname$shrext' - ;; - sysv4*MP*) - library_names_spec='$libname$shrext' - ;; - sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - library_names_spec='$libname$shrext' - ;; - tpf*) - library_names_spec='$libname$shrext' - ;; - uts4*) - library_names_spec='$libname$shrext' - ;; -esac - -sed_quote_subst='s/\(["`$\\]\)/\\\1/g' -escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"` -shlibext=`echo "$shrext" | sed -e 's,^\.,,'` -escaped_libname_spec=`echo "X$libname_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` -escaped_library_names_spec=`echo "X$library_names_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` -escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` - -LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that -# program. This Exception is an additional permission under section 7 -# of the GNU General Public License, version 3 ("GPLv3"). - - -# Please send patches to . -# -# Configuration subroutine to validate and canonicalize a configuration type. -# Supply the specified configuration type as an argument. -# If it is invalid, we print an error message on stderr and exit with code 1. -# Otherwise, we print the canonical config type on stdout and succeed. - -# You can get the latest version of this script from: -# https://git.savannah.gnu.org/cgit/config.git/plain/config.sub - -# This file is supposed to be the same for all GNU packages -# and recognize all the CPU types, system types and aliases -# that are meaningful with *any* GNU software. -# Each package is responsible for reporting which valid configurations -# it does not support. The user should be able to distinguish -# a failure to support a valid configuration from a meaningless -# configuration. - -# The goal of this file is to map all the various variations of a given -# machine specification into a single specification in the form: -# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# or in some cases, the newer four-part form: -# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -# It is wrong to echo any other type of specification. - -# The "shellcheck disable" line above the timestamp inhibits complaints -# about features and limitations of the classic Bourne shell that were -# superseded or lifted in POSIX. However, this script identifies a wide -# variety of pre-POSIX systems that do not have POSIX shells at all, and -# even some reasonably current systems (Solaris 10 as case-in-point) still -# have a pre-POSIX /bin/sh. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS - -Canonicalize a configuration name. - -Options: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.sub ($timestamp) - -Copyright 1992-2022 Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit ;; - --version | -v ) - echo "$version" ; exit ;; - --help | --h* | -h ) - echo "$usage"; exit ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" >&2 - exit 1 ;; - - *local*) - # First pass through any local machine types. - echo "$1" - exit ;; - - * ) - break ;; - esac -done - -case $# in - 0) echo "$me: missing argument$help" >&2 - exit 1;; - 1) ;; - *) echo "$me: too many arguments$help" >&2 - exit 1;; -esac - -# Split fields of configuration type -# shellcheck disable=SC2162 -saved_IFS=$IFS -IFS="-" read field1 field2 field3 field4 <&2 - exit 1 - ;; - *-*-*-*) - basic_machine=$field1-$field2 - basic_os=$field3-$field4 - ;; - *-*-*) - # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two - # parts - maybe_os=$field2-$field3 - case $maybe_os in - nto-qnx* | linux-* | uclinux-uclibc* \ - | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \ - | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \ - | storm-chaos* | os2-emx* | rtmk-nova*) - basic_machine=$field1 - basic_os=$maybe_os - ;; - android-linux) - basic_machine=$field1-unknown - basic_os=linux-android - ;; - *) - basic_machine=$field1-$field2 - basic_os=$field3 - ;; - esac - ;; - *-*) - # A lone config we happen to match not fitting any pattern - case $field1-$field2 in - decstation-3100) - basic_machine=mips-dec - basic_os= - ;; - *-*) - # Second component is usually, but not always the OS - case $field2 in - # Prevent following clause from handling this valid os - sun*os*) - basic_machine=$field1 - basic_os=$field2 - ;; - zephyr*) - basic_machine=$field1-unknown - basic_os=$field2 - ;; - # Manufacturers - dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \ - | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \ - | unicom* | ibm* | next | hp | isi* | apollo | altos* \ - | convergent* | ncr* | news | 32* | 3600* | 3100* \ - | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \ - | ultra | tti* | harris | dolphin | highlevel | gould \ - | cbm | ns | masscomp | apple | axis | knuth | cray \ - | microblaze* | sim | cisco \ - | oki | wec | wrs | winbond) - basic_machine=$field1-$field2 - basic_os= - ;; - *) - basic_machine=$field1 - basic_os=$field2 - ;; - esac - ;; - esac - ;; - *) - # Convert single-component short-hands not valid as part of - # multi-component configurations. - case $field1 in - 386bsd) - basic_machine=i386-pc - basic_os=bsd - ;; - a29khif) - basic_machine=a29k-amd - basic_os=udi - ;; - adobe68k) - basic_machine=m68010-adobe - basic_os=scout - ;; - alliant) - basic_machine=fx80-alliant - basic_os= - ;; - altos | altos3068) - basic_machine=m68k-altos - basic_os= - ;; - am29k) - basic_machine=a29k-none - basic_os=bsd - ;; - amdahl) - basic_machine=580-amdahl - basic_os=sysv - ;; - amiga) - basic_machine=m68k-unknown - basic_os= - ;; - amigaos | amigados) - basic_machine=m68k-unknown - basic_os=amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - basic_os=sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - basic_os=sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - basic_os=bsd - ;; - aros) - basic_machine=i386-pc - basic_os=aros - ;; - aux) - basic_machine=m68k-apple - basic_os=aux - ;; - balance) - basic_machine=ns32k-sequent - basic_os=dynix - ;; - blackfin) - basic_machine=bfin-unknown - basic_os=linux - ;; - cegcc) - basic_machine=arm-unknown - basic_os=cegcc - ;; - convex-c1) - basic_machine=c1-convex - basic_os=bsd - ;; - convex-c2) - basic_machine=c2-convex - basic_os=bsd - ;; - convex-c32) - basic_machine=c32-convex - basic_os=bsd - ;; - convex-c34) - basic_machine=c34-convex - basic_os=bsd - ;; - convex-c38) - basic_machine=c38-convex - basic_os=bsd - ;; - cray) - basic_machine=j90-cray - basic_os=unicos - ;; - crds | unos) - basic_machine=m68k-crds - basic_os= - ;; - da30) - basic_machine=m68k-da30 - basic_os= - ;; - decstation | pmax | pmin | dec3100 | decstatn) - basic_machine=mips-dec - basic_os= - ;; - delta88) - basic_machine=m88k-motorola - basic_os=sysv3 - ;; - dicos) - basic_machine=i686-pc - basic_os=dicos - ;; - djgpp) - basic_machine=i586-pc - basic_os=msdosdjgpp - ;; - ebmon29k) - basic_machine=a29k-amd - basic_os=ebmon - ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - basic_os=ose - ;; - gmicro) - basic_machine=tron-gmicro - basic_os=sysv - ;; - go32) - basic_machine=i386-pc - basic_os=go32 - ;; - h8300hms) - basic_machine=h8300-hitachi - basic_os=hms - ;; - h8300xray) - basic_machine=h8300-hitachi - basic_os=xray - ;; - h8500hms) - basic_machine=h8500-hitachi - basic_os=hms - ;; - harris) - basic_machine=m88k-harris - basic_os=sysv3 - ;; - hp300 | hp300hpux) - basic_machine=m68k-hp - basic_os=hpux - ;; - hp300bsd) - basic_machine=m68k-hp - basic_os=bsd - ;; - hppaosf) - basic_machine=hppa1.1-hp - basic_os=osf - ;; - hppro) - basic_machine=hppa1.1-hp - basic_os=proelf - ;; - i386mach) - basic_machine=i386-mach - basic_os=mach - ;; - isi68 | isi) - basic_machine=m68k-isi - basic_os=sysv - ;; - m68knommu) - basic_machine=m68k-unknown - basic_os=linux - ;; - magnum | m3230) - basic_machine=mips-mips - basic_os=sysv - ;; - merlin) - basic_machine=ns32k-utek - basic_os=sysv - ;; - mingw64) - basic_machine=x86_64-pc - basic_os=mingw64 - ;; - mingw32) - basic_machine=i686-pc - basic_os=mingw32 - ;; - mingw32ce) - basic_machine=arm-unknown - basic_os=mingw32ce - ;; - monitor) - basic_machine=m68k-rom68k - basic_os=coff - ;; - morphos) - basic_machine=powerpc-unknown - basic_os=morphos - ;; - moxiebox) - basic_machine=moxie-unknown - basic_os=moxiebox - ;; - msdos) - basic_machine=i386-pc - basic_os=msdos - ;; - msys) - basic_machine=i686-pc - basic_os=msys - ;; - mvs) - basic_machine=i370-ibm - basic_os=mvs - ;; - nacl) - basic_machine=le32-unknown - basic_os=nacl - ;; - ncr3000) - basic_machine=i486-ncr - basic_os=sysv4 - ;; - netbsd386) - basic_machine=i386-pc - basic_os=netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - basic_os=linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - basic_os=newsos - ;; - news1000) - basic_machine=m68030-sony - basic_os=newsos - ;; - necv70) - basic_machine=v70-nec - basic_os=sysv - ;; - nh3000) - basic_machine=m68k-harris - basic_os=cxux - ;; - nh[45]000) - basic_machine=m88k-harris - basic_os=cxux - ;; - nindy960) - basic_machine=i960-intel - basic_os=nindy - ;; - mon960) - basic_machine=i960-intel - basic_os=mon960 - ;; - nonstopux) - basic_machine=mips-compaq - basic_os=nonstopux - ;; - os400) - basic_machine=powerpc-ibm - basic_os=os400 - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - basic_os=ose - ;; - os68k) - basic_machine=m68k-none - basic_os=os68k - ;; - paragon) - basic_machine=i860-intel - basic_os=osf - ;; - parisc) - basic_machine=hppa-unknown - basic_os=linux - ;; - psp) - basic_machine=mipsallegrexel-sony - basic_os=psp - ;; - pw32) - basic_machine=i586-unknown - basic_os=pw32 - ;; - rdos | rdos64) - basic_machine=x86_64-pc - basic_os=rdos - ;; - rdos32) - basic_machine=i386-pc - basic_os=rdos - ;; - rom68k) - basic_machine=m68k-rom68k - basic_os=coff - ;; - sa29200) - basic_machine=a29k-amd - basic_os=udi - ;; - sei) - basic_machine=mips-sei - basic_os=seiux - ;; - sequent) - basic_machine=i386-sequent - basic_os= - ;; - sps7) - basic_machine=m68k-bull - basic_os=sysv2 - ;; - st2000) - basic_machine=m68k-tandem - basic_os= - ;; - stratus) - basic_machine=i860-stratus - basic_os=sysv4 - ;; - sun2) - basic_machine=m68000-sun - basic_os= - ;; - sun2os3) - basic_machine=m68000-sun - basic_os=sunos3 - ;; - sun2os4) - basic_machine=m68000-sun - basic_os=sunos4 - ;; - sun3) - basic_machine=m68k-sun - basic_os= - ;; - sun3os3) - basic_machine=m68k-sun - basic_os=sunos3 - ;; - sun3os4) - basic_machine=m68k-sun - basic_os=sunos4 - ;; - sun4) - basic_machine=sparc-sun - basic_os= - ;; - sun4os3) - basic_machine=sparc-sun - basic_os=sunos3 - ;; - sun4os4) - basic_machine=sparc-sun - basic_os=sunos4 - ;; - sun4sol2) - basic_machine=sparc-sun - basic_os=solaris2 - ;; - sun386 | sun386i | roadrunner) - basic_machine=i386-sun - basic_os= - ;; - sv1) - basic_machine=sv1-cray - basic_os=unicos - ;; - symmetry) - basic_machine=i386-sequent - basic_os=dynix - ;; - t3e) - basic_machine=alphaev5-cray - basic_os=unicos - ;; - t90) - basic_machine=t90-cray - basic_os=unicos - ;; - toad1) - basic_machine=pdp10-xkl - basic_os=tops20 - ;; - tpf) - basic_machine=s390x-ibm - basic_os=tpf - ;; - udi29k) - basic_machine=a29k-amd - basic_os=udi - ;; - ultra3) - basic_machine=a29k-nyu - basic_os=sym1 - ;; - v810 | necv810) - basic_machine=v810-nec - basic_os=none - ;; - vaxv) - basic_machine=vax-dec - basic_os=sysv - ;; - vms) - basic_machine=vax-dec - basic_os=vms - ;; - vsta) - basic_machine=i386-pc - basic_os=vsta - ;; - vxworks960) - basic_machine=i960-wrs - basic_os=vxworks - ;; - vxworks68) - basic_machine=m68k-wrs - basic_os=vxworks - ;; - vxworks29k) - basic_machine=a29k-wrs - basic_os=vxworks - ;; - xbox) - basic_machine=i686-pc - basic_os=mingw32 - ;; - ymp) - basic_machine=ymp-cray - basic_os=unicos - ;; - *) - basic_machine=$1 - basic_os= - ;; - esac - ;; -esac - -# Decode 1-component or ad-hoc basic machines -case $basic_machine in - # Here we handle the default manufacturer of certain CPU types. It is in - # some cases the only manufacturer, in others, it is the most popular. - w89k) - cpu=hppa1.1 - vendor=winbond - ;; - op50n) - cpu=hppa1.1 - vendor=oki - ;; - op60c) - cpu=hppa1.1 - vendor=oki - ;; - ibm*) - cpu=i370 - vendor=ibm - ;; - orion105) - cpu=clipper - vendor=highlevel - ;; - mac | mpw | mac-mpw) - cpu=m68k - vendor=apple - ;; - pmac | pmac-mpw) - cpu=powerpc - vendor=apple - ;; - - # Recognize the various machine names and aliases which stand - # for a CPU type and a company and sometimes even an OS. - 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) - cpu=m68000 - vendor=att - ;; - 3b*) - cpu=we32k - vendor=att - ;; - bluegene*) - cpu=powerpc - vendor=ibm - basic_os=cnk - ;; - decsystem10* | dec10*) - cpu=pdp10 - vendor=dec - basic_os=tops10 - ;; - decsystem20* | dec20*) - cpu=pdp10 - vendor=dec - basic_os=tops20 - ;; - delta | 3300 | motorola-3300 | motorola-delta \ - | 3300-motorola | delta-motorola) - cpu=m68k - vendor=motorola - ;; - dpx2*) - cpu=m68k - vendor=bull - basic_os=sysv3 - ;; - encore | umax | mmax) - cpu=ns32k - vendor=encore - ;; - elxsi) - cpu=elxsi - vendor=elxsi - basic_os=${basic_os:-bsd} - ;; - fx2800) - cpu=i860 - vendor=alliant - ;; - genix) - cpu=ns32k - vendor=ns - ;; - h3050r* | hiux*) - cpu=hppa1.1 - vendor=hitachi - basic_os=hiuxwe2 - ;; - hp3k9[0-9][0-9] | hp9[0-9][0-9]) - cpu=hppa1.0 - vendor=hp - ;; - hp9k2[0-9][0-9] | hp9k31[0-9]) - cpu=m68000 - vendor=hp - ;; - hp9k3[2-9][0-9]) - cpu=m68k - vendor=hp - ;; - hp9k6[0-9][0-9] | hp6[0-9][0-9]) - cpu=hppa1.0 - vendor=hp - ;; - hp9k7[0-79][0-9] | hp7[0-79][0-9]) - cpu=hppa1.1 - vendor=hp - ;; - hp9k78[0-9] | hp78[0-9]) - # FIXME: really hppa2.0-hp - cpu=hppa1.1 - vendor=hp - ;; - hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) - # FIXME: really hppa2.0-hp - cpu=hppa1.1 - vendor=hp - ;; - hp9k8[0-9][13679] | hp8[0-9][13679]) - cpu=hppa1.1 - vendor=hp - ;; - hp9k8[0-9][0-9] | hp8[0-9][0-9]) - cpu=hppa1.0 - vendor=hp - ;; - i*86v32) - cpu=`echo "$1" | sed -e 's/86.*/86/'` - vendor=pc - basic_os=sysv32 - ;; - i*86v4*) - cpu=`echo "$1" | sed -e 's/86.*/86/'` - vendor=pc - basic_os=sysv4 - ;; - i*86v) - cpu=`echo "$1" | sed -e 's/86.*/86/'` - vendor=pc - basic_os=sysv - ;; - i*86sol2) - cpu=`echo "$1" | sed -e 's/86.*/86/'` - vendor=pc - basic_os=solaris2 - ;; - j90 | j90-cray) - cpu=j90 - vendor=cray - basic_os=${basic_os:-unicos} - ;; - iris | iris4d) - cpu=mips - vendor=sgi - case $basic_os in - irix*) - ;; - *) - basic_os=irix4 - ;; - esac - ;; - miniframe) - cpu=m68000 - vendor=convergent - ;; - *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*) - cpu=m68k - vendor=atari - basic_os=mint - ;; - news-3600 | risc-news) - cpu=mips - vendor=sony - basic_os=newsos - ;; - next | m*-next) - cpu=m68k - vendor=next - case $basic_os in - openstep*) - ;; - nextstep*) - ;; - ns2*) - basic_os=nextstep2 - ;; - *) - basic_os=nextstep3 - ;; - esac - ;; - np1) - cpu=np1 - vendor=gould - ;; - op50n-* | op60c-*) - cpu=hppa1.1 - vendor=oki - basic_os=proelf - ;; - pa-hitachi) - cpu=hppa1.1 - vendor=hitachi - basic_os=hiuxwe2 - ;; - pbd) - cpu=sparc - vendor=tti - ;; - pbb) - cpu=m68k - vendor=tti - ;; - pc532) - cpu=ns32k - vendor=pc532 - ;; - pn) - cpu=pn - vendor=gould - ;; - power) - cpu=power - vendor=ibm - ;; - ps2) - cpu=i386 - vendor=ibm - ;; - rm[46]00) - cpu=mips - vendor=siemens - ;; - rtpc | rtpc-*) - cpu=romp - vendor=ibm - ;; - sde) - cpu=mipsisa32 - vendor=sde - basic_os=${basic_os:-elf} - ;; - simso-wrs) - cpu=sparclite - vendor=wrs - basic_os=vxworks - ;; - tower | tower-32) - cpu=m68k - vendor=ncr - ;; - vpp*|vx|vx-*) - cpu=f301 - vendor=fujitsu - ;; - w65) - cpu=w65 - vendor=wdc - ;; - w89k-*) - cpu=hppa1.1 - vendor=winbond - basic_os=proelf - ;; - none) - cpu=none - vendor=none - ;; - leon|leon[3-9]) - cpu=sparc - vendor=$basic_machine - ;; - leon-*|leon[3-9]-*) - cpu=sparc - vendor=`echo "$basic_machine" | sed 's/-.*//'` - ;; - - *-*) - # shellcheck disable=SC2162 - saved_IFS=$IFS - IFS="-" read cpu vendor <&2 - exit 1 - ;; - esac - ;; -esac - -# Here we canonicalize certain aliases for manufacturers. -case $vendor in - digital*) - vendor=dec - ;; - commodore*) - vendor=cbm - ;; - *) - ;; -esac - -# Decode manufacturer-specific aliases for certain operating systems. - -if test x$basic_os != x -then - -# First recognize some ad-hoc cases, or perhaps split kernel-os, or else just -# set os. -case $basic_os in - gnu/linux*) - kernel=linux - os=`echo "$basic_os" | sed -e 's|gnu/linux|gnu|'` - ;; - os2-emx) - kernel=os2 - os=`echo "$basic_os" | sed -e 's|os2-emx|emx|'` - ;; - nto-qnx*) - kernel=nto - os=`echo "$basic_os" | sed -e 's|nto-qnx|qnx|'` - ;; - *-*) - # shellcheck disable=SC2162 - saved_IFS=$IFS - IFS="-" read kernel os <&2 - exit 1 - ;; -esac - -# As a final step for OS-related things, validate the OS-kernel combination -# (given a valid OS), if there is a kernel. -case $kernel-$os in - linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* \ - | linux-musl* | linux-relibc* | linux-uclibc* ) - ;; - uclinux-uclibc* ) - ;; - -dietlibc* | -newlib* | -musl* | -relibc* | -uclibc* ) - # These are just libc implementations, not actual OSes, and thus - # require a kernel. - echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2 - exit 1 - ;; - kfreebsd*-gnu* | kopensolaris*-gnu*) - ;; - vxworks-simlinux | vxworks-simwindows | vxworks-spe) - ;; - nto-qnx*) - ;; - os2-emx) - ;; - *-eabi* | *-gnueabi*) - ;; - -*) - # Blank kernel with real OS is always fine. - ;; - *-*) - echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2 - exit 1 - ;; -esac - -# Here we handle the case where we know the os, and the CPU type, but not the -# manufacturer. We pick the logical manufacturer. -case $vendor in - unknown) - case $cpu-$os in - *-riscix*) - vendor=acorn - ;; - *-sunos*) - vendor=sun - ;; - *-cnk* | *-aix*) - vendor=ibm - ;; - *-beos*) - vendor=be - ;; - *-hpux*) - vendor=hp - ;; - *-mpeix*) - vendor=hp - ;; - *-hiux*) - vendor=hitachi - ;; - *-unos*) - vendor=crds - ;; - *-dgux*) - vendor=dg - ;; - *-luna*) - vendor=omron - ;; - *-genix*) - vendor=ns - ;; - *-clix*) - vendor=intergraph - ;; - *-mvs* | *-opened*) - vendor=ibm - ;; - *-os400*) - vendor=ibm - ;; - s390-* | s390x-*) - vendor=ibm - ;; - *-ptx*) - vendor=sequent - ;; - *-tpf*) - vendor=ibm - ;; - *-vxsim* | *-vxworks* | *-windiss*) - vendor=wrs - ;; - *-aux*) - vendor=apple - ;; - *-hms*) - vendor=hitachi - ;; - *-mpw* | *-macos*) - vendor=apple - ;; - *-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*) - vendor=atari - ;; - *-vos*) - vendor=stratus - ;; - esac - ;; -esac - -echo "$cpu-$vendor-${kernel:+$kernel-}$os" -exit - -# Local variables: -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/configure b/configure deleted file mode 100755 index aa1ba4b..0000000 --- a/configure +++ /dev/null @@ -1,24534 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.71 for Flatpak 1.14.10. -# -# Report bugs to . -# -# -# Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation, -# Inc. -# -# -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -as_nop=: -if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 -then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else $as_nop - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - - -# Reset variables that may have inherited troublesome values from -# the environment. - -# IFS needs to be set, to space, tab, and newline, in precisely that order. -# (If _AS_PATH_WALK were called with IFS unset, it would have the -# side effect of setting IFS to empty, thus disabling word splitting.) -# Quoting is to prevent editors from complaining about space-tab. -as_nl=' -' -export as_nl -IFS=" "" $as_nl" - -PS1='$ ' -PS2='> ' -PS4='+ ' - -# Ensure predictable behavior from utilities with locale-dependent output. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# We cannot yet rely on "unset" to work, but we need these variables -# to be unset--not just set to an empty or harmless value--now, to -# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh). This construct -# also avoids known problems related to "unset" and subshell syntax -# in other old shells (e.g. bash 2.01 and pdksh 5.2.14). -for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH -do eval test \${$as_var+y} \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done - -# Ensure that fds 0, 1, and 2 are open. -if (exec 3>&0) 2>/dev/null; then :; else exec 0&1) 2>/dev/null; then :; else exec 1>/dev/null; fi -if (exec 3>&2) ; then :; else exec 2>/dev/null; fi - -# The user is always right. -if ${PATH_SEPARATOR+false} :; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - test -r "$as_dir$0" && as_myself=$as_dir$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - - -# Use a proper internal environment variable to ensure we don't fall - # into an infinite loop, continuously re-executing ourselves. - if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then - _as_can_reexec=no; export _as_can_reexec; - # We cannot yet assume a decent shell, so we have to provide a -# neutralization value for shells without unset; and this also -# works around shells that cannot unset nonexistent variables. -# Preserve -v and -x to the replacement shell. -BASH_ENV=/dev/null -ENV=/dev/null -(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; -esac -exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} -# Admittedly, this is quite paranoid, since all the known shells bail -# out after a failed `exec'. -printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2 -exit 255 - fi - # We don't want this to propagate to other subprocesses. - { _as_can_reexec=; unset _as_can_reexec;} -if test "x$CONFIG_SHELL" = x; then - as_bourne_compatible="as_nop=: -if test \${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 -then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which - # is contrary to our usage. Disable this feature. - alias -g '\${1+\"\$@\"}'='\"\$@\"' - setopt NO_GLOB_SUBST -else \$as_nop - case \`(set -o) 2>/dev/null\` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi -" - as_required="as_fn_return () { (exit \$1); } -as_fn_success () { as_fn_return 0; } -as_fn_failure () { as_fn_return 1; } -as_fn_ret_success () { return 0; } -as_fn_ret_failure () { return 1; } - -exitcode=0 -as_fn_success || { exitcode=1; echo as_fn_success failed.; } -as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } -as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } -as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } -if ( set x; as_fn_ret_success y && test x = \"\$1\" ) -then : - -else \$as_nop - exitcode=1; echo positional parameters were not saved. -fi -test x\$exitcode = x0 || exit 1 -blah=\$(echo \$(echo blah)) -test x\"\$blah\" = xblah || exit 1 -test -x / || exit 1" - as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO - as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO - eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && - test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 - - test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || ( - ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' - ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO - ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO - PATH=/empty FPATH=/empty; export PATH FPATH - test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\ - || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1 -test \$(( 1 + 1 )) = 2 || exit 1" - if (eval "$as_required") 2>/dev/null -then : - as_have_required=yes -else $as_nop - as_have_required=no -fi - if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null -then : - -else $as_nop - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -as_found=false -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - as_found=: - case $as_dir in #( - /*) - for as_base in sh bash ksh sh5; do - # Try only shells that exist, to save several forks. - as_shell=$as_dir$as_base - if { test -f "$as_shell" || test -f "$as_shell.exe"; } && - as_run=a "$as_shell" -c "$as_bourne_compatible""$as_required" 2>/dev/null -then : - CONFIG_SHELL=$as_shell as_have_required=yes - if as_run=a "$as_shell" -c "$as_bourne_compatible""$as_suggested" 2>/dev/null -then : - break 2 -fi -fi - done;; - esac - as_found=false -done -IFS=$as_save_IFS -if $as_found -then : - -else $as_nop - if { test -f "$SHELL" || test -f "$SHELL.exe"; } && - as_run=a "$SHELL" -c "$as_bourne_compatible""$as_required" 2>/dev/null -then : - CONFIG_SHELL=$SHELL as_have_required=yes -fi -fi - - - if test "x$CONFIG_SHELL" != x -then : - export CONFIG_SHELL - # We cannot yet assume a decent shell, so we have to provide a -# neutralization value for shells without unset; and this also -# works around shells that cannot unset nonexistent variables. -# Preserve -v and -x to the replacement shell. -BASH_ENV=/dev/null -ENV=/dev/null -(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; -esac -exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} -# Admittedly, this is quite paranoid, since all the known shells bail -# out after a failed `exec'. -printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2 -exit 255 -fi - - if test x$as_have_required = xno -then : - printf "%s\n" "$0: This script requires a shell more modern than all" - printf "%s\n" "$0: the shells that I found on your system." - if test ${ZSH_VERSION+y} ; then - printf "%s\n" "$0: In particular, zsh $ZSH_VERSION has bugs and should" - printf "%s\n" "$0: be upgraded to zsh 4.3.4 or later." - else - printf "%s\n" "$0: Please tell bug-autoconf@gnu.org and -$0: https://github.com/flatpak/flatpak/issues about your -$0: system, including any error possibly output before this -$0: message. Then install a modern shell, or manually run -$0: the script under such a shell if you do have one." - fi - exit 1 -fi -fi -fi -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -# Unset more variables known to interfere with behavior of common tools. -CLICOLOR_FORCE= GREP_OPTIONS= -unset CLICOLOR_FORCE GREP_OPTIONS - -## --------------------- ## -## M4sh Shell Functions. ## -## --------------------- ## -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit -# as_fn_nop -# --------- -# Do nothing but, unlike ":", preserve the value of $?. -as_fn_nop () -{ - return $? -} -as_nop=as_fn_nop - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -printf "%s\n" X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p - -# as_fn_executable_p FILE -# ----------------------- -# Test if FILE is an executable regular file. -as_fn_executable_p () -{ - test -f "$1" && test -x "$1" -} # as_fn_executable_p -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null -then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else $as_nop - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null -then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else $as_nop - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - -# as_fn_nop -# --------- -# Do nothing but, unlike ":", preserve the value of $?. -as_fn_nop () -{ - return $? -} -as_nop=as_fn_nop - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - printf "%s\n" "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -printf "%s\n" X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - - - as_lineno_1=$LINENO as_lineno_1a=$LINENO - as_lineno_2=$LINENO as_lineno_2a=$LINENO - eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && - test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { - # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { printf "%s\n" "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } - - # If we had to re-execute with $CONFIG_SHELL, we're ensured to have - # already done that, so ensure we don't try to do so again and fall - # in an infinite loop. This has already happened in practice. - _as_can_reexec=no; export _as_can_reexec - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - - -# Determine whether it's possible to make 'echo' print without a newline. -# These variables are no longer used directly by Autoconf, but are AC_SUBSTed -# for compatibility with existing Makefiles. -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -# For backward compatibility with old third-party macros, we provide -# the shell variables $as_echo and $as_echo_n. New code should use -# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively. -as_echo='printf %s\n' -as_echo_n='printf %s' - - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -pR' - fi -else - as_ln_s='cp -pR' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_test_x='test -x' -as_executable_p=as_fn_executable_p - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - -SHELL=${CONFIG_SHELL-/bin/sh} - - -test -n "$DJDIR" || exec 7<&0 &1 - -# Name of the host. -# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_clean_files= -ac_config_libobj_dir=. -LIBOBJS= -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= - -# Identity of this package. -PACKAGE_NAME='Flatpak' -PACKAGE_TARNAME='flatpak' -PACKAGE_VERSION='1.14.10' -PACKAGE_STRING='Flatpak 1.14.10' -PACKAGE_BUGREPORT='https://github.com/flatpak/flatpak/issues' -PACKAGE_URL='http://flatpak.org/' - -# Factoring default headers for most tests. -ac_includes_default="\ -#include -#ifdef HAVE_STDIO_H -# include -#endif -#ifdef HAVE_STDLIB_H -# include -#endif -#ifdef HAVE_STRING_H -# include -#endif -#ifdef HAVE_INTTYPES_H -# include -#endif -#ifdef HAVE_STDINT_H -# include -#endif -#ifdef HAVE_STRINGS_H -# include -#endif -#ifdef HAVE_SYS_TYPES_H -# include -#endif -#ifdef HAVE_SYS_STAT_H -# include -#endif -#ifdef HAVE_UNISTD_H -# include -#endif" - -ac_header_c_list= -ac_unique_file="common/flatpak-dir.c" -gt_needs= -ac_subst_vars='am__EXEEXT_FALSE -am__EXEEXT_TRUE -LTLIBOBJS -LIBOBJS -LT_CURRENT_MINUS_AGE -LT_VERSION_INFO -FLATPAK_VERSION -FLATPAK_INTERFACE_AGE -FLATPAK_MICRO_VERSION -FLATPAK_MINOR_VERSION -FLATPAK_MAJOR_VERSION -installed_testdir -installed_test_metadir -ENABLE_ALWAYS_BUILD_TESTS_FALSE -ENABLE_ALWAYS_BUILD_TESTS_TRUE -ENABLE_INSTALLED_TESTS_FALSE -ENABLE_INSTALLED_TESTS_TRUE -ENABLE_INTERNAL_CHECKS_FALSE -ENABLE_INTERNAL_CHECKS_TRUE -GENHTML -LCOV -HIDDEN_VISIBILITY_CFLAGS -XMLTO_FLAGS -DOCBOOK_DOCS_ENABLED_FALSE -DOCBOOK_DOCS_ENABLED_TRUE -XMLTO -ENABLE_GTK_DOC_CHECK_FALSE -ENABLE_GTK_DOC_CHECK_TRUE -GTK_DOC_USE_REBASE_FALSE -GTK_DOC_USE_REBASE_TRUE -GTK_DOC_USE_LIBTOOL_FALSE -GTK_DOC_USE_LIBTOOL_TRUE -GTK_DOC_BUILD_PDF_FALSE -GTK_DOC_BUILD_PDF_TRUE -GTK_DOC_BUILD_HTML_FALSE -GTK_DOC_BUILD_HTML_TRUE -ENABLE_GTK_DOC_FALSE -ENABLE_GTK_DOC_TRUE -HAVE_GTK_DOC_FALSE -HAVE_GTK_DOC_TRUE -GTKDOC_DEPS_LIBS -GTKDOC_DEPS_CFLAGS -HTML_DIR -GTKDOC_MKPDF -GTKDOC_REBASE -GTKDOC_CHECK_PATH -GTKDOC_CHECK -HAVE_INTROSPECTION_FALSE -HAVE_INTROSPECTION_TRUE -INTROSPECTION_MAKEFILE -INTROSPECTION_LIBS -INTROSPECTION_CFLAGS -INTROSPECTION_TYPELIBDIR -INTROSPECTION_GIRDIR -INTROSPECTION_GENERATE -INTROSPECTION_COMPILER -INTROSPECTION_SCANNER -_GI_EXP_LIBDIR -_GI_EXP_DATADIR -BUILD_DOCUMENTATION_FALSE -BUILD_DOCUMENTATION_TRUE -XMLCATALOG -XML_CATALOG_FILE -XSLTPROC -SYSTEM_HELPER_USER -tmpfilesdir -sysusersdir -RUN_MEDIA_DIR -SYSTEM_INSTALL_DIR -ENABLE_ASAN_FALSE -ENABLE_ASAN_TRUE -SUDO_BIN -PRIV_MODE_SETUID_FALSE -PRIV_MODE_SETUID_TRUE -LIBSECCOMP_LIBS -LIBSECCOMP_CFLAGS -GDK_PIXBUF_LIBS -GDK_PIXBUF_CFLAGS -APPSTREAM_LIBS -APPSTREAM_CFLAGS -JSON_LIBS -JSON_CFLAGS -OSTREE_LIBS -OSTREE_CFLAGS -INSTALL_GDM_ENV_FILE_FALSE -INSTALL_GDM_ENV_FILE_TRUE -XAUTH_LIBS -XAUTH_CFLAGS -FUSE_LIBS -FUSE_CFLAGS -FUSE3_LIBS -FUSE3_CFLAGS -BUILD_AUTO_SIDELOADING_FALSE -BUILD_AUTO_SIDELOADING_TRUE -BUILD_SYSTEM_HELPER_FALSE -BUILD_SYSTEM_HELPER_TRUE -POLKIT_LIBS -POLKIT_CFLAGS -BUILD_SELINUX_MODULE_FALSE -BUILD_SELINUX_MODULE_TRUE -GPGME_PTHREAD_LIBS -GPGME_PTHREAD_CFLAGS -GPGME_CONFIG -GPGRT_CONFIG -DEP_GPGME_PTHREAD_LIBS -DEP_GPGME_PTHREAD_CFLAGS -DEP_GPGME_LIBS -DEP_GPGME_CFLAGS -http_backend -USE_SOUP_FALSE -USE_SOUP_TRUE -USE_CURL_FALSE -USE_CURL_TRUE -SOUP_LIBS -SOUP_CFLAGS -CURL_LIBS -CURL_CFLAGS -GLIB260_LIBS -GLIB260_CFLAGS -HAVE_LIBMALCONTENT_FALSE -HAVE_LIBMALCONTENT_TRUE -MALCONTENT_LIBS -MALCONTENT_CFLAGS -SYSTEMD_LIBS -SYSTEMD_CFLAGS -DCONF_LIBS -DCONF_CFLAGS -ZSTD_LIBS -ZSTD_CFLAGS -XML_LIBS -XML_CFLAGS -BASE_LIBS -BASE_CFLAGS -ARCHIVE_LIBS -ARCHIVE_CFLAGS -GDBUS_CODEGEN -GLIB_COMPILE_RESOURCES -GLIB_MKENUMS -WITH_SYSTEM_DBUS_PROXY_FALSE -WITH_SYSTEM_DBUS_PROXY_TRUE -DBUS_PROXY -CAP_LIB -WITH_SYSTEM_BWRAP_FALSE -WITH_SYSTEM_BWRAP_TRUE -BWRAP -PROFILE_DIR -SYSTEM_FONT_CACHE_DIRS -SYSTEM_FONTS_DIR -systemduserenvgendir -systemdsystemenvgendir -systemdsystemunitdir -systemduserunitdir -DBUS_CONFIG_DIR -DBUS_SERVICE_DIR -PRIVILEGED_GROUP -PKG_CONFIG_LIBDIR -PKG_CONFIG_PATH -PKG_CONFIG -VALGRIND_CHECK_RULES -VALGRIND_HAVE_TOOL_memcheck -VALGRIND_ENABLED -VALGRIND_ENABLED_FALSE -VALGRIND_ENABLED_TRUE -VALGRIND -WARN_CFLAGS -MAINT -MAINTAINER_MODE_FALSE -MAINTAINER_MODE_TRUE -POSUB -LTLIBINTL -LIBINTL -INTLLIBS -LTLIBICONV -LIBICONV -INTL_MACOSX_LIBS -CPP -XGETTEXT_EXTRA_OPTIONS -MSGMERGE -XGETTEXT_015 -XGETTEXT -GMSGFMT_015 -MSGFMT_015 -GMSGFMT -MSGFMT -GETTEXT_MACRO_VERSION -USE_NLS -BFLAGS -BISON -AM_BACKSLASH -AM_DEFAULT_VERBOSITY -AM_DEFAULT_V -AM_V -CSCOPE -ETAGS -CTAGS -am__fastdepCC_FALSE -am__fastdepCC_TRUE -CCDEPMODE -am__nodep -AMDEPBACKSLASH -AMDEP_FALSE -AMDEP_TRUE -am__include -DEPDIR -am__untar -am__tar -AMTAR -am__leading_dot -SET_MAKE -mkdir_p -MKDIR_P -INSTALL_STRIP_PROGRAM -install_sh -MAKEINFO -AUTOHEADER -AUTOMAKE -AUTOCONF -ACLOCAL -VERSION -PACKAGE -CYGPATH_W -am__isrc -INSTALL_DATA -INSTALL_SCRIPT -INSTALL_PROGRAM -LT_SYS_LIBRARY_PATH -OTOOL64 -OTOOL -LIPO -NMEDIT -DSYMUTIL -MANIFEST_TOOL -AWK -RANLIB -STRIP -ac_ct_AR -AR -DLLTOOL -OBJDUMP -FILECMD -LN_S -NM -ac_ct_DUMPBIN -DUMPBIN -LD -FGREP -EGREP -GREP -SED -host_os -host_vendor -host_cpu -host -build_os -build_vendor -build_cpu -build -LIBTOOL -OBJEXT -EXEEXT -ac_ct_CC -CPPFLAGS -LDFLAGS -CFLAGS -CC -target_alias -host_alias -build_alias -LIBS -ECHO_T -ECHO_N -ECHO_C -DEFS -mandir -localedir -libdir -psdir -pdfdir -dvidir -htmldir -infodir -docdir -oldincludedir -includedir -runstatedir -localstatedir -sharedstatedir -sysconfdir -datadir -datarootdir -libexecdir -sbindir -bindir -program_transform_name -prefix -exec_prefix -PACKAGE_URL -PACKAGE_BUGREPORT -PACKAGE_STRING -PACKAGE_VERSION -PACKAGE_TARNAME -PACKAGE_NAME -PATH_SEPARATOR -SHELL -am__quote' -ac_subst_files='' -ac_user_opts=' -enable_option_checking -enable_largefile -enable_static -enable_shared -with_pic -enable_fast_install -with_aix_soname -with_gnu_ld -with_sysroot -enable_libtool_lock -enable_dependency_tracking -enable_silent_rules -enable_nls -enable_rpath -with_libiconv_prefix -with_libintl_prefix -enable_maintainer_mode -enable_valgrind -with_privileged_group -with_dbus_service_dir -with_dbus_config_dir -with_systemduserunitdir -with_systemdsystemunitdir -with_systemdsystemenvgendir -with_systemduserenvgendir -with_system_fonts_dir -with_system_font_cache_dirs -with_profile_dir -with_system_bubblewrap -with_system_dbus_proxy -enable_otmpfile -enable_wrpseudo_compat -with_systemd -with_curl -with_gpgme_prefix -enable_selinux_module -enable_system_helper -enable_auto_sideloading -enable_xauth -enable_gdm_env_file -enable_sandboxed_triggers -enable_seccomp -with_priv_mode -enable_sudo -enable_asan -with_system_install_dir -with_run_media_dir -with_sysusersdir -with_tmpfilesdir -with_system_helper_user -enable_documentation -with_xml_catalog -enable_introspection -with_html_dir -enable_gtk_doc -enable_gtk_doc_html -enable_gtk_doc_pdf -enable_gtk_doc_check -enable_docbook_docs -enable_coverage -enable_internal_checks -enable_installed_tests -enable_always_build_tests -' - ac_precious_vars='build_alias -host_alias -target_alias -CC -CFLAGS -LDFLAGS -LIBS -CPPFLAGS -LT_SYS_LIBRARY_PATH -BISON -BFLAGS -CPP -PKG_CONFIG -PKG_CONFIG_PATH -PKG_CONFIG_LIBDIR -BWRAP -DBUS_PROXY -ARCHIVE_CFLAGS -ARCHIVE_LIBS -BASE_CFLAGS -BASE_LIBS -XML_CFLAGS -XML_LIBS -ZSTD_CFLAGS -ZSTD_LIBS -DCONF_CFLAGS -DCONF_LIBS -SYSTEMD_CFLAGS -SYSTEMD_LIBS -MALCONTENT_CFLAGS -MALCONTENT_LIBS -GLIB260_CFLAGS -GLIB260_LIBS -CURL_CFLAGS -CURL_LIBS -SOUP_CFLAGS -SOUP_LIBS -DEP_GPGME_CFLAGS -DEP_GPGME_LIBS -DEP_GPGME_PTHREAD_CFLAGS -DEP_GPGME_PTHREAD_LIBS -POLKIT_CFLAGS -POLKIT_LIBS -FUSE3_CFLAGS -FUSE3_LIBS -FUSE_CFLAGS -FUSE_LIBS -XAUTH_CFLAGS -XAUTH_LIBS -OSTREE_CFLAGS -OSTREE_LIBS -JSON_CFLAGS -JSON_LIBS -APPSTREAM_CFLAGS -APPSTREAM_LIBS -GDK_PIXBUF_CFLAGS -GDK_PIXBUF_LIBS -LIBSECCOMP_CFLAGS -LIBSECCOMP_LIBS -GTKDOC_DEPS_CFLAGS -GTKDOC_DEPS_LIBS -XMLTO -XMLTO_FLAGS' - - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -ac_unrecognized_opts= -ac_unrecognized_sep= -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -# (The list follows the same order as the GNU Coding Standards.) -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datarootdir='${prefix}/share' -datadir='${datarootdir}' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -runstatedir='${localstatedir}/run' -includedir='${prefix}/include' -oldincludedir='/usr/include' -docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' -infodir='${datarootdir}/info' -htmldir='${docdir}' -dvidir='${docdir}' -pdfdir='${docdir}' -psdir='${docdir}' -libdir='${exec_prefix}/lib' -localedir='${datarootdir}/locale' -mandir='${datarootdir}/man' - -ac_prev= -ac_dashdash= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval $ac_prev=\$ac_option - ac_prev= - continue - fi - - case $ac_option in - *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; - *=) ac_optarg= ;; - *) ac_optarg=yes ;; - esac - - case $ac_dashdash$ac_option in - --) - ac_dashdash=yes ;; - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=*) - datadir=$ac_optarg ;; - - -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ - | --dataroo | --dataro | --datar) - ac_prev=datarootdir ;; - -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ - | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) - datarootdir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: \`$ac_useropt'" - ac_useropt_orig=$ac_useropt - ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"enable_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval enable_$ac_useropt=no ;; - - -docdir | --docdir | --docdi | --doc | --do) - ac_prev=docdir ;; - -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) - docdir=$ac_optarg ;; - - -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) - ac_prev=dvidir ;; - -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) - dvidir=$ac_optarg ;; - - -enable-* | --enable-*) - ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: \`$ac_useropt'" - ac_useropt_orig=$ac_useropt - ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"enable_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval enable_$ac_useropt=\$ac_optarg ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) - ac_prev=htmldir ;; - -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ - | --ht=*) - htmldir=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localedir | --localedir | --localedi | --localed | --locale) - ac_prev=localedir ;; - -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) - localedir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst | --locals) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) - ac_prev=pdfdir ;; - -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) - pdfdir=$ac_optarg ;; - - -psdir | --psdir | --psdi | --psd | --ps) - ac_prev=psdir ;; - -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) - psdir=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -runstatedir | --runstatedir | --runstatedi | --runstated \ - | --runstate | --runstat | --runsta | --runst | --runs \ - | --run | --ru | --r) - ac_prev=runstatedir ;; - -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ - | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ - | --run=* | --ru=* | --r=*) - runstatedir=$ac_optarg ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: \`$ac_useropt'" - ac_useropt_orig=$ac_useropt - ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"with_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval with_$ac_useropt=\$ac_optarg ;; - - -without-* | --without-*) - ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: \`$ac_useropt'" - ac_useropt_orig=$ac_useropt - ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"with_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval with_$ac_useropt=no ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) as_fn_error $? "unrecognized option: \`$ac_option' -Try \`$0 --help' for more information" - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - case $ac_envvar in #( - '' | [0-9]* | *[!_$as_cr_alnum]* ) - as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; - esac - eval $ac_envvar=\$ac_optarg - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - printf "%s\n" "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - printf "%s\n" "$as_me: WARNING: invalid host type: $ac_option" >&2 - : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - as_fn_error $? "missing argument to $ac_option" -fi - -if test -n "$ac_unrecognized_opts"; then - case $enable_option_checking in - no) ;; - fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; - *) printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; - esac -fi - -# Check all directory arguments for consistency. -for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ - datadir sysconfdir sharedstatedir localstatedir includedir \ - oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir runstatedir -do - eval ac_val=\$$ac_var - # Remove trailing slashes. - case $ac_val in - */ ) - ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` - eval $ac_var=\$ac_val;; - esac - # Be sure to have absolute directory names. - case $ac_val in - [\\/$]* | ?:[\\/]* ) continue;; - NONE | '' ) case $ac_var in *prefix ) continue;; esac;; - esac - as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -ac_pwd=`pwd` && test -n "$ac_pwd" && -ac_ls_di=`ls -di .` && -ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || - as_fn_error $? "working directory cannot be determined" -test "X$ac_ls_di" = "X$ac_pwd_ls_di" || - as_fn_error $? "pwd does not report name of working directory" - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then the parent directory. - ac_confdir=`$as_dirname -- "$as_myself" || -$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_myself" : 'X\(//\)[^/]' \| \ - X"$as_myself" : 'X\(//\)$' \| \ - X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || -printf "%s\n" X"$as_myself" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r "$srcdir/$ac_unique_file"; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r "$srcdir/$ac_unique_file"; then - test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." - as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" -fi -ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" -ac_abs_confdir=`( - cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" - pwd)` -# When building in place, set srcdir=. -if test "$ac_abs_confdir" = "$ac_pwd"; then - srcdir=. -fi -# Remove unnecessary trailing slashes from srcdir. -# Double slashes in file names in object file debugging info -# mess up M-x gdb in Emacs. -case $srcdir in -*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; -esac -for ac_var in $ac_precious_vars; do - eval ac_env_${ac_var}_set=\${${ac_var}+set} - eval ac_env_${ac_var}_value=\$${ac_var} - eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} - eval ac_cv_env_${ac_var}_value=\$${ac_var} -done - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures Flatpak 1.14.10 to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking ...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] - --datadir=DIR read-only architecture-independent data [DATAROOTDIR] - --infodir=DIR info documentation [DATAROOTDIR/info] - --localedir=DIR locale-dependent data [DATAROOTDIR/locale] - --mandir=DIR man documentation [DATAROOTDIR/man] - --docdir=DIR documentation root [DATAROOTDIR/doc/flatpak] - --htmldir=DIR html documentation [DOCDIR] - --dvidir=DIR dvi documentation [DOCDIR] - --pdfdir=DIR pdf documentation [DOCDIR] - --psdir=DIR ps documentation [DOCDIR] -_ACEOF - - cat <<\_ACEOF - -Program names: - --program-prefix=PREFIX prepend PREFIX to installed program names - --program-suffix=SUFFIX append SUFFIX to installed program names - --program-transform-name=PROGRAM run sed PROGRAM on installed program names - -System types: - --build=BUILD configure for building on BUILD [guessed] - --host=HOST cross-compile to build programs to run on HOST [BUILD] -_ACEOF -fi - -if test -n "$ac_init_help"; then - case $ac_init_help in - short | recursive ) echo "Configuration of Flatpak 1.14.10:";; - esac - cat <<\_ACEOF - -Optional Features: - --disable-option-checking ignore unrecognized --enable/--with options - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --disable-largefile omit support for large files - --enable-static[=PKGS] build static libraries [default=no] - --enable-shared[=PKGS] build shared libraries [default=yes] - --enable-fast-install[=PKGS] - optimize for fast installation [default=yes] - --disable-libtool-lock avoid locking (might break parallel builds) - --enable-dependency-tracking - do not reject slow dependency extractors - --disable-dependency-tracking - speeds up one-time build - --enable-silent-rules less verbose build output (undo: "make V=1") - --disable-silent-rules verbose build output (undo: "make V=0") - --disable-nls do not use Native Language Support - --disable-rpath do not hardcode runtime library paths - --disable-maintainer-mode - disable make rules and dependencies not useful (and - sometimes confusing) to the casual installer - --enable-valgrind Whether to enable Valgrind on the unit tests - --disable-otmpfile Disable use of O_TMPFILE [default=no] - --enable-wrpseudo-compat - Disable use of syscall() in some cases for - compatibility with pseudo [default=no] - --enable-selinux-module Enable selinux module for system-helper - --disable-system-helper Disable system helper - --enable-auto-sideloading - Enable systemd units which make Flatpak sideload - from inserted USB drives - --disable-xauth Disable Xauth use - --enable-gdm-env-file Install gdm env.d file (not needed if systemd - generators work) - --disable-sandboxed-triggers - Disable sandboxed triggers - --disable-seccomp Disable seccomp - --enable-sudo Use sudo to set setuid flags on binaries during - install (only needed if userns disabled) - --enable-asan Use build with address sanitazion - --enable-documentation Build documentation - --enable-introspection=[no/auto/yes] - Enable introspection for this build - --enable-gtk-doc use gtk-doc to build documentation [[default=no]] - --enable-gtk-doc-html build documentation in html format [[default=yes]] - --enable-gtk-doc-pdf build documentation in pdf format [[default=no]] - --enable-gtk-doc-check Check completeness of documentation in 'make check' - --enable-docbook-docs build documentation (requires xmlto) - --enable-coverage enable coverage testing with gcov - --enable-internal-checks - enable internal checking - --enable-installed-tests - Enable installation of some test cases - --enable-always-build-tests - Enable always building tests during 'make all' - -Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use - both] - --with-aix-soname=aix|svr4|both - shared library versioning (aka "SONAME") variant to - provide on AIX, [default=aix]. - --with-gnu-ld assume the C compiler uses GNU ld [default=no] - --with-sysroot[=DIR] Search for dependent libraries within DIR (or the - compiler's sysroot if not specified). - --with-gnu-ld assume the C compiler uses GNU ld [default=no] - --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib - --without-libiconv-prefix don't search for libiconv in includedir and libdir - --with-libintl-prefix[=DIR] search for libintl in DIR/include and DIR/lib - --without-libintl-prefix don't search for libintl in includedir and libdir - --with-privileged-group=GROUP - Name of privileged group, [default=wheel] - --with-dbus-service-dir=PATH - choose directory for dbus service files, - [default=PREFIX/share/dbus-1/services] - --with-dbus-config-dir=PATH - choose directory for dbus config files, - [default=SYSCONFDIR/dbus-1/system.d] - --with-systemduserunitdir=DIR - Directory for systemd user service files - (default=PREFIX/lib/systemd/user) - --with-systemdsystemunitdir=DIR - Directory for systemd system service files - (default=PREFIX/lib/systemd/system) - --with-systemdsystemenvgendir=DIR - Directory for systemd system environment generators - (default=PREFIX/lib/systemd/system-environment-generators) - --with-systemduserenvgendir=DIR - Directory for systemd user environment generators - (default=PREFIX/lib/systemd/user-environment-generators) - --with-system-fonts-dir=PATH - Directory where system fonts are, - [default=/usr/share/fonts] - --with-system-font-cache-dirs=PATHS - Directory where the system font cache is, - [default=/var/cache/fontconfig:/usr/lib/fontconfig/cache] - --with-profile-dir=PATH choose directory for profile.d files, - [default=SYSCONFDIR/profile.d] - --with-system-bubblewrap - Use system bwrap executable [default=check $BWRAP] - --with-system-dbus-proxy - Use system xdg-dbus-proxy executable [default=check - $DBUS_PROXY] - --with-systemd Build with systemd support [default=auto] - --with-curl Use libcurl [default=yes] - --with-gpgme-prefix=PFX prefix where GPGME is installed (optional) - --with-priv-mode=setuid/none - How to set privilege-raising during install (only - needed if userns not working) - --with-system-install-dir=DIR - Location of system installation - [LOCALSTATEDIR/lib/flatpak] - --with-run-media-dir=DIR - Location of auto-mounted USB drives [/run/media] - --with-sysusersdir=DIR Directory for systemd sysusers.d configuration files - (default=PREFIX/lib/sysusers.d) - --with-tmpfilesdir=DIR Directory for systemd tmpfiles.d configuration files - (default=PREFIX/lib/tmpfiles.d) - --with-system-helper-user=USERNAME - Name of the system helper user - --with-xml-catalog=CATALOG - path to xml catalog to use - --with-html-dir=PATH path to installed docs - -Some influential environment variables: - CC C compiler command - CFLAGS C compiler flags - LDFLAGS linker flags, e.g. -L if you have libraries in a - nonstandard directory - LIBS libraries to pass to the linker, e.g. -l - CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if - you have headers in a nonstandard directory - LT_SYS_LIBRARY_PATH - User-defined run-time library search path. - BISON The Bison implementation to use. Defaults to `bison'. - BFLAGS The list of arguments that will be passed by default to $BISON. - This script will default BFLAGS to the empty string to avoid a - default value of `-d' given by some make applications. - CPP C preprocessor - PKG_CONFIG path to pkg-config utility - PKG_CONFIG_PATH - directories to add to pkg-config's search path - PKG_CONFIG_LIBDIR - path overriding pkg-config's built-in search path - BWRAP Bubblewrap executable - DBUS_PROXY dbus-proxy executable - ARCHIVE_CFLAGS - C compiler flags for ARCHIVE, overriding pkg-config - ARCHIVE_LIBS - linker flags for ARCHIVE, overriding pkg-config - BASE_CFLAGS C compiler flags for BASE, overriding pkg-config - BASE_LIBS linker flags for BASE, overriding pkg-config - XML_CFLAGS C compiler flags for XML, overriding pkg-config - XML_LIBS linker flags for XML, overriding pkg-config - ZSTD_CFLAGS C compiler flags for ZSTD, overriding pkg-config - ZSTD_LIBS linker flags for ZSTD, overriding pkg-config - DCONF_CFLAGS - C compiler flags for DCONF, overriding pkg-config - DCONF_LIBS linker flags for DCONF, overriding pkg-config - SYSTEMD_CFLAGS - C compiler flags for SYSTEMD, overriding pkg-config - SYSTEMD_LIBS - linker flags for SYSTEMD, overriding pkg-config - MALCONTENT_CFLAGS - C compiler flags for MALCONTENT, overriding pkg-config - MALCONTENT_LIBS - linker flags for MALCONTENT, overriding pkg-config - GLIB260_CFLAGS - C compiler flags for GLIB260, overriding pkg-config - GLIB260_LIBS - linker flags for GLIB260, overriding pkg-config - CURL_CFLAGS C compiler flags for CURL, overriding pkg-config - CURL_LIBS linker flags for CURL, overriding pkg-config - SOUP_CFLAGS C compiler flags for SOUP, overriding pkg-config - SOUP_LIBS linker flags for SOUP, overriding pkg-config - DEP_GPGME_CFLAGS - C compiler flags for DEP_GPGME, overriding pkg-config - DEP_GPGME_LIBS - linker flags for DEP_GPGME, overriding pkg-config - DEP_GPGME_PTHREAD_CFLAGS - C compiler flags for DEP_GPGME_PTHREAD, overriding pkg-config - DEP_GPGME_PTHREAD_LIBS - linker flags for DEP_GPGME_PTHREAD, overriding pkg-config - POLKIT_CFLAGS - C compiler flags for POLKIT, overriding pkg-config - POLKIT_LIBS linker flags for POLKIT, overriding pkg-config - FUSE3_CFLAGS - C compiler flags for FUSE3, overriding pkg-config - FUSE3_LIBS linker flags for FUSE3, overriding pkg-config - FUSE_CFLAGS C compiler flags for FUSE, overriding pkg-config - FUSE_LIBS linker flags for FUSE, overriding pkg-config - XAUTH_CFLAGS - C compiler flags for XAUTH, overriding pkg-config - XAUTH_LIBS linker flags for XAUTH, overriding pkg-config - OSTREE_CFLAGS - C compiler flags for OSTREE, overriding pkg-config - OSTREE_LIBS linker flags for OSTREE, overriding pkg-config - JSON_CFLAGS C compiler flags for JSON, overriding pkg-config - JSON_LIBS linker flags for JSON, overriding pkg-config - APPSTREAM_CFLAGS - C compiler flags for APPSTREAM, overriding pkg-config - APPSTREAM_LIBS - linker flags for APPSTREAM, overriding pkg-config - GDK_PIXBUF_CFLAGS - C compiler flags for GDK_PIXBUF, overriding pkg-config - GDK_PIXBUF_LIBS - linker flags for GDK_PIXBUF, overriding pkg-config - LIBSECCOMP_CFLAGS - C compiler flags for LIBSECCOMP, overriding pkg-config - LIBSECCOMP_LIBS - linker flags for LIBSECCOMP, overriding pkg-config - GTKDOC_DEPS_CFLAGS - C compiler flags for GTKDOC_DEPS, overriding pkg-config - GTKDOC_DEPS_LIBS - linker flags for GTKDOC_DEPS, overriding pkg-config - XMLTO Define/override the 'xmlto' location. - XMLTO_FLAGS Define/override 'xmlto' options, like '--skip-validation'. - -Use these variables to override the choices made by `configure' or to help -it to find libraries and programs with nonstandard names/locations. - -Report bugs to . -Flatpak home page: . -_ACEOF -ac_status=$? -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d "$ac_dir" || - { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || - continue - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - cd "$ac_dir" || { ac_status=$?; continue; } - # Check for configure.gnu first; this name is used for a wrapper for - # Metaconfig's "Configure" on case-insensitive file systems. - if test -f "$ac_srcdir/configure.gnu"; then - echo && - $SHELL "$ac_srcdir/configure.gnu" --help=recursive - elif test -f "$ac_srcdir/configure"; then - echo && - $SHELL "$ac_srcdir/configure" --help=recursive - else - printf "%s\n" "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi || ac_status=$? - cd "$ac_pwd" || { ac_status=$?; break; } - done -fi - -test -n "$ac_init_help" && exit $ac_status -if $ac_init_version; then - cat <<\_ACEOF -Flatpak configure 1.14.10 -generated by GNU Autoconf 2.71 - -Copyright (C) 2021 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit -fi - -## ------------------------ ## -## Autoconf initialization. ## -## ------------------------ ## - -# ac_fn_c_try_compile LINENO -# -------------------------- -# Try to compile conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_compile () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext conftest.beam - if { { ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -printf "%s\n" "$ac_try_echo"; } >&5 - (eval "$ac_compile") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext -then : - ac_retval=0 -else $as_nop - printf "%s\n" "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_compile - -# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES -# ------------------------------------------------------- -# Tests whether HEADER exists and can be compiled using the include files in -# INCLUDES, setting the cache variable VAR accordingly. -ac_fn_c_check_header_compile () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -printf %s "checking for $2... " >&6; } -if eval test \${$3+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -#include <$2> -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - eval "$3=yes" -else $as_nop - eval "$3=no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -eval ac_res=\$$3 - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -printf "%s\n" "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_header_compile - -# ac_fn_c_try_link LINENO -# ----------------------- -# Try to link conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_link () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext conftest.beam conftest$ac_exeext - if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -printf "%s\n" "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - test -x conftest$ac_exeext - } -then : - ac_retval=0 -else $as_nop - printf "%s\n" "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information - # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would - # interfere with the next link command; also delete a directory that is - # left behind by Apple's compiler. We do this before executing the actions. - rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_link - -# ac_fn_c_check_func LINENO FUNC VAR -# ---------------------------------- -# Tests whether FUNC exists, setting the cache variable VAR accordingly -ac_fn_c_check_func () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -printf %s "checking for $2... " >&6; } -if eval test \${$3+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Define $2 to an innocuous variant, in case declares $2. - For example, HP-UX 11i declares gettimeofday. */ -#define $2 innocuous_$2 - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $2 (); below. */ - -#include -#undef $2 - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $2 (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$2 || defined __stub___$2 -choke me -#endif - -int -main (void) -{ -return $2 (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - eval "$3=yes" -else $as_nop - eval "$3=no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext -fi -eval ac_res=\$$3 - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -printf "%s\n" "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_func - -# ac_fn_c_try_cpp LINENO -# ---------------------- -# Try to preprocess conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_cpp () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if { { ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -printf "%s\n" "$ac_try_echo"; } >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } > conftest.i && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - } -then : - ac_retval=0 -else $as_nop - printf "%s\n" "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_cpp - -# ac_fn_c_try_run LINENO -# ---------------------- -# Try to run conftest.$ac_ext, and return whether this succeeded. Assumes that -# executables *can* be run. -ac_fn_c_try_run () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -printf "%s\n" "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' - { { case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -printf "%s\n" "$ac_try_echo"; } >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } -then : - ac_retval=0 -else $as_nop - printf "%s\n" "$as_me: program exited with status $ac_status" >&5 - printf "%s\n" "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=$ac_status -fi - rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_run - -# ac_fn_check_decl LINENO SYMBOL VAR INCLUDES EXTRA-OPTIONS FLAG-VAR -# ------------------------------------------------------------------ -# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR -# accordingly. Pass EXTRA-OPTIONS to the compiler, using FLAG-VAR. -ac_fn_check_decl () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - as_decl_name=`echo $2|sed 's/ *(.*//'` - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5 -printf %s "checking whether $as_decl_name is declared... " >&6; } -if eval test \${$3+y} -then : - printf %s "(cached) " >&6 -else $as_nop - as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` - eval ac_save_FLAGS=\$$6 - as_fn_append $6 " $5" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -int -main (void) -{ -#ifndef $as_decl_name -#ifdef __cplusplus - (void) $as_decl_use; -#else - (void) $as_decl_name; -#endif -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - eval "$3=yes" -else $as_nop - eval "$3=no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - eval $6=\$ac_save_FLAGS - -fi -eval ac_res=\$$3 - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -printf "%s\n" "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_check_decl -ac_configure_args_raw= -for ac_arg -do - case $ac_arg in - *\'*) - ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append ac_configure_args_raw " '$ac_arg'" -done - -case $ac_configure_args_raw in - *$as_nl*) - ac_safe_unquote= ;; - *) - ac_unsafe_z='|&;<>()$`\\"*?[ '' ' # This string ends in space, tab. - ac_unsafe_a="$ac_unsafe_z#~" - ac_safe_unquote="s/ '\\([^$ac_unsafe_a][^$ac_unsafe_z]*\\)'/ \\1/g" - ac_configure_args_raw=` printf "%s\n" "$ac_configure_args_raw" | sed "$ac_safe_unquote"`;; -esac - -cat >config.log <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by Flatpak $as_me 1.14.10, which was -generated by GNU Autoconf 2.71. Invocation command line was - - $ $0$ac_configure_args_raw - -_ACEOF -exec 5>>config.log -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - printf "%s\n" "PATH: $as_dir" - done -IFS=$as_save_IFS - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *\'*) - ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; - 2) - as_fn_append ac_configure_args1 " '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - as_fn_append ac_configure_args " '$ac_arg'" - ;; - esac - done -done -{ ac_configure_args0=; unset ac_configure_args0;} -{ ac_configure_args1=; unset ac_configure_args1;} - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Use '\'' to represent an apostrophe within the trap. -# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. -trap 'exit_status=$? - # Sanitize IFS. - IFS=" "" $as_nl" - # Save into config.log some information that might help in debugging. - { - echo - - printf "%s\n" "## ---------------- ## -## Cache variables. ## -## ---------------- ##" - echo - # The following way of writing the cache mishandles newlines in values, -( - for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) { eval $ac_var=; unset $ac_var;} ;; - esac ;; - esac - done - (set) 2>&1 | - case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - sed -n \ - "s/'\''/'\''\\\\'\'''\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" - ;; #( - *) - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) - echo - - printf "%s\n" "## ----------------- ## -## Output variables. ## -## ----------------- ##" - echo - for ac_var in $ac_subst_vars - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - printf "%s\n" "$ac_var='\''$ac_val'\''" - done | sort - echo - - if test -n "$ac_subst_files"; then - printf "%s\n" "## ------------------- ## -## File substitutions. ## -## ------------------- ##" - echo - for ac_var in $ac_subst_files - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - printf "%s\n" "$ac_var='\''$ac_val'\''" - done | sort - echo - fi - - if test -s confdefs.h; then - printf "%s\n" "## ----------- ## -## confdefs.h. ## -## ----------- ##" - echo - cat confdefs.h - echo - fi - test "$ac_signal" != 0 && - printf "%s\n" "$as_me: caught signal $ac_signal" - printf "%s\n" "$as_me: exit $exit_status" - } >&5 - rm -f core *.core core.conftest.* && - rm -f -r conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status -' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -f -r conftest* confdefs.h - -printf "%s\n" "/* confdefs.h */" > confdefs.h - -# Predefined preprocessor variables. - -printf "%s\n" "#define PACKAGE_NAME \"$PACKAGE_NAME\"" >>confdefs.h - -printf "%s\n" "#define PACKAGE_TARNAME \"$PACKAGE_TARNAME\"" >>confdefs.h - -printf "%s\n" "#define PACKAGE_VERSION \"$PACKAGE_VERSION\"" >>confdefs.h - -printf "%s\n" "#define PACKAGE_STRING \"$PACKAGE_STRING\"" >>confdefs.h - -printf "%s\n" "#define PACKAGE_BUGREPORT \"$PACKAGE_BUGREPORT\"" >>confdefs.h - -printf "%s\n" "#define PACKAGE_URL \"$PACKAGE_URL\"" >>confdefs.h - - -# Let the site file select an alternate cache file if it wants to. -# Prefer an explicitly selected file to automatically selected ones. -if test -n "$CONFIG_SITE"; then - ac_site_files="$CONFIG_SITE" -elif test "x$prefix" != xNONE; then - ac_site_files="$prefix/share/config.site $prefix/etc/config.site" -else - ac_site_files="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" -fi - -for ac_site_file in $ac_site_files -do - case $ac_site_file in #( - */*) : - ;; #( - *) : - ac_site_file=./$ac_site_file ;; -esac - if test -f "$ac_site_file" && test -r "$ac_site_file"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 -printf "%s\n" "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" \ - || { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "failed to load site script $ac_site_file -See \`config.log' for more details" "$LINENO" 5; } - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special files - # actually), so we avoid doing that. DJGPP emulates it as a regular file. - if test /dev/null != "$cache_file" && test -f "$cache_file"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 -printf "%s\n" "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . "$cache_file";; - *) . "./$cache_file";; - esac - fi -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 -printf "%s\n" "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -as_fn_append ac_header_c_list " stdio.h stdio_h HAVE_STDIO_H" -# Test code for whether the C compiler supports C89 (global declarations) -ac_c_conftest_c89_globals=' -/* Does the compiler advertise C89 conformance? - Do not test the value of __STDC__, because some compilers set it to 0 - while being otherwise adequately conformant. */ -#if !defined __STDC__ -# error "Compiler does not advertise C89 conformance" -#endif - -#include -#include -struct stat; -/* Most of the following tests are stolen from RCS 5.7 src/conf.sh. */ -struct buf { int x; }; -struct buf * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not \xHH hex character constants. - These do not provoke an error unfortunately, instead are silently treated - as an "x". The following induces an error, until -std is added to get - proper ANSI mode. Curiously \x00 != x always comes out true, for an - array size at least. It is necessary to write \x00 == 0 to get something - that is true only with -std. */ -int osf4_cc_array ['\''\x00'\'' == 0 ? 1 : -1]; - -/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters - inside strings and character constants. */ -#define FOO(x) '\''x'\'' -int xlc6_cc_array[FOO(a) == '\''x'\'' ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int), - int, int);' - -# Test code for whether the C compiler supports C89 (body of main). -ac_c_conftest_c89_main=' -ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]); -' - -# Test code for whether the C compiler supports C99 (global declarations) -ac_c_conftest_c99_globals=' -// Does the compiler advertise C99 conformance? -#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L -# error "Compiler does not advertise C99 conformance" -#endif - -#include -extern int puts (const char *); -extern int printf (const char *, ...); -extern int dprintf (int, const char *, ...); -extern void *malloc (size_t); - -// Check varargs macros. These examples are taken from C99 6.10.3.5. -// dprintf is used instead of fprintf to avoid needing to declare -// FILE and stderr. -#define debug(...) dprintf (2, __VA_ARGS__) -#define showlist(...) puts (#__VA_ARGS__) -#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) -static void -test_varargs_macros (void) -{ - int x = 1234; - int y = 5678; - debug ("Flag"); - debug ("X = %d\n", x); - showlist (The first, second, and third items.); - report (x>y, "x is %d but y is %d", x, y); -} - -// Check long long types. -#define BIG64 18446744073709551615ull -#define BIG32 4294967295ul -#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) -#if !BIG_OK - #error "your preprocessor is broken" -#endif -#if BIG_OK -#else - #error "your preprocessor is broken" -#endif -static long long int bignum = -9223372036854775807LL; -static unsigned long long int ubignum = BIG64; - -struct incomplete_array -{ - int datasize; - double data[]; -}; - -struct named_init { - int number; - const wchar_t *name; - double average; -}; - -typedef const char *ccp; - -static inline int -test_restrict (ccp restrict text) -{ - // See if C++-style comments work. - // Iterate through items via the restricted pointer. - // Also check for declarations in for loops. - for (unsigned int i = 0; *(text+i) != '\''\0'\''; ++i) - continue; - return 0; -} - -// Check varargs and va_copy. -static bool -test_varargs (const char *format, ...) -{ - va_list args; - va_start (args, format); - va_list args_copy; - va_copy (args_copy, args); - - const char *str = ""; - int number = 0; - float fnumber = 0; - - while (*format) - { - switch (*format++) - { - case '\''s'\'': // string - str = va_arg (args_copy, const char *); - break; - case '\''d'\'': // int - number = va_arg (args_copy, int); - break; - case '\''f'\'': // float - fnumber = va_arg (args_copy, double); - break; - default: - break; - } - } - va_end (args_copy); - va_end (args); - - return *str && number && fnumber; -} -' - -# Test code for whether the C compiler supports C99 (body of main). -ac_c_conftest_c99_main=' - // Check bool. - _Bool success = false; - success |= (argc != 0); - - // Check restrict. - if (test_restrict ("String literal") == 0) - success = true; - char *restrict newvar = "Another string"; - - // Check varargs. - success &= test_varargs ("s, d'\'' f .", "string", 65, 34.234); - test_varargs_macros (); - - // Check flexible array members. - struct incomplete_array *ia = - malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); - ia->datasize = 10; - for (int i = 0; i < ia->datasize; ++i) - ia->data[i] = i * 1.234; - - // Check named initializers. - struct named_init ni = { - .number = 34, - .name = L"Test wide string", - .average = 543.34343, - }; - - ni.number = 58; - - int dynamic_array[ni.number]; - dynamic_array[0] = argv[0][0]; - dynamic_array[ni.number - 1] = 543; - - // work around unused variable warnings - ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == '\''x'\'' - || dynamic_array[ni.number - 1] != 543); -' - -# Test code for whether the C compiler supports C11 (global declarations) -ac_c_conftest_c11_globals=' -// Does the compiler advertise C11 conformance? -#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L -# error "Compiler does not advertise C11 conformance" -#endif - -// Check _Alignas. -char _Alignas (double) aligned_as_double; -char _Alignas (0) no_special_alignment; -extern char aligned_as_int; -char _Alignas (0) _Alignas (int) aligned_as_int; - -// Check _Alignof. -enum -{ - int_alignment = _Alignof (int), - int_array_alignment = _Alignof (int[100]), - char_alignment = _Alignof (char) -}; -_Static_assert (0 < -_Alignof (int), "_Alignof is signed"); - -// Check _Noreturn. -int _Noreturn does_not_return (void) { for (;;) continue; } - -// Check _Static_assert. -struct test_static_assert -{ - int x; - _Static_assert (sizeof (int) <= sizeof (long int), - "_Static_assert does not work in struct"); - long int y; -}; - -// Check UTF-8 literals. -#define u8 syntax error! -char const utf8_literal[] = u8"happens to be ASCII" "another string"; - -// Check duplicate typedefs. -typedef long *long_ptr; -typedef long int *long_ptr; -typedef long_ptr long_ptr; - -// Anonymous structures and unions -- taken from C11 6.7.2.1 Example 1. -struct anonymous -{ - union { - struct { int i; int j; }; - struct { int k; long int l; } w; - }; - int m; -} v1; -' - -# Test code for whether the C compiler supports C11 (body of main). -ac_c_conftest_c11_main=' - _Static_assert ((offsetof (struct anonymous, i) - == offsetof (struct anonymous, w.k)), - "Anonymous union alignment botch"); - v1.i = 2; - v1.w.k = 5; - ok |= v1.i != 5; -' - -# Test code for whether the C compiler supports C11 (complete). -ac_c_conftest_c11_program="${ac_c_conftest_c89_globals} -${ac_c_conftest_c99_globals} -${ac_c_conftest_c11_globals} - -int -main (int argc, char **argv) -{ - int ok = 0; - ${ac_c_conftest_c89_main} - ${ac_c_conftest_c99_main} - ${ac_c_conftest_c11_main} - return ok; -} -" - -# Test code for whether the C compiler supports C99 (complete). -ac_c_conftest_c99_program="${ac_c_conftest_c89_globals} -${ac_c_conftest_c99_globals} - -int -main (int argc, char **argv) -{ - int ok = 0; - ${ac_c_conftest_c89_main} - ${ac_c_conftest_c99_main} - return ok; -} -" - -# Test code for whether the C compiler supports C89 (complete). -ac_c_conftest_c89_program="${ac_c_conftest_c89_globals} - -int -main (int argc, char **argv) -{ - int ok = 0; - ${ac_c_conftest_c89_main} - return ok; -} -" - -as_fn_append ac_header_c_list " stdlib.h stdlib_h HAVE_STDLIB_H" -as_fn_append ac_header_c_list " string.h string_h HAVE_STRING_H" -as_fn_append ac_header_c_list " inttypes.h inttypes_h HAVE_INTTYPES_H" -as_fn_append ac_header_c_list " stdint.h stdint_h HAVE_STDINT_H" -as_fn_append ac_header_c_list " strings.h strings_h HAVE_STRINGS_H" -as_fn_append ac_header_c_list " sys/stat.h sys_stat_h HAVE_SYS_STAT_H" -as_fn_append ac_header_c_list " sys/types.h sys_types_h HAVE_SYS_TYPES_H" -as_fn_append ac_header_c_list " unistd.h unistd_h HAVE_UNISTD_H" -as_fn_append ac_header_c_list " wchar.h wchar_h HAVE_WCHAR_H" -as_fn_append ac_header_c_list " minix/config.h minix_config_h HAVE_MINIX_CONFIG_H" -gt_needs="$gt_needs " - -# Auxiliary files required by this configure script. -ac_aux_files="config.rpath missing install-sh config.guess config.sub ltmain.sh compile" - -# Locations in which to look for auxiliary files. -ac_aux_dir_candidates="${srcdir}${PATH_SEPARATOR}${srcdir}/..${PATH_SEPARATOR}${srcdir}/../.." - -# Search for a directory containing all of the required auxiliary files, -# $ac_aux_files, from the $PATH-style list $ac_aux_dir_candidates. -# If we don't find one directory that contains all the files we need, -# we report the set of missing files from the *first* directory in -# $ac_aux_dir_candidates and give up. -ac_missing_aux_files="" -ac_first_candidate=: -printf "%s\n" "$as_me:${as_lineno-$LINENO}: looking for aux files: $ac_aux_files" >&5 -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -as_found=false -for as_dir in $ac_aux_dir_candidates -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - as_found=: - - printf "%s\n" "$as_me:${as_lineno-$LINENO}: trying $as_dir" >&5 - ac_aux_dir_found=yes - ac_install_sh= - for ac_aux in $ac_aux_files - do - # As a special case, if "install-sh" is required, that requirement - # can be satisfied by any of "install-sh", "install.sh", or "shtool", - # and $ac_install_sh is set appropriately for whichever one is found. - if test x"$ac_aux" = x"install-sh" - then - if test -f "${as_dir}install-sh"; then - printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}install-sh found" >&5 - ac_install_sh="${as_dir}install-sh -c" - elif test -f "${as_dir}install.sh"; then - printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}install.sh found" >&5 - ac_install_sh="${as_dir}install.sh -c" - elif test -f "${as_dir}shtool"; then - printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}shtool found" >&5 - ac_install_sh="${as_dir}shtool install -c" - else - ac_aux_dir_found=no - if $ac_first_candidate; then - ac_missing_aux_files="${ac_missing_aux_files} install-sh" - else - break - fi - fi - else - if test -f "${as_dir}${ac_aux}"; then - printf "%s\n" "$as_me:${as_lineno-$LINENO}: ${as_dir}${ac_aux} found" >&5 - else - ac_aux_dir_found=no - if $ac_first_candidate; then - ac_missing_aux_files="${ac_missing_aux_files} ${ac_aux}" - else - break - fi - fi - fi - done - if test "$ac_aux_dir_found" = yes; then - ac_aux_dir="$as_dir" - break - fi - ac_first_candidate=false - - as_found=false -done -IFS=$as_save_IFS -if $as_found -then : - -else $as_nop - as_fn_error $? "cannot find required auxiliary files:$ac_missing_aux_files" "$LINENO" 5 -fi - - -# These three variables are undocumented and unsupported, -# and are intended to be withdrawn in a future Autoconf release. -# They can cause serious problems if a builder's source tree is in a directory -# whose full name contains unusual characters. -if test -f "${ac_aux_dir}config.guess"; then - ac_config_guess="$SHELL ${ac_aux_dir}config.guess" -fi -if test -f "${ac_aux_dir}config.sub"; then - ac_config_sub="$SHELL ${ac_aux_dir}config.sub" -fi -if test -f "$ac_aux_dir/configure"; then - ac_configure="$SHELL ${ac_aux_dir}configure" -fi - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in $ac_precious_vars; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val=\$ac_cv_env_${ac_var}_value - eval ac_new_val=\$ac_env_${ac_var}_value - case $ac_old_set,$ac_new_set in - set,) - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -printf "%s\n" "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 -printf "%s\n" "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - # differences in whitespace do not lead to failure. - ac_old_val_w=`echo x $ac_old_val` - ac_new_val_w=`echo x $ac_new_val` - if test "$ac_old_val_w" != "$ac_new_val_w"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 -printf "%s\n" "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - ac_cache_corrupted=: - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 -printf "%s\n" "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} - eval $ac_var=\$ac_old_val - fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 -printf "%s\n" "$as_me: former value: \`$ac_old_val'" >&2;} - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 -printf "%s\n" "$as_me: current value: \`$ac_new_val'" >&2;} - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *\'*) ac_arg=$ac_var=`printf "%s\n" "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) as_fn_append ac_configure_args " '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 -printf "%s\n" "$as_me: error: changes in the environment can compromise the build" >&2;} - as_fn_error $? "run \`${MAKE-make} distclean' and/or \`rm $cache_file' - and start over" "$LINENO" 5 -fi -## -------------------- ## -## Main body of script. ## -## -------------------- ## - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - -GLIB_REQS=2.46 -SYSTEM_BWRAP_REQS=0.5.0 -SYSTEM_DBUS_PROXY_REQS=0.1.0 -OSTREE_REQS=2020.8 - - - - - - - - - - - - -# Expand $ac_aux_dir to an absolute path. -am_aux_dir=`cd "$ac_aux_dir" && pwd` - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -printf "%s\n" "$CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -printf "%s\n" "$ac_ct_CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -printf "%s\n" "$CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - fi -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - if test "$as_dir$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -printf "%s\n" "$CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl.exe - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -printf "%s\n" "$CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl.exe -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -printf "%s\n" "$ac_ct_CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - test -n "$ac_ct_CC" && break -done - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -fi - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}clang", so it can be a program name with args. -set dummy ${ac_tool_prefix}clang; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}clang" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -printf "%s\n" "$CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "clang", so it can be a program name with args. -set dummy clang; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="clang" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -printf "%s\n" "$ac_ct_CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -else - CC="$ac_cv_prog_CC" -fi - -fi - - -test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "no acceptable C compiler found in \$PATH -See \`config.log' for more details" "$LINENO" 5; } - -# Provide some information about the compiler. -printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 -set X $ac_compile -ac_compiler=$2 -for ac_option in --version -v -V -qversion -version; do - { { ac_try="$ac_compiler $ac_option >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -printf "%s\n" "$ac_try_echo"; } >&5 - (eval "$ac_compiler $ac_option >&5") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - sed '10a\ -... rest of stderr output deleted ... - 10q' conftest.err >conftest.er1 - cat conftest.er1 >&5 - fi - rm -f conftest.er1 conftest.err - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -done - -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" -# Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compilers, and finding out an intuition -# of exeext. -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 -printf %s "checking whether the C compiler works... " >&6; } -ac_link_default=`printf "%s\n" "$ac_link" | sed 's/ -o *conftest[^ ]*//'` - -# The possible output files: -ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" - -ac_rmfiles= -for ac_file in $ac_files -do - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; - * ) ac_rmfiles="$ac_rmfiles $ac_file";; - esac -done -rm -f $ac_rmfiles - -if { { ac_try="$ac_link_default" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -printf "%s\n" "$ac_try_echo"; } >&5 - (eval "$ac_link_default") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -then : - # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. -# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' -# in a Makefile. We should not override ac_cv_exeext if it was cached, -# so that the user can short-circuit this test for compilers unknown to -# Autoconf. -for ac_file in $ac_files '' -do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) - if test ${ac_cv_exeext+y} && test "$ac_cv_exeext" != no; - then :; else - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - fi - # We set ac_cv_exeext here because the later test for it is not - # safe: cross compilers may not add the suffix if given an `-o' - # argument, so we may need to know it at that point already. - # Even if this section looks crufty: it has the advantage of - # actually working. - break;; - * ) - break;; - esac -done -test "$ac_cv_exeext" = no && ac_cv_exeext= - -else $as_nop - ac_file='' -fi -if test -z "$ac_file" -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -printf "%s\n" "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error 77 "C compiler cannot create executables -See \`config.log' for more details" "$LINENO" 5; } -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 -printf %s "checking for C compiler default output file name... " >&6; } -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 -printf "%s\n" "$ac_file" >&6; } -ac_exeext=$ac_cv_exeext - -rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out -ac_clean_files=$ac_clean_files_save -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 -printf %s "checking for suffix of executables... " >&6; } -if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -printf "%s\n" "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -then : - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. -for ac_file in conftest.exe conftest conftest.*; do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - break;; - * ) break;; - esac -done -else $as_nop - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details" "$LINENO" 5; } -fi -rm -f conftest conftest$ac_cv_exeext -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 -printf "%s\n" "$ac_cv_exeext" >&6; } - -rm -f conftest.$ac_ext -EXEEXT=$ac_cv_exeext -ac_exeext=$EXEEXT -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -FILE *f = fopen ("conftest.out", "w"); - return ferror (f) || fclose (f) != 0; - - ; - return 0; -} -_ACEOF -ac_clean_files="$ac_clean_files conftest.out" -# Check that the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 -printf %s "checking whether we are cross compiling... " >&6; } -if test "$cross_compiling" != yes; then - { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -printf "%s\n" "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } - if { ac_try='./conftest$ac_cv_exeext' - { { case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -printf "%s\n" "$ac_try_echo"; } >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error 77 "cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details" "$LINENO" 5; } - fi - fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 -printf "%s\n" "$cross_compiling" >&6; } - -rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out -ac_clean_files=$ac_clean_files_save -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 -printf %s "checking for suffix of object files... " >&6; } -if test ${ac_cv_objext+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.o conftest.obj -if { { ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -printf "%s\n" "$ac_try_echo"; } >&5 - (eval "$ac_compile") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -then : - for ac_file in conftest.o conftest.obj conftest.*; do - test -f "$ac_file" || continue; - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -done -else $as_nop - printf "%s\n" "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot compute suffix of object files: cannot compile -See \`config.log' for more details" "$LINENO" 5; } -fi -rm -f conftest.$ac_cv_objext conftest.$ac_ext -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 -printf "%s\n" "$ac_cv_objext" >&6; } -OBJEXT=$ac_cv_objext -ac_objext=$OBJEXT -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5 -printf %s "checking whether the compiler supports GNU C... " >&6; } -if test ${ac_cv_c_compiler_gnu+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_compiler_gnu=yes -else $as_nop - ac_compiler_gnu=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 -printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; } -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -if test $ac_compiler_gnu = yes; then - GCC=yes -else - GCC= -fi -ac_test_CFLAGS=${CFLAGS+y} -ac_save_CFLAGS=$CFLAGS -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 -printf %s "checking whether $CC accepts -g... " >&6; } -if test ${ac_cv_prog_cc_g+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_save_c_werror_flag=$ac_c_werror_flag - ac_c_werror_flag=yes - ac_cv_prog_cc_g=no - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_prog_cc_g=yes -else $as_nop - CFLAGS="" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - -else $as_nop - ac_c_werror_flag=$ac_save_c_werror_flag - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_prog_cc_g=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ac_c_werror_flag=$ac_save_c_werror_flag -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 -printf "%s\n" "$ac_cv_prog_cc_g" >&6; } -if test $ac_test_CFLAGS; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -ac_prog_cc_stdc=no -if test x$ac_prog_cc_stdc = xno -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C11 features" >&5 -printf %s "checking for $CC option to enable C11 features... " >&6; } -if test ${ac_cv_prog_cc_c11+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_cv_prog_cc_c11=no -ac_save_CC=$CC -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_c_conftest_c11_program -_ACEOF -for ac_arg in '' -std=gnu11 -do - CC="$ac_save_CC $ac_arg" - if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_prog_cc_c11=$ac_arg -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam - test "x$ac_cv_prog_cc_c11" != "xno" && break -done -rm -f conftest.$ac_ext -CC=$ac_save_CC -fi - -if test "x$ac_cv_prog_cc_c11" = xno -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 -printf "%s\n" "unsupported" >&6; } -else $as_nop - if test "x$ac_cv_prog_cc_c11" = x -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 -printf "%s\n" "none needed" >&6; } -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5 -printf "%s\n" "$ac_cv_prog_cc_c11" >&6; } - CC="$CC $ac_cv_prog_cc_c11" -fi - ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11 - ac_prog_cc_stdc=c11 -fi -fi -if test x$ac_prog_cc_stdc = xno -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C99 features" >&5 -printf %s "checking for $CC option to enable C99 features... " >&6; } -if test ${ac_cv_prog_cc_c99+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_cv_prog_cc_c99=no -ac_save_CC=$CC -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_c_conftest_c99_program -_ACEOF -for ac_arg in '' -std=gnu99 -std=c99 -c99 -qlanglvl=extc1x -qlanglvl=extc99 -AC99 -D_STDC_C99= -do - CC="$ac_save_CC $ac_arg" - if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_prog_cc_c99=$ac_arg -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam - test "x$ac_cv_prog_cc_c99" != "xno" && break -done -rm -f conftest.$ac_ext -CC=$ac_save_CC -fi - -if test "x$ac_cv_prog_cc_c99" = xno -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 -printf "%s\n" "unsupported" >&6; } -else $as_nop - if test "x$ac_cv_prog_cc_c99" = x -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 -printf "%s\n" "none needed" >&6; } -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5 -printf "%s\n" "$ac_cv_prog_cc_c99" >&6; } - CC="$CC $ac_cv_prog_cc_c99" -fi - ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99 - ac_prog_cc_stdc=c99 -fi -fi -if test x$ac_prog_cc_stdc = xno -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C89 features" >&5 -printf %s "checking for $CC option to enable C89 features... " >&6; } -if test ${ac_cv_prog_cc_c89+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_cv_prog_cc_c89=no -ac_save_CC=$CC -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_c_conftest_c89_program -_ACEOF -for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_prog_cc_c89=$ac_arg -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam - test "x$ac_cv_prog_cc_c89" != "xno" && break -done -rm -f conftest.$ac_ext -CC=$ac_save_CC -fi - -if test "x$ac_cv_prog_cc_c89" = xno -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 -printf "%s\n" "unsupported" >&6; } -else $as_nop - if test "x$ac_cv_prog_cc_c89" = x -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 -printf "%s\n" "none needed" >&6; } -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 -printf "%s\n" "$ac_cv_prog_cc_c89" >&6; } - CC="$CC $ac_cv_prog_cc_c89" -fi - ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89 - ac_prog_cc_stdc=c89 -fi -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 -printf %s "checking whether $CC understands -c and -o together... " >&6; } -if test ${am_cv_prog_cc_c_o+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF - # Make sure it works both with $CC and with simple cc. - # Following AC_PROG_CC_C_O, we do the test twice because some - # compilers refuse to overwrite an existing .o file with -o, - # though they will create one. - am_cv_prog_cc_c_o=yes - for am_i in 1 2; do - if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 - ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } \ - && test -f conftest2.$ac_objext; then - : OK - else - am_cv_prog_cc_c_o=no - break - fi - done - rm -f core conftest* - unset am_i -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 -printf "%s\n" "$am_cv_prog_cc_c_o" >&6; } -if test "$am_cv_prog_cc_c_o" != yes; then - # Losing compiler, so override with the script. - # FIXME: It is wrong to rewrite CC. - # But if we don't then we get into trouble of one sort or another. - # A longer-term fix would be to have automake use am__CC in this case, - # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" - CC="$am_aux_dir/compile $CC" -fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - -ac_header= ac_cache= -for ac_item in $ac_header_c_list -do - if test $ac_cache; then - ac_fn_c_check_header_compile "$LINENO" $ac_header ac_cv_header_$ac_cache "$ac_includes_default" - if eval test \"x\$ac_cv_header_$ac_cache\" = xyes; then - printf "%s\n" "#define $ac_item 1" >> confdefs.h - fi - ac_header= ac_cache= - elif test $ac_header; then - ac_cache=$ac_item - else - ac_header=$ac_item - fi -done - - - - - - - - -if test $ac_cv_header_stdlib_h = yes && test $ac_cv_header_string_h = yes -then : - -printf "%s\n" "#define STDC_HEADERS 1" >>confdefs.h - -fi - - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether it is safe to define __EXTENSIONS__" >&5 -printf %s "checking whether it is safe to define __EXTENSIONS__... " >&6; } -if test ${ac_cv_safe_to_define___extensions__+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -# define __EXTENSIONS__ 1 - $ac_includes_default -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_safe_to_define___extensions__=yes -else $as_nop - ac_cv_safe_to_define___extensions__=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_safe_to_define___extensions__" >&5 -printf "%s\n" "$ac_cv_safe_to_define___extensions__" >&6; } - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether _XOPEN_SOURCE should be defined" >&5 -printf %s "checking whether _XOPEN_SOURCE should be defined... " >&6; } -if test ${ac_cv_should_define__xopen_source+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_cv_should_define__xopen_source=no - if test $ac_cv_header_wchar_h = yes -then : - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include - mbstate_t x; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #define _XOPEN_SOURCE 500 - #include - mbstate_t x; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_should_define__xopen_source=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_should_define__xopen_source" >&5 -printf "%s\n" "$ac_cv_should_define__xopen_source" >&6; } - - printf "%s\n" "#define _ALL_SOURCE 1" >>confdefs.h - - printf "%s\n" "#define _DARWIN_C_SOURCE 1" >>confdefs.h - - printf "%s\n" "#define _GNU_SOURCE 1" >>confdefs.h - - printf "%s\n" "#define _HPUX_ALT_XOPEN_SOCKET_API 1" >>confdefs.h - - printf "%s\n" "#define _NETBSD_SOURCE 1" >>confdefs.h - - printf "%s\n" "#define _OPENBSD_SOURCE 1" >>confdefs.h - - printf "%s\n" "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h - - printf "%s\n" "#define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1" >>confdefs.h - - printf "%s\n" "#define __STDC_WANT_IEC_60559_BFP_EXT__ 1" >>confdefs.h - - printf "%s\n" "#define __STDC_WANT_IEC_60559_DFP_EXT__ 1" >>confdefs.h - - printf "%s\n" "#define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1" >>confdefs.h - - printf "%s\n" "#define __STDC_WANT_IEC_60559_TYPES_EXT__ 1" >>confdefs.h - - printf "%s\n" "#define __STDC_WANT_LIB_EXT2__ 1" >>confdefs.h - - printf "%s\n" "#define __STDC_WANT_MATH_SPEC_FUNCS__ 1" >>confdefs.h - - printf "%s\n" "#define _TANDEM_SOURCE 1" >>confdefs.h - - if test $ac_cv_header_minix_config_h = yes -then : - MINIX=yes - printf "%s\n" "#define _MINIX 1" >>confdefs.h - - printf "%s\n" "#define _POSIX_SOURCE 1" >>confdefs.h - - printf "%s\n" "#define _POSIX_1_SOURCE 2" >>confdefs.h - -else $as_nop - MINIX= -fi - if test $ac_cv_safe_to_define___extensions__ = yes -then : - printf "%s\n" "#define __EXTENSIONS__ 1" >>confdefs.h - -fi - if test $ac_cv_should_define__xopen_source = yes -then : - printf "%s\n" "#define _XOPEN_SOURCE 500" >>confdefs.h - -fi - -# Check whether --enable-largefile was given. -if test ${enable_largefile+y} -then : - enableval=$enable_largefile; -fi - -if test "$enable_largefile" != no; then - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5 -printf %s "checking for special C compiler options needed for large files... " >&6; } -if test ${ac_cv_sys_largefile_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_cv_sys_largefile_CC=no - if test "$GCC" != yes; then - ac_save_CC=$CC - while :; do - # IRIX 6.2 and later do not support large files by default, - # so use the C compiler's -n32 option if that helps. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF - if ac_fn_c_try_compile "$LINENO" -then : - break -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam - CC="$CC -n32" - if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_sys_largefile_CC=' -n32'; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam - break - done - CC=$ac_save_CC - rm -f conftest.$ac_ext - fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5 -printf "%s\n" "$ac_cv_sys_largefile_CC" >&6; } - if test "$ac_cv_sys_largefile_CC" != no; then - CC=$CC$ac_cv_sys_largefile_CC - fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5 -printf %s "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; } -if test ${ac_cv_sys_file_offset_bits+y} -then : - printf %s "(cached) " >&6 -else $as_nop - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_sys_file_offset_bits=no; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#define _FILE_OFFSET_BITS 64 -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_sys_file_offset_bits=64; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ac_cv_sys_file_offset_bits=unknown - break -done -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5 -printf "%s\n" "$ac_cv_sys_file_offset_bits" >&6; } -case $ac_cv_sys_file_offset_bits in #( - no | unknown) ;; - *) -printf "%s\n" "#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits" >>confdefs.h -;; -esac -rm -rf conftest* - if test $ac_cv_sys_file_offset_bits = unknown; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5 -printf %s "checking for _LARGE_FILES value needed for large files... " >&6; } -if test ${ac_cv_sys_large_files+y} -then : - printf %s "(cached) " >&6 -else $as_nop - while :; do - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_sys_large_files=no; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#define _LARGE_FILES 1 -#include - /* Check that off_t can represent 2**63 - 1 correctly. - We can't simply define LARGE_OFF_T to be 9223372036854775807, - since some C++ compilers masquerading as C compilers - incorrectly reject 9223372036854775807. */ -#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31)) - int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 - && LARGE_OFF_T % 2147483647 == 1) - ? 1 : -1]; -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_sys_large_files=1; break -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ac_cv_sys_large_files=unknown - break -done -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5 -printf "%s\n" "$ac_cv_sys_large_files" >&6; } -case $ac_cv_sys_large_files in #( - no | unknown) ;; - *) -printf "%s\n" "#define _LARGE_FILES $ac_cv_sys_large_files" >>confdefs.h -;; -esac -rm -rf conftest* - fi -fi - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -printf "%s\n" "$CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -printf "%s\n" "$ac_ct_CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -printf "%s\n" "$CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - fi -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - if test "$as_dir$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -printf "%s\n" "$CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl.exe - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -printf "%s\n" "$CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl.exe -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -printf "%s\n" "$ac_ct_CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - test -n "$ac_ct_CC" && break -done - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -fi - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}clang", so it can be a program name with args. -set dummy ${ac_tool_prefix}clang; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}clang" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -printf "%s\n" "$CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "clang", so it can be a program name with args. -set dummy clang; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_CC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="clang" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -printf "%s\n" "$ac_ct_CC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -else - CC="$ac_cv_prog_CC" -fi - -fi - - -test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "no acceptable C compiler found in \$PATH -See \`config.log' for more details" "$LINENO" 5; } - -# Provide some information about the compiler. -printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 -set X $ac_compile -ac_compiler=$2 -for ac_option in --version -v -V -qversion -version; do - { { ac_try="$ac_compiler $ac_option >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -printf "%s\n" "$ac_try_echo"; } >&5 - (eval "$ac_compiler $ac_option >&5") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - sed '10a\ -... rest of stderr output deleted ... - 10q' conftest.err >conftest.er1 - cat conftest.er1 >&5 - fi - rm -f conftest.er1 conftest.err - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -done - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5 -printf %s "checking whether the compiler supports GNU C... " >&6; } -if test ${ac_cv_c_compiler_gnu+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_compiler_gnu=yes -else $as_nop - ac_compiler_gnu=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 -printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; } -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -if test $ac_compiler_gnu = yes; then - GCC=yes -else - GCC= -fi -ac_test_CFLAGS=${CFLAGS+y} -ac_save_CFLAGS=$CFLAGS -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 -printf %s "checking whether $CC accepts -g... " >&6; } -if test ${ac_cv_prog_cc_g+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_save_c_werror_flag=$ac_c_werror_flag - ac_c_werror_flag=yes - ac_cv_prog_cc_g=no - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_prog_cc_g=yes -else $as_nop - CFLAGS="" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - -else $as_nop - ac_c_werror_flag=$ac_save_c_werror_flag - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_prog_cc_g=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - ac_c_werror_flag=$ac_save_c_werror_flag -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 -printf "%s\n" "$ac_cv_prog_cc_g" >&6; } -if test $ac_test_CFLAGS; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -ac_prog_cc_stdc=no -if test x$ac_prog_cc_stdc = xno -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C11 features" >&5 -printf %s "checking for $CC option to enable C11 features... " >&6; } -if test ${ac_cv_prog_cc_c11+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_cv_prog_cc_c11=no -ac_save_CC=$CC -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_c_conftest_c11_program -_ACEOF -for ac_arg in '' -std=gnu11 -do - CC="$ac_save_CC $ac_arg" - if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_prog_cc_c11=$ac_arg -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam - test "x$ac_cv_prog_cc_c11" != "xno" && break -done -rm -f conftest.$ac_ext -CC=$ac_save_CC -fi - -if test "x$ac_cv_prog_cc_c11" = xno -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 -printf "%s\n" "unsupported" >&6; } -else $as_nop - if test "x$ac_cv_prog_cc_c11" = x -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 -printf "%s\n" "none needed" >&6; } -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5 -printf "%s\n" "$ac_cv_prog_cc_c11" >&6; } - CC="$CC $ac_cv_prog_cc_c11" -fi - ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11 - ac_prog_cc_stdc=c11 -fi -fi -if test x$ac_prog_cc_stdc = xno -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C99 features" >&5 -printf %s "checking for $CC option to enable C99 features... " >&6; } -if test ${ac_cv_prog_cc_c99+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_cv_prog_cc_c99=no -ac_save_CC=$CC -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_c_conftest_c99_program -_ACEOF -for ac_arg in '' -std=gnu99 -std=c99 -c99 -qlanglvl=extc1x -qlanglvl=extc99 -AC99 -D_STDC_C99= -do - CC="$ac_save_CC $ac_arg" - if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_prog_cc_c99=$ac_arg -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam - test "x$ac_cv_prog_cc_c99" != "xno" && break -done -rm -f conftest.$ac_ext -CC=$ac_save_CC -fi - -if test "x$ac_cv_prog_cc_c99" = xno -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 -printf "%s\n" "unsupported" >&6; } -else $as_nop - if test "x$ac_cv_prog_cc_c99" = x -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 -printf "%s\n" "none needed" >&6; } -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5 -printf "%s\n" "$ac_cv_prog_cc_c99" >&6; } - CC="$CC $ac_cv_prog_cc_c99" -fi - ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99 - ac_prog_cc_stdc=c99 -fi -fi -if test x$ac_prog_cc_stdc = xno -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C89 features" >&5 -printf %s "checking for $CC option to enable C89 features... " >&6; } -if test ${ac_cv_prog_cc_c89+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_cv_prog_cc_c89=no -ac_save_CC=$CC -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$ac_c_conftest_c89_program -_ACEOF -for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - if ac_fn_c_try_compile "$LINENO" -then : - ac_cv_prog_cc_c89=$ac_arg -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam - test "x$ac_cv_prog_cc_c89" != "xno" && break -done -rm -f conftest.$ac_ext -CC=$ac_save_CC -fi - -if test "x$ac_cv_prog_cc_c89" = xno -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 -printf "%s\n" "unsupported" >&6; } -else $as_nop - if test "x$ac_cv_prog_cc_c89" = x -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 -printf "%s\n" "none needed" >&6; } -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 -printf "%s\n" "$ac_cv_prog_cc_c89" >&6; } - CC="$CC $ac_cv_prog_cc_c89" -fi - ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89 - ac_prog_cc_stdc=c89 -fi -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 -printf %s "checking whether $CC understands -c and -o together... " >&6; } -if test ${am_cv_prog_cc_c_o+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF - # Make sure it works both with $CC and with simple cc. - # Following AC_PROG_CC_C_O, we do the test twice because some - # compilers refuse to overwrite an existing .o file with -o, - # though they will create one. - am_cv_prog_cc_c_o=yes - for am_i in 1 2; do - if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 - ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } \ - && test -f conftest2.$ac_objext; then - : OK - else - am_cv_prog_cc_c_o=no - break - fi - done - rm -f core conftest* - unset am_i -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 -printf "%s\n" "$am_cv_prog_cc_c_o" >&6; } -if test "$am_cv_prog_cc_c_o" != yes; then - # Losing compiler, so override with the script. - # FIXME: It is wrong to rewrite CC. - # But if we don't then we get into trouble of one sort or another. - # A longer-term fix would be to have automake use am__CC in this case, - # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" - CC="$am_aux_dir/compile $CC" -fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - -# Check whether --enable-static was given. -if test ${enable_static+y} -then : - enableval=$enable_static; p=${PACKAGE-default} - case $enableval in - yes) enable_static=yes ;; - no) enable_static=no ;; - *) - enable_static=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for pkg in $enableval; do - IFS=$lt_save_ifs - if test "X$pkg" = "X$p"; then - enable_static=yes - fi - done - IFS=$lt_save_ifs - ;; - esac -else $as_nop - enable_static=no -fi - - - - - - - - - - - - -case `pwd` in - *\ * | *\ *) - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 -printf "%s\n" "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; -esac - - - -macro_version='2.4.7' -macro_revision='2.4.7' - - - - - - - - - - - - - - -ltmain=$ac_aux_dir/ltmain.sh - - - - # Make sure we can run config.sub. -$SHELL "${ac_aux_dir}config.sub" sun4 >/dev/null 2>&1 || - as_fn_error $? "cannot run $SHELL ${ac_aux_dir}config.sub" "$LINENO" 5 - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 -printf %s "checking build system type... " >&6; } -if test ${ac_cv_build+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_build_alias=$build_alias -test "x$ac_build_alias" = x && - ac_build_alias=`$SHELL "${ac_aux_dir}config.guess"` -test "x$ac_build_alias" = x && - as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 -ac_cv_build=`$SHELL "${ac_aux_dir}config.sub" $ac_build_alias` || - as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $ac_build_alias failed" "$LINENO" 5 - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 -printf "%s\n" "$ac_cv_build" >&6; } -case $ac_cv_build in -*-*-*) ;; -*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; -esac -build=$ac_cv_build -ac_save_IFS=$IFS; IFS='-' -set x $ac_cv_build -shift -build_cpu=$1 -build_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -build_os=$* -IFS=$ac_save_IFS -case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 -printf %s "checking host system type... " >&6; } -if test ${ac_cv_host+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test "x$host_alias" = x; then - ac_cv_host=$ac_cv_build -else - ac_cv_host=`$SHELL "${ac_aux_dir}config.sub" $host_alias` || - as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $host_alias failed" "$LINENO" 5 -fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 -printf "%s\n" "$ac_cv_host" >&6; } -case $ac_cv_host in -*-*-*) ;; -*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; -esac -host=$ac_cv_host -ac_save_IFS=$IFS; IFS='-' -set x $ac_cv_host -shift -host_cpu=$1 -host_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -host_os=$* -IFS=$ac_save_IFS -case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac - - -# Backslashify metacharacters that are still active within -# double-quoted strings. -sed_quote_subst='s/\(["`$\\]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\(["`\\]\)/\\\1/g' - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# Sed substitution to delay expansion of an escaped single quote. -delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' - -# Sed substitution to avoid accidental globbing in evaled expressions -no_glob_subst='s/\*/\\\*/g' - -ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO -ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 -printf %s "checking how to print strings... " >&6; } -# Test print first, because it will be a builtin if present. -if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ - test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then - ECHO='print -r --' -elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then - ECHO='printf %s\n' -else - # Use this function as a fallback that always works. - func_fallback_echo () - { - eval 'cat <<_LTECHO_EOF -$1 -_LTECHO_EOF' - } - ECHO='func_fallback_echo' -fi - -# func_echo_all arg... -# Invoke $ECHO with all args, space-separated. -func_echo_all () -{ - $ECHO "" -} - -case $ECHO in - printf*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: printf" >&5 -printf "%s\n" "printf" >&6; } ;; - print*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 -printf "%s\n" "print -r" >&6; } ;; - *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: cat" >&5 -printf "%s\n" "cat" >&6; } ;; -esac - - - - - - - - - - - - - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 -printf %s "checking for a sed that does not truncate output... " >&6; } -if test ${ac_cv_path_SED+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ - for ac_i in 1 2 3 4 5 6 7; do - ac_script="$ac_script$as_nl$ac_script" - done - echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed - { ac_script=; unset ac_script;} - if test -z "$SED"; then - ac_path_SED_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_prog in sed gsed - do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_SED="$as_dir$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_SED" || continue -# Check for GNU ac_path_SED and select it if it is found. - # Check for GNU $ac_path_SED -case `"$ac_path_SED" --version 2>&1` in -*GNU*) - ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; -*) - ac_count=0 - printf %s 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - printf "%s\n" '' >> "conftest.nl" - "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_SED_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_SED="$ac_path_SED" - ac_path_SED_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_SED_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_SED"; then - as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 - fi -else - ac_cv_path_SED=$SED -fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 -printf "%s\n" "$ac_cv_path_SED" >&6; } - SED="$ac_cv_path_SED" - rm -f conftest.sed - -test -z "$SED" && SED=sed -Xsed="$SED -e 1s/^X//" - - - - - - - - - - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 -printf %s "checking for grep that handles long lines and -e... " >&6; } -if test ${ac_cv_path_GREP+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -z "$GREP"; then - ac_path_GREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_prog in grep ggrep - do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_GREP="$as_dir$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_GREP" || continue -# Check for GNU ac_path_GREP and select it if it is found. - # Check for GNU $ac_path_GREP -case `"$ac_path_GREP" --version 2>&1` in -*GNU*) - ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; -*) - ac_count=0 - printf %s 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - printf "%s\n" 'GREP' >> "conftest.nl" - "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_GREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_GREP="$ac_path_GREP" - ac_path_GREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_GREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_GREP"; then - as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_GREP=$GREP -fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 -printf "%s\n" "$ac_cv_path_GREP" >&6; } - GREP="$ac_cv_path_GREP" - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 -printf %s "checking for egrep... " >&6; } -if test ${ac_cv_path_EGREP+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 - then ac_cv_path_EGREP="$GREP -E" - else - if test -z "$EGREP"; then - ac_path_EGREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_prog in egrep - do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_EGREP" || continue -# Check for GNU ac_path_EGREP and select it if it is found. - # Check for GNU $ac_path_EGREP -case `"$ac_path_EGREP" --version 2>&1` in -*GNU*) - ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; -*) - ac_count=0 - printf %s 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - printf "%s\n" 'EGREP' >> "conftest.nl" - "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_EGREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_EGREP="$ac_path_EGREP" - ac_path_EGREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_EGREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_EGREP"; then - as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_EGREP=$EGREP -fi - - fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 -printf "%s\n" "$ac_cv_path_EGREP" >&6; } - EGREP="$ac_cv_path_EGREP" - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5 -printf %s "checking for fgrep... " >&6; } -if test ${ac_cv_path_FGREP+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1 - then ac_cv_path_FGREP="$GREP -F" - else - if test -z "$FGREP"; then - ac_path_FGREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_prog in fgrep - do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_FGREP="$as_dir$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_FGREP" || continue -# Check for GNU ac_path_FGREP and select it if it is found. - # Check for GNU $ac_path_FGREP -case `"$ac_path_FGREP" --version 2>&1` in -*GNU*) - ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;; -*) - ac_count=0 - printf %s 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - printf "%s\n" 'FGREP' >> "conftest.nl" - "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_FGREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_FGREP="$ac_path_FGREP" - ac_path_FGREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_FGREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_FGREP"; then - as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_FGREP=$FGREP -fi - - fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5 -printf "%s\n" "$ac_cv_path_FGREP" >&6; } - FGREP="$ac_cv_path_FGREP" - - -test -z "$GREP" && GREP=grep - - - - - - - - - - - - - - - - - - - -# Check whether --with-gnu-ld was given. -if test ${with_gnu_ld+y} -then : - withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes -else $as_nop - with_gnu_ld=no -fi - -ac_prog=ld -if test yes = "$GCC"; then - # Check if gcc -print-prog-name=ld gives a path. - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 -printf %s "checking for ld used by $CC... " >&6; } - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return, which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [\\/]* | ?:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' - # Canonicalize the pathname of ld - ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` - while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do - ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` - done - test -z "$LD" && LD=$ac_prog - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test yes = "$with_gnu_ld"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 -printf %s "checking for GNU ld... " >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 -printf %s "checking for non-GNU ld... " >&6; } -fi -if test ${lt_cv_path_LD+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -z "$LD"; then - lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS=$lt_save_ifs - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD=$ac_dir/$ac_prog - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some variants of GNU ld only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - case `"$lt_cv_path_LD" -v 2>&1 &5 -printf "%s\n" "$LD" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi -test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 -printf %s "checking if the linker ($LD) is GNU ld... " >&6; } -if test ${lt_cv_prog_gnu_ld+y} -then : - printf %s "(cached) " >&6 -else $as_nop - # I'd rather use --version here, but apparently some GNU lds only accept -v. -case `$LD -v 2>&1 &5 -printf "%s\n" "$lt_cv_prog_gnu_ld" >&6; } -with_gnu_ld=$lt_cv_prog_gnu_ld - - - - - - - - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5 -printf %s "checking for BSD- or MS-compatible name lister (nm)... " >&6; } -if test ${lt_cv_path_NM+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM=$NM -else - lt_nm_to_check=${ac_tool_prefix}nm - if test -n "$ac_tool_prefix" && test "$build" = "$host"; then - lt_nm_to_check="$lt_nm_to_check nm" - fi - for lt_tmp_nm in $lt_nm_to_check; do - lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do - IFS=$lt_save_ifs - test -z "$ac_dir" && ac_dir=. - tmp_nm=$ac_dir/$lt_tmp_nm - if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the 'sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty - case $build_os in - mingw*) lt_bad_file=conftest.nm/nofile ;; - *) lt_bad_file=/dev/null ;; - esac - case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in - *$lt_bad_file* | *'Invalid file or object type'*) - lt_cv_path_NM="$tmp_nm -B" - break 2 - ;; - *) - case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in - */dev/null*) - lt_cv_path_NM="$tmp_nm -p" - break 2 - ;; - *) - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - ;; - esac - ;; - esac - fi - done - IFS=$lt_save_ifs - done - : ${lt_cv_path_NM=no} -fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 -printf "%s\n" "$lt_cv_path_NM" >&6; } -if test no != "$lt_cv_path_NM"; then - NM=$lt_cv_path_NM -else - # Didn't find any BSD compatible name lister, look for dumpbin. - if test -n "$DUMPBIN"; then : - # Let the user override the test. - else - if test -n "$ac_tool_prefix"; then - for ac_prog in dumpbin "link -dump" - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_DUMPBIN+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$DUMPBIN"; then - ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -DUMPBIN=$ac_cv_prog_DUMPBIN -if test -n "$DUMPBIN"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5 -printf "%s\n" "$DUMPBIN" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - test -n "$DUMPBIN" && break - done -fi -if test -z "$DUMPBIN"; then - ac_ct_DUMPBIN=$DUMPBIN - for ac_prog in dumpbin "link -dump" -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_DUMPBIN+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_DUMPBIN"; then - ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_DUMPBIN="$ac_prog" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN -if test -n "$ac_ct_DUMPBIN"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5 -printf "%s\n" "$ac_ct_DUMPBIN" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - test -n "$ac_ct_DUMPBIN" && break -done - - if test "x$ac_ct_DUMPBIN" = x; then - DUMPBIN=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - DUMPBIN=$ac_ct_DUMPBIN - fi -fi - - case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in - *COFF*) - DUMPBIN="$DUMPBIN -symbols -headers" - ;; - *) - DUMPBIN=: - ;; - esac - fi - - if test : != "$DUMPBIN"; then - NM=$DUMPBIN - fi -fi -test -z "$NM" && NM=nm - - - - - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5 -printf %s "checking the name lister ($NM) interface... " >&6; } -if test ${lt_cv_nm_interface+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_nm_interface="BSD nm" - echo "int some_variable = 0;" > conftest.$ac_ext - (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5) - (eval "$ac_compile" 2>conftest.err) - cat conftest.err >&5 - (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5) - (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) - cat conftest.err >&5 - (eval echo "\"\$as_me:$LINENO: output\"" >&5) - cat conftest.out >&5 - if $GREP 'External.*some_variable' conftest.out > /dev/null; then - lt_cv_nm_interface="MS dumpbin" - fi - rm -f conftest* -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5 -printf "%s\n" "$lt_cv_nm_interface" >&6; } - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 -printf %s "checking whether ln -s works... " >&6; } -LN_S=$as_ln_s -if test "$LN_S" = "ln -s"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 -printf "%s\n" "no, using $LN_S" >&6; } -fi - -# find the maximum length of command line arguments -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 -printf %s "checking the maximum length of command line arguments... " >&6; } -if test ${lt_cv_sys_max_cmd_len+y} -then : - printf %s "(cached) " >&6 -else $as_nop - i=0 - teststring=ABCD - - case $build_os in - msdosdjgpp*) - # On DJGPP, this test can blow up pretty badly due to problems in libc - # (any single argument exceeding 2000 bytes causes a buffer overrun - # during glob expansion). Even if it were fixed, the result of this - # check would be larger than it should be. - lt_cv_sys_max_cmd_len=12288; # 12K is about right - ;; - - gnu*) - # Under GNU Hurd, this test is not required because there is - # no limit to the length of command line arguments. - # Libtool will interpret -1 as no limit whatsoever - lt_cv_sys_max_cmd_len=-1; - ;; - - cygwin* | mingw* | cegcc*) - # On Win9x/ME, this test blows up -- it succeeds, but takes - # about 5 minutes as the teststring grows exponentially. - # Worse, since 9x/ME are not pre-emptively multitasking, - # you end up with a "frozen" computer, even though with patience - # the test eventually succeeds (with a max line length of 256k). - # Instead, let's just punt: use the minimum linelength reported by - # all of the supported platforms: 8192 (on NT/2K/XP). - lt_cv_sys_max_cmd_len=8192; - ;; - - mint*) - # On MiNT this can take a long time and run out of memory. - lt_cv_sys_max_cmd_len=8192; - ;; - - amigaos*) - # On AmigaOS with pdksh, this test takes hours, literally. - # So we just punt and use a minimum line length of 8192. - lt_cv_sys_max_cmd_len=8192; - ;; - - bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*) - # This has been around since 386BSD, at least. Likely further. - if test -x /sbin/sysctl; then - lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` - elif test -x /usr/sbin/sysctl; then - lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` - else - lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs - fi - # And add a safety zone - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` - ;; - - interix*) - # We know the value 262144 and hardcode it with a safety zone (like BSD) - lt_cv_sys_max_cmd_len=196608 - ;; - - os2*) - # The test takes a long time on OS/2. - lt_cv_sys_max_cmd_len=8192 - ;; - - osf*) - # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure - # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not - # nice to cause kernel panics so lets avoid the loop below. - # First set a reasonable default. - lt_cv_sys_max_cmd_len=16384 - # - if test -x /sbin/sysconfig; then - case `/sbin/sysconfig -q proc exec_disable_arg_limit` in - *1*) lt_cv_sys_max_cmd_len=-1 ;; - esac - fi - ;; - sco3.2v5*) - lt_cv_sys_max_cmd_len=102400 - ;; - sysv5* | sco5v6* | sysv4.2uw2*) - kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` - if test -n "$kargmax"; then - lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[ ]//'` - else - lt_cv_sys_max_cmd_len=32768 - fi - ;; - *) - lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` - if test -n "$lt_cv_sys_max_cmd_len" && \ - test undefined != "$lt_cv_sys_max_cmd_len"; then - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` - else - # Make teststring a little bigger before we do anything with it. - # a 1K string should be a reasonable start. - for i in 1 2 3 4 5 6 7 8; do - teststring=$teststring$teststring - done - SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} - # If test is not a shell built-in, we'll probably end up computing a - # maximum length that is only half of the actual maximum length, but - # we can't tell. - while { test X`env echo "$teststring$teststring" 2>/dev/null` \ - = "X$teststring$teststring"; } >/dev/null 2>&1 && - test 17 != "$i" # 1/2 MB should be enough - do - i=`expr $i + 1` - teststring=$teststring$teststring - done - # Only check the string length outside the loop. - lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` - teststring= - # Add a significant safety factor because C++ compilers can tack on - # massive amounts of additional arguments before passing them to the - # linker. It appears as though 1/2 is a usable value. - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` - fi - ;; - esac - -fi - -if test -n "$lt_cv_sys_max_cmd_len"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 -printf "%s\n" "$lt_cv_sys_max_cmd_len" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none" >&5 -printf "%s\n" "none" >&6; } -fi -max_cmd_len=$lt_cv_sys_max_cmd_len - - - - - - -: ${CP="cp -f"} -: ${MV="mv -f"} -: ${RM="rm -f"} - -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - lt_unset=unset -else - lt_unset=false -fi - - - - - -# test EBCDIC or ASCII -case `echo X|tr X '\101'` in - A) # ASCII based system - # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr - lt_SP2NL='tr \040 \012' - lt_NL2SP='tr \015\012 \040\040' - ;; - *) # EBCDIC based system - lt_SP2NL='tr \100 \n' - lt_NL2SP='tr \r\n \100\100' - ;; -esac - - - - - - - - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5 -printf %s "checking how to convert $build file names to $host format... " >&6; } -if test ${lt_cv_to_host_file_cmd+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $host in - *-*-mingw* ) - case $build in - *-*-mingw* ) # actually msys - lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 - ;; - *-*-cygwin* ) - lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 - ;; - * ) # otherwise, assume *nix - lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 - ;; - esac - ;; - *-*-cygwin* ) - case $build in - *-*-mingw* ) # actually msys - lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin - ;; - *-*-cygwin* ) - lt_cv_to_host_file_cmd=func_convert_file_noop - ;; - * ) # otherwise, assume *nix - lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin - ;; - esac - ;; - * ) # unhandled hosts (and "normal" native builds) - lt_cv_to_host_file_cmd=func_convert_file_noop - ;; -esac - -fi - -to_host_file_cmd=$lt_cv_to_host_file_cmd -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5 -printf "%s\n" "$lt_cv_to_host_file_cmd" >&6; } - - - - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5 -printf %s "checking how to convert $build file names to toolchain format... " >&6; } -if test ${lt_cv_to_tool_file_cmd+y} -then : - printf %s "(cached) " >&6 -else $as_nop - #assume ordinary cross tools, or native build. -lt_cv_to_tool_file_cmd=func_convert_file_noop -case $host in - *-*-mingw* ) - case $build in - *-*-mingw* ) # actually msys - lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 - ;; - esac - ;; -esac - -fi - -to_tool_file_cmd=$lt_cv_to_tool_file_cmd -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5 -printf "%s\n" "$lt_cv_to_tool_file_cmd" >&6; } - - - - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 -printf %s "checking for $LD option to reload object files... " >&6; } -if test ${lt_cv_ld_reload_flag+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_ld_reload_flag='-r' -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 -printf "%s\n" "$lt_cv_ld_reload_flag" >&6; } -reload_flag=$lt_cv_ld_reload_flag -case $reload_flag in -"" | " "*) ;; -*) reload_flag=" $reload_flag" ;; -esac -reload_cmds='$LD$reload_flag -o $output$reload_objs' -case $host_os in - cygwin* | mingw* | pw32* | cegcc*) - if test yes != "$GCC"; then - reload_cmds=false - fi - ;; - darwin*) - if test yes = "$GCC"; then - reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' - else - reload_cmds='$LD$reload_flag -o $output$reload_objs' - fi - ;; -esac - - - - - - - - - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}file", so it can be a program name with args. -set dummy ${ac_tool_prefix}file; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_FILECMD+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$FILECMD"; then - ac_cv_prog_FILECMD="$FILECMD" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_FILECMD="${ac_tool_prefix}file" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -FILECMD=$ac_cv_prog_FILECMD -if test -n "$FILECMD"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $FILECMD" >&5 -printf "%s\n" "$FILECMD" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_FILECMD"; then - ac_ct_FILECMD=$FILECMD - # Extract the first word of "file", so it can be a program name with args. -set dummy file; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_FILECMD+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_FILECMD"; then - ac_cv_prog_ac_ct_FILECMD="$ac_ct_FILECMD" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_FILECMD="file" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_FILECMD=$ac_cv_prog_ac_ct_FILECMD -if test -n "$ac_ct_FILECMD"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_FILECMD" >&5 -printf "%s\n" "$ac_ct_FILECMD" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_FILECMD" = x; then - FILECMD=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - FILECMD=$ac_ct_FILECMD - fi -else - FILECMD="$ac_cv_prog_FILECMD" -fi - - - - - - - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args. -set dummy ${ac_tool_prefix}objdump; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_OBJDUMP+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$OBJDUMP"; then - ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -OBJDUMP=$ac_cv_prog_OBJDUMP -if test -n "$OBJDUMP"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 -printf "%s\n" "$OBJDUMP" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_OBJDUMP"; then - ac_ct_OBJDUMP=$OBJDUMP - # Extract the first word of "objdump", so it can be a program name with args. -set dummy objdump; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_OBJDUMP+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_OBJDUMP"; then - ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_OBJDUMP="objdump" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP -if test -n "$ac_ct_OBJDUMP"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 -printf "%s\n" "$ac_ct_OBJDUMP" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_OBJDUMP" = x; then - OBJDUMP="false" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - OBJDUMP=$ac_ct_OBJDUMP - fi -else - OBJDUMP="$ac_cv_prog_OBJDUMP" -fi - -test -z "$OBJDUMP" && OBJDUMP=objdump - - - - - - - - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5 -printf %s "checking how to recognize dependent libraries... " >&6; } -if test ${lt_cv_deplibs_check_method+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# 'unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [[regex]]' -- check by looking for files in library path -# that responds to the $file_magic_cmd with a given extended regex. -# If you have 'file' or equivalent on your system and you're not sure -# whether 'pass_all' will *always* work, you probably want this one. - -case $host_os in -aix[4-9]*) - lt_cv_deplibs_check_method=pass_all - ;; - -beos*) - lt_cv_deplibs_check_method=pass_all - ;; - -bsdi[45]*) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='$FILECMD -L' - lt_cv_file_magic_test_file=/shlib/libc.so - ;; - -cygwin*) - # func_win32_libid is a shell function defined in ltmain.sh - lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' - lt_cv_file_magic_cmd='func_win32_libid' - ;; - -mingw* | pw32*) - # Base MSYS/MinGW do not provide the 'file' command needed by - # func_win32_libid shell function, so use a weaker test based on 'objdump', - # unless we find 'file', for example because we are cross-compiling. - if ( file / ) >/dev/null 2>&1; then - lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' - lt_cv_file_magic_cmd='func_win32_libid' - else - # Keep this pattern in sync with the one in func_win32_libid. - lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' - lt_cv_file_magic_cmd='$OBJDUMP -f' - fi - ;; - -cegcc*) - # use the weaker test based on 'objdump'. See mingw*. - lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' - lt_cv_file_magic_cmd='$OBJDUMP -f' - ;; - -darwin* | rhapsody*) - lt_cv_deplibs_check_method=pass_all - ;; - -freebsd* | dragonfly* | midnightbsd*) - if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=$FILECMD - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -haiku*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20* | hpux11*) - lt_cv_file_magic_cmd=$FILECMD - case $host_cpu in - ia64*) - lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64' - lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so - ;; - hppa*64*) - lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]' - lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl - ;; - *) - lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library' - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - esac - ;; - -interix[3-9]*) - # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here - lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$' - ;; - -irix5* | irix6* | nonstopux*) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -netbsd* | netbsdelf*-gnu) - if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' - else - lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$' - fi - ;; - -newos6*) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=$FILECMD - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -*nto* | *qnx*) - lt_cv_deplibs_check_method=pass_all - ;; - -openbsd* | bitrig*) - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then - lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$' - else - lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' - fi - ;; - -osf3* | osf4* | osf5*) - lt_cv_deplibs_check_method=pass_all - ;; - -rdos*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv4 | sysv4.3*) - case $host_vendor in - motorola) - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - sequent) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' - ;; - sni) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" - lt_cv_file_magic_test_file=/lib/libc.so - ;; - siemens) - lt_cv_deplibs_check_method=pass_all - ;; - pc) - lt_cv_deplibs_check_method=pass_all - ;; - esac - ;; - -tpf*) - lt_cv_deplibs_check_method=pass_all - ;; -os2*) - lt_cv_deplibs_check_method=pass_all - ;; -esac - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 -printf "%s\n" "$lt_cv_deplibs_check_method" >&6; } - -file_magic_glob= -want_nocaseglob=no -if test "$build" = "$host"; then - case $host_os in - mingw* | pw32*) - if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then - want_nocaseglob=yes - else - file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"` - fi - ;; - esac -fi - -file_magic_cmd=$lt_cv_file_magic_cmd -deplibs_check_method=$lt_cv_deplibs_check_method -test -z "$deplibs_check_method" && deplibs_check_method=unknown - - - - - - - - - - - - - - - - - - - - - - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args. -set dummy ${ac_tool_prefix}dlltool; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_DLLTOOL+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$DLLTOOL"; then - ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -DLLTOOL=$ac_cv_prog_DLLTOOL -if test -n "$DLLTOOL"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 -printf "%s\n" "$DLLTOOL" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_DLLTOOL"; then - ac_ct_DLLTOOL=$DLLTOOL - # Extract the first word of "dlltool", so it can be a program name with args. -set dummy dlltool; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_DLLTOOL+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_DLLTOOL"; then - ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_DLLTOOL="dlltool" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL -if test -n "$ac_ct_DLLTOOL"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 -printf "%s\n" "$ac_ct_DLLTOOL" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_DLLTOOL" = x; then - DLLTOOL="false" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - DLLTOOL=$ac_ct_DLLTOOL - fi -else - DLLTOOL="$ac_cv_prog_DLLTOOL" -fi - -test -z "$DLLTOOL" && DLLTOOL=dlltool - - - - - - - - - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5 -printf %s "checking how to associate runtime and link libraries... " >&6; } -if test ${lt_cv_sharedlib_from_linklib_cmd+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_sharedlib_from_linklib_cmd='unknown' - -case $host_os in -cygwin* | mingw* | pw32* | cegcc*) - # two different shell functions defined in ltmain.sh; - # decide which one to use based on capabilities of $DLLTOOL - case `$DLLTOOL --help 2>&1` in - *--identify-strict*) - lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib - ;; - *) - lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback - ;; - esac - ;; -*) - # fallback: assume linklib IS sharedlib - lt_cv_sharedlib_from_linklib_cmd=$ECHO - ;; -esac - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5 -printf "%s\n" "$lt_cv_sharedlib_from_linklib_cmd" >&6; } -sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd -test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO - - - - - - - -if test -n "$ac_tool_prefix"; then - for ac_prog in ar - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_AR+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$AR"; then - ac_cv_prog_AR="$AR" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_AR="$ac_tool_prefix$ac_prog" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -AR=$ac_cv_prog_AR -if test -n "$AR"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 -printf "%s\n" "$AR" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - test -n "$AR" && break - done -fi -if test -z "$AR"; then - ac_ct_AR=$AR - for ac_prog in ar -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_AR+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_AR"; then - ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_AR="$ac_prog" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_AR=$ac_cv_prog_ac_ct_AR -if test -n "$ac_ct_AR"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 -printf "%s\n" "$ac_ct_AR" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - test -n "$ac_ct_AR" && break -done - - if test "x$ac_ct_AR" = x; then - AR="false" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - AR=$ac_ct_AR - fi -fi - -: ${AR=ar} - - - - - - -# Use ARFLAGS variable as AR's operation code to sync the variable naming with -# Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have -# higher priority because thats what people were doing historically (setting -# ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS -# variable obsoleted/removed. - -test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr} -lt_ar_flags=$AR_FLAGS - - - - - - -# Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override -# by AR_FLAGS because that was never working and AR_FLAGS is about to die. - - - - - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5 -printf %s "checking for archiver @FILE support... " >&6; } -if test ${lt_cv_ar_at_file+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_ar_at_file=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - echo conftest.$ac_objext > conftest.lst - lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 - (eval $lt_ar_try) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } - if test 0 -eq "$ac_status"; then - # Ensure the archiver fails upon bogus file names. - rm -f conftest.$ac_objext libconftest.a - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 - (eval $lt_ar_try) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } - if test 0 -ne "$ac_status"; then - lt_cv_ar_at_file=@ - fi - fi - rm -f conftest.* libconftest.a - -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 -printf "%s\n" "$lt_cv_ar_at_file" >&6; } - -if test no = "$lt_cv_ar_at_file"; then - archiver_list_spec= -else - archiver_list_spec=$lt_cv_ar_at_file -fi - - - - - - - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_STRIP+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$STRIP"; then - ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_STRIP="${ac_tool_prefix}strip" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -STRIP=$ac_cv_prog_STRIP -if test -n "$STRIP"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 -printf "%s\n" "$STRIP" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_STRIP"; then - ac_ct_STRIP=$STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_STRIP+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_STRIP"; then - ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_STRIP="strip" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP -if test -n "$ac_ct_STRIP"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 -printf "%s\n" "$ac_ct_STRIP" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_STRIP" = x; then - STRIP=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - STRIP=$ac_ct_STRIP - fi -else - STRIP="$ac_cv_prog_STRIP" -fi - -test -z "$STRIP" && STRIP=: - - - - - - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_RANLIB+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 -printf "%s\n" "$RANLIB" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_RANLIB"; then - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_RANLIB+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_RANLIB"; then - ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_RANLIB="ranlib" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -if test -n "$ac_ct_RANLIB"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 -printf "%s\n" "$ac_ct_RANLIB" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_RANLIB" = x; then - RANLIB=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - RANLIB=$ac_ct_RANLIB - fi -else - RANLIB="$ac_cv_prog_RANLIB" -fi - -test -z "$RANLIB" && RANLIB=: - - - - - - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - case $host_os in - bitrig* | openbsd*) - old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" - ;; - *) - old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" - ;; - esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" -fi - -case $host_os in - darwin*) - lock_old_archive_extraction=yes ;; - *) - lock_old_archive_extraction=no ;; -esac - - - - - - - - - - - - - - - - - - - - - -for ac_prog in gawk mawk nawk awk -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_AWK+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$AWK"; then - ac_cv_prog_AWK="$AWK" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_AWK="$ac_prog" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -AWK=$ac_cv_prog_AWK -if test -n "$AWK"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 -printf "%s\n" "$AWK" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - test -n "$AWK" && break -done - - - - - - - - - - - - - - - - - - - -# If no C compiler was specified, use CC. -LTCC=${LTCC-"$CC"} - -# If no C compiler flags were specified, use CFLAGS. -LTCFLAGS=${LTCFLAGS-"$CFLAGS"} - -# Allow CC to be a program name with arguments. -compiler=$CC - - -# Check for command to grab the raw symbol name followed by C symbol from nm. -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 -printf %s "checking command to parse $NM output from $compiler object... " >&6; } -if test ${lt_cv_sys_global_symbol_pipe+y} -then : - printf %s "(cached) " >&6 -else $as_nop - -# These are sane defaults that work on at least a few old systems. -# [They come from Ultrix. What could be older than Ultrix?!! ;)] - -# Character class describing NM global symbol codes. -symcode='[BCDEGRST]' - -# Regexp to match symbols that can be accessed directly from C. -sympat='\([_A-Za-z][_A-Za-z0-9]*\)' - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[BCDT]' - ;; -cygwin* | mingw* | pw32* | cegcc*) - symcode='[ABCDGISTW]' - ;; -hpux*) - if test ia64 = "$host_cpu"; then - symcode='[ABCDEGRST]' - fi - ;; -irix* | nonstopux*) - symcode='[BCDEGRST]' - ;; -osf*) - symcode='[BCDEGQRST]' - ;; -solaris*) - symcode='[BDRT]' - ;; -sco3.2v5*) - symcode='[DT]' - ;; -sysv4.2uw2*) - symcode='[DT]' - ;; -sysv5* | sco5v6* | unixware* | OpenUNIX*) - symcode='[ABDT]' - ;; -sysv4) - symcode='[DFNSTU]' - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -case `$NM -V 2>&1` in -*GNU* | *'with BFD'*) - symcode='[ABCDGIRSTW]' ;; -esac - -if test "$lt_cv_nm_interface" = "MS dumpbin"; then - # Gets list of data symbols to import. - lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'" - # Adjust the below global symbol transforms to fixup imported variables. - lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" - lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" - lt_c_name_lib_hook="\ - -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ - -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" -else - # Disable hooks by default. - lt_cv_sys_global_symbol_to_import= - lt_cdecl_hook= - lt_c_name_hook= - lt_c_name_lib_hook= -fi - -# Transform an extracted symbol line into a proper C declaration. -# Some systems (esp. on ia64) link data and code symbols differently, -# so use this general approach. -lt_cv_sys_global_symbol_to_cdecl="$SED -n"\ -$lt_cdecl_hook\ -" -e 's/^T .* \(.*\)$/extern int \1();/p'"\ -" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\ -$lt_c_name_hook\ -" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ -" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" - -# Transform an extracted symbol line into symbol name with lib prefix and -# symbol address. -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\ -$lt_c_name_lib_hook\ -" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ -" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ -" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" - -# Handle CRLF in mingw tool chain -opt_cr= -case $build_os in -mingw*) - opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp - ;; -esac - -# Try without a prefix underscore, then with it. -for ac_symprfx in "" "_"; do - - # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. - symxfrm="\\1 $ac_symprfx\\2 \\2" - - # Write the raw and C identifiers. - if test "$lt_cv_nm_interface" = "MS dumpbin"; then - # Fake it for dumpbin and say T for any non-static function, - # D for any global variable and I for any imported variable. - # Also find C++ and __fastcall symbols from MSVC++ or ICC, - # which start with @ or ?. - lt_cv_sys_global_symbol_pipe="$AWK '"\ -" {last_section=section; section=\$ 3};"\ -" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ -" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ -" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ -" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ -" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ -" \$ 0!~/External *\|/{next};"\ -" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ -" {if(hide[section]) next};"\ -" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ -" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ -" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ -" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ -" ' prfx=^$ac_symprfx" - else - lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" - fi - lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'" - - # Check to see that the pipe works correctly. - pipe_works=no - - rm -f conftest* - cat > conftest.$ac_ext <<_LT_EOF -#ifdef __cplusplus -extern "C" { -#endif -char nm_test_var; -void nm_test_func(void); -void nm_test_func(void){} -#ifdef __cplusplus -} -#endif -int main(){nm_test_var='a';nm_test_func();return(0);} -_LT_EOF - - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - # Now try to grab the symbols. - nlist=conftest.nm - $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&5 - if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&5 && test -s "$nlist"; then - # Try sorting and uniquifying the output. - if sort "$nlist" | uniq > "$nlist"T; then - mv -f "$nlist"T "$nlist" - else - rm -f "$nlist"T - fi - - # Make sure that we snagged all the symbols we need. - if $GREP ' nm_test_var$' "$nlist" >/dev/null; then - if $GREP ' nm_test_func$' "$nlist" >/dev/null; then - cat <<_LT_EOF > conftest.$ac_ext -/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ -#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE -/* DATA imports from DLLs on WIN32 can't be const, because runtime - relocations are performed -- see ld's documentation on pseudo-relocs. */ -# define LT_DLSYM_CONST -#elif defined __osf__ -/* This system does not cope well with relocations in const data. */ -# define LT_DLSYM_CONST -#else -# define LT_DLSYM_CONST const -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -_LT_EOF - # Now generate the symbol file. - eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' - - cat <<_LT_EOF >> conftest.$ac_ext - -/* The mapping between symbol names and symbols. */ -LT_DLSYM_CONST struct { - const char *name; - void *address; -} -lt__PROGRAM__LTX_preloaded_symbols[] = -{ - { "@PROGRAM@", (void *) 0 }, -_LT_EOF - $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext - cat <<\_LT_EOF >> conftest.$ac_ext - {0, (void *) 0} -}; - -/* This works around a problem in FreeBSD linker */ -#ifdef FREEBSD_WORKAROUND -static const void *lt_preloaded_setup() { - return lt__PROGRAM__LTX_preloaded_symbols; -} -#endif - -#ifdef __cplusplus -} -#endif -_LT_EOF - # Now try linking the two files. - mv conftest.$ac_objext conftstm.$ac_objext - lt_globsym_save_LIBS=$LIBS - lt_globsym_save_CFLAGS=$CFLAGS - LIBS=conftstm.$ac_objext - CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest$ac_exeext; then - pipe_works=yes - fi - LIBS=$lt_globsym_save_LIBS - CFLAGS=$lt_globsym_save_CFLAGS - else - echo "cannot find nm_test_func in $nlist" >&5 - fi - else - echo "cannot find nm_test_var in $nlist" >&5 - fi - else - echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 - fi - else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - fi - rm -rf conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test yes = "$pipe_works"; then - break - else - lt_cv_sys_global_symbol_pipe= - fi -done - -fi - -if test -z "$lt_cv_sys_global_symbol_pipe"; then - lt_cv_sys_global_symbol_to_cdecl= -fi -if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: failed" >&5 -printf "%s\n" "failed" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ok" >&5 -printf "%s\n" "ok" >&6; } -fi - -# Response file support. -if test "$lt_cv_nm_interface" = "MS dumpbin"; then - nm_file_list_spec='@' -elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then - nm_file_list_spec='@' -fi - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 -printf %s "checking for sysroot... " >&6; } - -# Check whether --with-sysroot was given. -if test ${with_sysroot+y} -then : - withval=$with_sysroot; -else $as_nop - with_sysroot=no -fi - - -lt_sysroot= -case $with_sysroot in #( - yes) - if test yes = "$GCC"; then - lt_sysroot=`$CC --print-sysroot 2>/dev/null` - fi - ;; #( - /*) - lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"` - ;; #( - no|'') - ;; #( - *) - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5 -printf "%s\n" "$with_sysroot" >&6; } - as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5 - ;; -esac - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5 -printf "%s\n" "${lt_sysroot:-no}" >&6; } - - - - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5 -printf %s "checking for a working dd... " >&6; } -if test ${ac_cv_path_lt_DD+y} -then : - printf %s "(cached) " >&6 -else $as_nop - printf 0123456789abcdef0123456789abcdef >conftest.i -cat conftest.i conftest.i >conftest2.i -: ${lt_DD:=$DD} -if test -z "$lt_DD"; then - ac_path_lt_DD_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_prog in dd - do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_lt_DD="$as_dir$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_lt_DD" || continue -if "$ac_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then - cmp -s conftest.i conftest.out \ - && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: -fi - $ac_path_lt_DD_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_lt_DD"; then - : - fi -else - ac_cv_path_lt_DD=$lt_DD -fi - -rm -f conftest.i conftest2.i conftest.out -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5 -printf "%s\n" "$ac_cv_path_lt_DD" >&6; } - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5 -printf %s "checking how to truncate binary pipes... " >&6; } -if test ${lt_cv_truncate_bin+y} -then : - printf %s "(cached) " >&6 -else $as_nop - printf 0123456789abcdef0123456789abcdef >conftest.i -cat conftest.i conftest.i >conftest2.i -lt_cv_truncate_bin= -if "$ac_cv_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then - cmp -s conftest.i conftest.out \ - && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" -fi -rm -f conftest.i conftest2.i conftest.out -test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q" -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5 -printf "%s\n" "$lt_cv_truncate_bin" >&6; } - - - - - - - -# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. -func_cc_basename () -{ - for cc_temp in $*""; do - case $cc_temp in - compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; - distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; - \-*) ;; - *) break;; - esac - done - func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` -} - -# Check whether --enable-libtool-lock was given. -if test ${enable_libtool_lock+y} -then : - enableval=$enable_libtool_lock; -fi - -test no = "$enable_libtool_lock" || enable_libtool_lock=yes - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -ia64-*-hpux*) - # Find out what ABI is being produced by ac_compile, and set mode - # options accordingly. - echo 'int i;' > conftest.$ac_ext - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - case `$FILECMD conftest.$ac_objext` in - *ELF-32*) - HPUX_IA64_MODE=32 - ;; - *ELF-64*) - HPUX_IA64_MODE=64 - ;; - esac - fi - rm -rf conftest* - ;; -*-*-irix6*) - # Find out what ABI is being produced by ac_compile, and set linker - # options accordingly. - echo '#line '$LINENO' "configure"' > conftest.$ac_ext - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - if test yes = "$lt_cv_prog_gnu_ld"; then - case `$FILECMD conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -melf32bsmip" - ;; - *N32*) - LD="${LD-ld} -melf32bmipn32" - ;; - *64-bit*) - LD="${LD-ld} -melf64bmip" - ;; - esac - else - case `$FILECMD conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - fi - rm -rf conftest* - ;; - -mips64*-*linux*) - # Find out what ABI is being produced by ac_compile, and set linker - # options accordingly. - echo '#line '$LINENO' "configure"' > conftest.$ac_ext - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - emul=elf - case `$FILECMD conftest.$ac_objext` in - *32-bit*) - emul="${emul}32" - ;; - *64-bit*) - emul="${emul}64" - ;; - esac - case `$FILECMD conftest.$ac_objext` in - *MSB*) - emul="${emul}btsmip" - ;; - *LSB*) - emul="${emul}ltsmip" - ;; - esac - case `$FILECMD conftest.$ac_objext` in - *N32*) - emul="${emul}n32" - ;; - esac - LD="${LD-ld} -m $emul" - fi - rm -rf conftest* - ;; - -x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ -s390*-*linux*|s390*-*tpf*|sparc*-*linux*) - # Find out what ABI is being produced by ac_compile, and set linker - # options accordingly. Note that the listed cases only cover the - # situations where additional linker options are needed (such as when - # doing 32-bit compilation for a host where ld defaults to 64-bit, or - # vice versa); the common cases where no linker options are needed do - # not appear in the list. - echo 'int i;' > conftest.$ac_ext - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - case `$FILECMD conftest.o` in - *32-bit*) - case $host in - x86_64-*kfreebsd*-gnu) - LD="${LD-ld} -m elf_i386_fbsd" - ;; - x86_64-*linux*) - case `$FILECMD conftest.o` in - *x86-64*) - LD="${LD-ld} -m elf32_x86_64" - ;; - *) - LD="${LD-ld} -m elf_i386" - ;; - esac - ;; - powerpc64le-*linux*) - LD="${LD-ld} -m elf32lppclinux" - ;; - powerpc64-*linux*) - LD="${LD-ld} -m elf32ppclinux" - ;; - s390x-*linux*) - LD="${LD-ld} -m elf_s390" - ;; - sparc64-*linux*) - LD="${LD-ld} -m elf32_sparc" - ;; - esac - ;; - *64-bit*) - case $host in - x86_64-*kfreebsd*-gnu) - LD="${LD-ld} -m elf_x86_64_fbsd" - ;; - x86_64-*linux*) - LD="${LD-ld} -m elf_x86_64" - ;; - powerpcle-*linux*) - LD="${LD-ld} -m elf64lppc" - ;; - powerpc-*linux*) - LD="${LD-ld} -m elf64ppc" - ;; - s390*-*linux*|s390*-*tpf*) - LD="${LD-ld} -m elf64_s390" - ;; - sparc*-*linux*) - LD="${LD-ld} -m elf64_sparc" - ;; - esac - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS=$CFLAGS - CFLAGS="$CFLAGS -belf" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 -printf %s "checking whether the C compiler needs -belf... " >&6; } -if test ${lt_cv_cc_needs_belf+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - lt_cv_cc_needs_belf=yes -else $as_nop - lt_cv_cc_needs_belf=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 -printf "%s\n" "$lt_cv_cc_needs_belf" >&6; } - if test yes != "$lt_cv_cc_needs_belf"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS=$SAVE_CFLAGS - fi - ;; -*-*solaris*) - # Find out what ABI is being produced by ac_compile, and set linker - # options accordingly. - echo 'int i;' > conftest.$ac_ext - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - case `$FILECMD conftest.o` in - *64-bit*) - case $lt_cv_prog_gnu_ld in - yes*) - case $host in - i?86-*-solaris*|x86_64-*-solaris*) - LD="${LD-ld} -m elf_x86_64" - ;; - sparc*-*-solaris*) - LD="${LD-ld} -m elf64_sparc" - ;; - esac - # GNU ld 2.21 introduced _sol2 emulations. Use them if available. - if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then - LD=${LD-ld}_sol2 - fi - ;; - *) - if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then - LD="${LD-ld} -64" - fi - ;; - esac - ;; - esac - fi - rm -rf conftest* - ;; -esac - -need_locks=$enable_libtool_lock - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args. -set dummy ${ac_tool_prefix}mt; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_MANIFEST_TOOL+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$MANIFEST_TOOL"; then - ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL -if test -n "$MANIFEST_TOOL"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5 -printf "%s\n" "$MANIFEST_TOOL" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_MANIFEST_TOOL"; then - ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL - # Extract the first word of "mt", so it can be a program name with args. -set dummy mt; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_MANIFEST_TOOL+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_MANIFEST_TOOL"; then - ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_MANIFEST_TOOL="mt" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL -if test -n "$ac_ct_MANIFEST_TOOL"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5 -printf "%s\n" "$ac_ct_MANIFEST_TOOL" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_MANIFEST_TOOL" = x; then - MANIFEST_TOOL=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL - fi -else - MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL" -fi - -test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5 -printf %s "checking if $MANIFEST_TOOL is a manifest tool... " >&6; } -if test ${lt_cv_path_mainfest_tool+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_path_mainfest_tool=no - echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5 - $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out - cat conftest.err >&5 - if $GREP 'Manifest Tool' conftest.out > /dev/null; then - lt_cv_path_mainfest_tool=yes - fi - rm -f conftest* -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5 -printf "%s\n" "$lt_cv_path_mainfest_tool" >&6; } -if test yes != "$lt_cv_path_mainfest_tool"; then - MANIFEST_TOOL=: -fi - - - - - - - case $host_os in - rhapsody* | darwin*) - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args. -set dummy ${ac_tool_prefix}dsymutil; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_DSYMUTIL+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$DSYMUTIL"; then - ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -DSYMUTIL=$ac_cv_prog_DSYMUTIL -if test -n "$DSYMUTIL"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5 -printf "%s\n" "$DSYMUTIL" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_DSYMUTIL"; then - ac_ct_DSYMUTIL=$DSYMUTIL - # Extract the first word of "dsymutil", so it can be a program name with args. -set dummy dsymutil; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_DSYMUTIL+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_DSYMUTIL"; then - ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_DSYMUTIL="dsymutil" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL -if test -n "$ac_ct_DSYMUTIL"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5 -printf "%s\n" "$ac_ct_DSYMUTIL" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_DSYMUTIL" = x; then - DSYMUTIL=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - DSYMUTIL=$ac_ct_DSYMUTIL - fi -else - DSYMUTIL="$ac_cv_prog_DSYMUTIL" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args. -set dummy ${ac_tool_prefix}nmedit; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_NMEDIT+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$NMEDIT"; then - ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -NMEDIT=$ac_cv_prog_NMEDIT -if test -n "$NMEDIT"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5 -printf "%s\n" "$NMEDIT" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_NMEDIT"; then - ac_ct_NMEDIT=$NMEDIT - # Extract the first word of "nmedit", so it can be a program name with args. -set dummy nmedit; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_NMEDIT+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_NMEDIT"; then - ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_NMEDIT="nmedit" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT -if test -n "$ac_ct_NMEDIT"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5 -printf "%s\n" "$ac_ct_NMEDIT" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_NMEDIT" = x; then - NMEDIT=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - NMEDIT=$ac_ct_NMEDIT - fi -else - NMEDIT="$ac_cv_prog_NMEDIT" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args. -set dummy ${ac_tool_prefix}lipo; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_LIPO+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$LIPO"; then - ac_cv_prog_LIPO="$LIPO" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_LIPO="${ac_tool_prefix}lipo" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -LIPO=$ac_cv_prog_LIPO -if test -n "$LIPO"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5 -printf "%s\n" "$LIPO" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_LIPO"; then - ac_ct_LIPO=$LIPO - # Extract the first word of "lipo", so it can be a program name with args. -set dummy lipo; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_LIPO+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_LIPO"; then - ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_LIPO="lipo" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO -if test -n "$ac_ct_LIPO"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5 -printf "%s\n" "$ac_ct_LIPO" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_LIPO" = x; then - LIPO=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - LIPO=$ac_ct_LIPO - fi -else - LIPO="$ac_cv_prog_LIPO" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args. -set dummy ${ac_tool_prefix}otool; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_OTOOL+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$OTOOL"; then - ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_OTOOL="${ac_tool_prefix}otool" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -OTOOL=$ac_cv_prog_OTOOL -if test -n "$OTOOL"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5 -printf "%s\n" "$OTOOL" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_OTOOL"; then - ac_ct_OTOOL=$OTOOL - # Extract the first word of "otool", so it can be a program name with args. -set dummy otool; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_OTOOL+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_OTOOL"; then - ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_OTOOL="otool" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL -if test -n "$ac_ct_OTOOL"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5 -printf "%s\n" "$ac_ct_OTOOL" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_OTOOL" = x; then - OTOOL=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - OTOOL=$ac_ct_OTOOL - fi -else - OTOOL="$ac_cv_prog_OTOOL" -fi - - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args. -set dummy ${ac_tool_prefix}otool64; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_OTOOL64+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$OTOOL64"; then - ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -OTOOL64=$ac_cv_prog_OTOOL64 -if test -n "$OTOOL64"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5 -printf "%s\n" "$OTOOL64" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_OTOOL64"; then - ac_ct_OTOOL64=$OTOOL64 - # Extract the first word of "otool64", so it can be a program name with args. -set dummy otool64; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_OTOOL64+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_OTOOL64"; then - ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_OTOOL64="otool64" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64 -if test -n "$ac_ct_OTOOL64"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5 -printf "%s\n" "$ac_ct_OTOOL64" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_OTOOL64" = x; then - OTOOL64=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - OTOOL64=$ac_ct_OTOOL64 - fi -else - OTOOL64="$ac_cv_prog_OTOOL64" -fi - - - - - - - - - - - - - - - - - - - - - - - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5 -printf %s "checking for -single_module linker flag... " >&6; } -if test ${lt_cv_apple_cc_single_mod+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_apple_cc_single_mod=no - if test -z "$LT_MULTI_MODULE"; then - # By default we will add the -single_module flag. You can override - # by either setting the environment variable LT_MULTI_MODULE - # non-empty at configure time, or by adding -multi_module to the - # link flags. - rm -rf libconftest.dylib* - echo "int foo(void){return 1;}" > conftest.c - echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ --dynamiclib -Wl,-single_module conftest.c" >&5 - $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ - -dynamiclib -Wl,-single_module conftest.c 2>conftest.err - _lt_result=$? - # If there is a non-empty error log, and "single_module" - # appears in it, assume the flag caused a linker warning - if test -s conftest.err && $GREP single_module conftest.err; then - cat conftest.err >&5 - # Otherwise, if the output was created with a 0 exit code from - # the compiler, it worked. - elif test -f libconftest.dylib && test 0 = "$_lt_result"; then - lt_cv_apple_cc_single_mod=yes - else - cat conftest.err >&5 - fi - rm -rf libconftest.dylib* - rm -f conftest.* - fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5 -printf "%s\n" "$lt_cv_apple_cc_single_mod" >&6; } - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5 -printf %s "checking for -exported_symbols_list linker flag... " >&6; } -if test ${lt_cv_ld_exported_symbols_list+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_ld_exported_symbols_list=no - save_LDFLAGS=$LDFLAGS - echo "_main" > conftest.sym - LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - lt_cv_ld_exported_symbols_list=yes -else $as_nop - lt_cv_ld_exported_symbols_list=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - LDFLAGS=$save_LDFLAGS - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 -printf "%s\n" "$lt_cv_ld_exported_symbols_list" >&6; } - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5 -printf %s "checking for -force_load linker flag... " >&6; } -if test ${lt_cv_ld_force_load+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_ld_force_load=no - cat > conftest.c << _LT_EOF -int forced_loaded() { return 2;} -_LT_EOF - echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5 - $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5 - echo "$AR $AR_FLAGS libconftest.a conftest.o" >&5 - $AR $AR_FLAGS libconftest.a conftest.o 2>&5 - echo "$RANLIB libconftest.a" >&5 - $RANLIB libconftest.a 2>&5 - cat > conftest.c << _LT_EOF -int main() { return 0;} -_LT_EOF - echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5 - $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err - _lt_result=$? - if test -s conftest.err && $GREP force_load conftest.err; then - cat conftest.err >&5 - elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then - lt_cv_ld_force_load=yes - else - cat conftest.err >&5 - fi - rm -f conftest.err libconftest.a conftest conftest.c - rm -rf conftest.dSYM - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5 -printf "%s\n" "$lt_cv_ld_force_load" >&6; } - case $host_os in - rhapsody* | darwin1.[012]) - _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; - darwin1.*) - _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; - darwin*) - case $MACOSX_DEPLOYMENT_TARGET,$host in - 10.[012],*|,*powerpc*-darwin[5-8]*) - _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; - *) - _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; - esac - ;; - esac - if test yes = "$lt_cv_apple_cc_single_mod"; then - _lt_dar_single_mod='$single_module' - fi - if test yes = "$lt_cv_ld_exported_symbols_list"; then - _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' - else - _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' - fi - if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then - _lt_dsymutil='~$DSYMUTIL $lib || :' - else - _lt_dsymutil= - fi - ;; - esac - -# func_munge_path_list VARIABLE PATH -# ----------------------------------- -# VARIABLE is name of variable containing _space_ separated list of -# directories to be munged by the contents of PATH, which is string -# having a format: -# "DIR[:DIR]:" -# string "DIR[ DIR]" will be prepended to VARIABLE -# ":DIR[:DIR]" -# string "DIR[ DIR]" will be appended to VARIABLE -# "DIRP[:DIRP]::[DIRA:]DIRA" -# string "DIRP[ DIRP]" will be prepended to VARIABLE and string -# "DIRA[ DIRA]" will be appended to VARIABLE -# "DIR[:DIR]" -# VARIABLE will be replaced by "DIR[ DIR]" -func_munge_path_list () -{ - case x$2 in - x) - ;; - *:) - eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" - ;; - x:*) - eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" - ;; - *::*) - eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" - eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" - ;; - *) - eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" - ;; - esac -} - -ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default -" -if test "x$ac_cv_header_dlfcn_h" = xyes -then : - printf "%s\n" "#define HAVE_DLFCN_H 1" >>confdefs.h - -fi - - - - - -# Set options -# Check whether --enable-static was given. -if test ${enable_static+y} -then : - enableval=$enable_static; p=${PACKAGE-default} - case $enableval in - yes) enable_static=yes ;; - no) enable_static=no ;; - *) - enable_static=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for pkg in $enableval; do - IFS=$lt_save_ifs - if test "X$pkg" = "X$p"; then - enable_static=yes - fi - done - IFS=$lt_save_ifs - ;; - esac -else $as_nop - enable_static=no -fi - - - - - - - - enable_dlopen=no - - - enable_win32_dll=no - - - # Check whether --enable-shared was given. -if test ${enable_shared+y} -then : - enableval=$enable_shared; p=${PACKAGE-default} - case $enableval in - yes) enable_shared=yes ;; - no) enable_shared=no ;; - *) - enable_shared=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for pkg in $enableval; do - IFS=$lt_save_ifs - if test "X$pkg" = "X$p"; then - enable_shared=yes - fi - done - IFS=$lt_save_ifs - ;; - esac -else $as_nop - enable_shared=yes -fi - - - - - - - - - - - -# Check whether --with-pic was given. -if test ${with_pic+y} -then : - withval=$with_pic; lt_p=${PACKAGE-default} - case $withval in - yes|no) pic_mode=$withval ;; - *) - pic_mode=default - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for lt_pkg in $withval; do - IFS=$lt_save_ifs - if test "X$lt_pkg" = "X$lt_p"; then - pic_mode=yes - fi - done - IFS=$lt_save_ifs - ;; - esac -else $as_nop - pic_mode=default -fi - - - - - - - - - # Check whether --enable-fast-install was given. -if test ${enable_fast_install+y} -then : - enableval=$enable_fast_install; p=${PACKAGE-default} - case $enableval in - yes) enable_fast_install=yes ;; - no) enable_fast_install=no ;; - *) - enable_fast_install=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for pkg in $enableval; do - IFS=$lt_save_ifs - if test "X$pkg" = "X$p"; then - enable_fast_install=yes - fi - done - IFS=$lt_save_ifs - ;; - esac -else $as_nop - enable_fast_install=yes -fi - - - - - - - - - shared_archive_member_spec= -case $host,$enable_shared in -power*-*-aix[5-9]*,yes) - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5 -printf %s "checking which variant of shared library versioning to provide... " >&6; } - -# Check whether --with-aix-soname was given. -if test ${with_aix_soname+y} -then : - withval=$with_aix_soname; case $withval in - aix|svr4|both) - ;; - *) - as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5 - ;; - esac - lt_cv_with_aix_soname=$with_aix_soname -else $as_nop - if test ${lt_cv_with_aix_soname+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_with_aix_soname=aix -fi - - with_aix_soname=$lt_cv_with_aix_soname -fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5 -printf "%s\n" "$with_aix_soname" >&6; } - if test aix != "$with_aix_soname"; then - # For the AIX way of multilib, we name the shared archive member - # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', - # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. - # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, - # the AIX toolchain works better with OBJECT_MODE set (default 32). - if test 64 = "${OBJECT_MODE-32}"; then - shared_archive_member_spec=shr_64 - else - shared_archive_member_spec=shr - fi - fi - ;; -*) - with_aix_soname=aix - ;; -esac - - - - - - - - - - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS=$ltmain - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -test -z "$LN_S" && LN_S="ln -s" - - - - - - - - - - - - - - -if test -n "${ZSH_VERSION+set}"; then - setopt NO_GLOB_SUBST -fi - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 -printf %s "checking for objdir... " >&6; } -if test ${lt_cv_objdir+y} -then : - printf %s "(cached) " >&6 -else $as_nop - rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - lt_cv_objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - lt_cv_objdir=_libs -fi -rmdir .libs 2>/dev/null -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 -printf "%s\n" "$lt_cv_objdir" >&6; } -objdir=$lt_cv_objdir - - - - - -printf "%s\n" "#define LT_OBJDIR \"$lt_cv_objdir/\"" >>confdefs.h - - - - -case $host_os in -aix3*) - # AIX sometimes has problems with the GCC collect2 program. For some - # reason, if we set the COLLECT_NAMES environment variable, the problems - # vanish in a puff of smoke. - if test set != "${COLLECT_NAMES+set}"; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Global variables: -ofile=libtool -can_build_shared=yes - -# All known linkers require a '.a' archive for static linking (except MSVC and -# ICC, which need '.lib'). -libext=a - -with_gnu_ld=$lt_cv_prog_gnu_ld - -old_CC=$CC -old_CFLAGS=$CFLAGS - -# Set sane defaults for various variables -test -z "$CC" && CC=cc -test -z "$LTCC" && LTCC=$CC -test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS -test -z "$LD" && LD=ld -test -z "$ac_objext" && ac_objext=o - -func_cc_basename $compiler -cc_basename=$func_cc_basename_result - - -# Only perform the check for file, if the check method requires it -test -z "$MAGIC_CMD" && MAGIC_CMD=file -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 -printf %s "checking for ${ac_tool_prefix}file... " >&6; } -if test ${lt_cv_path_MAGIC_CMD+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $MAGIC_CMD in -[\\/*] | ?:[\\/]*) - lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. - ;; -*) - lt_save_MAGIC_CMD=$MAGIC_CMD - lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR - ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" - for ac_dir in $ac_dummy; do - IFS=$lt_save_ifs - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/${ac_tool_prefix}file"; then - lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` - MAGIC_CMD=$lt_cv_path_MAGIC_CMD - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - $EGREP "$file_magic_regex" > /dev/null; then - : - else - cat <<_LT_EOF 1>&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -_LT_EOF - fi ;; - esac - fi - break - fi - done - IFS=$lt_save_ifs - MAGIC_CMD=$lt_save_MAGIC_CMD - ;; -esac -fi - -MAGIC_CMD=$lt_cv_path_MAGIC_CMD -if test -n "$MAGIC_CMD"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 -printf "%s\n" "$MAGIC_CMD" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - - - -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for file" >&5 -printf %s "checking for file... " >&6; } -if test ${lt_cv_path_MAGIC_CMD+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $MAGIC_CMD in -[\\/*] | ?:[\\/]*) - lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. - ;; -*) - lt_save_MAGIC_CMD=$MAGIC_CMD - lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR - ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" - for ac_dir in $ac_dummy; do - IFS=$lt_save_ifs - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/file"; then - lt_cv_path_MAGIC_CMD=$ac_dir/"file" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` - MAGIC_CMD=$lt_cv_path_MAGIC_CMD - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - $EGREP "$file_magic_regex" > /dev/null; then - : - else - cat <<_LT_EOF 1>&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -_LT_EOF - fi ;; - esac - fi - break - fi - done - IFS=$lt_save_ifs - MAGIC_CMD=$lt_save_MAGIC_CMD - ;; -esac -fi - -MAGIC_CMD=$lt_cv_path_MAGIC_CMD -if test -n "$MAGIC_CMD"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 -printf "%s\n" "$MAGIC_CMD" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - else - MAGIC_CMD=: - fi -fi - - fi - ;; -esac - -# Use C for the default configuration in the libtool script - -lt_save_CC=$CC -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -# Source file extension for C test sources. -ac_ext=c - -# Object file extension for compiled C test sources. -objext=o -objext=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;" - -# Code to be used in simple link tests -lt_simple_link_test_code='int main(){return(0);}' - - - - - - - -# If no C compiler was specified, use CC. -LTCC=${LTCC-"$CC"} - -# If no C compiler flags were specified, use CFLAGS. -LTCFLAGS=${LTCFLAGS-"$CFLAGS"} - -# Allow CC to be a program name with arguments. -compiler=$CC - -# Save the default compiler, since it gets overwritten when the other -# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. -compiler_DEFAULT=$CC - -# save warnings/boilerplate of simple test code -ac_outfile=conftest.$ac_objext -echo "$lt_simple_compile_test_code" >conftest.$ac_ext -eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err -_lt_compiler_boilerplate=`cat conftest.err` -$RM conftest* - -ac_outfile=conftest.$ac_objext -echo "$lt_simple_link_test_code" >conftest.$ac_ext -eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err -_lt_linker_boilerplate=`cat conftest.err` -$RM -r conftest* - - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -if test -n "$compiler"; then - -lt_prog_compiler_no_builtin_flag= - -if test yes = "$GCC"; then - case $cc_basename in - nvcc*) - lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;; - *) - lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;; - esac - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 -printf %s "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } -if test ${lt_cv_prog_compiler_rtti_exceptions+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_prog_compiler_rtti_exceptions=no - ac_outfile=conftest.$ac_objext - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="-fno-rtti -fno-exceptions" ## exclude from sc_useless_quotes_in_assignment - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - # The option is referenced via a variable to avoid confusing sed. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. - $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then - lt_cv_prog_compiler_rtti_exceptions=yes - fi - fi - $RM conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 -printf "%s\n" "$lt_cv_prog_compiler_rtti_exceptions" >&6; } - -if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then - lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" -else - : -fi - -fi - - - - - - - lt_prog_compiler_wl= -lt_prog_compiler_pic= -lt_prog_compiler_static= - - - if test yes = "$GCC"; then - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_static='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test ia64 = "$host_cpu"; then - # AIX 5 now supports IA64 processor - lt_prog_compiler_static='-Bstatic' - fi - lt_prog_compiler_pic='-fPIC' - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - lt_prog_compiler_pic='-fPIC' - ;; - m68k) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the '-m68020' flag to GCC prevents building anything better, - # like '-m68040'. - lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4' - ;; - esac - ;; - - beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - - mingw* | cygwin* | pw32* | os2* | cegcc*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - # Although the cygwin gcc ignores -fPIC, still need this for old-style - # (--disable-auto-import) libraries - lt_prog_compiler_pic='-DDLL_EXPORT' - case $host_os in - os2*) - lt_prog_compiler_static='$wl-static' - ;; - esac - ;; - - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - lt_prog_compiler_pic='-fno-common' - ;; - - haiku*) - # PIC is the default for Haiku. - # The "-static" flag exists, but is broken. - lt_prog_compiler_static= - ;; - - hpux*) - # PIC is the default for 64-bit PA HP-UX, but not for 32-bit - # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag - # sets the default TLS model and affects inlining. - case $host_cpu in - hppa*64*) - # +Z the default - ;; - *) - lt_prog_compiler_pic='-fPIC' - ;; - esac - ;; - - interix[3-9]*) - # Interix 3.x gcc -fpic/-fPIC options generate broken code. - # Instead, we relocate shared libraries at runtime. - ;; - - msdosdjgpp*) - # Just because we use GCC doesn't mean we suddenly get shared libraries - # on systems that don't support them. - lt_prog_compiler_can_build_shared=no - enable_shared=no - ;; - - *nto* | *qnx*) - # QNX uses GNU C++, but need to define -shared option too, otherwise - # it will coredump. - lt_prog_compiler_pic='-fPIC -shared' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - lt_prog_compiler_pic=-Kconform_pic - fi - ;; - - *) - lt_prog_compiler_pic='-fPIC' - ;; - esac - - case $cc_basename in - nvcc*) # Cuda Compiler Driver 2.2 - lt_prog_compiler_wl='-Xlinker ' - if test -n "$lt_prog_compiler_pic"; then - lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic" - fi - ;; - esac - else - # PORTME Check for flag to pass linker flags through the system compiler. - case $host_os in - aix*) - lt_prog_compiler_wl='-Wl,' - if test ia64 = "$host_cpu"; then - # AIX 5 now supports IA64 processor - lt_prog_compiler_static='-Bstatic' - else - lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp' - fi - ;; - - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - lt_prog_compiler_pic='-fno-common' - case $cc_basename in - nagfor*) - # NAG Fortran compiler - lt_prog_compiler_wl='-Wl,-Wl,,' - lt_prog_compiler_pic='-PIC' - lt_prog_compiler_static='-Bstatic' - ;; - esac - ;; - - mingw* | cygwin* | pw32* | os2* | cegcc*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - lt_prog_compiler_pic='-DDLL_EXPORT' - case $host_os in - os2*) - lt_prog_compiler_static='$wl-static' - ;; - esac - ;; - - hpux9* | hpux10* | hpux11*) - lt_prog_compiler_wl='-Wl,' - # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but - # not for PA HP-UX. - case $host_cpu in - hppa*64*|ia64*) - # +Z the default - ;; - *) - lt_prog_compiler_pic='+Z' - ;; - esac - # Is there a better lt_prog_compiler_static that works with the bundled CC? - lt_prog_compiler_static='$wl-a ${wl}archive' - ;; - - irix5* | irix6* | nonstopux*) - lt_prog_compiler_wl='-Wl,' - # PIC (with -KPIC) is the default. - lt_prog_compiler_static='-non_shared' - ;; - - linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - case $cc_basename in - # old Intel for x86_64, which still supported -KPIC. - ecc*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-static' - ;; - # flang / f18. f95 an alias for gfortran or flang on Debian - flang* | f18* | f95*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-fPIC' - lt_prog_compiler_static='-static' - ;; - # icc used to be incompatible with GCC. - # ICC 10 doesn't accept -KPIC any more. - icc* | ifort*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-fPIC' - lt_prog_compiler_static='-static' - ;; - # Lahey Fortran 8.1. - lf95*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='--shared' - lt_prog_compiler_static='--static' - ;; - nagfor*) - # NAG Fortran compiler - lt_prog_compiler_wl='-Wl,-Wl,,' - lt_prog_compiler_pic='-PIC' - lt_prog_compiler_static='-Bstatic' - ;; - tcc*) - # Fabrice Bellard et al's Tiny C Compiler - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-fPIC' - lt_prog_compiler_static='-static' - ;; - pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) - # Portland Group compilers (*not* the Pentium gcc compiler, - # which looks to be a dead project) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-fpic' - lt_prog_compiler_static='-Bstatic' - ;; - ccc*) - lt_prog_compiler_wl='-Wl,' - # All Alpha code is PIC. - lt_prog_compiler_static='-non_shared' - ;; - xl* | bgxl* | bgf* | mpixl*) - # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-qpic' - lt_prog_compiler_static='-qstaticlink' - ;; - *) - case `$CC -V 2>&1 | $SED 5q` in - *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*) - # Sun Fortran 8.3 passes all unrecognized flags to the linker - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - lt_prog_compiler_wl='' - ;; - *Sun\ F* | *Sun*Fortran*) - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - lt_prog_compiler_wl='-Qoption ld ' - ;; - *Sun\ C*) - # Sun C 5.9 - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - lt_prog_compiler_wl='-Wl,' - ;; - *Intel*\ [CF]*Compiler*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-fPIC' - lt_prog_compiler_static='-static' - ;; - *Portland\ Group*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-fpic' - lt_prog_compiler_static='-Bstatic' - ;; - esac - ;; - esac - ;; - - newsos6) - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - ;; - - *nto* | *qnx*) - # QNX uses GNU C++, but need to define -shared option too, otherwise - # it will coredump. - lt_prog_compiler_pic='-fPIC -shared' - ;; - - osf3* | osf4* | osf5*) - lt_prog_compiler_wl='-Wl,' - # All OSF/1 code is PIC. - lt_prog_compiler_static='-non_shared' - ;; - - rdos*) - lt_prog_compiler_static='-non_shared' - ;; - - solaris*) - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - case $cc_basename in - f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) - lt_prog_compiler_wl='-Qoption ld ';; - *) - lt_prog_compiler_wl='-Wl,';; - esac - ;; - - sunos4*) - lt_prog_compiler_wl='-Qoption ld ' - lt_prog_compiler_pic='-PIC' - lt_prog_compiler_static='-Bstatic' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - lt_prog_compiler_pic='-Kconform_pic' - lt_prog_compiler_static='-Bstatic' - fi - ;; - - sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_pic='-KPIC' - lt_prog_compiler_static='-Bstatic' - ;; - - unicos*) - lt_prog_compiler_wl='-Wl,' - lt_prog_compiler_can_build_shared=no - ;; - - uts4*) - lt_prog_compiler_pic='-pic' - lt_prog_compiler_static='-Bstatic' - ;; - - *) - lt_prog_compiler_can_build_shared=no - ;; - esac - fi - -case $host_os in - # For platforms that do not support PIC, -DPIC is meaningless: - *djgpp*) - lt_prog_compiler_pic= - ;; - *) - lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC" - ;; -esac - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 -printf %s "checking for $compiler option to produce PIC... " >&6; } -if test ${lt_cv_prog_compiler_pic+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_prog_compiler_pic=$lt_prog_compiler_pic -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5 -printf "%s\n" "$lt_cv_prog_compiler_pic" >&6; } -lt_prog_compiler_pic=$lt_cv_prog_compiler_pic - -# -# Check to make sure the PIC flag actually works. -# -if test -n "$lt_prog_compiler_pic"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 -printf %s "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } -if test ${lt_cv_prog_compiler_pic_works+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_prog_compiler_pic_works=no - ac_outfile=conftest.$ac_objext - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="$lt_prog_compiler_pic -DPIC" ## exclude from sc_useless_quotes_in_assignment - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - # The option is referenced via a variable to avoid confusing sed. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. - $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then - lt_cv_prog_compiler_pic_works=yes - fi - fi - $RM conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 -printf "%s\n" "$lt_cv_prog_compiler_pic_works" >&6; } - -if test yes = "$lt_cv_prog_compiler_pic_works"; then - case $lt_prog_compiler_pic in - "" | " "*) ;; - *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;; - esac -else - lt_prog_compiler_pic= - lt_prog_compiler_can_build_shared=no -fi - -fi - - - - - - - - - - - -# -# Check to make sure the static flag actually works. -# -wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\" -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 -printf %s "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } -if test ${lt_cv_prog_compiler_static_works+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_prog_compiler_static_works=no - save_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS $lt_tmp_static_flag" - echo "$lt_simple_link_test_code" > conftest.$ac_ext - if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then - # The linker can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - # Append any errors to the config.log. - cat conftest.err 1>&5 - $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if diff conftest.exp conftest.er2 >/dev/null; then - lt_cv_prog_compiler_static_works=yes - fi - else - lt_cv_prog_compiler_static_works=yes - fi - fi - $RM -r conftest* - LDFLAGS=$save_LDFLAGS - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 -printf "%s\n" "$lt_cv_prog_compiler_static_works" >&6; } - -if test yes = "$lt_cv_prog_compiler_static_works"; then - : -else - lt_prog_compiler_static= -fi - - - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 -printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; } -if test ${lt_cv_prog_compiler_c_o+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_prog_compiler_c_o=no - $RM -r conftest 2>/dev/null - mkdir conftest - cd conftest - mkdir out - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - - lt_compiler_flag="-o out/conftest2.$ac_objext" - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) - (eval "$lt_compile" 2>out/conftest.err) - ac_status=$? - cat out/conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s out/conftest2.$ac_objext - then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp - $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 - if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then - lt_cv_prog_compiler_c_o=yes - fi - fi - chmod u+w . 2>&5 - $RM conftest* - # SGI C++ compiler will create directory out/ii_files/ for - # template instantiation - test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files - $RM out/* && rmdir out - cd .. - $RM -r conftest - $RM conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 -printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; } - - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 -printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; } -if test ${lt_cv_prog_compiler_c_o+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_prog_compiler_c_o=no - $RM -r conftest 2>/dev/null - mkdir conftest - cd conftest - mkdir out - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - - lt_compiler_flag="-o out/conftest2.$ac_objext" - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) - (eval "$lt_compile" 2>out/conftest.err) - ac_status=$? - cat out/conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s out/conftest2.$ac_objext - then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp - $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 - if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then - lt_cv_prog_compiler_c_o=yes - fi - fi - chmod u+w . 2>&5 - $RM conftest* - # SGI C++ compiler will create directory out/ii_files/ for - # template instantiation - test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files - $RM out/* && rmdir out - cd .. - $RM -r conftest - $RM conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 -printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; } - - - - -hard_links=nottested -if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then - # do not overwrite the value of need_locks provided by the user - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 -printf %s "checking if we can lock with hard links... " >&6; } - hard_links=yes - $RM conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 -printf "%s\n" "$hard_links" >&6; } - if test no = "$hard_links"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5 -printf "%s\n" "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;} - need_locks=warn - fi -else - need_locks=no -fi - - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 -printf %s "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } - - runpath_var= - allow_undefined_flag= - always_export_symbols=no - archive_cmds= - archive_expsym_cmds= - compiler_needs_object=no - enable_shared_with_static_runtimes=no - export_dynamic_flag_spec= - export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - hardcode_automatic=no - hardcode_direct=no - hardcode_direct_absolute=no - hardcode_libdir_flag_spec= - hardcode_libdir_separator= - hardcode_minus_L=no - hardcode_shlibpath_var=unsupported - inherit_rpath=no - link_all_deplibs=unknown - module_cmds= - module_expsym_cmds= - old_archive_from_new_cmds= - old_archive_from_expsyms_cmds= - thread_safe_flag_spec= - whole_archive_flag_spec= - # include_expsyms should be a list of space-separated symbols to be *always* - # included in the symbol list - include_expsyms= - # exclude_expsyms can be an extended regexp of symbols to exclude - # it will be wrapped by ' (' and ')$', so one must not match beginning or - # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', - # as well as any symbol that contains 'd'. - exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' - # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out - # platforms (ab)use it in PIC code, but their linkers get confused if - # the symbol is explicitly referenced. Since portable code cannot - # rely on this symbol name, it's probably fine to never include it in - # preloaded symbol tables. - # Exclude shared library initialization/finalization symbols. - extract_expsyms_cmds= - - case $host_os in - cygwin* | mingw* | pw32* | cegcc*) - # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++ or Intel C++ Compiler. - if test yes != "$GCC"; then - with_gnu_ld=no - fi - ;; - interix*) - # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC) - with_gnu_ld=yes - ;; - openbsd* | bitrig*) - with_gnu_ld=no - ;; - linux* | k*bsd*-gnu | gnu*) - link_all_deplibs=no - ;; - esac - - ld_shlibs=yes - - # On some targets, GNU ld is compatible enough with the native linker - # that we're better off using the native interface for both. - lt_use_gnu_ld_interface=no - if test yes = "$with_gnu_ld"; then - case $host_os in - aix*) - # The AIX port of GNU ld has always aspired to compatibility - # with the native linker. However, as the warning in the GNU ld - # block says, versions before 2.19.5* couldn't really create working - # shared libraries, regardless of the interface used. - case `$LD -v 2>&1` in - *\ \(GNU\ Binutils\)\ 2.19.5*) ;; - *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;; - *\ \(GNU\ Binutils\)\ [3-9]*) ;; - *) - lt_use_gnu_ld_interface=yes - ;; - esac - ;; - *) - lt_use_gnu_ld_interface=yes - ;; - esac - fi - - if test yes = "$lt_use_gnu_ld_interface"; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='$wl' - - # Set some defaults for GNU ld with shared library support. These - # are reset later if shared libraries are not supported. Putting them - # here allows them to be overridden if necessary. - runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - export_dynamic_flag_spec='$wl--export-dynamic' - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' - else - whole_archive_flag_spec= - fi - supports_anon_versioning=no - case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in - *GNU\ gold*) supports_anon_versioning=yes ;; - *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 - *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... - *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... - *\ 2.11.*) ;; # other 2.11 versions - *) supports_anon_versioning=yes ;; - esac - - # See if GNU ld supports shared libraries. - case $host_os in - aix[3-9]*) - # On AIX/PPC, the GNU linker is very broken - if test ia64 != "$host_cpu"; then - ld_shlibs=no - cat <<_LT_EOF 1>&2 - -*** Warning: the GNU linker, at least up to release 2.19, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to install binutils -*** 2.20 or above, or modify your PATH so that a non-GNU linker is found. -*** You will then need to restart the configuration process. - -_LT_EOF - fi - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - archive_expsym_cmds='' - ;; - m68k) - archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - ;; - esac - ;; - - beos*) - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - allow_undefined_flag=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - else - ld_shlibs=no - fi - ;; - - cygwin* | mingw* | pw32* | cegcc*) - # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, - # as there is no search path for DLLs. - hardcode_libdir_flag_spec='-L$libdir' - export_dynamic_flag_spec='$wl--export-all-symbols' - allow_undefined_flag=unsupported - always_export_symbols=no - enable_shared_with_static_runtimes=yes - export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols' - exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' - - if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file, use it as - # is; otherwise, prepend EXPORTS... - archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - else - ld_shlibs=no - fi - ;; - - haiku*) - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - link_all_deplibs=yes - ;; - - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - allow_undefined_flag=unsupported - shrext_cmds=.dll - archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - prefix_cmds="$SED"~ - if test EXPORTS = "`$SED 1q $export_symbols`"; then - prefix_cmds="$prefix_cmds -e 1d"; - fi~ - prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ - cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' - enable_shared_with_static_runtimes=yes - file_list_spec='@' - ;; - - interix[3-9]*) - hardcode_direct=no - hardcode_shlibpath_var=no - hardcode_libdir_flag_spec='$wl-rpath,$libdir' - export_dynamic_flag_spec='$wl-E' - # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. - # Instead, shared libraries are loaded at an image base (0x10000000 by - # default) and relocated if they conflict, which is a slow very memory - # consuming and fragmenting process. To avoid this, we pick a random, - # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link - # time. Moving up from 0x10000000 also allows more sbrk(2) space. - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - archive_expsym_cmds='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - ;; - - gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) - tmp_diet=no - if test linux-dietlibc = "$host_os"; then - case $cc_basename in - diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) - esac - fi - if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ - && test no = "$tmp_diet" - then - tmp_addflag=' $pic_flag' - tmp_sharedflag='-shared' - case $cc_basename,$host_cpu in - pgcc*) # Portland Group C compiler - whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - tmp_addflag=' $pic_flag' - ;; - pgf77* | pgf90* | pgf95* | pgfortran*) - # Portland Group f77 and f90 compilers - whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - tmp_addflag=' $pic_flag -Mnomain' ;; - ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 - tmp_addflag=' -i_dynamic' ;; - efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 - tmp_addflag=' -i_dynamic -nofor_main' ;; - ifc* | ifort*) # Intel Fortran compiler - tmp_addflag=' -nofor_main' ;; - lf95*) # Lahey Fortran 8.1 - whole_archive_flag_spec= - tmp_sharedflag='--shared' ;; - nagfor*) # NAGFOR 5.3 - tmp_sharedflag='-Wl,-shared' ;; - xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) - tmp_sharedflag='-qmkshrobj' - tmp_addflag= ;; - nvcc*) # Cuda Compiler Driver 2.2 - whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - compiler_needs_object=yes - ;; - esac - case `$CC -V 2>&1 | $SED 5q` in - *Sun\ C*) # Sun C 5.9 - whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - compiler_needs_object=yes - tmp_sharedflag='-G' ;; - *Sun\ F*) # Sun Fortran 8.3 - tmp_sharedflag='-G' ;; - esac - archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - - if test yes = "$supports_anon_versioning"; then - archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' - fi - - case $cc_basename in - tcc*) - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - export_dynamic_flag_spec='-rdynamic' - ;; - xlf* | bgf* | bgxlf* | mpixlf*) - # IBM XL Fortran 10.1 on PPC cannot create shared libs itself - whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive' - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' - if test yes = "$supports_anon_versioning"; then - archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' - fi - ;; - esac - else - ld_shlibs=no - fi - ;; - - netbsd* | netbsdelf*-gnu) - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris*) - if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then - ld_shlibs=no - cat <<_LT_EOF 1>&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -_LT_EOF - elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - - sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) - case `$LD -v 2>&1` in - *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*) - ld_shlibs=no - cat <<_LT_EOF 1>&2 - -*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot -*** reliably create shared libraries on SCO systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.16.91.0.3 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -_LT_EOF - ;; - *) - # For security reasons, it is highly recommended that you always - # use absolute paths for naming shared libraries, and exclude the - # DT_RUNPATH tag from executables and libraries. But doing so - # requires that you compile everything twice, which is a pain. - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - esac - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - *) - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - esac - - if test no = "$ld_shlibs"; then - runpath_var= - hardcode_libdir_flag_spec= - export_dynamic_flag_spec= - whole_archive_flag_spec= - fi - else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - allow_undefined_flag=unsupported - always_export_symbols=yes - archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - hardcode_minus_L=yes - if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - hardcode_direct=unsupported - fi - ;; - - aix[4-9]*) - if test ia64 = "$host_cpu"; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag= - else - # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to GNU nm, but means don't demangle to AIX nm. - # Without the "-l" option, or with the "-B" option, AIX nm treats - # weak defined symbols like other global defined symbols, whereas - # GNU nm marks them as "W". - # While the 'weak' keyword is ignored in the Export File, we need - # it in the Import File for the 'aix-soname' feature, so we have - # to replace the "-B" option with "-P" for AIX nm. - if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then - export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' - else - export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' - fi - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # have runtime linking enabled, and use it for executables. - # For shared libraries, we enable/disable runtime linking - # depending on the kind of the shared library created - - # when "with_aix_soname,aix_use_runtimelinking" is: - # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables - # "aix,yes" lib.so shared, rtl:yes, for executables - # lib.a static archive - # "both,no" lib.so.V(shr.o) shared, rtl:yes - # lib.a(lib.so.V) shared, rtl:no, for executables - # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables - # lib.a(lib.so.V) shared, rtl:no - # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables - # lib.a static archive - case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) - for ld_flag in $LDFLAGS; do - if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then - aix_use_runtimelinking=yes - break - fi - done - if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then - # With aix-soname=svr4, we create the lib.so.V shared archives only, - # so we don't have lib.a shared libs to link our executables. - # We have to force runtime linking in this case. - aix_use_runtimelinking=yes - LDFLAGS="$LDFLAGS -Wl,-brtl" - fi - ;; - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - archive_cmds='' - hardcode_direct=yes - hardcode_direct_absolute=yes - hardcode_libdir_separator=':' - link_all_deplibs=yes - file_list_spec='$wl-f,' - case $with_aix_soname,$aix_use_runtimelinking in - aix,*) ;; # traditional, no import file - svr4,* | *,yes) # use import file - # The Import File defines what to hardcode. - hardcode_direct=no - hardcode_direct_absolute=no - ;; - esac - - if test yes = "$GCC"; then - case $host_os in aix4.[012]|aix4.[012].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`$CC -print-prog-name=collect2` - if test -f "$collect2name" && - strings "$collect2name" | $GREP resolve_lib_name >/dev/null - then - # We have reworked collect2 - : - else - # We have old collect2 - hardcode_direct=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - ;; - esac - shared_flag='-shared' - if test yes = "$aix_use_runtimelinking"; then - shared_flag="$shared_flag "'$wl-G' - fi - # Need to ensure runtime linking is disabled for the traditional - # shared library, or the linker may eventually find shared libraries - # /with/ Import File - we do not want to mix them. - shared_flag_aix='-shared' - shared_flag_svr4='-shared $wl-G' - else - # not using gcc - if test ia64 = "$host_cpu"; then - # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release - # chokes on -Wl,-G. The following line is correct: - shared_flag='-G' - else - if test yes = "$aix_use_runtimelinking"; then - shared_flag='$wl-G' - else - shared_flag='$wl-bM:SRE' - fi - shared_flag_aix='$wl-bM:SRE' - shared_flag_svr4='$wl-G' - fi - fi - - export_dynamic_flag_spec='$wl-bexpall' - # It seems that -bexpall does not export symbols beginning with - # underscore (_), so it is better to generate a list of symbols to export. - always_export_symbols=yes - if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - allow_undefined_flag='-berok' - # Determine the default libpath from the value encoded in an - # empty executable. - if test set = "${lt_cv_aix_libpath+set}"; then - aix_libpath=$lt_cv_aix_libpath -else - if test ${lt_cv_aix_libpath_+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - - lt_aix_libpath_sed=' - /Import File Strings/,/^$/ { - /^0/ { - s/^0 *\([^ ]*\) *$/\1/ - p - } - }' - lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` - # Check for a 64-bit object if we didn't find anything. - if test -z "$lt_cv_aix_libpath_"; then - lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` - fi -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - if test -z "$lt_cv_aix_libpath_"; then - lt_cv_aix_libpath_=/usr/lib:/lib - fi - -fi - - aix_libpath=$lt_cv_aix_libpath_ -fi - - hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" - archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag - else - if test ia64 = "$host_cpu"; then - hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib' - allow_undefined_flag="-z nodefs" - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" - else - # Determine the default libpath from the value encoded in an - # empty executable. - if test set = "${lt_cv_aix_libpath+set}"; then - aix_libpath=$lt_cv_aix_libpath -else - if test ${lt_cv_aix_libpath_+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - - lt_aix_libpath_sed=' - /Import File Strings/,/^$/ { - /^0/ { - s/^0 *\([^ ]*\) *$/\1/ - p - } - }' - lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` - # Check for a 64-bit object if we didn't find anything. - if test -z "$lt_cv_aix_libpath_"; then - lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` - fi -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - if test -z "$lt_cv_aix_libpath_"; then - lt_cv_aix_libpath_=/usr/lib:/lib - fi - -fi - - aix_libpath=$lt_cv_aix_libpath_ -fi - - hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - no_undefined_flag=' $wl-bernotok' - allow_undefined_flag=' $wl-berok' - if test yes = "$with_gnu_ld"; then - # We only use this code for GNU lds that support --whole-archive. - whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive' - else - # Exported symbols can be pulled into shared objects from archives - whole_archive_flag_spec='$convenience' - fi - archive_cmds_need_lc=yes - archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' - # -brtl affects multiple linker settings, -berok does not and is overridden later - compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`' - if test svr4 != "$with_aix_soname"; then - # This is similar to how AIX traditionally builds its shared libraries. - archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' - fi - if test aix != "$with_aix_soname"; then - archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' - else - # used by -dlpreopen to get the symbols - archive_expsym_cmds="$archive_expsym_cmds"'~$MV $output_objdir/$realname.d/$soname $output_objdir' - fi - archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d' - fi - fi - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - archive_expsym_cmds='' - ;; - m68k) - archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - ;; - esac - ;; - - bsdi[45]*) - export_dynamic_flag_spec=-rdynamic - ;; - - cygwin* | mingw* | pw32* | cegcc*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++ or Intel C++ Compiler. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - case $cc_basename in - cl* | icl*) - # Native MSVC or ICC - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - always_export_symbols=yes - file_list_spec='@' - # Tell ltmain to make .lib files, not .a files. - libext=lib - # Tell ltmain to make .dll files, not .so files. - shrext_cmds=.dll - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' - archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then - cp "$export_symbols" "$output_objdir/$soname.def"; - echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; - else - $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; - fi~ - $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ - linknames=' - # The linker will not automatically build a static lib if we build a DLL. - # _LT_TAGVAR(old_archive_from_new_cmds, )='true' - enable_shared_with_static_runtimes=yes - exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' - export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols' - # Don't use ranlib - old_postinstall_cmds='chmod 644 $oldlib' - postlink_cmds='lt_outputfile="@OUTPUT@"~ - lt_tool_outputfile="@TOOL_OUTPUT@"~ - case $lt_outputfile in - *.exe|*.EXE) ;; - *) - lt_outputfile=$lt_outputfile.exe - lt_tool_outputfile=$lt_tool_outputfile.exe - ;; - esac~ - if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then - $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; - $RM "$lt_outputfile.manifest"; - fi' - ;; - *) - # Assume MSVC and ICC wrapper - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # Tell ltmain to make .dll files, not .so files. - shrext_cmds=.dll - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - old_archive_from_new_cmds='true' - # FIXME: Should let the user specify the lib program. - old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs' - enable_shared_with_static_runtimes=yes - ;; - esac - ;; - - darwin* | rhapsody*) - - - archive_cmds_need_lc=no - hardcode_direct=no - hardcode_automatic=yes - hardcode_shlibpath_var=unsupported - if test yes = "$lt_cv_ld_force_load"; then - whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' - - else - whole_archive_flag_spec='' - fi - link_all_deplibs=yes - allow_undefined_flag=$_lt_dar_allow_undefined - case $cc_basename in - ifort*|nagfor*) _lt_dar_can_shared=yes ;; - *) _lt_dar_can_shared=$GCC ;; - esac - if test yes = "$_lt_dar_can_shared"; then - output_verbose_link_cmd=func_echo_all - archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" - module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" - archive_expsym_cmds="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" - module_expsym_cmds="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" - - else - ld_shlibs=no - fi - - ;; - - dgux*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor - # support. Future versions do this automatically, but an explicit c++rt0.o - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2.*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | dragonfly* | midnightbsd*) - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - hpux9*) - if test yes = "$GCC"; then - archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' - else - archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' - fi - hardcode_libdir_flag_spec='$wl+b $wl$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - hardcode_minus_L=yes - export_dynamic_flag_spec='$wl-E' - ;; - - hpux10*) - if test yes,no = "$GCC,$with_gnu_ld"; then - archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' - fi - if test no = "$with_gnu_ld"; then - hardcode_libdir_flag_spec='$wl+b $wl$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - hardcode_direct_absolute=yes - export_dynamic_flag_spec='$wl-E' - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - hardcode_minus_L=yes - fi - ;; - - hpux11*) - if test yes,no = "$GCC,$with_gnu_ld"; then - case $host_cpu in - hppa*64*) - archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - ia64*) - archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - else - case $host_cpu in - hppa*64*) - archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - ia64*) - archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - - # Older versions of the 11.00 compiler do not understand -b yet - # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5 -printf %s "checking if $CC understands -b... " >&6; } -if test ${lt_cv_prog_compiler__b+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_prog_compiler__b=no - save_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -b" - echo "$lt_simple_link_test_code" > conftest.$ac_ext - if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then - # The linker can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - # Append any errors to the config.log. - cat conftest.err 1>&5 - $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if diff conftest.exp conftest.er2 >/dev/null; then - lt_cv_prog_compiler__b=yes - fi - else - lt_cv_prog_compiler__b=yes - fi - fi - $RM -r conftest* - LDFLAGS=$save_LDFLAGS - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 -printf "%s\n" "$lt_cv_prog_compiler__b" >&6; } - -if test yes = "$lt_cv_prog_compiler__b"; then - archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' -else - archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' -fi - - ;; - esac - fi - if test no = "$with_gnu_ld"; then - hardcode_libdir_flag_spec='$wl+b $wl$libdir' - hardcode_libdir_separator=: - - case $host_cpu in - hppa*64*|ia64*) - hardcode_direct=no - hardcode_shlibpath_var=no - ;; - *) - hardcode_direct=yes - hardcode_direct_absolute=yes - export_dynamic_flag_spec='$wl-E' - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - hardcode_minus_L=yes - ;; - esac - fi - ;; - - irix5* | irix6* | nonstopux*) - if test yes = "$GCC"; then - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' - # Try to use the -exported_symbol ld option, if it does not - # work, assume that -exports_file does not work either and - # implicitly export all symbols. - # This should be the same for all languages, so no per-tag cache variable. - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5 -printf %s "checking whether the $host_os linker accepts -exported_symbol... " >&6; } -if test ${lt_cv_irix_exported_symbol+y} -then : - printf %s "(cached) " >&6 -else $as_nop - save_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -int foo (void) { return 0; } -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - lt_cv_irix_exported_symbol=yes -else $as_nop - lt_cv_irix_exported_symbol=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - LDFLAGS=$save_LDFLAGS -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 -printf "%s\n" "$lt_cv_irix_exported_symbol" >&6; } - if test yes = "$lt_cv_irix_exported_symbol"; then - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' - fi - link_all_deplibs=no - else - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' - fi - archive_cmds_need_lc='no' - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - hardcode_libdir_separator=: - inherit_rpath=yes - link_all_deplibs=yes - ;; - - linux*) - case $cc_basename in - tcc*) - # Fabrice Bellard et al's Tiny C Compiler - ld_shlibs=yes - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - ;; - esac - ;; - - netbsd* | netbsdelf*-gnu) - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - newsos6) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - hardcode_libdir_separator=: - hardcode_shlibpath_var=no - ;; - - *nto* | *qnx*) - ;; - - openbsd* | bitrig*) - if test -f /usr/libexec/ld.so; then - hardcode_direct=yes - hardcode_shlibpath_var=no - hardcode_direct_absolute=yes - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' - hardcode_libdir_flag_spec='$wl-rpath,$libdir' - export_dynamic_flag_spec='$wl-E' - else - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='$wl-rpath,$libdir' - fi - else - ld_shlibs=no - fi - ;; - - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - allow_undefined_flag=unsupported - shrext_cmds=.dll - archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - prefix_cmds="$SED"~ - if test EXPORTS = "`$SED 1q $export_symbols`"; then - prefix_cmds="$prefix_cmds -e 1d"; - fi~ - prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ - cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' - enable_shared_with_static_runtimes=yes - file_list_spec='@' - ;; - - osf3*) - if test yes = "$GCC"; then - allow_undefined_flag=' $wl-expect_unresolved $wl\*' - archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' - fi - archive_cmds_need_lc='no' - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - hardcode_libdir_separator=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test yes = "$GCC"; then - allow_undefined_flag=' $wl-expect_unresolved $wl\*' - archive_cmds='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' - hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' - archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ - $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp' - - # Both c and cxx compiler support -rpath directly - hardcode_libdir_flag_spec='-rpath $libdir' - fi - archive_cmds_need_lc='no' - hardcode_libdir_separator=: - ;; - - solaris*) - no_undefined_flag=' -z defs' - if test yes = "$GCC"; then - wlarc='$wl' - archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' - else - case `$CC -V 2>&1` in - *"Compilers 5.0"*) - wlarc='' - archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' - ;; - *) - wlarc='$wl' - archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' - ;; - esac - fi - hardcode_libdir_flag_spec='-R$libdir' - hardcode_shlibpath_var=no - case $host_os in - solaris2.[0-5] | solaris2.[0-5].*) ;; - *) - # The compiler driver will combine and reorder linker options, - # but understands '-z linker_flag'. GCC discards it without '$wl', - # but is careful enough not to reorder. - # Supported since Solaris 2.6 (maybe 2.5.1?) - if test yes = "$GCC"; then - whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' - else - whole_archive_flag_spec='-z allextract$convenience -z defaultextract' - fi - ;; - esac - link_all_deplibs=yes - ;; - - sunos4*) - if test sequent = "$host_vendor"; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - fi - hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - sysv4) - case $host_vendor in - sni) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes # is this really true??? - ;; - siemens) - ## LD is ld it makes a PLAMLIB - ## CC just makes a GrossModule. - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - reload_cmds='$CC -r -o $output$reload_objs' - hardcode_direct=no - ;; - motorola) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=no #Motorola manual says yes, but my tests say they lie - ;; - esac - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - sysv4.3*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - export_dynamic_flag_spec='-Bexport' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ld_shlibs=yes - fi - ;; - - sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) - no_undefined_flag='$wl-z,text' - archive_cmds_need_lc=no - hardcode_shlibpath_var=no - runpath_var='LD_RUN_PATH' - - if test yes = "$GCC"; then - archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - ;; - - sysv5* | sco3.2v5* | sco5v6*) - # Note: We CANNOT use -z defs as we might desire, because we do not - # link with -lc, and that would cause any symbols used from libc to - # always be unresolved, which means just about no library would - # ever link correctly. If we're not using GNU ld we use -z text - # though, which does catch some bad symbols but isn't as heavy-handed - # as -z defs. - no_undefined_flag='$wl-z,text' - allow_undefined_flag='$wl-z,nodefs' - archive_cmds_need_lc=no - hardcode_shlibpath_var=no - hardcode_libdir_flag_spec='$wl-R,$libdir' - hardcode_libdir_separator=':' - link_all_deplibs=yes - export_dynamic_flag_spec='$wl-Bexport' - runpath_var='LD_RUN_PATH' - - if test yes = "$GCC"; then - archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - ;; - - uts4*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - *) - ld_shlibs=no - ;; - esac - - if test sni = "$host_vendor"; then - case $host in - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - export_dynamic_flag_spec='$wl-Blargedynsym' - ;; - esac - fi - fi - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 -printf "%s\n" "$ld_shlibs" >&6; } -test no = "$ld_shlibs" && can_build_shared=no - -with_gnu_ld=$with_gnu_ld - - - - - - - - - - - - - - - -# -# Do we need to explicitly link libc? -# -case "x$archive_cmds_need_lc" in -x|xyes) - # Assume -lc should be added - archive_cmds_need_lc=yes - - if test yes,yes = "$GCC,$enable_shared"; then - case $archive_cmds in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 -printf %s "checking whether -lc should be explicitly linked in... " >&6; } -if test ${lt_cv_archive_cmds_need_lc+y} -then : - printf %s "(cached) " >&6 -else $as_nop - $RM conftest* - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } 2>conftest.err; then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$lt_prog_compiler_wl - pic_flag=$lt_prog_compiler_pic - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - lt_save_allow_undefined_flag=$allow_undefined_flag - allow_undefined_flag= - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 - (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } - then - lt_cv_archive_cmds_need_lc=no - else - lt_cv_archive_cmds_need_lc=yes - fi - allow_undefined_flag=$lt_save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi - $RM conftest* - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5 -printf "%s\n" "$lt_cv_archive_cmds_need_lc" >&6; } - archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc - ;; - esac - fi - ;; -esac - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 -printf %s "checking dynamic linker characteristics... " >&6; } - -if test yes = "$GCC"; then - case $host_os in - darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; - *) lt_awk_arg='/^libraries:/' ;; - esac - case $host_os in - mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;; - *) lt_sed_strip_eq='s|=/|/|g' ;; - esac - lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` - case $lt_search_path_spec in - *\;*) - # if the path contains ";" then we assume it to be the separator - # otherwise default to the standard path separator (i.e. ":") - it is - # assumed that no part of a normal pathname contains ";" but that should - # okay in the real world where ";" in dirpaths is itself problematic. - lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` - ;; - *) - lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` - ;; - esac - # Ok, now we have the path, separated by spaces, we can step through it - # and add multilib dir if necessary... - lt_tmp_lt_search_path_spec= - lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` - # ...but if some path component already ends with the multilib dir we assume - # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). - case "$lt_multi_os_dir; $lt_search_path_spec " in - "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) - lt_multi_os_dir= - ;; - esac - for lt_sys_path in $lt_search_path_spec; do - if test -d "$lt_sys_path$lt_multi_os_dir"; then - lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" - elif test -n "$lt_multi_os_dir"; then - test -d "$lt_sys_path" && \ - lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" - fi - done - lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' -BEGIN {RS = " "; FS = "/|\n";} { - lt_foo = ""; - lt_count = 0; - for (lt_i = NF; lt_i > 0; lt_i--) { - if ($lt_i != "" && $lt_i != ".") { - if ($lt_i == "..") { - lt_count++; - } else { - if (lt_count == 0) { - lt_foo = "/" $lt_i lt_foo; - } else { - lt_count--; - } - } - } - } - if (lt_foo != "") { lt_freq[lt_foo]++; } - if (lt_freq[lt_foo] == 1) { print lt_foo; } -}'` - # AWK program above erroneously prepends '/' to C:/dos/paths - # for these hosts. - case $host_os in - mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ - $SED 's|/\([A-Za-z]:\)|\1|g'` ;; - esac - sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` -else - sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" -fi -library_names_spec= -libname_spec='lib$name' -soname_spec= -shrext_cmds=.so -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -need_lib_prefix=unknown -hardcode_into_libs=no - -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -need_version=unknown - - - -case $host_os in -aix3*) - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$release$shared_ext$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX 3 has no versioning support, so we append a major version to the name. - soname_spec='$libname$release$shared_ext$major' - ;; - -aix[4-9]*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - hardcode_into_libs=yes - if test ia64 = "$host_cpu"; then - # AIX 5 supports IA64 - library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' - shlibpath_var=LD_LIBRARY_PATH - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line '#! .'. This would cause the generated library to - # depend on '.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - case $host_os in - aix4 | aix4.[01] | aix4.[01].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then - : - else - can_build_shared=no - fi - ;; - esac - # Using Import Files as archive members, it is possible to support - # filename-based versioning of shared library archives on AIX. While - # this would work for both with and without runtime linking, it will - # prevent static linking of such archives. So we do filename-based - # shared library versioning with .so extension only, which is used - # when both runtime linking and shared linking is enabled. - # Unfortunately, runtime linking may impact performance, so we do - # not want this to be the default eventually. Also, we use the - # versioned .so libs for executables only if there is the -brtl - # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. - # To allow for filename-based versioning support, we need to create - # libNAME.so.V as an archive file, containing: - # *) an Import File, referring to the versioned filename of the - # archive as well as the shared archive member, telling the - # bitwidth (32 or 64) of that shared object, and providing the - # list of exported symbols of that shared object, eventually - # decorated with the 'weak' keyword - # *) the shared object with the F_LOADONLY flag set, to really avoid - # it being seen by the linker. - # At run time we better use the real file rather than another symlink, - # but for link time we create the symlink libNAME.so -> libNAME.so.V - - case $with_aix_soname,$aix_use_runtimelinking in - # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct - # soname into executable. Probably we can add versioning support to - # collect2, so additional links can be useful in future. - aix,yes) # traditional libtool - dynamic_linker='AIX unversionable lib.so' - # If using run time linking (on AIX 4.2 or later) use lib.so - # instead of lib.a to let people know that these are not - # typical AIX shared libraries. - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - ;; - aix,no) # traditional AIX only - dynamic_linker='AIX lib.a(lib.so.V)' - # We preserve .a as extension for shared libraries through AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='$libname$release.a $libname.a' - soname_spec='$libname$release$shared_ext$major' - ;; - svr4,*) # full svr4 only - dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)" - library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' - # We do not specify a path in Import Files, so LIBPATH fires. - shlibpath_overrides_runpath=yes - ;; - *,yes) # both, prefer svr4 - dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)" - library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' - # unpreferred sharedlib libNAME.a needs extra handling - postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' - postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' - # We do not specify a path in Import Files, so LIBPATH fires. - shlibpath_overrides_runpath=yes - ;; - *,no) # both, prefer aix - dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)" - library_names_spec='$libname$release.a $libname.a' - soname_spec='$libname$release$shared_ext$major' - # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling - postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' - postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' - ;; - esac - shlibpath_var=LIBPATH - fi - ;; - -amigaos*) - case $host_cpu in - powerpc) - # Since July 2007 AmigaOS4 officially supports .so libraries. - # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - ;; - m68k) - library_names_spec='$libname.ixlibrary $libname.a' - # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' - ;; - esac - ;; - -beos*) - library_names_spec='$libname$shared_ext' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - ;; - -bsdi[45]*) - version_type=linux # correct to gnu/linux during the next big refactor - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32* | cegcc*) - version_type=windows - shrext_cmds=.dll - need_version=no - need_lib_prefix=no - - case $GCC,$cc_basename in - yes,*) - # gcc - library_names_spec='$libname.dll.a' - # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \$file`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog $dir/$dlname \$dldir/$dlname~ - chmod a+x \$dldir/$dlname~ - if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then - eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; - fi' - postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $RM \$dlpath' - shlibpath_overrides_runpath=yes - - case $host_os in - cygwin*) - # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' - - sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" - ;; - mingw* | cegcc*) - # MinGW DLLs use traditional 'lib' prefix - soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' - ;; - pw32*) - # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' - ;; - esac - dynamic_linker='Win32 ld.exe' - ;; - - *,cl* | *,icl*) - # Native MSVC or ICC - libname_spec='$name' - soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' - library_names_spec='$libname.dll.lib' - - case $build_os in - mingw*) - sys_lib_search_path_spec= - lt_save_ifs=$IFS - IFS=';' - for lt_path in $LIB - do - IFS=$lt_save_ifs - # Let DOS variable expansion print the short 8.3 style file name. - lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` - sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" - done - IFS=$lt_save_ifs - # Convert to MSYS style. - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` - ;; - cygwin*) - # Convert to unix form, then to dos form, then back to unix form - # but this time dos style (no spaces!) so that the unix form looks - # like /cygdrive/c/PROGRA~1:/cygdr... - sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` - sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` - sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - ;; - *) - sys_lib_search_path_spec=$LIB - if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then - # It is most probably a Windows format PATH. - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` - else - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - fi - # FIXME: find the short name or the path components, as spaces are - # common. (e.g. "Program Files" -> "PROGRA~1") - ;; - esac - - # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \$file`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog $dir/$dlname \$dldir/$dlname' - postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $RM \$dlpath' - shlibpath_overrides_runpath=yes - dynamic_linker='Win32 link.exe' - ;; - - *) - # Assume MSVC and ICC wrapper - library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib' - dynamic_linker='Win32 ld.exe' - ;; - esac - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' - soname_spec='$libname$release$major$shared_ext' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' - - sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib" - sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' - ;; - -dgux*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -freebsd* | dragonfly* | midnightbsd*) - # DragonFly does not have aout. When/if they implement a new - # versioning mechanism, adjust this. - if test -x /usr/bin/objformat; then - objformat=`/usr/bin/objformat` - else - case $host_os in - freebsd[23].*) objformat=aout ;; - *) objformat=elf ;; - esac - fi - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2.*) - shlibpath_overrides_runpath=yes - ;; - freebsd3.[01]* | freebsdelf3.[01]*) - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - freebsd3.[2-9]* | freebsdelf3.[2-9]* | \ - freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1) - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - *) # from 4.6 on, and DragonFly - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - esac - ;; - -haiku*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - dynamic_linker="$host_os runtime_loader" - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LIBRARY_PATH - shlibpath_overrides_runpath=no - sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - version_type=sunos - need_lib_prefix=no - need_version=no - case $host_cpu in - ia64*) - shrext_cmds='.so' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.so" - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - if test 32 = "$HPUX_IA64_MODE"; then - sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" - sys_lib_dlsearch_path_spec=/usr/lib/hpux32 - else - sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" - sys_lib_dlsearch_path_spec=/usr/lib/hpux64 - fi - ;; - hppa*64*) - shrext_cmds='.sl' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.sl" - shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - *) - shrext_cmds='.sl' - dynamic_linker="$host_os dld.sl" - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - ;; - esac - # HP-UX runs *really* slowly unless shared libraries are mode 555, ... - postinstall_cmds='chmod 555 $lib' - # or fails outright, so override atomically: - install_override_mode=555 - ;; - -interix[3-9]*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - nonstopux*) version_type=nonstopux ;; - *) - if test yes = "$lt_cv_prog_gnu_ld"; then - version_type=linux # correct to gnu/linux during the next big refactor - else - version_type=irix - fi ;; - esac - need_lib_prefix=no - need_version=no - soname_spec='$libname$release$shared_ext$major' - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' - case $host_os in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") - libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") - libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") - libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" - sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" - hardcode_into_libs=yes - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux*oldld* | linux*aout* | linux*coff*) - dynamic_linker=no - ;; - -linux*android*) - version_type=none # Android doesn't support versioned libraries. - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext' - soname_spec='$libname$release$shared_ext' - finish_cmds= - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - dynamic_linker='Android linker' - # Don't embed -rpath directories since the linker doesn't support them. - hardcode_libdir_flag_spec='-L$libdir' - ;; - -# This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - - # Some binutils ld are patched to set DT_RUNPATH - if test ${lt_cv_shlibpath_overrides_runpath+y} -then : - printf %s "(cached) " >&6 -else $as_nop - lt_cv_shlibpath_overrides_runpath=no - save_LDFLAGS=$LDFLAGS - save_libdir=$libdir - eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \ - LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\"" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null -then : - lt_cv_shlibpath_overrides_runpath=yes -fi -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - LDFLAGS=$save_LDFLAGS - libdir=$save_libdir - -fi - - shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath - - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # Ideally, we could use ldconfig to report *all* directores which are - # searched for libraries, however this is still not possible. Aside from not - # being certain /sbin/ldconfig is available, command - # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, - # even though it is searched at run-time. Try to do the best guess by - # appending ld.so.conf contents (and includes) to the search path. - if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` - sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" - fi - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -netbsdelf*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='NetBSD ld.elf_so' - ;; - -netbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -*nto* | *qnx*) - version_type=qnx - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='ldqnx.so' - ;; - -openbsd* | bitrig*) - version_type=sunos - sys_lib_dlsearch_path_spec=/usr/lib - need_lib_prefix=no - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then - need_version=no - else - need_version=yes - fi - library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -os2*) - libname_spec='$name' - version_type=windows - shrext_cmds=.dll - need_version=no - need_lib_prefix=no - # OS/2 can only load a DLL with a base name of 8 characters or less. - soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; - v=$($ECHO $release$versuffix | tr -d .-); - n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); - $ECHO $n$v`$shared_ext' - library_names_spec='${libname}_dll.$libext' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=BEGINLIBPATH - sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - postinstall_cmds='base_file=`basename \$file`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog $dir/$dlname \$dldir/$dlname~ - chmod a+x \$dldir/$dlname~ - if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then - eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; - fi' - postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $RM \$dlpath' - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_lib_prefix=no - need_version=no - soname_spec='$libname$release$shared_ext$major' - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - -rdos*) - dynamic_linker=no - ;; - -solaris*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test yes = "$with_gnu_ld"; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.3*) - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - sni) - shlibpath_overrides_runpath=no - need_lib_prefix=no - runpath_var=LD_RUN_PATH - ;; - siemens) - need_lib_prefix=no - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -sysv4*MP*) - if test -d /usr/nec; then - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' - soname_spec='$libname$shared_ext.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - version_type=sco - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - if test yes = "$with_gnu_ld"; then - sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' - else - sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' - case $host_os in - sco3.2v5*) - sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" - ;; - esac - fi - sys_lib_dlsearch_path_spec='/usr/lib' - ;; - -tpf*) - # TPF is a cross-target only. Preferred cross-host = GNU/Linux. - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - -uts4*) - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -*) - dynamic_linker=no - ;; -esac -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 -printf "%s\n" "$dynamic_linker" >&6; } -test no = "$dynamic_linker" && can_build_shared=no - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test yes = "$GCC"; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi - -if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then - sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec -fi - -if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then - sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec -fi - -# remember unaugmented sys_lib_dlsearch_path content for libtool script decls... -configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec - -# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code -func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" - -# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool -configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 -printf %s "checking how to hardcode library paths into programs... " >&6; } -hardcode_action= -if test -n "$hardcode_libdir_flag_spec" || - test -n "$runpath_var" || - test yes = "$hardcode_automatic"; then - - # We can hardcode non-existent directories. - if test no != "$hardcode_direct" && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" && - test no != "$hardcode_minus_L"; then - # Linking always hardcodes the temporary library directory. - hardcode_action=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - hardcode_action=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - hardcode_action=unsupported -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 -printf "%s\n" "$hardcode_action" >&6; } - -if test relink = "$hardcode_action" || - test yes = "$inherit_rpath"; then - # Fast installation is not supported - enable_fast_install=no -elif test yes = "$shlibpath_overrides_runpath" || - test no = "$enable_shared"; then - # Fast installation is not necessary - enable_fast_install=needless -fi - - - - - - - if test yes != "$enable_dlopen"; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else - lt_cv_dlopen=no - lt_cv_dlopen_libs= - - case $host_os in - beos*) - lt_cv_dlopen=load_add_on - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - - mingw* | pw32* | cegcc*) - lt_cv_dlopen=LoadLibrary - lt_cv_dlopen_libs= - ;; - - cygwin*) - lt_cv_dlopen=dlopen - lt_cv_dlopen_libs= - ;; - - darwin*) - # if libdl is installed we need to link against it - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 -printf %s "checking for dlopen in -ldl... " >&6; } -if test ${ac_cv_lib_dl_dlopen+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldl $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char dlopen (); -int -main (void) -{ -return dlopen (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - ac_cv_lib_dl_dlopen=yes -else $as_nop - ac_cv_lib_dl_dlopen=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 -printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; } -if test "x$ac_cv_lib_dl_dlopen" = xyes -then : - lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl -else $as_nop - - lt_cv_dlopen=dyld - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - -fi - - ;; - - tpf*) - # Don't try to run any link tests for TPF. We know it's impossible - # because TPF is a cross-compiler, and we know how we open DSOs. - lt_cv_dlopen=dlopen - lt_cv_dlopen_libs= - lt_cv_dlopen_self=no - ;; - - *) - ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" -if test "x$ac_cv_func_shl_load" = xyes -then : - lt_cv_dlopen=shl_load -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 -printf %s "checking for shl_load in -ldld... " >&6; } -if test ${ac_cv_lib_dld_shl_load+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldld $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char shl_load (); -int -main (void) -{ -return shl_load (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - ac_cv_lib_dld_shl_load=yes -else $as_nop - ac_cv_lib_dld_shl_load=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 -printf "%s\n" "$ac_cv_lib_dld_shl_load" >&6; } -if test "x$ac_cv_lib_dld_shl_load" = xyes -then : - lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld -else $as_nop - ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" -if test "x$ac_cv_func_dlopen" = xyes -then : - lt_cv_dlopen=dlopen -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 -printf %s "checking for dlopen in -ldl... " >&6; } -if test ${ac_cv_lib_dl_dlopen+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldl $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char dlopen (); -int -main (void) -{ -return dlopen (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - ac_cv_lib_dl_dlopen=yes -else $as_nop - ac_cv_lib_dl_dlopen=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 -printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; } -if test "x$ac_cv_lib_dl_dlopen" = xyes -then : - lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 -printf %s "checking for dlopen in -lsvld... " >&6; } -if test ${ac_cv_lib_svld_dlopen+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsvld $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char dlopen (); -int -main (void) -{ -return dlopen (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - ac_cv_lib_svld_dlopen=yes -else $as_nop - ac_cv_lib_svld_dlopen=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 -printf "%s\n" "$ac_cv_lib_svld_dlopen" >&6; } -if test "x$ac_cv_lib_svld_dlopen" = xyes -then : - lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 -printf %s "checking for dld_link in -ldld... " >&6; } -if test ${ac_cv_lib_dld_dld_link+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldld $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char dld_link (); -int -main (void) -{ -return dld_link (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - ac_cv_lib_dld_dld_link=yes -else $as_nop - ac_cv_lib_dld_dld_link=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 -printf "%s\n" "$ac_cv_lib_dld_dld_link" >&6; } -if test "x$ac_cv_lib_dld_dld_link" = xyes -then : - lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld -fi - - -fi - - -fi - - -fi - - -fi - - -fi - - ;; - esac - - if test no = "$lt_cv_dlopen"; then - enable_dlopen=no - else - enable_dlopen=yes - fi - - case $lt_cv_dlopen in - dlopen) - save_CPPFLAGS=$CPPFLAGS - test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - - save_LDFLAGS=$LDFLAGS - wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - - save_LIBS=$LIBS - LIBS="$lt_cv_dlopen_libs $LIBS" - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 -printf %s "checking whether a program can dlopen itself... " >&6; } -if test ${lt_cv_dlopen_self+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test yes = "$cross_compiling"; then : - lt_cv_dlopen_self=cross -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF -#line $LINENO "configure" -#include "confdefs.h" - -#if HAVE_DLFCN_H -#include -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -/* When -fvisibility=hidden is used, assume the code has been annotated - correspondingly for the symbols needed. */ -#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) -int fnord () __attribute__((visibility("default"))); -#endif - -int fnord () { return 42; } -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else - { - if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - else puts (dlerror ()); - } - /* dlclose (self); */ - } - else - puts (dlerror ()); - - return status; -} -_LT_EOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then - (./conftest; exit; ) >&5 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; - x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; - x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;; - esac - else : - # compilation failed - lt_cv_dlopen_self=no - fi -fi -rm -fr conftest* - - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 -printf "%s\n" "$lt_cv_dlopen_self" >&6; } - - if test yes = "$lt_cv_dlopen_self"; then - wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 -printf %s "checking whether a statically linked program can dlopen itself... " >&6; } -if test ${lt_cv_dlopen_self_static+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test yes = "$cross_compiling"; then : - lt_cv_dlopen_self_static=cross -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF -#line $LINENO "configure" -#include "confdefs.h" - -#if HAVE_DLFCN_H -#include -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -/* When -fvisibility=hidden is used, assume the code has been annotated - correspondingly for the symbols needed. */ -#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) -int fnord () __attribute__((visibility("default"))); -#endif - -int fnord () { return 42; } -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else - { - if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - else puts (dlerror ()); - } - /* dlclose (self); */ - } - else - puts (dlerror ()); - - return status; -} -_LT_EOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 - (eval $ac_link) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then - (./conftest; exit; ) >&5 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; - x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; - x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;; - esac - else : - # compilation failed - lt_cv_dlopen_self_static=no - fi -fi -rm -fr conftest* - - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 -printf "%s\n" "$lt_cv_dlopen_self_static" >&6; } - fi - - CPPFLAGS=$save_CPPFLAGS - LDFLAGS=$save_LDFLAGS - LIBS=$save_LIBS - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi - - - - - - - - - - - - - - - - - -striplib= -old_striplib= -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 -printf %s "checking whether stripping libraries is possible... " >&6; } -if test -z "$STRIP"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -else - if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then - old_striplib="$STRIP --strip-debug" - striplib="$STRIP --strip-unneeded" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - else - case $host_os in - darwin*) - # FIXME - insert some real tests, host_os isn't really good enough - striplib="$STRIP -x" - old_striplib="$STRIP -S" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - ;; - freebsd*) - if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then - old_striplib="$STRIP --strip-debug" - striplib="$STRIP --strip-unneeded" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - fi - ;; - *) - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - ;; - esac - fi -fi - - - - - - - - - - - - - # Report what library types will actually be built - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 -printf %s "checking if libtool supports shared libraries... " >&6; } - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 -printf "%s\n" "$can_build_shared" >&6; } - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 -printf %s "checking whether to build shared libraries... " >&6; } - test no = "$can_build_shared" && enable_shared=no - - # On AIX, shared libraries and static libraries use the same namespace, and - # are all built from PIC. - case $host_os in - aix3*) - test yes = "$enable_shared" && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - - aix[4-9]*) - if test ia64 != "$host_cpu"; then - case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in - yes,aix,yes) ;; # shared object as lib.so file only - yes,svr4,*) ;; # shared object as lib.so archive member only - yes,*) enable_static=no ;; # shared object in lib.a archive as well - esac - fi - ;; - esac - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 -printf "%s\n" "$enable_shared" >&6; } - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 -printf %s "checking whether to build static libraries... " >&6; } - # Make sure either enable_shared or enable_static is yes. - test yes = "$enable_shared" || enable_static=yes - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 -printf "%s\n" "$enable_static" >&6; } - - - - -fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -CC=$lt_save_CC - - - - - - - - - - - - - - - - ac_config_commands="$ac_config_commands libtool" - - - - -# Only expand once: - - - - -ac_config_headers="$ac_config_headers config.h" - - -am__api_version='1.16' - - - # Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AmigaOS /C/install, which installs bootblocks on floppy discs -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# OS/2's system install, which has a completely different semantic -# ./install, which can be erroneously created by make from ./install.sh. -# Reject install programs that cannot install multiple files. -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 -printf %s "checking for a BSD-compatible install... " >&6; } -if test -z "$INSTALL"; then -if test ${ac_cv_path_install+y} -then : - printf %s "(cached) " >&6 -else $as_nop - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - # Account for fact that we put trailing slashes in our PATH walk. -case $as_dir in #(( - ./ | /[cC]/* | \ - /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ - /usr/ucb/* ) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext"; then - if test $ac_prog = install && - grep dspmsg "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - elif test $ac_prog = install && - grep pwplus "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # program-specific install script used by HP pwplus--don't use. - : - else - rm -rf conftest.one conftest.two conftest.dir - echo one > conftest.one - echo two > conftest.two - mkdir conftest.dir - if "$as_dir$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir/" && - test -s conftest.one && test -s conftest.two && - test -s conftest.dir/conftest.one && - test -s conftest.dir/conftest.two - then - ac_cv_path_install="$as_dir$ac_prog$ac_exec_ext -c" - break 3 - fi - fi - fi - done - done - ;; -esac - - done -IFS=$as_save_IFS - -rm -rf conftest.one conftest.two conftest.dir - -fi - if test ${ac_cv_path_install+y}; then - INSTALL=$ac_cv_path_install - else - # As a last resort, use the slow shell script. Don't cache a - # value for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the value is a relative name. - INSTALL=$ac_install_sh - fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 -printf "%s\n" "$INSTALL" >&6; } - -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' - -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 -printf %s "checking whether build environment is sane... " >&6; } -# Reject unsafe characters in $srcdir or the absolute working directory -# name. Accept space and tab only in the latter. -am_lf=' -' -case `pwd` in - *[\\\"\#\$\&\'\`$am_lf]*) - as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;; -esac -case $srcdir in - *[\\\"\#\$\&\'\`$am_lf\ \ ]*) - as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;; -esac - -# Do 'set' in a subshell so we don't clobber the current shell's -# arguments. Must try -L first in case configure is actually a -# symlink; some systems play weird games with the mod time of symlinks -# (eg FreeBSD returns the mod time of the symlink's containing -# directory). -if ( - am_has_slept=no - for am_try in 1 2; do - echo "timestamp, slept: $am_has_slept" > conftest.file - set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` - if test "$*" = "X"; then - # -L didn't work. - set X `ls -t "$srcdir/configure" conftest.file` - fi - if test "$*" != "X $srcdir/configure conftest.file" \ - && test "$*" != "X conftest.file $srcdir/configure"; then - - # If neither matched, then we have a broken ls. This can happen - # if, for instance, CONFIG_SHELL is bash and it inherits a - # broken ls alias from the environment. This has actually - # happened. Such a system could not be considered "sane". - as_fn_error $? "ls -t appears to fail. Make sure there is not a broken - alias in your environment" "$LINENO" 5 - fi - if test "$2" = conftest.file || test $am_try -eq 2; then - break - fi - # Just in case. - sleep 1 - am_has_slept=yes - done - test "$2" = conftest.file - ) -then - # Ok. - : -else - as_fn_error $? "newly created file is older than distributed files! -Check your system clock" "$LINENO" 5 -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } -# If we didn't sleep, we still need to ensure time stamps of config.status and -# generated files are strictly newer. -am_sleep_pid= -if grep 'slept: no' conftest.file >/dev/null 2>&1; then - ( sleep 1 ) & - am_sleep_pid=$! -fi - -rm -f conftest.file - -test "$program_prefix" != NONE && - program_transform_name="s&^&$program_prefix&;$program_transform_name" -# Use a double $ so make ignores it. -test "$program_suffix" != NONE && - program_transform_name="s&\$&$program_suffix&;$program_transform_name" -# Double any \ or $. -# By default was `s,x,x', remove it if useless. -ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' -program_transform_name=`printf "%s\n" "$program_transform_name" | sed "$ac_script"` - - - if test x"${MISSING+set}" != xset; then - MISSING="\${SHELL} '$am_aux_dir/missing'" -fi -# Use eval to expand $SHELL -if eval "$MISSING --is-lightweight"; then - am_missing_run="$MISSING " -else - am_missing_run= - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 -printf "%s\n" "$as_me: WARNING: 'missing' script is too old or missing" >&2;} -fi - -if test x"${install_sh+set}" != xset; then - case $am_aux_dir in - *\ * | *\ *) - install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; - *) - install_sh="\${SHELL} $am_aux_dir/install-sh" - esac -fi - -# Installed binaries are usually stripped using 'strip' when the user -# run "make install-strip". However 'strip' might not be the right -# tool to use in cross-compilation environments, therefore Automake -# will honor the 'STRIP' environment variable to overrule this program. -if test "$cross_compiling" != no; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_STRIP+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$STRIP"; then - ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_STRIP="${ac_tool_prefix}strip" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -STRIP=$ac_cv_prog_STRIP -if test -n "$STRIP"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 -printf "%s\n" "$STRIP" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_STRIP"; then - ac_ct_STRIP=$STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_ac_ct_STRIP+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$ac_ct_STRIP"; then - ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_STRIP="strip" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP -if test -n "$ac_ct_STRIP"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 -printf "%s\n" "$ac_ct_STRIP" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_ct_STRIP" = x; then - STRIP=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - STRIP=$ac_ct_STRIP - fi -else - STRIP="$ac_cv_prog_STRIP" -fi - -fi -INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a race-free mkdir -p" >&5 -printf %s "checking for a race-free mkdir -p... " >&6; } -if test -z "$MKDIR_P"; then - if test ${ac_cv_path_mkdir+y} -then : - printf %s "(cached) " >&6 -else $as_nop - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_prog in mkdir gmkdir; do - for ac_exec_ext in '' $ac_executable_extensions; do - as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext" || continue - case `"$as_dir$ac_prog$ac_exec_ext" --version 2>&1` in #( - 'mkdir ('*'coreutils) '* | \ - 'BusyBox '* | \ - 'mkdir (fileutils) '4.1*) - ac_cv_path_mkdir=$as_dir$ac_prog$ac_exec_ext - break 3;; - esac - done - done - done -IFS=$as_save_IFS - -fi - - test -d ./--version && rmdir ./--version - if test ${ac_cv_path_mkdir+y}; then - MKDIR_P="$ac_cv_path_mkdir -p" - else - # As a last resort, use the slow shell script. Don't cache a - # value for MKDIR_P within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the value is a relative name. - MKDIR_P="$ac_install_sh -d" - fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 -printf "%s\n" "$MKDIR_P" >&6; } - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -printf %s "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } -set x ${MAKE-make} -ac_make=`printf "%s\n" "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` -if eval test \${ac_cv_prog_make_${ac_make}_set+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat >conftest.make <<\_ACEOF -SHELL = /bin/sh -all: - @echo '@@@%%%=$(MAKE)=@@@%%%' -_ACEOF -# GNU make sometimes prints "make[1]: Entering ...", which would confuse us. -case `${MAKE-make} -f conftest.make 2>/dev/null` in - *@@@%%%=?*=@@@%%%*) - eval ac_cv_prog_make_${ac_make}_set=yes;; - *) - eval ac_cv_prog_make_${ac_make}_set=no;; -esac -rm -f conftest.make -fi -if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - SET_MAKE= -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - SET_MAKE="MAKE=${MAKE-make}" -fi - -rm -rf .tst 2>/dev/null -mkdir .tst 2>/dev/null -if test -d .tst; then - am__leading_dot=. -else - am__leading_dot=_ -fi -rmdir .tst 2>/dev/null - -DEPDIR="${am__leading_dot}deps" - -ac_config_commands="$ac_config_commands depfiles" - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5 -printf %s "checking whether ${MAKE-make} supports the include directive... " >&6; } -cat > confinc.mk << 'END' -am__doit: - @echo this is the am__doit target >confinc.out -.PHONY: am__doit -END -am__include="#" -am__quote= -# BSD make does it like this. -echo '.include "confinc.mk" # ignored' > confmf.BSD -# Other make implementations (GNU, Solaris 10, AIX) do it like this. -echo 'include confinc.mk # ignored' > confmf.GNU -_am_result=no -for s in GNU BSD; do - { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5 - (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - case $?:`cat confinc.out 2>/dev/null` in #( - '0:this is the am__doit target') : - case $s in #( - BSD) : - am__include='.include' am__quote='"' ;; #( - *) : - am__include='include' am__quote='' ;; -esac ;; #( - *) : - ;; -esac - if test "$am__include" != "#"; then - _am_result="yes ($s style)" - break - fi -done -rm -f confinc.* confmf.* -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5 -printf "%s\n" "${_am_result}" >&6; } - -# Check whether --enable-dependency-tracking was given. -if test ${enable_dependency_tracking+y} -then : - enableval=$enable_dependency_tracking; -fi - -if test "x$enable_dependency_tracking" != xno; then - am_depcomp="$ac_aux_dir/depcomp" - AMDEPBACKSLASH='\' - am__nodep='_no' -fi - if test "x$enable_dependency_tracking" != xno; then - AMDEP_TRUE= - AMDEP_FALSE='#' -else - AMDEP_TRUE='#' - AMDEP_FALSE= -fi - - -# Check whether --enable-silent-rules was given. -if test ${enable_silent_rules+y} -then : - enableval=$enable_silent_rules; -fi - -case $enable_silent_rules in # ((( - yes) AM_DEFAULT_VERBOSITY=0;; - no) AM_DEFAULT_VERBOSITY=1;; - *) AM_DEFAULT_VERBOSITY=1;; -esac -am_make=${MAKE-make} -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 -printf %s "checking whether $am_make supports nested variables... " >&6; } -if test ${am_cv_make_support_nested_variables+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if printf "%s\n" 'TRUE=$(BAR$(V)) -BAR0=false -BAR1=true -V=1 -am__doit: - @$(TRUE) -.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then - am_cv_make_support_nested_variables=yes -else - am_cv_make_support_nested_variables=no -fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 -printf "%s\n" "$am_cv_make_support_nested_variables" >&6; } -if test $am_cv_make_support_nested_variables = yes; then - AM_V='$(V)' - AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -else - AM_V=$AM_DEFAULT_VERBOSITY - AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY -fi -AM_BACKSLASH='\' - -if test "`cd $srcdir && pwd`" != "`pwd`"; then - # Use -I$(srcdir) only when $(srcdir) != ., so that make's output - # is not polluted with repeated "-I." - am__isrc=' -I$(srcdir)' - # test to see if srcdir already configured - if test -f $srcdir/config.status; then - as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 - fi -fi - -# test whether we have cygpath -if test -z "$CYGPATH_W"; then - if (cygpath --version) >/dev/null 2>/dev/null; then - CYGPATH_W='cygpath -w' - else - CYGPATH_W=echo - fi -fi - - -# Define the identity of the package. - PACKAGE='flatpak' - VERSION='1.14.10' - - -# Some tools Automake needs. - -ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} - - -AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} - - -AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} - - -AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} - - -MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} - -# For better backward compatibility. To be removed once Automake 1.9.x -# dies out for good. For more background, see: -# -# -mkdir_p='$(MKDIR_P)' - -# We need awk for the "check" target (and possibly the TAP driver). The -# system "awk" is bad on some platforms. -# Always define AMTAR for backward compatibility. Yes, it's still used -# in the wild :-( We should find a proper way to deprecate it ... -AMTAR='$${TAR-tar}' - - -# We'll loop over all known methods to create a tar archive until one works. -_am_tools='gnutar plaintar pax cpio none' - -# The POSIX 1988 'ustar' format is defined with fixed-size fields. - # There is notably a 21 bits limit for the UID and the GID. In fact, - # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343 - # and bug#13588). - am_max_uid=2097151 # 2^21 - 1 - am_max_gid=$am_max_uid - # The $UID and $GID variables are not portable, so we need to resort - # to the POSIX-mandated id(1) utility. Errors in the 'id' calls - # below are definitely unexpected, so allow the users to see them - # (that is, avoid stderr redirection). - am_uid=`id -u || echo unknown` - am_gid=`id -g || echo unknown` - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether UID '$am_uid' is supported by ustar format" >&5 -printf %s "checking whether UID '$am_uid' is supported by ustar format... " >&6; } - if test $am_uid -le $am_max_uid; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - _am_tools=none - fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether GID '$am_gid' is supported by ustar format" >&5 -printf %s "checking whether GID '$am_gid' is supported by ustar format... " >&6; } - if test $am_gid -le $am_max_gid; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - _am_tools=none - fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to create a ustar tar archive" >&5 -printf %s "checking how to create a ustar tar archive... " >&6; } - - # Go ahead even if we have the value already cached. We do so because we - # need to set the values for the 'am__tar' and 'am__untar' variables. - _am_tools=${am_cv_prog_tar_ustar-$_am_tools} - - for _am_tool in $_am_tools; do - case $_am_tool in - gnutar) - for _am_tar in tar gnutar gtar; do - { echo "$as_me:$LINENO: $_am_tar --version" >&5 - ($_am_tar --version) >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && break - done - am__tar="$_am_tar --format=ustar -chf - "'"$$tardir"' - am__tar_="$_am_tar --format=ustar -chf - "'"$tardir"' - am__untar="$_am_tar -xf -" - ;; - plaintar) - # Must skip GNU tar: if it does not support --format= it doesn't create - # ustar tarball either. - (tar --version) >/dev/null 2>&1 && continue - am__tar='tar chf - "$$tardir"' - am__tar_='tar chf - "$tardir"' - am__untar='tar xf -' - ;; - pax) - am__tar='pax -L -x ustar -w "$$tardir"' - am__tar_='pax -L -x ustar -w "$tardir"' - am__untar='pax -r' - ;; - cpio) - am__tar='find "$$tardir" -print | cpio -o -H ustar -L' - am__tar_='find "$tardir" -print | cpio -o -H ustar -L' - am__untar='cpio -i -H ustar -d' - ;; - none) - am__tar=false - am__tar_=false - am__untar=false - ;; - esac - - # If the value was cached, stop now. We just wanted to have am__tar - # and am__untar set. - test -n "${am_cv_prog_tar_ustar}" && break - - # tar/untar a dummy directory, and stop if the command works. - rm -rf conftest.dir - mkdir conftest.dir - echo GrepMe > conftest.dir/file - { echo "$as_me:$LINENO: tardir=conftest.dir && eval $am__tar_ >conftest.tar" >&5 - (tardir=conftest.dir && eval $am__tar_ >conftest.tar) >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - rm -rf conftest.dir - if test -s conftest.tar; then - { echo "$as_me:$LINENO: $am__untar &5 - ($am__untar &5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - { echo "$as_me:$LINENO: cat conftest.dir/file" >&5 - (cat conftest.dir/file) >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - grep GrepMe conftest.dir/file >/dev/null 2>&1 && break - fi - done - rm -rf conftest.dir - - if test ${am_cv_prog_tar_ustar+y} -then : - printf %s "(cached) " >&6 -else $as_nop - am_cv_prog_tar_ustar=$_am_tool -fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_tar_ustar" >&5 -printf "%s\n" "$am_cv_prog_tar_ustar" >&6; } - - - - - -depcc="$CC" am_compiler_list= - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 -printf %s "checking dependency style of $depcc... " >&6; } -if test ${am_cv_CC_dependencies_compiler_type+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then - # We make a subdir and do the tests there. Otherwise we can end up - # making bogus files that we don't know about and never remove. For - # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named 'D' -- because '-MD' means "put the output - # in D". - rm -rf conftest.dir - mkdir conftest.dir - # Copy depcomp to subdir because otherwise we won't find it if we're - # using a relative directory. - cp "$am_depcomp" conftest.dir - cd conftest.dir - # We will build objects and dependencies in a subdirectory because - # it helps to detect inapplicable dependency modes. For instance - # both Tru64's cc and ICC support -MD to output dependencies as a - # side effect of compilation, but ICC will put the dependencies in - # the current directory while Tru64 will put them in the object - # directory. - mkdir sub - - am_cv_CC_dependencies_compiler_type=none - if test "$am_compiler_list" = ""; then - am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` - fi - am__universal=false - case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac - - for depmode in $am_compiler_list; do - # Setup a source with many dependencies, because some compilers - # like to wrap large dependency lists on column 80 (with \), and - # we should not choose a depcomp mode which is confused by this. - # - # We need to recreate these files for each test, as the compiler may - # overwrite some of them when testing with obscure command lines. - # This happens at least with the AIX C compiler. - : > sub/conftest.c - for i in 1 2 3 4 5 6; do - echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with - # Solaris 10 /bin/sh. - echo '/* dummy */' > sub/conftst$i.h - done - echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - - # We check with '-c' and '-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle '-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs. - am__obj=sub/conftest.${OBJEXT-o} - am__minus_obj="-o $am__obj" - case $depmode in - gcc) - # This depmode causes a compiler race in universal mode. - test "$am__universal" = false || continue - ;; - nosideeffect) - # After this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested. - if test "x$enable_dependency_tracking" = xyes; then - continue - else - break - fi - ;; - msvc7 | msvc7msys | msvisualcpp | msvcmsys) - # This compiler won't grok '-c -o', but also, the minuso test has - # not run yet. These depmodes are late enough in the game, and - # so weak that their functioning should not be impacted. - am__obj=conftest.${OBJEXT-o} - am__minus_obj= - ;; - none) break ;; - esac - if depmode=$depmode \ - source=sub/conftest.c object=$am__obj \ - depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ - >/dev/null 2>conftest.err && - grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings - # or remarks (even with -Werror). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required - # The diagnosis changed in icc 8.0: - # icc: Command line remark: option '-MP' not supported - if (grep 'ignoring option' conftest.err || - grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_CC_dependencies_compiler_type=$depmode - break - fi - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_CC_dependencies_compiler_type=none -fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 -printf "%s\n" "$am_cv_CC_dependencies_compiler_type" >&6; } -CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type - - if - test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then - am__fastdepCC_TRUE= - am__fastdepCC_FALSE='#' -else - am__fastdepCC_TRUE='#' - am__fastdepCC_FALSE= -fi - - -# Variables for tags utilities; see am/tags.am -if test -z "$CTAGS"; then - CTAGS=ctags -fi - -if test -z "$ETAGS"; then - ETAGS=etags -fi - -if test -z "$CSCOPE"; then - CSCOPE=cscope -fi - - - -# POSIX will say in a future version that running "rm -f" with no argument -# is OK; and we want to be able to make that assumption in our Makefile -# recipes. So use an aggressive probe to check that the usage we want is -# actually supported "in the wild" to an acceptable degree. -# See automake bug#10828. -# To make any issue more visible, cause the running configure to be aborted -# by default if the 'rm' program in use doesn't match our expectations; the -# user can still override this though. -if rm -f && rm -fr && rm -rf; then : OK; else - cat >&2 <<'END' -Oops! - -Your 'rm' program seems unable to run without file operands specified -on the command line, even when the '-f' option is present. This is contrary -to the behaviour of most rm programs out there, and not conforming with -the upcoming POSIX standard: - -Please tell bug-automake@gnu.org about your system, including the value -of your $PATH and any error possibly output before this message. This -can help us improve future automake versions. - -END - if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then - echo 'Configuration will proceed anyway, since you have set the' >&2 - echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 - echo >&2 - else - cat >&2 <<'END' -Aborting the configuration process, to ensure you take notice of the issue. - -You can download and install GNU coreutils to get an 'rm' implementation -that behaves properly: . - -If you want to complete the configuration process using your problematic -'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM -to "yes", and re-run configure. - -END - as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5 - fi -fi - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 -printf %s "checking for a sed that does not truncate output... " >&6; } -if test ${ac_cv_path_SED+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ - for ac_i in 1 2 3 4 5 6 7; do - ac_script="$ac_script$as_nl$ac_script" - done - echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed - { ac_script=; unset ac_script;} - if test -z "$SED"; then - ac_path_SED_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_prog in sed gsed - do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_SED="$as_dir$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_SED" || continue -# Check for GNU ac_path_SED and select it if it is found. - # Check for GNU $ac_path_SED -case `"$ac_path_SED" --version 2>&1` in -*GNU*) - ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; -*) - ac_count=0 - printf %s 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - printf "%s\n" '' >> "conftest.nl" - "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_SED_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_SED="$ac_path_SED" - ac_path_SED_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_SED_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_SED"; then - as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 - fi -else - ac_cv_path_SED=$SED -fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 -printf "%s\n" "$ac_cv_path_SED" >&6; } - SED="$ac_cv_path_SED" - rm -f conftest.sed - -for ac_prog in 'bison' -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_BISON+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$BISON"; then - ac_cv_prog_BISON="$BISON" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_BISON="$ac_prog" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -BISON=$ac_cv_prog_BISON -if test -n "$BISON"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $BISON" >&5 -printf "%s\n" "$BISON" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - test -n "$BISON" && break -done - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5 -printf %s "checking whether NLS is requested... " >&6; } - # Check whether --enable-nls was given. -if test ${enable_nls+y} -then : - enableval=$enable_nls; USE_NLS=$enableval -else $as_nop - USE_NLS=yes -fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 -printf "%s\n" "$USE_NLS" >&6; } - - - - - GETTEXT_MACRO_VERSION=0.18 - - - - -# Prepare PATH_SEPARATOR. -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which - # contains only /bin. Note that ksh looks also at the FPATH variable, - # so we have to set that as well for the test. - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - || PATH_SEPARATOR=';' - } -fi - -# Find out how to test for executable files. Don't use a zero-byte file, -# as systems may use methods other than mode bits to determine executability. -cat >conf$$.file <<_ASEOF -#! /bin/sh -exit 0 -_ASEOF -chmod +x conf$$.file -if test -x conf$$.file >/dev/null 2>&1; then - ac_executable_p="test -x" -else - ac_executable_p="test -f" -fi -rm -f conf$$.file - -# Extract the first word of "msgfmt", so it can be a program name with args. -set dummy msgfmt; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_MSGFMT+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case "$MSGFMT" in - [\\/]* | ?:[\\/]*) - ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. - ;; - *) - ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$ac_save_IFS" - test -z "$ac_dir" && ac_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then - echo "$as_me: trying $ac_dir/$ac_word..." >&5 - if $ac_dir/$ac_word --statistics /dev/null >&5 2>&1 && - (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then - ac_cv_path_MSGFMT="$ac_dir/$ac_word$ac_exec_ext" - break 2 - fi - fi - done - done - IFS="$ac_save_IFS" - test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT=":" - ;; -esac -fi -MSGFMT="$ac_cv_path_MSGFMT" -if test "$MSGFMT" != ":"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 -printf "%s\n" "$MSGFMT" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - # Extract the first word of "gmsgfmt", so it can be a program name with args. -set dummy gmsgfmt; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_GMSGFMT+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $GMSGFMT in - [\\/]* | ?:[\\/]*) - ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_path_GMSGFMT="$as_dir$ac_word$ac_exec_ext" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" - ;; -esac -fi -GMSGFMT=$ac_cv_path_GMSGFMT -if test -n "$GMSGFMT"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 -printf "%s\n" "$GMSGFMT" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - - case `$MSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in - '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) MSGFMT_015=: ;; - *) MSGFMT_015=$MSGFMT ;; - esac - - case `$GMSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in - '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) GMSGFMT_015=: ;; - *) GMSGFMT_015=$GMSGFMT ;; - esac - - - -# Prepare PATH_SEPARATOR. -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which - # contains only /bin. Note that ksh looks also at the FPATH variable, - # so we have to set that as well for the test. - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - || PATH_SEPARATOR=';' - } -fi - -# Find out how to test for executable files. Don't use a zero-byte file, -# as systems may use methods other than mode bits to determine executability. -cat >conf$$.file <<_ASEOF -#! /bin/sh -exit 0 -_ASEOF -chmod +x conf$$.file -if test -x conf$$.file >/dev/null 2>&1; then - ac_executable_p="test -x" -else - ac_executable_p="test -f" -fi -rm -f conf$$.file - -# Extract the first word of "xgettext", so it can be a program name with args. -set dummy xgettext; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_XGETTEXT+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case "$XGETTEXT" in - [\\/]* | ?:[\\/]*) - ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. - ;; - *) - ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$ac_save_IFS" - test -z "$ac_dir" && ac_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then - echo "$as_me: trying $ac_dir/$ac_word..." >&5 - if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >&5 2>&1 && - (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then - ac_cv_path_XGETTEXT="$ac_dir/$ac_word$ac_exec_ext" - break 2 - fi - fi - done - done - IFS="$ac_save_IFS" - test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":" - ;; -esac -fi -XGETTEXT="$ac_cv_path_XGETTEXT" -if test "$XGETTEXT" != ":"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 -printf "%s\n" "$XGETTEXT" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - rm -f messages.po - - case `$XGETTEXT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in - '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) XGETTEXT_015=: ;; - *) XGETTEXT_015=$XGETTEXT ;; - esac - - - -# Prepare PATH_SEPARATOR. -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which - # contains only /bin. Note that ksh looks also at the FPATH variable, - # so we have to set that as well for the test. - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - || PATH_SEPARATOR=';' - } -fi - -# Find out how to test for executable files. Don't use a zero-byte file, -# as systems may use methods other than mode bits to determine executability. -cat >conf$$.file <<_ASEOF -#! /bin/sh -exit 0 -_ASEOF -chmod +x conf$$.file -if test -x conf$$.file >/dev/null 2>&1; then - ac_executable_p="test -x" -else - ac_executable_p="test -f" -fi -rm -f conf$$.file - -# Extract the first word of "msgmerge", so it can be a program name with args. -set dummy msgmerge; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_MSGMERGE+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case "$MSGMERGE" in - [\\/]* | ?:[\\/]*) - ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path. - ;; - *) - ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$ac_save_IFS" - test -z "$ac_dir" && ac_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then - echo "$as_me: trying $ac_dir/$ac_word..." >&5 - if $ac_dir/$ac_word --update -q /dev/null /dev/null >&5 2>&1; then - ac_cv_path_MSGMERGE="$ac_dir/$ac_word$ac_exec_ext" - break 2 - fi - fi - done - done - IFS="$ac_save_IFS" - test -z "$ac_cv_path_MSGMERGE" && ac_cv_path_MSGMERGE=":" - ;; -esac -fi -MSGMERGE="$ac_cv_path_MSGMERGE" -if test "$MSGMERGE" != ":"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5 -printf "%s\n" "$MSGMERGE" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - test -n "$localedir" || localedir='${datadir}/locale' - - - test -n "${XGETTEXT_EXTRA_OPTIONS+set}" || XGETTEXT_EXTRA_OPTIONS= - - - ac_config_commands="$ac_config_commands po-directories" - - - - if test "X$prefix" = "XNONE"; then - acl_final_prefix="$ac_default_prefix" - else - acl_final_prefix="$prefix" - fi - if test "X$exec_prefix" = "XNONE"; then - acl_final_exec_prefix='${prefix}' - else - acl_final_exec_prefix="$exec_prefix" - fi - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" - prefix="$acl_save_prefix" - - - -# Check whether --with-gnu-ld was given. -if test ${with_gnu_ld+y} -then : - withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes -else $as_nop - with_gnu_ld=no -fi - -# Prepare PATH_SEPARATOR. -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which - # contains only /bin. Note that ksh looks also at the FPATH variable, - # so we have to set that as well for the test. - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - || PATH_SEPARATOR=';' - } -fi - -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 -printf %s "checking for ld used by $CC... " >&6; } - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [\\/]* | ?:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' - # Canonicalize the pathname of ld - ac_prog=`echo "$ac_prog"| sed 's%\\\\%/%g'` - while echo "$ac_prog" | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 -printf %s "checking for GNU ld... " >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 -printf %s "checking for non-GNU ld... " >&6; } -fi -if test ${acl_cv_path_LD+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -z "$LD"; then - acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$acl_save_ifs" - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - acl_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some variants of GNU ld only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - case `"$acl_cv_path_LD" -v 2>&1 &5 -printf "%s\n" "$LD" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi -test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 -printf %s "checking if the linker ($LD) is GNU ld... " >&6; } -if test ${acl_cv_prog_gnu_ld+y} -then : - printf %s "(cached) " >&6 -else $as_nop - # I'd rather use --version here, but apparently some GNU lds only accept -v. -case `$LD -v 2>&1 &5 -printf "%s\n" "$acl_cv_prog_gnu_ld" >&6; } -with_gnu_ld=$acl_cv_prog_gnu_ld - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5 -printf %s "checking for shared library run path origin... " >&6; } -if test ${acl_cv_rpath+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ - ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh - . ./conftest.sh - rm -f ./conftest.sh - acl_cv_rpath=done - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5 -printf "%s\n" "$acl_cv_rpath" >&6; } - wl="$acl_cv_wl" - acl_libext="$acl_cv_libext" - acl_shlibext="$acl_cv_shlibext" - acl_libname_spec="$acl_cv_libname_spec" - acl_library_names_spec="$acl_cv_library_names_spec" - acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" - acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" - acl_hardcode_direct="$acl_cv_hardcode_direct" - acl_hardcode_minus_L="$acl_cv_hardcode_minus_L" - # Check whether --enable-rpath was given. -if test ${enable_rpath+y} -then : - enableval=$enable_rpath; : -else $as_nop - enable_rpath=yes -fi - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 -printf %s "checking how to run the C preprocessor... " >&6; } -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if test ${ac_cv_prog_CPP+y} -then : - printf %s "(cached) " >&6 -else $as_nop - # Double quotes because $CC needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" cpp /lib/cpp - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - Syntax error -_ACEOF -if ac_fn_c_try_cpp "$LINENO" -then : - -else $as_nop - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.i conftest.$ac_ext - - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if ac_fn_c_try_cpp "$LINENO" -then : - # Broken: success on invalid input. -continue -else $as_nop - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.i conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.i conftest.err conftest.$ac_ext -if $ac_preproc_ok -then : - break -fi - - done - ac_cv_prog_CPP=$CPP - -fi - CPP=$ac_cv_prog_CPP -else - ac_cv_prog_CPP=$CPP -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 -printf "%s\n" "$CPP" >&6; } -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - Syntax error -_ACEOF -if ac_fn_c_try_cpp "$LINENO" -then : - -else $as_nop - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.i conftest.$ac_ext - - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if ac_fn_c_try_cpp "$LINENO" -then : - # Broken: success on invalid input. -continue -else $as_nop - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.i conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.i conftest.err conftest.$ac_ext -if $ac_preproc_ok -then : - -else $as_nop - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details" "$LINENO" 5; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - - acl_libdirstem=lib - acl_libdirstem2= - case "$host_os" in - solaris*) - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5 -printf %s "checking for 64-bit host... " >&6; } -if test ${gl_cv_solaris_64bit+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#ifdef _LP64 -sixtyfour bits -#endif - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "sixtyfour bits" >/dev/null 2>&1 -then : - gl_cv_solaris_64bit=yes -else $as_nop - gl_cv_solaris_64bit=no -fi -rm -rf conftest* - - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gl_cv_solaris_64bit" >&5 -printf "%s\n" "$gl_cv_solaris_64bit" >&6; } - if test $gl_cv_solaris_64bit = yes; then - acl_libdirstem=lib/64 - case "$host_cpu" in - sparc*) acl_libdirstem2=lib/sparcv9 ;; - i*86 | x86_64) acl_libdirstem2=lib/amd64 ;; - esac - fi - ;; - *) - searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` - if test -n "$searchpath"; then - acl_save_IFS="${IFS= }"; IFS=":" - for searchdir in $searchpath; do - if test -d "$searchdir"; then - case "$searchdir" in - */lib64/ | */lib64 ) acl_libdirstem=lib64 ;; - */../ | */.. ) - # Better ignore directories of this form. They are misleading. - ;; - *) searchdir=`cd "$searchdir" && pwd` - case "$searchdir" in - */lib64 ) acl_libdirstem=lib64 ;; - esac ;; - esac - fi - done - IFS="$acl_save_IFS" - fi - ;; - esac - test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem" - - - - - - - - - - - - - use_additional=yes - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - -# Check whether --with-libiconv-prefix was given. -if test ${with_libiconv_prefix+y} -then : - withval=$with_libiconv_prefix; - if test "X$withval" = "Xno"; then - use_additional=no - else - if test "X$withval" = "X"; then - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - else - additional_includedir="$withval/include" - additional_libdir="$withval/$acl_libdirstem" - if test "$acl_libdirstem2" != "$acl_libdirstem" \ - && ! test -d "$withval/$acl_libdirstem"; then - additional_libdir="$withval/$acl_libdirstem2" - fi - fi - fi - -fi - - LIBICONV= - LTLIBICONV= - INCICONV= - LIBICONV_PREFIX= - HAVE_LIBICONV= - rpathdirs= - ltrpathdirs= - names_already_handled= - names_next_round='iconv ' - while test -n "$names_next_round"; do - names_this_round="$names_next_round" - names_next_round= - for name in $names_this_round; do - already_handled= - for n in $names_already_handled; do - if test "$n" = "$name"; then - already_handled=yes - break - fi - done - if test -z "$already_handled"; then - names_already_handled="$names_already_handled $name" - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` - eval value=\"\$HAVE_LIB$uppername\" - if test -n "$value"; then - if test "$value" = yes; then - eval value=\"\$LIB$uppername\" - test -z "$value" || LIBICONV="${LIBICONV}${LIBICONV:+ }$value" - eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$value" - else - : - fi - else - found_dir= - found_la= - found_so= - found_a= - eval libname=\"$acl_libname_spec\" # typically: libname=lib$name - if test -n "$acl_shlibext"; then - shrext=".$acl_shlibext" # typically: shrext=.so - else - shrext= - fi - if test $use_additional = yes; then - dir="$additional_libdir" - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - fi - if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIBICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - case "$x" in - -L*) - dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - ;; - esac - if test "X$found_dir" != "X"; then - break - fi - done - fi - if test "X$found_dir" != "X"; then - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name" - if test "X$found_so" != "X"; then - if test "$enable_rpath" = no \ - || test "X$found_dir" = "X/usr/$acl_libdirstem" \ - || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" - else - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $found_dir" - fi - if test "$acl_hardcode_direct" = yes; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" - else - if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $found_dir" - fi - else - haveit= - for x in $LDFLAGS $LIBICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir" - fi - if test "$acl_hardcode_minus_L" != no; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" - else - LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" - fi - fi - fi - fi - else - if test "X$found_a" != "X"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_a" - else - LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir -l$name" - fi - fi - additional_includedir= - case "$found_dir" in - */$acl_libdirstem | */$acl_libdirstem/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` - if test "$name" = 'iconv'; then - LIBICONV_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - */$acl_libdirstem2 | */$acl_libdirstem2/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` - if test "$name" = 'iconv'; then - LIBICONV_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - esac - if test "X$additional_includedir" != "X"; then - if test "X$additional_includedir" != "X/usr/include"; then - haveit= - if test "X$additional_includedir" = "X/usr/local/include"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - for x in $CPPFLAGS $INCICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-I$additional_includedir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_includedir"; then - INCICONV="${INCICONV}${INCICONV:+ }-I$additional_includedir" - fi - fi - fi - fi - fi - if test -n "$found_la"; then - save_libdir="$libdir" - case "$found_la" in - */* | *\\*) . "$found_la" ;; - *) . "./$found_la" ;; - esac - libdir="$save_libdir" - for dep in $dependency_libs; do - case "$dep" in - -L*) - additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \ - && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then - haveit= - if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ - || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - haveit= - for x in $LDFLAGS $LIBICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir" - fi - fi - haveit= - for x in $LDFLAGS $LTLIBICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir" - fi - fi - fi - fi - ;; - -R*) - dir=`echo "X$dep" | sed -e 's/^X-R//'` - if test "$enable_rpath" != no; then - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $dir" - fi - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $dir" - fi - fi - ;; - -l*) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` - ;; - *.la) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` - ;; - *) - LIBICONV="${LIBICONV}${LIBICONV:+ }$dep" - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$dep" - ;; - esac - done - fi - else - LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name" - fi - fi - fi - done - done - if test "X$rpathdirs" != "X"; then - if test -n "$acl_hardcode_libdir_separator"; then - alldirs= - for found_dir in $rpathdirs; do - alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" - done - acl_save_libdir="$libdir" - libdir="$alldirs" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" - else - for found_dir in $rpathdirs; do - acl_save_libdir="$libdir" - libdir="$found_dir" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" - done - fi - fi - if test "X$ltrpathdirs" != "X"; then - for found_dir in $ltrpathdirs; do - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-R$found_dir" - done - fi - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5 -printf %s "checking for CFPreferencesCopyAppValue... " >&6; } -if test ${gt_cv_func_CFPreferencesCopyAppValue+y} -then : - printf %s "(cached) " >&6 -else $as_nop - gt_save_LIBS="$LIBS" - LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -CFPreferencesCopyAppValue(NULL, NULL) - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - gt_cv_func_CFPreferencesCopyAppValue=yes -else $as_nop - gt_cv_func_CFPreferencesCopyAppValue=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$gt_save_LIBS" -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5 -printf "%s\n" "$gt_cv_func_CFPreferencesCopyAppValue" >&6; } - if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then - -printf "%s\n" "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h - - fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5 -printf %s "checking for CFLocaleCopyCurrent... " >&6; } -if test ${gt_cv_func_CFLocaleCopyCurrent+y} -then : - printf %s "(cached) " >&6 -else $as_nop - gt_save_LIBS="$LIBS" - LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main (void) -{ -CFLocaleCopyCurrent(); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - gt_cv_func_CFLocaleCopyCurrent=yes -else $as_nop - gt_cv_func_CFLocaleCopyCurrent=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$gt_save_LIBS" -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyCurrent" >&5 -printf "%s\n" "$gt_cv_func_CFLocaleCopyCurrent" >&6; } - if test $gt_cv_func_CFLocaleCopyCurrent = yes; then - -printf "%s\n" "#define HAVE_CFLOCALECOPYCURRENT 1" >>confdefs.h - - fi - INTL_MACOSX_LIBS= - if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then - INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" - fi - - - - - - - LIBINTL= - LTLIBINTL= - POSUB= - - case " $gt_needs " in - *" need-formatstring-macros "*) gt_api_version=3 ;; - *" need-ngettext "*) gt_api_version=2 ;; - *) gt_api_version=1 ;; - esac - gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc" - gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl" - - if test "$USE_NLS" = "yes"; then - gt_use_preinstalled_gnugettext=no - - - if test $gt_api_version -ge 3; then - gt_revision_test_code=' -#ifndef __GNU_GETTEXT_SUPPORTED_REVISION -#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) -#endif -typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; -' - else - gt_revision_test_code= - fi - if test $gt_api_version -ge 2; then - gt_expression_test_code=' + * ngettext ("", "", 0)' - else - gt_expression_test_code= - fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5 -printf %s "checking for GNU gettext in libc... " >&6; } -if eval test \${$gt_func_gnugettext_libc+y} -then : - printf %s "(cached) " >&6 -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -$gt_revision_test_code -extern int _nl_msg_cat_cntr; -extern int *_nl_domain_bindings; - -int -main (void) -{ - -bindtextdomain ("", ""); -return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - eval "$gt_func_gnugettext_libc=yes" -else $as_nop - eval "$gt_func_gnugettext_libc=no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext -fi -eval ac_res=\$$gt_func_gnugettext_libc - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -printf "%s\n" "$ac_res" >&6; } - - if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then - - - - - - am_save_CPPFLAGS="$CPPFLAGS" - - for element in $INCICONV; do - haveit= - for x in $CPPFLAGS; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5 -printf %s "checking for iconv... " >&6; } -if test ${am_cv_func_iconv+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - am_cv_func_iconv="no, consider installing GNU libiconv" - am_cv_lib_iconv=no - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include - -int -main (void) -{ -iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - am_cv_func_iconv=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - if test "$am_cv_func_iconv" != yes; then - am_save_LIBS="$LIBS" - LIBS="$LIBS $LIBICONV" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include - -int -main (void) -{ -iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - am_cv_lib_iconv=yes - am_cv_func_iconv=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$am_save_LIBS" - fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5 -printf "%s\n" "$am_cv_func_iconv" >&6; } - if test "$am_cv_func_iconv" = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5 -printf %s "checking for working iconv... " >&6; } -if test ${am_cv_func_iconv_works+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - am_save_LIBS="$LIBS" - if test $am_cv_lib_iconv = yes; then - LIBS="$LIBS $LIBICONV" - fi - if test "$cross_compiling" = yes -then : - - case "$host_os" in - aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; - *) am_cv_func_iconv_works="guessing yes" ;; - esac - -else $as_nop - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -#include -int main () -{ - int result = 0; - /* Test against AIX 5.1 bug: Failures are not distinguishable from successful - returns. */ - { - iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8"); - if (cd_utf8_to_88591 != (iconv_t)(-1)) - { - static const char input[] = "\342\202\254"; /* EURO SIGN */ - char buf[10]; - const char *inptr = input; - size_t inbytesleft = strlen (input); - char *outptr = buf; - size_t outbytesleft = sizeof (buf); - size_t res = iconv (cd_utf8_to_88591, - (char **) &inptr, &inbytesleft, - &outptr, &outbytesleft); - if (res == 0) - result |= 1; - iconv_close (cd_utf8_to_88591); - } - } - /* Test against Solaris 10 bug: Failures are not distinguishable from - successful returns. */ - { - iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646"); - if (cd_ascii_to_88591 != (iconv_t)(-1)) - { - static const char input[] = "\263"; - char buf[10]; - const char *inptr = input; - size_t inbytesleft = strlen (input); - char *outptr = buf; - size_t outbytesleft = sizeof (buf); - size_t res = iconv (cd_ascii_to_88591, - (char **) &inptr, &inbytesleft, - &outptr, &outbytesleft); - if (res == 0) - result |= 2; - iconv_close (cd_ascii_to_88591); - } - } - /* Test against AIX 6.1..7.1 bug: Buffer overrun. */ - { - iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); - if (cd_88591_to_utf8 != (iconv_t)(-1)) - { - static const char input[] = "\304"; - static char buf[2] = { (char)0xDE, (char)0xAD }; - const char *inptr = input; - size_t inbytesleft = 1; - char *outptr = buf; - size_t outbytesleft = 1; - size_t res = iconv (cd_88591_to_utf8, - (char **) &inptr, &inbytesleft, - &outptr, &outbytesleft); - if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) - result |= 4; - iconv_close (cd_88591_to_utf8); - } - } -#if 0 /* This bug could be worked around by the caller. */ - /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */ - { - iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591"); - if (cd_88591_to_utf8 != (iconv_t)(-1)) - { - static const char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; - char buf[50]; - const char *inptr = input; - size_t inbytesleft = strlen (input); - char *outptr = buf; - size_t outbytesleft = sizeof (buf); - size_t res = iconv (cd_88591_to_utf8, - (char **) &inptr, &inbytesleft, - &outptr, &outbytesleft); - if ((int)res > 0) - result |= 8; - iconv_close (cd_88591_to_utf8); - } - } -#endif - /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is - provided. */ - if (/* Try standardized names. */ - iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1) - /* Try IRIX, OSF/1 names. */ - && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1) - /* Try AIX names. */ - && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1) - /* Try HP-UX names. */ - && iconv_open ("utf8", "eucJP") == (iconv_t)(-1)) - result |= 16; - return result; -} -_ACEOF -if ac_fn_c_try_run "$LINENO" -then : - am_cv_func_iconv_works=yes -else $as_nop - am_cv_func_iconv_works=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - - LIBS="$am_save_LIBS" - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv_works" >&5 -printf "%s\n" "$am_cv_func_iconv_works" >&6; } - case "$am_cv_func_iconv_works" in - *no) am_func_iconv=no am_cv_lib_iconv=no ;; - *) am_func_iconv=yes ;; - esac - else - am_func_iconv=no am_cv_lib_iconv=no - fi - if test "$am_func_iconv" = yes; then - -printf "%s\n" "#define HAVE_ICONV 1" >>confdefs.h - - fi - if test "$am_cv_lib_iconv" = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5 -printf %s "checking how to link with libiconv... " >&6; } - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5 -printf "%s\n" "$LIBICONV" >&6; } - else - CPPFLAGS="$am_save_CPPFLAGS" - LIBICONV= - LTLIBICONV= - fi - - - - - - - - - - - - use_additional=yes - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - -# Check whether --with-libintl-prefix was given. -if test ${with_libintl_prefix+y} -then : - withval=$with_libintl_prefix; - if test "X$withval" = "Xno"; then - use_additional=no - else - if test "X$withval" = "X"; then - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - else - additional_includedir="$withval/include" - additional_libdir="$withval/$acl_libdirstem" - if test "$acl_libdirstem2" != "$acl_libdirstem" \ - && ! test -d "$withval/$acl_libdirstem"; then - additional_libdir="$withval/$acl_libdirstem2" - fi - fi - fi - -fi - - LIBINTL= - LTLIBINTL= - INCINTL= - LIBINTL_PREFIX= - HAVE_LIBINTL= - rpathdirs= - ltrpathdirs= - names_already_handled= - names_next_round='intl ' - while test -n "$names_next_round"; do - names_this_round="$names_next_round" - names_next_round= - for name in $names_this_round; do - already_handled= - for n in $names_already_handled; do - if test "$n" = "$name"; then - already_handled=yes - break - fi - done - if test -z "$already_handled"; then - names_already_handled="$names_already_handled $name" - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` - eval value=\"\$HAVE_LIB$uppername\" - if test -n "$value"; then - if test "$value" = yes; then - eval value=\"\$LIB$uppername\" - test -z "$value" || LIBINTL="${LIBINTL}${LIBINTL:+ }$value" - eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$value" - else - : - fi - else - found_dir= - found_la= - found_so= - found_a= - eval libname=\"$acl_libname_spec\" # typically: libname=lib$name - if test -n "$acl_shlibext"; then - shrext=".$acl_shlibext" # typically: shrext=.so - else - shrext= - fi - if test $use_additional = yes; then - dir="$additional_libdir" - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - fi - if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIBINTL; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - case "$x" in - -L*) - dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - ;; - esac - if test "X$found_dir" != "X"; then - break - fi - done - fi - if test "X$found_dir" != "X"; then - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$found_dir -l$name" - if test "X$found_so" != "X"; then - if test "$enable_rpath" = no \ - || test "X$found_dir" = "X/usr/$acl_libdirstem" \ - || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" - else - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $found_dir" - fi - if test "$acl_hardcode_direct" = yes; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" - else - if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $found_dir" - fi - else - haveit= - for x in $LDFLAGS $LIBINTL; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir" - fi - if test "$acl_hardcode_minus_L" != no; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" - else - LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" - fi - fi - fi - fi - else - if test "X$found_a" != "X"; then - LIBINTL="${LIBINTL}${LIBINTL:+ }$found_a" - else - LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir -l$name" - fi - fi - additional_includedir= - case "$found_dir" in - */$acl_libdirstem | */$acl_libdirstem/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` - if test "$name" = 'intl'; then - LIBINTL_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - */$acl_libdirstem2 | */$acl_libdirstem2/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` - if test "$name" = 'intl'; then - LIBINTL_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - esac - if test "X$additional_includedir" != "X"; then - if test "X$additional_includedir" != "X/usr/include"; then - haveit= - if test "X$additional_includedir" = "X/usr/local/include"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - for x in $CPPFLAGS $INCINTL; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-I$additional_includedir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_includedir"; then - INCINTL="${INCINTL}${INCINTL:+ }-I$additional_includedir" - fi - fi - fi - fi - fi - if test -n "$found_la"; then - save_libdir="$libdir" - case "$found_la" in - */* | *\\*) . "$found_la" ;; - *) . "./$found_la" ;; - esac - libdir="$save_libdir" - for dep in $dependency_libs; do - case "$dep" in - -L*) - additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \ - && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then - haveit= - if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ - || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - haveit= - for x in $LDFLAGS $LIBINTL; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir" - fi - fi - haveit= - for x in $LDFLAGS $LTLIBINTL; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir" - fi - fi - fi - fi - ;; - -R*) - dir=`echo "X$dep" | sed -e 's/^X-R//'` - if test "$enable_rpath" != no; then - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $dir" - fi - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $dir" - fi - fi - ;; - -l*) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` - ;; - *.la) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` - ;; - *) - LIBINTL="${LIBINTL}${LIBINTL:+ }$dep" - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$dep" - ;; - esac - done - fi - else - LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-l$name" - fi - fi - fi - done - done - if test "X$rpathdirs" != "X"; then - if test -n "$acl_hardcode_libdir_separator"; then - alldirs= - for found_dir in $rpathdirs; do - alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" - done - acl_save_libdir="$libdir" - libdir="$alldirs" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" - else - for found_dir in $rpathdirs; do - acl_save_libdir="$libdir" - libdir="$found_dir" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" - done - fi - fi - if test "X$ltrpathdirs" != "X"; then - for found_dir in $ltrpathdirs; do - LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-R$found_dir" - done - fi - - - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5 -printf %s "checking for GNU gettext in libintl... " >&6; } -if eval test \${$gt_func_gnugettext_libintl+y} -then : - printf %s "(cached) " >&6 -else $as_nop - gt_save_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $INCINTL" - gt_save_LIBS="$LIBS" - LIBS="$LIBS $LIBINTL" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -$gt_revision_test_code -extern int _nl_msg_cat_cntr; -extern -#ifdef __cplusplus -"C" -#endif -const char *_nl_expand_alias (const char *); - -int -main (void) -{ - -bindtextdomain ("", ""); -return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - eval "$gt_func_gnugettext_libintl=yes" -else $as_nop - eval "$gt_func_gnugettext_libintl=no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then - LIBS="$LIBS $LIBICONV" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -#include -$gt_revision_test_code -extern int _nl_msg_cat_cntr; -extern -#ifdef __cplusplus -"C" -#endif -const char *_nl_expand_alias (const char *); - -int -main (void) -{ - -bindtextdomain ("", ""); -return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - LIBINTL="$LIBINTL $LIBICONV" - LTLIBINTL="$LTLIBINTL $LTLIBICONV" - eval "$gt_func_gnugettext_libintl=yes" - -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - fi - CPPFLAGS="$gt_save_CPPFLAGS" - LIBS="$gt_save_LIBS" -fi -eval ac_res=\$$gt_func_gnugettext_libintl - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -printf "%s\n" "$ac_res" >&6; } - fi - - if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \ - || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \ - && test "$PACKAGE" != gettext-runtime \ - && test "$PACKAGE" != gettext-tools; }; then - gt_use_preinstalled_gnugettext=yes - else - LIBINTL= - LTLIBINTL= - INCINTL= - fi - - - - if test -n "$INTL_MACOSX_LIBS"; then - if test "$gt_use_preinstalled_gnugettext" = "yes" \ - || test "$nls_cv_use_gnu_gettext" = "yes"; then - LIBINTL="$LIBINTL $INTL_MACOSX_LIBS" - LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS" - fi - fi - - if test "$gt_use_preinstalled_gnugettext" = "yes" \ - || test "$nls_cv_use_gnu_gettext" = "yes"; then - -printf "%s\n" "#define ENABLE_NLS 1" >>confdefs.h - - else - USE_NLS=no - fi - fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to use NLS" >&5 -printf %s "checking whether to use NLS... " >&6; } - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 -printf "%s\n" "$USE_NLS" >&6; } - if test "$USE_NLS" = "yes"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking where the gettext function comes from" >&5 -printf %s "checking where the gettext function comes from... " >&6; } - if test "$gt_use_preinstalled_gnugettext" = "yes"; then - if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then - gt_source="external libintl" - else - gt_source="libc" - fi - else - gt_source="included intl directory" - fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $gt_source" >&5 -printf "%s\n" "$gt_source" >&6; } - fi - - if test "$USE_NLS" = "yes"; then - - if test "$gt_use_preinstalled_gnugettext" = "yes"; then - if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to link with libintl" >&5 -printf %s "checking how to link with libintl... " >&6; } - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIBINTL" >&5 -printf "%s\n" "$LIBINTL" >&6; } - - for element in $INCINTL; do - haveit= - for x in $CPPFLAGS; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done - - fi - - -printf "%s\n" "#define HAVE_GETTEXT 1" >>confdefs.h - - -printf "%s\n" "#define HAVE_DCGETTEXT 1" >>confdefs.h - - fi - - POSUB=po - fi - - - - INTLLIBS="$LIBINTL" - - - - - - - - -printf "%s\n" "#define GETTEXT_PACKAGE \"$PACKAGE\"" >>confdefs.h - - -# Enable silent rules is available -# Check whether --enable-silent-rules was given. -if test ${enable_silent_rules+y} -then : - enableval=$enable_silent_rules; -fi - -case $enable_silent_rules in # ((( - yes) AM_DEFAULT_VERBOSITY=0;; - no) AM_DEFAULT_VERBOSITY=1;; - *) AM_DEFAULT_VERBOSITY=0;; -esac -am_make=${MAKE-make} -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 -printf %s "checking whether $am_make supports nested variables... " >&6; } -if test ${am_cv_make_support_nested_variables+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if printf "%s\n" 'TRUE=$(BAR$(V)) -BAR0=false -BAR1=true -V=1 -am__doit: - @$(TRUE) -.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then - am_cv_make_support_nested_variables=yes -else - am_cv_make_support_nested_variables=no -fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 -printf "%s\n" "$am_cv_make_support_nested_variables" >&6; } -if test $am_cv_make_support_nested_variables = yes; then - AM_V='$(V)' - AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' -else - AM_V=$AM_DEFAULT_VERBOSITY - AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY -fi -AM_BACKSLASH='\' - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 -printf %s "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } - # Check whether --enable-maintainer-mode was given. -if test ${enable_maintainer_mode+y} -then : - enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval -else $as_nop - USE_MAINTAINER_MODE=yes -fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 -printf "%s\n" "$USE_MAINTAINER_MODE" >&6; } - if test $USE_MAINTAINER_MODE = yes; then - MAINTAINER_MODE_TRUE= - MAINTAINER_MODE_FALSE='#' -else - MAINTAINER_MODE_TRUE='#' - MAINTAINER_MODE_FALSE= -fi - - MAINT=$MAINTAINER_MODE_TRUE - - - - - for flag in \ --pipe \ --Wall \ --Werror=shadow \ --Werror=empty-body \ --Werror=strict-prototypes \ --Werror=missing-prototypes \ --Werror=implicit-function-declaration \ -"-Werror=format=2 -Werror=format-security -Werror=format-nonliteral" \ --Werror=pointer-arith -Werror=init-self \ --Werror=missing-declarations \ --Werror=return-type \ --Werror=overflow \ --Werror=int-conversion \ --Werror=parenthesis \ --Werror=incompatible-pointer-types \ --Werror=misleading-indentation \ --Werror=missing-include-dirs \ -; do - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $CC supports flag $flag in envvar CFLAGS" >&5 -printf %s "checking if $CC supports flag $flag in envvar CFLAGS... " >&6; } -if { as_var=`printf "%s\n" "cc_cv_CFLAGS_$flag" | $as_tr_sh`; eval test \${$as_var+y}; } -then : - printf %s "(cached) " >&6 -else $as_nop - eval "cc_save_CFLAGS='${CFLAGS}'" - eval "CFLAGS='${cc_save_CFLAGS} -Werror `echo "$flag" | sed 's/^-Wno-/-W/'`'" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -int main(void) { return 0; } -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - eval "`printf "%s\n" "cc_cv_CFLAGS_$flag" | $as_tr_sh`='yes'" -else $as_nop - eval "`printf "%s\n" "cc_cv_CFLAGS_$flag" | $as_tr_sh`='no'" -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext - eval "CFLAGS='$cc_save_CFLAGS'" -fi -eval ac_res=\$`printf "%s\n" "cc_cv_CFLAGS_$flag" | $as_tr_sh` - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -printf "%s\n" "$ac_res" >&6; } - - if eval test x$`printf "%s\n" "cc_cv_CFLAGS_$flag" | $as_tr_sh` = xyes -then : - eval "WARN_CFLAGS='${WARN_CFLAGS} $flag'" -fi - - done - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable Valgrind on the unit tests" >&5 -printf %s "checking whether to enable Valgrind on the unit tests... " >&6; } - # Check whether --enable-valgrind was given. -if test ${enable_valgrind+y} -then : - enableval=$enable_valgrind; enable_valgrind=$enableval -else $as_nop - enable_valgrind= -fi - - - # Check for Valgrind. - # Extract the first word of "valgrind", so it can be a program name with args. -set dummy valgrind; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_VALGRIND+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$VALGRIND"; then - ac_cv_prog_VALGRIND="$VALGRIND" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_VALGRIND="valgrind" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -VALGRIND=$ac_cv_prog_VALGRIND -if test -n "$VALGRIND"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $VALGRIND" >&5 -printf "%s\n" "$VALGRIND" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - - if test "$enable_valgrind" = "yes" -a "$VALGRIND" = "" -then : - - as_fn_error $? "Could not find valgrind; either install it or reconfigure with --disable-valgrind" "$LINENO" 5 - -fi - if test "$enable_valgrind" != "no" -then : - enable_valgrind=yes -fi - - if test "$enable_valgrind" = "yes"; then - VALGRIND_ENABLED_TRUE= - VALGRIND_ENABLED_FALSE='#' -else - VALGRIND_ENABLED_TRUE='#' - VALGRIND_ENABLED_FALSE= -fi - - VALGRIND_ENABLED=$enable_valgrind - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_valgrind" >&5 -printf "%s\n" "$enable_valgrind" >&6; } - - # Check for Valgrind tools we care about. - #m4_define([valgrind_tool_list],[[memcheck], [helgrind], [drd], [exp-sgcheck]]) - # I trimmed this, because we fail on all the thread stuff - - - if test "$VALGRIND" != "" -then : - - - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for Valgrind tool memcheck" >&5 -printf %s "checking for Valgrind tool memcheck... " >&6; } -if test ${ax_cv_valgrind_tool_memcheck+y} -then : - printf %s "(cached) " >&6 -else $as_nop - - ax_cv_valgrind_tool_memcheck= - if `$VALGRIND --tool=memcheck --help >/dev/null 2>&1` -then : - - ax_cv_valgrind_tool_memcheck="memcheck" - -fi - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ax_cv_valgrind_tool_memcheck" >&5 -printf "%s\n" "$ax_cv_valgrind_tool_memcheck" >&6; } - - VALGRIND_HAVE_TOOL_memcheck=$ax_cv_valgrind_tool_memcheck - - - -fi - -VALGRIND_CHECK_RULES=' -# Valgrind check -# -# Optional: -# - VALGRIND_SUPPRESSIONS_FILES: Space-separated list of Valgrind suppressions -# files to load. (Default: empty) -# - VALGRIND_FLAGS: General flags to pass to all Valgrind tools. -# (Default: --num-callers=30) -# - VALGRIND_$toolname_FLAGS: Flags to pass to Valgrind $toolname (one of: -# memcheck, helgrind, drd, sgcheck). (Default: various) - -# Optional variables -VALGRIND_SUPPRESSIONS ?= $(addprefix --suppressions=,$(VALGRIND_SUPPRESSIONS_FILES)) -VALGRIND_FLAGS ?= --num-callers=30 -VALGRIND_memcheck_FLAGS ?= --leak-check=full --show-reachable=no -VALGRIND_helgrind_FLAGS ?= --history-level=approx -VALGRIND_drd_FLAGS ?= -VALGRIND_sgcheck_FLAGS ?= - -# Internal use -valgrind_tools = memcheck helgrind drd sgcheck -valgrind_log_files = $(addprefix test-suite-,$(addsuffix .log,$(valgrind_tools))) - -valgrind_memcheck_flags = --tool=memcheck $(VALGRIND_memcheck_FLAGS) -valgrind_helgrind_flags = --tool=helgrind $(VALGRIND_helgrind_FLAGS) -valgrind_drd_flags = --tool=drd $(VALGRIND_drd_FLAGS) -valgrind_sgcheck_flags = --tool=exp-sgcheck $(VALGRIND_sgcheck_FLAGS) - -valgrind_quiet = $(valgrind_quiet_$(V)) -valgrind_quiet_ = $(valgrind_quiet_$(AM_DEFAULT_VERBOSITY)) -valgrind_quiet_0 = --quiet - -# Support running with and without libtool. -ifneq ($(LIBTOOL),) -valgrind_lt = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=execute -else -valgrind_lt = -endif - -# Use recursive makes in order to ignore errors during check -check-valgrind: -ifeq ($(VALGRIND_ENABLED),yes) - -$(foreach tool,$(valgrind_tools), \ - $(if $(VALGRIND_HAVE_TOOL_$(tool))$(VALGRIND_HAVE_TOOL_exp_$(tool)), \ - $(MAKE) $(AM_MAKEFLAGS) -k check-valgrind-tool VALGRIND_TOOL=$(tool); \ - ) \ - ) -else - @echo "Need to reconfigure with --enable-valgrind" -endif - -# Valgrind running -VALGRIND_TESTS_ENVIRONMENT = \ - $(TESTS_ENVIRONMENT) \ - env VALGRIND=$(VALGRIND) \ - G_SLICE=always-malloc,debug-blocks \ - G_DEBUG=fatal-warnings,fatal-criticals,gc-friendly - -VALGRIND_LOG_COMPILER = \ - $(valgrind_lt) \ - $(VALGRIND) $(VALGRIND_SUPPRESSIONS) --error-exitcode=1 $(VALGRIND_FLAGS) - -check-valgrind-tool: -ifeq ($(VALGRIND_ENABLED),yes) - $(MAKE) check-TESTS \ - TESTS_ENVIRONMENT="$(VALGRIND_TESTS_ENVIRONMENT)" \ - LOG_COMPILER="$(VALGRIND_LOG_COMPILER)" \ - LOG_FLAGS="$(valgrind_$(VALGRIND_TOOL)_flags)" \ - TEST_SUITE_LOG=test-suite-$(VALGRIND_TOOL).log -else - @echo "Need to reconfigure with --enable-valgrind" -endif - -DISTCHECK_CONFIGURE_FLAGS ?= -DISTCHECK_CONFIGURE_FLAGS += --disable-valgrind - -MOSTLYCLEANFILES ?= -MOSTLYCLEANFILES += $(valgrind_log_files) - -.PHONY: check-valgrind check-valgrind-tool -' - - - - - - - - - - - - -if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. -set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_PKG_CONFIG+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $PKG_CONFIG in - [\\/]* | ?:[\\/]*) - ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_path_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -PKG_CONFIG=$ac_cv_path_PKG_CONFIG -if test -n "$PKG_CONFIG"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 -printf "%s\n" "$PKG_CONFIG" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -fi -if test -z "$ac_cv_path_PKG_CONFIG"; then - ac_pt_PKG_CONFIG=$PKG_CONFIG - # Extract the first word of "pkg-config", so it can be a program name with args. -set dummy pkg-config; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_ac_pt_PKG_CONFIG+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $ac_pt_PKG_CONFIG in - [\\/]* | ?:[\\/]*) - ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_path_ac_pt_PKG_CONFIG="$as_dir$ac_word$ac_exec_ext" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG -if test -n "$ac_pt_PKG_CONFIG"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 -printf "%s\n" "$ac_pt_PKG_CONFIG" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - if test "x$ac_pt_PKG_CONFIG" = x; then - PKG_CONFIG="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - PKG_CONFIG=$ac_pt_PKG_CONFIG - fi -else - PKG_CONFIG="$ac_cv_path_PKG_CONFIG" -fi - -fi -if test -n "$PKG_CONFIG"; then - _pkg_min_version=0.24 - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 -printf %s "checking pkg-config is at least version $_pkg_min_version... " >&6; } - if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - PKG_CONFIG="" - fi -fi - - -# Check whether --with-privileged_group was given. -if test ${with_privileged_group+y} -then : - withval=$with_privileged_group; with_privileged_group="$withval" -else $as_nop - with_privileged_group=wheel -fi - -PRIVILEGED_GROUP=$with_privileged_group - - - -# Check whether --with-dbus_service_dir was given. -if test ${with_dbus_service_dir+y} -then : - withval=$with_dbus_service_dir; with_dbus_service_dir="$withval" -else $as_nop - with_dbus_service_dir=$datadir/dbus-1/services -fi - -DBUS_SERVICE_DIR=$with_dbus_service_dir - - - -# Check whether --with-dbus_config_dir was given. -if test ${with_dbus_config_dir+y} -then : - withval=$with_dbus_config_dir; with_dbus_config_dir="$withval" -else $as_nop - with_dbus_config_dir=${sysconfdir}/dbus-1/system.d -fi - -DBUS_CONFIG_DIR=$with_dbus_config_dir - - - -# Check whether --with-systemduserunitdir was given. -if test ${with_systemduserunitdir+y} -then : - withval=$with_systemduserunitdir; -else $as_nop - with_systemduserunitdir='${prefix}/lib/systemd/user' -fi - -systemduserunitdir=$with_systemduserunitdir - - - -# Check whether --with-systemdsystemunitdir was given. -if test ${with_systemdsystemunitdir+y} -then : - withval=$with_systemdsystemunitdir; -else $as_nop - with_systemdsystemunitdir='${prefix}/lib/systemd/system' -fi - -systemdsystemunitdir=$with_systemdsystemunitdir - - - -# Check whether --with-systemdsystemenvgendir was given. -if test ${with_systemdsystemenvgendir+y} -then : - withval=$with_systemdsystemenvgendir; -else $as_nop - with_systemdsystemenvgendir='${prefix}/lib/systemd/system-environment-generators' -fi - -systemdsystemenvgendir=$with_systemdsystemenvgendir - - - -# Check whether --with-systemduserenvgendir was given. -if test ${with_systemduserenvgendir+y} -then : - withval=$with_systemduserenvgendir; -else $as_nop - with_systemduserenvgendir='${prefix}/lib/systemd/user-environment-generators' -fi - -systemduserenvgendir=$with_systemduserenvgendir - - - -# Check whether --with-system_fonts_dir was given. -if test ${with_system_fonts_dir+y} -then : - withval=$with_system_fonts_dir; with_system_fonts_dir="$withval" -else $as_nop - with_system_fonts_dir=/usr/share/fonts -fi - -SYSTEM_FONTS_DIR=$with_system_fonts_dir - - - -# Check whether --with-system_font_cache_dirs was given. -if test ${with_system_font_cache_dirs+y} -then : - withval=$with_system_font_cache_dirs; with_system_font_cache_dirs="$withval" -else $as_nop - with_system_font_cache_dirs=/var/cache/fontconfig:/usr/lib/fontconfig/cache -fi - -SYSTEM_FONT_CACHE_DIRS=$with_system_font_cache_dirs - - - -# Check whether --with-profile_dir was given. -if test ${with_profile_dir+y} -then : - withval=$with_profile_dir; with_profile_dir="$withval" -else $as_nop - with_profile_dir=${sysconfdir}/profile.d -fi - -PROFILE_DIR=$with_profile_dir - - - - -# Check whether --with-system-bubblewrap was given. -if test ${with_system_bubblewrap+y} -then : - withval=$with_system_bubblewrap; BWRAP="$withval" -else $as_nop - BWRAP="${BWRAP:-false}" -fi - -CAP_LIB= -case $BWRAP in #( - yes) : - BWRAP=bwrap ;; #( - no) : - BWRAP=false ;; #( - auto) : - # Extract the first word of "bwrap", so it can be a program name with args. -set dummy bwrap; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_BWRAP+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$BWRAP"; then - ac_cv_prog_BWRAP="$BWRAP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_BWRAP="bwrap" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_BWRAP" && ac_cv_prog_BWRAP="false" -fi -fi -BWRAP=$ac_cv_prog_BWRAP -if test -n "$BWRAP"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $BWRAP" >&5 -printf "%s\n" "$BWRAP" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - ;; #( - *) : - ;; -esac -if test "x$BWRAP" != xfalse; then - BWRAP_VERSION=`$BWRAP --version | sed 's,.*\ \(0-9*\.0-9*\.0-9*\)$,\1,'` - - - - # Used to indicate true or false condition - ax_compare_version=false - - # Convert the two version strings to be compared into a format that - # allows a simple string comparison. The end result is that a version - # string of the form 1.12.5-r617 will be converted to the form - # 0001001200050617. In other words, each number is zero padded to four - # digits, and non digits are removed. - - ax_compare_version_A=`echo "$SYSTEM_BWRAP_REQS" | sed -e 's/\([0-9]*\)/Z\1Z/g' \ - -e 's/Z\([0-9]\)Z/Z0\1Z/g' \ - -e 's/Z\([0-9][0-9]\)Z/Z0\1Z/g' \ - -e 's/Z\([0-9][0-9][0-9]\)Z/Z0\1Z/g' \ - -e 's/[^0-9]//g'` - - - ax_compare_version_B=`echo "$BWRAP_VERSION" | sed -e 's/\([0-9]*\)/Z\1Z/g' \ - -e 's/Z\([0-9]\)Z/Z0\1Z/g' \ - -e 's/Z\([0-9][0-9]\)Z/Z0\1Z/g' \ - -e 's/Z\([0-9][0-9][0-9]\)Z/Z0\1Z/g' \ - -e 's/[^0-9]//g'` - - - ax_compare_version=`echo "x$ax_compare_version_A -x$ax_compare_version_B" | sed 's/^ *//' | sort | sed "s/x${ax_compare_version_A}/false/;s/x${ax_compare_version_B}/true/;1q"` - - - - if test "$ax_compare_version" = "true" ; then - as_fn_error $? "You need at least version $SYSTEM_BWRAP_REQS of bubblewrap to use the system installed version" "$LINENO" 5 - fi - - if $BWRAP --help | grep '[-]-bind-fd' >/dev/null -then : - : -else $as_nop - as_fn_error $? "$BWRAP does not list required option --bind-fd in its --help" "$LINENO" 5 -fi - if true; then - WITH_SYSTEM_BWRAP_TRUE= - WITH_SYSTEM_BWRAP_FALSE='#' -else - WITH_SYSTEM_BWRAP_TRUE='#' - WITH_SYSTEM_BWRAP_FALSE= -fi - -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for cap_from_text in -lcap" >&5 -printf %s "checking for cap_from_text in -lcap... " >&6; } -if test ${ac_cv_lib_cap_cap_from_text+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_check_lib_save_LIBS=$LIBS -LIBS="-lcap $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -char cap_from_text (); -int -main (void) -{ -return cap_from_text (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO" -then : - ac_cv_lib_cap_cap_from_text=yes -else $as_nop - ac_cv_lib_cap_cap_from_text=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_cap_cap_from_text" >&5 -printf "%s\n" "$ac_cv_lib_cap_cap_from_text" >&6; } -if test "x$ac_cv_lib_cap_cap_from_text" = xyes -then : - CAP_LIB=-lcap -fi - - if test "$ac_cv_lib_cap_cap_from_text" != "yes"; then - as_fn_error $? "*** libcap needed by bubblewrap but not found" "$LINENO" 5 - fi - - if false; then - WITH_SYSTEM_BWRAP_TRUE= - WITH_SYSTEM_BWRAP_FALSE='#' -else - WITH_SYSTEM_BWRAP_TRUE='#' - WITH_SYSTEM_BWRAP_FALSE= -fi - -fi - - - - -# Check whether --with-system-dbus-proxy was given. -if test ${with_system_dbus_proxy+y} -then : - withval=$with_system_dbus_proxy; DBUS_PROXY="$withval" -else $as_nop - DBUS_PROXY="${DBUS_PROXY:-false}" -fi - -case $DBUS_PROXY in #( - yes) : - DBUS_PROXY=xdg-dbus-proxy ;; #( - no) : - DBUS_PROXY=false ;; #( - auto) : - # Extract the first word of "xdg-dbus-proxy", so it can be a program name with args. -set dummy xdg-dbus-proxy; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_DBUS_PROXY+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$DBUS_PROXY"; then - ac_cv_prog_DBUS_PROXY="$DBUS_PROXY" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_DBUS_PROXY="xdg-dbus-proxy" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_DBUS_PROXY" && ac_cv_prog_DBUS_PROXY="false" -fi -fi -DBUS_PROXY=$ac_cv_prog_DBUS_PROXY -if test -n "$DBUS_PROXY"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DBUS_PROXY" >&5 -printf "%s\n" "$DBUS_PROXY" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - ;; #( - *) : - ;; -esac -if test "x$DBUS_PROXY" != xfalse; then - DBUS_PROXY_VERSION=$( $DBUS_PROXY --version | sed 's,.*\ \([0-9]*\.[0-9]*\.[0-9]*\)$,\1,') - - - - # Used to indicate true or false condition - ax_compare_version=false - - # Convert the two version strings to be compared into a format that - # allows a simple string comparison. The end result is that a version - # string of the form 1.12.5-r617 will be converted to the form - # 0001001200050617. In other words, each number is zero padded to four - # digits, and non digits are removed. - - ax_compare_version_A=`echo "$SYSTEM_DBUS_PROXY_REQS" | sed -e 's/\([0-9]*\)/Z\1Z/g' \ - -e 's/Z\([0-9]\)Z/Z0\1Z/g' \ - -e 's/Z\([0-9][0-9]\)Z/Z0\1Z/g' \ - -e 's/Z\([0-9][0-9][0-9]\)Z/Z0\1Z/g' \ - -e 's/[^0-9]//g'` - - - ax_compare_version_B=`echo "$DBUS_PROXY_VERSION" | sed -e 's/\([0-9]*\)/Z\1Z/g' \ - -e 's/Z\([0-9]\)Z/Z0\1Z/g' \ - -e 's/Z\([0-9][0-9]\)Z/Z0\1Z/g' \ - -e 's/Z\([0-9][0-9][0-9]\)Z/Z0\1Z/g' \ - -e 's/[^0-9]//g'` - - - ax_compare_version=`echo "x$ax_compare_version_A -x$ax_compare_version_B" | sed 's/^ *//' | sort | sed "s/x${ax_compare_version_A}/false/;s/x${ax_compare_version_B}/true/;1q"` - - - - if test "$ax_compare_version" = "true" ; then - as_fn_error $? "You need at least version $SYSTEM_DBUS_PROXY_REQS of xdg-dbus-proxy to use the system installed version (have $DBUS_PROXY_VERSION)" "$LINENO" 5 - fi - - if true; then - WITH_SYSTEM_DBUS_PROXY_TRUE= - WITH_SYSTEM_DBUS_PROXY_FALSE='#' -else - WITH_SYSTEM_DBUS_PROXY_TRUE='#' - WITH_SYSTEM_DBUS_PROXY_FALSE= -fi - -else - if false; then - WITH_SYSTEM_DBUS_PROXY_TRUE= - WITH_SYSTEM_DBUS_PROXY_FALSE='#' -else - WITH_SYSTEM_DBUS_PROXY_TRUE='#' - WITH_SYSTEM_DBUS_PROXY_FALSE= -fi - -fi - - -ac_fn_c_check_func "$LINENO" "fdwalk" "ac_cv_func_fdwalk" -if test "x$ac_cv_func_fdwalk" = xyes -then : - printf "%s\n" "#define HAVE_FDWALK 1" >>confdefs.h - -fi - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5 -printf %s "checking for $CC options needed to detect all undeclared functions... " >&6; } -if test ${ac_cv_c_undeclared_builtin_options+y} -then : - printf %s "(cached) " >&6 -else $as_nop - ac_save_CFLAGS=$CFLAGS - ac_cv_c_undeclared_builtin_options='cannot detect' - for ac_arg in '' -fno-builtin; do - CFLAGS="$ac_save_CFLAGS $ac_arg" - # This test program should *not* compile successfully. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ -(void) strchr; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - -else $as_nop - # This test program should compile successfully. - # No library function is consistently available on - # freestanding implementations, so test against a dummy - # declaration. Include always-available headers on the - # off chance that they somehow elicit warnings. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#include -extern void ac_decl (int, char *); - -int -main (void) -{ -(void) ac_decl (0, (char *) 0); - (void) ac_decl; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - if test x"$ac_arg" = x -then : - ac_cv_c_undeclared_builtin_options='none needed' -else $as_nop - ac_cv_c_undeclared_builtin_options=$ac_arg -fi - break -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - done - CFLAGS=$ac_save_CFLAGS - -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_undeclared_builtin_options" >&5 -printf "%s\n" "$ac_cv_c_undeclared_builtin_options" >&6; } - case $ac_cv_c_undeclared_builtin_options in #( - 'cannot detect') : - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot make $CC report undeclared builtins -See \`config.log' for more details" "$LINENO" 5; } ;; #( - 'none needed') : - ac_c_undeclared_builtin_options='' ;; #( - *) : - ac_c_undeclared_builtin_options=$ac_cv_c_undeclared_builtin_options ;; -esac - - -ac_fn_check_decl "$LINENO" "renameat2" "ac_cv_have_decl_renameat2" " -#include -#include -#include -#include -#include -#include -#include -#include -#include - -" "$ac_c_undeclared_builtin_options" "CFLAGS" -if test "x$ac_cv_have_decl_renameat2" = xyes -then : - ac_have_decl=1 -else $as_nop - ac_have_decl=0 -fi -printf "%s\n" "#define HAVE_DECL_RENAMEAT2 $ac_have_decl" >>confdefs.h -ac_fn_check_decl "$LINENO" "memfd_create" "ac_cv_have_decl_memfd_create" " -#include -#include -#include -#include -#include -#include -#include -#include -#include - -" "$ac_c_undeclared_builtin_options" "CFLAGS" -if test "x$ac_cv_have_decl_memfd_create" = xyes -then : - ac_have_decl=1 -else $as_nop - ac_have_decl=0 -fi -printf "%s\n" "#define HAVE_DECL_MEMFD_CREATE $ac_have_decl" >>confdefs.h -ac_fn_check_decl "$LINENO" "copy_file_range" "ac_cv_have_decl_copy_file_range" " -#include -#include -#include -#include -#include -#include -#include -#include -#include - -" "$ac_c_undeclared_builtin_options" "CFLAGS" -if test "x$ac_cv_have_decl_copy_file_range" = xyes -then : - ac_have_decl=1 -else $as_nop - ac_have_decl=0 -fi -printf "%s\n" "#define HAVE_DECL_COPY_FILE_RANGE $ac_have_decl" >>confdefs.h - - -# Check whether --enable-otmpfile was given. -if test ${enable_otmpfile+y} -then : - enableval=$enable_otmpfile; -else $as_nop - enable_otmpfile=yes -fi - -if test $enable_otmpfile = yes -then : - -else $as_nop - - -printf "%s\n" "#define DISABLE_OTMPFILE 1" >>confdefs.h - -fi - -# Check whether --enable-wrpseudo-compat was given. -if test ${enable_wrpseudo_compat+y} -then : - enableval=$enable_wrpseudo_compat; -else $as_nop - enable_wrpseudo_compat=no -fi - -if test $enable_wrpseudo_compat = no -then : - -else $as_nop - - -printf "%s\n" "#define ENABLE_WRPSEUDO_COMPAT 1" >>confdefs.h - -fi - - - -ac_fn_c_check_header_compile "$LINENO" "sys/xattr.h" "ac_cv_header_sys_xattr_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_xattr_h" = xyes -then : - -else $as_nop - as_fn_error $? "You must have sys/xattr.h from glibc" "$LINENO" 5 -fi - -ac_fn_c_check_header_compile "$LINENO" "sys/capability.h" "ac_cv_header_sys_capability_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_capability_h" = xyes -then : - have_caps=yes -else $as_nop - as_fn_error $? "sys/capability.h header not found" "$LINENO" 5 -fi - - -GLIB_MKENUMS=`$PKG_CONFIG --variable glib_mkenums glib-2.0` - -GLIB_COMPILE_RESOURCES=`$PKG_CONFIG --variable glib_compile_resources gio-2.0` - -GDBUS_CODEGEN=`$PKG_CONFIG --variable gdbus_codegen gio-2.0` - - -POLKIT_GOBJECT_REQUIRED=0.98 - - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libarchive >= 2.8.0" >&5 -printf %s "checking for libarchive >= 2.8.0... " >&6; } - -if test -n "$ARCHIVE_CFLAGS"; then - pkg_cv_ARCHIVE_CFLAGS="$ARCHIVE_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libarchive >= 2.8.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libarchive >= 2.8.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_ARCHIVE_CFLAGS=`$PKG_CONFIG --cflags "libarchive >= 2.8.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$ARCHIVE_LIBS"; then - pkg_cv_ARCHIVE_LIBS="$ARCHIVE_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libarchive >= 2.8.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libarchive >= 2.8.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_ARCHIVE_LIBS=`$PKG_CONFIG --libs "libarchive >= 2.8.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - ARCHIVE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libarchive >= 2.8.0" 2>&1` - else - ARCHIVE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libarchive >= 2.8.0" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$ARCHIVE_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (libarchive >= 2.8.0) were not met: - -$ARCHIVE_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables ARCHIVE_CFLAGS -and ARCHIVE_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables ARCHIVE_CFLAGS -and ARCHIVE_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - ARCHIVE_CFLAGS=$pkg_cv_ARCHIVE_CFLAGS - ARCHIVE_LIBS=$pkg_cv_ARCHIVE_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -fi - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for glib-2.0 >= $GLIB_REQS gio-2.0 gio-unix-2.0" >&5 -printf %s "checking for glib-2.0 >= $GLIB_REQS gio-2.0 gio-unix-2.0... " >&6; } - -if test -n "$BASE_CFLAGS"; then - pkg_cv_BASE_CFLAGS="$BASE_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_REQS gio-2.0 gio-unix-2.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_REQS gio-2.0 gio-unix-2.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_BASE_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= $GLIB_REQS gio-2.0 gio-unix-2.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$BASE_LIBS"; then - pkg_cv_BASE_LIBS="$BASE_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_REQS gio-2.0 gio-unix-2.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_REQS gio-2.0 gio-unix-2.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_BASE_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= $GLIB_REQS gio-2.0 gio-unix-2.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - BASE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "glib-2.0 >= $GLIB_REQS gio-2.0 gio-unix-2.0" 2>&1` - else - BASE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "glib-2.0 >= $GLIB_REQS gio-2.0 gio-unix-2.0" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$BASE_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (glib-2.0 >= $GLIB_REQS gio-2.0 gio-unix-2.0) were not met: - -$BASE_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables BASE_CFLAGS -and BASE_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables BASE_CFLAGS -and BASE_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - BASE_CFLAGS=$pkg_cv_BASE_CFLAGS - BASE_LIBS=$pkg_cv_BASE_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -fi - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libxml-2.0 >= 2.4" >&5 -printf %s "checking for libxml-2.0 >= 2.4... " >&6; } - -if test -n "$XML_CFLAGS"; then - pkg_cv_XML_CFLAGS="$XML_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libxml-2.0 >= 2.4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libxml-2.0 >= 2.4") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_XML_CFLAGS=`$PKG_CONFIG --cflags "libxml-2.0 >= 2.4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$XML_LIBS"; then - pkg_cv_XML_LIBS="$XML_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libxml-2.0 >= 2.4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libxml-2.0 >= 2.4") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_XML_LIBS=`$PKG_CONFIG --libs "libxml-2.0 >= 2.4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - XML_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libxml-2.0 >= 2.4" 2>&1` - else - XML_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libxml-2.0 >= 2.4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$XML_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (libxml-2.0 >= 2.4) were not met: - -$XML_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables XML_CFLAGS -and XML_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables XML_CFLAGS -and XML_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - XML_CFLAGS=$pkg_cv_XML_CFLAGS - XML_LIBS=$pkg_cv_XML_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -fi - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libzstd >= 0.8.1" >&5 -printf %s "checking for libzstd >= 0.8.1... " >&6; } - -if test -n "$ZSTD_CFLAGS"; then - pkg_cv_ZSTD_CFLAGS="$ZSTD_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libzstd >= 0.8.1\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libzstd >= 0.8.1") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_ZSTD_CFLAGS=`$PKG_CONFIG --cflags "libzstd >= 0.8.1" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$ZSTD_LIBS"; then - pkg_cv_ZSTD_LIBS="$ZSTD_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libzstd >= 0.8.1\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libzstd >= 0.8.1") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_ZSTD_LIBS=`$PKG_CONFIG --libs "libzstd >= 0.8.1" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - ZSTD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libzstd >= 0.8.1" 2>&1` - else - ZSTD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libzstd >= 0.8.1" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$ZSTD_PKG_ERRORS" >&5 - - have_zstd=no -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - have_zstd=no -else - ZSTD_CFLAGS=$pkg_cv_ZSTD_CFLAGS - ZSTD_LIBS=$pkg_cv_ZSTD_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - have_zstd=yes -fi -if test $have_zstd = yes; then - -printf "%s\n" "#define HAVE_ZSTD 1" >>confdefs.h - -fi - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dconf >= 0.26" >&5 -printf %s "checking for dconf >= 0.26... " >&6; } - -if test -n "$DCONF_CFLAGS"; then - pkg_cv_DCONF_CFLAGS="$DCONF_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"dconf >= 0.26\""; } >&5 - ($PKG_CONFIG --exists --print-errors "dconf >= 0.26") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_DCONF_CFLAGS=`$PKG_CONFIG --cflags "dconf >= 0.26" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$DCONF_LIBS"; then - pkg_cv_DCONF_LIBS="$DCONF_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"dconf >= 0.26\""; } >&5 - ($PKG_CONFIG --exists --print-errors "dconf >= 0.26") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_DCONF_LIBS=`$PKG_CONFIG --libs "dconf >= 0.26" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - DCONF_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "dconf >= 0.26" 2>&1` - else - DCONF_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "dconf >= 0.26" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$DCONF_PKG_ERRORS" >&5 - - have_dconf=no -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - have_dconf=no -else - DCONF_CFLAGS=$pkg_cv_DCONF_CFLAGS - DCONF_LIBS=$pkg_cv_DCONF_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - have_dconf=yes -fi -if test $have_dconf = yes; then - -printf "%s\n" "#define HAVE_DCONF 1" >>confdefs.h - -fi - -# Check whether --with-systemd was given. -if test ${with_systemd+y} -then : - withval=$with_systemd; -else $as_nop - with_systemd=auto -fi - -if test "x$with_systemd" != "xno"; then - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libsystemd" >&5 -printf %s "checking for libsystemd... " >&6; } - -if test -n "$SYSTEMD_CFLAGS"; then - pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libsystemd") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_SYSTEMD_CFLAGS=`$PKG_CONFIG --cflags "libsystemd" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$SYSTEMD_LIBS"; then - pkg_cv_SYSTEMD_LIBS="$SYSTEMD_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libsystemd") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_SYSTEMD_LIBS=`$PKG_CONFIG --libs "libsystemd" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libsystemd" 2>&1` - else - SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libsystemd" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$SYSTEMD_PKG_ERRORS" >&5 - - have_libsystemd=no -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - have_libsystemd=no -else - SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS - SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - have_libsystemd=yes -fi - if test $have_libsystemd = yes; then - -printf "%s\n" "#define HAVE_LIBSYSTEMD 1" >>confdefs.h - - elif test "x$with_systemd" == "xyes"; then - as_fn_error $? "systemd was requested but it could not be found" "$LINENO" 5 - fi -else - have_libsystemd=no -fi - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for malcontent-0 >= 0.4.0" >&5 -printf %s "checking for malcontent-0 >= 0.4.0... " >&6; } - -if test -n "$MALCONTENT_CFLAGS"; then - pkg_cv_MALCONTENT_CFLAGS="$MALCONTENT_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"malcontent-0 >= 0.4.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "malcontent-0 >= 0.4.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_MALCONTENT_CFLAGS=`$PKG_CONFIG --cflags "malcontent-0 >= 0.4.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$MALCONTENT_LIBS"; then - pkg_cv_MALCONTENT_LIBS="$MALCONTENT_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"malcontent-0 >= 0.4.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "malcontent-0 >= 0.4.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_MALCONTENT_LIBS=`$PKG_CONFIG --libs "malcontent-0 >= 0.4.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - MALCONTENT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "malcontent-0 >= 0.4.0" 2>&1` - else - MALCONTENT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "malcontent-0 >= 0.4.0" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$MALCONTENT_PKG_ERRORS" >&5 - - have_libmalcontent=no -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - have_libmalcontent=no -else - MALCONTENT_CFLAGS=$pkg_cv_MALCONTENT_CFLAGS - MALCONTENT_LIBS=$pkg_cv_MALCONTENT_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - have_libmalcontent=yes -fi -if test "$have_libmalcontent" = "yes" -then : - - -printf "%s\n" "#define HAVE_LIBMALCONTENT 1" >>confdefs.h - - -fi - if test "$have_libmalcontent" = "yes"; then - HAVE_LIBMALCONTENT_TRUE= - HAVE_LIBMALCONTENT_FALSE='#' -else - HAVE_LIBMALCONTENT_TRUE='#' - HAVE_LIBMALCONTENT_FALSE= -fi - - - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for glib-2.0 >= 2.60" >&5 -printf %s "checking for glib-2.0 >= 2.60... " >&6; } - -if test -n "$GLIB260_CFLAGS"; then - pkg_cv_GLIB260_CFLAGS="$GLIB260_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.60\""; } >&5 - ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.60") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_GLIB260_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.60" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$GLIB260_LIBS"; then - pkg_cv_GLIB260_LIBS="$GLIB260_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.60\""; } >&5 - ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.60") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_GLIB260_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.60" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - GLIB260_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "glib-2.0 >= 2.60" 2>&1` - else - GLIB260_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "glib-2.0 >= 2.60" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$GLIB260_PKG_ERRORS" >&5 - - true -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - true -else - GLIB260_CFLAGS=$pkg_cv_GLIB260_CFLAGS - GLIB260_LIBS=$pkg_cv_GLIB260_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -printf "%s\n" "#define GLIB_VERSION_MIN_REQUIRED GLIB_VERSION_2_60" >>confdefs.h - -fi - -save_LIBS=$LIBS -LIBS=$ARCHIVE_LIBS -ac_fn_c_check_func "$LINENO" "archive_read_support_filter_all" "ac_cv_func_archive_read_support_filter_all" -if test "x$ac_cv_func_archive_read_support_filter_all" = xyes -then : - printf "%s\n" "#define HAVE_ARCHIVE_READ_SUPPORT_FILTER_ALL 1" >>confdefs.h - -fi - -LIBS=$save_LIBS - -CURL_DEPENDENCY=7.29.0 - -# Check whether --with-curl was given. -if test ${with_curl+y} -then : - withval=$with_curl; -else $as_nop - with_curl=yes -fi - -if test x$with_curl != xno -then : - - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libcurl >= $CURL_DEPENDENCY" >&5 -printf %s "checking for libcurl >= $CURL_DEPENDENCY... " >&6; } - -if test -n "$CURL_CFLAGS"; then - pkg_cv_CURL_CFLAGS="$CURL_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcurl >= \$CURL_DEPENDENCY\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libcurl >= $CURL_DEPENDENCY") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_CURL_CFLAGS=`$PKG_CONFIG --cflags "libcurl >= $CURL_DEPENDENCY" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$CURL_LIBS"; then - pkg_cv_CURL_LIBS="$CURL_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcurl >= \$CURL_DEPENDENCY\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libcurl >= $CURL_DEPENDENCY") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_CURL_LIBS=`$PKG_CONFIG --libs "libcurl >= $CURL_DEPENDENCY" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - CURL_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libcurl >= $CURL_DEPENDENCY" 2>&1` - else - CURL_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libcurl >= $CURL_DEPENDENCY" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$CURL_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (libcurl >= $CURL_DEPENDENCY) were not met: - -$CURL_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables CURL_CFLAGS -and CURL_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables CURL_CFLAGS -and CURL_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - CURL_CFLAGS=$pkg_cv_CURL_CFLAGS - CURL_LIBS=$pkg_cv_CURL_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -fi - with_curl=yes - http_backend=curl - -printf "%s\n" "#define HAVE_CURL 1" >>confdefs.h - - -else $as_nop - - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libsoup-2.4" >&5 -printf %s "checking for libsoup-2.4... " >&6; } - -if test -n "$SOUP_CFLAGS"; then - pkg_cv_SOUP_CFLAGS="$SOUP_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsoup-2.4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libsoup-2.4") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_SOUP_CFLAGS=`$PKG_CONFIG --cflags "libsoup-2.4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$SOUP_LIBS"; then - pkg_cv_SOUP_LIBS="$SOUP_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsoup-2.4\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libsoup-2.4") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_SOUP_LIBS=`$PKG_CONFIG --libs "libsoup-2.4" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - SOUP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libsoup-2.4" 2>&1` - else - SOUP_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libsoup-2.4" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$SOUP_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (libsoup-2.4) were not met: - -$SOUP_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables SOUP_CFLAGS -and SOUP_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables SOUP_CFLAGS -and SOUP_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - SOUP_CFLAGS=$pkg_cv_SOUP_CFLAGS - SOUP_LIBS=$pkg_cv_SOUP_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -fi - -printf "%s\n" "#define HAVE_SOUP 1" >>confdefs.h - - http_backend=soup - -fi - if test x$with_curl != xno; then - USE_CURL_TRUE= - USE_CURL_FALSE='#' -else - USE_CURL_TRUE='#' - USE_CURL_FALSE= -fi - - if test x$with_curl == xno; then - USE_SOUP_TRUE= - USE_SOUP_FALSE='#' -else - USE_SOUP_TRUE='#' - USE_SOUP_FALSE= -fi - - - -LIBGPGME_DEPENDENCY="1.1.8" - # Extract the first word of "gpgrt-config", so it can be a program name with args. -set dummy gpgrt-config; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_GPGRT_CONFIG+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $GPGRT_CONFIG in - [\\/]* | ?:[\\/]*) - ac_cv_path_GPGRT_CONFIG="$GPGRT_CONFIG" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -as_dummy="$prefix/bin:$PATH" -for as_dir in $as_dummy -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_path_GPGRT_CONFIG="$as_dir$ac_word$ac_exec_ext" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_path_GPGRT_CONFIG" && ac_cv_path_GPGRT_CONFIG="no" - ;; -esac -fi -GPGRT_CONFIG=$ac_cv_path_GPGRT_CONFIG -if test -n "$GPGRT_CONFIG"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GPGRT_CONFIG" >&5 -printf "%s\n" "$GPGRT_CONFIG" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - if test "$GPGRT_CONFIG" != "no"; then - # Determine gpgrt_libdir - # - # Get the prefix of gpgrt-config assuming it's something like: - # /bin/gpgrt-config - gpgrt_prefix=${GPGRT_CONFIG%/*/*} - possible_libdir1=${gpgrt_prefix}/lib - # Determine by using system libdir-format with CC, it's like: - # Normal style: /usr/lib - # GNU cross style: /usr//lib - # Debian style: /usr/lib/ - # Fedora/openSUSE style: /usr/lib, /usr/lib32 or /usr/lib64 - # It is assumed that CC is specified to the one of host on cross build. - if libdir_candidates=$(${CC:-cc} -print-search-dirs | \ - sed -n -e "/^libraries/{s/libraries: =//;s/:/\\ -/g;p;}"); then - # From the output of -print-search-dirs, select valid pkgconfig dirs. - libdir_candidates=$(for dir in $libdir_candidates; do - if p=$(cd $dir 2>/dev/null && pwd); then - test -d "$p/pkgconfig" && echo $p; - fi - done) - - for possible_libdir0 in $libdir_candidates; do - # possible_libdir0: - # Fallback candidate, the one of system-installed (by $CC) - # (/usr//lib, /usr/lib/ or /usr/lib32) - # possible_libdir1: - # Another candidate, user-locally-installed - # (/lib) - # possible_libdir2 - # Most preferred - # (//lib, - # /lib/ or /lib32) - if test "${possible_libdir0##*/}" = "lib"; then - possible_prefix0=${possible_libdir0%/lib} - possible_prefix0_triplet=${possible_prefix0##*/} - if test -z "$possible_prefix0_triplet"; then - continue - fi - possible_libdir2=${gpgrt_prefix}/$possible_prefix0_triplet/lib - else - possible_prefix0=${possible_libdir0%%/lib*} - possible_libdir2=${gpgrt_prefix}${possible_libdir0#$possible_prefix0} - fi - if test -f ${possible_libdir2}/pkgconfig/gpg-error.pc; then - gpgrt_libdir=${possible_libdir2} - elif test -f ${possible_libdir1}/pkgconfig/gpg-error.pc; then - gpgrt_libdir=${possible_libdir1} - elif test -f ${possible_libdir0}/pkgconfig/gpg-error.pc; then - gpgrt_libdir=${possible_libdir0} - fi - if test -n "$gpgrt_libdir"; then break; fi - done - if test -z "$libdir_candidates"; then - # No valid pkgconfig dir in any of the system directories, fallback - gpgrt_libdir=${possible_libdir1} - fi - else - # When we cannot determine system libdir-format, use this: - gpgrt_libdir=${possible_libdir1} - fi - else - unset GPGRT_CONFIG - fi - - if test -n "$gpgrt_libdir"; then - GPGRT_CONFIG="$GPGRT_CONFIG --libdir=$gpgrt_libdir" - if $GPGRT_CONFIG gpg-error >/dev/null 2>&1; then - GPG_ERROR_CONFIG="$GPGRT_CONFIG gpg-error" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Use gpgrt-config with $gpgrt_libdir as gpg-error-config" >&5 -printf "%s\n" "$as_me: Use gpgrt-config with $gpgrt_libdir as gpg-error-config" >&6;} - gpg_error_config_version=`$GPG_ERROR_CONFIG --modversion` - else - unset GPGRT_CONFIG - fi - elif test "$GPG_ERROR_CONFIG" != "no"; then - gpg_error_config_version=`$GPG_ERROR_CONFIG --version` - unset GPGRT_CONFIG - fi - - -# Check whether --with-gpgme-prefix was given. -if test ${with_gpgme_prefix+y} -then : - withval=$with_gpgme_prefix; gpgme_config_prefix="$withval" -else $as_nop - gpgme_config_prefix="" -fi - - if test x"${GPGME_CONFIG}" = x ; then - if test x"${gpgme_config_prefix}" != x ; then - GPGME_CONFIG="${gpgme_config_prefix}/bin/gpgme-config" - else - case "${SYSROOT}" in - /*) - if test -x "${SYSROOT}/bin/gpgme-config" ; then - GPGME_CONFIG="${SYSROOT}/bin/gpgme-config" - fi - ;; - '') - ;; - *) - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Ignoring \$SYSROOT as it is not an absolute path." >&5 -printf "%s\n" "$as_me: WARNING: Ignoring \$SYSROOT as it is not an absolute path." >&2;} - ;; - esac - fi - fi - - use_gpgrt_config="" - if test x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then - if $GPGRT_CONFIG gpgme --exists; then - GPGME_CONFIG="$GPGRT_CONFIG gpgme" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Use gpgrt-config as gpgme-config" >&5 -printf "%s\n" "$as_me: Use gpgrt-config as gpgme-config" >&6;} - use_gpgrt_config=yes - fi - fi - if test -z "$use_gpgrt_config"; then - # Extract the first word of "gpgme-config", so it can be a program name with args. -set dummy gpgme-config; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_GPGME_CONFIG+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $GPGME_CONFIG in - [\\/]* | ?:[\\/]*) - ac_cv_path_GPGME_CONFIG="$GPGME_CONFIG" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_path_GPGME_CONFIG="$as_dir$ac_word$ac_exec_ext" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_path_GPGME_CONFIG" && ac_cv_path_GPGME_CONFIG="no" - ;; -esac -fi -GPGME_CONFIG=$ac_cv_path_GPGME_CONFIG -if test -n "$GPGME_CONFIG"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GPGME_CONFIG" >&5 -printf "%s\n" "$GPGME_CONFIG" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - fi - - if test "$GPGME_CONFIG" != "no" ; then - if test -z "$use_gpgrt_config"; then - gpgme_version=`$GPGME_CONFIG --version` - else - gpgme_version=`$GPGME_CONFIG --modversion` - fi - fi - gpgme_version_major=`echo $gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1/'` - gpgme_version_minor=`echo $gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\2/'` - gpgme_version_micro=`echo $gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\3/'` - - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gpgme >= 1.8.0" >&5 -printf %s "checking for gpgme >= 1.8.0... " >&6; } - -if test -n "$DEP_GPGME_CFLAGS"; then - pkg_cv_DEP_GPGME_CFLAGS="$DEP_GPGME_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gpgme >= 1.8.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "gpgme >= 1.8.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_DEP_GPGME_CFLAGS=`$PKG_CONFIG --cflags "gpgme >= 1.8.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$DEP_GPGME_LIBS"; then - pkg_cv_DEP_GPGME_LIBS="$DEP_GPGME_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gpgme >= 1.8.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "gpgme >= 1.8.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_DEP_GPGME_LIBS=`$PKG_CONFIG --libs "gpgme >= 1.8.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - DEP_GPGME_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gpgme >= 1.8.0" 2>&1` - else - DEP_GPGME_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gpgme >= 1.8.0" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$DEP_GPGME_PKG_ERRORS" >&5 - - - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gpgme-pthread >= $LIBGPGME_DEPENDENCY" >&5 -printf %s "checking for gpgme-pthread >= $LIBGPGME_DEPENDENCY... " >&6; } - -if test -n "$DEP_GPGME_PTHREAD_CFLAGS"; then - pkg_cv_DEP_GPGME_PTHREAD_CFLAGS="$DEP_GPGME_PTHREAD_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gpgme-pthread >= \$LIBGPGME_DEPENDENCY\""; } >&5 - ($PKG_CONFIG --exists --print-errors "gpgme-pthread >= $LIBGPGME_DEPENDENCY") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_DEP_GPGME_PTHREAD_CFLAGS=`$PKG_CONFIG --cflags "gpgme-pthread >= $LIBGPGME_DEPENDENCY" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$DEP_GPGME_PTHREAD_LIBS"; then - pkg_cv_DEP_GPGME_PTHREAD_LIBS="$DEP_GPGME_PTHREAD_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gpgme-pthread >= \$LIBGPGME_DEPENDENCY\""; } >&5 - ($PKG_CONFIG --exists --print-errors "gpgme-pthread >= $LIBGPGME_DEPENDENCY") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_DEP_GPGME_PTHREAD_LIBS=`$PKG_CONFIG --libs "gpgme-pthread >= $LIBGPGME_DEPENDENCY" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - DEP_GPGME_PTHREAD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gpgme-pthread >= $LIBGPGME_DEPENDENCY" 2>&1` - else - DEP_GPGME_PTHREAD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gpgme-pthread >= $LIBGPGME_DEPENDENCY" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$DEP_GPGME_PTHREAD_PKG_ERRORS" >&5 - - - - tmp=$LIBGPGME_DEPENDENCY - if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then - req_gpgme_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` - min_gpgme_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'` - else - req_gpgme_api=0 - min_gpgme_version="$tmp" - fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GPGME pthread - version >= $min_gpgme_version" >&5 -printf %s "checking for GPGME pthread - version >= $min_gpgme_version... " >&6; } - ok=no - if test "$GPGME_CONFIG" != "no" ; then - if `$GPGME_CONFIG --thread=pthread 2> /dev/null` ; then - req_major=`echo $min_gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\1/'` - req_minor=`echo $min_gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\2/'` - req_micro=`echo $min_gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\3/'` - if test "$gpgme_version_major" -gt "$req_major"; then - ok=yes - else - if test "$gpgme_version_major" -eq "$req_major"; then - if test "$gpgme_version_minor" -gt "$req_minor"; then - ok=yes - else - if test "$gpgme_version_minor" -eq "$req_minor"; then - if test "$gpgme_version_micro" -ge "$req_micro"; then - ok=yes - fi - fi - fi - fi - fi - fi - fi - if test $ok = yes; then - # If we have a recent GPGME, we should also check that the - # API is compatible. - if test "$req_gpgme_api" -gt 0 ; then - tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` - if test "$tmp" -gt 0 ; then - if test "$req_gpgme_api" -ne "$tmp" ; then - ok=no - fi - fi - fi - fi - if test $ok = yes; then - GPGME_PTHREAD_CFLAGS=`$GPGME_CONFIG --thread=pthread --cflags` - GPGME_PTHREAD_LIBS=`$GPGME_CONFIG --thread=pthread --libs` - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - have_gpgme=yes - - if test -z "$use_gpgrt_config"; then - gpgme_config_host=`$GPGME_CONFIG --host 2>/dev/null || echo none` - else - gpgme_config_host=`$GPGME_CONFIG --variable=host 2>/dev/null || echo none` - fi - if test x"$gpgme_config_host" != xnone ; then - if test x"$gpgme_config_host" != x"$host" ; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: -*** -*** The config script \"$GPGME_CONFIG\" was -*** built for $gpgme_config_host and thus may not match the -*** used host $host. -*** You may want to use the configure option --with-gpgme-prefix -*** to specify a matching config script or use \$SYSROOT. -***" >&5 -printf "%s\n" "$as_me: WARNING: -*** -*** The config script \"$GPGME_CONFIG\" was -*** built for $gpgme_config_host and thus may not match the -*** used host $host. -*** You may want to use the configure option --with-gpgme-prefix -*** to specify a matching config script or use \$SYSROOT. -***" >&2;} - gpg_config_script_warn="$gpg_config_script_warn gpgme" - fi - fi - - else - GPGME_PTHREAD_CFLAGS="" - GPGME_PTHREAD_LIBS="" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - have_gpgme=no - fi - - - - - -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - - - tmp=$LIBGPGME_DEPENDENCY - if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then - req_gpgme_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` - min_gpgme_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'` - else - req_gpgme_api=0 - min_gpgme_version="$tmp" - fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GPGME pthread - version >= $min_gpgme_version" >&5 -printf %s "checking for GPGME pthread - version >= $min_gpgme_version... " >&6; } - ok=no - if test "$GPGME_CONFIG" != "no" ; then - if `$GPGME_CONFIG --thread=pthread 2> /dev/null` ; then - req_major=`echo $min_gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\1/'` - req_minor=`echo $min_gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\2/'` - req_micro=`echo $min_gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\3/'` - if test "$gpgme_version_major" -gt "$req_major"; then - ok=yes - else - if test "$gpgme_version_major" -eq "$req_major"; then - if test "$gpgme_version_minor" -gt "$req_minor"; then - ok=yes - else - if test "$gpgme_version_minor" -eq "$req_minor"; then - if test "$gpgme_version_micro" -ge "$req_micro"; then - ok=yes - fi - fi - fi - fi - fi - fi - fi - if test $ok = yes; then - # If we have a recent GPGME, we should also check that the - # API is compatible. - if test "$req_gpgme_api" -gt 0 ; then - tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` - if test "$tmp" -gt 0 ; then - if test "$req_gpgme_api" -ne "$tmp" ; then - ok=no - fi - fi - fi - fi - if test $ok = yes; then - GPGME_PTHREAD_CFLAGS=`$GPGME_CONFIG --thread=pthread --cflags` - GPGME_PTHREAD_LIBS=`$GPGME_CONFIG --thread=pthread --libs` - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - have_gpgme=yes - - if test -z "$use_gpgrt_config"; then - gpgme_config_host=`$GPGME_CONFIG --host 2>/dev/null || echo none` - else - gpgme_config_host=`$GPGME_CONFIG --variable=host 2>/dev/null || echo none` - fi - if test x"$gpgme_config_host" != xnone ; then - if test x"$gpgme_config_host" != x"$host" ; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: -*** -*** The config script \"$GPGME_CONFIG\" was -*** built for $gpgme_config_host and thus may not match the -*** used host $host. -*** You may want to use the configure option --with-gpgme-prefix -*** to specify a matching config script or use \$SYSROOT. -***" >&5 -printf "%s\n" "$as_me: WARNING: -*** -*** The config script \"$GPGME_CONFIG\" was -*** built for $gpgme_config_host and thus may not match the -*** used host $host. -*** You may want to use the configure option --with-gpgme-prefix -*** to specify a matching config script or use \$SYSROOT. -***" >&2;} - gpg_config_script_warn="$gpg_config_script_warn gpgme" - fi - fi - - else - GPGME_PTHREAD_CFLAGS="" - GPGME_PTHREAD_LIBS="" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - have_gpgme=no - fi - - - - - -else - DEP_GPGME_PTHREAD_CFLAGS=$pkg_cv_DEP_GPGME_PTHREAD_CFLAGS - DEP_GPGME_PTHREAD_LIBS=$pkg_cv_DEP_GPGME_PTHREAD_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - - have_gpgme=yes - -fi - -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gpgme-pthread >= $LIBGPGME_DEPENDENCY" >&5 -printf %s "checking for gpgme-pthread >= $LIBGPGME_DEPENDENCY... " >&6; } - -if test -n "$DEP_GPGME_PTHREAD_CFLAGS"; then - pkg_cv_DEP_GPGME_PTHREAD_CFLAGS="$DEP_GPGME_PTHREAD_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gpgme-pthread >= \$LIBGPGME_DEPENDENCY\""; } >&5 - ($PKG_CONFIG --exists --print-errors "gpgme-pthread >= $LIBGPGME_DEPENDENCY") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_DEP_GPGME_PTHREAD_CFLAGS=`$PKG_CONFIG --cflags "gpgme-pthread >= $LIBGPGME_DEPENDENCY" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$DEP_GPGME_PTHREAD_LIBS"; then - pkg_cv_DEP_GPGME_PTHREAD_LIBS="$DEP_GPGME_PTHREAD_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gpgme-pthread >= \$LIBGPGME_DEPENDENCY\""; } >&5 - ($PKG_CONFIG --exists --print-errors "gpgme-pthread >= $LIBGPGME_DEPENDENCY") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_DEP_GPGME_PTHREAD_LIBS=`$PKG_CONFIG --libs "gpgme-pthread >= $LIBGPGME_DEPENDENCY" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - DEP_GPGME_PTHREAD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gpgme-pthread >= $LIBGPGME_DEPENDENCY" 2>&1` - else - DEP_GPGME_PTHREAD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gpgme-pthread >= $LIBGPGME_DEPENDENCY" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$DEP_GPGME_PTHREAD_PKG_ERRORS" >&5 - - - - tmp=$LIBGPGME_DEPENDENCY - if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then - req_gpgme_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` - min_gpgme_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'` - else - req_gpgme_api=0 - min_gpgme_version="$tmp" - fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GPGME pthread - version >= $min_gpgme_version" >&5 -printf %s "checking for GPGME pthread - version >= $min_gpgme_version... " >&6; } - ok=no - if test "$GPGME_CONFIG" != "no" ; then - if `$GPGME_CONFIG --thread=pthread 2> /dev/null` ; then - req_major=`echo $min_gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\1/'` - req_minor=`echo $min_gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\2/'` - req_micro=`echo $min_gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\3/'` - if test "$gpgme_version_major" -gt "$req_major"; then - ok=yes - else - if test "$gpgme_version_major" -eq "$req_major"; then - if test "$gpgme_version_minor" -gt "$req_minor"; then - ok=yes - else - if test "$gpgme_version_minor" -eq "$req_minor"; then - if test "$gpgme_version_micro" -ge "$req_micro"; then - ok=yes - fi - fi - fi - fi - fi - fi - fi - if test $ok = yes; then - # If we have a recent GPGME, we should also check that the - # API is compatible. - if test "$req_gpgme_api" -gt 0 ; then - tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` - if test "$tmp" -gt 0 ; then - if test "$req_gpgme_api" -ne "$tmp" ; then - ok=no - fi - fi - fi - fi - if test $ok = yes; then - GPGME_PTHREAD_CFLAGS=`$GPGME_CONFIG --thread=pthread --cflags` - GPGME_PTHREAD_LIBS=`$GPGME_CONFIG --thread=pthread --libs` - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - have_gpgme=yes - - if test -z "$use_gpgrt_config"; then - gpgme_config_host=`$GPGME_CONFIG --host 2>/dev/null || echo none` - else - gpgme_config_host=`$GPGME_CONFIG --variable=host 2>/dev/null || echo none` - fi - if test x"$gpgme_config_host" != xnone ; then - if test x"$gpgme_config_host" != x"$host" ; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: -*** -*** The config script \"$GPGME_CONFIG\" was -*** built for $gpgme_config_host and thus may not match the -*** used host $host. -*** You may want to use the configure option --with-gpgme-prefix -*** to specify a matching config script or use \$SYSROOT. -***" >&5 -printf "%s\n" "$as_me: WARNING: -*** -*** The config script \"$GPGME_CONFIG\" was -*** built for $gpgme_config_host and thus may not match the -*** used host $host. -*** You may want to use the configure option --with-gpgme-prefix -*** to specify a matching config script or use \$SYSROOT. -***" >&2;} - gpg_config_script_warn="$gpg_config_script_warn gpgme" - fi - fi - - else - GPGME_PTHREAD_CFLAGS="" - GPGME_PTHREAD_LIBS="" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - have_gpgme=no - fi - - - - - -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - - - tmp=$LIBGPGME_DEPENDENCY - if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then - req_gpgme_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` - min_gpgme_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'` - else - req_gpgme_api=0 - min_gpgme_version="$tmp" - fi - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GPGME pthread - version >= $min_gpgme_version" >&5 -printf %s "checking for GPGME pthread - version >= $min_gpgme_version... " >&6; } - ok=no - if test "$GPGME_CONFIG" != "no" ; then - if `$GPGME_CONFIG --thread=pthread 2> /dev/null` ; then - req_major=`echo $min_gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\1/'` - req_minor=`echo $min_gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\2/'` - req_micro=`echo $min_gpgme_version | \ - sed 's/\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)/\3/'` - if test "$gpgme_version_major" -gt "$req_major"; then - ok=yes - else - if test "$gpgme_version_major" -eq "$req_major"; then - if test "$gpgme_version_minor" -gt "$req_minor"; then - ok=yes - else - if test "$gpgme_version_minor" -eq "$req_minor"; then - if test "$gpgme_version_micro" -ge "$req_micro"; then - ok=yes - fi - fi - fi - fi - fi - fi - fi - if test $ok = yes; then - # If we have a recent GPGME, we should also check that the - # API is compatible. - if test "$req_gpgme_api" -gt 0 ; then - tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` - if test "$tmp" -gt 0 ; then - if test "$req_gpgme_api" -ne "$tmp" ; then - ok=no - fi - fi - fi - fi - if test $ok = yes; then - GPGME_PTHREAD_CFLAGS=`$GPGME_CONFIG --thread=pthread --cflags` - GPGME_PTHREAD_LIBS=`$GPGME_CONFIG --thread=pthread --libs` - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - have_gpgme=yes - - if test -z "$use_gpgrt_config"; then - gpgme_config_host=`$GPGME_CONFIG --host 2>/dev/null || echo none` - else - gpgme_config_host=`$GPGME_CONFIG --variable=host 2>/dev/null || echo none` - fi - if test x"$gpgme_config_host" != xnone ; then - if test x"$gpgme_config_host" != x"$host" ; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: -*** -*** The config script \"$GPGME_CONFIG\" was -*** built for $gpgme_config_host and thus may not match the -*** used host $host. -*** You may want to use the configure option --with-gpgme-prefix -*** to specify a matching config script or use \$SYSROOT. -***" >&5 -printf "%s\n" "$as_me: WARNING: -*** -*** The config script \"$GPGME_CONFIG\" was -*** built for $gpgme_config_host and thus may not match the -*** used host $host. -*** You may want to use the configure option --with-gpgme-prefix -*** to specify a matching config script or use \$SYSROOT. -***" >&2;} - gpg_config_script_warn="$gpg_config_script_warn gpgme" - fi - fi - - else - GPGME_PTHREAD_CFLAGS="" - GPGME_PTHREAD_LIBS="" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - have_gpgme=no - fi - - - - - -else - DEP_GPGME_PTHREAD_CFLAGS=$pkg_cv_DEP_GPGME_PTHREAD_CFLAGS - DEP_GPGME_PTHREAD_LIBS=$pkg_cv_DEP_GPGME_PTHREAD_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - - have_gpgme=yes - -fi - -else - DEP_GPGME_CFLAGS=$pkg_cv_DEP_GPGME_CFLAGS - DEP_GPGME_LIBS=$pkg_cv_DEP_GPGME_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - have_gpgme=yes -fi -if test x$have_gpgme = xno -then : - - as_fn_error $? "Need GPGME_PTHREAD version $LIBGPGME_DEPENDENCY or later" "$LINENO" 5 - -fi - -# Check whether --enable-selinux-module was given. -if test ${enable_selinux_module+y} -then : - enableval=$enable_selinux_module; enable_selinux_module=$enableval -else $as_nop - enable_selinux_module=auto -fi - -if test x$enable_selinux_module = xauto ; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for /usr/share/selinux/devel/Makefile" >&5 -printf %s "checking for /usr/share/selinux/devel/Makefile... " >&6; } -if test ${ac_cv_file__usr_share_selinux_devel_Makefile+y} -then : - printf %s "(cached) " >&6 -else $as_nop - test "$cross_compiling" = yes && - as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 -if test -r "/usr/share/selinux/devel/Makefile"; then - ac_cv_file__usr_share_selinux_devel_Makefile=yes -else - ac_cv_file__usr_share_selinux_devel_Makefile=no -fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_file__usr_share_selinux_devel_Makefile" >&5 -printf "%s\n" "$ac_cv_file__usr_share_selinux_devel_Makefile" >&6; } -if test "x$ac_cv_file__usr_share_selinux_devel_Makefile" = xyes -then : - enable_selinux_module=yes -else $as_nop - enable_selinux_module=no -fi - -fi -if test x$enable_selinux_module = xyes ; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for /usr/share/selinux/devel/Makefile" >&5 -printf %s "checking for /usr/share/selinux/devel/Makefile... " >&6; } -if test ${ac_cv_file__usr_share_selinux_devel_Makefile+y} -then : - printf %s "(cached) " >&6 -else $as_nop - test "$cross_compiling" = yes && - as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 -if test -r "/usr/share/selinux/devel/Makefile"; then - ac_cv_file__usr_share_selinux_devel_Makefile=yes -else - ac_cv_file__usr_share_selinux_devel_Makefile=no -fi -fi -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_file__usr_share_selinux_devel_Makefile" >&5 -printf "%s\n" "$ac_cv_file__usr_share_selinux_devel_Makefile" >&6; } -if test "x$ac_cv_file__usr_share_selinux_devel_Makefile" = xyes -then : - -else $as_nop - as_fn_error $? "selinux-policy-devel needed to build selinux module" "$LINENO" 5 -fi - -fi - if test x$enable_selinux_module = xyes; then - BUILD_SELINUX_MODULE_TRUE= - BUILD_SELINUX_MODULE_FALSE='#' -else - BUILD_SELINUX_MODULE_TRUE='#' - BUILD_SELINUX_MODULE_FALSE= -fi - - -# Check whether --enable-system-helper was given. -if test ${enable_system_helper+y} -then : - enableval=$enable_system_helper; -else $as_nop - enable_system_helper=yes -fi - -if test "x$enable_system_helper" = "xyes"; then - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for \ - polkit-agent-1 >= $POLKIT_GOBJECT_REQUIRED" >&5 -printf %s "checking for \ - polkit-agent-1 >= $POLKIT_GOBJECT_REQUIRED... " >&6; } - -if test -n "$POLKIT_CFLAGS"; then - pkg_cv_POLKIT_CFLAGS="$POLKIT_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\\ - polkit-agent-1 >= \$POLKIT_GOBJECT_REQUIRED\""; } >&5 - ($PKG_CONFIG --exists --print-errors "\ - polkit-agent-1 >= $POLKIT_GOBJECT_REQUIRED") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_POLKIT_CFLAGS=`$PKG_CONFIG --cflags "\ - polkit-agent-1 >= $POLKIT_GOBJECT_REQUIRED" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$POLKIT_LIBS"; then - pkg_cv_POLKIT_LIBS="$POLKIT_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\\ - polkit-agent-1 >= \$POLKIT_GOBJECT_REQUIRED\""; } >&5 - ($PKG_CONFIG --exists --print-errors "\ - polkit-agent-1 >= $POLKIT_GOBJECT_REQUIRED") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_POLKIT_LIBS=`$PKG_CONFIG --libs "\ - polkit-agent-1 >= $POLKIT_GOBJECT_REQUIRED" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - POLKIT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "\ - polkit-agent-1 >= $POLKIT_GOBJECT_REQUIRED" 2>&1` - else - POLKIT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "\ - polkit-agent-1 >= $POLKIT_GOBJECT_REQUIRED" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$POLKIT_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (\ - polkit-agent-1 >= $POLKIT_GOBJECT_REQUIRED) were not met: - -$POLKIT_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables POLKIT_CFLAGS -and POLKIT_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables POLKIT_CFLAGS -and POLKIT_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - POLKIT_CFLAGS=$pkg_cv_POLKIT_CFLAGS - POLKIT_LIBS=$pkg_cv_POLKIT_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -fi - -printf "%s\n" "#define USE_SYSTEM_HELPER 1" >>confdefs.h - -fi - if test x$enable_system_helper = xyes; then - BUILD_SYSTEM_HELPER_TRUE= - BUILD_SYSTEM_HELPER_FALSE='#' -else - BUILD_SYSTEM_HELPER_TRUE='#' - BUILD_SYSTEM_HELPER_FALSE= -fi - - -# Check whether --enable-auto-sideloading was given. -if test ${enable_auto_sideloading+y} -then : - enableval=$enable_auto_sideloading; -else $as_nop - enable_auto_sideloading=no -fi - - if test x$enable_auto_sideloading = xyes; then - BUILD_AUTO_SIDELOADING_TRUE= - BUILD_AUTO_SIDELOADING_FALSE='#' -else - BUILD_AUTO_SIDELOADING_TRUE='#' - BUILD_AUTO_SIDELOADING_FALSE= -fi - - - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fuse3 >= 3.1.1" >&5 -printf %s "checking for fuse3 >= 3.1.1... " >&6; } - -if test -n "$FUSE3_CFLAGS"; then - pkg_cv_FUSE3_CFLAGS="$FUSE3_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse3 >= 3.1.1\""; } >&5 - ($PKG_CONFIG --exists --print-errors "fuse3 >= 3.1.1") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_FUSE3_CFLAGS=`$PKG_CONFIG --cflags "fuse3 >= 3.1.1" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$FUSE3_LIBS"; then - pkg_cv_FUSE3_LIBS="$FUSE3_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse3 >= 3.1.1\""; } >&5 - ($PKG_CONFIG --exists --print-errors "fuse3 >= 3.1.1") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_FUSE3_LIBS=`$PKG_CONFIG --libs "fuse3 >= 3.1.1" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - FUSE3_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "fuse3 >= 3.1.1" 2>&1` - else - FUSE3_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "fuse3 >= 3.1.1" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$FUSE3_PKG_ERRORS" >&5 - - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fuse >= 2.9.2" >&5 -printf %s "checking for fuse >= 2.9.2... " >&6; } - -if test -n "$FUSE_CFLAGS"; then - pkg_cv_FUSE_CFLAGS="$FUSE_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse >= 2.9.2\""; } >&5 - ($PKG_CONFIG --exists --print-errors "fuse >= 2.9.2") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_FUSE_CFLAGS=`$PKG_CONFIG --cflags "fuse >= 2.9.2" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$FUSE_LIBS"; then - pkg_cv_FUSE_LIBS="$FUSE_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse >= 2.9.2\""; } >&5 - ($PKG_CONFIG --exists --print-errors "fuse >= 2.9.2") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_FUSE_LIBS=`$PKG_CONFIG --libs "fuse >= 2.9.2" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - FUSE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "fuse >= 2.9.2" 2>&1` - else - FUSE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "fuse >= 2.9.2" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$FUSE_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (fuse >= 2.9.2) were not met: - -$FUSE_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables FUSE_CFLAGS -and FUSE_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables FUSE_CFLAGS -and FUSE_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - FUSE_CFLAGS=$pkg_cv_FUSE_CFLAGS - FUSE_LIBS=$pkg_cv_FUSE_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - FUSE_USE_VERSION=26 -fi -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fuse >= 2.9.2" >&5 -printf %s "checking for fuse >= 2.9.2... " >&6; } - -if test -n "$FUSE_CFLAGS"; then - pkg_cv_FUSE_CFLAGS="$FUSE_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse >= 2.9.2\""; } >&5 - ($PKG_CONFIG --exists --print-errors "fuse >= 2.9.2") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_FUSE_CFLAGS=`$PKG_CONFIG --cflags "fuse >= 2.9.2" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$FUSE_LIBS"; then - pkg_cv_FUSE_LIBS="$FUSE_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse >= 2.9.2\""; } >&5 - ($PKG_CONFIG --exists --print-errors "fuse >= 2.9.2") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_FUSE_LIBS=`$PKG_CONFIG --libs "fuse >= 2.9.2" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - FUSE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "fuse >= 2.9.2" 2>&1` - else - FUSE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "fuse >= 2.9.2" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$FUSE_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (fuse >= 2.9.2) were not met: - -$FUSE_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables FUSE_CFLAGS -and FUSE_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables FUSE_CFLAGS -and FUSE_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - FUSE_CFLAGS=$pkg_cv_FUSE_CFLAGS - FUSE_LIBS=$pkg_cv_FUSE_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - FUSE_USE_VERSION=26 -fi -else - FUSE3_CFLAGS=$pkg_cv_FUSE3_CFLAGS - FUSE3_LIBS=$pkg_cv_FUSE3_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - - FUSE_USE_VERSION=31 - FUSE_CFLAGS="$FUSE3_CFLAGS" - FUSE_LIBS="$FUSE3_LIBS" - -fi - -printf "%s\n" "#define FUSE_USE_VERSION $FUSE_USE_VERSION" >>confdefs.h - - -# Check whether --enable-xauth was given. -if test ${enable_xauth+y} -then : - enableval=$enable_xauth; -else $as_nop - enable_xauth=yes -fi - -if test "x$enable_xauth" = "xyes"; then - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for xau" >&5 -printf %s "checking for xau... " >&6; } - -if test -n "$XAUTH_CFLAGS"; then - pkg_cv_XAUTH_CFLAGS="$XAUTH_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xau\""; } >&5 - ($PKG_CONFIG --exists --print-errors "xau") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_XAUTH_CFLAGS=`$PKG_CONFIG --cflags "xau" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$XAUTH_LIBS"; then - pkg_cv_XAUTH_LIBS="$XAUTH_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xau\""; } >&5 - ($PKG_CONFIG --exists --print-errors "xau") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_XAUTH_LIBS=`$PKG_CONFIG --libs "xau" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - XAUTH_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "xau" 2>&1` - else - XAUTH_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "xau" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$XAUTH_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (xau) were not met: - -$XAUTH_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables XAUTH_CFLAGS -and XAUTH_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables XAUTH_CFLAGS -and XAUTH_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - XAUTH_CFLAGS=$pkg_cv_XAUTH_CFLAGS - XAUTH_LIBS=$pkg_cv_XAUTH_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -fi - -printf "%s\n" "#define ENABLE_XAUTH 1" >>confdefs.h - -fi - -# Check whether --enable-gdm-env-file was given. -if test ${enable_gdm_env_file+y} -then : - enableval=$enable_gdm_env_file; install_gdm_env_file=$enableval -else $as_nop - install_gdm_env_file=no -fi - - if test x$install_gdm_env_file = xyes; then - INSTALL_GDM_ENV_FILE_TRUE= - INSTALL_GDM_ENV_FILE_FALSE='#' -else - INSTALL_GDM_ENV_FILE_TRUE='#' - INSTALL_GDM_ENV_FILE_FALSE= -fi - - -# Check whether --enable-sandboxed-triggers was given. -if test ${enable_sandboxed_triggers+y} -then : - enableval=$enable_sandboxed_triggers; -else $as_nop - enable_sandboxed_triggers=yes -fi - -if test "x$enable_sandboxed_triggers" = "xno"; then - -printf "%s\n" "#define DISABLE_SANDBOXED_TRIGGERS 1" >>confdefs.h - -fi - - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ostree-1 >= $OSTREE_REQS" >&5 -printf %s "checking for ostree-1 >= $OSTREE_REQS... " >&6; } - -if test -n "$OSTREE_CFLAGS"; then - pkg_cv_OSTREE_CFLAGS="$OSTREE_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ostree-1 >= \$OSTREE_REQS\""; } >&5 - ($PKG_CONFIG --exists --print-errors "ostree-1 >= $OSTREE_REQS") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_OSTREE_CFLAGS=`$PKG_CONFIG --cflags "ostree-1 >= $OSTREE_REQS" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$OSTREE_LIBS"; then - pkg_cv_OSTREE_LIBS="$OSTREE_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ostree-1 >= \$OSTREE_REQS\""; } >&5 - ($PKG_CONFIG --exists --print-errors "ostree-1 >= $OSTREE_REQS") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_OSTREE_LIBS=`$PKG_CONFIG --libs "ostree-1 >= $OSTREE_REQS" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - OSTREE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "ostree-1 >= $OSTREE_REQS" 2>&1` - else - OSTREE_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "ostree-1 >= $OSTREE_REQS" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$OSTREE_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (ostree-1 >= $OSTREE_REQS) were not met: - -$OSTREE_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables OSTREE_CFLAGS -and OSTREE_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables OSTREE_CFLAGS -and OSTREE_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - OSTREE_CFLAGS=$pkg_cv_OSTREE_CFLAGS - OSTREE_LIBS=$pkg_cv_OSTREE_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -fi - - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for json-glib-1.0" >&5 -printf %s "checking for json-glib-1.0... " >&6; } - -if test -n "$JSON_CFLAGS"; then - pkg_cv_JSON_CFLAGS="$JSON_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json-glib-1.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "json-glib-1.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_JSON_CFLAGS=`$PKG_CONFIG --cflags "json-glib-1.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$JSON_LIBS"; then - pkg_cv_JSON_LIBS="$JSON_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"json-glib-1.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "json-glib-1.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_JSON_LIBS=`$PKG_CONFIG --libs "json-glib-1.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - JSON_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "json-glib-1.0" 2>&1` - else - JSON_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "json-glib-1.0" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$JSON_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (json-glib-1.0) were not met: - -$JSON_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables JSON_CFLAGS -and JSON_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables JSON_CFLAGS -and JSON_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - JSON_CFLAGS=$pkg_cv_JSON_CFLAGS - JSON_LIBS=$pkg_cv_JSON_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -fi - - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for appstream >= 0.12.0" >&5 -printf %s "checking for appstream >= 0.12.0... " >&6; } - -if test -n "$APPSTREAM_CFLAGS"; then - pkg_cv_APPSTREAM_CFLAGS="$APPSTREAM_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"appstream >= 0.12.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "appstream >= 0.12.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_APPSTREAM_CFLAGS=`$PKG_CONFIG --cflags "appstream >= 0.12.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$APPSTREAM_LIBS"; then - pkg_cv_APPSTREAM_LIBS="$APPSTREAM_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"appstream >= 0.12.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "appstream >= 0.12.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_APPSTREAM_LIBS=`$PKG_CONFIG --libs "appstream >= 0.12.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - APPSTREAM_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "appstream >= 0.12.0" 2>&1` - else - APPSTREAM_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "appstream >= 0.12.0" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$APPSTREAM_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (appstream >= 0.12.0) were not met: - -$APPSTREAM_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables APPSTREAM_CFLAGS -and APPSTREAM_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables APPSTREAM_CFLAGS -and APPSTREAM_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - APPSTREAM_CFLAGS=$pkg_cv_APPSTREAM_CFLAGS - APPSTREAM_LIBS=$pkg_cv_APPSTREAM_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -fi - - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gdk-pixbuf-2.0" >&5 -printf %s "checking for gdk-pixbuf-2.0... " >&6; } - -if test -n "$GDK_PIXBUF_CFLAGS"; then - pkg_cv_GDK_PIXBUF_CFLAGS="$GDK_PIXBUF_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gdk-pixbuf-2.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "gdk-pixbuf-2.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_GDK_PIXBUF_CFLAGS=`$PKG_CONFIG --cflags "gdk-pixbuf-2.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$GDK_PIXBUF_LIBS"; then - pkg_cv_GDK_PIXBUF_LIBS="$GDK_PIXBUF_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gdk-pixbuf-2.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "gdk-pixbuf-2.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_GDK_PIXBUF_LIBS=`$PKG_CONFIG --libs "gdk-pixbuf-2.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - GDK_PIXBUF_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gdk-pixbuf-2.0" 2>&1` - else - GDK_PIXBUF_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gdk-pixbuf-2.0" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$GDK_PIXBUF_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (gdk-pixbuf-2.0) were not met: - -$GDK_PIXBUF_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables GDK_PIXBUF_CFLAGS -and GDK_PIXBUF_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables GDK_PIXBUF_CFLAGS -and GDK_PIXBUF_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - GDK_PIXBUF_CFLAGS=$pkg_cv_GDK_PIXBUF_CFLAGS - GDK_PIXBUF_LIBS=$pkg_cv_GDK_PIXBUF_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -fi - -# Check whether --enable-seccomp was given. -if test ${enable_seccomp+y} -then : - enableval=$enable_seccomp; -else $as_nop - enable_seccomp=yes -fi - - -if test "x$enable_seccomp" = "xyes"; then - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libseccomp" >&5 -printf %s "checking for libseccomp... " >&6; } - -if test -n "$LIBSECCOMP_CFLAGS"; then - pkg_cv_LIBSECCOMP_CFLAGS="$LIBSECCOMP_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libseccomp\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libseccomp") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LIBSECCOMP_CFLAGS=`$PKG_CONFIG --cflags "libseccomp" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$LIBSECCOMP_LIBS"; then - pkg_cv_LIBSECCOMP_LIBS="$LIBSECCOMP_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libseccomp\""; } >&5 - ($PKG_CONFIG --exists --print-errors "libseccomp") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_LIBSECCOMP_LIBS=`$PKG_CONFIG --libs "libseccomp" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - LIBSECCOMP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libseccomp" 2>&1` - else - LIBSECCOMP_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libseccomp" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$LIBSECCOMP_PKG_ERRORS" >&5 - - as_fn_error $? "Package requirements (libseccomp) were not met: - -$LIBSECCOMP_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables LIBSECCOMP_CFLAGS -and LIBSECCOMP_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details." "$LINENO" 5 -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables LIBSECCOMP_CFLAGS -and LIBSECCOMP_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5; } -else - LIBSECCOMP_CFLAGS=$pkg_cv_LIBSECCOMP_CFLAGS - LIBSECCOMP_LIBS=$pkg_cv_LIBSECCOMP_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -fi - -printf "%s\n" "#define ENABLE_SECCOMP 1" >>confdefs.h - -fi - - -# Check whether --with-priv-mode was given. -if test ${with_priv_mode+y} -then : - withval=$with_priv_mode; -else $as_nop - with_priv_mode="none" -fi - - - if test "x$with_priv_mode" = "xsetuid"; then - PRIV_MODE_SETUID_TRUE= - PRIV_MODE_SETUID_FALSE='#' -else - PRIV_MODE_SETUID_TRUE='#' - PRIV_MODE_SETUID_FALSE= -fi - - -# Check whether --enable-sudo was given. -if test ${enable_sudo+y} -then : - enableval=$enable_sudo; SUDO_BIN="sudo" -else $as_nop - SUDO_BIN="" -fi - - - -# Check whether --enable-asan was given. -if test ${enable_asan+y} -then : - enableval=$enable_asan; -else $as_nop - enable_asan=no -fi - - if test "x$enable_asan" = xyes; then - ENABLE_ASAN_TRUE= - ENABLE_ASAN_FALSE='#' -else - ENABLE_ASAN_TRUE='#' - ENABLE_ASAN_FALSE= -fi - - - -# Check whether --with-system-install-dir was given. -if test ${with_system_install_dir+y} -then : - withval=$with_system_install_dir; -else $as_nop - with_system_install_dir='$(localstatedir)/lib/flatpak' -fi - -SYSTEM_INSTALL_DIR=$with_system_install_dir - - - -# Check whether --with-run-media-dir was given. -if test ${with_run_media_dir+y} -then : - withval=$with_run_media_dir; -else $as_nop - with_run_media_dir='/run/media' -fi - -RUN_MEDIA_DIR=$with_run_media_dir - - - -# Check whether --with-sysusersdir was given. -if test ${with_sysusersdir+y} -then : - withval=$with_sysusersdir; -else $as_nop - with_sysusersdir='${prefix}/lib/sysusers.d' -fi - -sysusersdir=$with_sysusersdir - - - -# Check whether --with-tmpfilesdir was given. -if test ${with_tmpfilesdir+y} -then : - withval=$with_tmpfilesdir; -else $as_nop - with_tmpfilesdir='${prefix}/lib/tmpfiles.d' -fi - -tmpfilesdir=$with_tmpfilesdir - - - -# Check whether --with-system-helper-user was given. -if test ${with_system_helper_user+y} -then : - withval=$with_system_helper_user; with_system_helper_user="$withval" -else $as_nop - with_system_helper_user=flatpak -fi - -SYSTEM_HELPER_USER=$with_system_helper_user - - -# Check whether --enable-documentation was given. -if test ${enable_documentation+y} -then : - enableval=$enable_documentation; -else $as_nop - enable_documentation=yes -fi - -if test x$enable_documentation = xyes; then - # Extract the first word of "xsltproc", so it can be a program name with args. -set dummy xsltproc; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_XSLTPROC+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $XSLTPROC in - [\\/]* | ?:[\\/]*) - ac_cv_path_XSLTPROC="$XSLTPROC" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_path_XSLTPROC="$as_dir$ac_word$ac_exec_ext" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -XSLTPROC=$ac_cv_path_XSLTPROC -if test -n "$XSLTPROC"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $XSLTPROC" >&5 -printf "%s\n" "$XSLTPROC" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - if test x$XSLTPROC = x; then - as_fn_error $? "xsltproc is required to build documentation" "$LINENO" 5 - fi - - - # check for the presence of the XML catalog - -# Check whether --with-xml-catalog was given. -if test ${with_xml_catalog+y} -then : - withval=$with_xml_catalog; -else $as_nop - with_xml_catalog=/etc/xml/catalog -fi - - jh_found_xmlcatalog=true - XML_CATALOG_FILE="$with_xml_catalog" - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for XML catalog ($XML_CATALOG_FILE)" >&5 -printf %s "checking for XML catalog ($XML_CATALOG_FILE)... " >&6; } - if test -f "$XML_CATALOG_FILE"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5 -printf "%s\n" "found" >&6; } - else - jh_found_xmlcatalog=false - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: not found" >&5 -printf "%s\n" "not found" >&6; } - fi - - # check for the xmlcatalog program - # Extract the first word of "xmlcatalog", so it can be a program name with args. -set dummy xmlcatalog; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_XMLCATALOG+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $XMLCATALOG in - [\\/]* | ?:[\\/]*) - ac_cv_path_XMLCATALOG="$XMLCATALOG" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_path_XMLCATALOG="$as_dir$ac_word$ac_exec_ext" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_path_XMLCATALOG" && ac_cv_path_XMLCATALOG="no" - ;; -esac -fi -XMLCATALOG=$ac_cv_path_XMLCATALOG -if test -n "$XMLCATALOG"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $XMLCATALOG" >&5 -printf "%s\n" "$XMLCATALOG" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - if test "x$XMLCATALOG" = xno; then - jh_found_xmlcatalog=false - fi - - if $jh_found_xmlcatalog; then - : - else - : - fi - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for DocBook XML DTD V4.5 in XML catalog" >&5 -printf %s "checking for DocBook XML DTD V4.5 in XML catalog... " >&6; } - if $jh_found_xmlcatalog && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$XMLCATALOG --noout \"\$XML_CATALOG_FILE\" \"-//OASIS//DTD DocBook XML V4.5//EN\" >&2"; } >&5 - ($XMLCATALOG --noout "$XML_CATALOG_FILE" "-//OASIS//DTD DocBook XML V4.5//EN" >&2) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5 -printf "%s\n" "found" >&6; } - have_docbook_dtd=yes - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: not found" >&5 -printf "%s\n" "not found" >&6; } - have_docbook_dtd=no - fi - - if test "$have_docbook_dtd" != yes; then - as_fn_error $? "DocBook DTD is required for --enable-documentation" "$LINENO" 5 - fi - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for DocBook XSL Stylesheets in XML catalog" >&5 -printf %s "checking for DocBook XSL Stylesheets in XML catalog... " >&6; } - if $jh_found_xmlcatalog && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$XMLCATALOG --noout \"\$XML_CATALOG_FILE\" \"http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl\" >&2"; } >&5 - ($XMLCATALOG --noout "$XML_CATALOG_FILE" "http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" >&2) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5 -printf "%s\n" "found" >&6; } - have_docbook_style=yes - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: not found" >&5 -printf "%s\n" "not found" >&6; } - have_docbook_style=no - fi - - if test "$have_docbook_style" != yes; then - as_fn_error $? "DocBook XSL Stylesheets are required for --enable-documentation" "$LINENO" 5 - fi -fi - if test x$enable_documentation = xyes; then - BUILD_DOCUMENTATION_TRUE= - BUILD_DOCUMENTATION_FALSE='#' -else - BUILD_DOCUMENTATION_TRUE='#' - BUILD_DOCUMENTATION_FALSE= -fi - - - - - - # Check whether --enable-introspection was given. -if test ${enable_introspection+y} -then : - enableval=$enable_introspection; -else $as_nop - enable_introspection=auto -fi - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gobject-introspection" >&5 -printf %s "checking for gobject-introspection... " >&6; } - - case $enable_introspection in #( - no) : - found_introspection="no (disabled, use --enable-introspection to enable)" - ;; #( - yes) : - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - : -else - as_fn_error $? "gobject-introspection-1.0 is not installed" "$LINENO" 5 -fi - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0 >= 1.40.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0 >= 1.40.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - found_introspection=yes -else - as_fn_error $? "You need to have gobject-introspection >= 1.40.0 installed to build Flatpak" "$LINENO" 5 -fi - ;; #( - auto) : - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0 >= 1.40.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0 >= 1.40.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - found_introspection=yes -else - found_introspection=no -fi - enable_introspection=$found_introspection - ;; #( - *) : - as_fn_error $? "invalid argument passed to --enable-introspection, should be one of [no/auto/yes]" "$LINENO" 5 - ;; -esac - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $found_introspection" >&5 -printf "%s\n" "$found_introspection" >&6; } - - - EXP_VAR=_GI_EXP_DATADIR - FROM_VAR="$datadir" - - prefix_save=$prefix - exec_prefix_save=$exec_prefix - - if test "x$prefix" = "xNONE"; then - prefix="$ac_default_prefix" - fi - if test "x$exec_prefix" = "xNONE"; then - exec_prefix=$prefix - fi - - full_var="$FROM_VAR" - while true; do - new_full_var="`eval echo $full_var`" - if test "x$new_full_var" = "x$full_var"; then break; fi - full_var=$new_full_var - done - - full_var=$new_full_var - _GI_EXP_DATADIR="$full_var" - - - prefix=$prefix_save - exec_prefix=$exec_prefix_save - - - EXP_VAR=_GI_EXP_LIBDIR - FROM_VAR="$libdir" - - prefix_save=$prefix - exec_prefix_save=$exec_prefix - - if test "x$prefix" = "xNONE"; then - prefix="$ac_default_prefix" - fi - if test "x$exec_prefix" = "xNONE"; then - exec_prefix=$prefix - fi - - full_var="$FROM_VAR" - while true; do - new_full_var="`eval echo $full_var`" - if test "x$new_full_var" = "x$full_var"; then break; fi - full_var=$new_full_var - done - - full_var=$new_full_var - _GI_EXP_LIBDIR="$full_var" - - - prefix=$prefix_save - exec_prefix=$exec_prefix_save - - - INTROSPECTION_SCANNER= - INTROSPECTION_COMPILER= - INTROSPECTION_GENERATE= - INTROSPECTION_GIRDIR= - INTROSPECTION_TYPELIBDIR= - if test "x$found_introspection" = "xyes"; then - INTROSPECTION_SCANNER=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0` - INTROSPECTION_COMPILER=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0` - INTROSPECTION_GENERATE=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0` - INTROSPECTION_GIRDIR=`$PKG_CONFIG --define-variable=datadir="${_GI_EXP_DATADIR}" --variable=girdir gobject-introspection-1.0` - INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --define-variable=libdir="${_GI_EXP_LIBDIR}" --variable=typelibdir gobject-introspection-1.0)" - INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0` - INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0` - INTROSPECTION_MAKEFILE=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection - fi - - - - - - - - - - if test "x$found_introspection" = "xyes"; then - HAVE_INTROSPECTION_TRUE= - HAVE_INTROSPECTION_FALSE='#' -else - HAVE_INTROSPECTION_TRUE='#' - HAVE_INTROSPECTION_FALSE= -fi - - - - -# gtkdocize greps for ^GTK_DOC_CHECK, so we need to put it on its own line - - - - - gtk_doc_requires="gtk-doc >= 1.20" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gtk-doc" >&5 -printf %s "checking for gtk-doc... " >&6; } - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$gtk_doc_requires\""; } >&5 - ($PKG_CONFIG --exists --print-errors "$gtk_doc_requires") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - have_gtk_doc=yes -else - have_gtk_doc=no -fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $have_gtk_doc" >&5 -printf "%s\n" "$have_gtk_doc" >&6; } - - if test "$have_gtk_doc" = "no"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: - You will not be able to create source packages with 'make dist' - because $gtk_doc_requires is not found." >&5 -printf "%s\n" "$as_me: WARNING: - You will not be able to create source packages with 'make dist' - because $gtk_doc_requires is not found." >&2;} - fi - - # Extract the first word of "gtkdoc-check", so it can be a program name with args. -set dummy gtkdoc-check; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_prog_GTKDOC_CHECK+y} -then : - printf %s "(cached) " >&6 -else $as_nop - if test -n "$GTKDOC_CHECK"; then - ac_cv_prog_GTKDOC_CHECK="$GTKDOC_CHECK" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_prog_GTKDOC_CHECK="gtkdoc-check.test" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -GTKDOC_CHECK=$ac_cv_prog_GTKDOC_CHECK -if test -n "$GTKDOC_CHECK"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK" >&5 -printf "%s\n" "$GTKDOC_CHECK" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - # Extract the first word of "gtkdoc-check", so it can be a program name with args. -set dummy gtkdoc-check; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_GTKDOC_CHECK_PATH+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $GTKDOC_CHECK_PATH in - [\\/]* | ?:[\\/]*) - ac_cv_path_GTKDOC_CHECK_PATH="$GTKDOC_CHECK_PATH" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_path_GTKDOC_CHECK_PATH="$as_dir$ac_word$ac_exec_ext" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -GTKDOC_CHECK_PATH=$ac_cv_path_GTKDOC_CHECK_PATH -if test -n "$GTKDOC_CHECK_PATH"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK_PATH" >&5 -printf "%s\n" "$GTKDOC_CHECK_PATH" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - for ac_prog in gtkdoc-rebase -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_GTKDOC_REBASE+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $GTKDOC_REBASE in - [\\/]* | ?:[\\/]*) - ac_cv_path_GTKDOC_REBASE="$GTKDOC_REBASE" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_path_GTKDOC_REBASE="$as_dir$ac_word$ac_exec_ext" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -GTKDOC_REBASE=$ac_cv_path_GTKDOC_REBASE -if test -n "$GTKDOC_REBASE"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_REBASE" >&5 -printf "%s\n" "$GTKDOC_REBASE" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - test -n "$GTKDOC_REBASE" && break -done -test -n "$GTKDOC_REBASE" || GTKDOC_REBASE="true" - - # Extract the first word of "gtkdoc-mkpdf", so it can be a program name with args. -set dummy gtkdoc-mkpdf; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_GTKDOC_MKPDF+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $GTKDOC_MKPDF in - [\\/]* | ?:[\\/]*) - ac_cv_path_GTKDOC_MKPDF="$GTKDOC_MKPDF" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_path_GTKDOC_MKPDF="$as_dir$ac_word$ac_exec_ext" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -GTKDOC_MKPDF=$ac_cv_path_GTKDOC_MKPDF -if test -n "$GTKDOC_MKPDF"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_MKPDF" >&5 -printf "%s\n" "$GTKDOC_MKPDF" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - - -# Check whether --with-html-dir was given. -if test ${with_html_dir+y} -then : - withval=$with_html_dir; -else $as_nop - with_html_dir='${datadir}/gtk-doc/html' -fi - - HTML_DIR="$with_html_dir" - - - # Check whether --enable-gtk-doc was given. -if test ${enable_gtk_doc+y} -then : - enableval=$enable_gtk_doc; -else $as_nop - enable_gtk_doc=no -fi - - - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build gtk-doc documentation" >&5 -printf %s "checking whether to build gtk-doc documentation... " >&6; } - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_gtk_doc" >&5 -printf "%s\n" "$enable_gtk_doc" >&6; } - - if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then - as_fn_error $? " - You must have $gtk_doc_requires installed to build documentation for - $PACKAGE_NAME. Please install gtk-doc or disable building the - documentation by adding '--disable-gtk-doc' to '$0'." "$LINENO" 5 - fi - - if test "x$PACKAGE_NAME" != "xglib"; then - -pkg_failed=no -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" >&5 -printf %s "checking for glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0... " >&6; } - -if test -n "$GTKDOC_DEPS_CFLAGS"; then - pkg_cv_GTKDOC_DEPS_CFLAGS="$GTKDOC_DEPS_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_GTKDOC_DEPS_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi -if test -n "$GTKDOC_DEPS_LIBS"; then - pkg_cv_GTKDOC_DEPS_LIBS="$GTKDOC_DEPS_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0\""; } >&5 - ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0") 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then - pkg_cv_GTKDOC_DEPS_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>/dev/null` - test "x$?" != "x0" && pkg_failed=yes -else - pkg_failed=yes -fi - else - pkg_failed=untried -fi - - - -if test $pkg_failed = yes; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - -if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then - _pkg_short_errors_supported=yes -else - _pkg_short_errors_supported=no -fi - if test $_pkg_short_errors_supported = yes; then - GTKDOC_DEPS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>&1` - else - GTKDOC_DEPS_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>&1` - fi - # Put the nasty error message in config.log where it belongs - echo "$GTKDOC_DEPS_PKG_ERRORS" >&5 - - : -elif test $pkg_failed = untried; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - : -else - GTKDOC_DEPS_CFLAGS=$pkg_cv_GTKDOC_DEPS_CFLAGS - GTKDOC_DEPS_LIBS=$pkg_cv_GTKDOC_DEPS_LIBS - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - -fi - fi - - # Check whether --enable-gtk-doc-html was given. -if test ${enable_gtk_doc_html+y} -then : - enableval=$enable_gtk_doc_html; -else $as_nop - enable_gtk_doc_html=yes -fi - - # Check whether --enable-gtk-doc-pdf was given. -if test ${enable_gtk_doc_pdf+y} -then : - enableval=$enable_gtk_doc_pdf; -else $as_nop - enable_gtk_doc_pdf=no -fi - - - if test -z "$GTKDOC_MKPDF"; then - enable_gtk_doc_pdf=no - fi - - if test -z "$AM_DEFAULT_VERBOSITY"; then - AM_DEFAULT_VERBOSITY=1 - fi - - - if test x$have_gtk_doc = xyes; then - HAVE_GTK_DOC_TRUE= - HAVE_GTK_DOC_FALSE='#' -else - HAVE_GTK_DOC_TRUE='#' - HAVE_GTK_DOC_FALSE= -fi - - if test x$enable_gtk_doc = xyes; then - ENABLE_GTK_DOC_TRUE= - ENABLE_GTK_DOC_FALSE='#' -else - ENABLE_GTK_DOC_TRUE='#' - ENABLE_GTK_DOC_FALSE= -fi - - if test x$enable_gtk_doc_html = xyes; then - GTK_DOC_BUILD_HTML_TRUE= - GTK_DOC_BUILD_HTML_FALSE='#' -else - GTK_DOC_BUILD_HTML_TRUE='#' - GTK_DOC_BUILD_HTML_FALSE= -fi - - if test x$enable_gtk_doc_pdf = xyes; then - GTK_DOC_BUILD_PDF_TRUE= - GTK_DOC_BUILD_PDF_FALSE='#' -else - GTK_DOC_BUILD_PDF_TRUE='#' - GTK_DOC_BUILD_PDF_FALSE= -fi - - if test -n "$LIBTOOL"; then - GTK_DOC_USE_LIBTOOL_TRUE= - GTK_DOC_USE_LIBTOOL_FALSE='#' -else - GTK_DOC_USE_LIBTOOL_TRUE='#' - GTK_DOC_USE_LIBTOOL_FALSE= -fi - - if test -n "$GTKDOC_REBASE"; then - GTK_DOC_USE_REBASE_TRUE= - GTK_DOC_USE_REBASE_FALSE='#' -else - GTK_DOC_USE_REBASE_TRUE='#' - GTK_DOC_USE_REBASE_FALSE= -fi - - - -# Check whether --enable-gtk-doc-check was given. -if test ${enable_gtk_doc_check+y} -then : - enableval=$enable_gtk_doc_check; -else $as_nop - enable_gtk_doc_check=no -fi - - - if test "x$enable_gtk_doc_check" = xyes; then - ENABLE_GTK_DOC_CHECK_TRUE= - ENABLE_GTK_DOC_CHECK_FALSE='#' -else - ENABLE_GTK_DOC_CHECK_TRUE='#' - ENABLE_GTK_DOC_CHECK_FALSE= -fi - - - -# Check whether --enable-docbook-docs was given. -if test ${enable_docbook_docs+y} -then : - enableval=$enable_docbook_docs; enable_docbook_docs=$enableval -else $as_nop - enable_docbook_docs=auto -fi - -# Extract the first word of "xmlto", so it can be a program name with args. -set dummy xmlto; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_XMLTO+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $XMLTO in - [\\/]* | ?:[\\/]*) - ac_cv_path_XMLTO="$XMLTO" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_path_XMLTO="$as_dir$ac_word$ac_exec_ext" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_path_XMLTO" && ac_cv_path_XMLTO="no" - ;; -esac -fi -XMLTO=$ac_cv_path_XMLTO -if test -n "$XMLTO"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $XMLTO" >&5 -printf "%s\n" "$XMLTO" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build DocBook documentation" >&5 -printf %s "checking whether to build DocBook documentation... " >&6; } -if test x$XMLTO = xno ; then - have_docbook=no -else - have_docbook=yes -fi -if test x$enable_docbook_docs = xauto ; then - if test x$have_docbook = xno ; then - enable_docbook_docs=no - else - enable_docbook_docs=yes - fi -fi -if test x$enable_docbook_docs = xyes; then - if test x$have_docbook = xno; then - as_fn_error $? "Building DocBook docs explicitly required, but DocBook not found" "$LINENO" 5 - fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - if test x$enable_docbook_docs = xyes; then - DOCBOOK_DOCS_ENABLED_TRUE= - DOCBOOK_DOCS_ENABLED_FALSE='#' -else - DOCBOOK_DOCS_ENABLED_TRUE='#' - DOCBOOK_DOCS_ENABLED_FALSE= -fi - - - - - -################################################## -# Visibility handling -################################################## - -HIDDEN_VISIBILITY_CFLAGS="" -case "$host" in - *) - SAVED_CFLAGS="${CFLAGS}" - CFLAGS="-fvisibility=hidden" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -fvisibility=hidden compiler flag" >&5 -printf %s "checking for -fvisibility=hidden compiler flag... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main (void) -{ -int main (void) { return 0; } - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO" -then : - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -printf "%s\n" "yes" >&6; } - enable_fvisibility_hidden=yes -else $as_nop - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } - enable_fvisibility_hidden=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - CFLAGS="${SAVED_CFLAGS}" - - if test "${enable_fvisibility_hidden}" = "yes" -then : - - -printf "%s\n" "#define FLATPAK_EXTERN __attribute__((visibility(\"default\"))) extern" >>confdefs.h - - HIDDEN_VISIBILITY_CFLAGS="-fvisibility=hidden" - -else $as_nop - - -printf "%s\n" "#define FLATPAK_EXTERN extern" >>confdefs.h - - -fi - ;; -esac - - -########################################## -# Coverage testing -########################################## -# Check whether --enable-coverage was given. -if test ${enable_coverage+y} -then : - enableval=$enable_coverage; use_lcov=$enableval -else $as_nop - use_lcov=no -fi - - -if test x$use_lcov = xyes; then - # Extract the first word of "lcov", so it can be a program name with args. -set dummy lcov; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_LCOV+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $LCOV in - [\\/]* | ?:[\\/]*) - ac_cv_path_LCOV="$LCOV" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_path_LCOV="$as_dir$ac_word$ac_exec_ext" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -LCOV=$ac_cv_path_LCOV -if test -n "$LCOV"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LCOV" >&5 -printf "%s\n" "$LCOV" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - # Extract the first word of "genhtml", so it can be a program name with args. -set dummy genhtml; ac_word=$2 -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -printf %s "checking for $ac_word... " >&6; } -if test ${ac_cv_path_GENHTML+y} -then : - printf %s "(cached) " >&6 -else $as_nop - case $GENHTML in - [\\/]* | ?:[\\/]*) - ac_cv_path_GENHTML="$GENHTML" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then - ac_cv_path_GENHTML="$as_dir$ac_word$ac_exec_ext" - printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - ;; -esac -fi -GENHTML=$ac_cv_path_GENHTML -if test -n "$GENHTML"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GENHTML" >&5 -printf "%s\n" "$GENHTML" >&6; } -else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 -printf "%s\n" "no" >&6; } -fi - - - - # remove all optimization from CFLAGS - - CFLAGS=`echo "$CFLAGS" | $SED -e 's/-O[0-9]*//g'` - - - CFLAGS="$CFLAGS -O0 -fprofile-arcs -ftest-coverage" - LDFLAGS="$LDFLAGS -lgcov" -fi - -# Check whether --enable-internal-checks was given. -if test ${enable_internal_checks+y} -then : - enableval=$enable_internal_checks; use_internal_checks=$enableval -else $as_nop - use_internal_checks=no -fi - - -if test x$use_internal_checks = xyes; then - if true; then - ENABLE_INTERNAL_CHECKS_TRUE= - ENABLE_INTERNAL_CHECKS_FALSE='#' -else - ENABLE_INTERNAL_CHECKS_TRUE='#' - ENABLE_INTERNAL_CHECKS_FALSE= -fi - -else - if false; then - ENABLE_INTERNAL_CHECKS_TRUE= - ENABLE_INTERNAL_CHECKS_FALSE='#' -else - ENABLE_INTERNAL_CHECKS_TRUE='#' - ENABLE_INTERNAL_CHECKS_FALSE= -fi - -fi - - - # Check whether --enable-installed-tests was given. -if test ${enable_installed_tests+y} -then : - enableval=$enable_installed_tests; case ${enableval} in - yes) ENABLE_INSTALLED_TESTS="1" ;; - no) ENABLE_INSTALLED_TESTS="" ;; - *) as_fn_error $? "bad value ${enableval} for --enable-installed-tests" "$LINENO" 5 ;; - esac -fi - - if test "$ENABLE_INSTALLED_TESTS" = "1"; then - ENABLE_INSTALLED_TESTS_TRUE= - ENABLE_INSTALLED_TESTS_FALSE='#' -else - ENABLE_INSTALLED_TESTS_TRUE='#' - ENABLE_INSTALLED_TESTS_FALSE= -fi - - # Check whether --enable-always-build-tests was given. -if test ${enable_always_build_tests+y} -then : - enableval=$enable_always_build_tests; case ${enableval} in - yes) ENABLE_ALWAYS_BUILD_TESTS="1" ;; - no) ENABLE_ALWAYS_BUILD_TESTS="" ;; - *) as_fn_error $? "bad value ${enableval} for --enable-always-build-tests" "$LINENO" 5 ;; - esac -fi - - if test "$ENABLE_ALWAYS_BUILD_TESTS" = "1"; then - ENABLE_ALWAYS_BUILD_TESTS_TRUE= - ENABLE_ALWAYS_BUILD_TESTS_FALSE='#' -else - ENABLE_ALWAYS_BUILD_TESTS_TRUE='#' - ENABLE_ALWAYS_BUILD_TESTS_FALSE= -fi - - if test "$ENABLE_INSTALLED_TESTS" = "1"; then - installed_test_metadir=${datadir}/installed-tests/Flatpak - - installed_testdir=${libexecdir}/installed-tests/Flatpak - - fi - - -FLATPAK_MAJOR_VERSION=1 -FLATPAK_MINOR_VERSION=14 -FLATPAK_MICRO_VERSION=10 -FLATPAK_EXTRA_VERSION= -FLATPAK_INTERFACE_AGE=0 -FLATPAK_VERSION=1.14.10 - - - - - - -printf "%s\n" "#define PACKAGE_MAJOR_VERSION $FLATPAK_MAJOR_VERSION" >>confdefs.h - - -printf "%s\n" "#define PACKAGE_MINOR_VERSION $FLATPAK_MINOR_VERSION" >>confdefs.h - - -printf "%s\n" "#define PACKAGE_MICRO_VERSION $FLATPAK_MICRO_VERSION" >>confdefs.h - - -printf "%s\n" "#define PACKAGE_EXTRA_VERSION $FLATPAK_EXTRA_VERSION" >>confdefs.h - - -# libtool versioning -#LT_RELEASE=$FLATPAK_MAJOR_VERSION.$FLATPAK_MINOR_VERSION -#LT_CURRENT=`expr $FLATPAK_MICRO_VERSION - $FLATPAK_INTERFACE_AGE` -#LT_REVISION=$FLATPAK_INTERFACE_AGE -#LT_AGE=`expr $FLATPAK_BINARY_AGE - $FLATPAK_INTERFACE_AGE` -#LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE` - - - - -LT_VERSION_INFO="11410:0:11410" -LT_CURRENT_MINUS_AGE=0 - - - -ac_config_files="$ac_config_files Makefile doc/Makefile doc/reference/Makefile flatpak.pc common/flatpak-version-macros.h doc/reference/version.xml doc/flatpak-docs.xml po/Makefile.in" - -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, we kill variables containing newlines. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -( - for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) { eval $ac_var=; unset $ac_var;} ;; - esac ;; - esac - done - - (set) 2>&1 | - case $as_nl`(ac_space=' '; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - # `set' does not quote correctly, so add quotes: double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \. - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; #( - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) | - sed ' - /^ac_cv_env_/b end - t clear - :clear - s/^\([^=]*\)=\(.*[{}].*\)$/test ${\1+y} || &/ - t end - s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - :end' >>confcache -if diff "$cache_file" confcache >/dev/null 2>&1; then :; else - if test -w "$cache_file"; then - if test "x$cache_file" != "x/dev/null"; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 -printf "%s\n" "$as_me: updating cache $cache_file" >&6;} - if test ! -f "$cache_file" || test -h "$cache_file"; then - cat confcache >"$cache_file" - else - case $cache_file in #( - */* | ?:*) - mv -f confcache "$cache_file"$$ && - mv -f "$cache_file"$$ "$cache_file" ;; #( - *) - mv -f confcache "$cache_file" ;; - esac - fi - fi - else - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 -printf "%s\n" "$as_me: not updating unwritable cache $cache_file" >&6;} - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -DEFS=-DHAVE_CONFIG_H - -ac_libobjs= -ac_ltlibobjs= -U= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' - ac_i=`printf "%s\n" "$ac_i" | sed "$ac_script"` - # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR - # will be set to the directory where LIBOBJS objects are built. - as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" - as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 -printf %s "checking that generated files are newer than configure... " >&6; } - if test -n "$am_sleep_pid"; then - # Hide warnings about reused PIDs. - wait $am_sleep_pid 2>/dev/null - fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: done" >&5 -printf "%s\n" "done" >&6; } -if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then - as_fn_error $? "conditional \"AMDEP\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then - as_fn_error $? "conditional \"am__fastdepCC\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi - if test -n "$EXEEXT"; then - am__EXEEXT_TRUE= - am__EXEEXT_FALSE='#' -else - am__EXEEXT_TRUE='#' - am__EXEEXT_FALSE= -fi - -if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then - as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${VALGRIND_ENABLED_TRUE}" && test -z "${VALGRIND_ENABLED_FALSE}"; then - as_fn_error $? "conditional \"VALGRIND_ENABLED\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${WITH_SYSTEM_BWRAP_TRUE}" && test -z "${WITH_SYSTEM_BWRAP_FALSE}"; then - as_fn_error $? "conditional \"WITH_SYSTEM_BWRAP\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${WITH_SYSTEM_BWRAP_TRUE}" && test -z "${WITH_SYSTEM_BWRAP_FALSE}"; then - as_fn_error $? "conditional \"WITH_SYSTEM_BWRAP\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${WITH_SYSTEM_DBUS_PROXY_TRUE}" && test -z "${WITH_SYSTEM_DBUS_PROXY_FALSE}"; then - as_fn_error $? "conditional \"WITH_SYSTEM_DBUS_PROXY\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${WITH_SYSTEM_DBUS_PROXY_TRUE}" && test -z "${WITH_SYSTEM_DBUS_PROXY_FALSE}"; then - as_fn_error $? "conditional \"WITH_SYSTEM_DBUS_PROXY\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${HAVE_LIBMALCONTENT_TRUE}" && test -z "${HAVE_LIBMALCONTENT_FALSE}"; then - as_fn_error $? "conditional \"HAVE_LIBMALCONTENT\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${USE_CURL_TRUE}" && test -z "${USE_CURL_FALSE}"; then - as_fn_error $? "conditional \"USE_CURL\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${USE_SOUP_TRUE}" && test -z "${USE_SOUP_FALSE}"; then - as_fn_error $? "conditional \"USE_SOUP\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${BUILD_SELINUX_MODULE_TRUE}" && test -z "${BUILD_SELINUX_MODULE_FALSE}"; then - as_fn_error $? "conditional \"BUILD_SELINUX_MODULE\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${BUILD_SYSTEM_HELPER_TRUE}" && test -z "${BUILD_SYSTEM_HELPER_FALSE}"; then - as_fn_error $? "conditional \"BUILD_SYSTEM_HELPER\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${BUILD_AUTO_SIDELOADING_TRUE}" && test -z "${BUILD_AUTO_SIDELOADING_FALSE}"; then - as_fn_error $? "conditional \"BUILD_AUTO_SIDELOADING\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${INSTALL_GDM_ENV_FILE_TRUE}" && test -z "${INSTALL_GDM_ENV_FILE_FALSE}"; then - as_fn_error $? "conditional \"INSTALL_GDM_ENV_FILE\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${PRIV_MODE_SETUID_TRUE}" && test -z "${PRIV_MODE_SETUID_FALSE}"; then - as_fn_error $? "conditional \"PRIV_MODE_SETUID\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_ASAN_TRUE}" && test -z "${ENABLE_ASAN_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_ASAN\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${BUILD_DOCUMENTATION_TRUE}" && test -z "${BUILD_DOCUMENTATION_FALSE}"; then - as_fn_error $? "conditional \"BUILD_DOCUMENTATION\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${HAVE_INTROSPECTION_TRUE}" && test -z "${HAVE_INTROSPECTION_FALSE}"; then - as_fn_error $? "conditional \"HAVE_INTROSPECTION\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${HAVE_GTK_DOC_TRUE}" && test -z "${HAVE_GTK_DOC_FALSE}"; then - as_fn_error $? "conditional \"HAVE_GTK_DOC\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_GTK_DOC_TRUE}" && test -z "${ENABLE_GTK_DOC_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_GTK_DOC\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GTK_DOC_BUILD_HTML_TRUE}" && test -z "${GTK_DOC_BUILD_HTML_FALSE}"; then - as_fn_error $? "conditional \"GTK_DOC_BUILD_HTML\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GTK_DOC_BUILD_PDF_TRUE}" && test -z "${GTK_DOC_BUILD_PDF_FALSE}"; then - as_fn_error $? "conditional \"GTK_DOC_BUILD_PDF\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GTK_DOC_USE_LIBTOOL_TRUE}" && test -z "${GTK_DOC_USE_LIBTOOL_FALSE}"; then - as_fn_error $? "conditional \"GTK_DOC_USE_LIBTOOL\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${GTK_DOC_USE_REBASE_TRUE}" && test -z "${GTK_DOC_USE_REBASE_FALSE}"; then - as_fn_error $? "conditional \"GTK_DOC_USE_REBASE\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_GTK_DOC_CHECK_TRUE}" && test -z "${ENABLE_GTK_DOC_CHECK_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_GTK_DOC_CHECK\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${DOCBOOK_DOCS_ENABLED_TRUE}" && test -z "${DOCBOOK_DOCS_ENABLED_FALSE}"; then - as_fn_error $? "conditional \"DOCBOOK_DOCS_ENABLED\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_INTERNAL_CHECKS_TRUE}" && test -z "${ENABLE_INTERNAL_CHECKS_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_INTERNAL_CHECKS\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_INTERNAL_CHECKS_TRUE}" && test -z "${ENABLE_INTERNAL_CHECKS_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_INTERNAL_CHECKS\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_INSTALLED_TESTS_TRUE}" && test -z "${ENABLE_INSTALLED_TESTS_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_INSTALLED_TESTS\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi -if test -z "${ENABLE_ALWAYS_BUILD_TESTS_TRUE}" && test -z "${ENABLE_ALWAYS_BUILD_TESTS_FALSE}"; then - as_fn_error $? "conditional \"ENABLE_ALWAYS_BUILD_TESTS\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi - -: "${CONFIG_STATUS=./config.status}" -ac_write_fail=0 -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 -printf "%s\n" "$as_me: creating $CONFIG_STATUS" >&6;} -as_write_fail=0 -cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=\${CONFIG_SHELL-$SHELL} -export SHELL -_ASEOF -cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -as_nop=: -if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 -then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else $as_nop - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - - -# Reset variables that may have inherited troublesome values from -# the environment. - -# IFS needs to be set, to space, tab, and newline, in precisely that order. -# (If _AS_PATH_WALK were called with IFS unset, it would have the -# side effect of setting IFS to empty, thus disabling word splitting.) -# Quoting is to prevent editors from complaining about space-tab. -as_nl=' -' -export as_nl -IFS=" "" $as_nl" - -PS1='$ ' -PS2='> ' -PS4='+ ' - -# Ensure predictable behavior from utilities with locale-dependent output. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# We cannot yet rely on "unset" to work, but we need these variables -# to be unset--not just set to an empty or harmless value--now, to -# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh). This construct -# also avoids known problems related to "unset" and subshell syntax -# in other old shells (e.g. bash 2.01 and pdksh 5.2.14). -for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH -do eval test \${$as_var+y} \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done - -# Ensure that fds 0, 1, and 2 are open. -if (exec 3>&0) 2>/dev/null; then :; else exec 0&1) 2>/dev/null; then :; else exec 1>/dev/null; fi -if (exec 3>&2) ; then :; else exec 2>/dev/null; fi - -# The user is always right. -if ${PATH_SEPARATOR+false} :; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - case $as_dir in #((( - '') as_dir=./ ;; - */) ;; - *) as_dir=$as_dir/ ;; - esac - test -r "$as_dir$0" && as_myself=$as_dir$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - printf "%s\n" "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset - -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null -then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else $as_nop - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null -then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else $as_nop - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -printf "%s\n" X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - - -# Determine whether it's possible to make 'echo' print without a newline. -# These variables are no longer used directly by Autoconf, but are AC_SUBSTed -# for compatibility with existing Makefiles. -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -# For backward compatibility with old third-party macros, we provide -# the shell variables $as_echo and $as_echo_n. New code should use -# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively. -as_echo='printf %s\n' -as_echo_n='printf %s' - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -pR' - fi -else - as_ln_s='cp -pR' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -printf "%s\n" X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - - -# as_fn_executable_p FILE -# ----------------------- -# Test if FILE is an executable regular file. -as_fn_executable_p () -{ - test -f "$1" && test -x "$1" -} # as_fn_executable_p -as_test_x='test -x' -as_executable_p=as_fn_executable_p - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -_ASEOF -test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by Flatpak $as_me 1.14.10, which was -generated by GNU Autoconf 2.71. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -_ACEOF - -case $ac_config_files in *" -"*) set x $ac_config_files; shift; ac_config_files=$*;; -esac - -case $ac_config_headers in *" -"*) set x $ac_config_headers; shift; ac_config_headers=$*;; -esac - - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -# Files that config.status was made for. -config_files="$ac_config_files" -config_headers="$ac_config_headers" -config_commands="$ac_config_commands" - -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to . -Flatpak home page: ." - -_ACEOF -ac_cs_config=`printf "%s\n" "$ac_configure_args" | sed "$ac_safe_unquote"` -ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\''/g"` -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -ac_cs_config='$ac_cs_config_escaped' -ac_cs_version="\\ -Flatpak config.status 1.14.10 -configured by $0, generated by GNU Autoconf 2.71, - with options \\"\$ac_cs_config\\" - -Copyright (C) 2021 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='$ac_pwd' -srcdir='$srcdir' -INSTALL='$INSTALL' -MKDIR_P='$MKDIR_P' -AWK='$AWK' -test -n "\$AWK" || AWK=awk -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=?*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - --*=) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg= - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - printf "%s\n" "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - printf "%s\n" "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - '') as_fn_error $? "missing file argument" ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append CONFIG_HEADERS " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - as_fn_error $? "ambiguous option: \`$1' -Try \`$0 --help' for more information.";; - --help | --hel | -h ) - printf "%s\n" "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -if \$ac_cs_recheck; then - set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion - shift - \printf "%s\n" "running CONFIG_SHELL=$SHELL \$*" >&6 - CONFIG_SHELL='$SHELL' - export CONFIG_SHELL - exec "\$@" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - printf "%s\n" "$ac_log" -} >&5 - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -# -# INIT-COMMANDS -# - - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -sed_quote_subst='$sed_quote_subst' -double_quote_subst='$double_quote_subst' -delay_variable_subst='$delay_variable_subst' -enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`' -macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`' -macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`' -enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`' -pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`' -enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`' -shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`' -SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`' -ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`' -PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`' -host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`' -host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`' -host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`' -build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`' -build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`' -build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`' -SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`' -Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`' -GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`' -EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`' -FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`' -LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`' -NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`' -LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`' -max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`' -ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`' -exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`' -lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`' -lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`' -lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`' -lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`' -lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`' -reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`' -reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`' -FILECMD='`$ECHO "$FILECMD" | $SED "$delay_single_quote_subst"`' -OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`' -deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`' -file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`' -file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`' -want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`' -DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`' -sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`' -AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`' -lt_ar_flags='`$ECHO "$lt_ar_flags" | $SED "$delay_single_quote_subst"`' -AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`' -archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`' -STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`' -RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`' -old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`' -old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`' -old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`' -lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`' -CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`' -CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`' -compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`' -GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' -lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`' -nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`' -lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`' -lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`' -objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`' -MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`' -lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`' -lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`' -lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`' -lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`' -lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`' -need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`' -MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`' -DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`' -NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`' -LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`' -OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`' -OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`' -libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`' -shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`' -extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`' -archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`' -enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`' -export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`' -whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`' -compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`' -old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`' -old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`' -archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`' -archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`' -module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`' -module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`' -with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`' -allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`' -no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`' -hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`' -hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`' -hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`' -hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`' -hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`' -hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`' -hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`' -inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`' -link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`' -always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`' -export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`' -exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`' -include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`' -prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`' -postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`' -file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`' -variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`' -need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`' -need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`' -version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`' -runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`' -shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`' -shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`' -libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`' -library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`' -soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`' -install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`' -postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`' -postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`' -finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`' -finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`' -hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`' -sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`' -configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`' -configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`' -hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`' -enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`' -enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`' -enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`' -old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`' -striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`' - -LTCC='$LTCC' -LTCFLAGS='$LTCFLAGS' -compiler='$compiler_DEFAULT' - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -\$1 -_LTECHO_EOF' -} - -# Quote evaled strings. -for var in SHELL \ -ECHO \ -PATH_SEPARATOR \ -SED \ -GREP \ -EGREP \ -FGREP \ -LD \ -NM \ -LN_S \ -lt_SP2NL \ -lt_NL2SP \ -reload_flag \ -FILECMD \ -OBJDUMP \ -deplibs_check_method \ -file_magic_cmd \ -file_magic_glob \ -want_nocaseglob \ -DLLTOOL \ -sharedlib_from_linklib_cmd \ -AR \ -archiver_list_spec \ -STRIP \ -RANLIB \ -CC \ -CFLAGS \ -compiler \ -lt_cv_sys_global_symbol_pipe \ -lt_cv_sys_global_symbol_to_cdecl \ -lt_cv_sys_global_symbol_to_import \ -lt_cv_sys_global_symbol_to_c_name_address \ -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ -lt_cv_nm_interface \ -nm_file_list_spec \ -lt_cv_truncate_bin \ -lt_prog_compiler_no_builtin_flag \ -lt_prog_compiler_pic \ -lt_prog_compiler_wl \ -lt_prog_compiler_static \ -lt_cv_prog_compiler_c_o \ -need_locks \ -MANIFEST_TOOL \ -DSYMUTIL \ -NMEDIT \ -LIPO \ -OTOOL \ -OTOOL64 \ -shrext_cmds \ -export_dynamic_flag_spec \ -whole_archive_flag_spec \ -compiler_needs_object \ -with_gnu_ld \ -allow_undefined_flag \ -no_undefined_flag \ -hardcode_libdir_flag_spec \ -hardcode_libdir_separator \ -exclude_expsyms \ -include_expsyms \ -file_list_spec \ -variables_saved_for_relink \ -libname_spec \ -library_names_spec \ -soname_spec \ -install_override_mode \ -finish_eval \ -old_striplib \ -striplib; do - case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in - *[\\\\\\\`\\"\\\$]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes - ;; - *) - eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" - ;; - esac -done - -# Double-quote double-evaled strings. -for var in reload_cmds \ -old_postinstall_cmds \ -old_postuninstall_cmds \ -old_archive_cmds \ -extract_expsyms_cmds \ -old_archive_from_new_cmds \ -old_archive_from_expsyms_cmds \ -archive_cmds \ -archive_expsym_cmds \ -module_cmds \ -module_expsym_cmds \ -export_symbols_cmds \ -prelink_cmds \ -postlink_cmds \ -postinstall_cmds \ -postuninstall_cmds \ -finish_cmds \ -sys_lib_search_path_spec \ -configure_time_dlsearch_path \ -configure_time_lt_sys_library_path; do - case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in - *[\\\\\\\`\\"\\\$]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes - ;; - *) - eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" - ;; - esac -done - -ac_aux_dir='$ac_aux_dir' - -# See if we are running on zsh, and set the options that allow our -# commands through without removal of \ escapes INIT. -if test -n "\${ZSH_VERSION+set}"; then - setopt NO_GLOB_SUBST -fi - - - PACKAGE='$PACKAGE' - VERSION='$VERSION' - RM='$RM' - ofile='$ofile' - - - -AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}" -# Capture the value of obsolete ALL_LINGUAS because we need it to compute - # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it - # from automake < 1.5. - eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' - # Capture the value of LINGUAS because we need it to compute CATALOGS. - LINGUAS="${LINGUAS-%UNSET%}" - - -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "po-directories") CONFIG_COMMANDS="$CONFIG_COMMANDS po-directories" ;; - "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; - "doc/reference/Makefile") CONFIG_FILES="$CONFIG_FILES doc/reference/Makefile" ;; - "flatpak.pc") CONFIG_FILES="$CONFIG_FILES flatpak.pc" ;; - "common/flatpak-version-macros.h") CONFIG_FILES="$CONFIG_FILES common/flatpak-version-macros.h" ;; - "doc/reference/version.xml") CONFIG_FILES="$CONFIG_FILES doc/reference/version.xml" ;; - "doc/flatpak-docs.xml") CONFIG_FILES="$CONFIG_FILES doc/flatpak-docs.xml" ;; - "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; - - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test ${CONFIG_FILES+y} || CONFIG_FILES=$config_files - test ${CONFIG_HEADERS+y} || CONFIG_HEADERS=$config_headers - test ${CONFIG_COMMANDS+y} || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= ac_tmp= - trap 'exit_status=$? - : "${ac_tmp:=$tmp}" - { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 -ac_tmp=$tmp - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$ac_tmp/subs1.awk" && -_ACEOF - - -{ - echo "cat >conf$$subs.awk <<_ACEOF" && - echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && - echo "_ACEOF" -} >conf$$subs.sh || - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 -ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` -ac_delim='%!_!# ' -for ac_last_try in false false false false false :; do - . ./conf$$subs.sh || - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 - - ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` - if test $ac_delim_n = $ac_delim_num; then - break - elif $ac_last_try; then - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 - else - ac_delim="$ac_delim!$ac_delim _$ac_delim!! " - fi -done -rm -f conf$$subs.sh - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && -_ACEOF -sed -n ' -h -s/^/S["/; s/!.*/"]=/ -p -g -s/^[^!]*!// -:repl -t repl -s/'"$ac_delim"'$// -t delim -:nl -h -s/\(.\{148\}\)..*/\1/ -t more1 -s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ -p -n -b repl -:more1 -s/["\\]/\\&/g; s/^/"/; s/$/"\\/ -p -g -s/.\{148\}// -t nl -:delim -h -s/\(.\{148\}\)..*/\1/ -t more2 -s/["\\]/\\&/g; s/^/"/; s/$/"/ -p -b -:more2 -s/["\\]/\\&/g; s/^/"/; s/$/"\\/ -p -g -s/.\{148\}// -t delim -' >$CONFIG_STATUS || ac_write_fail=1 -rm -f conf$$subs.awk -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -_ACAWK -cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ - || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 -_ACEOF - -# VPATH may cause trouble with some makes, so we remove sole $(srcdir), -# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ -h -s/// -s/^/:/ -s/[ ]*$/:/ -s/:\$(srcdir):/:/g -s/:\${srcdir}:/:/g -s/:@srcdir@:/:/g -s/^:*// -s/:*$// -x -s/\(=[ ]*\).*/\1/ -G -s/\n// -s/^[^=]*=[ ]*$// -}' -fi - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -fi # test -n "$CONFIG_FILES" - -# Set up the scripts for CONFIG_HEADERS section. -# No need to generate them if there are no CONFIG_HEADERS. -# This happens for instance with `./config.status Makefile'. -if test -n "$CONFIG_HEADERS"; then -cat >"$ac_tmp/defines.awk" <<\_ACAWK || -BEGIN { -_ACEOF - -# Transform confdefs.h into an awk script `defines.awk', embedded as -# here-document in config.status, that substitutes the proper values into -# config.h.in to produce config.h. - -# Create a delimiter string that does not exist in confdefs.h, to ease -# handling of long lines. -ac_delim='%!_!# ' -for ac_last_try in false false :; do - ac_tt=`sed -n "/$ac_delim/p" confdefs.h` - if test -z "$ac_tt"; then - break - elif $ac_last_try; then - as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 - else - ac_delim="$ac_delim!$ac_delim _$ac_delim!! " - fi -done - -# For the awk script, D is an array of macro values keyed by name, -# likewise P contains macro parameters if any. Preserve backslash -# newline sequences. - -ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* -sed -n ' -s/.\{148\}/&'"$ac_delim"'/g -t rset -:rset -s/^[ ]*#[ ]*define[ ][ ]*/ / -t def -d -:def -s/\\$// -t bsnl -s/["\\]/\\&/g -s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ -D["\1"]=" \3"/p -s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p -d -:bsnl -s/["\\]/\\&/g -s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ -D["\1"]=" \3\\\\\\n"\\/p -t cont -s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p -t cont -d -:cont -n -s/.\{148\}/&'"$ac_delim"'/g -t clear -:clear -s/\\$// -t bsnlc -s/["\\]/\\&/g; s/^/"/; s/$/"/p -d -:bsnlc -s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p -b cont -' >$CONFIG_STATUS || ac_write_fail=1 - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - for (key in D) D_is_set[key] = 1 - FS = "" -} -/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { - line = \$ 0 - split(line, arg, " ") - if (arg[1] == "#") { - defundef = arg[2] - mac1 = arg[3] - } else { - defundef = substr(arg[1], 2) - mac1 = arg[2] - } - split(mac1, mac2, "(") #) - macro = mac2[1] - prefix = substr(line, 1, index(line, defundef) - 1) - if (D_is_set[macro]) { - # Preserve the white space surrounding the "#". - print prefix "define", macro P[macro] D[macro] - next - } else { - # Replace #undef with comments. This is necessary, for example, - # in the case of _POSIX_SOURCE, which is predefined and required - # on some systems where configure will not decide to define it. - if (defundef == "undef") { - print "/*", prefix defundef, macro, "*/" - next - } - } -} -{ print } -_ACAWK -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 -fi # test -n "$CONFIG_HEADERS" - - -eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$ac_tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`printf "%s\n" "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - printf "%s\n" "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -printf "%s\n" "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`printf "%s\n" "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$ac_tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -printf "%s\n" X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac - ac_MKDIR_P=$MKDIR_P - case $MKDIR_P in - [\\/$]* | ?:[\\/]* ) ;; - */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; - esac -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -printf "%s\n" "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - ac_datarootdir_hack=' - s&@datadir@&$datadir&g - s&@docdir@&$docdir&g - s&@infodir@&$infodir&g - s&@localedir@&$localedir&g - s&@mandir@&$mandir&g - s&\\\${datarootdir}&$datarootdir&g' ;; -esac -_ACEOF - -# Neutralize VPATH when `$srcdir' = `.'. -# Shell code in configure.ac might set extrasub. -# FIXME: do we really want to maintain this feature? -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -ac_sed_extra="$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -s&@MKDIR_P@&$ac_MKDIR_P&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ - >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ - "$ac_tmp/out"`; test -z "$ac_out"; } && - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&5 -printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&2;} - - rm -f "$ac_tmp/stdin" - case $ac_file in - -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; - *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; - esac \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - ;; - :H) - # - # CONFIG_HEADER - # - if test x"$ac_file" != x-; then - { - printf "%s\n" "/* $configure_input */" >&1 \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" - } >"$ac_tmp/config.h" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 -printf "%s\n" "$as_me: $ac_file is unchanged" >&6;} - else - rm -f "$ac_file" - mv "$ac_tmp/config.h" "$ac_file" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - fi - else - printf "%s\n" "/* $configure_input */" >&1 \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ - || as_fn_error $? "could not create -" "$LINENO" 5 - fi -# Compute "$ac_file"'s index in $config_headers. -_am_arg="$ac_file" -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $_am_arg | $_am_arg:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || -$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$_am_arg" : 'X\(//\)[^/]' \| \ - X"$_am_arg" : 'X\(//\)$' \| \ - X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || -printf "%s\n" X"$_am_arg" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'`/stamp-h$_am_stamp_count - ;; - - :C) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 -printf "%s\n" "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "libtool":C) - - # See if we are running on zsh, and set the options that allow our - # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}"; then - setopt NO_GLOB_SUBST - fi - - cfgfile=${ofile}T - trap "$RM \"$cfgfile\"; exit 1" 1 2 15 - $RM "$cfgfile" - - cat <<_LT_EOF >> "$cfgfile" -#! $SHELL -# Generated automatically by $as_me ($PACKAGE) $VERSION -# NOTE: Changes made to this file will be lost: look at ltmain.sh. - -# Provide generalized library-building support services. -# Written by Gordon Matzigkeit, 1996 - -# Copyright (C) 2014 Free Software Foundation, Inc. -# This is free software; see the source for copying conditions. There is NO -# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -# GNU Libtool is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of of the License, or -# (at your option) any later version. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program or library that is built -# using GNU Libtool, you may include this file under the same -# distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - - -# The names of the tagged configurations supported by this script. -available_tags='' - -# Configured defaults for sys_lib_dlsearch_path munging. -: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} - -# ### BEGIN LIBTOOL CONFIG - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Which release of libtool.m4 was used? -macro_version=$macro_version -macro_revision=$macro_revision - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# What type of objects to build. -pic_mode=$pic_mode - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# Shared archive member basename,for filename based shared library versioning on AIX. -shared_archive_member_spec=$shared_archive_member_spec - -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL - -# An echo program that protects backslashes. -ECHO=$lt_ECHO - -# The PATH separator for the build system. -PATH_SEPARATOR=$lt_PATH_SEPARATOR - -# The host system. -host_alias=$host_alias -host=$host -host_os=$host_os - -# The build system. -build_alias=$build_alias -build=$build -build_os=$build_os - -# A sed program that does not truncate output. -SED=$lt_SED - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="\$SED -e 1s/^X//" - -# A grep program that handles long lines. -GREP=$lt_GREP - -# An ERE matcher. -EGREP=$lt_EGREP - -# A literal string matcher. -FGREP=$lt_FGREP - -# A BSD- or MS-compatible name lister. -NM=$lt_NM - -# Whether we need soft or hard links. -LN_S=$lt_LN_S - -# What is the maximum length of a command? -max_cmd_len=$max_cmd_len - -# Object file suffix (normally "o"). -objext=$ac_objext - -# Executable file suffix (normally ""). -exeext=$exeext - -# whether the shell understands "unset". -lt_unset=$lt_unset - -# turn spaces into newlines. -SP2NL=$lt_lt_SP2NL - -# turn newlines into spaces. -NL2SP=$lt_lt_NL2SP - -# convert \$build file names to \$host format. -to_host_file_cmd=$lt_cv_to_host_file_cmd - -# convert \$build files to toolchain format. -to_tool_file_cmd=$lt_cv_to_tool_file_cmd - -# A file(cmd) program that detects file types. -FILECMD=$lt_FILECMD - -# An object symbol dumper. -OBJDUMP=$lt_OBJDUMP - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$lt_deplibs_check_method - -# Command to use when deplibs_check_method = "file_magic". -file_magic_cmd=$lt_file_magic_cmd - -# How to find potential files when deplibs_check_method = "file_magic". -file_magic_glob=$lt_file_magic_glob - -# Find potential files using nocaseglob when deplibs_check_method = "file_magic". -want_nocaseglob=$lt_want_nocaseglob - -# DLL creation program. -DLLTOOL=$lt_DLLTOOL - -# Command to associate shared and link libraries. -sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd - -# The archiver. -AR=$lt_AR - -# Flags to create an archive (by configure). -lt_ar_flags=$lt_ar_flags - -# Flags to create an archive. -AR_FLAGS=\${ARFLAGS-"\$lt_ar_flags"} - -# How to feed a file listing to the archiver. -archiver_list_spec=$lt_archiver_list_spec - -# A symbol stripping program. -STRIP=$lt_STRIP - -# Commands used to install an old-style archive. -RANLIB=$lt_RANLIB -old_postinstall_cmds=$lt_old_postinstall_cmds -old_postuninstall_cmds=$lt_old_postuninstall_cmds - -# Whether to use a lock for old archive extraction. -lock_old_archive_extraction=$lock_old_archive_extraction - -# A C compiler. -LTCC=$lt_CC - -# LTCC compiler flags. -LTCFLAGS=$lt_CFLAGS - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe - -# Transform the output of nm in a proper C declaration. -global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl - -# Transform the output of nm into a list of symbols to manually relocate. -global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import - -# Transform the output of nm in a C name address pair. -global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address - -# Transform the output of nm in a C name address pair when lib prefix is needed. -global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix - -# The name lister interface. -nm_interface=$lt_lt_cv_nm_interface - -# Specify filename containing input files for \$NM. -nm_file_list_spec=$lt_nm_file_list_spec - -# The root where to search for dependent libraries,and where our libraries should be installed. -lt_sysroot=$lt_sysroot - -# Command to truncate a binary pipe. -lt_truncate_bin=$lt_lt_cv_truncate_bin - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# Used to examine libraries when file_magic_cmd begins with "file". -MAGIC_CMD=$MAGIC_CMD - -# Must we lock files when doing compilation? -need_locks=$lt_need_locks - -# Manifest tool. -MANIFEST_TOOL=$lt_MANIFEST_TOOL - -# Tool to manipulate archived DWARF debug symbol files on Mac OS X. -DSYMUTIL=$lt_DSYMUTIL - -# Tool to change global to local symbols on Mac OS X. -NMEDIT=$lt_NMEDIT - -# Tool to manipulate fat objects and archives on Mac OS X. -LIPO=$lt_LIPO - -# ldd/readelf like tool for Mach-O binaries on Mac OS X. -OTOOL=$lt_OTOOL - -# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. -OTOOL64=$lt_OTOOL64 - -# Old archive suffix (normally "a"). -libext=$libext - -# Shared library suffix (normally ".so"). -shrext_cmds=$lt_shrext_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$lt_extract_expsyms_cmds - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at link time. -variables_saved_for_relink=$lt_variables_saved_for_relink - -# Do we need the "lib" prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Library versioning type. -version_type=$version_type - -# Shared library runtime path variable. -runpath_var=$runpath_var - -# Shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# Format of library name prefix. -libname_spec=$lt_libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME -library_names_spec=$lt_library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$lt_soname_spec - -# Permission mode override for installation of shared libraries. -install_override_mode=$lt_install_override_mode - -# Command to use after installation of a shared archive. -postinstall_cmds=$lt_postinstall_cmds - -# Command to use after uninstallation of a shared archive. -postuninstall_cmds=$lt_postuninstall_cmds - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$lt_finish_cmds - -# As "finish_cmds", except a single script fragment to be evaled but -# not shown. -finish_eval=$lt_finish_eval - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Compile-time system search path for libraries. -sys_lib_search_path_spec=$lt_sys_lib_search_path_spec - -# Detected run-time system search path for libraries. -sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path - -# Explicit LT_SYS_LIBRARY_PATH set during ./configure time. -configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Commands to strip libraries. -old_striplib=$lt_old_striplib -striplib=$lt_striplib - - -# The linker used to build libraries. -LD=$lt_LD - -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds - -# Commands used to build an old-style archive. -old_archive_cmds=$lt_old_archive_cmds - -# A language specific compiler. -CC=$lt_compiler - -# Is the compiler the GNU compiler? -with_gcc=$GCC - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag - -# Additional compiler flags for building library objects. -pic_flag=$lt_lt_prog_compiler_pic - -# How to pass a linker flag through the compiler. -wl=$lt_lt_prog_compiler_wl - -# Compiler flag to prevent dynamic linking. -link_static_flag=$lt_lt_prog_compiler_static - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$lt_lt_cv_prog_compiler_c_o - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$archive_cmds_need_lc - -# Whether or not to disallow shared libs when runtime libs are static. -allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$lt_whole_archive_flag_spec - -# Whether the compiler copes with passing no objects directly. -compiler_needs_object=$lt_compiler_needs_object - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$lt_old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - -# Commands used to build a shared archive. -archive_cmds=$lt_archive_cmds -archive_expsym_cmds=$lt_archive_expsym_cmds - -# Commands used to build a loadable module if different from building -# a shared archive. -module_cmds=$lt_module_cmds -module_expsym_cmds=$lt_module_expsym_cmds - -# Whether we are building with GNU ld or not. -with_gnu_ld=$lt_with_gnu_ld - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$lt_allow_undefined_flag - -# Flag that enforces no undefined symbols. -no_undefined_flag=$lt_no_undefined_flag - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist -hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec - -# Whether we need a single "-rpath" flag with a separated argument. -hardcode_libdir_separator=$lt_hardcode_libdir_separator - -# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes -# DIR into the resulting binary. -hardcode_direct=$hardcode_direct - -# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes -# DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \$shlibpath_var if the -# library is relocated. -hardcode_direct_absolute=$hardcode_direct_absolute - -# Set to "yes" if using the -LDIR flag during linking hardcodes DIR -# into the resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR -# into the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Set to "yes" if building a shared library automatically hardcodes DIR -# into the library and all subsequent libraries and executables linked -# against it. -hardcode_automatic=$hardcode_automatic - -# Set to yes if linker adds runtime paths of dependent libraries -# to runtime path list. -inherit_rpath=$inherit_rpath - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Set to "yes" if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$lt_export_symbols_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$lt_exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$lt_include_expsyms - -# Commands necessary for linking programs (against libraries) with templates. -prelink_cmds=$lt_prelink_cmds - -# Commands necessary for finishing linking programs. -postlink_cmds=$lt_postlink_cmds - -# Specify filename containing input files. -file_list_spec=$lt_file_list_spec - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# ### END LIBTOOL CONFIG - -_LT_EOF - - cat <<'_LT_EOF' >> "$cfgfile" - -# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE - -# func_munge_path_list VARIABLE PATH -# ----------------------------------- -# VARIABLE is name of variable containing _space_ separated list of -# directories to be munged by the contents of PATH, which is string -# having a format: -# "DIR[:DIR]:" -# string "DIR[ DIR]" will be prepended to VARIABLE -# ":DIR[:DIR]" -# string "DIR[ DIR]" will be appended to VARIABLE -# "DIRP[:DIRP]::[DIRA:]DIRA" -# string "DIRP[ DIRP]" will be prepended to VARIABLE and string -# "DIRA[ DIRA]" will be appended to VARIABLE -# "DIR[:DIR]" -# VARIABLE will be replaced by "DIR[ DIR]" -func_munge_path_list () -{ - case x$2 in - x) - ;; - *:) - eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" - ;; - x:*) - eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" - ;; - *::*) - eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" - eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" - ;; - *) - eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" - ;; - esac -} - - -# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. -func_cc_basename () -{ - for cc_temp in $*""; do - case $cc_temp in - compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; - distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; - \-*) ;; - *) break;; - esac - done - func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` -} - - -# ### END FUNCTIONS SHARED WITH CONFIGURE - -_LT_EOF - - case $host_os in - aix3*) - cat <<\_LT_EOF >> "$cfgfile" -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test set != "${COLLECT_NAMES+set}"; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -_LT_EOF - ;; - esac - - - -ltmain=$ac_aux_dir/ltmain.sh - - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - $SED '$q' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - mv -f "$cfgfile" "$ofile" || - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" - - ;; - "depfiles":C) test x"$AMDEP_TRUE" != x"" || { - # Older Autoconf quotes --file arguments for eval, but not when files - # are listed without --file. Let's play safe and only enable the eval - # if we detect the quoting. - # TODO: see whether this extra hack can be removed once we start - # requiring Autoconf 2.70 or later. - case $CONFIG_FILES in #( - *\'*) : - eval set x "$CONFIG_FILES" ;; #( - *) : - set x $CONFIG_FILES ;; #( - *) : - ;; -esac - shift - # Used to flag and report bootstrapping failures. - am_rc=0 - for am_mf - do - # Strip MF so we end up with the name of the file. - am_mf=`printf "%s\n" "$am_mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile which includes - # dependency-tracking related rules and includes. - # Grep'ing the whole file directly is not great: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \ - || continue - am_dirpart=`$as_dirname -- "$am_mf" || -$as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$am_mf" : 'X\(//\)[^/]' \| \ - X"$am_mf" : 'X\(//\)$' \| \ - X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || -printf "%s\n" X"$am_mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - am_filepart=`$as_basename -- "$am_mf" || -$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \ - X"$am_mf" : 'X\(//\)$' \| \ - X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || -printf "%s\n" X/"$am_mf" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { echo "$as_me:$LINENO: cd "$am_dirpart" \ - && sed -e '/# am--include-marker/d' "$am_filepart" \ - | $MAKE -f - am--depfiles" >&5 - (cd "$am_dirpart" \ - && sed -e '/# am--include-marker/d' "$am_filepart" \ - | $MAKE -f - am--depfiles) >&5 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } || am_rc=$? - done - if test $am_rc -ne 0; then - { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "Something went wrong bootstrapping makefile fragments - for automatic dependency tracking. If GNU make was not used, consider - re-running the configure script with MAKE=\"gmake\" (or whatever is - necessary). You can also try re-running configure with the - '--disable-dependency-tracking' option to at least be able to build - the package (albeit without support for automatic dependency tracking). -See \`config.log' for more details" "$LINENO" 5; } - fi - { am_dirpart=; unset am_dirpart;} - { am_filepart=; unset am_filepart;} - { am_mf=; unset am_mf;} - { am_rc=; unset am_rc;} - rm -f conftest-deps.mk -} - ;; - "po-directories":C) - for ac_file in $CONFIG_FILES; do - # Support "outfile[:infile[:infile...]]" - case "$ac_file" in - *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; - esac - # PO directories have a Makefile.in generated from Makefile.in.in. - case "$ac_file" in */Makefile.in) - # Adjust a relative srcdir. - ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` - ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'` - ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` - # In autoconf-2.13 it is called $ac_given_srcdir. - # In autoconf-2.50 it is called $srcdir. - test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" - case "$ac_given_srcdir" in - .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; - /*) top_srcdir="$ac_given_srcdir" ;; - *) top_srcdir="$ac_dots$ac_given_srcdir" ;; - esac - # Treat a directory as a PO directory if and only if it has a - # POTFILES.in file. This allows packages to have multiple PO - # directories under different names or in different locations. - if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then - rm -f "$ac_dir/POTFILES" - test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" - gt_tab=`printf '\t'` - cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ${gt_tab}]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" - POMAKEFILEDEPS="POTFILES.in" - # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend - # on $ac_dir but don't depend on user-specified configuration - # parameters. - if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then - # The LINGUAS file contains the set of available languages. - if test -n "$OBSOLETE_ALL_LINGUAS"; then - test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" - fi - ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` - # Hide the ALL_LINGUAS assignment from automake < 1.5. - eval 'ALL_LINGUAS''=$ALL_LINGUAS_' - POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" - else - # The set of available languages was given in configure.in. - # Hide the ALL_LINGUAS assignment from automake < 1.5. - eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' - fi - # Compute POFILES - # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) - # Compute UPDATEPOFILES - # as $(foreach lang, $(ALL_LINGUAS), $(lang).po-update) - # Compute DUMMYPOFILES - # as $(foreach lang, $(ALL_LINGUAS), $(lang).nop) - # Compute GMOFILES - # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) - case "$ac_given_srcdir" in - .) srcdirpre= ;; - *) srcdirpre='$(srcdir)/' ;; - esac - POFILES= - UPDATEPOFILES= - DUMMYPOFILES= - GMOFILES= - for lang in $ALL_LINGUAS; do - POFILES="$POFILES $srcdirpre$lang.po" - UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" - DUMMYPOFILES="$DUMMYPOFILES $lang.nop" - GMOFILES="$GMOFILES $srcdirpre$lang.gmo" - done - # CATALOGS depends on both $ac_dir and the user's LINGUAS - # environment variable. - INST_LINGUAS= - if test -n "$ALL_LINGUAS"; then - for presentlang in $ALL_LINGUAS; do - useit=no - if test "%UNSET%" != "$LINGUAS"; then - desiredlanguages="$LINGUAS" - else - desiredlanguages="$ALL_LINGUAS" - fi - for desiredlang in $desiredlanguages; do - # Use the presentlang catalog if desiredlang is - # a. equal to presentlang, or - # b. a variant of presentlang (because in this case, - # presentlang can be used as a fallback for messages - # which are not translated in the desiredlang catalog). - case "$desiredlang" in - "$presentlang"*) useit=yes;; - esac - done - if test $useit = yes; then - INST_LINGUAS="$INST_LINGUAS $presentlang" - fi - done - fi - CATALOGS= - if test -n "$INST_LINGUAS"; then - for lang in $INST_LINGUAS; do - CATALOGS="$CATALOGS $lang.gmo" - done - fi - test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" - sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" - for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do - if test -f "$f"; then - case "$f" in - *.orig | *.bak | *~) ;; - *) cat "$f" >> "$ac_dir/Makefile" ;; - esac - fi - done - fi - ;; - esac - done ;; - - esac -done # for ac_tag - - -as_fn_exit 0 -_ACEOF -ac_clean_files=$ac_clean_files_save - -test $ac_write_fail = 0 || - as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || as_fn_exit 1 -fi -if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 -printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} -fi - - -if test x$BWRAP = xfalse ; then - build_bwrap="yes" -else - build_bwrap="no" -fi - -if test x$DBUS_PROXY = xfalse ; then - build_dbus_proxy="yes" -else - build_dbus_proxy="no" -fi - -echo "" -echo " Flatpak $FLATPAK_VERSION" -echo " ==============" -echo "" -echo " Build system helper: $enable_system_helper" -echo " Build selinux module: $enable_selinux_module" -echo " Build bubblewrap: $build_bwrap" -echo " Build dbus-proxy: $build_dbus_proxy" -echo " Use sandboxed triggers: $enable_sandboxed_triggers" -echo " Use seccomp: $enable_seccomp" -echo " Privileged group: $PRIVILEGED_GROUP" -echo " Privilege mode: $with_priv_mode" -echo " Use dconf: $have_dconf" -echo " Use libsystemd: $have_libsystemd" -echo " Use libmalcontent: $have_libmalcontent" -echo " Use libzstd: $have_zstd" -echo " Use auto sideloading: $enable_auto_sideloading" -echo " HTTP backend: $http_backend" -echo "" - diff --git a/configure.ac b/configure.ac deleted file mode 100644 index ee97fc8..0000000 --- a/configure.ac +++ /dev/null @@ -1,653 +0,0 @@ -AC_PREREQ([2.63]) - -# Making releases: -# FLATPAK_MICRO_VERSION += 1; -# FLATPAK_INTERFACE_AGE += 1; -# FLATPAK_BINARY_AGE += 1; -# if any functions have been added, set FLATPAK_INTERFACE_AGE to 0. -# if backwards compatibility has been broken, -# set FLATPAK_BINARY_AGE and FLATPAK_INTERFACE_AGE to 0. -# -# in easier to understand terms: -# -# on the stable branch, interface age == micro -# on the unstable (ie main), interface age = 0 - -m4_define([flatpak_major_version], [1]) -m4_define([flatpak_minor_version], [14]) -m4_define([flatpak_micro_version], [10]) -m4_define([flatpak_extra_version], []) -m4_define([flatpak_interface_age], [0]) -m4_define([flatpak_binary_age], - [m4_eval(10000 * flatpak_major_version + 100 * flatpak_minor_version + flatpak_micro_version)]) -m4_define([flatpak_version], - [flatpak_major_version.flatpak_minor_version.flatpak_micro_version()flatpak_extra_version]) - -AC_INIT([Flatpak], - [flatpak_version], - [https://github.com/flatpak/flatpak/issues], - [flatpak], - [http://flatpak.org/]) - -GLIB_REQS=2.46 -SYSTEM_BWRAP_REQS=0.5.0 -SYSTEM_DBUS_PROXY_REQS=0.1.0 -OSTREE_REQS=2020.8 - -AC_USE_SYSTEM_EXTENSIONS -AC_SYS_LARGEFILE - -AC_PROG_CC -AM_PROG_CC_C_O -AC_DISABLE_STATIC -AC_PROG_CC_STDC - -LT_PREREQ([2.2.6]) -LT_INIT([disable-static]) - -AC_CONFIG_SRCDIR([common/flatpak-dir.c]) -AC_CONFIG_HEADERS([config.h]) -AC_CONFIG_MACRO_DIR([m4]) -AM_INIT_AUTOMAKE([1.13.4 no-define no-dist-gzip dist-xz tar-ustar foreign subdir-objects]) -AC_PROG_SED -AC_PROG_BISON - -AM_GNU_GETTEXT([external]) -AM_GNU_GETTEXT_VERSION([0.18.2]) -AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$PACKAGE", [gettext domain]) - -# Enable silent rules is available -AM_SILENT_RULES([yes]) -AM_MAINTAINER_MODE([enable]) - -dnl This list is shared with https://github.com/ostreedev/ostree -CC_CHECK_FLAGS_APPEND([WARN_CFLAGS], [CFLAGS], [\ --pipe \ --Wall \ --Werror=shadow \ --Werror=empty-body \ --Werror=strict-prototypes \ --Werror=missing-prototypes \ --Werror=implicit-function-declaration \ -"-Werror=format=2 -Werror=format-security -Werror=format-nonliteral" \ --Werror=pointer-arith -Werror=init-self \ --Werror=missing-declarations \ --Werror=return-type \ --Werror=overflow \ --Werror=int-conversion \ --Werror=parenthesis \ --Werror=incompatible-pointer-types \ --Werror=misleading-indentation \ --Werror=missing-include-dirs \ -]) -AC_SUBST(WARN_CFLAGS) - -AX_VALGRIND_CHECK - -PKG_PROG_PKG_CONFIG([0.24]) - -AC_ARG_WITH(privileged_group, - AS_HELP_STRING([--with-privileged-group=GROUP],[Name of privileged group, [default=wheel]]), - with_privileged_group="$withval", with_privileged_group=wheel) -PRIVILEGED_GROUP=$with_privileged_group -AC_SUBST(PRIVILEGED_GROUP) - -AC_ARG_WITH(dbus_service_dir, - AS_HELP_STRING([--with-dbus-service-dir=PATH],[choose directory for dbus service files, [default=PREFIX/share/dbus-1/services]]), - with_dbus_service_dir="$withval", with_dbus_service_dir=$datadir/dbus-1/services) -DBUS_SERVICE_DIR=$with_dbus_service_dir -AC_SUBST(DBUS_SERVICE_DIR) - -AC_ARG_WITH(dbus_config_dir, - AS_HELP_STRING([--with-dbus-config-dir=PATH],[choose directory for dbus config files, [default=SYSCONFDIR/dbus-1/system.d]]), - with_dbus_config_dir="$withval", with_dbus_config_dir=${sysconfdir}/dbus-1/system.d) -DBUS_CONFIG_DIR=$with_dbus_config_dir -AC_SUBST(DBUS_CONFIG_DIR) - -AC_ARG_WITH([systemduserunitdir], - [AS_HELP_STRING([--with-systemduserunitdir=DIR], - [Directory for systemd user service files (default=PREFIX/lib/systemd/user)])], - [], - dnl This is deliberately not ${libdir}: systemd units always go in - dnl .../lib, never .../lib64 or .../lib/x86_64-linux-gnu - [with_systemduserunitdir='${prefix}/lib/systemd/user']) -AC_SUBST([systemduserunitdir], [$with_systemduserunitdir]) - -AC_ARG_WITH([systemdsystemunitdir], - [AS_HELP_STRING([--with-systemdsystemunitdir=DIR], - [Directory for systemd system service files (default=PREFIX/lib/systemd/system)])], - [], - dnl This is deliberately not ${libdir}: systemd units always go in - dnl .../lib, never .../lib64 or .../lib/x86_64-linux-gnu - [with_systemdsystemunitdir='${prefix}/lib/systemd/system']) -AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir]) - -AC_ARG_WITH([systemdsystemenvgendir], - [AS_HELP_STRING([--with-systemdsystemenvgendir=DIR], - [Directory for systemd system environment generators (default=PREFIX/lib/systemd/system-environment-generators)])], - [], - dnl This is deliberately not ${libdir}: systemd units always go in - dnl .../lib, never .../lib64 or .../lib/x86_64-linux-gnu - [with_systemdsystemenvgendir='${prefix}/lib/systemd/system-environment-generators']) -AC_SUBST([systemdsystemenvgendir], [$with_systemdsystemenvgendir]) - -AC_ARG_WITH([systemduserenvgendir], - [AS_HELP_STRING([--with-systemduserenvgendir=DIR], - [Directory for systemd user environment generators (default=PREFIX/lib/systemd/user-environment-generators)])], - [], - dnl This is deliberately not ${libdir}: systemd units always go in - dnl .../lib, never .../lib64 or .../lib/x86_64-linux-gnu - [with_systemduserenvgendir='${prefix}/lib/systemd/user-environment-generators']) -AC_SUBST([systemduserenvgendir], [$with_systemduserenvgendir]) - -AC_ARG_WITH(system_fonts_dir, - AS_HELP_STRING([--with-system-fonts-dir=PATH],[Directory where system fonts are, [default=/usr/share/fonts]]), - with_system_fonts_dir="$withval", with_system_fonts_dir=/usr/share/fonts) -SYSTEM_FONTS_DIR=$with_system_fonts_dir -AC_SUBST(SYSTEM_FONTS_DIR) - -AC_ARG_WITH(system_font_cache_dirs, - AS_HELP_STRING([--with-system-font-cache-dirs=PATHS],[Directory where the system font cache is, [default=/var/cache/fontconfig:/usr/lib/fontconfig/cache]]), - with_system_font_cache_dirs="$withval", with_system_font_cache_dirs=/var/cache/fontconfig:/usr/lib/fontconfig/cache) -SYSTEM_FONT_CACHE_DIRS=$with_system_font_cache_dirs -AC_SUBST(SYSTEM_FONT_CACHE_DIRS) - -AC_ARG_WITH(profile_dir, - AS_HELP_STRING([--with-profile-dir=PATH],[choose directory for profile.d files, [default=SYSCONFDIR/profile.d]]), - with_profile_dir="$withval", with_profile_dir=${sysconfdir}/profile.d) -PROFILE_DIR=$with_profile_dir -AC_SUBST(PROFILE_DIR) - -AC_ARG_VAR([BWRAP], [Bubblewrap executable]) -AC_ARG_WITH([system-bubblewrap], - [AS_HELP_STRING([--with-system-bubblewrap], [Use system bwrap executable [default=check $BWRAP]])], - [BWRAP="$withval"], - [BWRAP="${BWRAP:-false}"]) -CAP_LIB= -AS_CASE([$BWRAP], - [yes], - [BWRAP=bwrap], - [no], - [BWRAP=false], - [auto], - [AC_CHECK_PROG([BWRAP], [bwrap], [bwrap], [false])]) -if test "x$BWRAP" != xfalse; then - BWRAP_VERSION=`$BWRAP --version | sed 's,.*\ \([0-9]*\.[0-9]*\.[0-9]*\)$,\1,'` - AX_COMPARE_VERSION([$SYSTEM_BWRAP_REQS],[gt],[$BWRAP_VERSION], - [AC_MSG_ERROR([You need at least version $SYSTEM_BWRAP_REQS of bubblewrap to use the system installed version])]) - AS_IF([$BWRAP --help | grep '@<:@-@:>@-bind-fd' >/dev/null], - [:], - [AC_MSG_ERROR([$BWRAP does not list required option --bind-fd in its --help])]) - AM_CONDITIONAL([WITH_SYSTEM_BWRAP], [true]) -else - AC_CHECK_LIB(cap, cap_from_text, CAP_LIB=-lcap) - if test "$ac_cv_lib_cap_cap_from_text" != "yes"; then - AC_MSG_ERROR([*** libcap needed by bubblewrap but not found]) - fi - - AM_CONDITIONAL([WITH_SYSTEM_BWRAP], [false]) -fi -AC_SUBST([CAP_LIB]) - -AC_ARG_VAR([DBUS_PROXY], [dbus-proxy executable]) -AC_ARG_WITH([system-dbus-proxy], - [AS_HELP_STRING([--with-system-dbus-proxy], [Use system xdg-dbus-proxy executable [default=check $DBUS_PROXY]])], - [DBUS_PROXY="$withval"], - [DBUS_PROXY="${DBUS_PROXY:-false}"]) -AS_CASE([$DBUS_PROXY], - [yes], - [DBUS_PROXY=xdg-dbus-proxy], - [no], - [DBUS_PROXY=false], - [auto], - [AC_CHECK_PROG([DBUS_PROXY], [xdg-dbus-proxy], [xdg-dbus-proxy], [false])]) -if test "x$DBUS_PROXY" != xfalse; then - DBUS_PROXY_VERSION=[$( $DBUS_PROXY --version | sed 's,.*\ \([0-9]*\.[0-9]*\.[0-9]*\)$,\1,')] - AX_COMPARE_VERSION([$SYSTEM_DBUS_PROXY_REQS],[gt],[$DBUS_PROXY_VERSION], - [AC_MSG_ERROR([You need at least version $SYSTEM_DBUS_PROXY_REQS of xdg-dbus-proxy to use the system installed version (have $DBUS_PROXY_VERSION)])]) - AM_CONDITIONAL([WITH_SYSTEM_DBUS_PROXY], [true]) -else - AM_CONDITIONAL([WITH_SYSTEM_DBUS_PROXY], [false]) -fi - - -AC_CHECK_FUNCS(fdwalk) -LIBGLNX_CONFIGURE - -AC_CHECK_HEADER([sys/xattr.h], [], [AC_MSG_ERROR([You must have sys/xattr.h from glibc])]) -AC_CHECK_HEADER([sys/capability.h], have_caps=yes, [AC_MSG_ERROR([sys/capability.h header not found])]) - -AC_SUBST([GLIB_MKENUMS], [`$PKG_CONFIG --variable glib_mkenums glib-2.0`]) -AC_SUBST([GLIB_COMPILE_RESOURCES], [`$PKG_CONFIG --variable glib_compile_resources gio-2.0`]) -AC_SUBST([GDBUS_CODEGEN], [`$PKG_CONFIG --variable gdbus_codegen gio-2.0`]) - -POLKIT_GOBJECT_REQUIRED=0.98 - -PKG_CHECK_MODULES(ARCHIVE, [libarchive >= 2.8.0]) -PKG_CHECK_MODULES(BASE, [glib-2.0 >= $GLIB_REQS gio-2.0 gio-unix-2.0]) -PKG_CHECK_MODULES(XML, [libxml-2.0 >= 2.4]) -PKG_CHECK_MODULES(ZSTD, [libzstd >= 0.8.1], [have_zstd=yes], [have_zstd=no]) -if test $have_zstd = yes; then - AC_DEFINE(HAVE_ZSTD, 1, [Define if libzstd is available]) -fi -PKG_CHECK_MODULES(DCONF, [dconf >= 0.26], [have_dconf=yes], [have_dconf=no]) -if test $have_dconf = yes; then - AC_DEFINE(HAVE_DCONF, 1, [Define if dconf is available]) -fi -AC_ARG_WITH([systemd], AS_HELP_STRING([--with-systemd], - [Build with systemd support [default=auto]]), [], [with_systemd=auto],) -if test "x$with_systemd" != "xno"; then - PKG_CHECK_MODULES(SYSTEMD, [libsystemd], [have_libsystemd=yes], [have_libsystemd=no]) - if test $have_libsystemd = yes; then - AC_DEFINE(HAVE_LIBSYSTEMD, 1, [Define if libsystemd is available]) - elif test "x$with_systemd" == "xyes"; then - AC_MSG_ERROR([systemd was requested but it could not be found]) - fi -else - have_libsystemd=no -fi -PKG_CHECK_MODULES([MALCONTENT], [malcontent-0 >= 0.4.0], [have_libmalcontent=yes], [have_libmalcontent=no]) -AS_IF([test "$have_libmalcontent" = "yes"],[ - AC_DEFINE([HAVE_LIBMALCONTENT], [1], [Define if libmalcontent is available]) -]) -AM_CONDITIONAL([HAVE_LIBMALCONTENT],[test "$have_libmalcontent" = "yes"]) - -PKG_CHECK_MODULES(GLIB260, glib-2.0 >= 2.60, - [AC_DEFINE(GLIB_VERSION_MIN_REQUIRED, GLIB_VERSION_2_60, [Ignore massive GTimeVal deprecation warnings in 2.62])], - [true]) - -save_LIBS=$LIBS -LIBS=$ARCHIVE_LIBS -AC_CHECK_FUNCS(archive_read_support_filter_all) -LIBS=$save_LIBS - -CURL_DEPENDENCY=7.29.0 -AC_ARG_WITH(curl, - AS_HELP_STRING([--with-curl], [Use libcurl @<:@default=yes@:>@]), - [], [with_curl=yes]) -AS_IF([test x$with_curl != xno ], [ - PKG_CHECK_MODULES(CURL, libcurl >= $CURL_DEPENDENCY) - with_curl=yes - http_backend=curl - AC_DEFINE([HAVE_CURL], 1, [Define if we have libcurl.pc]) -], [ - PKG_CHECK_MODULES(SOUP, [libsoup-2.4]) - AC_DEFINE([HAVE_SOUP], 1, [Define if we have libsoup-2.4.pc]) - http_backend=soup -]) -AM_CONDITIONAL(USE_CURL, test x$with_curl != xno) -AM_CONDITIONAL(USE_SOUP, test x$with_curl == xno) -AC_SUBST(http_backend) - -LIBGPGME_DEPENDENCY="1.1.8" -PKG_CHECK_MODULES([DEP_GPGME], [gpgme >= 1.8.0], [have_gpgme=yes], [ - PKG_CHECK_MODULES([DEP_GPGME_PTHREAD], [gpgme-pthread >= $LIBGPGME_DEPENDENCY], [ - have_gpgme=yes - ], [ - m4_ifdef([AM_PATH_GPGME_PTHREAD], [ - AM_PATH_GPGME_PTHREAD([$LIBGPGME_DEPENDENCY], [have_gpgme=yes], [have_gpgme=no]) - ], [ - have_gpgme=no - ]) - ]) -]) -AS_IF([ test x$have_gpgme = xno ], [ - AC_MSG_ERROR([Need GPGME_PTHREAD version $LIBGPGME_DEPENDENCY or later]) -]) - -AC_ARG_ENABLE(selinux-module, - [AS_HELP_STRING([--enable-selinux-module],[Enable selinux module for system-helper])], - enable_selinux_module=$enableval, enable_selinux_module=auto) -if test x$enable_selinux_module = xauto ; then - AC_CHECK_FILE([/usr/share/selinux/devel/Makefile], [enable_selinux_module=yes], [enable_selinux_module=no]) -fi -if test x$enable_selinux_module = xyes ; then - AC_CHECK_FILE([/usr/share/selinux/devel/Makefile], [], [AC_MSG_ERROR([selinux-policy-devel needed to build selinux module])]) -fi -AM_CONDITIONAL(BUILD_SELINUX_MODULE, test x$enable_selinux_module = xyes) - -AC_ARG_ENABLE([system-helper], - AC_HELP_STRING([--disable-system-helper], - [Disable system helper]), - [], - [enable_system_helper=yes]) -if test "x$enable_system_helper" = "xyes"; then - PKG_CHECK_MODULES(POLKIT, \ - polkit-agent-1 >= $POLKIT_GOBJECT_REQUIRED) - AC_DEFINE([USE_SYSTEM_HELPER], [1], [Define if using system-helper]) -fi -AM_CONDITIONAL(BUILD_SYSTEM_HELPER, test x$enable_system_helper = xyes) - -AC_ARG_ENABLE([auto-sideloading], - AC_HELP_STRING([--enable-auto-sideloading], - [Enable systemd units which make Flatpak sideload from inserted USB drives]), - [], - [enable_auto_sideloading=no]) -AM_CONDITIONAL(BUILD_AUTO_SIDELOADING, test x$enable_auto_sideloading = xyes) - -PKG_CHECK_MODULES([FUSE3], [fuse3 >= 3.1.1], - [ - FUSE_USE_VERSION=31 - FUSE_CFLAGS="$FUSE3_CFLAGS" - FUSE_LIBS="$FUSE3_LIBS" - ], - [PKG_CHECK_MODULES([FUSE], [fuse >= 2.9.2], [FUSE_USE_VERSION=26])]) -AC_DEFINE_UNQUOTED([FUSE_USE_VERSION], [$FUSE_USE_VERSION], [Define to the FUSE API version]) - -AC_ARG_ENABLE([xauth], - AC_HELP_STRING([--disable-xauth], - [Disable Xauth use]), - [], - [enable_xauth=yes]) -if test "x$enable_xauth" = "xyes"; then - PKG_CHECK_MODULES(XAUTH, [xau]) - AC_DEFINE([ENABLE_XAUTH], [1], - [Define if using xauth]) -fi - -AC_ARG_ENABLE([gdm-env-file], - [AC_HELP_STRING([--enable-gdm-env-file], [Install gdm env.d file (not needed if systemd generators work)])], - install_gdm_env_file=$enableval, install_gdm_env_file=no) -AM_CONDITIONAL(INSTALL_GDM_ENV_FILE, test x$install_gdm_env_file = xyes) - -AC_ARG_ENABLE([sandboxed-triggers], - AC_HELP_STRING([--disable-sandboxed-triggers], - [Disable sandboxed triggers]), - [], - [enable_sandboxed_triggers=yes]) -if test "x$enable_sandboxed_triggers" = "xno"; then - AC_DEFINE([DISABLE_SANDBOXED_TRIGGERS], [1], - [Define if sandboxed triggers are disabled]) -fi - -PKG_CHECK_MODULES(OSTREE, [ostree-1 >= $OSTREE_REQS]) - -PKG_CHECK_MODULES(JSON, [json-glib-1.0]) - -PKG_CHECK_MODULES(APPSTREAM, [appstream >= 0.12.0]) - -PKG_CHECK_MODULES(GDK_PIXBUF, [gdk-pixbuf-2.0]) - -AC_ARG_ENABLE([seccomp], - AC_HELP_STRING([--disable-seccomp], - [Disable seccomp]), - [], - [enable_seccomp=yes]) - -if test "x$enable_seccomp" = "xyes"; then - PKG_CHECK_MODULES(LIBSECCOMP, [libseccomp]) - AC_DEFINE([ENABLE_SECCOMP], [1], - [Define if using seccomp]) -fi - -AC_ARG_WITH(priv-mode, - AS_HELP_STRING([--with-priv-mode=setuid/none], - [How to set privilege-raising during install (only needed if userns not working)]), - [], - [with_priv_mode="none"]) - -AM_CONDITIONAL(PRIV_MODE_SETUID, test "x$with_priv_mode" = "xsetuid") - -AC_ARG_ENABLE(sudo, - AS_HELP_STRING([--enable-sudo],[Use sudo to set setuid flags on binaries during install (only needed if userns disabled)]), - [SUDO_BIN="sudo"], [SUDO_BIN=""]) -AC_SUBST([SUDO_BIN]) - -AC_ARG_ENABLE(asan, - [AS_HELP_STRING([--enable-asan], - [Use build with address sanitazion])], - [], - [enable_asan=no]) -AM_CONDITIONAL([ENABLE_ASAN], [test "x$enable_asan" = xyes]) - -AC_ARG_WITH(system-install-dir, - [AS_HELP_STRING([--with-system-install-dir=DIR], - [Location of system installation [LOCALSTATEDIR/lib/flatpak]])], - [], - [with_system_install_dir='$(localstatedir)/lib/flatpak']) -SYSTEM_INSTALL_DIR=$with_system_install_dir -AC_SUBST(SYSTEM_INSTALL_DIR) - -AC_ARG_WITH(run-media-dir, - [AS_HELP_STRING([--with-run-media-dir=DIR], - [Location of auto-mounted USB drives [/run/media]])], - [], - [with_run_media_dir='/run/media']) -RUN_MEDIA_DIR=$with_run_media_dir -AC_SUBST(RUN_MEDIA_DIR) - -AC_ARG_WITH([sysusersdir], - [AS_HELP_STRING([--with-sysusersdir=DIR], - [Directory for systemd sysusers.d configuration files (default=PREFIX/lib/sysusers.d)])], - [], - dnl This is deliberately not ${libdir}: systemd units always go in - dnl .../lib, never .../lib64 or .../lib/x86_64-linux-gnu - [with_sysusersdir='${prefix}/lib/sysusers.d']) -AC_SUBST([sysusersdir], [$with_sysusersdir]) - -AC_ARG_WITH([tmpfilesdir], - [AS_HELP_STRING([--with-tmpfilesdir=DIR], - [Directory for systemd tmpfiles.d configuration files (default=PREFIX/lib/tmpfiles.d)])], - [], - [with_tmpfilesdir='${prefix}/lib/tmpfiles.d']) -AC_SUBST([tmpfilesdir], [$with_tmpfilesdir]) - -AC_ARG_WITH(system-helper-user, - [AS_HELP_STRING([--with-system-helper-user=USERNAME], - [Name of the system helper user])], - with_system_helper_user="$withval", with_system_helper_user=flatpak) -SYSTEM_HELPER_USER=$with_system_helper_user -AC_SUBST(SYSTEM_HELPER_USER) - -AC_ARG_ENABLE(documentation, - AC_HELP_STRING([--enable-documentation], [Build documentation]),, - enable_documentation=yes) -if test x$enable_documentation = xyes; then - AC_PATH_PROG([XSLTPROC], [xsltproc]) - if test x$XSLTPROC = x; then - AC_MSG_ERROR([xsltproc is required to build documentation]) - fi - - dnl check for DocBook DTD in the local catalog - JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.5//EN], - [DocBook XML DTD V4.5], [have_docbook_dtd=yes], [have_docbook_dtd=no]) - if test "$have_docbook_dtd" != yes; then - AC_MSG_ERROR([DocBook DTD is required for --enable-documentation]) - fi - - dnl check for DocBook XSL stylesheets in the local catalog - JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl], - [DocBook XSL Stylesheets], [have_docbook_style=yes],[have_docbook_style=no]) - if test "$have_docbook_style" != yes; then - AC_MSG_ERROR([DocBook XSL Stylesheets are required for --enable-documentation]) - fi -fi -AM_CONDITIONAL(BUILD_DOCUMENTATION, test x$enable_documentation = xyes) - -GOBJECT_INTROSPECTION_CHECK([1.40.0]) - -# gtkdocize greps for ^GTK_DOC_CHECK, so we need to put it on its own line -m4_ifdef([GTK_DOC_CHECK], [ -GTK_DOC_CHECK([1.20], [--flavour no-tmpl]) - -AC_ARG_ENABLE([gtk-doc-check], - [AS_HELP_STRING([--enable-gtk-doc-check], - [Check completeness of documentation in 'make check'])], - [], - [enable_gtk_doc_check=no]) -],[ -enable_gtk_doc="disabled (no gtk-doc)" -enable_gtk_doc_check="disabled (no gtk-doc)" -AM_CONDITIONAL([ENABLE_GTK_DOC], [false]) -]) -AM_CONDITIONAL([ENABLE_GTK_DOC_CHECK], [test "x$enable_gtk_doc_check" = xyes]) - - -AC_ARG_ENABLE(docbook-docs, - [AS_HELP_STRING([--enable-docbook-docs],[build documentation (requires xmlto)])], - enable_docbook_docs=$enableval, enable_docbook_docs=auto) -AC_PATH_PROG(XMLTO, xmlto, no) -AC_MSG_CHECKING([whether to build DocBook documentation]) -if test x$XMLTO = xno ; then - have_docbook=no -else - have_docbook=yes -fi -if test x$enable_docbook_docs = xauto ; then - if test x$have_docbook = xno ; then - enable_docbook_docs=no - else - enable_docbook_docs=yes - fi -fi -if test x$enable_docbook_docs = xyes; then - if test x$have_docbook = xno; then - AC_MSG_ERROR([Building DocBook docs explicitly required, but DocBook not found]) - fi - AC_MSG_RESULT(yes) -else - AC_MSG_RESULT(no) -fi -AM_CONDITIONAL(DOCBOOK_DOCS_ENABLED, test x$enable_docbook_docs = xyes) -AC_ARG_VAR([XMLTO],[Define/override the 'xmlto' location.]) -AC_ARG_VAR([XMLTO_FLAGS],[Define/override 'xmlto' options, like '--skip-validation'.]) - - -################################################## -# Visibility handling -################################################## - -HIDDEN_VISIBILITY_CFLAGS="" -case "$host" in - *) - dnl on other compilers, check if we can do -fvisibility=hidden - SAVED_CFLAGS="${CFLAGS}" - CFLAGS="-fvisibility=hidden" - AC_MSG_CHECKING([for -fvisibility=hidden compiler flag]) - AC_TRY_COMPILE([], [int main (void) { return 0; }], - AC_MSG_RESULT(yes) - enable_fvisibility_hidden=yes, - AC_MSG_RESULT(no) - enable_fvisibility_hidden=no) - CFLAGS="${SAVED_CFLAGS}" - - AS_IF([test "${enable_fvisibility_hidden}" = "yes"], [ - AC_DEFINE([FLATPAK_EXTERN], [__attribute__((visibility("default"))) extern], - [defines how to decorate public symbols while building]) - HIDDEN_VISIBILITY_CFLAGS="-fvisibility=hidden" - ], [ - AC_DEFINE([FLATPAK_EXTERN], [extern], - [defines how to decorate public symbols while building]) - ]) - ;; -esac -AC_SUBST(HIDDEN_VISIBILITY_CFLAGS) - -########################################## -# Coverage testing -########################################## -AC_ARG_ENABLE(coverage, - AS_HELP_STRING([--enable-coverage], - [enable coverage testing with gcov]), - [use_lcov=$enableval], [use_lcov=no]) - -if test x$use_lcov = xyes; then - AC_PATH_PROG(LCOV, lcov) - AC_PATH_PROG(GENHTML, genhtml) - - # remove all optimization from CFLAGS - changequote({,}) - CFLAGS=`echo "$CFLAGS" | $SED -e 's/-O[0-9]*//g'` - changequote([,]) - - CFLAGS="$CFLAGS -O0 -fprofile-arcs -ftest-coverage" - LDFLAGS="$LDFLAGS -lgcov" -fi - -AC_ARG_ENABLE(internal-checks, - AS_HELP_STRING([--enable-internal-checks], - [enable internal checking]), - [use_internal_checks=$enableval], [use_internal_checks=no]) - -if test x$use_internal_checks = xyes; then - AM_CONDITIONAL([ENABLE_INTERNAL_CHECKS], [true]) -else - AM_CONDITIONAL([ENABLE_INTERNAL_CHECKS], [false]) -fi - -GLIB_TESTS - -FLATPAK_MAJOR_VERSION=flatpak_major_version -FLATPAK_MINOR_VERSION=flatpak_minor_version -FLATPAK_MICRO_VERSION=flatpak_micro_version -FLATPAK_EXTRA_VERSION=flatpak_extra_version -FLATPAK_INTERFACE_AGE=flatpak_interface_age -FLATPAK_VERSION=flatpak_version -AC_SUBST(FLATPAK_MAJOR_VERSION) -AC_SUBST(FLATPAK_MINOR_VERSION) -AC_SUBST(FLATPAK_MICRO_VERSION) -AC_SUBST(FLATPAK_INTERFACE_AGE) -AC_SUBST(FLATPAK_VERSION) -AC_DEFINE_UNQUOTED([PACKAGE_MAJOR_VERSION], $FLATPAK_MAJOR_VERSION, [Major version]) -AC_DEFINE_UNQUOTED([PACKAGE_MINOR_VERSION], $FLATPAK_MINOR_VERSION, [Minor version]) -AC_DEFINE_UNQUOTED([PACKAGE_MICRO_VERSION], $FLATPAK_MICRO_VERSION, [Micro version]) -AC_DEFINE_UNQUOTED([PACKAGE_EXTRA_VERSION], $FLATPAK_EXTRA_VERSION, [Extra version]) - -# libtool versioning -#LT_RELEASE=$FLATPAK_MAJOR_VERSION.$FLATPAK_MINOR_VERSION -#LT_CURRENT=`expr $FLATPAK_MICRO_VERSION - $FLATPAK_INTERFACE_AGE` -#LT_REVISION=$FLATPAK_INTERFACE_AGE -#LT_AGE=`expr $FLATPAK_BINARY_AGE - $FLATPAK_INTERFACE_AGE` -#LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE` - -m4_define([lt_current], [m4_eval(10000 * flatpak_major_version + 100 * flatpak_minor_version + flatpak_micro_version - flatpak_interface_age)]) -m4_define([lt_revision], [flatpak_interface_age]) -m4_define([lt_age], [m4_eval(flatpak_binary_age - flatpak_interface_age)]) -LT_VERSION_INFO="lt_current:lt_revision:lt_age" -LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age) -AC_SUBST(LT_VERSION_INFO) -AC_SUBST(LT_CURRENT_MINUS_AGE) - -AC_CONFIG_FILES([ -Makefile -doc/Makefile -doc/reference/Makefile -flatpak.pc -common/flatpak-version-macros.h -doc/reference/version.xml -doc/flatpak-docs.xml -po/Makefile.in -]) -AC_OUTPUT - -if test x$BWRAP = xfalse ; then - build_bwrap="yes" -else - build_bwrap="no" -fi - -if test x$DBUS_PROXY = xfalse ; then - build_dbus_proxy="yes" -else - build_dbus_proxy="no" -fi - -echo "" -echo " Flatpak $FLATPAK_VERSION" -echo " ==============" -echo "" -echo " Build system helper: $enable_system_helper" -echo " Build selinux module: $enable_selinux_module" -echo " Build bubblewrap: $build_bwrap" -echo " Build dbus-proxy: $build_dbus_proxy" -echo " Use sandboxed triggers: $enable_sandboxed_triggers" -echo " Use seccomp: $enable_seccomp" -echo " Privileged group: $PRIVILEGED_GROUP" -echo " Privilege mode: $with_priv_mode" -echo " Use dconf: $have_dconf" -echo " Use libsystemd: $have_libsystemd" -echo " Use libmalcontent: $have_libmalcontent" -echo " Use libzstd: $have_zstd" -echo " Use auto sideloading: $enable_auto_sideloading" -echo " HTTP backend: $http_backend" -echo "" diff --git a/data/Makefile.am.inc b/data/Makefile.am.inc deleted file mode 100644 index 4bd850e..0000000 --- a/data/Makefile.am.inc +++ /dev/null @@ -1,19 +0,0 @@ -introspectiondir = $(datadir)/dbus-1/interfaces -introspection_DATA = \ - data/org.freedesktop.Flatpak.xml \ - data/org.freedesktop.Flatpak.Authenticator.xml \ - data/org.freedesktop.portal.Flatpak.xml \ - $(NULL) - -dist_tmpfiles_DATA += data/tmpfiles.d/flatpak.conf - -EXTRA_DIST += \ - data/org.freedesktop.portal.Documents.xml \ - data/org.freedesktop.impl.portal.PermissionStore.xml \ - data/org.freedesktop.systemd1.xml \ - data/org.freedesktop.Flatpak.xml \ - data/org.freedesktop.Flatpak.Authenticator.xml \ - data/org.freedesktop.portal.Flatpak.xml \ - data/flatpak-docker-seccomp.json \ - data/flatpak-variants.gv \ - $(NULL) diff --git a/data/meson.build b/data/meson.build new file mode 100644 index 0000000..18bd732 --- /dev/null +++ b/data/meson.build @@ -0,0 +1,13 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +install_data( + 'org.freedesktop.Flatpak.xml', + 'org.freedesktop.Flatpak.Authenticator.xml', + 'org.freedesktop.portal.Flatpak.xml', + install_dir : get_option('datadir') / 'dbus-1' / 'interfaces', +) +install_data( + 'tmpfiles.d/flatpak.conf', + install_dir : get_option('tmpfilesdir'), +) diff --git a/data/org.freedesktop.portal.Flatpak.xml b/data/org.freedesktop.portal.Flatpak.xml index 965579b..13a8d99 100644 --- a/data/org.freedesktop.portal.Flatpak.xml +++ b/data/org.freedesktop.portal.Flatpak.xml @@ -36,7 +36,7 @@ bus name org.freedesktop.portal.Flatpak and the object path /org/freedesktop/portal/Flatpak. - This documentation describes version 6 of this interface. + This documentation describes version 7 of this interface. --> @@ -240,6 +240,19 @@ This was added in version 3 of this interface (available from flatpak 1.6.0 and later). + + sandbox-a11y-own-names as + + An array of D-Bus names to be owned on the accessibility bus. The + names must have the app id as prefix. + + Only applies when `sandbox-flags` contains access to the accessibility + bus as well. + + This was added in version 7 of this interface (available from + flatpak 1.16.0 and later). + + unset-env as diff --git a/debian/changelog b/debian/changelog index ad4827a..f93b84c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,190 @@ +flatpak (1.16.0-2) unstable; urgency=medium + + * d/changelog: Fix Ubuntu version information in 1.15.91-1 changelog. + Ubuntu 22.04 still needed .pkla files, it is only 24.04 that has + caught up with upstream polkitd. + * d/flathub.flatpakrepo, d/flatpak.examples: + Provide the address and GPG key for Flathub + * d/p/debian/system-helper-Set-Debian-s-canonical-home-directory-for-s.patch: + Make the home directory from sysusers.d consistent with adduser + + -- Simon McVittie Mon, 17 Mar 2025 13:09:49 +0000 + +flatpak (1.16.0-1) unstable; urgency=medium + + * New upstream stable release + * d/gbp.conf, d/watch: Track Flatpak 1.16.x for trixie + * d/test.sh: Set a longer test timeout for non-x86 architectures. + Some (perhaps all?) of the hppa buildds in Debian Ports are actually + x86_64 machines emulating hppa with qemu, and the same might in + principle be true for any other -ports architecture: there is no + documented way to know this. + Allowing 3x timeouts on x86 and 20x on other architectures has worked + well for GLib, so do the same here. + + -- Simon McVittie Thu, 09 Jan 2025 19:11:42 +0000 + +flatpak (1.15.91-1) unstable; urgency=medium + + * New upstream release candidate (1.16.0 rc1) + * d/p/tests-Install-missing-test-data.patch: + Drop patch, applied (slightly differently) upstream + * d/flatpak.install, d/*.pkla: + Stop installing a policy snippet for policykit-1 (<< 0.106). + This is no longer necessary since Debian 12 and Ubuntu 24.04. + * d/watch: Correct a comment for removal of Autotools + + -- Simon McVittie Sun, 22 Dec 2024 12:30:56 +0000 + +flatpak (1.15.12-1) experimental; urgency=medium + + * New upstream development release + * d/p/tests-Install-missing-test-data.patch: + Add patch to fix autopkgtest failure + * d/salsa-ci.yml: Use the currently-recommended recipe + * Standards-Version: 4.7.0 (no changes required) + * Merge packaging from unstable + - d/upstream/metadata: Canonicalize sort order of keys + - d/upstream/metadata: Add Security-Contact + + -- Simon McVittie Thu, 28 Nov 2024 15:50:46 +0000 + +flatpak (1.15.10-1) experimental; urgency=high + + * New upstream development release + - Don't follow symbolic links when mounting persistent directories + (--persist option). This prevents a sandbox escape where a malicious + or compromised app could edit the symlink to point to a directory + that the app should not have been allowed to read or write. + (CVE-2024-42472, GHSA-7hgv-f2j8-xw87) + * d/control: Bump required bubblewrap version to 0.10.0. + This adds the new --bind-fd option, required to solve CVE-2024-42472 + without introducing a race condition. + + -- Simon McVittie Wed, 14 Aug 2024 11:00:52 +0100 + +flatpak (1.15.9-1) experimental; urgency=medium + + * New upstream development release + * Merge packaging from unstable + + -- Simon McVittie Mon, 22 Jul 2024 18:28:31 +0100 + +flatpak (1.15.8-1) experimental; urgency=high + + * New upstream development release + - Don't allow an executable name to be misinterpreted as a command-line + option for bwrap(1). This prevents a sandbox escape where a malicious + or compromised app could ask xdg-desktop-portal to generate a .desktop + file with access to files outside the sandbox. (CVE-2024-32462) + * Merge packaging from unstable + + -- Simon McVittie Wed, 17 Apr 2024 20:17:44 +0100 + +flatpak (1.15.7-1) experimental; urgency=medium + + * New upstream development release + * d/copyright: Update + * d/flatpak.lintian-overrides: Remove an obsolete Lintian override + * d/control, d/rules: Activate dh-sequence-gir declaratively + * d/patches: Add a patch to fix the "as-installed" tests + + -- Simon McVittie Wed, 27 Mar 2024 15:35:47 +0000 + +flatpak (1.15.6-1) experimental; urgency=medium + + * New upstream development release + * Mention #1033098, #1033099 in previous changelog entry + * d/control: (Build-)depend on pkgconf in preference to pkg-config + * Install systemd system unit into /usr/lib/systemd/system. + This was allowed by TC resolution #1053901. + Build-depend on debhelper 13.11.6~ to ensure that the unit is still + picked up by dh_installsystemd. + * d/test.sh: Disable http proxy if used, to ensure we can reach localhost. + Some reproducible.org builders set http_proxy, which makes attempts + to access our temporary http server on localhost fail with a 503 error. + * d/control: Build-depend on required GIR XML files (Helps: #1030223) + * d/control: Add ${gir:Depends}, ${gir:Provides} to -dev package + (Helps: #1030223) + * d/control: Require bubblewrap 0.8.0 + * d/control: (Build-)depend on Wayland components for new security context + extension + * d/flatpak.install: Install new tmpfiles.d snippet + * d/copyright: Update + * d/libflatpak0.symbols: Update + * d/libflatpak0.symbols: Reduce entropy. + For each symbol introduced in a development branch older than the + current one, behave as if the symbol was added in the stable release + that followed the development branch: this will generate slightly more + conservative dependencies. For 0.x versions, use 1.0. + + -- Simon McVittie Tue, 14 Nov 2023 19:52:48 +0000 + +flatpak (1.15.4-1) experimental; urgency=medium + + * New upstream development release + - Escape special characters when displaying permissions and metadata, + preventing malicious apps from manipulating the appearance of the + permissions list using crafted metadata + (Closes: #1033098; CVE-2023-28101) + - If a Flatpak app is run on a Linux virtual console (tty1, etc.), + don't allow copy/paste via the TIOCLINUX ioctl + (Closes: #1033099; CVE-2023-28100). + Note that this is specific to virtual consoles: Flatpak is not + vulnerable to this if run from a graphical terminal emulator such + as xterm, gnome-terminal or Konsole. + * Merge packaging from unstable + + -- Simon McVittie Thu, 16 Mar 2023 10:41:58 +0000 + +flatpak (1.15.3-1) experimental; urgency=medium + + * New upstream development release + * Merge packaging changes from unstable + - Remove obsolete maintscript entries + - Avoid explicitly specifying -Wl,--as-needed linker flag, which is + the default with newer toolchains + + -- Simon McVittie Tue, 21 Feb 2023 10:44:05 +0000 + +flatpak (1.15.2-1) experimental; urgency=medium + + * New upstream development release + * Update standards version to 4.6.2 (no changes needed) + + -- Simon McVittie Mon, 06 Feb 2023 14:15:47 +0000 + +flatpak (1.15.1-1) experimental; urgency=medium + + * New upstream development release + * d/test.sh: Don't try to show Autotools test logs. + We're using Meson now, so this is not applicable. + * d/rules, d/test.sh: Rely on debhelper to set HOME, XDG_RUNTIME_DIR etc. + * d/test.sh: Extend test timeout to cope better with slow buildds. + The upstream test timeouts assume a relatively non-loaded system, but + on a buildd we might be sharing the machine with other processes. + * Drop the only patch, applied upstream + + -- Simon McVittie Thu, 17 Nov 2022 19:06:05 +0000 + +flatpak (1.15.0-2) experimental; urgency=medium + + * d/p/revokefs-Use-correct-format-string-for-a-ssize_t.patch: + Fix the build on ILP32 architectures + + -- Simon McVittie Tue, 25 Oct 2022 09:37:58 +0100 + +flatpak (1.15.0-1) experimental; urgency=medium + + * d/gbp.conf, d/control: Branch for experimental + * New upstream development release + * Build using Meson + * d/control: Add more -dev dependencies to libflatpak-dev. + Meson is more thorough about including private dependencies in the + Requires.private field. + + -- Simon McVittie Mon, 24 Oct 2022 19:29:56 +0100 + flatpak (1.14.10-1) unstable; urgency=high * New upstream stable release diff --git a/debian/control b/debian/control index 257a703..32cfcaa 100644 --- a/debian/control +++ b/debian/control @@ -7,7 +7,6 @@ Uploaders: Simon McVittie , Build-Depends: attr , - automake (>= 1.14.1), bison, bubblewrap (>= 0.10.0~), ca-certificates , @@ -16,6 +15,7 @@ Build-Depends: debhelper-compat (= 13), desktop-file-utils , dh-exec (>= 0.23~), + dh-sequence-gir, docbook-xml , docbook-xsl , fuse3 , @@ -46,10 +46,12 @@ Build-Depends: libpolkit-gobject-1-dev, libseccomp-dev (>= 2.5.2), libsystemd-dev, + libwayland-dev, libxau-dev, libxml2-dev (>= 2.4), libxml2-utils, libzstd-dev, + meson (>= 0.53.0), ostree (>= 2020.8) , pkgconf, polkitd , @@ -58,13 +60,14 @@ Build-Depends: python3-pyparsing, shared-mime-info , socat , + wayland-protocols, xdg-dbus-proxy (>= 0.1.0), xmlto , xsltproc , Build-Depends-Indep: libglib2.0-doc, libostree-doc, -Standards-Version: 4.6.2 +Standards-Version: 4.7.0 Homepage: https://flatpak.org/ Vcs-Git: https://salsa.debian.org/debian/flatpak.git Vcs-Browser: https://salsa.debian.org/debian/flatpak @@ -164,10 +167,22 @@ Section: libdevel Depends: gir1.2-glib-2.0, gir1.2-flatpak-1.0 (= ${binary:Version}), + libarchive-dev (>= 2.8.0), + libcurl4-gnutls-dev | libcurl-dev, + libdconf-dev, libflatpak0 (= ${binary:Version}), libglib2.0-dev, + libgpgme-dev (>= 1.1.8), + libjson-glib-dev, + libmalcontent-0-dev (>= 0.4.0), libostree-dev (>= 2020.8), + libpolkit-agent-1-dev, + libseccomp-dev (>= 2.5.2), + libsystemd-dev, + libwayland-dev, + libxau-dev, libxml2-dev (>= 2.4), + libzstd-dev, pkgconf, python3:any, ${gir:Depends}, diff --git a/debian/copyright b/debian/copyright index 8f9aa14..5d1aec3 100644 --- a/debian/copyright +++ b/debian/copyright @@ -7,12 +7,19 @@ Files: Copyright: © 1995-2017 Free Software Foundation, Inc. © 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - © 2010-2011 Lennart Poettering + © 2004-2022 Red Hat, Inc + © 2004-2010 Christian Persch + © 2004 Hidetoshi Tajima + © 2006-2019 Matthias Clasen + © 2006 Padraig O'Briain + © 2007-2011 Lennart Poettering © 2010 Codethink Limited © 2010 Lennart Poettering © 2011-2019 Colin Walters + © 2013-2024 Collabora Ltd. + © 2013 Allison Karlitskaya © 2014-2018 Alexander Larsson - © 2008-2022 Red Hat, Inc + © 2016-2018 Canonical Ltd. © 2016 Piotr Drag © 2016 Aviary.pl © 2016 Zbigniew Jędrzejewski-Szmek @@ -23,28 +30,23 @@ Copyright: © 2017 Patrick Griffis © 2017 Endless, Inc. © 2018-2019 Endless Mobile, Inc. - © 2017-2020 Endless OS Foundation LLC - © 2019 Matthias Clasen + © 2017-2022 Endless OS Foundation LLC + © 2018 Peter Wu + © 2019 Emmanuel Fleury + © 2019 Ting-Wei Lan © 2019-2021 Matthew Leeds + © 2019 Sebastian Schwarz + © 2020 Matt Rose © 2021 Simon McVittie - © 2022 Collabora Ltd. + © 2021 Joshua Lee + © 2021 Casper Dik + © 2022 Alexander Richardson + © 2022 Ray Strode + © 2022 Thomas Haller + © 2023 Sebastian Wilhelmi + © 2023 CaiJingLong License: LGPL-2+ and LGPL-2.1+ -Files: - acinclude.m4 -Copyright: - © 2008 Tim Toolan - © 2014-2015 Philip Withnall -License: Autoconf-permissive - -Files: - m4/attributes.m4 -Copyright: - © 2006-2008 Diego Pettenò - © 2006-2008 xine project - © 2012 Lucas De Marchi -License: GPL-2+ with Autoconf exception - Files: common/valgrind-private.h Copyright: @@ -55,46 +57,9 @@ Files: debian/* Copyright: © 2015 David King - © 2016-2022 Collabora Ltd. + © 2016-2023 Collabora Ltd. License: LGPL-2.1+ -License: GPL-2+ with Autoconf exception - This program is free software; you can redistribute it - and/or modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later - version. - . - This program is distributed in the hope that it will be - useful, but WITHOUT ANY WARRANTY; without even the implied - warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - PURPOSE. See the GNU General Public License for more - details. - . - You should have received a copy of the GNU General Public - License along with this package; if not, write to the Free - Software Foundation, Inc., 51 Franklin St, Fifth Floor, - Boston, MA 02110-1301 USA. - . - As a special exception, the copyright owners of the - macro gives unlimited permission to copy, distribute and modify the - configure scripts that are the output of Autoconf when processing the - Macro. You need not follow the terms of the GNU General Public - License when using or distributing such scripts, even though portions - of the text of the Macro appear in them. The GNU General Public - License (GPL) does govern all other use of the material that - constitutes the Autoconf Macro. - . - This special exception to the GPL applies to versions of the - Autoconf Macro released by this project. When you make and - distribute a modified version of the Autoconf Macro, you may extend - this special exception to the GPL to apply to your modified version as - well. -Comment: - On Debian systems, the full text of the GNU General Public - License version 2 can be found in the file - '/usr/share/common-licenses/GPL-2'. - License: LGPL-2+ This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public @@ -127,12 +92,6 @@ Comment: On Debian systems, the full text of the GNU Lesser General Public License version 2.1 can be found in the file '/usr/share/common-licenses/LGPL-2.1'. -License: Autoconf-permissive - Copying and distribution of this file, with or without modification, are - permitted in any medium without royalty provided the copyright notice - and this notice are preserved. This file is offered as-is, without any - warranty. - License: bzip2-1.0.6 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions diff --git a/debian/flathub.flatpakrepo b/debian/flathub.flatpakrepo new file mode 100644 index 0000000..fbf8444 --- /dev/null +++ b/debian/flathub.flatpakrepo @@ -0,0 +1,9 @@ +# Downloaded from https://dl.flathub.org/repo/flathub.flatpakrepo +[Flatpak Repo] +Title=Flathub +Url=https://dl.flathub.org/repo/ +Homepage=https://flathub.org/ +Comment=Central repository of Flatpak applications +Description=Central repository of Flatpak applications +Icon=https://dl.flathub.org/repo/logo.svg +GPGKey=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 diff --git a/debian/flatpak.README.Debian b/debian/flatpak.README.Debian index a3ccd24..fc8d8f7 100644 --- a/debian/flatpak.README.Debian +++ b/debian/flatpak.README.Debian @@ -9,6 +9,13 @@ default in Debian, in order to keep the Debian distribution self-contained and entirely Free Software. See https://flatpak.org/setup/Debian/ for more information on how to add Flathub as a source of apps and runtimes. +As a convenience for Debian users, a copy of the .flatpakrepo file for +Flathub is available in /usr/share/doc/flatpak/examples/ and can be +enabled with: + + sudo flatpak remote-add --if-not-exists flathub \ + /usr/share/doc/flatpak/examples/flathub.flatpakrepo + Note that Flathub includes both Free Software and non-Free apps. Adding Flatpak apps to search paths diff --git a/debian/flatpak.examples b/debian/flatpak.examples index 57447fc..705b457 100644 --- a/debian/flatpak.examples +++ b/debian/flatpak.examples @@ -1 +1,2 @@ data/flatpak-docker-seccomp.json +debian/flathub.flatpakrepo diff --git a/debian/flatpak.install b/debian/flatpak.install index fdd169d..ba47344 100644 --- a/debian/flatpak.install +++ b/debian/flatpak.install @@ -1,4 +1,3 @@ -debian/org.freedesktop.Flatpak.pkla var/lib/polkit-1/localauthority/10-vendor.d/ etc/X11/Xsession.d etc/profile.d/ usr/bin/flatpak diff --git a/debian/flatpak.lintian-overrides b/debian/flatpak.lintian-overrides index 30c99b7..7d6434d 100644 --- a/debian/flatpak.lintian-overrides +++ b/debian/flatpak.lintian-overrides @@ -1,3 +1,2 @@ # This is intended to be started by D-Bus activation, not on boot -package-supports-alternative-init-but-no-init.d-script [*lib/systemd/system/flatpak-system-helper.service] systemd-service-file-missing-install-key [*lib/systemd/system/flatpak-system-helper.service] diff --git a/debian/gbp.conf b/debian/gbp.conf index 8f9ef0d..c39000b 100644 --- a/debian/gbp.conf +++ b/debian/gbp.conf @@ -2,6 +2,6 @@ pristine-tar = True compression = xz debian-branch = debian/unstable -upstream-branch = upstream/1.14.x +upstream-branch = upstream/1.16.x patch-numbers = False upstream-vcs-tag = %(version)s diff --git a/debian/libflatpak0.symbols b/debian/libflatpak0.symbols index 7d3539d..667d3c1 100644 --- a/debian/libflatpak0.symbols +++ b/debian/libflatpak0.symbols @@ -1,98 +1,98 @@ libflatpak.so.0 libflatpak0 #MINVER# * Build-Depends-Package: libflatpak-dev - flatpak_bundle_ref_get_appstream@Base 0.5.2 - flatpak_bundle_ref_get_file@Base 0.5.2 - flatpak_bundle_ref_get_icon@Base 0.5.2 - flatpak_bundle_ref_get_installed_size@Base 0.5.2 - flatpak_bundle_ref_get_metadata@Base 0.5.2 - flatpak_bundle_ref_get_origin@Base 0.5.2 - flatpak_bundle_ref_get_runtime_repo_url@Base 0.8.0 - flatpak_bundle_ref_get_type@Base 0.5.2 - flatpak_bundle_ref_new@Base 0.5.2 - flatpak_error_get_type@Base 0.5.2 - flatpak_error_quark@Base 0.5.2 - flatpak_get_default_arch@Base 0.5.2+git20160516 - flatpak_get_supported_arches@Base 0.6.6 - flatpak_get_system_installations@Base 0.8.0 - flatpak_install_flags_get_type@Base 0.6.5 - flatpak_installation_add_remote@Base 1.3.4 - flatpak_installation_cleanup_local_refs_sync@Base 0.9.99 - flatpak_installation_create_monitor@Base 0.5.2 - flatpak_installation_drop_caches@Base 0.5.2+git20160516 - flatpak_installation_fetch_remote_metadata_sync@Base 0.5.2 - flatpak_installation_fetch_remote_ref_sync@Base 0.5.2 - flatpak_installation_fetch_remote_ref_sync_full@Base 1.3.3 - flatpak_installation_fetch_remote_size_sync@Base 0.5.2 - flatpak_installation_get_config@Base 0.10.0 - flatpak_installation_get_current_installed_app@Base 0.5.2 - flatpak_installation_get_default_languages@Base 1.5.0 - flatpak_installation_get_default_locales@Base 1.5.2 - flatpak_installation_get_display_name@Base 0.8.0 - flatpak_installation_get_id@Base 0.8.0 - flatpak_installation_get_installed_ref@Base 0.5.2 - flatpak_installation_get_is_user@Base 0.5.2 - flatpak_installation_get_min_free_space_bytes@Base 1.1.0 - flatpak_installation_get_no_interaction@Base 1.1.1 - flatpak_installation_get_path@Base 0.5.2 - flatpak_installation_get_priority@Base 0.8.0 - flatpak_installation_get_remote_by_name@Base 0.5.2 - flatpak_installation_get_storage_type@Base 0.8.0 - flatpak_installation_get_type@Base 0.5.2 - flatpak_installation_install@Base 0.5.2 - flatpak_installation_install_bundle@Base 0.5.2 - flatpak_installation_install_full@Base 0.6.5 - flatpak_installation_install_ref_file@Base 0.6.10 - flatpak_installation_launch@Base 0.5.2 - flatpak_installation_launch_full@Base 1.1.0 - flatpak_installation_list_installed_refs@Base 0.5.2 - flatpak_installation_list_installed_refs_by_kind@Base 0.5.2 - flatpak_installation_list_installed_refs_for_update@Base 0.5.2 - flatpak_installation_list_installed_related_refs_sync@Base 0.6.7 - flatpak_installation_list_pinned_refs@Base 1.9.1 - flatpak_installation_list_remote_refs_sync@Base 0.5.2 - flatpak_installation_list_remote_refs_sync_full@Base 1.3.3 - flatpak_installation_list_remote_related_refs_for_installed_sync@Base 1.11~git20210407 - flatpak_installation_list_remote_related_refs_sync@Base 0.6.7 - flatpak_installation_list_remotes@Base 0.5.2 - flatpak_installation_list_remotes_by_type@Base 0.11.4 - flatpak_installation_list_unused_refs@Base 1.1.3 - flatpak_installation_list_unused_refs_with_options@Base 1.9.1 - flatpak_installation_load_app_overrides@Base 0.5.2 - flatpak_installation_modify_remote@Base 0.5.2+git20160516 - flatpak_installation_new_for_path@Base 0.5.2 - flatpak_installation_new_system@Base 0.5.2 - flatpak_installation_new_system_with_id@Base 0.8.0 - flatpak_installation_new_user@Base 0.5.2 - flatpak_installation_prune_local_repo@Base 0.9.99 - flatpak_installation_remove_local_ref_sync@Base 0.9.99 - flatpak_installation_remove_remote@Base 0.5.2+git20160516 + flatpak_bundle_ref_get_appstream@Base 1.0 + flatpak_bundle_ref_get_file@Base 1.0 + flatpak_bundle_ref_get_icon@Base 1.0 + flatpak_bundle_ref_get_installed_size@Base 1.0 + flatpak_bundle_ref_get_metadata@Base 1.0 + flatpak_bundle_ref_get_origin@Base 1.0 + flatpak_bundle_ref_get_runtime_repo_url@Base 1.0 + flatpak_bundle_ref_get_type@Base 1.0 + flatpak_bundle_ref_new@Base 1.0 + flatpak_error_get_type@Base 1.0 + flatpak_error_quark@Base 1.0 + flatpak_get_default_arch@Base 1.0 + flatpak_get_supported_arches@Base 1.0 + flatpak_get_system_installations@Base 1.0 + flatpak_install_flags_get_type@Base 1.0 + flatpak_installation_add_remote@Base 1.4 + flatpak_installation_cleanup_local_refs_sync@Base 1.0 + flatpak_installation_create_monitor@Base 1.0 + flatpak_installation_drop_caches@Base 1.0 + flatpak_installation_fetch_remote_metadata_sync@Base 1.0 + flatpak_installation_fetch_remote_ref_sync@Base 1.0 + flatpak_installation_fetch_remote_ref_sync_full@Base 1.4 + flatpak_installation_fetch_remote_size_sync@Base 1.0 + flatpak_installation_get_config@Base 1.0 + flatpak_installation_get_current_installed_app@Base 1.0 + flatpak_installation_get_default_languages@Base 1.6 + flatpak_installation_get_default_locales@Base 1.6 + flatpak_installation_get_display_name@Base 1.0 + flatpak_installation_get_id@Base 1.0 + flatpak_installation_get_installed_ref@Base 1.0 + flatpak_installation_get_is_user@Base 1.0 + flatpak_installation_get_min_free_space_bytes@Base 1.2 + flatpak_installation_get_no_interaction@Base 1.2 + flatpak_installation_get_path@Base 1.0 + flatpak_installation_get_priority@Base 1.0 + flatpak_installation_get_remote_by_name@Base 1.0 + flatpak_installation_get_storage_type@Base 1.0 + flatpak_installation_get_type@Base 1.0 + flatpak_installation_install@Base 1.0 + flatpak_installation_install_bundle@Base 1.0 + flatpak_installation_install_full@Base 1.0 + flatpak_installation_install_ref_file@Base 1.0 + flatpak_installation_launch@Base 1.0 + flatpak_installation_launch_full@Base 1.2 + flatpak_installation_list_installed_refs@Base 1.0 + flatpak_installation_list_installed_refs_by_kind@Base 1.0 + flatpak_installation_list_installed_refs_for_update@Base 1.0 + flatpak_installation_list_installed_related_refs_sync@Base 1.0 + flatpak_installation_list_pinned_refs@Base 1.10 + flatpak_installation_list_remote_refs_sync@Base 1.0 + flatpak_installation_list_remote_refs_sync_full@Base 1.4 + flatpak_installation_list_remote_related_refs_for_installed_sync@Base 1.12 + flatpak_installation_list_remote_related_refs_sync@Base 1.0 + flatpak_installation_list_remotes@Base 1.0 + flatpak_installation_list_remotes_by_type@Base 1.0 + flatpak_installation_list_unused_refs@Base 1.2 + flatpak_installation_list_unused_refs_with_options@Base 1.10 + flatpak_installation_load_app_overrides@Base 1.0 + flatpak_installation_modify_remote@Base 1.0 + flatpak_installation_new_for_path@Base 1.0 + flatpak_installation_new_system@Base 1.0 + flatpak_installation_new_system_with_id@Base 1.0 + flatpak_installation_new_user@Base 1.0 + flatpak_installation_prune_local_repo@Base 1.0 + flatpak_installation_remove_local_ref_sync@Base 1.0 + flatpak_installation_remove_remote@Base 1.0 flatpak_installation_run_triggers@Base 1.0.3 - flatpak_installation_set_config_sync@Base 0.10.0 - flatpak_installation_set_no_interaction@Base 1.1.1 - flatpak_installation_uninstall@Base 0.5.2 - flatpak_installation_uninstall_full@Base 0.11.8 - flatpak_installation_update@Base 0.5.2 - flatpak_installation_update_appstream_full_sync@Base 0.9.4 - flatpak_installation_update_appstream_sync@Base 0.5.2 - flatpak_installation_update_full@Base 0.6.5 - flatpak_installation_update_remote_sync@Base 0.6.13 - flatpak_installed_ref_get_appdata_content_rating@Base 1.5.2 - flatpak_installed_ref_get_appdata_content_rating_type@Base 1.5.2 - flatpak_installed_ref_get_appdata_license@Base 1.1.3 - flatpak_installed_ref_get_appdata_name@Base 1.1.3 - flatpak_installed_ref_get_appdata_summary@Base 1.1.3 - flatpak_installed_ref_get_appdata_version@Base 1.1.3 - flatpak_installed_ref_get_deploy_dir@Base 0.5.2 - flatpak_installed_ref_get_eol@Base 0.11.4 - flatpak_installed_ref_get_eol_rebase@Base 0.11.4 - flatpak_installed_ref_get_installed_size@Base 0.5.2 - flatpak_installed_ref_get_is_current@Base 0.5.2 - flatpak_installed_ref_get_latest_commit@Base 0.5.2 - flatpak_installed_ref_get_origin@Base 0.5.2 - flatpak_installed_ref_get_subpaths@Base 0.5.2+git20160516 - flatpak_installed_ref_get_type@Base 0.5.2 - flatpak_installed_ref_load_appdata@Base 1.1.3 - flatpak_installed_ref_load_metadata@Base 0.5.2 + flatpak_installation_set_config_sync@Base 1.0 + flatpak_installation_set_no_interaction@Base 1.2 + flatpak_installation_uninstall@Base 1.0 + flatpak_installation_uninstall_full@Base 1.0 + flatpak_installation_update@Base 1.0 + flatpak_installation_update_appstream_full_sync@Base 1.0 + flatpak_installation_update_appstream_sync@Base 1.0 + flatpak_installation_update_full@Base 1.0 + flatpak_installation_update_remote_sync@Base 1.0 + flatpak_installed_ref_get_appdata_content_rating@Base 1.6 + flatpak_installed_ref_get_appdata_content_rating_type@Base 1.6 + flatpak_installed_ref_get_appdata_license@Base 1.2 + flatpak_installed_ref_get_appdata_name@Base 1.2 + flatpak_installed_ref_get_appdata_summary@Base 1.2 + flatpak_installed_ref_get_appdata_version@Base 1.2 + flatpak_installed_ref_get_deploy_dir@Base 1.0 + flatpak_installed_ref_get_eol@Base 1.0 + flatpak_installed_ref_get_eol_rebase@Base 1.0 + flatpak_installed_ref_get_installed_size@Base 1.0 + flatpak_installed_ref_get_is_current@Base 1.0 + flatpak_installed_ref_get_latest_commit@Base 1.0 + flatpak_installed_ref_get_origin@Base 1.0 + flatpak_installed_ref_get_subpaths@Base 1.0 + flatpak_installed_ref_get_type@Base 1.0 + flatpak_installed_ref_load_appdata@Base 1.2 + flatpak_installed_ref_load_metadata@Base 1.0 flatpak_instance_get_all@Base 1.0.2 flatpak_instance_get_app@Base 1.0.2 flatpak_instance_get_arch@Base 1.0.2 @@ -106,139 +106,140 @@ libflatpak.so.0 libflatpak0 #MINVER# flatpak_instance_get_runtime_commit@Base 1.0.2 flatpak_instance_get_type@Base 1.0.2 flatpak_instance_is_running@Base 1.0.2 - flatpak_launch_flags_get_type@Base 1.1.0 - flatpak_portal_error_get_type@Base 0.11.8 - flatpak_portal_error_quark@Base 0.5.2+git20160516 - flatpak_query_flags_get_type@Base 1.3.3 - flatpak_ref_format_ref@Base 0.5.2 - flatpak_ref_format_ref_cached@Base 1.9.1 - flatpak_ref_get_arch@Base 0.5.2 - flatpak_ref_get_branch@Base 0.5.2 - flatpak_ref_get_collection_id@Base 0.9.8 - flatpak_ref_get_commit@Base 0.5.2 - flatpak_ref_get_kind@Base 0.5.2 - flatpak_ref_get_name@Base 0.5.2 - flatpak_ref_get_type@Base 0.5.2 - flatpak_ref_kind_get_type@Base 0.5.2 - flatpak_ref_parse@Base 0.5.2 - flatpak_related_ref_get_subpaths@Base 0.6.7 - flatpak_related_ref_get_type@Base 0.6.7 - flatpak_related_ref_should_autoprune@Base 0.11.8 - flatpak_related_ref_should_delete@Base 0.6.7 - flatpak_related_ref_should_download@Base 0.6.7 - flatpak_remote_get_appstream_dir@Base 0.5.2 - flatpak_remote_get_appstream_timestamp@Base 0.5.2 - flatpak_remote_get_collection_id@Base 0.9.8 - flatpak_remote_get_comment@Base 1.3.2 - flatpak_remote_get_default_branch@Base 0.6.12 - flatpak_remote_get_description@Base 1.3.2 - flatpak_remote_get_disabled@Base 0.5.2+git20160516 - flatpak_remote_get_filter@Base 1.3.4 - flatpak_remote_get_gpg_verify@Base 0.5.2 - flatpak_remote_get_homepage@Base 1.3.2 - flatpak_remote_get_icon@Base 1.3.2 - flatpak_remote_get_main_ref@Base 1.1.1 - flatpak_remote_get_name@Base 0.5.2 - flatpak_remote_get_nodeps@Base 0.6.13 - flatpak_remote_get_noenumerate@Base 0.5.2 - flatpak_remote_get_prio@Base 0.5.2 - flatpak_remote_get_remote_type@Base 0.9.9 - flatpak_remote_get_title@Base 0.5.2 - flatpak_remote_get_type@Base 0.5.2 - flatpak_remote_get_url@Base 0.5.2 - flatpak_remote_new@Base 0.5.2+git20160516 - flatpak_remote_new_from_file@Base 1.3.4 - flatpak_remote_ref_get_download_size@Base 0.11.4 - flatpak_remote_ref_get_eol@Base 0.11.4 - flatpak_remote_ref_get_eol_rebase@Base 0.11.4 - flatpak_remote_ref_get_installed_size@Base 0.11.4 - flatpak_remote_ref_get_metadata@Base 0.11.4 - flatpak_remote_ref_get_remote_name@Base 0.5.2 - flatpak_remote_ref_get_type@Base 0.5.2 - flatpak_remote_set_collection_id@Base 0.9.8 - flatpak_remote_set_comment@Base 1.3.2 - flatpak_remote_set_default_branch@Base 0.6.12 - flatpak_remote_set_description@Base 1.3.2 - flatpak_remote_set_disabled@Base 0.5.2+git20160516 - flatpak_remote_set_filter@Base 1.3.4 - flatpak_remote_set_gpg_key@Base 0.5.2+git20160516 - flatpak_remote_set_gpg_verify@Base 0.5.2+git20160516 - flatpak_remote_set_homepage@Base 1.3.2 - flatpak_remote_set_icon@Base 1.3.2 - flatpak_remote_set_main_ref@Base 1.1.1 - flatpak_remote_set_nodeps@Base 0.6.13 - flatpak_remote_set_noenumerate@Base 0.5.2+git20160516 - flatpak_remote_set_prio@Base 0.5.2+git20160516 - flatpak_remote_set_title@Base 0.5.2+git20160516 - flatpak_remote_set_url@Base 0.5.2+git20160516 - flatpak_remote_type_get_type@Base 0.9.8 - flatpak_storage_type_get_type@Base 0.8.0 - flatpak_transaction_abort_webflow@Base 1.5.2 - flatpak_transaction_add_default_dependency_sources@Base 0.99.1 - flatpak_transaction_add_dependency_source@Base 0.99.1 - flatpak_transaction_add_install@Base 0.11.8 - flatpak_transaction_add_install_bundle@Base 0.11.8 - flatpak_transaction_add_install_flatpakref@Base 0.99.3 - flatpak_transaction_add_rebase@Base 1.3.2 - flatpak_transaction_add_sideload_repo@Base 1.7.0~git20200325 - flatpak_transaction_add_uninstall@Base 0.11.8 - flatpak_transaction_add_update@Base 0.11.8 - flatpak_transaction_complete_basic_auth@Base 1.5.2 - flatpak_transaction_error_details_get_type@Base 0.11.8 - flatpak_transaction_get_auto_install_debug@Base 1.13.3 - flatpak_transaction_get_auto_install_sdk@Base 1.13.3 - flatpak_transaction_get_current_operation@Base 0.99.1 - flatpak_transaction_get_include_unused_uninstall_ops@Base 1.9.1 - flatpak_transaction_get_installation@Base 0.99.3 - flatpak_transaction_get_no_deploy@Base 1.5.2 - flatpak_transaction_get_no_interaction@Base 1.13.1 - flatpak_transaction_get_no_pull@Base 1.5.2 - flatpak_transaction_get_operation_for_ref@Base 1.13.3 - flatpak_transaction_get_operations@Base 0.99.1 - flatpak_transaction_get_parent_window@Base 1.5.2 - flatpak_transaction_get_type@Base 0.11.8 - flatpak_transaction_is_empty@Base 0.11.8 - flatpak_transaction_new_for_installation@Base 0.11.8 - flatpak_transaction_operation_get_bundle_path@Base 0.99.1 - flatpak_transaction_operation_get_commit@Base 0.99.1 - flatpak_transaction_operation_get_download_size@Base 1.1.3 - flatpak_transaction_operation_get_installed_size@Base 1.1.3 - flatpak_transaction_operation_get_is_skipped@Base 1.7.3 - flatpak_transaction_operation_get_metadata@Base 0.99.1 - flatpak_transaction_operation_get_old_metadata@Base 0.99.1 - flatpak_transaction_operation_get_operation_type@Base 0.99.1 - flatpak_transaction_operation_get_ref@Base 0.99.1 - flatpak_transaction_operation_get_related_to_ops@Base 1.7.3 - flatpak_transaction_operation_get_remote@Base 0.99.1 - flatpak_transaction_operation_get_requires_authentication@Base 1.9.1 - flatpak_transaction_operation_get_subpaths@Base 1.9.1 - flatpak_transaction_operation_get_type@Base 0.99.1 - flatpak_transaction_operation_type_get_type@Base 0.11.8 - flatpak_transaction_operation_type_to_string@Base 0.99.3 - flatpak_transaction_progress_get_bytes_transferred@Base 1.1.3 - flatpak_transaction_progress_get_is_estimating@Base 0.11.8 - flatpak_transaction_progress_get_progress@Base 0.11.8 - flatpak_transaction_progress_get_start_time@Base 1.1.3 - flatpak_transaction_progress_get_status@Base 0.11.8 - flatpak_transaction_progress_get_type@Base 0.11.8 - flatpak_transaction_progress_set_update_frequency@Base 0.11.8 - flatpak_transaction_remote_reason_get_type@Base 0.99.3 - flatpak_transaction_result_get_type@Base 0.11.8 - flatpak_transaction_run@Base 0.11.8 - flatpak_transaction_set_auto_install_debug@Base 1.13.3 - flatpak_transaction_set_auto_install_sdk@Base 1.13.3 - flatpak_transaction_set_default_arch@Base 0.99.3 - flatpak_transaction_set_disable_auto_pin@Base 1.9.1 - flatpak_transaction_set_disable_dependencies@Base 0.11.8 - flatpak_transaction_set_disable_prune@Base 0.11.8 - flatpak_transaction_set_disable_related@Base 0.11.8 - flatpak_transaction_set_disable_static_deltas@Base 0.11.8 - flatpak_transaction_set_force_uninstall@Base 0.11.8 - flatpak_transaction_set_include_unused_uninstall_ops@Base 1.9.1 - flatpak_transaction_set_no_deploy@Base 0.11.8 - flatpak_transaction_set_no_interaction@Base 1.7.3 - flatpak_transaction_set_no_pull@Base 0.11.8 - flatpak_transaction_set_parent_window@Base 1.5.2 - flatpak_transaction_set_reinstall@Base 0.11.8 - flatpak_uninstall_flags_get_type@Base 0.11.8 - flatpak_update_flags_get_type@Base 0.5.2 + flatpak_launch_flags_get_type@Base 1.2 + flatpak_portal_error_get_type@Base 1.0 + flatpak_portal_error_quark@Base 1.0 + flatpak_query_flags_get_type@Base 1.4 + flatpak_ref_format_ref@Base 1.0 + flatpak_ref_format_ref_cached@Base 1.10 + flatpak_ref_get_arch@Base 1.0 + flatpak_ref_get_branch@Base 1.0 + flatpak_ref_get_collection_id@Base 1.0 + flatpak_ref_get_commit@Base 1.0 + flatpak_ref_get_kind@Base 1.0 + flatpak_ref_get_name@Base 1.0 + flatpak_ref_get_type@Base 1.0 + flatpak_ref_kind_get_type@Base 1.0 + flatpak_ref_parse@Base 1.0 + flatpak_related_ref_get_subpaths@Base 1.0 + flatpak_related_ref_get_type@Base 1.0 + flatpak_related_ref_should_autoprune@Base 1.0 + flatpak_related_ref_should_delete@Base 1.0 + flatpak_related_ref_should_download@Base 1.0 + flatpak_remote_get_appstream_dir@Base 1.0 + flatpak_remote_get_appstream_timestamp@Base 1.0 + flatpak_remote_get_collection_id@Base 1.0 + flatpak_remote_get_comment@Base 1.4 + flatpak_remote_get_default_branch@Base 1.0 + flatpak_remote_get_description@Base 1.4 + flatpak_remote_get_disabled@Base 1.0 + flatpak_remote_get_filter@Base 1.4 + flatpak_remote_get_gpg_verify@Base 1.0 + flatpak_remote_get_homepage@Base 1.4 + flatpak_remote_get_icon@Base 1.4 + flatpak_remote_get_main_ref@Base 1.2 + flatpak_remote_get_name@Base 1.0 + flatpak_remote_get_nodeps@Base 1.0 + flatpak_remote_get_noenumerate@Base 1.0 + flatpak_remote_get_prio@Base 1.0 + flatpak_remote_get_remote_type@Base 1.0 + flatpak_remote_get_title@Base 1.0 + flatpak_remote_get_type@Base 1.0 + flatpak_remote_get_url@Base 1.0 + flatpak_remote_new@Base 1.0 + flatpak_remote_new_from_file@Base 1.4 + flatpak_remote_ref_get_download_size@Base 1.0 + flatpak_remote_ref_get_eol@Base 1.0 + flatpak_remote_ref_get_eol_rebase@Base 1.0 + flatpak_remote_ref_get_installed_size@Base 1.0 + flatpak_remote_ref_get_metadata@Base 1.0 + flatpak_remote_ref_get_remote_name@Base 1.0 + flatpak_remote_ref_get_type@Base 1.0 + flatpak_remote_set_collection_id@Base 1.0 + flatpak_remote_set_comment@Base 1.4 + flatpak_remote_set_default_branch@Base 1.0 + flatpak_remote_set_description@Base 1.4 + flatpak_remote_set_disabled@Base 1.0 + flatpak_remote_set_filter@Base 1.4 + flatpak_remote_set_gpg_key@Base 1.0 + flatpak_remote_set_gpg_verify@Base 1.0 + flatpak_remote_set_homepage@Base 1.4 + flatpak_remote_set_icon@Base 1.4 + flatpak_remote_set_main_ref@Base 1.2 + flatpak_remote_set_nodeps@Base 1.0 + flatpak_remote_set_noenumerate@Base 1.0 + flatpak_remote_set_prio@Base 1.0 + flatpak_remote_set_title@Base 1.0 + flatpak_remote_set_url@Base 1.0 + flatpak_remote_type_get_type@Base 1.0 + flatpak_storage_type_get_type@Base 1.0 + flatpak_transaction_abort_webflow@Base 1.6 + flatpak_transaction_add_default_dependency_sources@Base 1.0 + flatpak_transaction_add_dependency_source@Base 1.0 + flatpak_transaction_add_install@Base 1.0 + flatpak_transaction_add_install_bundle@Base 1.0 + flatpak_transaction_add_install_flatpakref@Base 1.0 + flatpak_transaction_add_rebase@Base 1.4 + flatpak_transaction_add_rebase_and_uninstall@Base 1.15.6 + flatpak_transaction_add_sideload_repo@Base 1.8 + flatpak_transaction_add_uninstall@Base 1.0 + flatpak_transaction_add_update@Base 1.0 + flatpak_transaction_complete_basic_auth@Base 1.6 + flatpak_transaction_error_details_get_type@Base 1.0 + flatpak_transaction_get_auto_install_debug@Base 1.14 + flatpak_transaction_get_auto_install_sdk@Base 1.14 + flatpak_transaction_get_current_operation@Base 1.0 + flatpak_transaction_get_include_unused_uninstall_ops@Base 1.10 + flatpak_transaction_get_installation@Base 1.0 + flatpak_transaction_get_no_deploy@Base 1.6 + flatpak_transaction_get_no_interaction@Base 1.14 + flatpak_transaction_get_no_pull@Base 1.6 + flatpak_transaction_get_operation_for_ref@Base 1.14 + flatpak_transaction_get_operations@Base 1.0 + flatpak_transaction_get_parent_window@Base 1.6 + flatpak_transaction_get_type@Base 1.0 + flatpak_transaction_is_empty@Base 1.0 + flatpak_transaction_new_for_installation@Base 1.0 + flatpak_transaction_operation_get_bundle_path@Base 1.0 + flatpak_transaction_operation_get_commit@Base 1.0 + flatpak_transaction_operation_get_download_size@Base 1.2 + flatpak_transaction_operation_get_installed_size@Base 1.2 + flatpak_transaction_operation_get_is_skipped@Base 1.8 + flatpak_transaction_operation_get_metadata@Base 1.0 + flatpak_transaction_operation_get_old_metadata@Base 1.0 + flatpak_transaction_operation_get_operation_type@Base 1.0 + flatpak_transaction_operation_get_ref@Base 1.0 + flatpak_transaction_operation_get_related_to_ops@Base 1.8 + flatpak_transaction_operation_get_remote@Base 1.0 + flatpak_transaction_operation_get_requires_authentication@Base 1.10 + flatpak_transaction_operation_get_subpaths@Base 1.10 + flatpak_transaction_operation_get_type@Base 1.0 + flatpak_transaction_operation_type_get_type@Base 1.0 + flatpak_transaction_operation_type_to_string@Base 1.0 + flatpak_transaction_progress_get_bytes_transferred@Base 1.2 + flatpak_transaction_progress_get_is_estimating@Base 1.0 + flatpak_transaction_progress_get_progress@Base 1.0 + flatpak_transaction_progress_get_start_time@Base 1.2 + flatpak_transaction_progress_get_status@Base 1.0 + flatpak_transaction_progress_get_type@Base 1.0 + flatpak_transaction_progress_set_update_frequency@Base 1.0 + flatpak_transaction_remote_reason_get_type@Base 1.0 + flatpak_transaction_result_get_type@Base 1.0 + flatpak_transaction_run@Base 1.0 + flatpak_transaction_set_auto_install_debug@Base 1.14 + flatpak_transaction_set_auto_install_sdk@Base 1.14 + flatpak_transaction_set_default_arch@Base 1.0 + flatpak_transaction_set_disable_auto_pin@Base 1.10 + flatpak_transaction_set_disable_dependencies@Base 1.0 + flatpak_transaction_set_disable_prune@Base 1.0 + flatpak_transaction_set_disable_related@Base 1.0 + flatpak_transaction_set_disable_static_deltas@Base 1.0 + flatpak_transaction_set_force_uninstall@Base 1.0 + flatpak_transaction_set_include_unused_uninstall_ops@Base 1.10 + flatpak_transaction_set_no_deploy@Base 1.0 + flatpak_transaction_set_no_interaction@Base 1.8 + flatpak_transaction_set_no_pull@Base 1.0 + flatpak_transaction_set_parent_window@Base 1.6 + flatpak_transaction_set_reinstall@Base 1.0 + flatpak_uninstall_flags_get_type@Base 1.0 + flatpak_update_flags_get_type@Base 1.0 diff --git a/debian/org.freedesktop.Flatpak.pkla b/debian/org.freedesktop.Flatpak.pkla deleted file mode 100644 index 6dfdd7a..0000000 --- a/debian/org.freedesktop.Flatpak.pkla +++ /dev/null @@ -1,11 +0,0 @@ -[Install Flatpak apps and runtimes] -Identity=unix-group:sudo -Action=org.freedesktop.Flatpak.app-install;org.freedesktop.Flatpak.runtime-install;org.freedesktop.Flatpak.app-uninstall;org.freedesktop.Flatpak.runtime-uninstall;org.freedesktop.Flatpak.modify-repo; -ResultActive=yes - -[Override parental controls for Flatpak apps] -Identity=unix-user:* -Action=org.freedesktop.Flatpak.override-parental-controls -ResultAny=auth_admin -ResultActive=auth_admin -ResultInactive=auth_admin diff --git a/debian/patches/debian/system-helper-Set-Debian-s-canonical-home-directory-for-s.patch b/debian/patches/debian/system-helper-Set-Debian-s-canonical-home-directory-for-s.patch new file mode 100644 index 0000000..2de7de1 --- /dev/null +++ b/debian/patches/debian/system-helper-Set-Debian-s-canonical-home-directory-for-s.patch @@ -0,0 +1,17 @@ +From: Simon McVittie +Date: Mon, 10 Mar 2025 10:56:07 +0000 +Subject: system-helper: Set Debian's canonical home directory for system + users + +Forwarded: not-needed +--- + system-helper/flatpak.conf.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/system-helper/flatpak.conf.in b/system-helper/flatpak.conf.in +index 9cc212e..8244290 100644 +--- a/system-helper/flatpak.conf.in ++++ b/system-helper/flatpak.conf.in +@@ -1 +1 @@ +-u @SYSTEM_HELPER_USER@ - "Flatpak system helper" - ++u @SYSTEM_HELPER_USER@ - "Flatpak system helper" /nonexistent diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..a40e850 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1 @@ +debian/system-helper-Set-Debian-s-canonical-home-directory-for-s.patch diff --git a/debian/rules b/debian/rules index 37e45fd..c6cd1a0 100755 --- a/debian/rules +++ b/debian/rules @@ -7,55 +7,45 @@ include /usr/share/dpkg/default.mk binaries := $(shell dh_listpackages) %: - dh $@ --with=gir + dh $@ --buildsystem=meson override_dh_autoreconf: - NOCONFIGURE=1 \ - dh_autoreconf \ - --as-needed \ - ./autogen.sh \ - -- \ - $(NULL) configure_options = ifneq ($(filter nodoc,$(DEB_BUILD_OPTIONS)),) -configure_options += --disable-docbook-docs -configure_options += --disable-documentation +configure_options += -Ddocbook_docs=disabled else -configure_options += --enable-docbook-docs -configure_options += --enable-documentation +configure_options += -Ddocbook_docs=enabled endif ifneq ($(filter libflatpak-doc,$(binaries)),) -configure_options += --enable-gtk-doc +configure_options += -Dgtkdoc=enabled else -configure_options += --disable-gtk-doc +configure_options += -Dgtkdoc=disabled endif override_dh_auto_configure: rm -f app/parse-datetime.c dh_auto_configure -- \ - --disable-auto-sideloading \ - --disable-selinux-module \ - --enable-gdm-env-file \ - --enable-installed-tests \ - --with-curl=yes \ - --with-dbus-config-dir=/usr/share/dbus-1/system.d \ - --with-priv-mode=none \ - --with-privileged-group=sudo \ - --with-run-media-dir=/media \ - --with-system-bubblewrap=bwrap \ - --with-system-dbus-proxy=xdg-dbus-proxy \ - --with-systemdsystemunitdir=/usr/lib/systemd/system \ - --with-system-helper-user=_flatpak \ + -Dauto_sideloading=false \ + -Ddbus_config_dir=/usr/share/dbus-1/system.d \ + -Dgdm_env_file=true \ + -Dhttp_backend=curl \ + -Dinstalled_tests=true \ + -Dprivileged_group=sudo \ + -Drun_media_dir=/media \ + -Dselinux_module=disabled \ + -Dsystem_bubblewrap=bwrap \ + -Dsystem_dbus_proxy=xdg-dbus-proxy \ + -Dsystem_helper_user=_flatpak \ + -Dsystemdsystemunitdir=/usr/lib/systemd/system \ $(configure_options) override_dh_install: install -d debian/tmp/etc/X11/Xsession.d install -m644 debian/tmp/etc/profile.d/flatpak.sh \ debian/tmp/etc/X11/Xsession.d/20flatpak - find debian/tmp -name '*.la' -print -delete dh_install # debhelper >= 13.4 makes all of /usr/libexec executable, which is not diff --git a/debian/salsa-ci.yml b/debian/salsa-ci.yml index 0c22dc4..8424db4 100644 --- a/debian/salsa-ci.yml +++ b/debian/salsa-ci.yml @@ -1,3 +1,3 @@ +--- include: - - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml - - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/recipes/debian.yml diff --git a/debian/test.sh b/debian/test.sh index 4291c9c..9721d69 100755 --- a/debian/test.sh +++ b/debian/test.sh @@ -12,6 +12,16 @@ unset no_proxy adverb= +case "$DEB_HOST_ARCH_CPU" in + (amd64|i386) + test_timeout_multiplier=3 + ;; + + (*) + test_timeout_multiplier=20 + ;; +esac + if [ "$DEB_HOST_ARCH_BITS" = 64 ]; then # reprotest sometimes uses linux32 even for x86_64 builds, and # Flatpak's tests don't support this. @@ -19,11 +29,7 @@ if [ "$DEB_HOST_ARCH_BITS" = 64 ]; then fi e=0 -$adverb dh_auto_test || e=$? - -find . -name 'test*.log' \ --not -name test-suite.log \ --print0 | xargs -0 tail -v -c1M +$adverb dh_auto_test -- --timeout-multiplier "${test_timeout_multiplier}" || e=$? echo "Killing gpg-agent processes:" pgrep --list-full --full "gpg-agent --homedir /var/tmp/test-flatpak-.*" >&2 || : diff --git a/debian/upstream/metadata b/debian/upstream/metadata index b11b934..b4582e9 100644 --- a/debian/upstream/metadata +++ b/debian/upstream/metadata @@ -1,5 +1,6 @@ --- -Repository: https://github.com/flatpak/flatpak.git -Repository-Browse: https://github.com/flatpak/flatpak Bug-Database: https://github.com/flatpak/flatpak/issues Bug-Submit: https://github.com/flatpak/flatpak/issues/new +Repository: https://github.com/flatpak/flatpak.git +Repository-Browse: https://github.com/flatpak/flatpak +Security-Contact: mailto:flatpak-security@lists.freedesktop.org diff --git a/debian/watch b/debian/watch index 2cf0905..7dfdc2d 100644 --- a/debian/watch +++ b/debian/watch @@ -1,9 +1,9 @@ version=4 -# Upstream releases official Autotools 'make dist' tarballs, so we use +# Upstream releases official 'meson dist' tarballs, so we use # those in preference to git tags opts="\ compression=xz, \ dversionmangle=s/\+(?:git)?[0-9]*(?:\+g[0-9a-f]*)//, \ downloadurlmangle=s#/tag/#/download/#;s#(v?@ANY_VERSION@)$#$1/@PACKAGE@-$2.tar.xz#, \ filenamemangle=s#v?@ANY_VERSION@#@PACKAGE@-$1.tar.xz#" \ -https://github.com/@PACKAGE@/@PACKAGE@/tags .*/releases/tag/v?(\d+\.\d*[02468]\.\d+) +https://github.com/@PACKAGE@/@PACKAGE@/tags .*/releases/tag/v?(\d+\.\d*[02468]\.[-+.:~\da-zA-Z]*) diff --git a/depcomp b/depcomp deleted file mode 100755 index 715e343..0000000 --- a/depcomp +++ /dev/null @@ -1,791 +0,0 @@ -#! /bin/sh -# depcomp - compile a program generating dependencies as side-effects - -scriptversion=2018-03-07.03; # UTC - -# Copyright (C) 1999-2021 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Originally written by Alexandre Oliva . - -case $1 in - '') - echo "$0: No command. Try '$0 --help' for more information." 1>&2 - exit 1; - ;; - -h | --h*) - cat <<\EOF -Usage: depcomp [--help] [--version] PROGRAM [ARGS] - -Run PROGRAMS ARGS to compile a file, generating dependencies -as side-effects. - -Environment variables: - depmode Dependency tracking mode. - source Source file read by 'PROGRAMS ARGS'. - object Object file output by 'PROGRAMS ARGS'. - DEPDIR directory where to store dependencies. - depfile Dependency file to output. - tmpdepfile Temporary file to use when outputting dependencies. - libtool Whether libtool is used (yes/no). - -Report bugs to . -EOF - exit $? - ;; - -v | --v*) - echo "depcomp $scriptversion" - exit $? - ;; -esac - -# Get the directory component of the given path, and save it in the -# global variables '$dir'. Note that this directory component will -# be either empty or ending with a '/' character. This is deliberate. -set_dir_from () -{ - case $1 in - */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;; - *) dir=;; - esac -} - -# Get the suffix-stripped basename of the given path, and save it the -# global variable '$base'. -set_base_from () -{ - base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'` -} - -# If no dependency file was actually created by the compiler invocation, -# we still have to create a dummy depfile, to avoid errors with the -# Makefile "include basename.Plo" scheme. -make_dummy_depfile () -{ - echo "#dummy" > "$depfile" -} - -# Factor out some common post-processing of the generated depfile. -# Requires the auxiliary global variable '$tmpdepfile' to be set. -aix_post_process_depfile () -{ - # If the compiler actually managed to produce a dependency file, - # post-process it. - if test -f "$tmpdepfile"; then - # Each line is of the form 'foo.o: dependency.h'. - # Do two passes, one to just change these to - # $object: dependency.h - # and one to simply output - # dependency.h: - # which is needed to avoid the deleted-header problem. - { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile" - sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile" - } > "$depfile" - rm -f "$tmpdepfile" - else - make_dummy_depfile - fi -} - -# A tabulation character. -tab=' ' -# A newline character. -nl=' -' -# Character ranges might be problematic outside the C locale. -# These definitions help. -upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ -lower=abcdefghijklmnopqrstuvwxyz -digits=0123456789 -alpha=${upper}${lower} - -if test -z "$depmode" || test -z "$source" || test -z "$object"; then - echo "depcomp: Variables source, object and depmode must be set" 1>&2 - exit 1 -fi - -# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. -depfile=${depfile-`echo "$object" | - sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} -tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} - -rm -f "$tmpdepfile" - -# Avoid interferences from the environment. -gccflag= dashmflag= - -# Some modes work just like other modes, but use different flags. We -# parameterize here, but still list the modes in the big case below, -# to make depend.m4 easier to write. Note that we *cannot* use a case -# here, because this file can only contain one case statement. -if test "$depmode" = hp; then - # HP compiler uses -M and no extra arg. - gccflag=-M - depmode=gcc -fi - -if test "$depmode" = dashXmstdout; then - # This is just like dashmstdout with a different argument. - dashmflag=-xM - depmode=dashmstdout -fi - -cygpath_u="cygpath -u -f -" -if test "$depmode" = msvcmsys; then - # This is just like msvisualcpp but w/o cygpath translation. - # Just convert the backslash-escaped backslashes to single forward - # slashes to satisfy depend.m4 - cygpath_u='sed s,\\\\,/,g' - depmode=msvisualcpp -fi - -if test "$depmode" = msvc7msys; then - # This is just like msvc7 but w/o cygpath translation. - # Just convert the backslash-escaped backslashes to single forward - # slashes to satisfy depend.m4 - cygpath_u='sed s,\\\\,/,g' - depmode=msvc7 -fi - -if test "$depmode" = xlc; then - # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information. - gccflag=-qmakedep=gcc,-MF - depmode=gcc -fi - -case "$depmode" in -gcc3) -## gcc 3 implements dependency tracking that does exactly what -## we want. Yay! Note: for some reason libtool 1.4 doesn't like -## it if -MD -MP comes after the -MF stuff. Hmm. -## Unfortunately, FreeBSD c89 acceptance of flags depends upon -## the command line argument order; so add the flags where they -## appear in depend2.am. Note that the slowdown incurred here -## affects only configure: in makefiles, %FASTDEP% shortcuts this. - for arg - do - case $arg in - -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; - *) set fnord "$@" "$arg" ;; - esac - shift # fnord - shift # $arg - done - "$@" - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat - fi - mv "$tmpdepfile" "$depfile" - ;; - -gcc) -## Note that this doesn't just cater to obsosete pre-3.x GCC compilers. -## but also to in-use compilers like IMB xlc/xlC and the HP C compiler. -## (see the conditional assignment to $gccflag above). -## There are various ways to get dependency output from gcc. Here's -## why we pick this rather obscure method: -## - Don't want to use -MD because we'd like the dependencies to end -## up in a subdir. Having to rename by hand is ugly. -## (We might end up doing this anyway to support other compilers.) -## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like -## -MM, not -M (despite what the docs say). Also, it might not be -## supported by the other compilers which use the 'gcc' depmode. -## - Using -M directly means running the compiler twice (even worse -## than renaming). - if test -z "$gccflag"; then - gccflag=-MD, - fi - "$@" -Wp,"$gccflag$tmpdepfile" - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - echo "$object : \\" > "$depfile" - # The second -e expression handles DOS-style file names with drive - # letters. - sed -e 's/^[^:]*: / /' \ - -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" -## This next piece of magic avoids the "deleted header file" problem. -## The problem is that when a header file which appears in a .P file -## is deleted, the dependency causes make to die (because there is -## typically no way to rebuild the header). We avoid this by adding -## dummy dependencies for each header file. Too bad gcc doesn't do -## this for us directly. -## Some versions of gcc put a space before the ':'. On the theory -## that the space means something, we add a space to the output as -## well. hp depmode also adds that space, but also prefixes the VPATH -## to the object. Take care to not repeat it in the output. -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - tr ' ' "$nl" < "$tmpdepfile" \ - | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ - | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -hp) - # This case exists only to let depend.m4 do its work. It works by - # looking at the text of this script. This case will never be run, - # since it is checked for above. - exit 1 - ;; - -sgi) - if test "$libtool" = yes; then - "$@" "-Wp,-MDupdate,$tmpdepfile" - else - "$@" -MDupdate "$tmpdepfile" - fi - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - - if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files - echo "$object : \\" > "$depfile" - # Clip off the initial element (the dependent). Don't try to be - # clever and replace this with sed code, as IRIX sed won't handle - # lines with more than a fixed number of characters (4096 in - # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; - # the IRIX cc adds comments like '#:fec' to the end of the - # dependency line. - tr ' ' "$nl" < "$tmpdepfile" \ - | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \ - | tr "$nl" ' ' >> "$depfile" - echo >> "$depfile" - # The second pass generates a dummy entry for each header file. - tr ' ' "$nl" < "$tmpdepfile" \ - | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ - >> "$depfile" - else - make_dummy_depfile - fi - rm -f "$tmpdepfile" - ;; - -xlc) - # This case exists only to let depend.m4 do its work. It works by - # looking at the text of this script. This case will never be run, - # since it is checked for above. - exit 1 - ;; - -aix) - # The C for AIX Compiler uses -M and outputs the dependencies - # in a .u file. In older versions, this file always lives in the - # current directory. Also, the AIX compiler puts '$object:' at the - # start of each line; $object doesn't have directory information. - # Version 6 uses the directory in both cases. - set_dir_from "$object" - set_base_from "$object" - if test "$libtool" = yes; then - tmpdepfile1=$dir$base.u - tmpdepfile2=$base.u - tmpdepfile3=$dir.libs/$base.u - "$@" -Wc,-M - else - tmpdepfile1=$dir$base.u - tmpdepfile2=$dir$base.u - tmpdepfile3=$dir$base.u - "$@" -M - fi - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" - exit $stat - fi - - for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" - do - test -f "$tmpdepfile" && break - done - aix_post_process_depfile - ;; - -tcc) - # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26 - # FIXME: That version still under development at the moment of writing. - # Make that this statement remains true also for stable, released - # versions. - # It will wrap lines (doesn't matter whether long or short) with a - # trailing '\', as in: - # - # foo.o : \ - # foo.c \ - # foo.h \ - # - # It will put a trailing '\' even on the last line, and will use leading - # spaces rather than leading tabs (at least since its commit 0394caf7 - # "Emit spaces for -MD"). - "$@" -MD -MF "$tmpdepfile" - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'. - # We have to change lines of the first kind to '$object: \'. - sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile" - # And for each line of the second kind, we have to emit a 'dep.h:' - # dummy dependency, to avoid the deleted-header problem. - sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile" - rm -f "$tmpdepfile" - ;; - -## The order of this option in the case statement is important, since the -## shell code in configure will try each of these formats in the order -## listed in this file. A plain '-MD' option would be understood by many -## compilers, so we must ensure this comes after the gcc and icc options. -pgcc) - # Portland's C compiler understands '-MD'. - # Will always output deps to 'file.d' where file is the root name of the - # source file under compilation, even if file resides in a subdirectory. - # The object file name does not affect the name of the '.d' file. - # pgcc 10.2 will output - # foo.o: sub/foo.c sub/foo.h - # and will wrap long lines using '\' : - # foo.o: sub/foo.c ... \ - # sub/foo.h ... \ - # ... - set_dir_from "$object" - # Use the source, not the object, to determine the base name, since - # that's sadly what pgcc will do too. - set_base_from "$source" - tmpdepfile=$base.d - - # For projects that build the same source file twice into different object - # files, the pgcc approach of using the *source* file root name can cause - # problems in parallel builds. Use a locking strategy to avoid stomping on - # the same $tmpdepfile. - lockdir=$base.d-lock - trap " - echo '$0: caught signal, cleaning up...' >&2 - rmdir '$lockdir' - exit 1 - " 1 2 13 15 - numtries=100 - i=$numtries - while test $i -gt 0; do - # mkdir is a portable test-and-set. - if mkdir "$lockdir" 2>/dev/null; then - # This process acquired the lock. - "$@" -MD - stat=$? - # Release the lock. - rmdir "$lockdir" - break - else - # If the lock is being held by a different process, wait - # until the winning process is done or we timeout. - while test -d "$lockdir" && test $i -gt 0; do - sleep 1 - i=`expr $i - 1` - done - fi - i=`expr $i - 1` - done - trap - 1 2 13 15 - if test $i -le 0; then - echo "$0: failed to acquire lock after $numtries attempts" >&2 - echo "$0: check lockdir '$lockdir'" >&2 - exit 1 - fi - - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - # Each line is of the form `foo.o: dependent.h', - # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. - # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. - sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process this invocation - # correctly. Breaking it into two sed invocations is a workaround. - sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \ - | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -hp2) - # The "hp" stanza above does not work with aCC (C++) and HP's ia64 - # compilers, which have integrated preprocessors. The correct option - # to use with these is +Maked; it writes dependencies to a file named - # 'foo.d', which lands next to the object file, wherever that - # happens to be. - # Much of this is similar to the tru64 case; see comments there. - set_dir_from "$object" - set_base_from "$object" - if test "$libtool" = yes; then - tmpdepfile1=$dir$base.d - tmpdepfile2=$dir.libs/$base.d - "$@" -Wc,+Maked - else - tmpdepfile1=$dir$base.d - tmpdepfile2=$dir$base.d - "$@" +Maked - fi - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile1" "$tmpdepfile2" - exit $stat - fi - - for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" - do - test -f "$tmpdepfile" && break - done - if test -f "$tmpdepfile"; then - sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile" - # Add 'dependent.h:' lines. - sed -ne '2,${ - s/^ *// - s/ \\*$// - s/$/:/ - p - }' "$tmpdepfile" >> "$depfile" - else - make_dummy_depfile - fi - rm -f "$tmpdepfile" "$tmpdepfile2" - ;; - -tru64) - # The Tru64 compiler uses -MD to generate dependencies as a side - # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'. - # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put - # dependencies in 'foo.d' instead, so we check for that too. - # Subdirectories are respected. - set_dir_from "$object" - set_base_from "$object" - - if test "$libtool" = yes; then - # Libtool generates 2 separate objects for the 2 libraries. These - # two compilations output dependencies in $dir.libs/$base.o.d and - # in $dir$base.o.d. We have to check for both files, because - # one of the two compilations can be disabled. We should prefer - # $dir$base.o.d over $dir.libs/$base.o.d because the latter is - # automatically cleaned when .libs/ is deleted, while ignoring - # the former would cause a distcleancheck panic. - tmpdepfile1=$dir$base.o.d # libtool 1.5 - tmpdepfile2=$dir.libs/$base.o.d # Likewise. - tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504 - "$@" -Wc,-MD - else - tmpdepfile1=$dir$base.d - tmpdepfile2=$dir$base.d - tmpdepfile3=$dir$base.d - "$@" -MD - fi - - stat=$? - if test $stat -ne 0; then - rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" - exit $stat - fi - - for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" - do - test -f "$tmpdepfile" && break - done - # Same post-processing that is required for AIX mode. - aix_post_process_depfile - ;; - -msvc7) - if test "$libtool" = yes; then - showIncludes=-Wc,-showIncludes - else - showIncludes=-showIncludes - fi - "$@" $showIncludes > "$tmpdepfile" - stat=$? - grep -v '^Note: including file: ' "$tmpdepfile" - if test $stat -ne 0; then - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - echo "$object : \\" > "$depfile" - # The first sed program below extracts the file names and escapes - # backslashes for cygpath. The second sed program outputs the file - # name when reading, but also accumulates all include files in the - # hold buffer in order to output them again at the end. This only - # works with sed implementations that can handle large buffers. - sed < "$tmpdepfile" -n ' -/^Note: including file: *\(.*\)/ { - s//\1/ - s/\\/\\\\/g - p -}' | $cygpath_u | sort -u | sed -n ' -s/ /\\ /g -s/\(.*\)/'"$tab"'\1 \\/p -s/.\(.*\) \\/\1:/ -H -$ { - s/.*/'"$tab"'/ - G - p -}' >> "$depfile" - echo >> "$depfile" # make sure the fragment doesn't end with a backslash - rm -f "$tmpdepfile" - ;; - -msvc7msys) - # This case exists only to let depend.m4 do its work. It works by - # looking at the text of this script. This case will never be run, - # since it is checked for above. - exit 1 - ;; - -#nosideeffect) - # This comment above is used by automake to tell side-effect - # dependency tracking mechanisms from slower ones. - -dashmstdout) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout, regardless of -o. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test "X$1" != 'X--mode=compile'; do - shift - done - shift - fi - - # Remove '-o $object'. - IFS=" " - for arg - do - case $arg in - -o) - shift - ;; - $object) - shift - ;; - *) - set fnord "$@" "$arg" - shift # fnord - shift # $arg - ;; - esac - done - - test -z "$dashmflag" && dashmflag=-M - # Require at least two characters before searching for ':' - # in the target name. This is to cope with DOS-style filenames: - # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise. - "$@" $dashmflag | - sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile" - rm -f "$depfile" - cat < "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process this sed invocation - # correctly. Breaking it into two sed invocations is a workaround. - tr ' ' "$nl" < "$tmpdepfile" \ - | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \ - | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -dashXmstdout) - # This case only exists to satisfy depend.m4. It is never actually - # run, as this mode is specially recognized in the preamble. - exit 1 - ;; - -makedepend) - "$@" || exit $? - # Remove any Libtool call - if test "$libtool" = yes; then - while test "X$1" != 'X--mode=compile'; do - shift - done - shift - fi - # X makedepend - shift - cleared=no eat=no - for arg - do - case $cleared in - no) - set ""; shift - cleared=yes ;; - esac - if test $eat = yes; then - eat=no - continue - fi - case "$arg" in - -D*|-I*) - set fnord "$@" "$arg"; shift ;; - # Strip any option that makedepend may not understand. Remove - # the object too, otherwise makedepend will parse it as a source file. - -arch) - eat=yes ;; - -*|$object) - ;; - *) - set fnord "$@" "$arg"; shift ;; - esac - done - obj_suffix=`echo "$object" | sed 's/^.*\././'` - touch "$tmpdepfile" - ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" - rm -f "$depfile" - # makedepend may prepend the VPATH from the source file name to the object. - # No need to regex-escape $object, excess matching of '.' is harmless. - sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process the last invocation - # correctly. Breaking it into two sed invocations is a workaround. - sed '1,2d' "$tmpdepfile" \ - | tr ' ' "$nl" \ - | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \ - | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" "$tmpdepfile".bak - ;; - -cpp) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test "X$1" != 'X--mode=compile'; do - shift - done - shift - fi - - # Remove '-o $object'. - IFS=" " - for arg - do - case $arg in - -o) - shift - ;; - $object) - shift - ;; - *) - set fnord "$@" "$arg" - shift # fnord - shift # $arg - ;; - esac - done - - "$@" -E \ - | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ - -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ - | sed '$ s: \\$::' > "$tmpdepfile" - rm -f "$depfile" - echo "$object : \\" > "$depfile" - cat < "$tmpdepfile" >> "$depfile" - sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -msvisualcpp) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test "X$1" != 'X--mode=compile'; do - shift - done - shift - fi - - IFS=" " - for arg - do - case "$arg" in - -o) - shift - ;; - $object) - shift - ;; - "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") - set fnord "$@" - shift - shift - ;; - *) - set fnord "$@" "$arg" - shift - shift - ;; - esac - done - "$@" -E 2>/dev/null | - sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" - rm -f "$depfile" - echo "$object : \\" > "$depfile" - sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile" - echo "$tab" >> "$depfile" - sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -msvcmsys) - # This case exists only to let depend.m4 do its work. It works by - # looking at the text of this script. This case will never be run, - # since it is checked for above. - exit 1 - ;; - -none) - exec "$@" - ;; - -*) - echo "Unknown depmode $depmode" 1>&2 - exit 1 - ;; -esac - -exit 0 - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC0" -# time-stamp-end: "; # UTC" -# End: diff --git a/doc/Makefile.am b/doc/Makefile.am deleted file mode 100644 index aa3d186..0000000 --- a/doc/Makefile.am +++ /dev/null @@ -1,111 +0,0 @@ -NULL = - -SUBDIRS = reference - -XSLTPROC_FLAGS = \ - --nonet \ - --stringparam man.output.quietly 1 \ - --stringparam funcsynopsis.style ansi \ - --stringparam man.th.extra1.suppress 1 \ - --stringparam man.authors.section.enabled 0 \ - --stringparam man.copyright.section.enabled 0 \ - $(NULL) - -.xml.1: - $(AM_V_GEN) $(XSLTPROC) $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $< - -.xml.5: - $(AM_V_GEN) $(XSLTPROC) $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $< - -man1 = \ - flatpak.1 \ - flatpak-remotes.1 \ - flatpak-remote-add.1 \ - flatpak-remote-delete.1 \ - flatpak-remote-modify.1 \ - flatpak-remote-ls.1 \ - flatpak-remote-info.1 \ - flatpak-install.1 \ - flatpak-config.1 \ - flatpak-update.1 \ - flatpak-uninstall.1 \ - flatpak-mask.1 \ - flatpak-pin.1 \ - flatpak-list.1 \ - flatpak-info.1 \ - flatpak-make-current.1 \ - flatpak-run.1 \ - flatpak-override.1 \ - flatpak-enter.1 \ - flatpak-ps.1 \ - flatpak-document-export.1 \ - flatpak-document-unexport.1 \ - flatpak-document-info.1 \ - flatpak-documents.1 \ - flatpak-permission-remove.1 \ - flatpak-permissions.1 \ - flatpak-permission-show.1 \ - flatpak-permission-reset.1 \ - flatpak-permission-set.1 \ - flatpak-build-init.1 \ - flatpak-build.1 \ - flatpak-build-bundle.1 \ - flatpak-build-import-bundle.1 \ - flatpak-build-finish.1 \ - flatpak-build-export.1 \ - flatpak-build-update-repo.1 \ - flatpak-build-sign.1 \ - flatpak-build-commit-from.1 \ - flatpak-repo.1 \ - flatpak-search.1 \ - flatpak-create-usb.1 \ - flatpak-repair.1 \ - flatpak-kill.1 \ - flatpak-history.1 \ - flatpak-spawn.1 \ - $(NULL) - -man5 = \ - flatpak-metadata.5 \ - flatpak-flatpakrepo.5 \ - flatpak-flatpakref.5 \ - flatpak-remote.5 \ - flatpak-installation.5 \ - $(NULL) - -man_MANS = \ - $(man1) \ - $(man5) \ - $(NULL) - -xml_files = \ - $(man1:.1=.xml) \ - $(man5:.5=.xml) \ - $(NULL) - -EXTRA_DIST = \ - $(xml_files) \ - docbook.css \ - flatpak-docs.xml.in \ - xmlto-config.xsl \ - $(NULL) - -CLEANFILES = $(NULL) -DISTCLEANFILES = \ - $(man_MANS) \ - flatpak-docs.xml \ - $(NULL) - -if DOCBOOK_DOCS_ENABLED - -doc_DATA = \ - flatpak-docs.html \ - docbook.css \ - $(NULL) - -CLEANFILES += flatpak-docs.html - -flatpak-docs.html: flatpak-docs.xml $(xml_files) xmlto-config.xsl - $(AM_V_GEN) $(XMLTO) $(XMLTO_FLAGS) --skip-validation xhtml-nochunks -m $(srcdir)/xmlto-config.xsl $< - -endif # DOCBOOK_DOCS_ENABLED diff --git a/doc/Makefile.in b/doc/Makefile.in deleted file mode 100644 index 36a88fe..0000000 --- a/doc/Makefile.in +++ /dev/null @@ -1,1015 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -[dEDm]) skip_next=yes;; \ - -[JT]) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -@DOCBOOK_DOCS_ENABLED_TRUE@am__append_1 = flatpak-docs.html -subdir = doc -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/subprojects/libglnx/libglnx.m4 \ - $(top_srcdir)/m4/attributes.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/glibtests.m4 $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = flatpak-docs.xml -CONFIG_CLEAN_VPATH_FILES = -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -SOURCES = -DIST_SOURCES = -RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ - ctags-recursive dvi-recursive html-recursive info-recursive \ - install-data-recursive install-dvi-recursive \ - install-exec-recursive install-html-recursive \ - install-info-recursive install-pdf-recursive \ - install-ps-recursive install-recursive installcheck-recursive \ - installdirs-recursive pdf-recursive ps-recursive \ - tags-recursive uninstall-recursive -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ - $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ - if (++n[$$2] == $(am__install_max)) \ - { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ - END { for (dir in files) print dir, files[dir] }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ - } -man1dir = $(mandir)/man1 -am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" \ - "$(DESTDIR)$(docdir)" -man5dir = $(mandir)/man5 -NROFF = nroff -MANS = $(man_MANS) -DATA = $(doc_DATA) -RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ - distclean-recursive maintainer-clean-recursive -am__recursive_targets = \ - $(RECURSIVE_TARGETS) \ - $(RECURSIVE_CLEAN_TARGETS) \ - $(am__extra_recursive_targets) -AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir distdir-am -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -# Read a list of newline-separated strings from the standard input, -# and print each of them once, without duplicates. Input order is -# *not* preserved. -am__uniquify_input = $(AWK) '\ - BEGIN { nonempty = 0; } \ - { items[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in items) print i; }; } \ -' -# Make sure the list of sources is unique. This is necessary because, -# e.g., the same source file might be shared among _SOURCES variables -# for different programs/libraries. -am__define_uniq_tagged_files = \ - list='$(am__tagged_files)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | $(am__uniquify_input)` -DIST_SUBDIRS = $(SUBDIRS) -am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/flatpak-docs.xml.in -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -am__relativize = \ - dir0=`pwd`; \ - sed_first='s,^\([^/]*\)/.*$$,\1,'; \ - sed_rest='s,^[^/]*/*,,'; \ - sed_last='s,^.*/\([^/]*\)$$,\1,'; \ - sed_butlast='s,/*[^/]*$$,,'; \ - while test -n "$$dir1"; do \ - first=`echo "$$dir1" | sed -e "$$sed_first"`; \ - if test "$$first" != "."; then \ - if test "$$first" = ".."; then \ - dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ - dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ - else \ - first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ - if test "$$first2" = "$$first"; then \ - dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ - else \ - dir2="../$$dir2"; \ - fi; \ - dir0="$$dir0"/"$$first"; \ - fi; \ - fi; \ - dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ - done; \ - reldir="$$dir2" -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -APPSTREAM_CFLAGS = @APPSTREAM_CFLAGS@ -APPSTREAM_LIBS = @APPSTREAM_LIBS@ -AR = @AR@ -ARCHIVE_CFLAGS = @ARCHIVE_CFLAGS@ -ARCHIVE_LIBS = @ARCHIVE_LIBS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BASE_CFLAGS = @BASE_CFLAGS@ -BASE_LIBS = @BASE_LIBS@ -BFLAGS = @BFLAGS@ -BISON = @BISON@ -BWRAP = @BWRAP@ -CAP_LIB = @CAP_LIB@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CSCOPE = @CSCOPE@ -CTAGS = @CTAGS@ -CURL_CFLAGS = @CURL_CFLAGS@ -CURL_LIBS = @CURL_LIBS@ -CYGPATH_W = @CYGPATH_W@ -DBUS_CONFIG_DIR = @DBUS_CONFIG_DIR@ -DBUS_PROXY = @DBUS_PROXY@ -DBUS_SERVICE_DIR = @DBUS_SERVICE_DIR@ -DCONF_CFLAGS = @DCONF_CFLAGS@ -DCONF_LIBS = @DCONF_LIBS@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DEP_GPGME_CFLAGS = @DEP_GPGME_CFLAGS@ -DEP_GPGME_LIBS = @DEP_GPGME_LIBS@ -DEP_GPGME_PTHREAD_CFLAGS = @DEP_GPGME_PTHREAD_CFLAGS@ -DEP_GPGME_PTHREAD_LIBS = @DEP_GPGME_PTHREAD_LIBS@ -DLLTOOL = @DLLTOOL@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -ETAGS = @ETAGS@ -EXEEXT = @EXEEXT@ -FGREP = @FGREP@ -FILECMD = @FILECMD@ -FLATPAK_INTERFACE_AGE = @FLATPAK_INTERFACE_AGE@ -FLATPAK_MAJOR_VERSION = @FLATPAK_MAJOR_VERSION@ -FLATPAK_MICRO_VERSION = @FLATPAK_MICRO_VERSION@ -FLATPAK_MINOR_VERSION = @FLATPAK_MINOR_VERSION@ -FLATPAK_VERSION = @FLATPAK_VERSION@ -FUSE3_CFLAGS = @FUSE3_CFLAGS@ -FUSE3_LIBS = @FUSE3_LIBS@ -FUSE_CFLAGS = @FUSE_CFLAGS@ -FUSE_LIBS = @FUSE_LIBS@ -GDBUS_CODEGEN = @GDBUS_CODEGEN@ -GDK_PIXBUF_CFLAGS = @GDK_PIXBUF_CFLAGS@ -GDK_PIXBUF_LIBS = @GDK_PIXBUF_LIBS@ -GENHTML = @GENHTML@ -GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ -GLIB260_CFLAGS = @GLIB260_CFLAGS@ -GLIB260_LIBS = @GLIB260_LIBS@ -GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ -GLIB_MKENUMS = @GLIB_MKENUMS@ -GMSGFMT = @GMSGFMT@ -GMSGFMT_015 = @GMSGFMT_015@ -GPGME_CONFIG = @GPGME_CONFIG@ -GPGME_PTHREAD_CFLAGS = @GPGME_PTHREAD_CFLAGS@ -GPGME_PTHREAD_LIBS = @GPGME_PTHREAD_LIBS@ -GPGRT_CONFIG = @GPGRT_CONFIG@ -GREP = @GREP@ -GTKDOC_CHECK = @GTKDOC_CHECK@ -GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ -GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ -GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ -GTKDOC_MKPDF = @GTKDOC_MKPDF@ -GTKDOC_REBASE = @GTKDOC_REBASE@ -HIDDEN_VISIBILITY_CFLAGS = @HIDDEN_VISIBILITY_CFLAGS@ -HTML_DIR = @HTML_DIR@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTLLIBS = @INTLLIBS@ -INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ -INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ -INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ -INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ -INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ -INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ -INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ -INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ -JSON_CFLAGS = @JSON_CFLAGS@ -JSON_LIBS = @JSON_LIBS@ -LCOV = @LCOV@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LIBICONV = @LIBICONV@ -LIBINTL = @LIBINTL@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBSECCOMP_CFLAGS = @LIBSECCOMP_CFLAGS@ -LIBSECCOMP_LIBS = @LIBSECCOMP_LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBICONV = @LTLIBICONV@ -LTLIBINTL = @LTLIBINTL@ -LTLIBOBJS = @LTLIBOBJS@ -LT_CURRENT_MINUS_AGE = @LT_CURRENT_MINUS_AGE@ -LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ -LT_VERSION_INFO = @LT_VERSION_INFO@ -MAINT = @MAINT@ -MAKEINFO = @MAKEINFO@ -MALCONTENT_CFLAGS = @MALCONTENT_CFLAGS@ -MALCONTENT_LIBS = @MALCONTENT_LIBS@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MKDIR_P = @MKDIR_P@ -MSGFMT = @MSGFMT@ -MSGFMT_015 = @MSGFMT_015@ -MSGMERGE = @MSGMERGE@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OSTREE_CFLAGS = @OSTREE_CFLAGS@ -OSTREE_LIBS = @OSTREE_LIBS@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -POLKIT_CFLAGS = @POLKIT_CFLAGS@ -POLKIT_LIBS = @POLKIT_LIBS@ -POSUB = @POSUB@ -PRIVILEGED_GROUP = @PRIVILEGED_GROUP@ -PROFILE_DIR = @PROFILE_DIR@ -RANLIB = @RANLIB@ -RUN_MEDIA_DIR = @RUN_MEDIA_DIR@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SOUP_CFLAGS = @SOUP_CFLAGS@ -SOUP_LIBS = @SOUP_LIBS@ -STRIP = @STRIP@ -SUDO_BIN = @SUDO_BIN@ -SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ -SYSTEMD_LIBS = @SYSTEMD_LIBS@ -SYSTEM_FONTS_DIR = @SYSTEM_FONTS_DIR@ -SYSTEM_FONT_CACHE_DIRS = @SYSTEM_FONT_CACHE_DIRS@ -SYSTEM_HELPER_USER = @SYSTEM_HELPER_USER@ -SYSTEM_INSTALL_DIR = @SYSTEM_INSTALL_DIR@ -USE_NLS = @USE_NLS@ -VALGRIND = @VALGRIND@ -VALGRIND_ENABLED = @VALGRIND_ENABLED@ -VALGRIND_HAVE_TOOL_memcheck = @VALGRIND_HAVE_TOOL_memcheck@ -VERSION = @VERSION@ -WARN_CFLAGS = @WARN_CFLAGS@ -XAUTH_CFLAGS = @XAUTH_CFLAGS@ -XAUTH_LIBS = @XAUTH_LIBS@ -XGETTEXT = @XGETTEXT@ -XGETTEXT_015 = @XGETTEXT_015@ -XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -XMLCATALOG = @XMLCATALOG@ -XMLTO = @XMLTO@ -XMLTO_FLAGS = @XMLTO_FLAGS@ -XML_CATALOG_FILE = @XML_CATALOG_FILE@ -XML_CFLAGS = @XML_CFLAGS@ -XML_LIBS = @XML_LIBS@ -XSLTPROC = @XSLTPROC@ -ZSTD_CFLAGS = @ZSTD_CFLAGS@ -ZSTD_LIBS = @ZSTD_LIBS@ -_GI_EXP_DATADIR = @_GI_EXP_DATADIR@ -_GI_EXP_LIBDIR = @_GI_EXP_LIBDIR@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -http_backend = @http_backend@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -installed_test_metadir = @installed_test_metadir@ -installed_testdir = @installed_testdir@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -runstatedir = @runstatedir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -systemdsystemenvgendir = @systemdsystemenvgendir@ -systemdsystemunitdir = @systemdsystemunitdir@ -systemduserenvgendir = @systemduserenvgendir@ -systemduserunitdir = @systemduserunitdir@ -sysusersdir = @sysusersdir@ -target_alias = @target_alias@ -tmpfilesdir = @tmpfilesdir@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -NULL = -SUBDIRS = reference -XSLTPROC_FLAGS = \ - --nonet \ - --stringparam man.output.quietly 1 \ - --stringparam funcsynopsis.style ansi \ - --stringparam man.th.extra1.suppress 1 \ - --stringparam man.authors.section.enabled 0 \ - --stringparam man.copyright.section.enabled 0 \ - $(NULL) - -man1 = \ - flatpak.1 \ - flatpak-remotes.1 \ - flatpak-remote-add.1 \ - flatpak-remote-delete.1 \ - flatpak-remote-modify.1 \ - flatpak-remote-ls.1 \ - flatpak-remote-info.1 \ - flatpak-install.1 \ - flatpak-config.1 \ - flatpak-update.1 \ - flatpak-uninstall.1 \ - flatpak-mask.1 \ - flatpak-pin.1 \ - flatpak-list.1 \ - flatpak-info.1 \ - flatpak-make-current.1 \ - flatpak-run.1 \ - flatpak-override.1 \ - flatpak-enter.1 \ - flatpak-ps.1 \ - flatpak-document-export.1 \ - flatpak-document-unexport.1 \ - flatpak-document-info.1 \ - flatpak-documents.1 \ - flatpak-permission-remove.1 \ - flatpak-permissions.1 \ - flatpak-permission-show.1 \ - flatpak-permission-reset.1 \ - flatpak-permission-set.1 \ - flatpak-build-init.1 \ - flatpak-build.1 \ - flatpak-build-bundle.1 \ - flatpak-build-import-bundle.1 \ - flatpak-build-finish.1 \ - flatpak-build-export.1 \ - flatpak-build-update-repo.1 \ - flatpak-build-sign.1 \ - flatpak-build-commit-from.1 \ - flatpak-repo.1 \ - flatpak-search.1 \ - flatpak-create-usb.1 \ - flatpak-repair.1 \ - flatpak-kill.1 \ - flatpak-history.1 \ - flatpak-spawn.1 \ - $(NULL) - -man5 = \ - flatpak-metadata.5 \ - flatpak-flatpakrepo.5 \ - flatpak-flatpakref.5 \ - flatpak-remote.5 \ - flatpak-installation.5 \ - $(NULL) - -man_MANS = \ - $(man1) \ - $(man5) \ - $(NULL) - -xml_files = \ - $(man1:.1=.xml) \ - $(man5:.5=.xml) \ - $(NULL) - -EXTRA_DIST = \ - $(xml_files) \ - docbook.css \ - flatpak-docs.xml.in \ - xmlto-config.xsl \ - $(NULL) - -CLEANFILES = $(NULL) $(am__append_1) -DISTCLEANFILES = \ - $(man_MANS) \ - flatpak-docs.xml \ - $(NULL) - -@DOCBOOK_DOCS_ENABLED_TRUE@doc_DATA = \ -@DOCBOOK_DOCS_ENABLED_TRUE@ flatpak-docs.html \ -@DOCBOOK_DOCS_ENABLED_TRUE@ docbook.css \ -@DOCBOOK_DOCS_ENABLED_TRUE@ $(NULL) - -all: all-recursive - -.SUFFIXES: -.SUFFIXES: .1 .5 .xml -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign doc/Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): -flatpak-docs.xml: $(top_builddir)/config.status $(srcdir)/flatpak-docs.xml.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs -install-man1: $(man_MANS) - @$(NORMAL_INSTALL) - @list1=''; \ - list2='$(man_MANS)'; \ - test -n "$(man1dir)" \ - && test -n "`echo $$list1$$list2`" \ - || exit 0; \ - echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \ - { for i in $$list1; do echo "$$i"; done; \ - if test -n "$$list2"; then \ - for i in $$list2; do echo "$$i"; done \ - | sed -n '/\.1[a-z]*$$/p'; \ - fi; \ - } | while read p; do \ - if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; echo "$$p"; \ - done | \ - sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ - -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ - sed 'N;N;s,\n, ,g' | { \ - list=; while read file base inst; do \ - if test "$$base" = "$$inst"; then list="$$list $$file"; else \ - echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ - $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \ - fi; \ - done; \ - for i in $$list; do echo "$$i"; done | $(am__base_list) | \ - while read files; do \ - test -z "$$files" || { \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \ - done; } - -uninstall-man1: - @$(NORMAL_UNINSTALL) - @list=''; test -n "$(man1dir)" || exit 0; \ - files=`{ for i in $$list; do echo "$$i"; done; \ - l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ - sed -n '/\.1[a-z]*$$/p'; \ - } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ - -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ - dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir) -install-man5: $(man_MANS) - @$(NORMAL_INSTALL) - @list1=''; \ - list2='$(man_MANS)'; \ - test -n "$(man5dir)" \ - && test -n "`echo $$list1$$list2`" \ - || exit 0; \ - echo " $(MKDIR_P) '$(DESTDIR)$(man5dir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(man5dir)" || exit 1; \ - { for i in $$list1; do echo "$$i"; done; \ - if test -n "$$list2"; then \ - for i in $$list2; do echo "$$i"; done \ - | sed -n '/\.5[a-z]*$$/p'; \ - fi; \ - } | while read p; do \ - if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; echo "$$p"; \ - done | \ - sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \ - -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ - sed 'N;N;s,\n, ,g' | { \ - list=; while read file base inst; do \ - if test "$$base" = "$$inst"; then list="$$list $$file"; else \ - echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man5dir)/$$inst'"; \ - $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man5dir)/$$inst" || exit $$?; \ - fi; \ - done; \ - for i in $$list; do echo "$$i"; done | $(am__base_list) | \ - while read files; do \ - test -z "$$files" || { \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man5dir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(man5dir)" || exit $$?; }; \ - done; } - -uninstall-man5: - @$(NORMAL_UNINSTALL) - @list=''; test -n "$(man5dir)" || exit 0; \ - files=`{ for i in $$list; do echo "$$i"; done; \ - l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ - sed -n '/\.5[a-z]*$$/p'; \ - } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \ - -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ - dir='$(DESTDIR)$(man5dir)'; $(am__uninstall_files_from_dir) -install-docDATA: $(doc_DATA) - @$(NORMAL_INSTALL) - @list='$(doc_DATA)'; test -n "$(docdir)" || list=; \ - if test -n "$$list"; then \ - echo " $(MKDIR_P) '$(DESTDIR)$(docdir)'"; \ - $(MKDIR_P) "$(DESTDIR)$(docdir)" || exit 1; \ - fi; \ - for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - echo "$$d$$p"; \ - done | $(am__base_list) | \ - while read files; do \ - echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(docdir)'"; \ - $(INSTALL_DATA) $$files "$(DESTDIR)$(docdir)" || exit $$?; \ - done - -uninstall-docDATA: - @$(NORMAL_UNINSTALL) - @list='$(doc_DATA)'; test -n "$(docdir)" || list=; \ - files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - dir='$(DESTDIR)$(docdir)'; $(am__uninstall_files_from_dir) - -# This directory's subdirectories are mostly independent; you can cd -# into them and run 'make' without going through this Makefile. -# To change the values of 'make' variables: instead of editing Makefiles, -# (1) if the variable is set in 'config.status', edit 'config.status' -# (which will cause the Makefiles to be regenerated when you run 'make'); -# (2) otherwise, pass the desired values on the 'make' command line. -$(am__recursive_targets): - @fail=; \ - if $(am__make_keepgoing); then \ - failcom='fail=yes'; \ - else \ - failcom='exit 1'; \ - fi; \ - dot_seen=no; \ - target=`echo $@ | sed s/-recursive//`; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - for subdir in $$list; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - dot_seen=yes; \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || eval $$failcom; \ - done; \ - if test "$$dot_seen" = "no"; then \ - $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ - fi; test -z "$$fail" - -ID: $(am__tagged_files) - $(am__define_uniq_tagged_files); mkid -fID $$unique -tags: tags-recursive -TAGS: tags - -tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - set x; \ - here=`pwd`; \ - if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ - include_option=--etags-include; \ - empty_fix=.; \ - else \ - include_option=--include; \ - empty_fix=; \ - fi; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test ! -f $$subdir/TAGS || \ - set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ - fi; \ - done; \ - $(am__define_uniq_tagged_files); \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: ctags-recursive - -CTAGS: ctags -ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) - $(am__define_uniq_tagged_files); \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" -cscopelist: cscopelist-recursive - -cscopelist-am: $(am__tagged_files) - list='$(am__tagged_files)'; \ - case "$(srcdir)" in \ - [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ - *) sdir=$(subdir)/$(srcdir) ;; \ - esac; \ - for i in $$list; do \ - if test -f "$$i"; then \ - echo "$(subdir)/$$i"; \ - else \ - echo "$$sdir/$$i"; \ - fi; \ - done >> $(top_builddir)/cscope.files - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) distdir-am - -distdir-am: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done - @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - $(am__make_dryrun) \ - || test -d "$(distdir)/$$subdir" \ - || $(MKDIR_P) "$(distdir)/$$subdir" \ - || exit 1; \ - dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ - $(am__relativize); \ - new_distdir=$$reldir; \ - dir1=$$subdir; dir2="$(top_distdir)"; \ - $(am__relativize); \ - new_top_distdir=$$reldir; \ - echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ - echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ - ($(am__cd) $$subdir && \ - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$new_top_distdir" \ - distdir="$$new_distdir" \ - am__remove_distdir=: \ - am__skip_length_check=: \ - am__skip_mode_fix=: \ - distdir) \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-recursive -all-am: Makefile $(MANS) $(DATA) -installdirs: installdirs-recursive -installdirs-am: - for dir in "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(docdir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done -install: install-recursive -install-exec: install-exec-recursive -install-data: install-data-recursive -uninstall: uninstall-recursive - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-recursive -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -clean-generic: - -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-recursive - -clean-am: clean-generic clean-libtool mostlyclean-am - -distclean: distclean-recursive - -rm -f Makefile -distclean-am: clean-am distclean-generic distclean-tags - -dvi: dvi-recursive - -dvi-am: - -html: html-recursive - -html-am: - -info: info-recursive - -info-am: - -install-data-am: install-docDATA install-man - -install-dvi: install-dvi-recursive - -install-dvi-am: - -install-exec-am: - -install-html: install-html-recursive - -install-html-am: - -install-info: install-info-recursive - -install-info-am: - -install-man: install-man1 install-man5 - -install-pdf: install-pdf-recursive - -install-pdf-am: - -install-ps: install-ps-recursive - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-recursive - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-recursive - -mostlyclean-am: mostlyclean-generic mostlyclean-libtool - -pdf: pdf-recursive - -pdf-am: - -ps: ps-recursive - -ps-am: - -uninstall-am: uninstall-docDATA uninstall-man - -uninstall-man: uninstall-man1 uninstall-man5 - -.MAKE: $(am__recursive_targets) install-am install-strip - -.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ - check-am clean clean-generic clean-libtool cscopelist-am ctags \ - ctags-am distclean distclean-generic distclean-libtool \ - distclean-tags distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am \ - install-docDATA install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-man1 install-man5 \ - install-pdf install-pdf-am install-ps install-ps-am \ - install-strip installcheck installcheck-am installdirs \ - installdirs-am maintainer-clean maintainer-clean-generic \ - mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ - ps ps-am tags tags-am uninstall uninstall-am uninstall-docDATA \ - uninstall-man uninstall-man1 uninstall-man5 - -.PRECIOUS: Makefile - - -.xml.1: - $(AM_V_GEN) $(XSLTPROC) $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $< - -.xml.5: - $(AM_V_GEN) $(XSLTPROC) $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $< - -@DOCBOOK_DOCS_ENABLED_TRUE@flatpak-docs.html: flatpak-docs.xml $(xml_files) xmlto-config.xsl -@DOCBOOK_DOCS_ENABLED_TRUE@ $(AM_V_GEN) $(XMLTO) $(XMLTO_FLAGS) --skip-validation xhtml-nochunks -m $(srcdir)/xmlto-config.xsl $< - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/doc/flatpak-build-finish.xml b/doc/flatpak-build-finish.xml index 093b640..fc85fad 100644 --- a/doc/flatpak-build-finish.xml +++ b/doc/flatpak-build-finish.xml @@ -134,7 +134,7 @@ Expose a well-known socket to the application. This updates the [Context] group in the metadata. SOCKET must be one of: x11, wayland, fallback-x11, pulseaudio, system-bus, session-bus, - ssh-auth, pcsc, cups, gpg-agent. + ssh-auth, pcsc, cups, gpg-agent, inherit-wayland-socket. This option can be used multiple times. The fallback-x11 option makes the X11 socket available only if @@ -151,7 +151,7 @@ Don't expose a well known socket to the application. This updates the [Context] group in the metadata. SOCKET must be one of: x11, wayland, fallback-x11, pulseaudio, system-bus, session-bus, - ssh-auth, pcsc, cups, gpg-agent. + ssh-auth, pcsc, cups, gpg-agent, inherit-wayland-socket. This option can be used multiple times. @@ -162,7 +162,7 @@ Expose a device to the application. This updates the [Context] group in the metadata. - DEVICE must be one of: dri, kvm, shm, all. + DEVICE must be one of: dri, input, usb, kvm, shm, all. This option can be used multiple times. @@ -173,7 +173,7 @@ Don't expose a device to the application. This updates the [Context] group in the metadata. - DEVICE must be one of: dri, kvm, shm, all. + DEVICE must be one of: dri, input, usb, kvm, shm, all. This option can be used multiple times. @@ -283,6 +283,108 @@ key=v1;v2; + + + + + Makes USB devices matching the query visible to the + USB portal by adding the query to the application + metadata. This does not have any effect on the + devices exposed in /dev. + TYPE must be one of: all, cls, + dev, vnd. + + + + + + Match all devices. + + + + + + + + A device class and subclass query. DATA + must be in the form of CLASS:SUBCLASS where + both CLASS and SUBCLASS + must valid 2-digit hexadecimal class id numbers. Alternatively, + SUBCLASS may be * to match + all subclasses. + + + + + + + + A device product id query. DATA + must be a valid 4-character hexadecimal product id + number, for example . It + requires a filter in the query. + + + + + + + + A device vendor id query. DATA + must be a valid 4-character hexadecimal vendor id number + greater than zero, for example . + + + + + It is possible to compose multiple device queries together + with the + sign, for example + . The dev + filter requires a vnd. + Available since 1.15.11. + + + + + + + + Hides USB devices matching the query from the USB portal by + adding the query to the application metadata. Queries hiding + devices take precedence over queries making devices visible + (see ). The syntax is exactly equal to + . This does not have any effect on the + devices exposed in /dev. Available since 1.15.11. + + + + + + + + Adds USB device queries to the application metadata from the file + FILE_NAME. The line syntax is exactly + equal to . Additionally, if it starts + with ! then the query is like for . + Lines sthat starts with # are ignored, + like a comment. Comments will not be persisted. + Available since 1.15.11. + + + + + + + + Adds USB device queries to the application metadata from + LIST. The syntax is exactly equal to + with queries separated by + ;. Additionally, if the query starts with + ! then the query is like for + . Available since 1.15.11. + + + @@ -482,7 +584,7 @@ key=v1;v2; Examples - $ flatpak build-finish /build/my-app --socket=x11 --share=ipc + $ flatpak build-finish /build/my-app --socket=x11 --share=ipc --usb=vnd:0fd9 Exporting share/applications/gnome-calculator.desktop diff --git a/doc/flatpak-build.xml b/doc/flatpak-build.xml index 1c52b98..be432c8 100644 --- a/doc/flatpak-build.xml +++ b/doc/flatpak-build.xml @@ -149,7 +149,7 @@ Expose a well-known socket to the application. This overrides to the Context section from the application metadata. SOCKET must be one of: x11, wayland, fallback-x11, pulseaudio, system-bus, session-bus, - ssh-auth, pcsc, cups, gpg-agent. + ssh-auth, pcsc, cups, gpg-agent, inherit-wayland-socket. This option can be used multiple times. @@ -161,7 +161,7 @@ Don't expose a well-known socket to the application. This overrides to the Context section from the application metadata. SOCKET must be one of: x11, wayland, fallback-x11, pulseaudio, system-bus, session-bus, - ssh-auth, pcsc, cups, gpg-agent. + ssh-auth, pcsc, cups, gpg-agent, inherit-wayland-socket. This option can be used multiple times. @@ -172,7 +172,7 @@ Expose a device to the application. This overrides to the Context section from the application metadata. - DEVICE must be one of: dri, kvm, shm, all. + DEVICE must be one of: dri, input, usb, kvm, shm, all. This option can be used multiple times. @@ -183,7 +183,7 @@ Don't expose a device to the application. This overrides to the Context section from the application metadata. - DEVICE must be one of: dri, kvm, shm, all. + DEVICE must be one of: dri, input, usb, kvm, shm, all. This option can be used multiple times. diff --git a/doc/flatpak-config.xml b/doc/flatpak-config.xml index 51d6ea1..658467f 100644 --- a/doc/flatpak-config.xml +++ b/doc/flatpak-config.xml @@ -61,7 +61,7 @@ The languages that are included when installing Locale extensions. The value is a semicolon-separated list of two-letter language codes, - or one of the special values * or all. If this key is unset, flatpak + or one of the special values * or *all*. If this key is unset, flatpak defaults to including the extra-languages key and the current locale. diff --git a/doc/flatpak-docs.xml.in b/doc/flatpak-docs.xml.in index aeafbea..581bf68 100644 --- a/doc/flatpak-docs.xml.in +++ b/doc/flatpak-docs.xml.in @@ -69,8 +69,8 @@ File Formats - - + + diff --git a/doc/flatpak-install.xml b/doc/flatpak-install.xml index 51c3d10..ab4bb1f 100644 --- a/doc/flatpak-install.xml +++ b/doc/flatpak-install.xml @@ -357,7 +357,7 @@ flatpak-update1, flatpak-list1, flatpak-build-bundle1, - flatpak-flatpakref1, + flatpakref5, flatpak-make-current1, ostree-find-remotes1 diff --git a/doc/flatpak-metadata.xml b/doc/flatpak-metadata.xml index a38863f..01373fb 100644 --- a/doc/flatpak-metadata.xml +++ b/doc/flatpak-metadata.xml @@ -152,7 +152,7 @@ List of well-known sockets to make available in the sandbox. Possible sockets: x11, wayland, fallback-x11, pulseaudio, session-bus, system-bus, - ssh-auth, pcsc, cups. + ssh-auth, pcsc, cups, gpg-agent, inherit-wayland-socket. When making a socket available, flatpak also sets well-known environment variables like DISPLAY or DBUS_SYSTEM_BUS_ADDRESS to let the application @@ -164,7 +164,9 @@ (list) - List of devices to make available in the sandbox. + List of devices to make available in the sandbox. This + just expose the devices nodes, it doesn't grant any + permission that the user doesn't already have. Possible values: @@ -175,6 +177,21 @@ Available since 0.3. + + + Input devices + (/dev/input). + Available since 1.15.6. + + + + + USB device bus + (all device nodes below + /dev/bus/usb). + Available since 1.15.11. + + Virtualization @@ -914,10 +931,10 @@ (string) A condition that must be false for the extension to be considered unused when - pruning. For example, flatpak uninstall --unused uses - this information. The only currently recognized value is active-gl-driver, - which is true if the name of the active GL driver matches the extension - point basename. Available since 0.11.8. + pruning. For example, flatpak uninstall --unused and + flatpak update use this information. The only currently + recognized value is active-gl-driver, which is true if the name of the active + GL driver matches the extension point basename. Available since 0.11.8. @@ -1083,6 +1100,36 @@ + + [USB Devices] + + USB devices can be enumerable or hidden by the USB portal as specified + by the keys in this group. The vendor and product ids are validated + by Flatpak, but aren't otherwise used or parsed. + This merely grant the permission to enumerate USB device for use by the + portal. This does give access to the devices. + Available since 1.15.11. + + + + (string list) + + List of enumerable USB devices. Each element is the same + syntax the arguments to `--usb`. + Available since 1.15.11. + + + + (string list) + + List of hidden USB devices, i.e. to remove the enumarable + devices list. Each element is the same syntax the arguments + to `--nousb`. Hidden devices take precedence over enumerable + devices. Available since 1.15.11. + + + + @@ -1105,6 +1152,10 @@ ca.desrt.dconf=talk [Environment] DCONF_USER_CONFIG_DIR=.config/dconf +[USB Devices] +enumerable-devices=0fd9:*; +hidden-devices=0fd9:0063; + [Extension org.gnome.Calculator.Locale] directory=share/runtime/locale subdirectories=true diff --git a/doc/flatpak-override.xml b/doc/flatpak-override.xml index 9ec42c3..a642109 100644 --- a/doc/flatpak-override.xml +++ b/doc/flatpak-override.xml @@ -50,6 +50,9 @@ flatpak run, or every time by using flatpak override. + + The application overrides are saved in text files residing in $XDG_DATA_HOME/flatpak/overrides in user mode. + If the application ID APP is not specified then the overrides affect all applications, @@ -134,7 +137,7 @@ Expose a well-known socket to the application. This overrides to the Context section from the application metadata. SOCKET must be one of: x11, wayland, fallback-x11, pulseaudio, system-bus, session-bus, - ssh-auth, pcsc, cups, gpg-agent. + ssh-auth, pcsc, cups, gpg-agent, inherit-wayland-socket. This option can be used multiple times. @@ -146,7 +149,7 @@ Don't expose a well-known socket to the application. This overrides to the Context section from the application metadata. SOCKET must be one of: x11, wayland, fallback-x11, pulseaudio, system-bus, session-bus, - ssh-auth, pcsc, cups, gpg-agent. + ssh-auth, pcsc, cups, gpg-agent, inherit-wayland-socket. This option can be used multiple times. @@ -157,7 +160,7 @@ Expose a device to the application. This overrides to the Context section from the application metadata. - DEVICE must be one of: dri, kvm, shm, all. + DEVICE must be one of: dri, input, usb, kvm, shm, all. This option can be used multiple times. @@ -168,7 +171,7 @@ Don't expose a device to the application. This overrides to the Context section from the application metadata. - DEVICE must be one of: dri, kvm, shm, all. + DEVICE must be one of: dri, input, usb, kvm, shm, all. This option can be used multiple times. diff --git a/doc/flatpak-remote-add.xml b/doc/flatpak-remote-add.xml index 8f4579f..23020be 100644 --- a/doc/flatpak-remote-add.xml +++ b/doc/flatpak-remote-add.xml @@ -336,7 +336,7 @@ allow org.signal.Signal.*/*/stable flatpak-remote-modify1, flatpak-remote-delete1, flatpak-remotes1, - flatpak-flatpakrepo5 + flatpakrepo5 diff --git a/doc/flatpak-remote.xml b/doc/flatpak-remote.xml index 06d8741..798f5c3 100644 --- a/doc/flatpak-remote.xml +++ b/doc/flatpak-remote.xml @@ -46,7 +46,11 @@ System-wide remotes can be statically preconfigured by dropping - flatpakref files into /etc/flatpak/remotes.d/. + flatpakrepo5 + files into /usr/share/flatpak/remotes.d/ and + /etc/flatpak/remotes.d/. Ifa file with + the same name exists in both, the file under + /etc will take precedence. diff --git a/doc/flatpak-run.xml b/doc/flatpak-run.xml index 723480f..992c5f7 100644 --- a/doc/flatpak-run.xml +++ b/doc/flatpak-run.xml @@ -92,16 +92,30 @@ LD_AUDIT XDG_CONFIG_DIRS XDG_DATA_DIRS - XDG_RUNTIME_DIR SHELL TEMP TEMPDIR TMP TMPDIR + XDG_RUNTIME_DIR + container + TZDIR PYTHONPATH PERLLIB PERL5LIB XCURSOR_PATH + GST_PLUGIN_PATH_1_0 + GST_REGISTRY + GST_REGISTRY_1_0 + GST_PLUGIN_PATH + GST_PLUGIN_SYSTEM_PATH + GST_PLUGIN_SCANNER + GST_PLUGIN_SCANNER_1_0 + GST_PLUGIN_SYSTEM_PATH_1_0 + GST_PRESET_PATH + GST_PTP_HELPER + GST_PTP_HELPER_1_0 + GST_INSTALL_PLUGINS_HELPER KRB5CCNAME XKB_CONFIG_ROOT GIO_EXTRA_MODULES @@ -317,7 +331,7 @@ Expose a well known socket to the application. This overrides to the Context section from the application metadata. SOCKET must be one of: x11, wayland, fallback-x11, pulseaudio, system-bus, session-bus, - ssh-auth, pcsc, cups, gpg-agent. + ssh-auth, pcsc, cups, gpg-agent, inherit-wayland-socket. This option can be used multiple times. @@ -329,7 +343,7 @@ Don't expose a well known socket to the application. This overrides to the Context section from the application metadata. SOCKET must be one of: x11, wayland, fallback-x11, pulseaudio, system-bus, session-bus, - ssh-auth, pcsc, cups, gpg-agent. + ssh-auth, pcsc, cups, gpg-agent, inherit-wayland-socket. This option can be used multiple times. @@ -340,7 +354,7 @@ Expose a device to the application. This overrides to the Context section from the application metadata. - DEVICE must be one of: dri, kvm, shm, all. + DEVICE must be one of: dri, usb, input, kvm, shm, all. This option can be used multiple times. @@ -351,7 +365,7 @@ Don't expose a device to the application. This overrides to the Context section from the application metadata. - DEVICE must be one of: dri, kvm, shm, all. + DEVICE must be one of: dri, usb, input, kvm, shm, all. This option can be used multiple times. @@ -461,6 +475,76 @@ key=v1;v2; + + + + + Adds a USB device query to the application metadata. This + allows device enumeration and usage by the USB portal. + TYPE must be one of: all, cls, dev, vnd. + + + + + + Match all devices. + + + + + + + + A device class and subclass query. DATA + must be in the form of CLASS:SUBCLASS where + both CLASS and SUBCLASS + must be a valid 2-digit hexadecimal class id number. Alternatively, + SUBCLASS may be * to match + all subclasses. + + + + + + + + A device product id query. DATA + must be a valid 4-digit hexadecimal product id number, + for example . It requires a + filter in the query. + + + + + + + + A device vendor id query. DATA + must be a valid 4-digit hexadecimal vendor id number + greater than zero, for example . + + + + + It is possible to compose multiple device queries together + with the + sign, for example + . The dev + filter requires a vnd. + Available since 1.15.11. + + + + + + + + Adds a blocking USB device query to the application metadata. Blocked + devices take precedence over allowed devices. The syntax is exactly + equal to . + Available since 1.15.11. + + + @@ -566,6 +650,17 @@ key=v1;v2; + + + + + Allow the application to own the well known name NAME on the a11y bus. + If NAME ends with .*, it allows the application to own all matching names. + This overrides to the Context section from the application metadata. + This option can be used multiple times. + + + @@ -693,8 +788,8 @@ key=v1;v2; If this option is specified, the remaining arguments are scanned, and all arguments that are enclosed between a pair of '@@' arguments are interpreted as file paths, exported in the document store, and passed to the command in the form of the - resulting document path. Arguments between '@@u' and '@@' are considered uris, - and any file: uris are exported. The exports are non-persistent and with read and write + resulting document path. Arguments between "@@u" and "@@" are considered URIs, + and any "file:" URIs are exported. The exports are non-persistent and with read and write permissions for the application. @@ -759,6 +854,9 @@ key=v1;v2; $ flatpak run --command=bash org.gnome.Sdk + + $ flatpak run org.gnome.Boxes --nousb=0fd9:* + diff --git a/doc/flatpak-summaries.txt b/doc/flatpak-summaries.txt new file mode 100644 index 0000000..e2d40cd --- /dev/null +++ b/doc/flatpak-summaries.txt @@ -0,0 +1,52 @@ +Since version 1.9.1 flatpak uses custom format for repo summaries, in +order to keep the sizes of summary files down, both for transfer and +on-disk storage. The core format is still an OSTree summary file, but +there are some differences both in how it is used and what it +contains. + +Flatpak still generates the old summary file for backwards compatibility. However +the summary-arches option in the [flatpak] group of the repo config can limit +which arches has refs put into the compatibility summary. + +In addition flatpak generates a set of new summaries for named subsets +of the refs in the repo, as well as a summary index that refers to +these. By default there are one subset for each architecture (each +architecture subset also includes refs of compat arches, such as i386 +for x86-64). In addition, any commit that has a `xa.subsets` key (of +type `as`) will generate extra summaries named `$subset-$arch` in the +index in addition to the normal ones named `$arch`. + +The summary index is a GVariant of type `(a{s(ayaaya{sv})}a{sv})`. +The first is an array of information for each sub-summary containing: +the subsummary name, the sha256 checksum and an array of checksums for +previous versions of the subsummary and an extensible metadata dict. +The second part is a toplevel extensible metadata dict, which is used +similarly to the toplevel dict in the summary. In fact, it contains +many of the the same global keys that previously were in the summary +dict (and which no longer are in the sub-summary dicts), such as +repo title, icon, url updates, etc. + +The index is stored in the file `summary.idx` and in addition there is +a GPG signature of this in the `summary.idx.sig` file. The +subsummaries are stored in the `summaries` subdirectory and are named +`$digest.gz". These contain gzip-compressed ostree summary files (with +the sha256 checksum being of the *uncompressed* data). + +Flatpak stores up to `[flatpak].summary-history-length` (default 16) +old versions of the sub-summaries and generates deltas between these +and the current version, named `$from-$to.delta" which are very simple +binary diffs that clients can use to efficiently update from older +versions of the summaries. + +The sub-summary files don't contain any delta information, instead +relying on the delta-index support in OSTree 2020.8. They also don't +contain any timestamps in the per-ref dict, as these are quite large +and not currently used by flatpak. The format of the flatpak metadata +caching in the summary is also different. Instead of using separate +`xa.cache` and `xa.sparse-cache` the same information is now stored +in the regular per-ref metadata dict in the summary. + +On the client side flatpak keeps a cache of the current summary index +(named `$remote.idx` and `$remote.idx.sig`), as well as one subsummary +per remote and arch (named $remote-$arch-$digest.sub`). Only the +subsummary with the most recent mtime is kept. diff --git a/doc/flatpak.xml b/doc/flatpak.xml index bceb53d..216b3ed 100644 --- a/doc/flatpak.xml +++ b/doc/flatpak.xml @@ -60,7 +60,11 @@ System-wide remotes can be statically preconfigured by dropping - flatpakrepo files into /etc/flatpak/remotes.d/. + flatpakrepo5 + files into /usr/share/flatpak/remotes.d/ and + /etc/flatpak/remotes.d/. If a file with + the same name exists in both, the file under + /etc will take precedence. @@ -559,14 +563,14 @@ - flatpak-flatpakref5 + flatpakref5 Reference to a remote for an application or runtime - flatpak-flatpakrepo5 + flatpakrepo5 Reference to a remote @@ -603,6 +607,28 @@ XDG_DATA_HOME, flatpak is consulting some of its own. + + FLATPAK_FANCY_OUTPUT + + May be set to 0 to avoid fancy + formatting when outputting to a terminal. + This feature is also disabled automatically when + standard output is not a terminal, + or when G_MESSAGES_DEBUG is set. + + + + FLATPAK_TTY_PROGRESS + + + May be set to 1 to enable reporting + machine-readable progress to the terminal. + This feature is not currently enabled by default + because it uses the OSC 9;4 sequence, + which some terminal emulators interpret as a + popup notification. + + FLATPAK_USER_DIR diff --git a/doc/flatpak-flatpakref.xml b/doc/flatpakref.xml similarity index 97% rename from doc/flatpak-flatpakref.xml rename to doc/flatpakref.xml index 8835970..4cf4716 100644 --- a/doc/flatpak-flatpakref.xml +++ b/doc/flatpakref.xml @@ -2,7 +2,7 @@ - + flatpakref @@ -24,7 +24,7 @@ - flatpak-flatpakref + flatpakref Reference to a remote for an application or runtime @@ -169,7 +169,7 @@ DeployCollectionID=org.gnome.Apps flatpak1, flatpak-install1 - flatpak-flatpakrepo5, + flatpakrepo5, diff --git a/doc/flatpak-flatpakrepo.xml b/doc/flatpakrepo.xml similarity index 92% rename from doc/flatpak-flatpakrepo.xml rename to doc/flatpakrepo.xml index 0e8a4d0..3cadbea 100644 --- a/doc/flatpak-flatpakrepo.xml +++ b/doc/flatpakrepo.xml @@ -2,7 +2,7 @@ - + flatpakrepo @@ -24,7 +24,7 @@ - flatpak-flatpakrepo + flatpakrepo Reference to a remote @@ -47,6 +47,16 @@ The filename extension commonly used for flatpakrepo files is .flatpakrepo. + + flatpakrepo files can also be placed in + /usr/share/flatpak/remotes.d/ and + /etc/flatpak/remotes.d/ + to statically preconfigure system-wide remotes. Such files must use the + .flatpakrepo extension. If a file with the + same name exists in both, the file under /etc will + take precedence. + + @@ -161,7 +171,7 @@ DeployCollectionID=org.gnome.Apps flatpak1, flatpak-remote-add1, - flatpak-flatpakref5 + flatpakref5 diff --git a/doc/meson.build b/doc/meson.build new file mode 100644 index 0000000..a4cedfb --- /dev/null +++ b/doc/meson.build @@ -0,0 +1,155 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +if build_gtk_doc + subdir('reference') +endif + +xsltproc_flags = [ + '--nonet', + '--stringparam', 'man.output.quietly', '1', + '--stringparam', 'funcsynopsis.style', 'ansi', + '--stringparam', 'man.th.extra1.suppress', '1', + '--stringparam', 'man.authors.section.enabled', '0', + '--stringparam', 'man.copyright.section.enabled', '0', +] + +man1 = [ + 'flatpak', + 'flatpak-remotes', + 'flatpak-remote-add', + 'flatpak-remote-delete', + 'flatpak-remote-modify', + 'flatpak-remote-ls', + 'flatpak-remote-info', + 'flatpak-install', + 'flatpak-config', + 'flatpak-update', + 'flatpak-uninstall', + 'flatpak-mask', + 'flatpak-pin', + 'flatpak-list', + 'flatpak-info', + 'flatpak-make-current', + 'flatpak-run', + 'flatpak-override', + 'flatpak-enter', + 'flatpak-ps', + 'flatpak-document-export', + 'flatpak-document-unexport', + 'flatpak-document-info', + 'flatpak-documents', + 'flatpak-permission-remove', + 'flatpak-permissions', + 'flatpak-permission-show', + 'flatpak-permission-reset', + 'flatpak-permission-set', + 'flatpak-build-init', + 'flatpak-build', + 'flatpak-build-bundle', + 'flatpak-build-import-bundle', + 'flatpak-build-finish', + 'flatpak-build-export', + 'flatpak-build-update-repo', + 'flatpak-build-sign', + 'flatpak-build-commit-from', + 'flatpak-repo', + 'flatpak-search', + 'flatpak-create-usb', + 'flatpak-repair', + 'flatpak-kill', + 'flatpak-history', + 'flatpak-spawn', +] + +man5 = [ + 'flatpak-metadata', + 'flatpakrepo', + 'flatpakref', + 'flatpak-remote', + 'flatpak-installation', +] + +man_compat_symlinks = [ + ['flatpak-flatpakrepo', 'flatpakrepo', '5'], + ['flatpak-flatpakref', 'flatpakref', '5'], +] + +xml_files = [] + +foreach pair : [[man1, '1'], [man5, '5']] + pages = pair[0] + section = pair[1] + + foreach man : pages + xml_files += [man + '.xml'] + + if build_man_pages + custom_target( + man + '.' + section, + input : [man + '.xml'], + output : [man + '.' + section], + command : [ + xsltproc, + '-o', '@OUTPUT@', + ] + xsltproc_flags + [ + manpages_xsl, + '@INPUT@', + ], + build_by_default : true, + install : true, + install_dir : get_option('mandir') / ('man' + section), + ) + endif + endforeach +endforeach + +foreach entry : man_compat_symlinks + name = entry[0] + target = entry[1] + section = entry[2] + + if build_man_pages + #TODO: replace with install_symlink() when we can depend on meson 0.61 + meson.add_install_script( + 'sh', '-c', 'ln -sf @0@ $MESON_INSTALL_DESTDIR_PREFIX/@1@/@2@'.format( + target + '.' + section, + get_option('mandir') / ('man' + section), + name + '.' + section + ) + ) + endif +endforeach + +if xmlto.found() + cdata = configuration_data() + cdata.set('VERSION', meson.project_version()) + cdata.set('srcdir', meson.current_source_dir()) + flatpak_docs_xml = configure_file( + input : 'flatpak-docs.xml.in', + output : 'flatpak-docs.xml', + configuration : cdata, + ) + custom_target( + 'flatpak-docs.html', + input : [ + flatpak_docs_xml, + 'xmlto-config.xsl', + ], + output : ['flatpak-docs.html'], + depend_files : xml_files, + command : [ + xmlto, + '-o', meson.current_build_dir(), + ] + get_option('xmlto_flags') + [ + '--skip-validation', + 'xhtml-nochunks', + '-m', '@INPUT1@', + '@INPUT0@', + ], + build_by_default : true, + install : true, + install_dir : docdir, + ) + install_data('docbook.css', install_dir : docdir) +endif diff --git a/doc/reference/.gitignore b/doc/reference/.gitignore new file mode 100644 index 0000000..6e37fff --- /dev/null +++ b/doc/reference/.gitignore @@ -0,0 +1,19 @@ +html/ +xml/ +*.stamp +*.bak +/dbus-*.xml +/flatpak.actions +flatpak-decl-list.txt +flatpak-decl.txt +flatpak-overrides.txt +flatpak-scan.c +flatpak-undeclared.txt +flatpak-undocumented.txt +flatpak-unused.txt +flatpak.args +flatpak.hierarchy +flatpak.interfaces +flatpak.prerequisites +flatpak.signals +flatpak.types diff --git a/doc/reference/Makefile.am b/doc/reference/Makefile.am deleted file mode 100644 index 6aaa345..0000000 --- a/doc/reference/Makefile.am +++ /dev/null @@ -1,97 +0,0 @@ -DOC_MODULE = flatpak -DOC_MAIN_SGML_FILE = libflatpak-docs.xml -DOC_SOURCE_DIR = $(top_srcdir)/common $(top_builddir)/common - -SCAN_OPTIONS = --rebuild-types \ - --ignore-decorators='FLATPAK_EXTERN' -SCANGOBJ_OPTIONS = -MKDB_OPTIONS = --output-format=xml --name-space=flatpak -FIXXREF_OPTIONS = - -HFILE_GLOB = $(top_srcdir)/common/*.h $(top_builddir)/common/*.h -CFILE_GLOB = $(top_srcdir)/common/*.c - -IGNORE_HFILES = \ - valgrind-private.h \ - flatpak-bwrap-private.h \ - flatpak-chain-input-stream-private.h \ - flatpak-common-types-private.h \ - flatpak-context-private.h \ - flatpak-dbus-generated.h \ - flatpak-dir-private.h \ - flatpak-document-dbus-generated.h \ - flatpak-enum-types.h \ - flatpak-exports-private.h \ - flatpak-installed-ref-private.h \ - flatpak-json-oci-private.h \ - flatpak-json-private.h \ - flatpak-oci-registry-private.h \ - flatpak-progress-private.h \ - flatpak-remote-private.h \ - flatpak-remote-ref-private.h \ - flatpak-run-private.h \ - flatpak-systemd-dbus-generated.h \ - flatpak-installation-private.h \ - flatpak-transaction-private.h \ - flatpak-utils-private.h \ - flatpak-utils-base-private.h \ - flatpak-utils-http-private.h \ - flatpak-instance-private.h \ - flatpak-auth-private.h \ - flatpak-parental-controls-private.h \ - flatpak-appdata-private.h \ - flatpak-zstd-decompressor-private.h \ - $(NULL) - -EXTRA_HFILES = - -HTML_IMAGES = - -dbus_stamp_files = \ - dbus-org.freedesktop.Flatpak.Authenticator.stamp \ - dbus-org.freedesktop.Flatpak.stamp \ - dbus-org.freedesktop.impl.portal.PermissionStore.stamp \ - dbus-org.freedesktop.portal.Documents.stamp \ - dbus-org.freedesktop.portal.Flatpak.stamp \ - $(NULL) - -# Generated from the above stamps -xml_files = \ - dbus-org.freedesktop.Flatpak.AuthenticatorRequest.xml \ - dbus-org.freedesktop.Flatpak.Authenticator.xml \ - dbus-org.freedesktop.Flatpak.Development.xml \ - dbus-org.freedesktop.Flatpak.SessionHelper.xml \ - dbus-org.freedesktop.Flatpak.SystemHelper.xml \ - dbus-org.freedesktop.impl.portal.PermissionStore.xml \ - dbus-org.freedesktop.portal.Documents.xml \ - dbus-org.freedesktop.portal.Flatpak.UpdateMonitor.xml \ - dbus-org.freedesktop.portal.Flatpak.xml \ - $(NULL) - -content_files = -expand_content_files = - -AM_CPPFLAGS = -I$(top_srcdir)/common -I$(top_builddir)/common $(BASE_CFLAGS) -GTKDOC_LIBS = $(top_builddir)/libflatpak.la $(BASE_LIBS) - -include $(top_srcdir)/gtk-doc.make - -CLEANFILES += $(xml_files) - -EXTRA_DIST += version.xml.in - -if ENABLE_GTK_DOC_CHECK -TESTS_ENVIRONMENT = \ - DOC_MODULE=$(DOC_MODULE) DOC_MAIN_SGML_FILE=$(DOC_MAIN_SGML_FILE) \ - SRCDIR=$(abs_srcdir) BUILDDIR=$(abs_builddir) -TESTS = $(GTKDOC_CHECK) -endif - -sgml.stamp: $(dbus_stamp_files) -# gdbus-codegen hardcodes DocBook version - $(AM_V_GEN)$(SED) -i \ - -e 's|http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd|http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd|' \ - -e 's|-//OASIS//DTD DocBook XML V4.1.2//EN|-//OASIS//DTD DocBook XML V4.5//EN|' $(xml_files) - -dbus-%.stamp: $(top_srcdir)/data/%.xml - $(AM_V_GEN)$(GDBUS_CODEGEN) --generate-docbook=dbus $< diff --git a/doc/reference/Makefile.in b/doc/reference/Makefile.in deleted file mode 100644 index fc23fb1..0000000 --- a/doc/reference/Makefile.in +++ /dev/null @@ -1,1335 +0,0 @@ -# Makefile.in generated by automake 1.16.5 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994-2021 Free Software Foundation, Inc. - -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -# -*- mode: makefile -*- -# -# gtk-doc.make - make rules for gtk-doc -# Copyright (C) 2003 James Henstridge -# 2004-2007 Damon Chaplin -# 2007-2017 Stefan Sauer -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -#################################### -# Everything below here is generic # -#################################### -VPATH = @srcdir@ -am__is_gnu_make = { \ - if test -z '$(MAKELEVEL)'; then \ - false; \ - elif test -n '$(MAKE_HOST)'; then \ - true; \ - elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ - true; \ - else \ - false; \ - fi; \ -} -am__make_running_with_option = \ - case $${target_option-} in \ - ?) ;; \ - *) echo "am__make_running_with_option: internal error: invalid" \ - "target option '$${target_option-}' specified" >&2; \ - exit 1;; \ - esac; \ - has_opt=no; \ - sane_makeflags=$$MAKEFLAGS; \ - if $(am__is_gnu_make); then \ - sane_makeflags=$$MFLAGS; \ - else \ - case $$MAKEFLAGS in \ - *\\[\ \ ]*) \ - bs=\\; \ - sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ - | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ - esac; \ - fi; \ - skip_next=no; \ - strip_trailopt () \ - { \ - flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ - }; \ - for flg in $$sane_makeflags; do \ - test $$skip_next = yes && { skip_next=no; continue; }; \ - case $$flg in \ - *=*|--*) continue;; \ - -*I) strip_trailopt 'I'; skip_next=yes;; \ - -*I?*) strip_trailopt 'I';; \ - -*O) strip_trailopt 'O'; skip_next=yes;; \ - -*O?*) strip_trailopt 'O';; \ - -*l) strip_trailopt 'l'; skip_next=yes;; \ - -*l?*) strip_trailopt 'l';; \ - -[dEDm]) skip_next=yes;; \ - -[JT]) skip_next=yes;; \ - esac; \ - case $$flg in \ - *$$target_option*) has_opt=yes; break;; \ - esac; \ - done; \ - test $$has_opt = yes -am__make_dryrun = (target_option=n; $(am__make_running_with_option)) -am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -subdir = doc/reference -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/subprojects/libglnx/libglnx.m4 \ - $(top_srcdir)/m4/attributes.m4 $(top_srcdir)/m4/gettext.m4 \ - $(top_srcdir)/m4/glibtests.m4 $(top_srcdir)/m4/gtk-doc.m4 \ - $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \ - $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ - $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) -mkinstalldirs = $(install_sh) -d -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = version.xml -CONFIG_CLEAN_VPATH_FILES = -AM_V_P = $(am__v_P_@AM_V@) -am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) -am__v_P_0 = false -am__v_P_1 = : -AM_V_GEN = $(am__v_GEN_@AM_V@) -am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) -am__v_GEN_0 = @echo " GEN " $@; -am__v_GEN_1 = -AM_V_at = $(am__v_at_@AM_V@) -am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) -am__v_at_0 = @ -am__v_at_1 = -SOURCES = -DIST_SOURCES = -am__can_run_installinfo = \ - case $$AM_UPDATE_INFO_DIR in \ - n|no|NO) false;; \ - *) (install-info --version) >/dev/null 2>&1;; \ - esac -am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) -am__tty_colors_dummy = \ - mgn= red= grn= lgn= blu= brg= std=; \ - am__color_tests=no -am__tty_colors = { \ - $(am__tty_colors_dummy); \ - if test "X$(AM_COLOR_TESTS)" = Xno; then \ - am__color_tests=no; \ - elif test "X$(AM_COLOR_TESTS)" = Xalways; then \ - am__color_tests=yes; \ - elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \ - am__color_tests=yes; \ - fi; \ - if test $$am__color_tests = yes; then \ - red=''; \ - grn=''; \ - lgn=''; \ - blu=''; \ - mgn=''; \ - brg=''; \ - std=''; \ - fi; \ -} -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; -am__install_max = 40 -am__nobase_strip_setup = \ - srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` -am__nobase_strip = \ - for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" -am__nobase_list = $(am__nobase_strip_setup); \ - for p in $$list; do echo "$$p $$p"; done | \ - sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ - $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ - if (++n[$$2] == $(am__install_max)) \ - { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ - END { for (dir in files) print dir, files[dir] }' -am__base_list = \ - sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ - sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' -am__uninstall_files_from_dir = { \ - test -z "$$files" \ - || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ - || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ - $(am__cd) "$$dir" && rm -f $$files; }; \ - } -am__recheck_rx = ^[ ]*:recheck:[ ]* -am__global_test_result_rx = ^[ ]*:global-test-result:[ ]* -am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]* -# A command that, given a newline-separated list of test names on the -# standard input, print the name of the tests that are to be re-run -# upon "make recheck". -am__list_recheck_tests = $(AWK) '{ \ - recheck = 1; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - { \ - if ((getline line2 < ($$0 ".log")) < 0) \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \ - { \ - recheck = 0; \ - break; \ - } \ - else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \ - { \ - break; \ - } \ - }; \ - if (recheck) \ - print $$0; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# A command that, given a newline-separated list of test names on the -# standard input, create the global log from their .trs and .log files. -am__create_global_log = $(AWK) ' \ -function fatal(msg) \ -{ \ - print "fatal: making $@: " msg | "cat >&2"; \ - exit 1; \ -} \ -function rst_section(header) \ -{ \ - print header; \ - len = length(header); \ - for (i = 1; i <= len; i = i + 1) \ - printf "="; \ - printf "\n\n"; \ -} \ -{ \ - copy_in_global_log = 1; \ - global_test_result = "RUN"; \ - while ((rc = (getline line < ($$0 ".trs"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".trs"); \ - if (line ~ /$(am__global_test_result_rx)/) \ - { \ - sub("$(am__global_test_result_rx)", "", line); \ - sub("[ ]*$$", "", line); \ - global_test_result = line; \ - } \ - else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \ - copy_in_global_log = 0; \ - }; \ - if (copy_in_global_log) \ - { \ - rst_section(global_test_result ": " $$0); \ - while ((rc = (getline line < ($$0 ".log"))) != 0) \ - { \ - if (rc < 0) \ - fatal("failed to read from " $$0 ".log"); \ - print line; \ - }; \ - printf "\n"; \ - }; \ - close ($$0 ".trs"); \ - close ($$0 ".log"); \ -}' -# Restructured Text title. -am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; } -# Solaris 10 'make', and several other traditional 'make' implementations, -# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it -# by disabling -e (using the XSI extension "set +e") if it's set. -am__sh_e_setup = case $$- in *e*) set +e;; esac -# Default flags passed to test drivers. -am__common_driver_flags = \ - --color-tests "$$am__color_tests" \ - --enable-hard-errors "$$am__enable_hard_errors" \ - --expect-failure "$$am__expect_failure" -# To be inserted before the command running the test. Creates the -# directory for the log if needed. Stores in $dir the directory -# containing $f, in $tst the test, in $log the log. Executes the -# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and -# passes TESTS_ENVIRONMENT. Set up options for the wrapper that -# will run the test scripts (or their associated LOG_COMPILER, if -# thy have one). -am__check_pre = \ -$(am__sh_e_setup); \ -$(am__vpath_adj_setup) $(am__vpath_adj) \ -$(am__tty_colors); \ -srcdir=$(srcdir); export srcdir; \ -case "$@" in \ - */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \ - *) am__odir=.;; \ -esac; \ -test "x$$am__odir" = x"." || test -d "$$am__odir" \ - || $(MKDIR_P) "$$am__odir" || exit $$?; \ -if test -f "./$$f"; then dir=./; \ -elif test -f "$$f"; then dir=; \ -else dir="$(srcdir)/"; fi; \ -tst=$$dir$$f; log='$@'; \ -if test -n '$(DISABLE_HARD_ERRORS)'; then \ - am__enable_hard_errors=no; \ -else \ - am__enable_hard_errors=yes; \ -fi; \ -case " $(XFAIL_TESTS) " in \ - *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \ - am__expect_failure=yes;; \ - *) \ - am__expect_failure=no;; \ -esac; \ -$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) -# A shell command to get the names of the tests scripts with any registered -# extension removed (i.e., equivalently, the names of the test logs, with -# the '.log' extension removed). The result is saved in the shell variable -# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly, -# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)", -# since that might cause problem with VPATH rewrites for suffix-less tests. -# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'. -am__set_TESTS_bases = \ - bases='$(TEST_LOGS)'; \ - bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \ - bases=`echo $$bases` -AM_TESTSUITE_SUMMARY_HEADER = ' for $(PACKAGE_STRING)' -RECHECK_LOGS = $(TEST_LOGS) -AM_RECURSIVE_TARGETS = check recheck -TEST_SUITE_LOG = test-suite.log -TEST_EXTENSIONS = @EXEEXT@ .test -am__test_logs1 = $(TESTS:=.log) -am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log) -TEST_LOGS = $(am__test_logs2:.test.log=.log) -TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver -TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \ - $(TEST_LOG_FLAGS) -am__set_b = \ - case '$@' in \ - */*) \ - case '$*' in \ - */*) b='$*';; \ - *) b=`echo '$@' | sed 's/\.log$$//'`; \ - esac;; \ - *) \ - b='$*';; \ - esac -am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/version.xml.in \ - $(top_srcdir)/gtk-doc.make $(top_srcdir)/test-driver -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ -APPSTREAM_CFLAGS = @APPSTREAM_CFLAGS@ -APPSTREAM_LIBS = @APPSTREAM_LIBS@ -AR = @AR@ -ARCHIVE_CFLAGS = @ARCHIVE_CFLAGS@ -ARCHIVE_LIBS = @ARCHIVE_LIBS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BASE_CFLAGS = @BASE_CFLAGS@ -BASE_LIBS = @BASE_LIBS@ -BFLAGS = @BFLAGS@ -BISON = @BISON@ -BWRAP = @BWRAP@ -CAP_LIB = @CAP_LIB@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CSCOPE = @CSCOPE@ -CTAGS = @CTAGS@ -CURL_CFLAGS = @CURL_CFLAGS@ -CURL_LIBS = @CURL_LIBS@ -CYGPATH_W = @CYGPATH_W@ -DBUS_CONFIG_DIR = @DBUS_CONFIG_DIR@ -DBUS_PROXY = @DBUS_PROXY@ -DBUS_SERVICE_DIR = @DBUS_SERVICE_DIR@ -DCONF_CFLAGS = @DCONF_CFLAGS@ -DCONF_LIBS = @DCONF_LIBS@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DEP_GPGME_CFLAGS = @DEP_GPGME_CFLAGS@ -DEP_GPGME_LIBS = @DEP_GPGME_LIBS@ -DEP_GPGME_PTHREAD_CFLAGS = @DEP_GPGME_PTHREAD_CFLAGS@ -DEP_GPGME_PTHREAD_LIBS = @DEP_GPGME_PTHREAD_LIBS@ -DLLTOOL = @DLLTOOL@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -ETAGS = @ETAGS@ -EXEEXT = @EXEEXT@ -FGREP = @FGREP@ -FILECMD = @FILECMD@ -FLATPAK_INTERFACE_AGE = @FLATPAK_INTERFACE_AGE@ -FLATPAK_MAJOR_VERSION = @FLATPAK_MAJOR_VERSION@ -FLATPAK_MICRO_VERSION = @FLATPAK_MICRO_VERSION@ -FLATPAK_MINOR_VERSION = @FLATPAK_MINOR_VERSION@ -FLATPAK_VERSION = @FLATPAK_VERSION@ -FUSE3_CFLAGS = @FUSE3_CFLAGS@ -FUSE3_LIBS = @FUSE3_LIBS@ -FUSE_CFLAGS = @FUSE_CFLAGS@ -FUSE_LIBS = @FUSE_LIBS@ -GDBUS_CODEGEN = @GDBUS_CODEGEN@ -GDK_PIXBUF_CFLAGS = @GDK_PIXBUF_CFLAGS@ -GDK_PIXBUF_LIBS = @GDK_PIXBUF_LIBS@ -GENHTML = @GENHTML@ -GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ -GLIB260_CFLAGS = @GLIB260_CFLAGS@ -GLIB260_LIBS = @GLIB260_LIBS@ -GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ -GLIB_MKENUMS = @GLIB_MKENUMS@ -GMSGFMT = @GMSGFMT@ -GMSGFMT_015 = @GMSGFMT_015@ -GPGME_CONFIG = @GPGME_CONFIG@ -GPGME_PTHREAD_CFLAGS = @GPGME_PTHREAD_CFLAGS@ -GPGME_PTHREAD_LIBS = @GPGME_PTHREAD_LIBS@ -GPGRT_CONFIG = @GPGRT_CONFIG@ -GREP = @GREP@ -GTKDOC_CHECK = @GTKDOC_CHECK@ -GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ -GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ -GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ -GTKDOC_MKPDF = @GTKDOC_MKPDF@ -GTKDOC_REBASE = @GTKDOC_REBASE@ -HIDDEN_VISIBILITY_CFLAGS = @HIDDEN_VISIBILITY_CFLAGS@ -HTML_DIR = @HTML_DIR@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -INTLLIBS = @INTLLIBS@ -INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ -INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ -INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ -INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ -INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ -INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ -INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ -INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ -INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ -JSON_CFLAGS = @JSON_CFLAGS@ -JSON_LIBS = @JSON_LIBS@ -LCOV = @LCOV@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LIBICONV = @LIBICONV@ -LIBINTL = @LIBINTL@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBSECCOMP_CFLAGS = @LIBSECCOMP_CFLAGS@ -LIBSECCOMP_LIBS = @LIBSECCOMP_LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBICONV = @LTLIBICONV@ -LTLIBINTL = @LTLIBINTL@ -LTLIBOBJS = @LTLIBOBJS@ -LT_CURRENT_MINUS_AGE = @LT_CURRENT_MINUS_AGE@ -LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ -LT_VERSION_INFO = @LT_VERSION_INFO@ -MAINT = @MAINT@ -MAKEINFO = @MAKEINFO@ -MALCONTENT_CFLAGS = @MALCONTENT_CFLAGS@ -MALCONTENT_LIBS = @MALCONTENT_LIBS@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MKDIR_P = @MKDIR_P@ -MSGFMT = @MSGFMT@ -MSGFMT_015 = @MSGFMT_015@ -MSGMERGE = @MSGMERGE@ -NM = @NM@ -NMEDIT = @NMEDIT@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OSTREE_CFLAGS = @OSTREE_CFLAGS@ -OSTREE_LIBS = @OSTREE_LIBS@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PKG_CONFIG = @PKG_CONFIG@ -PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ -PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ -POLKIT_CFLAGS = @POLKIT_CFLAGS@ -POLKIT_LIBS = @POLKIT_LIBS@ -POSUB = @POSUB@ -PRIVILEGED_GROUP = @PRIVILEGED_GROUP@ -PROFILE_DIR = @PROFILE_DIR@ -RANLIB = @RANLIB@ -RUN_MEDIA_DIR = @RUN_MEDIA_DIR@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SOUP_CFLAGS = @SOUP_CFLAGS@ -SOUP_LIBS = @SOUP_LIBS@ -STRIP = @STRIP@ -SUDO_BIN = @SUDO_BIN@ -SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ -SYSTEMD_LIBS = @SYSTEMD_LIBS@ -SYSTEM_FONTS_DIR = @SYSTEM_FONTS_DIR@ -SYSTEM_FONT_CACHE_DIRS = @SYSTEM_FONT_CACHE_DIRS@ -SYSTEM_HELPER_USER = @SYSTEM_HELPER_USER@ -SYSTEM_INSTALL_DIR = @SYSTEM_INSTALL_DIR@ -USE_NLS = @USE_NLS@ -VALGRIND = @VALGRIND@ -VALGRIND_ENABLED = @VALGRIND_ENABLED@ -VALGRIND_HAVE_TOOL_memcheck = @VALGRIND_HAVE_TOOL_memcheck@ -VERSION = @VERSION@ -WARN_CFLAGS = @WARN_CFLAGS@ -XAUTH_CFLAGS = @XAUTH_CFLAGS@ -XAUTH_LIBS = @XAUTH_LIBS@ -XGETTEXT = @XGETTEXT@ -XGETTEXT_015 = @XGETTEXT_015@ -XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -XMLCATALOG = @XMLCATALOG@ -XMLTO = @XMLTO@ -XMLTO_FLAGS = @XMLTO_FLAGS@ -XML_CATALOG_FILE = @XML_CATALOG_FILE@ -XML_CFLAGS = @XML_CFLAGS@ -XML_LIBS = @XML_LIBS@ -XSLTPROC = @XSLTPROC@ -ZSTD_CFLAGS = @ZSTD_CFLAGS@ -ZSTD_LIBS = @ZSTD_LIBS@ -_GI_EXP_DATADIR = @_GI_EXP_DATADIR@ -_GI_EXP_LIBDIR = @_GI_EXP_LIBDIR@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -http_backend = @http_backend@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -installed_test_metadir = @installed_test_metadir@ -installed_testdir = @installed_testdir@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -runstatedir = @runstatedir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -systemdsystemenvgendir = @systemdsystemenvgendir@ -systemdsystemunitdir = @systemdsystemunitdir@ -systemduserenvgendir = @systemduserenvgendir@ -systemduserunitdir = @systemduserunitdir@ -sysusersdir = @sysusersdir@ -target_alias = @target_alias@ -tmpfilesdir = @tmpfilesdir@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -DOC_MODULE = flatpak -DOC_MAIN_SGML_FILE = libflatpak-docs.xml -DOC_SOURCE_DIR = $(top_srcdir)/common $(top_builddir)/common -SCAN_OPTIONS = --rebuild-types \ - --ignore-decorators='FLATPAK_EXTERN' - -SCANGOBJ_OPTIONS = -MKDB_OPTIONS = --output-format=xml --name-space=flatpak -FIXXREF_OPTIONS = -HFILE_GLOB = $(top_srcdir)/common/*.h $(top_builddir)/common/*.h -CFILE_GLOB = $(top_srcdir)/common/*.c -IGNORE_HFILES = \ - valgrind-private.h \ - flatpak-bwrap-private.h \ - flatpak-chain-input-stream-private.h \ - flatpak-common-types-private.h \ - flatpak-context-private.h \ - flatpak-dbus-generated.h \ - flatpak-dir-private.h \ - flatpak-document-dbus-generated.h \ - flatpak-enum-types.h \ - flatpak-exports-private.h \ - flatpak-installed-ref-private.h \ - flatpak-json-oci-private.h \ - flatpak-json-private.h \ - flatpak-oci-registry-private.h \ - flatpak-progress-private.h \ - flatpak-remote-private.h \ - flatpak-remote-ref-private.h \ - flatpak-run-private.h \ - flatpak-systemd-dbus-generated.h \ - flatpak-installation-private.h \ - flatpak-transaction-private.h \ - flatpak-utils-private.h \ - flatpak-utils-base-private.h \ - flatpak-utils-http-private.h \ - flatpak-instance-private.h \ - flatpak-auth-private.h \ - flatpak-parental-controls-private.h \ - flatpak-appdata-private.h \ - flatpak-zstd-decompressor-private.h \ - $(NULL) - -EXTRA_HFILES = -HTML_IMAGES = -dbus_stamp_files = \ - dbus-org.freedesktop.Flatpak.Authenticator.stamp \ - dbus-org.freedesktop.Flatpak.stamp \ - dbus-org.freedesktop.impl.portal.PermissionStore.stamp \ - dbus-org.freedesktop.portal.Documents.stamp \ - dbus-org.freedesktop.portal.Flatpak.stamp \ - $(NULL) - - -# Generated from the above stamps -xml_files = \ - dbus-org.freedesktop.Flatpak.AuthenticatorRequest.xml \ - dbus-org.freedesktop.Flatpak.Authenticator.xml \ - dbus-org.freedesktop.Flatpak.Development.xml \ - dbus-org.freedesktop.Flatpak.SessionHelper.xml \ - dbus-org.freedesktop.Flatpak.SystemHelper.xml \ - dbus-org.freedesktop.impl.portal.PermissionStore.xml \ - dbus-org.freedesktop.portal.Documents.xml \ - dbus-org.freedesktop.portal.Flatpak.UpdateMonitor.xml \ - dbus-org.freedesktop.portal.Flatpak.xml \ - $(NULL) - -content_files = -expand_content_files = -AM_CPPFLAGS = -I$(top_srcdir)/common -I$(top_builddir)/common $(BASE_CFLAGS) -GTKDOC_LIBS = $(top_builddir)/libflatpak.la $(BASE_LIBS) -@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_CC = $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_LD = $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_RUN = -@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_RUN = $(LIBTOOL) --mode=execute - -# We set GPATH here; this gives us semantics for GNU make -# which are more like other make's VPATH, when it comes to -# whether a source that is a target of one rule is then -# searched for in VPATH/GPATH. -# -GPATH = $(srcdir) -TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE) -SETUP_FILES = \ - $(content_files) \ - $(expand_content_files) \ - $(DOC_MAIN_SGML_FILE) \ - $(DOC_MODULE)-sections.txt \ - $(DOC_MODULE)-overrides.txt - -EXTRA_DIST = $(HTML_IMAGES) $(SETUP_FILES) version.xml.in -DOC_STAMPS = setup-build.stamp scan-build.stamp sgml-build.stamp \ - html-build.stamp pdf-build.stamp \ - sgml.stamp html.stamp pdf.stamp - -SCANOBJ_FILES = \ - $(DOC_MODULE).actions \ - $(DOC_MODULE).args \ - $(DOC_MODULE).hierarchy \ - $(DOC_MODULE).interfaces \ - $(DOC_MODULE).prerequisites \ - $(DOC_MODULE).signals - -REPORT_FILES = \ - $(DOC_MODULE)-undocumented.txt \ - $(DOC_MODULE)-undeclared.txt \ - $(DOC_MODULE)-unused.txt - -CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) \ - gtkdoc-check.test $(xml_files) -@GTK_DOC_BUILD_HTML_FALSE@HTML_BUILD_STAMP = -@GTK_DOC_BUILD_HTML_TRUE@HTML_BUILD_STAMP = html-build.stamp -@GTK_DOC_BUILD_PDF_FALSE@PDF_BUILD_STAMP = -@GTK_DOC_BUILD_PDF_TRUE@PDF_BUILD_STAMP = pdf-build.stamp - -#### setup #### -GTK_DOC_V_SETUP = $(GTK_DOC_V_SETUP_@AM_V@) -GTK_DOC_V_SETUP_ = $(GTK_DOC_V_SETUP_@AM_DEFAULT_V@) -GTK_DOC_V_SETUP_0 = @echo " DOC Preparing build"; - -#### scan #### -GTK_DOC_V_SCAN = $(GTK_DOC_V_SCAN_@AM_V@) -GTK_DOC_V_SCAN_ = $(GTK_DOC_V_SCAN_@AM_DEFAULT_V@) -GTK_DOC_V_SCAN_0 = @echo " DOC Scanning header files"; -GTK_DOC_V_INTROSPECT = $(GTK_DOC_V_INTROSPECT_@AM_V@) -GTK_DOC_V_INTROSPECT_ = $(GTK_DOC_V_INTROSPECT_@AM_DEFAULT_V@) -GTK_DOC_V_INTROSPECT_0 = @echo " DOC Introspecting gobjects"; - -#### xml #### -GTK_DOC_V_XML = $(GTK_DOC_V_XML_@AM_V@) -GTK_DOC_V_XML_ = $(GTK_DOC_V_XML_@AM_DEFAULT_V@) -GTK_DOC_V_XML_0 = @echo " DOC Building XML"; - -#### html #### -GTK_DOC_V_HTML = $(GTK_DOC_V_HTML_@AM_V@) -GTK_DOC_V_HTML_ = $(GTK_DOC_V_HTML_@AM_DEFAULT_V@) -GTK_DOC_V_HTML_0 = @echo " DOC Building HTML"; -GTK_DOC_V_XREF = $(GTK_DOC_V_XREF_@AM_V@) -GTK_DOC_V_XREF_ = $(GTK_DOC_V_XREF_@AM_DEFAULT_V@) -GTK_DOC_V_XREF_0 = @echo " DOC Fixing cross-references"; - -#### pdf #### -GTK_DOC_V_PDF = $(GTK_DOC_V_PDF_@AM_V@) -GTK_DOC_V_PDF_ = $(GTK_DOC_V_PDF_@AM_DEFAULT_V@) -GTK_DOC_V_PDF_0 = @echo " DOC Building PDF"; -@ENABLE_GTK_DOC_CHECK_TRUE@TESTS_ENVIRONMENT = \ -@ENABLE_GTK_DOC_CHECK_TRUE@ DOC_MODULE=$(DOC_MODULE) DOC_MAIN_SGML_FILE=$(DOC_MAIN_SGML_FILE) \ -@ENABLE_GTK_DOC_CHECK_TRUE@ SRCDIR=$(abs_srcdir) BUILDDIR=$(abs_builddir) - -@ENABLE_GTK_DOC_CHECK_TRUE@TESTS = $(GTKDOC_CHECK) -all: all-am - -.SUFFIXES: -.SUFFIXES: .log .test .test$(EXEEXT) .trs -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/gtk-doc.make $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/reference/Makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --foreign doc/reference/Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ - esac; -$(top_srcdir)/gtk-doc.make $(am__empty): - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): -version.xml: $(top_builddir)/config.status $(srcdir)/version.xml.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs -tags TAGS: - -ctags CTAGS: - -cscope cscopelist: - - -# Recover from deleted '.trs' file; this should ensure that -# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create -# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells -# to avoid problems with "make -n". -.log.trs: - rm -f $< $@ - $(MAKE) $(AM_MAKEFLAGS) $< - -# Leading 'am--fnord' is there to ensure the list of targets does not -# expand to empty, as could happen e.g. with make check TESTS=''. -am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck) -am--force-recheck: - @: - -$(TEST_SUITE_LOG): $(TEST_LOGS) - @$(am__set_TESTS_bases); \ - am__f_ok () { test -f "$$1" && test -r "$$1"; }; \ - redo_bases=`for i in $$bases; do \ - am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \ - done`; \ - if test -n "$$redo_bases"; then \ - redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \ - redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \ - if $(am__make_dryrun); then :; else \ - rm -f $$redo_logs && rm -f $$redo_results || exit 1; \ - fi; \ - fi; \ - if test -n "$$am__remaking_logs"; then \ - echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \ - "recursion detected" >&2; \ - elif test -n "$$redo_logs"; then \ - am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \ - fi; \ - if $(am__make_dryrun); then :; else \ - st=0; \ - errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \ - for i in $$redo_bases; do \ - test -f $$i.trs && test -r $$i.trs \ - || { echo "$$errmsg $$i.trs" >&2; st=1; }; \ - test -f $$i.log && test -r $$i.log \ - || { echo "$$errmsg $$i.log" >&2; st=1; }; \ - done; \ - test $$st -eq 0 || exit 1; \ - fi - @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \ - ws='[ ]'; \ - results=`for b in $$bases; do echo $$b.trs; done`; \ - test -n "$$results" || results=/dev/null; \ - all=` grep "^$$ws*:test-result:" $$results | wc -l`; \ - pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \ - fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \ - skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \ - xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \ - xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \ - error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \ - if test `expr $$fail + $$xpass + $$error` -eq 0; then \ - success=true; \ - else \ - success=false; \ - fi; \ - br='==================='; br=$$br$$br$$br$$br; \ - result_count () \ - { \ - if test x"$$1" = x"--maybe-color"; then \ - maybe_colorize=yes; \ - elif test x"$$1" = x"--no-color"; then \ - maybe_colorize=no; \ - else \ - echo "$@: invalid 'result_count' usage" >&2; exit 4; \ - fi; \ - shift; \ - desc=$$1 count=$$2; \ - if test $$maybe_colorize = yes && test $$count -gt 0; then \ - color_start=$$3 color_end=$$std; \ - else \ - color_start= color_end=; \ - fi; \ - echo "$${color_start}# $$desc $$count$${color_end}"; \ - }; \ - create_testsuite_report () \ - { \ - result_count $$1 "TOTAL:" $$all "$$brg"; \ - result_count $$1 "PASS: " $$pass "$$grn"; \ - result_count $$1 "SKIP: " $$skip "$$blu"; \ - result_count $$1 "XFAIL:" $$xfail "$$lgn"; \ - result_count $$1 "FAIL: " $$fail "$$red"; \ - result_count $$1 "XPASS:" $$xpass "$$red"; \ - result_count $$1 "ERROR:" $$error "$$mgn"; \ - }; \ - { \ - echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \ - $(am__rst_title); \ - create_testsuite_report --no-color; \ - echo; \ - echo ".. contents:: :depth: 2"; \ - echo; \ - for b in $$bases; do echo $$b; done \ - | $(am__create_global_log); \ - } >$(TEST_SUITE_LOG).tmp || exit 1; \ - mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \ - if $$success; then \ - col="$$grn"; \ - else \ - col="$$red"; \ - test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \ - fi; \ - echo "$${col}$$br$${std}"; \ - echo "$${col}Testsuite summary"$(AM_TESTSUITE_SUMMARY_HEADER)"$${std}"; \ - echo "$${col}$$br$${std}"; \ - create_testsuite_report --maybe-color; \ - echo "$$col$$br$$std"; \ - if $$success; then :; else \ - echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \ - if test -n "$(PACKAGE_BUGREPORT)"; then \ - echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \ - fi; \ - echo "$$col$$br$$std"; \ - fi; \ - $$success || exit 1 - -check-TESTS: - @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list - @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - trs_list=`for i in $$bases; do echo $$i.trs; done`; \ - log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \ - exit $$?; -recheck: all - @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - @set +e; $(am__set_TESTS_bases); \ - bases=`for i in $$bases; do echo $$i; done \ - | $(am__list_recheck_tests)` || exit 1; \ - log_list=`for i in $$bases; do echo $$i.log; done`; \ - log_list=`echo $$log_list`; \ - $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \ - am__force_recheck=am--force-recheck \ - TEST_LOGS="$$log_list"; \ - exit $$? -.test.log: - @p='$<'; \ - $(am__set_b); \ - $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ - --log-file $$b.log --trs-file $$b.trs \ - $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ - "$$tst" $(AM_TESTS_FD_REDIRECT) -@am__EXEEXT_TRUE@.test$(EXEEXT).log: -@am__EXEEXT_TRUE@ @p='$<'; \ -@am__EXEEXT_TRUE@ $(am__set_b); \ -@am__EXEEXT_TRUE@ $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ -@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \ -@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ -@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT) -distdir: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) distdir-am - -distdir-am: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$(top_distdir)" distdir="$(distdir)" \ - dist-hook -check-am: all-am - $(MAKE) $(AM_MAKEFLAGS) check-TESTS -check: check-am -@ENABLE_GTK_DOC_FALSE@all-local: -all-am: Makefile all-local -installdirs: -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - if test -z '$(STRIP)'; then \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - install; \ - else \ - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ - fi -mostlyclean-generic: - -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS) - -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs) - -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) - -clean-generic: - -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-libtool clean-local mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-generic distclean-local - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: install-data-local - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic \ - maintainer-clean-local - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-generic mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-local - -.MAKE: check-am install-am install-strip - -.PHONY: all all-am all-local check check-TESTS check-am clean \ - clean-generic clean-libtool clean-local cscopelist-am ctags-am \ - dist-hook distclean distclean-generic distclean-libtool \ - distclean-local distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am \ - install-data-local install-dvi install-dvi-am install-exec \ - install-exec-am install-html install-html-am install-info \ - install-info-am install-man install-pdf install-pdf-am \ - install-ps install-ps-am install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic maintainer-clean-local mostlyclean \ - mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ - recheck tags-am uninstall uninstall-am uninstall-local - -.PRECIOUS: Makefile - - -gtkdoc-check.test: Makefile - $(AM_V_GEN)echo "#!/bin/sh -e" > $@; \ - echo "$(GTKDOC_CHECK_PATH) || exit 1" >> $@; \ - chmod +x $@ - -all-gtk-doc: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) -.PHONY: all-gtk-doc - -@ENABLE_GTK_DOC_TRUE@all-local: all-gtk-doc - -docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) - -$(REPORT_FILES): sgml-build.stamp - -setup-build.stamp: - -$(GTK_DOC_V_SETUP)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ - files=`echo $(SETUP_FILES) $(DOC_MODULE).types`; \ - if test "x$$files" != "x" ; then \ - for file in $$files ; do \ - destdir=`dirname $(abs_builddir)/$$file`; \ - test -d "$$destdir" || mkdir -p "$$destdir"; \ - test -f $(abs_srcdir)/$$file && \ - cp -pf $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \ - done; \ - fi; \ - fi - $(AM_V_at)touch setup-build.stamp - -scan-build.stamp: setup-build.stamp $(HFILE_GLOB) $(CFILE_GLOB) - $(GTK_DOC_V_SCAN)_source_dir='' ; \ - for i in $(DOC_SOURCE_DIR) ; do \ - _source_dir="$${_source_dir} --source-dir=$$i" ; \ - done ; \ - gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES) - $(GTK_DOC_V_INTROSPECT)if grep -l '^..*$$' $(DOC_MODULE).types > /dev/null 2>&1 ; then \ - scanobj_options=""; \ - gtkdoc-scangobj 2>&1 --help | grep >/dev/null "\--verbose"; \ - if test "$$?" = "0"; then \ - if test "x$(V)" = "x1"; then \ - scanobj_options="--verbose"; \ - fi; \ - fi; \ - CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" \ - gtkdoc-scangobj $(SCANGOBJ_OPTIONS) $$scanobj_options --module=$(DOC_MODULE); \ - else \ - for i in $(SCANOBJ_FILES) ; do \ - test -f $$i || touch $$i ; \ - done \ - fi - $(AM_V_at)touch scan-build.stamp - -$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp - @true - -sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt $(expand_content_files) xml/gtkdocentities.ent - $(GTK_DOC_V_XML)_source_dir='' ; \ - for i in $(DOC_SOURCE_DIR) ; do \ - _source_dir="$${_source_dir} --source-dir=$$i" ; \ - done ; \ - gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS) - $(AM_V_at)touch sgml-build.stamp - -sgml.stamp: sgml-build.stamp - @true - -$(DOC_MAIN_SGML_FILE): sgml-build.stamp - @true - -xml/gtkdocentities.ent: Makefile - $(GTK_DOC_V_XML)$(MKDIR_P) $(@D) && ( \ - echo ""; \ - echo ""; \ - echo ""; \ - echo ""; \ - echo ""; \ - echo ""; \ - echo ""; \ - ) > $@ - -html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files) - $(GTK_DOC_V_HTML)rm -rf html && mkdir html && \ - mkhtml_options=""; \ - gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\--verbose"; \ - if test "$$?" = "0"; then \ - if test "x$(V)" = "x1"; then \ - mkhtml_options="$$mkhtml_options --verbose"; \ - fi; \ - fi; \ - gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\--path"; \ - if test "$$?" = "0"; then \ - mkhtml_options="$$mkhtml_options --path=\"$(abs_srcdir)\""; \ - fi; \ - cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) - -@test "x$(HTML_IMAGES)" = "x" || \ - for file in $(HTML_IMAGES) ; do \ - test -f $(abs_srcdir)/$$file && cp $(abs_srcdir)/$$file $(abs_builddir)/html; \ - test -f $(abs_builddir)/$$file && cp $(abs_builddir)/$$file $(abs_builddir)/html; \ - test -f $$file && cp $$file $(abs_builddir)/html; \ - done; - $(GTK_DOC_V_XREF)gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) - $(AM_V_at)touch html-build.stamp - -pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files) - $(GTK_DOC_V_PDF)rm -f $(DOC_MODULE).pdf && \ - mkpdf_options=""; \ - gtkdoc-mkpdf 2>&1 --help | grep >/dev/null "\--verbose"; \ - if test "$$?" = "0"; then \ - if test "x$(V)" = "x1"; then \ - mkpdf_options="$$mkpdf_options --verbose"; \ - fi; \ - fi; \ - if test "x$(HTML_IMAGES)" != "x"; then \ - for img in $(HTML_IMAGES); do \ - part=`dirname $$img`; \ - echo $$mkpdf_options | grep >/dev/null "\--imgdir=$$part "; \ - if test $$? != 0; then \ - mkpdf_options="$$mkpdf_options --imgdir=$$part"; \ - fi; \ - done; \ - fi; \ - gtkdoc-mkpdf --path="$(abs_srcdir)" $$mkpdf_options $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) $(MKPDF_OPTIONS) - $(AM_V_at)touch pdf-build.stamp - -############## - -clean-local: - @rm -f *~ *.bak - @rm -rf .libs - @if echo $(SCAN_OPTIONS) | grep -q "\--rebuild-types" ; then \ - rm -f $(DOC_MODULE).types; \ - fi - @if echo $(SCAN_OPTIONS) | grep -q "\--rebuild-sections" ; then \ - rm -f $(DOC_MODULE)-sections.txt; \ - fi - -distclean-local: - @rm -rf xml html $(REPORT_FILES) $(DOC_MODULE).pdf \ - $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt - @if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ - rm -f $(SETUP_FILES) $(DOC_MODULE).types; \ - fi - -maintainer-clean-local: - @rm -rf xml html - -install-data-local: - @installfiles=`echo $(builddir)/html/*`; \ - if test "$$installfiles" = '$(builddir)/html/*'; \ - then echo 1>&2 'Nothing to install' ; \ - else \ - if test -n "$(DOC_MODULE_VERSION)"; then \ - installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ - else \ - installdir="$(DESTDIR)$(TARGET_DIR)"; \ - fi; \ - $(mkinstalldirs) $${installdir} ; \ - for i in $$installfiles; do \ - echo ' $(INSTALL_DATA) '$$i ; \ - $(INSTALL_DATA) $$i $${installdir}; \ - done; \ - if test -n "$(DOC_MODULE_VERSION)"; then \ - mv -f $${installdir}/$(DOC_MODULE).devhelp2 \ - $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \ - fi; \ - $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \ - fi - -uninstall-local: - @if test -n "$(DOC_MODULE_VERSION)"; then \ - installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ - else \ - installdir="$(DESTDIR)$(TARGET_DIR)"; \ - fi; \ - rm -rf $${installdir} - -# -# Require gtk-doc when making dist -# -@HAVE_GTK_DOC_TRUE@dist-check-gtkdoc: docs -@HAVE_GTK_DOC_FALSE@dist-check-gtkdoc: -@HAVE_GTK_DOC_FALSE@ @echo "*** gtk-doc is needed to run 'make dist'. ***" -@HAVE_GTK_DOC_FALSE@ @echo "*** gtk-doc was not found when 'configure' ran. ***" -@HAVE_GTK_DOC_FALSE@ @echo "*** please install gtk-doc and rerun 'configure'. ***" -@HAVE_GTK_DOC_FALSE@ @false - -dist-hook: dist-check-gtkdoc all-gtk-doc dist-hook-local - @mkdir $(distdir)/html - @cp ./html/* $(distdir)/html - @-cp ./$(DOC_MODULE).pdf $(distdir)/ - @-cp ./$(DOC_MODULE).types $(distdir)/ - @-cp ./$(DOC_MODULE)-sections.txt $(distdir)/ - @cd $(distdir) && rm -f $(DISTCLEANFILES) - @$(GTKDOC_REBASE) --online --relative --html-dir=$(distdir)/html - -.PHONY : dist-hook-local docs - -sgml.stamp: $(dbus_stamp_files) -# gdbus-codegen hardcodes DocBook version - $(AM_V_GEN)$(SED) -i \ - -e 's|http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd|http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd|' \ - -e 's|-//OASIS//DTD DocBook XML V4.1.2//EN|-//OASIS//DTD DocBook XML V4.5//EN|' $(xml_files) - -dbus-%.stamp: $(top_srcdir)/data/%.xml - $(AM_V_GEN)$(GDBUS_CODEGEN) --generate-docbook=dbus $< - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/doc/reference/flatpak-overrides.txt b/doc/reference/flatpak-overrides.txt deleted file mode 100644 index e69de29..0000000 diff --git a/doc/reference/flatpak-sections.txt b/doc/reference/flatpak-sections.txt index fb390a6..81cfa7c 100644 --- a/doc/reference/flatpak-sections.txt +++ b/doc/reference/flatpak-sections.txt @@ -265,6 +265,7 @@ flatpak_transaction_add_install flatpak_transaction_add_install_bundle flatpak_transaction_add_install_flatpakref flatpak_transaction_add_rebase +flatpak_transaction_add_rebase_and_uninstall flatpak_transaction_add_update flatpak_transaction_add_uninstall flatpak_transaction_add_default_dependency_sources diff --git a/doc/reference/flatpak.types b/doc/reference/flatpak.types deleted file mode 100644 index 93ba099..0000000 --- a/doc/reference/flatpak.types +++ /dev/null @@ -1,11 +0,0 @@ -flatpak_bundle_ref_get_type -flatpak_installation_get_type -flatpak_installed_ref_get_type -flatpak_instance_get_type -flatpak_ref_get_type -flatpak_related_ref_get_type -flatpak_remote_get_type -flatpak_remote_ref_get_type -flatpak_transaction_get_type -flatpak_transaction_operation_get_type -flatpak_transaction_progress_get_type diff --git a/doc/reference/html/FlatpakBundleRef.html b/doc/reference/html/FlatpakBundleRef.html deleted file mode 100644 index a137177..0000000 --- a/doc/reference/html/FlatpakBundleRef.html +++ /dev/null @@ -1,401 +0,0 @@ - - - - -FlatpakBundleRef: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

FlatpakBundleRef

-

FlatpakBundleRef — Application bundle reference

-
-
-

Functions

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-FlatpakBundleRef * - -flatpak_bundle_ref_new () -
-GFile * - -flatpak_bundle_ref_get_file () -
-GBytes * - -flatpak_bundle_ref_get_metadata () -
-GBytes * - -flatpak_bundle_ref_get_appstream () -
-GBytes * - -flatpak_bundle_ref_get_icon () -
-char * - -flatpak_bundle_ref_get_origin () -
-guint64 - -flatpak_bundle_ref_get_installed_size () -
-char * - -flatpak_bundle_ref_get_runtime_repo_url () -
-
-
-

Properties

-
----- - - - - - -
-GFile *fileRead / Write / Construct Only
-
-
-

Types and Values

-
---- - - - - -
structFlatpakBundleRef
-
-
-

Object Hierarchy

-
    GObject
-    ╰── FlatpakRef
-        ╰── FlatpakBundleRef
-
-
-
-

Description

-

A FlatpakBundleRef refers to a single-file bundle containing an -application or runtime.

-
-
-

Functions

-
-

flatpak_bundle_ref_new ()

-
FlatpakBundleRef *
-flatpak_bundle_ref_new (GFile *file,
-                        GError **error);
-

Creates a new bundle ref for the given file.

-
-

Parameters

-
----- - - - - - - - - - - - - -

file

a GFile

 

error

return location for an error.

[allow-none]
-
-
-

Returns

-

a new bundle ref.

-
-
-
-
-

flatpak_bundle_ref_get_file ()

-
GFile *
-flatpak_bundle_ref_get_file (FlatpakBundleRef *self);
-

Get the file this bundle is stored in.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakBundleRef

 
-
-
-

Returns

-

(transfer full) : an GFile

-
-
-
-
-

flatpak_bundle_ref_get_metadata ()

-
GBytes *
-flatpak_bundle_ref_get_metadata (FlatpakBundleRef *self);
-

Get the metadata for the app/runtime

-
-

Parameters

-
----- - - - - - -

self

a FlatpakBundleRef

 
-
-
-

Returns

-

(transfer full) : an GBytes with the metadata contents, or NULL

-
-
-
-
-

flatpak_bundle_ref_get_appstream ()

-
GBytes *
-flatpak_bundle_ref_get_appstream (FlatpakBundleRef *self);
-

Get the compressed appstream for the app/runtime

-
-

Parameters

-
----- - - - - - -

self

a FlatpakBundleRef

 
-
-
-

Returns

-

(transfer full) : an GBytes with the appstream contents, or NULL

-
-
-
-
-

flatpak_bundle_ref_get_icon ()

-
GBytes *
-flatpak_bundle_ref_get_icon (FlatpakBundleRef *self,
-                             int size);
-

Get the icon png data for the app/runtime

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakBundleRef

 

size

64 or 128

 
-
-
-

Returns

-

(transfer full) : an GBytes with png contents

-
-
-
-
-

flatpak_bundle_ref_get_origin ()

-
char *
-flatpak_bundle_ref_get_origin (FlatpakBundleRef *self);
-

Get the origin url stored in the bundle

-
-

Parameters

-
----- - - - - - -

self

a FlatpakBundleRef

 
-
-
-

Returns

-

(transfer full) : an url string, or NULL

-
-
-
-
-

flatpak_bundle_ref_get_installed_size ()

-
guint64
-flatpak_bundle_ref_get_installed_size (FlatpakBundleRef *self);
-

Returns the installed size for the bundle.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakBundleRef

 
-
-
-

Returns

-

the installed size

-
-
-
-
-

flatpak_bundle_ref_get_runtime_repo_url ()

-
char *
-flatpak_bundle_ref_get_runtime_repo_url
-                               (FlatpakBundleRef *self);
-

Get the runtime flatpakrepo url stored in the bundle (if any)

-
-

Parameters

-
----- - - - - - -

self

a FlatpakBundleRef

 
-
-
-

Returns

-

(transfer full) : an url string, or NULL

-
-

Since: 0.8.0

-
-
-
-

Types and Values

-
-

struct FlatpakBundleRef

-
struct FlatpakBundleRef;
-
-
-
-

Property Details

-
-

The “file” property

-
  “file”                     GFile *
-

The bundle file that this ref refers to.

-

Owner: FlatpakBundleRef

-

Flags: Read / Write / Construct Only

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/FlatpakInstallation.html b/doc/reference/html/FlatpakInstallation.html deleted file mode 100644 index fc62a4c..0000000 --- a/doc/reference/html/FlatpakInstallation.html +++ /dev/null @@ -1,4175 +0,0 @@ - - - - -FlatpakInstallation: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

FlatpakInstallation

-

FlatpakInstallation — Installation information

-
-
-

Functions

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-FlatpakInstallation * - -flatpak_installation_new_system () -
-FlatpakInstallation * - -flatpak_installation_new_system_with_id () -
-FlatpakInstallation * - -flatpak_installation_new_user () -
-FlatpakInstallation * - -flatpak_installation_new_for_path () -
-gboolean - -flatpak_installation_get_is_user () -
-GFile * - -flatpak_installation_get_path () -
-GFileMonitor * - -flatpak_installation_create_monitor () -
-FlatpakInstalledRef * - -flatpak_installation_install () -
-FlatpakInstalledRef * - -flatpak_installation_install_full () -
-FlatpakInstalledRef * - -flatpak_installation_update () -
-FlatpakInstalledRef * - -flatpak_installation_update_full () -
-gboolean - -flatpak_installation_uninstall () -
-gboolean - -flatpak_installation_uninstall_full () -
-gboolean - -flatpak_installation_launch () -
-gboolean - -flatpak_installation_launch_full () -
-FlatpakInstalledRef * - -flatpak_installation_get_current_installed_app () -
const char * - -flatpak_installation_get_display_name () -
const char * - -flatpak_installation_get_id () -
-FlatpakInstalledRef * - -flatpak_installation_get_installed_ref () -
-gboolean - -flatpak_installation_get_min_free_space_bytes () -
-gint - -flatpak_installation_get_priority () -
-FlatpakStorageType - -flatpak_installation_get_storage_type () -
-void - -flatpak_installation_set_no_interaction () -
-gboolean - -flatpak_installation_get_no_interaction () -
-GPtrArray * - -flatpak_installation_list_installed_refs () -
-GPtrArray * - -flatpak_installation_list_installed_refs_by_kind () -
-GPtrArray * - -flatpak_installation_list_installed_refs_for_update () -
-GPtrArray * - -flatpak_installation_list_installed_related_refs_sync () -
-GPtrArray * - -flatpak_installation_list_unused_refs () -
-GPtrArray * - -flatpak_installation_list_remote_refs_sync () -
-GPtrArray * - -flatpak_installation_list_remote_refs_sync_full () -
-GPtrArray * - -flatpak_installation_list_remotes_by_type () -
-GPtrArray * - -flatpak_installation_list_remote_related_refs_sync () -
-GPtrArray * - -flatpak_installation_list_remotes () -
-FlatpakRemote * - -flatpak_installation_get_remote_by_name () -
-GBytes * - -flatpak_installation_fetch_remote_metadata_sync () -
-FlatpakRemoteRef * - -flatpak_installation_fetch_remote_ref_sync () -
-FlatpakRemoteRef * - -flatpak_installation_fetch_remote_ref_sync_full () -
-gboolean - -flatpak_installation_fetch_remote_size_sync () -
-char * - -flatpak_installation_load_app_overrides () -
-gboolean - -flatpak_installation_update_appstream_sync () -
-FlatpakInstalledRef * - -flatpak_installation_install_bundle () -
-FlatpakRemoteRef * - -flatpak_installation_install_ref_file () -
-gboolean - -flatpak_installation_drop_caches () -
-gboolean - -flatpak_installation_add_remote () -
-gboolean - -flatpak_installation_modify_remote () -
-gboolean - -flatpak_installation_remove_remote () -
-gboolean - -flatpak_installation_update_remote_sync () -
-gboolean - -flatpak_installation_cleanup_local_refs_sync () -
-char * - -flatpak_installation_get_config () -
-char ** - -flatpak_installation_get_default_languages () -
-char ** - -flatpak_installation_get_default_locales () -
-gboolean - -flatpak_installation_prune_local_repo () -
-gboolean - -flatpak_installation_remove_local_ref_sync () -
-gboolean - -flatpak_installation_set_config_sync () -
-gboolean - -flatpak_installation_update_appstream_full_sync () -
-gboolean - -flatpak_installation_run_triggers () -
const char * - -flatpak_get_default_arch () -
const char *const * - -flatpak_get_supported_arches () -
-GPtrArray * - -flatpak_get_system_installations () -
-void - -(*FlatpakProgressCallback) () -
-
-
-

Types and Values

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
structFlatpakInstallation
enumFlatpakQueryFlags
enumFlatpakUpdateFlags
enumFlatpakInstallFlags
enumFlatpakUninstallFlags
enumFlatpakLaunchFlags
enumFlatpakStorageType
-
-
-

Object Hierarchy

-
    GObject
-    ╰── FlatpakInstallation
-
-
-
-

Description

-

FlatpakInstallation is the toplevel object that software installers -should use to operate on an flatpak applications.

-

An FlatpakInstallation object provides information about an installation -location for flatpak applications. Typical installation locations are either -system-wide (in $prefix/var/lib/flatpak) or per-user (in ~/.local/share/flatpak).

-

FlatpakInstallation can list configured remotes as well as installed application -and runtime references (in short: refs), and it can add, remove and modify remotes.

-

FlatpakInstallation can also run, install, update and uninstall applications and -runtimes, but FlatpakTransaction is a better, high-level API for these tasks.

-

To get a list of all configured installations, use flatpak_get_system_installations(), -together with flatpak_installation_new_user().

-

The FlatpakInstallation API is threadsafe in the sense that it is safe to run two -operations at the same time, in different threads (or processes).

-
-
-

Functions

-
-

flatpak_installation_new_system ()

-
FlatpakInstallation *
-flatpak_installation_new_system (GCancellable *cancellable,
-                                 GError **error);
-

Creates a new FlatpakInstallation for the default system-wide installation.

-
-

Parameters

-
----- - - - - - - - - - - - - -

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a new FlatpakInstallation.

-

[transfer full]

-
-
-
-
-

flatpak_installation_new_system_with_id ()

-
FlatpakInstallation *
-flatpak_installation_new_system_with_id
-                               (const char *id,
-                                GCancellable *cancellable,
-                                GError **error);
-

Creates a new FlatpakInstallation for the system-wide installation id -.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

id

the ID of the system-wide installation.

[nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a new FlatpakInstallation.

-

[transfer full]

-
-

Since: 0.8

-
-
-
-

flatpak_installation_new_user ()

-
FlatpakInstallation *
-flatpak_installation_new_user (GCancellable *cancellable,
-                               GError **error);
-

Creates a new FlatpakInstallation for the per-user installation.

-
-

Parameters

-
----- - - - - - - - - - - - - -

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a new FlatpakInstallation.

-

[transfer full]

-
-
-
-
-

flatpak_installation_new_for_path ()

-
FlatpakInstallation *
-flatpak_installation_new_for_path (GFile *path,
-                                   gboolean user,
-                                   GCancellable *cancellable,
-                                   GError **error);
-

Creates a new FlatpakInstallation for the installation at the given path -.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

path

a GFile

 

user

whether this is a user-specific location

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a new FlatpakInstallation.

-

[transfer full]

-
-
-
-
-

flatpak_installation_get_is_user ()

-
gboolean
-flatpak_installation_get_is_user (FlatpakInstallation *self);
-

Returns whether the installation is for a user-specific location.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstallation

 
-
-
-

Returns

-

TRUE if self -is a per-user installation

-
-
-
-
-

flatpak_installation_get_path ()

-
GFile *
-flatpak_installation_get_path (FlatpakInstallation *self);
-

Returns the installation location for self -.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstallation

 
-
-
-

Returns

-

an GFile.

-

[transfer full]

-
-
-
-
-

flatpak_installation_create_monitor ()

-
GFileMonitor *
-flatpak_installation_create_monitor (FlatpakInstallation *self,
-                                     GCancellable *cancellable,
-                                     GError **error);
-

Gets monitor object for the installation. The returned file monitor will -emit the “changed” signal whenever an application or runtime -was installed, uninstalled or updated.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a new GFileMonitor instance, or NULL on error.

-

[transfer full]

-
-
-
-
-

flatpak_installation_install ()

-
FlatpakInstalledRef *
-flatpak_installation_install (FlatpakInstallation *self,
-                              const char *remote_name,
-                              FlatpakRefKind kind,
-                              const char *name,
-                              const char *arch,
-                              const char *branch,
-                              FlatpakProgressCallback progress,
-                              gpointer progress_data,
-                              GCancellable *cancellable,
-                              GError **error);
-
-

flatpak_installation_install has been deprecated since version 1.7.0 and should not be used in newly-written code.

-

Use flatpak_transaction_add_install() instead.

-
-

This is an old deprecated function, you should use -FlatpakTransaction and flatpak_transaction_add_install() -instead. It has a lot more interesting features.

-

Install a new application or runtime.

-

Note that this function was originally written to always return a -FlatpakInstalledRef. Since 0.9.13, passing -FLATPAK_INSTALL_FLAGS_NO_DEPLOY will only pull refs into the local flatpak -repository without deploying them, however this function will -be unable to provide information on the installed ref, so -FLATPAK_ERROR_ONLY_PULLED will be set and the caller must respond -accordingly.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote_name

name of the remote to use

 

kind

what this ref contains (an FlatpakRefKind)

 

name

name of the app/runtime to fetch

 

arch

which architecture to fetch (default: current architecture).

[nullable]

branch

which branch to fetch (default: 'master').

[nullable]

progress

progress callback.

[scope call][nullable]

progress_data

user data passed to progress -.

[closure progress][nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

The ref for the newly installed app or NULL on failure.

-

[transfer full]

-
-
-
-
-

flatpak_installation_install_full ()

-
FlatpakInstalledRef *
-flatpak_installation_install_full (FlatpakInstallation *self,
-                                   FlatpakInstallFlags flags,
-                                   const char *remote_name,
-                                   FlatpakRefKind kind,
-                                   const char *name,
-                                   const char *arch,
-                                   const char *branch,
-                                   const char * const *subpaths,
-                                   FlatpakProgressCallback progress,
-                                   gpointer progress_data,
-                                   GCancellable *cancellable,
-                                   GError **error);
-
-

flatpak_installation_install_full has been deprecated since version 1.7.0 and should not be used in newly-written code.

-

Use flatpak_transaction_add_install() instead.

-
-

This is an old deprecated function, you should use -FlatpakTransaction and flatpak_transaction_add_install() -instead. It has a lot more interesting features.

-

Install a new application or runtime.

-

Note that this function was originally written to always return a -FlatpakInstalledRef. Since 0.9.13, passing -FLATPAK_INSTALL_FLAGS_NO_DEPLOY will only pull refs into the local flatpak -repository without deploying them, however this function will -be unable to provide information on the installed ref, so -FLATPAK_ERROR_ONLY_PULLED will be set and the caller must respond -accordingly.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

flags

set of FlatpakInstallFlags flag

 

remote_name

name of the remote to use

 

kind

what this ref contains (an FlatpakRefKind)

 

name

name of the app/runtime to fetch

 

arch

which architecture to fetch (default: current architecture).

[nullable]

branch

which branch to fetch (default: 'master').

[nullable]

subpaths

A list of subpaths to fetch, or NULL for everything.

[nullable][array zero-terminated=1]

progress

progress callback.

[scope call][nullable]

progress_data

user data passed to progress -.

[closure progress][nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

The ref for the newly installed app or NULL on failure.

-

[transfer full]

-
-
-
-
-

flatpak_installation_update ()

-
FlatpakInstalledRef *
-flatpak_installation_update (FlatpakInstallation *self,
-                             FlatpakUpdateFlags flags,
-                             FlatpakRefKind kind,
-                             const char *name,
-                             const char *arch,
-                             const char *branch,
-                             FlatpakProgressCallback progress,
-                             gpointer progress_data,
-                             GCancellable *cancellable,
-                             GError **error);
-
-

flatpak_installation_update has been deprecated since version 1.7.0 and should not be used in newly-written code.

-

Use flatpak_transaction_add_update() instead.

-
-

This is an old deprecated function, you should use -FlatpakTransaction and flatpak_transaction_add_update() -instead. It has a lot more interesting features.

-

Update an application or runtime.

-

If the specified package is not installed, then FLATPAK_ERROR_NOT_INSTALLED -will be thrown.

-

If no updates could be found on the remote end and the package is -already up to date, then FLATPAK_ERROR_ALREADY_INSTALLED will be thrown.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

flags

set of FlatpakUpdateFlags flag

 

kind

whether this is an app or runtime

 

name

name of the app or runtime to update

 

arch

architecture of the app or runtime to update (default: current architecture).

[nullable]

branch

name of the branch of the app or runtime to update (default: master).

[nullable]

progress

the callback.

[scope call][nullable]

progress_data

user data passed to progress -.

[closure progress][nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

The ref for the newly updated app or NULL on failure.

-

[transfer full]

-
-
-
-
-

flatpak_installation_update_full ()

-
FlatpakInstalledRef *
-flatpak_installation_update_full (FlatpakInstallation *self,
-                                  FlatpakUpdateFlags flags,
-                                  FlatpakRefKind kind,
-                                  const char *name,
-                                  const char *arch,
-                                  const char *branch,
-                                  const char * const *subpaths,
-                                  FlatpakProgressCallback progress,
-                                  gpointer progress_data,
-                                  GCancellable *cancellable,
-                                  GError **error);
-
-

flatpak_installation_update_full has been deprecated since version 1.7.0 and should not be used in newly-written code.

-

Use flatpak_transaction_add_update() instead.

-
-

This is an old deprecated function, you should use -FlatpakTransaction and flatpak_transaction_add_update() -instead. It has a lot more interesting features.

-

Update an application or runtime.

-

If the specified package is not installed, then FLATPAK_ERROR_NOT_INSTALLED -will be thrown.

-

If no updates could be found on the remote end and the package is -already up to date, then FLATPAK_ERROR_ALREADY_INSTALLED will be thrown.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

flags

set of FlatpakUpdateFlags flag

 

kind

whether this is an app or runtime

 

name

name of the app or runtime to update

 

arch

architecture of the app or runtime to update (default: current architecture).

[nullable]

branch

name of the branch of the app or runtime to update (default: master).

[nullable]

subpaths

A list of subpaths to fetch, or NULL for everything.

[nullable][array zero-terminated=1]

progress

the callback.

[scope call][nullable]

progress_data

user data passed to progress -.

[closure progress][nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

The ref for the newly updated app or NULL on failure.

-

[transfer full]

-
-
-
-
-

flatpak_installation_uninstall ()

-
gboolean
-flatpak_installation_uninstall (FlatpakInstallation *self,
-                                FlatpakRefKind kind,
-                                const char *name,
-                                const char *arch,
-                                const char *branch,
-                                FlatpakProgressCallback progress,
-                                gpointer progress_data,
-                                GCancellable *cancellable,
-                                GError **error);
-
-

flatpak_installation_uninstall has been deprecated since version 1.7.0 and should not be used in newly-written code.

-

Use flatpak_transaction_add_uninstall() instead.

-
-

This is an old deprecated function, you should use -FlatpakTransaction and flatpak_transaction_add_uninstall() -instead. It has a lot more interesting features.

-

Uninstall an application or runtime.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

kind

what this ref contains (an FlatpakRefKind)

 

name

name of the app or runtime to uninstall

 

arch

architecture of the app or runtime to uninstall; if -NULL, flatpak_get_default_arch() is assumed.

[nullable]

branch

name of the branch of the app or runtime to uninstall; -if NULL, master is assumed.

[nullable]

progress

the callback.

[scope call][nullable]

progress_data

user data passed to progress -.

[closure progress][nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success

-
-
-
-
-

flatpak_installation_uninstall_full ()

-
gboolean
-flatpak_installation_uninstall_full (FlatpakInstallation *self,
-                                     FlatpakUninstallFlags flags,
-                                     FlatpakRefKind kind,
-                                     const char *name,
-                                     const char *arch,
-                                     const char *branch,
-                                     FlatpakProgressCallback progress,
-                                     gpointer progress_data,
-                                     GCancellable *cancellable,
-                                     GError **error);
-
-

flatpak_installation_uninstall_full has been deprecated since version 1.7.0 and should not be used in newly-written code.

-

Use flatpak_transaction_add_uninstall() instead.

-
-

This is an old deprecated function, you should use -FlatpakTransaction and flatpak_transaction_add_uninstall() -instead. It has a lot more interesting features.

-

Uninstall an application or runtime.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

flags

set of FlatpakUninstallFlags flags

 

kind

what this ref contains (an FlatpakRefKind)

 

name

name of the app or runtime to uninstall

 

arch

architecture of the app or runtime to uninstall; if -NULL, flatpak_get_default_arch() is assumed.

[nullable]

branch

name of the branch of the app or runtime to uninstall; -if NULL, master is assumed.

[nullable]

progress

the callback.

[scope call][nullable]

progress_data

user data passed to progress -.

[closure progress][nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success

-
-

Since: 0.11.8

-
-
-
-

flatpak_installation_launch ()

-
gboolean
-flatpak_installation_launch (FlatpakInstallation *self,
-                             const char *name,
-                             const char *arch,
-                             const char *branch,
-                             const char *commit,
-                             GCancellable *cancellable,
-                             GError **error);
-

Launch an installed application.

-

You can use flatpak_installation_get_installed_ref() or -flatpak_installation_get_current_installed_app() to find out what builds -are available, in order to get a value for commit -.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

name

name of the app to launch

 

arch

which architecture to launch (default: current architecture).

[nullable]

branch

which branch of the application (default: "master").

[nullable]

commit

the commit of branch -to launch.

[nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE, unless an error occurred

-
-
-
-
-

flatpak_installation_launch_full ()

-
gboolean
-flatpak_installation_launch_full (FlatpakInstallation *self,
-                                  FlatpakLaunchFlags flags,
-                                  const char *name,
-                                  const char *arch,
-                                  const char *branch,
-                                  const char *commit,
-                                  FlatpakInstance **instance_out,
-                                  GCancellable *cancellable,
-                                  GError **error);
-

Launch an installed application.

-

You can use flatpak_installation_get_installed_ref() or -flatpak_installation_get_current_installed_app() to find out what builds -are available, in order to get a value for commit -.

-

Compared to flatpak_installation_launch(), this function returns a FlatpakInstance -that can be used to get information about the running instance. You can also use -it to wait for the instance to be done with g_child_watch_add() if you pass the -FLATPAK_LAUNCH_FLAGS_DO_NOT_REAP flag.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

flags

set of FlatpakLaunchFlags

 

name

name of the app to launch

 

arch

which architecture to launch (default: current architecture).

[nullable]

branch

which branch of the application (default: "master").

[nullable]

commit

the commit of branch -to launch.

[nullable]

instance_out

return location for a FlatpakInstance.

[nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE, unless an error occurred

-
-

Since: 1.1

-
-
-
-

flatpak_installation_get_current_installed_app ()

-
FlatpakInstalledRef *
-flatpak_installation_get_current_installed_app
-                               (FlatpakInstallation *self,
-                                const char *name,
-                                GCancellable *cancellable,
-                                GError **error);
-

Get the last build of reference name - that was installed with -flatpak_installation_install(), or NULL if the reference has -never been installed locally.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

name

the name of the app

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

an FlatpakInstalledRef.

-

[transfer full]

-
-
-
-
-

flatpak_installation_get_display_name ()

-
const char *
-flatpak_installation_get_display_name (FlatpakInstallation *self);
-

Returns the display name of the installation for self -.

-

Note that this function may return NULL if the installation -does not have a display name.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstallation

 
-
-
-

Returns

-

a string with the installation's display name.

-

[transfer none]

-
-

Since: 0.8

-
-
-
-

flatpak_installation_get_id ()

-
const char *
-flatpak_installation_get_id (FlatpakInstallation *self);
-

Returns the ID of the installation for self -.

-

The ID for the default system installation is "default". -The ID for the user installation is "user".

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstallation

 
-
-
-

Returns

-

a string with the installation's ID.

-

[transfer none]

-
-

Since: 0.8

-
-
-
-

flatpak_installation_get_installed_ref ()

-
FlatpakInstalledRef *
-flatpak_installation_get_installed_ref
-                               (FlatpakInstallation *self,
-                                FlatpakRefKind kind,
-                                const char *name,
-                                const char *arch,
-                                const char *branch,
-                                GCancellable *cancellable,
-                                GError **error);
-

Returns information about an installed ref, such as the available builds, -its size, location, etc.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

kind

whether this is an app or runtime

 

name

name of the app/runtime to fetch

 

arch

which architecture to fetch (default: current architecture).

[nullable]

branch

which branch to fetch (default: "master").

[nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

an FlatpakInstalledRef, or NULL if an error occurred.

-

[transfer full]

-
-
-
-
-

flatpak_installation_get_min_free_space_bytes ()

-
gboolean
-flatpak_installation_get_min_free_space_bytes
-                               (FlatpakInstallation *self,
-                                guint64 *out_bytes,
-                                GError **error);
-

Returns the min-free-space config value from the OSTree repository of this installation.

-

Applications can use this value, together with information about the available -disk space and the size of pending updates or installs, to estimate whether a -pull operation will fail due to running out of disk space.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

out_bytes

Location to store the result.

[out]

error

Return location for a GError

 
-
-
-

Returns

-

TRUE on success, or FALSE on error.

-
-

Since: 1.1

-
-
-
-

flatpak_installation_get_priority ()

-
gint
-flatpak_installation_get_priority (FlatpakInstallation *self);
-

Returns the numeric priority of the installation for self -.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstallation

 
-
-
-

Returns

-

an integer with the configured priority value

-
-

Since: 0.8

-
-
-
-

flatpak_installation_get_storage_type ()

-
FlatpakStorageType
-flatpak_installation_get_storage_type (FlatpakInstallation *self);
-

Returns the type of storage of the installation for self -.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstallation

 
-
-
-

Returns

-

a FlatpakStorageType

-
-

Since: 0.8

-
-
-
-

flatpak_installation_set_no_interaction ()

-
void
-flatpak_installation_set_no_interaction
-                               (FlatpakInstallation *self,
-                                gboolean no_interaction);
-

This method can be used to prevent interactive authorization dialogs to appear -for operations on self -. This is useful for background operations that are not -directly triggered by a user action.

-

By default, interaction is allowed.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakInstallation

 

no_interaction

Whether to disallow interactive authorization for operations

 
-
-

Since: 1.1.1

-
-
-
-

flatpak_installation_get_no_interaction ()

-
gboolean
-flatpak_installation_get_no_interaction
-                               (FlatpakInstallation *self);
-

Returns the value set with flatpak_installation_set_no_interaction().

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransaction

 
-
-
-

Returns

-

TRUE if interactive authorization dialogs are not allowed

-
-

Since: 1.1.1

-
-
-
-

flatpak_installation_list_installed_refs ()

-
GPtrArray *
-flatpak_installation_list_installed_refs
-                               (FlatpakInstallation *self,
-                                GCancellable *cancellable,
-                                GError **error);
-

Lists the installed references.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a GPtrArray of -FlatpakInstalledRef instances.

-

[transfer container][element-type FlatpakInstalledRef]

-
-
-
-
-

flatpak_installation_list_installed_refs_by_kind ()

-
GPtrArray *
-flatpak_installation_list_installed_refs_by_kind
-                               (FlatpakInstallation *self,
-                                FlatpakRefKind kind,
-                                GCancellable *cancellable,
-                                GError **error);
-

Lists the installed references of a specific kind.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

kind

the kind of installation

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a GPtrArray of -FlatpakInstalledRef instances.

-

[transfer container][element-type FlatpakInstalledRef]

-
-
-
-
-

flatpak_installation_list_installed_refs_for_update ()

-
GPtrArray *
-flatpak_installation_list_installed_refs_for_update
-                               (FlatpakInstallation *self,
-                                GCancellable *cancellable,
-                                GError **error);
-

Lists the installed apps and runtimes that have an update available, either -from the configured remote or locally available but not deployed (see -flatpak_transaction_set_no_deploy()).

-

This also checks if any of FlatpakInstalledRef has a missing FlatpakRelatedRef -(which has should-download set to TRUE) or runtime. If so, it adds the -ref to the returning GPtrArray to pull in the FlatpakRelatedRef or runtime -again via an update operation in FlatpakTransaction.

-

In case more than one app needs an update of the same runtime or extension, -this function will return all of those apps.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a GPtrArray of -FlatpakInstalledRef instances, or NULL on error.

-

[transfer container][element-type FlatpakInstalledRef]

-
-
-
-
-

flatpak_installation_list_installed_related_refs_sync ()

-
GPtrArray *
-flatpak_installation_list_installed_related_refs_sync
-                               (FlatpakInstallation *self,
-                                const char *remote_name,
-                                const char *ref,
-                                GCancellable *cancellable,
-                                GError **error);
-

Lists all the locally installed refs that are related to ref -. These are -things that are interesting to install, update, or uninstall together with -ref -. For instance, locale data or debug information.

-

Note that while the related refs are usually installed from the same remote -as ref - (remote_name -), it is possible they were installed from another -remote.

-

This function is similar to flatpak_installation_list_remote_related_refs_sync, -but instead of looking at what is available on the remote, it only looks -at the locally installed refs. This is useful for instance when you're -looking for related refs to uninstall, or when you're planning to use -FLATPAK_UPDATE_FLAGS_NO_PULL to install previously pulled refs.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote_name

the name of the remote providing ref -

 

ref

the ref

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a GPtrArray of -FlatpakRelatedRef instances.

-

[transfer container][element-type FlatpakRelatedRef]

-
-

Since: 0.6.7

-
-
-
-

flatpak_installation_list_unused_refs ()

-
GPtrArray *
-flatpak_installation_list_unused_refs (FlatpakInstallation *self,
-                                       const char *arch,
-                                       GCancellable *cancellable,
-                                       GError **error);
-

Lists the installed references that are not 'used'.

-

A reference is used if it is either an application, -or the runtime or sdk of a used ref, or an extension of a used ref. -Pinned runtimes are also considered used; see flatpak-pin(1) and -flatpak_installation_list_pinned_refs().

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

arch

if non-NULL, the architecture of refs to collect.

[nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a GPtrArray of -FlatpakInstalledRef instances.

-

[transfer container][element-type FlatpakInstalledRef]

-
-

Since: 1.1.2

-
-
-
-

flatpak_installation_list_remote_refs_sync ()

-
GPtrArray *
-flatpak_installation_list_remote_refs_sync
-                               (FlatpakInstallation *self,
-                                const char *remote_or_uri,
-                                GCancellable *cancellable,
-                                GError **error);
-

Lists all the applications and runtimes in a remote.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote_or_uri

the name or URI of the remote

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a GPtrArray of -FlatpakRemoteRef instances.

-

[transfer container][element-type FlatpakRemoteRef]

-
-
-
-
-

flatpak_installation_list_remote_refs_sync_full ()

-
GPtrArray *
-flatpak_installation_list_remote_refs_sync_full
-                               (FlatpakInstallation *self,
-                                const char *remote_or_uri,
-                                FlatpakQueryFlags flags,
-                                GCancellable *cancellable,
-                                GError **error);
-

Lists all the applications and runtimes in a remote.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote_or_uri

the name or URI of the remote

 

flags

set of FlatpakQueryFlags

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a GPtrArray of -FlatpakRemoteRef instances.

-

[transfer container][element-type FlatpakRemoteRef]

-
-

Since: 1.3.3

-
-
-
-

flatpak_installation_list_remotes_by_type ()

-
GPtrArray *
-flatpak_installation_list_remotes_by_type
-                               (FlatpakInstallation *self,
-                                const FlatpakRemoteType types[],
-                                gsize num_types,
-                                GCancellable *cancellable,
-                                GError **error);
-

Lists only the remotes whose type is included in the types - argument.

-

Since flatpak 1.7 this will never return any types except FLATPAK_REMOTE_TYPE_STATIC. -Equivalent functionallity to FLATPAK_REMOTE_TYPE_USB can be had by listing remote refs -with FLATPAK_QUERY_FLAGS_ONLY_SIDELOADED.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

types

an array of FlatpakRemoteType.

[array length=num_types]

num_types

the number of types provided in types -

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a GPtrArray of -FlatpakRemote instances.

-

[transfer container][element-type FlatpakRemote]

-
-
-
-
-

flatpak_installation_list_remote_related_refs_sync ()

-
GPtrArray *
-flatpak_installation_list_remote_related_refs_sync
-                               (FlatpakInstallation *self,
-                                const char *remote_name,
-                                const char *ref,
-                                GCancellable *cancellable,
-                                GError **error);
-

Lists all the available refs on remote_name - that are related to -ref -, and the subpaths to use. These are things that are -interesting to install, update, or uninstall together with -ref -. For instance, locale data or debug information.

-

The returned list contains all available related refs, but not -every one should always be installed. For example, -flatpak_related_ref_should_download() returns TRUE if the -reference should be installed/updated with the app, and -flatpak_related_ref_should_delete() returns TRUE if it -should be uninstalled with the main ref.

-

The commit property of each FlatpakRelatedRef is not guaranteed to be -non-NULL.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote_name

the name of the remote

 

ref

the ref

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a GPtrArray of -FlatpakRelatedRef instances.

-

[transfer container][element-type FlatpakRelatedRef]

-
-

Since: 0.6.7

-
-
-
-

flatpak_installation_list_remotes ()

-
GPtrArray *
-flatpak_installation_list_remotes (FlatpakInstallation *self,
-                                   GCancellable *cancellable,
-                                   GError **error);
-

Lists the static remotes, in priority (highest first) order. For same -priority, an earlier added remote comes before a later added one.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a GPtrArray of -FlatpakRemote instances.

-

[transfer container][element-type FlatpakRemote]

-
-
-
-
-

flatpak_installation_get_remote_by_name ()

-
FlatpakRemote *
-flatpak_installation_get_remote_by_name
-                               (FlatpakInstallation *self,
-                                const gchar *name,
-                                GCancellable *cancellable,
-                                GError **error);
-

Looks up a remote by name.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

name

a remote name

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a FlatpakRemote instance, or NULL with error -set.

-

[transfer full]

-
-
-
-
-

flatpak_installation_fetch_remote_metadata_sync ()

-
GBytes *
-flatpak_installation_fetch_remote_metadata_sync
-                               (FlatpakInstallation *self,
-                                const char *remote_name,
-                                FlatpakRef *ref,
-                                GCancellable *cancellable,
-                                GError **error);
-

Obtains the metadata file from a commit.

-

NOTE: Since 0.11.4 this information is accessible in FlatpakRemoteRef, so this -function is not very useful anymore.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote_name

the name of the remote

 

ref

the ref

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a GBytes containing the flatpak metadata file, -or NULL if an error occurred.

-

[transfer full]

-
-
-
-
-

flatpak_installation_fetch_remote_ref_sync ()

-
FlatpakRemoteRef *
-flatpak_installation_fetch_remote_ref_sync
-                               (FlatpakInstallation *self,
-                                const char *remote_name,
-                                FlatpakRefKind kind,
-                                const char *name,
-                                const char *arch,
-                                const char *branch,
-                                GCancellable *cancellable,
-                                GError **error);
-

Gets the current remote branch of a ref in the remote.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote_name

the name of the remote

 

kind

what this ref contains (an FlatpakRefKind)

 

name

name of the app/runtime to fetch

 

arch

which architecture to fetch (default: current architecture).

[nullable]

branch

which branch to fetch (default: 'master').

[nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a FlatpakRemoteRef instance, or NULL.

-

[transfer full]

-
-
-
-
-

flatpak_installation_fetch_remote_ref_sync_full ()

-
FlatpakRemoteRef *
-flatpak_installation_fetch_remote_ref_sync_full
-                               (FlatpakInstallation *self,
-                                const char *remote_name,
-                                FlatpakRefKind kind,
-                                const char *name,
-                                const char *arch,
-                                const char *branch,
-                                FlatpakQueryFlags flags,
-                                GCancellable *cancellable,
-                                GError **error);
-

Gets the current remote branch of a ref in the remote.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote_name

the name of the remote

 

kind

what this ref contains (an FlatpakRefKind)

 

name

name of the app/runtime to fetch

 

arch

which architecture to fetch (default: current architecture).

[nullable]

branch

which branch to fetch (default: 'master').

[nullable]

flags

set of FlatpakQueryFlags

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a FlatpakRemoteRef instance, or NULL.

-

[transfer full]

-
-

Since: 1.3.3

-
-
-
-

flatpak_installation_fetch_remote_size_sync ()

-
gboolean
-flatpak_installation_fetch_remote_size_sync
-                               (FlatpakInstallation *self,
-                                const char *remote_name,
-                                FlatpakRef *ref,
-                                guint64 *download_size,
-                                guint64 *installed_size,
-                                GCancellable *cancellable,
-                                GError **error);
-

Gets information about the maximum amount of data that needs to be transferred -to pull the ref from a remote repository, and about the amount of -local disk space that is required to check out this commit.

-

Note that if there are locally available data that are in the ref, which is common -for instance if you're doing an update then the real download size may be smaller -than what is returned here.

-

NOTE: Since 0.11.4 this information is accessible in FlatpakRemoteRef, so this -function is not very useful anymore.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote_name

the name of the remote

 

ref

the ref

 

download_size

return location for the (maximum) download size.

[out]

installed_size

return location for the installed size.

[out]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE, unless an error occurred

-
-
-
-
-

flatpak_installation_load_app_overrides ()

-
char *
-flatpak_installation_load_app_overrides
-                               (FlatpakInstallation *self,
-                                const char *app_id,
-                                GCancellable *cancellable,
-                                GError **error);
-

Loads the metadata overrides file for an application.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

app_id

an application id

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

the contents of the overrides files, -or NULL if an error occurred.

-

[transfer full]

-
-
-
-
-

flatpak_installation_update_appstream_sync ()

-
gboolean
-flatpak_installation_update_appstream_sync
-                               (FlatpakInstallation *self,
-                                const char *remote_name,
-                                const char *arch,
-                                gboolean *out_changed,
-                                GCancellable *cancellable,
-                                GError **error);
-

Updates the local copy of appstream for remote_name - for the specified arch -. -If you need progress feedback, use flatpak_installation_update_appstream_full_sync().

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote_name

the name of the remote

 

arch

Architecture to update, or NULL for the local machine arch.

[nullable]

out_changed

Set to TRUE if the contents of the appstream changed, FALSE if nothing changed.

[nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success, or FALSE on error

-
-
-
-
-

flatpak_installation_install_bundle ()

-
FlatpakInstalledRef *
-flatpak_installation_install_bundle (FlatpakInstallation *self,
-                                     GFile *file,
-                                     FlatpakProgressCallback progress,
-                                     gpointer progress_data,
-                                     GCancellable *cancellable,
-                                     GError **error);
-
-

flatpak_installation_install_bundle has been deprecated since version 1.7.0 and should not be used in newly-written code.

-

Use flatpak_transaction_add_install_bundle() instead.

-
-

This is an old deprecated function, you should use -FlatpakTransaction and flatpak_transaction_add_install_bundle() -instead. It has a lot more interesting features.

-

Install an application or runtime from an flatpak bundle file. -See flatpak-build-bundle(1) for how to create bundles.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

file

a GFile that is an flatpak bundle

 

progress

progress callback.

[scope call][nullable]

progress_data

user data passed to progress -.

[closure progress][nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

The ref for the newly installed app or NULL on failure.

-

[transfer full]

-
-
-
-
-

flatpak_installation_install_ref_file ()

-
FlatpakRemoteRef *
-flatpak_installation_install_ref_file (FlatpakInstallation *self,
-                                       GBytes *ref_file_data,
-                                       GCancellable *cancellable,
-                                       GError **error);
-
-

flatpak_installation_install_ref_file has been deprecated since version 1.7.0 and should not be used in newly-written code.

-

Use flatpak_transaction_add_install_flatpakref() instead.

-
-

This is an old deprecated function, you should use -FlatpakTransaction and flatpak_transaction_add_install_flatpakref() -instead. It has a lot more interesting features.

-

Creates a remote based on the passed in .flatpakref file contents -in ref_file_data - and returns the FlatpakRemoteRef that can be used -to install it.

-

Note, the FlatpakRemoteRef will not have the commit field set, or other details, to -avoid unnecessary roundtrips. If you need that you have to resolve it -explicitly with flatpak_installation_fetch_remote_ref_sync().

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

ref_file_data

The ref file contents

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a FlatpakRemoteRef if the remote has been added successfully, NULL -on error.

-

[transfer full]

-
-

Since: 0.6.10

-
-
-
-

flatpak_installation_drop_caches ()

-
gboolean
-flatpak_installation_drop_caches (FlatpakInstallation *self,
-                                  GCancellable *cancellable,
-                                  GError **error);
-

Drops all internal (in-memory) caches. For instance, this may be needed to pick up new or changed -remotes configured outside this installation instance.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success, FALSE on error

-
-
-
-
-

flatpak_installation_add_remote ()

-
gboolean
-flatpak_installation_add_remote (FlatpakInstallation *self,
-                                 FlatpakRemote *remote,
-                                 gboolean if_needed,
-                                 GCancellable *cancellable,
-                                 GError **error);
-

Adds a new remote - object to the set of remotes. This is similar -to flatpak_installation_modify_remote() for non-existing remote -names. However, if the named remote already exists then instead of -modifying it it fails with FLATPAK_ERROR_ALREADY_INSTALLED, or if -if_needed - is true it silently succeeds without doing anything.

-

As an exception to the last, if the local config has a filter defined, -but the new remote unsets the filter (for example, it comes from an -unfiltered .flatpakref via flatpak_remote_new_from_file()) the the local -remote filter gets reset. This is to allow the setup where there is a -default setup of a filtered remote, yet you can still use the standard -flatpakref file to get the full contents without getting two remotes.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote

the new FlatpakRemote

 

if_needed

if TRUE, only add if it doesn't exists

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE if the modifications have been committed successfully

-
-

Since: 1.3.4

-
-
-
-

flatpak_installation_modify_remote ()

-
gboolean
-flatpak_installation_modify_remote (FlatpakInstallation *self,
-                                    FlatpakRemote *remote,
-                                    GCancellable *cancellable,
-                                    GError **error);
-

Saves changes in the remote - object.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote

the modified FlatpakRemote

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE if the modifications have been committed successfully

-
-
-
-
-

flatpak_installation_remove_remote ()

-
gboolean
-flatpak_installation_remove_remote (FlatpakInstallation *self,
-                                    const char *name,
-                                    GCancellable *cancellable,
-                                    GError **error);
-

Removes the remote with the given name from the installation.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

name

the name of the remote to remove

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE if the remote has been removed successfully

-
-
-
-
-

flatpak_installation_update_remote_sync ()

-
gboolean
-flatpak_installation_update_remote_sync
-                               (FlatpakInstallation *self,
-                                const char *name,
-                                GCancellable *cancellable,
-                                GError **error);
-

Updates the local configuration of a remote repository by fetching -the related information from the summary file in the remote OSTree -repository and committing the changes to the local installation.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

name

the name of the remote to update

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE if the remote has been updated successfully

-
-

Since: 0.6.13

-
-
-
-

flatpak_installation_cleanup_local_refs_sync ()

-
gboolean
-flatpak_installation_cleanup_local_refs_sync
-                               (FlatpakInstallation *self,
-                                GCancellable *cancellable,
-                                GError **error);
-

Remove all OSTree refs from the local flatpak repository which are not -in a deployed state. The next time the underlying OSTree repo is pruned, -objects which were attached to that ref will be removed. This is useful if -you pulled a flatpak refs using flatpak_installation_install_full() and -specified FLATPAK_INSTALL_FLAGS_NO_DEPLOY but then decided not to -deploy the refs later on and want to remove the local refs to prevent them -from taking up disk space. Note that this will not remove the objects -referred to by ref - from the underlying OSTree repo, you should use -flatpak_installation_prune_local_repo() to do that.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success

-
-

Since: 0.10.0

-
-
-
-

flatpak_installation_get_config ()

-
char *
-flatpak_installation_get_config (FlatpakInstallation *self,
-                                 const char *key,
-                                 GCancellable *cancellable,
-                                 GError **error);
-

Get a global configuration option for the installation, see -flatpak_installation_set_config_sync() for supported keys.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

key

the name of the key to get

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

The (newly allocated) value, or NULL on error (G_KEY_FILE_ERROR_KEY_NOT_FOUND error if key is not set)

-
-
-
-
-

flatpak_installation_get_default_languages ()

-
char **
-flatpak_installation_get_default_languages
-                               (FlatpakInstallation *self,
-                                GError **error);
-

Get the default languages used by the installation to decide which -subpaths to install of locale extensions. This list may also be used -by frontends like GNOME Software to decide which language-specific apps -to display. An empty array means that all languages should be installed.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakInstallation

 

error

return location for a GError

 
-
-
-

Returns

-

A possibly empty array of strings, or NULL on error.

-

[array zero-terminated=1][element-type utf8][transfer full]

-
-

Since: 1.5.0

-
-
-
-

flatpak_installation_get_default_locales ()

-
char **
-flatpak_installation_get_default_locales
-                               (FlatpakInstallation *self,
-                                GError **error);
-

Like flatpak_installation_get_default_languages() but includes territory -information (e.g. en_US rather than en) which may be included in the -extra-languages configuration.

-

Strings returned by this function are in the format specified by -setlocale(): language[_territory][.codeset][@modifier].

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakInstallation

 

error

return location for a GError

 
-
-
-

Returns

-

A possibly empty array of locale strings, or NULL on error.

-

[array zero-terminated=1][element-type utf8][transfer full]

-
-

Since: 1.5.1

-
-
-
-

flatpak_installation_prune_local_repo ()

-
gboolean
-flatpak_installation_prune_local_repo (FlatpakInstallation *self,
-                                       GCancellable *cancellable,
-                                       GError **error);
-

Remove all orphaned OSTree objects from the underlying OSTree repo in -self -.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success

-
-

Since: 0.10.0

-
-
-
-

flatpak_installation_remove_local_ref_sync ()

-
gboolean
-flatpak_installation_remove_local_ref_sync
-                               (FlatpakInstallation *self,
-                                const char *remote_name,
-                                const char *ref,
-                                GCancellable *cancellable,
-                                GError **error);
-

Remove the OSTree ref given by remote_name -:ref - from the local flatpak -repository. The next time the underlying OSTree repo is pruned, objects -which were attached to that ref will be removed. This is useful if you -pulled a flatpak ref using flatpak_installation_install_full() and -specified FLATPAK_INSTALL_FLAGS_NO_DEPLOY but then decided not to -deploy the ref later on and want to remove the local ref to prevent it -from taking up disk space. Note that this will not remove the objects -referred to by ref - from the underlying OSTree repo, you should use -flatpak_installation_prune_local_repo() to do that.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote_name

the name of the remote

 

ref

the ref

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success

-
-

Since: 0.10.0

-
-
-
-

flatpak_installation_set_config_sync ()

-
gboolean
-flatpak_installation_set_config_sync (FlatpakInstallation *self,
-                                      const char *key,
-                                      const char *value,
-                                      GCancellable *cancellable,
-                                      GError **error);
-

Set a global configuration option for the installation, currently -the only supported keys are languages, which is a semicolon-separated -list of language codes like "sv;en;pl", or "" to mean all languages, -and extra-languages, which is a semicolon-separated list of locale -identifiers like "en;en_DK;zh_HK.big5hkscs;uz_UZ.utf8@cyrillic".

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

key

the name of the key to set

 

value

the new value, or NULL to unset

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE if the option was set correctly

-
-
-
-
-

flatpak_installation_update_appstream_full_sync ()

-
gboolean
-flatpak_installation_update_appstream_full_sync
-                               (FlatpakInstallation *self,
-                                const char *remote_name,
-                                const char *arch,
-                                FlatpakProgressCallback progress,
-                                gpointer progress_data,
-                                gboolean *out_changed,
-                                GCancellable *cancellable,
-                                GError **error);
-

Updates the local copy of appstream for remote_name - for the specified arch -.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

remote_name

the name of the remote

 

arch

Architecture to update, or NULL for the local machine arch.

[nullable]

progress

progress callback.

[scope call][nullable]

progress_data

user data passed to progress -.

[closure progress][nullable]

out_changed

Set to TRUE if the contents of the appstream changed, FALSE if nothing changed.

[nullable]

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success, or FALSE on error

-
-
-
-
-

flatpak_installation_run_triggers ()

-
gboolean
-flatpak_installation_run_triggers (FlatpakInstallation *self,
-                                   GCancellable *cancellable,
-                                   GError **error);
-

Run the trigger commands to update the files exported by the apps in -self -. Should be used after one or more app install, upgrade or -uninstall operations with the FLATPAK_INSTALL_FLAGS_NO_TRIGGERS, -FLATPAK_UPDATE_FLAGS_NO_TRIGGERS or FLATPAK_UNINSTALL_FLAGS_NO_TRIGGERS -flags set.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

self

a FlatpakInstallation

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success

-
-

Since: 1.0.3

-
-
-
-

flatpak_get_default_arch ()

-
const char *
-flatpak_get_default_arch (void);
-

Returns the canonical name for the arch of the current machine.

-
-

Returns

-

an arch string

-
-
-
-
-

flatpak_get_supported_arches ()

-
const char *const *
-flatpak_get_supported_arches (void);
-

Returns the canonical names for the arches that are supported (i.e. can run) -on the current machine, in order of priority (default is first).

-
-

Returns

-

a zero terminated array of arch strings

-
-
-
-
-

flatpak_get_system_installations ()

-
GPtrArray *
-flatpak_get_system_installations (GCancellable *cancellable,
-                                  GError **error);
-

Lists the system installations according to the current configuration and current -availability (e.g. doesn't return a configured installation if not reachable).

-
-

Parameters

-
----- - - - - - - - - - - - - -

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a GPtrArray of -FlatpakInstallation instances.

-

[transfer container][element-type FlatpakInstallation]

-
-

Since: 0.8

-
-
-
-

FlatpakProgressCallback ()

-
void
-(*FlatpakProgressCallback) (const char *status,
-                            guint progress,
-                            gboolean estimating,
-                            gpointer user_data);
-

The progress callback is called repeatedly during long-running operations -such as installations or updates, and can be used to update progress information -in a user interface.

-

The callback occurs in the thread-default context of the caller.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

status

A status string, suitable for display

 

progress

percentage of completion

 

estimating

whether progress -is just an estimate

 

user_data

User data passed to the caller

 
-
-
-
-
-

Types and Values

-
-

struct FlatpakInstallation

-
struct FlatpakInstallation;
-
-
-
-

enum FlatpakQueryFlags

-

Flags to alter the behavior of e.g flatpak_installation_list_remote_refs_sync_full().

-
-

Members

-
----- - - - - - - - - - - - - - - - - - - - - - - -

FLATPAK_QUERY_FLAGS_NONE

-

Default

-
 

FLATPAK_QUERY_FLAGS_ONLY_CACHED

-

Don't do any network i/o, but only return cached data. -This can return stale data, or a FLATPAK_ERROR_NOT_CACHED error, however it is a -lot more efficient if you're doing many requests.

-
 

FLATPAK_QUERY_FLAGS_ONLY_SIDELOADED

-

Only list refs available from sideload -repos; see flatpak(1). (Since: 1.7)

-
 

FLATPAK_QUERY_FLAGS_ALL_ARCHES

-

Include refs from all arches, not just the primary ones. (Since: 1.11.2)

-
 
-
-

Since: 1.3.3

-
-
-
-

enum FlatpakUpdateFlags

-

Flags to alter the behavior of flatpak_installation_update().

-
-

Members

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

FLATPAK_UPDATE_FLAGS_NONE

-

Fetch remote builds and install the latest one (default)

-
 

FLATPAK_UPDATE_FLAGS_NO_DEPLOY

-

Don't install any new builds that might be fetched

-
 

FLATPAK_UPDATE_FLAGS_NO_PULL

-

Don't try to fetch new builds from the remote repo

-
 

FLATPAK_UPDATE_FLAGS_NO_STATIC_DELTAS

-

Don't use static deltas when pulling

-
 

FLATPAK_UPDATE_FLAGS_NO_PRUNE

-

Don't prune the local OSTree repository after updating (Since: 0.11.8)

-
 

FLATPAK_UPDATE_FLAGS_NO_TRIGGERS

-

Don't call triggers after updating. If used, -the caller must later call flatpak_installation_run_triggers() to update -the exported files. (Since: 1.0.3)

-
 
-
-
-
-
-

enum FlatpakInstallFlags

-

Flags to alter the behavior of flatpak_installation_install_full().

-
-

Members

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

FLATPAK_INSTALL_FLAGS_NONE

-

Default

-
 

FLATPAK_INSTALL_FLAGS_NO_STATIC_DELTAS

-

Don't use static deltas when pulling

-
 

FLATPAK_INSTALL_FLAGS_NO_DEPLOY

-

Don't install any new builds that might be fetched

-
 

FLATPAK_INSTALL_FLAGS_NO_PULL

-

Don't try to fetch new builds from the remote repo

-
 

FLATPAK_INSTALL_FLAGS_NO_TRIGGERS

-

Don't call triggers after installing. If used, -the caller must later call flatpak_installation_run_triggers() to update -the exported files. (Since: 1.0.3)

-
 
-
-
-
-
-

enum FlatpakUninstallFlags

-

Flags to alter the behavior of flatpak_installation_uninstall_full().

-
-

Members

-
----- - - - - - - - - - - - - - - - - - -

FLATPAK_UNINSTALL_FLAGS_NONE

-

Default

-
 

FLATPAK_UNINSTALL_FLAGS_NO_PRUNE

-

Don't prune the local OSTree repository after uninstalling

-
 

FLATPAK_UNINSTALL_FLAGS_NO_TRIGGERS

-

Don't call triggers after uninstalling. If used, -the caller must later call flatpak_installation_run_triggers() to update -the exported file. (Since: 1.0.3)

-
 
-
-

Since: 0.11.8

-
-
-
-

enum FlatpakLaunchFlags

-

Flags to alter the behavior of flatpak_installation_launch_full().

-
-

Members

-
----- - - - - - - - - - - - - -

FLATPAK_LAUNCH_FLAGS_NONE

-

Default

-
 

FLATPAK_LAUNCH_FLAGS_DO_NOT_REAP

-

Do not reap the child. Use this if you want to wait -for the child with g_child_watch_add(). (Since: 1.1)

-
 
-
-
-
-
-

enum FlatpakStorageType

-

Information about the storage of an installation.

-
-

Members

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

FLATPAK_STORAGE_TYPE_DEFAULT

-

default

-
 

FLATPAK_STORAGE_TYPE_HARD_DISK

-

installation is on a hard disk

-
 

FLATPAK_STORAGE_TYPE_SDCARD

-

installation is on a SD card

-
 

FLATPAK_STORAGE_TYPE_MMC

-

installation is on an MMC

-
 

FLATPAK_STORAGE_TYPE_NETWORK

-

installation is on the network

-
 
-
-

Since: 0.6.15

-
-
-
-

See Also

-

FlatpakTransaction

-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/FlatpakInstalledRef.html b/doc/reference/html/FlatpakInstalledRef.html deleted file mode 100644 index 7f219dd..0000000 --- a/doc/reference/html/FlatpakInstalledRef.html +++ /dev/null @@ -1,906 +0,0 @@ - - - - -FlatpakInstalledRef: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

FlatpakInstalledRef

-

FlatpakInstalledRef — Installed application reference

-
-
-

Functions

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
const char * - -flatpak_installed_ref_get_deploy_dir () -
-guint64 - -flatpak_installed_ref_get_installed_size () -
-gboolean - -flatpak_installed_ref_get_is_current () -
const char * - -flatpak_installed_ref_get_latest_commit () -
const char * - -flatpak_installed_ref_get_origin () -
-GBytes * - -flatpak_installed_ref_load_appdata () -
-GBytes * - -flatpak_installed_ref_load_metadata () -
const char * - -flatpak_installed_ref_get_appdata_license () -
const char * - -flatpak_installed_ref_get_appdata_name () -
const char * - -flatpak_installed_ref_get_appdata_summary () -
const char * - -flatpak_installed_ref_get_appdata_version () -
-GHashTable * - -flatpak_installed_ref_get_appdata_content_rating () -
const char * - -flatpak_installed_ref_get_appdata_content_rating_type () -
const char * const * - -flatpak_installed_ref_get_subpaths () -
const char * - -flatpak_installed_ref_get_eol () -
const char * - -flatpak_installed_ref_get_eol_rebase () -
-
-
-

Properties

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-GHashTable *appdata-content-ratingRead / Write / Construct Only
-char *appdata-content-rating-typeRead / Write / Construct Only
-char *appdata-licenseRead / Write / Construct Only
-char *appdata-nameRead / Write / Construct Only
-char *appdata-summaryRead / Write / Construct Only
-char *appdata-versionRead / Write / Construct Only
-char *deploy-dirRead / Write
-char *end-of-lifeRead / Write / Construct Only
-char *end-of-life-rebaseRead / Write / Construct Only
guint64installed-sizeRead / Write
gbooleanis-currentRead / Write
-char *latest-commitRead / Write
-char *originRead / Write
GStrvsubpathsRead / Write
-
-
-

Types and Values

-
---- - - - - -
structFlatpakInstalledRef
-
-
-

Object Hierarchy

-
    GObject
-    ╰── FlatpakRef
-        ╰── FlatpakInstalledRef
-
-
-
-

Description

-

A FlatpakInstalledRef provides information about an installed -application or runtime (in short: ref), such as the available -builds, its size, location, etc.

-
-
-

Functions

-
-

flatpak_installed_ref_get_deploy_dir ()

-
const char *
-flatpak_installed_ref_get_deploy_dir (FlatpakInstalledRef *self);
-

Gets the deploy dir of the ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

the deploy dir.

-

[transfer none]

-
-
-
-
-

flatpak_installed_ref_get_installed_size ()

-
guint64
-flatpak_installed_ref_get_installed_size
-                               (FlatpakInstalledRef *self);
-

Returns the installed size of the ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

the installed size

-
-
-
-
-

flatpak_installed_ref_get_is_current ()

-
gboolean
-flatpak_installed_ref_get_is_current (FlatpakInstalledRef *self);
-

Returns whether the ref is current.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

TRUE if the ref is current

-
-
-
-
-

flatpak_installed_ref_get_latest_commit ()

-
const char *
-flatpak_installed_ref_get_latest_commit
-                               (FlatpakInstalledRef *self);
-

Gets the latest commit of the ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

the latest commit.

-

[transfer none][nullable]

-
-
-
-
-

flatpak_installed_ref_get_origin ()

-
const char *
-flatpak_installed_ref_get_origin (FlatpakInstalledRef *self);
-

Gets the origin of the ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

the origin.

-

[transfer none]

-
-
-
-
-

flatpak_installed_ref_load_appdata ()

-
GBytes *
-flatpak_installed_ref_load_appdata (FlatpakInstalledRef *self,
-                                    GCancellable *cancellable,
-                                    GError **error);
-

Loads the compressed xml appdata for this ref (if it exists).

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

self

a FlatpakInstalledRef

 

cancellable

a GCancellable.

[nullable]

error

a return location for a GError

 
-
-
-

Returns

-

a GBytes containing the compressed appdata file, -or NULL if an error occurred.

-

[transfer full]

-
-

Since: 1.1.2

-
-
-
-

flatpak_installed_ref_load_metadata ()

-
GBytes *
-flatpak_installed_ref_load_metadata (FlatpakInstalledRef *self,
-                                     GCancellable *cancellable,
-                                     GError **error);
-

Loads the metadata file for this ref.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

self

a FlatpakInstalledRef

 

cancellable

a GCancellable.

[nullable]

error

a return location for a GError

 
-
-
-

Returns

-

a GBytes containing the metadata file, -or NULL if an error occurred.

-

[transfer full]

-
-
-
-
-

flatpak_installed_ref_get_appdata_license ()

-
const char *
-flatpak_installed_ref_get_appdata_license
-                               (FlatpakInstalledRef *self);
-

Returns the license field from the appdata.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

the license or NULL.

-

[transfer none]

-
-

Since: 1.1.2

-
-
-
-

flatpak_installed_ref_get_appdata_name ()

-
const char *
-flatpak_installed_ref_get_appdata_name
-                               (FlatpakInstalledRef *self);
-

Returns the name field from the appdata.

-

The returned string is localized.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

the name or NULL.

-

[transfer none]

-
-

Since: 1.1.2

-
-
-
-

flatpak_installed_ref_get_appdata_summary ()

-
const char *
-flatpak_installed_ref_get_appdata_summary
-                               (FlatpakInstalledRef *self);
-

Returns the summary field from the appdata.

-

The returned string is localized.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

the summary or NULL.

-

[transfer none]

-
-

Since: 1.1.2

-
-
-
-

flatpak_installed_ref_get_appdata_version ()

-
const char *
-flatpak_installed_ref_get_appdata_version
-                               (FlatpakInstalledRef *self);
-

Returns the default version field from the appdata.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

the version or NULL.

-

[transfer none]

-
-

Since: 1.1.2

-
-
-
-

flatpak_installed_ref_get_appdata_content_rating ()

-
GHashTable *
-flatpak_installed_ref_get_appdata_content_rating
-                               (FlatpakInstalledRef *self);
-

Returns the content rating field from the appdata. This is a potentially -empty mapping of content rating attribute IDs to values, to be interpreted -by the semantics of the content rating type (see -flatpak_installed_ref_get_appdata_content_rating_type()).

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

the content -rating or NULL.

-

[transfer none][nullable][element-type utf8 utf8]

-
-

Since: 1.4.2

-
-
-
-

flatpak_installed_ref_get_appdata_content_rating_type ()

-
const char *
-flatpak_installed_ref_get_appdata_content_rating_type
-                               (FlatpakInstalledRef *self);
-

Returns the content rating type from the appdata. For example, oars-1.0 or -oars-1.1.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

the content rating type or NULL.

-

[transfer none][nullable]

-
-

Since: 1.4.2

-
-
-
-

flatpak_installed_ref_get_subpaths ()

-
const char * const *
-flatpak_installed_ref_get_subpaths (FlatpakInstalledRef *self);
-

Returns the subpaths that are installed, or NULL if all files installed.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

A strv, or NULL.

-

[transfer none]

-
-
-
-
-

flatpak_installed_ref_get_eol ()

-
const char *
-flatpak_installed_ref_get_eol (FlatpakInstalledRef *self);
-

Returns the end-of-life reason string, or NULL if the -ref is not end-of-lifed.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

the end-of-life reason or NULL.

-

[transfer none]

-
-
-
-
-

flatpak_installed_ref_get_eol_rebase ()

-
const char *
-flatpak_installed_ref_get_eol_rebase (FlatpakInstalledRef *self);
-

Returns the end-of-life rebased ref, or NULL if the -ref is not end-of-lifed.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstalledRef

 
-
-
-

Returns

-

the end-of-life rebased ref or NULL.

-

[transfer none]

-
-
-
-
-

Types and Values

-
-

struct FlatpakInstalledRef

-
struct FlatpakInstalledRef;
-
-
-
-

Property Details

-
-

The “appdata-content-rating” property

-
  “appdata-content-rating”   GHashTable *
-

The content rating data from the appdata.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write / Construct Only

-
-
-
-

The “appdata-content-rating-type” property

-
  “appdata-content-rating-type” char *
-

The type of the content rating data from the appdata.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
-

The “appdata-license” property

-
  “appdata-license”          char *
-

The license from the appdata.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
-

The “appdata-name” property

-
  “appdata-name”             char *
-

The localized name field from the appdata.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
-

The “appdata-summary” property

-
  “appdata-summary”          char *
-

The localized summary field from the appdata.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
-

The “appdata-version” property

-
  “appdata-version”          char *
-

The default version field from the appdata.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
-

The “deploy-dir” property

-
  “deploy-dir”               char *
-

Where the application is installed.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write

-

Default value: NULL

-
-
-
-

The “end-of-life” property

-
  “end-of-life”              char *
-

The reason for the ref to be end of life.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
-

The “end-of-life-rebase” property

-
  “end-of-life-rebase”       char *
-

The new ref for the end-of-lifed ref.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
-

The “installed-size” property

-
  “installed-size”           guint64
-

The installed size of the application.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write

-

Default value: 0

-
-
-
-

The “is-current” property

-
  “is-current”               gboolean
-

Whether the application is current.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write

-

Default value: FALSE

-
-
-
-

The “latest-commit” property

-
  “latest-commit”            char *
-

The latest commit.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write

-

Default value: NULL

-
-
-
-

The “origin” property

-
  “origin”                   char *
-

The origin.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write

-

Default value: NULL

-
-
-
-

The “subpaths” property

-
  “subpaths”                 GStrv
-

The subpaths for a partially installed ref.

-

Owner: FlatpakInstalledRef

-

Flags: Read / Write

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/FlatpakInstance.html b/doc/reference/html/FlatpakInstance.html deleted file mode 100644 index a25c5a5..0000000 --- a/doc/reference/html/FlatpakInstance.html +++ /dev/null @@ -1,503 +0,0 @@ - - - - -FlatpakInstance: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

FlatpakInstance

-

FlatpakInstance — Information about a running sandbox

-
-
-

Functions

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-GPtrArray * - -flatpak_instance_get_all () -
const char * - -flatpak_instance_get_id () -
const char * - -flatpak_instance_get_app () -
const char * - -flatpak_instance_get_arch () -
const char * - -flatpak_instance_get_branch () -
const char * - -flatpak_instance_get_commit () -
const char * - -flatpak_instance_get_runtime () -
const char * - -flatpak_instance_get_runtime_commit () -
-int - -flatpak_instance_get_pid () -
-int - -flatpak_instance_get_child_pid () -
-GKeyFile * - -flatpak_instance_get_info () -
-gboolean - -flatpak_instance_is_running () -
-
-
-

Types and Values

-
---- - - - - -
structFlatpakInstance
-
-
-

Object Hierarchy

-
    GObject
-    ╰── FlatpakInstance
-
-
-
-

Description

-

A FlatpakInstance refers to a running sandbox, and contains -some basic information about the sandbox setup, such as the -application and runtime used inside the sandbox.

-

Importantly, it also gives access to the PID of the main -processes in the sandbox.

-

One way to obtain FlatpakInstances is to use flatpak_instance_get_all(). -Another way is to use flatpak_installation_launch_full().

-

Note that process lifecycle tracking is fundamentally racy. -You have to be prepared for the sandbox and the processes -represented by a FlatpakInstance to not be around anymore.

-

The FlatpakInstance api was added in Flatpak 1.1.

-
-
-

Functions

-
-

flatpak_instance_get_all ()

-
GPtrArray *
-flatpak_instance_get_all (void);
-

Gets FlatpakInstance objects for all running sandboxes in the current session.

-
-

Returns

-

a GPtrArray of -FlatpakInstance objects.

-

[transfer full][element-type FlatpakInstance]

-
-

Since: 1.1

-
-
-
-

flatpak_instance_get_id ()

-
const char *
-flatpak_instance_get_id (FlatpakInstance *self);
-

Gets the instance ID. The ID is used by Flatpak for bookkeeping -purposes and has no further relevance.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstance

 
-
-
-

Returns

-

the instance ID

-
-

Since: 1.1

-
-
-
-

flatpak_instance_get_app ()

-
const char *
-flatpak_instance_get_app (FlatpakInstance *self);
-

Gets the application ID of the application running in the instance.

-

Note that this may return NULL for sandboxes that don't have an application.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstance

 
-
-
-

Returns

-

the application ID or NULL.

-

[nullable]

-
-

Since: 1.1

-
-
-
-

flatpak_instance_get_arch ()

-
const char *
-flatpak_instance_get_arch (FlatpakInstance *self);
-

Gets the architecture of the application running in the instance.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstance

 
-
-
-

Returns

-

the architecture

-
-

Since: 1.1

-
-
-
-

flatpak_instance_get_branch ()

-
const char *
-flatpak_instance_get_branch (FlatpakInstance *self);
-

Gets the branch of the application running in the instance.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstance

 
-
-
-

Returns

-

the architecture

-
-

Since: 1.1

-
-
-
-

flatpak_instance_get_commit ()

-
const char *
-flatpak_instance_get_commit (FlatpakInstance *self);
-

Gets the commit of the application running in the instance.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstance

 
-
-
-

Returns

-

the commit

-
-

Since: 1.1

-
-
-
-

flatpak_instance_get_runtime ()

-
const char *
-flatpak_instance_get_runtime (FlatpakInstance *self);
-

Gets the ref of the runtime used in the instance.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstance

 
-
-
-

Returns

-

the runtime ref

-
-

Since: 1.1

-
-
-
-

flatpak_instance_get_runtime_commit ()

-
const char *
-flatpak_instance_get_runtime_commit (FlatpakInstance *self);
-

Gets the commit of the runtime used in the instance.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstance

 
-
-
-

Returns

-

the runtime commit

-
-

Since: 1.1

-
-
-
-

flatpak_instance_get_pid ()

-
int
-flatpak_instance_get_pid (FlatpakInstance *self);
-

Gets the PID of the outermost process in the sandbox. This is not the -application process itself, but a bubblewrap 'babysitter' process.

-

See flatpak_instance_get_child_pid().

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstance

 
-
-
-

Returns

-

the outermost process PID

-
-

Since: 1.1

-
-
-
-

flatpak_instance_get_child_pid ()

-
int
-flatpak_instance_get_child_pid (FlatpakInstance *self);
-

Gets the PID of the application process in the sandbox.

-

See flatpak_instance_get_pid().

-

Note that this function may return 0 immediately after launching -a sandbox, for a short amount of time.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstance

 
-
-
-

Returns

-

the application process PID

-
-

Since: 1.1

-
-
-
-

flatpak_instance_get_info ()

-
GKeyFile *
-flatpak_instance_get_info (FlatpakInstance *self);
-

Gets a keyfile that holds information about the running sandbox.

-

This file is available as /.flatpak-info inside the sandbox as well.

-

The most important data in the keyfile is available with separate getters, -but there may be more information in the keyfile.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstance

 
-
-
-

Returns

-

the flatpak-info keyfile

-
-

Since: 1.1

-
-
-
-

flatpak_instance_is_running ()

-
gboolean
-flatpak_instance_is_running (FlatpakInstance *self);
-

Finds out if the sandbox represented by self - is still running.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakInstance

 
-
-
-

Returns

-

TRUE if the sandbox is still running

-
-
-
-
-

Types and Values

-
-

struct FlatpakInstance

-
struct FlatpakInstance;
-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/FlatpakRef.html b/doc/reference/html/FlatpakRef.html deleted file mode 100644 index c61b046..0000000 --- a/doc/reference/html/FlatpakRef.html +++ /dev/null @@ -1,529 +0,0 @@ - - - - -FlatpakRef: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

FlatpakRef

-

FlatpakRef — Application reference

-
-
-

Functions

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-char * - -flatpak_ref_format_ref () -
const char * - -flatpak_ref_get_arch () -
const char * - -flatpak_ref_get_branch () -
const char * - -flatpak_ref_get_collection_id () -
const char * - -flatpak_ref_get_commit () -
-FlatpakRefKind - -flatpak_ref_get_kind () -
const char * - -flatpak_ref_get_name () -
-FlatpakRef * - -flatpak_ref_parse () -
-
-
-

Properties

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-char *archRead / Write / Construct Only
-char *branchRead / Write / Construct Only
-char *collection-idRead / Write / Construct Only
-char *commitRead / Write / Construct Only
FlatpakRefKindkindRead / Write / Construct Only
-char *nameRead / Write / Construct Only
-
-
-

Types and Values

-
---- - - - - - - - - - - -
structFlatpakRef
enumFlatpakRefKind
-
-
-

Object Hierarchy

-
    GObject
-    ╰── FlatpakRef
-        ├── FlatpakBundleRef
-        ├── FlatpakInstalledRef
-        ├── FlatpakRelatedRef
-        ╰── FlatpakRemoteRef
-
-
-
-

Description

-

Currently Flatpak manages two types of binary artifacts: applications, and -runtimes. Applications contain a program that desktop users can run, while -runtimes contain only libraries and data. An FlatpakRef object (or short: ref) -can refer to either of these.

-

Both applications and runtimes are identified by a 4-tuple of strings: kind, -name, arch and branch, e.g. app/org.gnome.evince/x86_64/master. The functions -flatpak_ref_parse() and flatpak_ref_format_ref() can be used to convert -FlatpakRef objects into this string representation and back.

-

Note that the identifiers must be unique within a repo (e.g. Flathub) based -only on the name, arch, and branch 3-tuple, without regard to the kind. In -other words if app/org.gnome.evince/x86_64/master exists, -runtime/org.gnome.evince/x86_64/master must not exist. This requirement is -not enforced by libflatpak but is enforced by GNOME Software's use of -libappstream, since Appstream IDs are assumed to be unique.

-

FlatpakRef objects are immutable and can be passed freely between threads.

-

To uniquely identify a particular version of an application or runtime, you -need a commit.

-

The subclasses FlatpakInstalledRef and FlatpakRemoteRef provide more information -for artifacts that are locally installed or available from a remote repository.

-
-
-

Functions

-
-

flatpak_ref_format_ref ()

-
char *
-flatpak_ref_format_ref (FlatpakRef *self);
-

Convert an FlatpakRef object into a string representation that -can be parsed by flatpak_ref_parse().

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRef

 
-
-
-

Returns

-

string representation.

-

[transfer full]

-
-
-
-
-

flatpak_ref_get_arch ()

-
const char *
-flatpak_ref_get_arch (FlatpakRef *self);
-

Gets the arch or the ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRef

 
-
-
-

Returns

-

the arch.

-

[transfer none]

-
-
-
-
-

flatpak_ref_get_branch ()

-
const char *
-flatpak_ref_get_branch (FlatpakRef *self);
-

Gets the branch of the ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRef

 
-
-
-

Returns

-

the branch.

-

[transfer none]

-
-
-
-
-

flatpak_ref_get_collection_id ()

-
const char *
-flatpak_ref_get_collection_id (FlatpakRef *self);
-

Gets the collection ID of the ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRef

 
-
-
-

Returns

-

the collection ID.

-

[transfer none]

-
-
-
-
-

flatpak_ref_get_commit ()

-
const char *
-flatpak_ref_get_commit (FlatpakRef *self);
-

Gets the commit of the ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRef

 
-
-
-

Returns

-

the commit.

-

[transfer none]

-
-
-
-
-

flatpak_ref_get_kind ()

-
FlatpakRefKind
-flatpak_ref_get_kind (FlatpakRef *self);
-

Gets the kind of artifact that this ref refers to.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRef

 
-
-
-

Returns

-

the kind of artifact

-
-
-
-
-

flatpak_ref_get_name ()

-
const char *
-flatpak_ref_get_name (FlatpakRef *self);
-

Gets the name of the ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRef

 
-
-
-

Returns

-

the name.

-

[transfer none]

-
-
-
-
-

flatpak_ref_parse ()

-
FlatpakRef *
-flatpak_ref_parse (const char *ref,
-                   GError **error);
-

Tries to parse a full ref name and return a FlatpakRef (without a -commit set) or fail if the ref is invalid somehow.

-
-

Parameters

-
----- - - - - - - - - - - - - -

ref

A string ref name, such as "app/org.test.App/x86_64/master"

 

error

return location for a GError

 
-
-
-

Returns

-

an FlatpakRef, or NULL.

-

[transfer full]

-
-
-
-
-

Types and Values

-
-

struct FlatpakRef

-
struct FlatpakRef;
-
-
-
-

enum FlatpakRefKind

-

The kind of artifact that a FlatpakRef refers to.

-
-

Members

-
----- - - - - - - - - - - - - -

FLATPAK_REF_KIND_APP

-

An application

-
 

FLATPAK_REF_KIND_RUNTIME

-

A runtime that applications can use.

-
 
-
-
-
-
-

Property Details

-
-

The “arch” property

-
  “arch”                     char *
-

The architecture of the application or runtime.

-

Owner: FlatpakRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
-

The “branch” property

-
  “branch”                   char *
-

The branch of the application or runtime.

-

Owner: FlatpakRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
-

The “collection-id” property

-
  “collection-id”            char *
-

The collection ID.

-

Owner: FlatpakRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
-

The “commit” property

-
  “commit”                   char *
-

The commit.

-

Owner: FlatpakRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
-

The “kind” property

-
  “kind”                     FlatpakRefKind
-

The kind of artifact.

-

Owner: FlatpakRef

-

Flags: Read / Write / Construct Only

-

Default value: FLATPAK_REF_KIND_APP

-
-
-
-

The “name” property

-
  “name”                     char *
-

The name of the application or runtime.

-

Owner: FlatpakRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/FlatpakRelatedRef.html b/doc/reference/html/FlatpakRelatedRef.html deleted file mode 100644 index 7c327d0..0000000 --- a/doc/reference/html/FlatpakRelatedRef.html +++ /dev/null @@ -1,355 +0,0 @@ - - - - -FlatpakRelatedRef: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

FlatpakRelatedRef

-

FlatpakRelatedRef — Related application reference

-
-
-

Functions

-
---- - - - - - - - - - - - - - - - - - - - - - - -
-FlatpakRelatedRef * - -flatpak_related_ref_new () -
const char * const * - -flatpak_related_ref_get_subpaths () -
-gboolean - -flatpak_related_ref_should_download () -
-gboolean - -flatpak_related_ref_should_delete () -
-gboolean - -flatpak_related_ref_should_autoprune () -
-
-
-

Properties

-
----- - - - - - - - - - - - - - - - - - - - - - - -
gbooleanshould-autopruneRead / Write / Construct Only
gbooleanshould-deleteRead / Write / Construct Only
gbooleanshould-downloadRead / Write / Construct Only
GStrvsubpathsRead / Write / Construct Only
-
-
-

Types and Values

-
---- - - - - -
structFlatpakRelatedRef
-
-
-

Object Hierarchy

-
    GObject
-    ╰── FlatpakRef
-        ╰── FlatpakRelatedRef
-
-
-
-

Description

-

A FlatpakRelatedRef provides information about a ref that is related -to another ref. For instance, the local extension ref of an app.

-
-
-

Functions

-
-

flatpak_related_ref_new ()

-
FlatpakRelatedRef *
-flatpak_related_ref_new (const char *full_ref,
-                         const char *commit,
-                         char **subpaths,
-                         gboolean download,
-                         gboolean delete);
-

Creates a new FlatpakRelatedRef object.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

full_ref

a full ref to refer to

 

commit

a commit ID to refer to.

[nullable]

subpaths

a nul-terminated array of subpaths.

[nullable]

download

whether to auto-download the ref with the main ref

 

delete

whether to auto-delete the ref with the main ref

 
-
-
-

Returns

-

a new ref

-
-
-
-
-

flatpak_related_ref_get_subpaths ()

-
const char * const *
-flatpak_related_ref_get_subpaths (FlatpakRelatedRef *self);
-

Returns the subpaths that should be installed/updated for the ref. -This returns NULL if all files should be installed.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRelatedRef

 
-
-
-

Returns

-

A strv, or NULL.

-

[transfer none]

-
-

Since: 0.6.7

-
-
-
-

flatpak_related_ref_should_download ()

-
gboolean
-flatpak_related_ref_should_download (FlatpakRelatedRef *self);
-

Returns whether to auto-download the ref with the main ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRelatedRef

 
-
-
-

Returns

-

TRUE if the ref should be downloaded with the main ref.

-
-

Since: 0.6.7

-
-
-
-

flatpak_related_ref_should_delete ()

-
gboolean
-flatpak_related_ref_should_delete (FlatpakRelatedRef *self);
-

Returns whether to auto-delete the ref with the main ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRelatedRef

 
-
-
-

Returns

-

TRUE if the ref should be deleted with the main ref.

-
-

Since: 0.6.7

-
-
-
-

flatpak_related_ref_should_autoprune ()

-
gboolean
-flatpak_related_ref_should_autoprune (FlatpakRelatedRef *self);
-

Returns whether to delete when pruning unused refs.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRelatedRef

 
-
-
-

Returns

-

TRUE if the ref should be considered unused when pruning.

-
-

Since: 0.11.8

-
-
-
-

Types and Values

-
-

struct FlatpakRelatedRef

-
struct FlatpakRelatedRef;
-
-
-
-

Property Details

-
-

The “should-autoprune” property

-
  “should-autoprune”         gboolean
-

Whether to delete when pruning unused refs.

-

Owner: FlatpakRelatedRef

-

Flags: Read / Write / Construct Only

-

Default value: FALSE

-
-
-
-

The “should-delete” property

-
  “should-delete”            gboolean
-

Whether to auto-delete the ref with the main ref.

-

Owner: FlatpakRelatedRef

-

Flags: Read / Write / Construct Only

-

Default value: FALSE

-
-
-
-

The “should-download” property

-
  “should-download”          gboolean
-

Whether to auto-download the ref with the main ref.

-

Owner: FlatpakRelatedRef

-

Flags: Read / Write / Construct Only

-

Default value: FALSE

-
-
-
-

The “subpaths” property

-
  “subpaths”                 GStrv
-

The subpaths for a partially installed ref.

-

Owner: FlatpakRelatedRef

-

Flags: Read / Write / Construct Only

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/FlatpakRemote.html b/doc/reference/html/FlatpakRemote.html deleted file mode 100644 index 03615f4..0000000 --- a/doc/reference/html/FlatpakRemote.html +++ /dev/null @@ -1,1636 +0,0 @@ - - - - -FlatpakRemote: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

FlatpakRemote

-

FlatpakRemote — Remote repository

-
-
-

Functions

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-FlatpakRemote * - -flatpak_remote_new () -
-FlatpakRemote * - -flatpak_remote_new_from_file () -
const char * - -flatpak_remote_get_name () -
-GFile * - -flatpak_remote_get_appstream_dir () -
-GFile * - -flatpak_remote_get_appstream_timestamp () -
-char * - -flatpak_remote_get_collection_id () -
-void - -flatpak_remote_set_collection_id () -
-char * - -flatpak_remote_get_default_branch () -
-void - -flatpak_remote_set_default_branch () -
-gboolean - -flatpak_remote_get_gpg_verify () -
-void - -flatpak_remote_set_gpg_verify () -
-void - -flatpak_remote_set_gpg_key () -
-gboolean - -flatpak_remote_get_nodeps () -
-void - -flatpak_remote_set_nodeps () -
-gboolean - -flatpak_remote_get_noenumerate () -
-void - -flatpak_remote_set_noenumerate () -
-int - -flatpak_remote_get_prio () -
-void - -flatpak_remote_set_prio () -
-FlatpakRemoteType - -flatpak_remote_get_remote_type () -
-char * - -flatpak_remote_get_title () -
-void - -flatpak_remote_set_title () -
-char * - -flatpak_remote_get_comment () -
-void - -flatpak_remote_set_comment () -
-char * - -flatpak_remote_get_description () -
-void - -flatpak_remote_set_description () -
-char * - -flatpak_remote_get_homepage () -
-void - -flatpak_remote_set_homepage () -
-char * - -flatpak_remote_get_icon () -
-void - -flatpak_remote_set_icon () -
-char * - -flatpak_remote_get_url () -
-void - -flatpak_remote_set_url () -
-gboolean - -flatpak_remote_get_disabled () -
-void - -flatpak_remote_set_disabled () -
-char * - -flatpak_remote_get_filter () -
-void - -flatpak_remote_set_filter () -
-char * - -flatpak_remote_get_main_ref () -
-void - -flatpak_remote_set_main_ref () -
-
-
-

Properties

-
----- - - - - - - - - - - - - -
-char *nameRead / Write
FlatpakRemoteTypetypeRead / Write / Construct Only
-
-
-

Types and Values

-
---- - - - - - - - - - - -
structFlatpakRemote
enumFlatpakRemoteType
-
-
-

Object Hierarchy

-
    GObject
-    ╰── FlatpakRemote
-
-
-
-

Description

-

A FlatpakRemote object provides information about a remote -repository (or short: remote) that has been configured.

-

At its most basic level, a remote has a name and the URL for -the repository. In addition, they provide some additional -information that can be useful when presenting repositories -in a UI, such as a title, a priority or a "don't enumerate" -flags.

-

To obtain FlatpakRemote objects for the configured remotes -on a system, use flatpak_installation_list_remotes() or -flatpak_installation_get_remote_by_name().

-
-
-

Functions

-
-

flatpak_remote_new ()

-
FlatpakRemote *
-flatpak_remote_new (const char *name);
-

Returns a new remote object which can be used to configure a new remote.

-

Note: This is a local configuration object, you must commit changes -using flatpak_installation_modify_remote() or flatpak_installation_add_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - -

name

a name

 
-
-
-

Returns

-

a new FlatpakRemote.

-

[transfer full]

-
-
-
-
-

flatpak_remote_new_from_file ()

-
FlatpakRemote *
-flatpak_remote_new_from_file (const char *name,
-                              GBytes *data,
-                              GError **error);
-

Returns a new pre-filled remote object which can be used to configure a new remote. -The fields in the remote are filled in according to the values in the -passed in flatpakrepo file.

-

Note: This is a local configuration object, you must commit changes -using flatpak_installation_modify_remote() or flatpak_installation_add_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

name

a name

 

data

The content of a flatpakrepo file

 

error

return location for a GError

 
-
-
-

Returns

-

a new FlatpakRemote, or NULL on error.

-

[transfer full]

-
-

Since: 1.3.4

-
-
-
-

flatpak_remote_get_name ()

-
const char *
-flatpak_remote_get_name (FlatpakRemote *self);
-

Returns the name of the remote repository.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

the name.

-

[transfer none]

-
-
-
-
-

flatpak_remote_get_appstream_dir ()

-
GFile *
-flatpak_remote_get_appstream_dir (FlatpakRemote *self,
-                                  const char *arch);
-

Returns the directory where this remote will store locally cached -appstream information for the specified arch -.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

arch

which architecture to fetch (default: current architecture).

[nullable]
-
-
-

Returns

-

a GFile.

-

[transfer full]

-
-
-
-
-

flatpak_remote_get_appstream_timestamp ()

-
GFile *
-flatpak_remote_get_appstream_timestamp
-                               (FlatpakRemote *self,
-                                const char *arch);
-

Returns the timestamp file that will be updated whenever the appstream information -has been updated (or tried to update) for the specified arch -.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

arch

which architecture to fetch (default: current architecture).

[nullable]
-
-
-

Returns

-

a GFile.

-

[transfer full]

-
-
-
-
-

flatpak_remote_get_collection_id ()

-
char *
-flatpak_remote_get_collection_id (FlatpakRemote *self);
-

Returns the repository collection ID of this remote, if set.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

the collection ID, or NULL if unset.

-

[transfer full][nullable]

-
-
-
-
-

flatpak_remote_set_collection_id ()

-
void
-flatpak_remote_set_collection_id (FlatpakRemote *self,
-                                  const char *collection_id);
-

Sets the repository collection ID of this remote.

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

collection_id

The new collection ID, or NULL to unset.

[nullable]
-
-
-
-
-

flatpak_remote_get_default_branch ()

-
char *
-flatpak_remote_get_default_branch (FlatpakRemote *self);
-

Returns the default branch configured for the remote.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

the default branch, or NULL.

-

[transfer full]

-
-

Since: 0.6.12

-
-
-
-

flatpak_remote_set_default_branch ()

-
void
-flatpak_remote_set_default_branch (FlatpakRemote *self,
-                                   const char *default_branch);
-

Sets the default branch configured for this remote.

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

default_branch

The new default_branch, or NULL to unset

 
-
-

Since: 0.6.12

-
-
-
-

flatpak_remote_get_gpg_verify ()

-
gboolean
-flatpak_remote_get_gpg_verify (FlatpakRemote *self);
-

Returns whether GPG verification is enabled for the remote.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

whether GPG verification is enabled

-
-
-
-
-

flatpak_remote_set_gpg_verify ()

-
void
-flatpak_remote_set_gpg_verify (FlatpakRemote *self,
-                               gboolean gpg_verify);
-

Sets the gpg_verify config of this remote. See flatpak_remote_get_gpg_verify().

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

gpg_verify

a bool

 
-
-
-
-
-

flatpak_remote_set_gpg_key ()

-
void
-flatpak_remote_set_gpg_key (FlatpakRemote *self,
-                            GBytes *gpg_key);
-

Sets the trusted gpg key for this remote.

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

gpg_key

a GBytes with gpg binary key data

 
-
-
-
-
-

flatpak_remote_get_nodeps ()

-
gboolean
-flatpak_remote_get_nodeps (FlatpakRemote *self);
-

Returns whether this remote should be used to find dependencies.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

whether the remote is marked as "don't use for dependencies"

-
-
-
-
-

flatpak_remote_set_nodeps ()

-
void
-flatpak_remote_set_nodeps (FlatpakRemote *self,
-                           gboolean nodeps);
-

Sets the nodeps config of this remote. See flatpak_remote_get_nodeps().

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

nodeps

a bool

 
-
-
-
-
-

flatpak_remote_get_noenumerate ()

-
gboolean
-flatpak_remote_get_noenumerate (FlatpakRemote *self);
-

Returns whether this remote should be used to list applications.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

whether the remote is marked as "don't enumerate"

-
-
-
-
-

flatpak_remote_set_noenumerate ()

-
void
-flatpak_remote_set_noenumerate (FlatpakRemote *self,
-                                gboolean noenumerate);
-

Sets the noenumeration config of this remote. See flatpak_remote_get_noenumerate().

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

noenumerate

a bool

 
-
-
-
-
-

flatpak_remote_get_prio ()

-
int
-flatpak_remote_get_prio (FlatpakRemote *self);
-

Returns the priority for the remote.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

the priority

-
-
-
-
-

flatpak_remote_set_prio ()

-
void
-flatpak_remote_set_prio (FlatpakRemote *self,
-                         int prio);
-

Sets the prio config of this remote. See flatpak_remote_get_prio().

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

prio

a bool

 
-
-
-
-
-

flatpak_remote_get_remote_type ()

-
FlatpakRemoteType
-flatpak_remote_get_remote_type (FlatpakRemote *self);
-

Get the value of “type”.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

the type of remote this is

-
-

Since: 0.9.8

-
-
-
-

flatpak_remote_get_title ()

-
char *
-flatpak_remote_get_title (FlatpakRemote *self);
-

Returns the title of the remote.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

the title.

-

[transfer full]

-
-
-
-
-

flatpak_remote_set_title ()

-
void
-flatpak_remote_set_title (FlatpakRemote *self,
-                          const char *title);
-

Sets the repository title of this remote.

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

title

The new title, or NULL to unset

 
-
-
-
-
-

flatpak_remote_get_comment ()

-
char *
-flatpak_remote_get_comment (FlatpakRemote *self);
-

Returns the comment of the remote.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

the comment.

-

[transfer full]

-
-

Since: 1.4

-
-
-
-

flatpak_remote_set_comment ()

-
void
-flatpak_remote_set_comment (FlatpakRemote *self,
-                            const char *comment);
-

Sets the comment of this remote.

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

comment

The new comment

 
-
-

Since: 1.4

-
-
-
-

flatpak_remote_get_description ()

-
char *
-flatpak_remote_get_description (FlatpakRemote *self);
-

Returns the description of the remote.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

the description.

-

[transfer full]

-
-

Since: 1.4

-
-
-
-

flatpak_remote_set_description ()

-
void
-flatpak_remote_set_description (FlatpakRemote *self,
-                                const char *description);
-

Sets the description of this remote.

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

description

The new description

 
-
-

Since: 1.4

-
-
-
-

flatpak_remote_get_homepage ()

-
char *
-flatpak_remote_get_homepage (FlatpakRemote *self);
-

Returns the homepage url of the remote.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

the homepage url.

-

[transfer full]

-
-

Since: 1.4

-
-
-
-

flatpak_remote_set_homepage ()

-
void
-flatpak_remote_set_homepage (FlatpakRemote *self,
-                             const char *homepage);
-

Sets the homepage of this remote.

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

homepage

The new homepage

 
-
-

Since: 1.4

-
-
-
-

flatpak_remote_get_icon ()

-
char *
-flatpak_remote_get_icon (FlatpakRemote *self);
-

Returns the icon url of the remote.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

the icon url.

-

[transfer full]

-
-

Since: 1.4

-
-
-
-

flatpak_remote_set_icon ()

-
void
-flatpak_remote_set_icon (FlatpakRemote *self,
-                         const char *icon);
-

Sets the homepage of this remote.

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

icon

The new homepage

 
-
-

Since: 1.4

-
-
-
-

flatpak_remote_get_url ()

-
char *
-flatpak_remote_get_url (FlatpakRemote *self);
-

Returns the repository URL of this remote.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

the URL.

-

[transfer full]

-
-
-
-
-

flatpak_remote_set_url ()

-
void
-flatpak_remote_set_url (FlatpakRemote *self,
-                        const char *url);
-

Sets the repository URL of this remote.

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

url

The new url

 
-
-
-
-
-

flatpak_remote_get_disabled ()

-
gboolean
-flatpak_remote_get_disabled (FlatpakRemote *self);
-

Returns whether this remote is disabled.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

whether the remote is marked as disabled

-
-
-
-
-

flatpak_remote_set_disabled ()

-
void
-flatpak_remote_set_disabled (FlatpakRemote *self,
-                             gboolean disabled);
-

Sets the disabled config of this remote. See flatpak_remote_get_disabled().

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

disabled

a bool

 
-
-
-
-
-

flatpak_remote_get_filter ()

-
char *
-flatpak_remote_get_filter (FlatpakRemote *self);
-

Returns the filter file of the remote.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

a pathname to a filter file.

-

[transfer full]

-
-

Since: 1.4

-
-
-
-

flatpak_remote_set_filter ()

-
void
-flatpak_remote_set_filter (FlatpakRemote *self,
-                           const char *filter_path);
-

Sets a filter for this remote.

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

filter_path

The pathname of the new filter file

 
-
-

Since: 1.4

-
-
-
-

flatpak_remote_get_main_ref ()

-
char *
-flatpak_remote_get_main_ref (FlatpakRemote *self);
-

Returns the main ref of this remote, if set. The main ref is the ref that an -origin remote is created for.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemote

 
-
-
-

Returns

-

the main ref, or NULL.

-

[transfer full]

-
-

Since: 1.1.1

-
-
-
-

flatpak_remote_set_main_ref ()

-
void
-flatpak_remote_set_main_ref (FlatpakRemote *self,
-                             const char *main_ref);
-

Sets the main ref of this remote. The main ref is the ref that an origin -remote is created for.

-

Note: This is a local modification of this object, you must commit changes -using flatpak_installation_modify_remote() for the changes to take -effect.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakRemote

 

main_ref

The new main ref

 
-
-

Since: 1.1.1

-
-
-
-

Types and Values

-
-

struct FlatpakRemote

-
struct FlatpakRemote;
-
-
-
-

enum FlatpakRemoteType

-

Different types of FlatpakRemote -.

-
-

Members

-
----- - - - - - - - - - - - - - - - - - -

FLATPAK_REMOTE_TYPE_STATIC

-

Statically configured remote

-
 

FLATPAK_REMOTE_TYPE_USB

-

Dynamically detected local pathname remote

-
 

FLATPAK_REMOTE_TYPE_LAN

-

Dynamically detected network remote

-
 
-
-
-
-
-

Property Details

-
-

The “name” property

-
  “name”                     char *
-

Name of the remote, as used in configuration files and when interfacing -with OSTree. This is typically human readable, but could be generated, and -must conform to ostree_validate_remote_name(). It should typically not be -presented in the UI.

-

Owner: FlatpakRemote

-

Flags: Read / Write

-

Default value: NULL

-
-
-
-

The “type” property

-
  “type”                     FlatpakRemoteType
-

The type of the remote: whether it comes from static configuration files -(FLATPAK_REMOTE_TYPE_STATIC -) or has been dynamically found from the local -network or a mounted USB drive (FLATPAK_REMOTE_TYPE_LAN -, -FLATPAK_REMOTE_TYPE_USB -). Dynamic remotes may be added and removed over -time.

-

Owner: FlatpakRemote

-

Flags: Read / Write / Construct Only

-

Default value: FLATPAK_REMOTE_TYPE_STATIC

-

Since: 0.9.8

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/FlatpakRemoteRef.html b/doc/reference/html/FlatpakRemoteRef.html deleted file mode 100644 index 4414773..0000000 --- a/doc/reference/html/FlatpakRemoteRef.html +++ /dev/null @@ -1,394 +0,0 @@ - - - - -FlatpakRemoteRef: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

FlatpakRemoteRef

-

FlatpakRemoteRef — Remote application reference

-
-
-

Functions

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - -
const char * - -flatpak_remote_ref_get_remote_name () -
-guint64 - -flatpak_remote_ref_get_download_size () -
const char * - -flatpak_remote_ref_get_eol () -
const char * - -flatpak_remote_ref_get_eol_rebase () -
-guint64 - -flatpak_remote_ref_get_installed_size () -
-GBytes * - -flatpak_remote_ref_get_metadata () -
-
-
-

Properties

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
guint64download-sizeRead / Write / Construct Only
-char *end-of-lifeRead / Write / Construct Only
-char *end-of-life-rebaseRead / Write / Construct Only
guint64installed-sizeRead / Write / Construct Only
-GBytes *metadataRead / Write / Construct Only
-char *remote-nameRead / Write / Construct Only
-
-
-

Types and Values

-
---- - - - - -
structFlatpakRemoteRef
-
-
-

Object Hierarchy

-
    GObject
-    ╰── FlatpakRef
-        ╰── FlatpakRemoteRef
-
-
-
-

Description

-

A FlatpakRemoteRef provides information about an application or runtime -(in short: ref) that is available from a remote repository.

-
-
-

Functions

-
-

flatpak_remote_ref_get_remote_name ()

-
const char *
-flatpak_remote_ref_get_remote_name (FlatpakRemoteRef *self);
-

Gets the remote name of the ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemoteRef

 
-
-
-

Returns

-

the remote name.

-

[transfer none]

-
-
-
-
-

flatpak_remote_ref_get_download_size ()

-
guint64
-flatpak_remote_ref_get_download_size (FlatpakRemoteRef *self);
-

Returns the download size of the ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemoteRef

 
-
-
-

Returns

-

the download size

-
-
-
-
-

flatpak_remote_ref_get_eol ()

-
const char *
-flatpak_remote_ref_get_eol (FlatpakRemoteRef *self);
-

Returns the end-of-life reason string, or NULL if the -ref is not end-of-lifed.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemoteRef

 
-
-
-

Returns

-

the end-of-life reason or NULL.

-

[transfer none]

-
-
-
-
-

flatpak_remote_ref_get_eol_rebase ()

-
const char *
-flatpak_remote_ref_get_eol_rebase (FlatpakRemoteRef *self);
-

Returns the end-of-life rebased ref, or NULL if the -ref is not end-of-lifed.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemoteRef

 
-
-
-

Returns

-

the end-of-life rebased ref or NULL.

-

[transfer none]

-
-
-
-
-

flatpak_remote_ref_get_installed_size ()

-
guint64
-flatpak_remote_ref_get_installed_size (FlatpakRemoteRef *self);
-

Returns the installed size of the ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemoteRef

 
-
-
-

Returns

-

the installed size

-
-
-
-
-

flatpak_remote_ref_get_metadata ()

-
GBytes *
-flatpak_remote_ref_get_metadata (FlatpakRemoteRef *self);
-

Returns the app metadata from the metadata cache of the ref.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakRemoteRef

 
-
-
-

Returns

-

a GBytes with the metadata file -contents or NULL.

-

[transfer none][nullable]

-
-
-
-
-

Types and Values

-
-

struct FlatpakRemoteRef

-
struct FlatpakRemoteRef;
-
-
-
-

Property Details

-
-

The “download-size” property

-
  “download-size”            guint64
-

The download size of the application.

-

Owner: FlatpakRemoteRef

-

Flags: Read / Write / Construct Only

-

Default value: 0

-
-
-
-

The “end-of-life” property

-
  “end-of-life”              char *
-

The reason for the ref to be end of life.

-

Owner: FlatpakRemoteRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
-

The “end-of-life-rebase” property

-
  “end-of-life-rebase”       char *
-

The new ref for the end of lifeed ref.

-

Owner: FlatpakRemoteRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
-

The “installed-size” property

-
  “installed-size”           guint64
-

The installed size of the application.

-

Owner: FlatpakRemoteRef

-

Flags: Read / Write / Construct Only

-

Default value: 0

-
-
-
-

The “metadata” property

-
  “metadata”                 GBytes *
-

The metadata info for the application.

-

Owner: FlatpakRemoteRef

-

Flags: Read / Write / Construct Only

-
-
-
-

The “remote-name” property

-
  “remote-name”              char *
-

The name of the remote.

-

Owner: FlatpakRemoteRef

-

Flags: Read / Write / Construct Only

-

Default value: NULL

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/FlatpakTransaction.html b/doc/reference/html/FlatpakTransaction.html deleted file mode 100644 index b922d8d..0000000 --- a/doc/reference/html/FlatpakTransaction.html +++ /dev/null @@ -1,2345 +0,0 @@ - - - - -FlatpakTransaction: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

FlatpakTransaction

-

FlatpakTransaction — Transaction information

-
-
-

Functions

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-FlatpakTransaction * - -flatpak_transaction_new_for_installation () -
-gboolean - -flatpak_transaction_add_install () -
-gboolean - -flatpak_transaction_add_install_bundle () -
-gboolean - -flatpak_transaction_add_install_flatpakref () -
-gboolean - -flatpak_transaction_add_rebase () -
-gboolean - -flatpak_transaction_add_update () -
-gboolean - -flatpak_transaction_add_uninstall () -
-void - -flatpak_transaction_add_default_dependency_sources () -
-void - -flatpak_transaction_add_dependency_source () -
-gboolean - -flatpak_transaction_run () -
-FlatpakTransactionOperation * - -flatpak_transaction_get_current_operation () -
-FlatpakInstallation * - -flatpak_transaction_get_installation () -
-GList * - -flatpak_transaction_get_operations () -
-gboolean - -flatpak_transaction_is_empty () -
-void - -flatpak_transaction_set_disable_dependencies () -
-void - -flatpak_transaction_set_disable_prune () -
-void - -flatpak_transaction_set_disable_related () -
-void - -flatpak_transaction_set_disable_static_deltas () -
-void - -flatpak_transaction_set_no_deploy () -
-gboolean - -flatpak_transaction_get_no_deploy () -
-void - -flatpak_transaction_set_no_pull () -
-gboolean - -flatpak_transaction_get_no_pull () -
-void - -flatpak_transaction_set_reinstall () -
-void - -flatpak_transaction_set_force_uninstall () -
-void - -flatpak_transaction_set_default_arch () -
-void - -flatpak_transaction_set_parent_window () -
const char * - -flatpak_transaction_get_parent_window () -
-void - -flatpak_transaction_abort_webflow () -
-
-
-

Properties

-
----- - - - - - - - - - - - - -
-FlatpakInstallation *installationRead / Write / Construct Only
gbooleanno-interactionRead / Write
-
-
-

Signals

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
gbooleanadd-new-remoteRun Last
gbooleanbasic-auth-startRun Last
intchoose-remote-for-refRun Last
voidend-of-lifedRun Last
gbooleanend-of-lifed-with-rebaseRun Last
voidinstall-authenticatorRun Last
voidnew-operationRun Last
voidoperation-doneRun Last
gbooleanoperation-errorRun Last
gbooleanreadyRun Last
gbooleanready-pre-authRun Last
voidwebflow-doneRun Last
gbooleanwebflow-startRun Last
-
-
-

Types and Values

- -
-
-

Object Hierarchy

-
    GObject
-    ╰── FlatpakTransaction
-
-
-
-

Implemented Interfaces

-

-FlatpakTransaction implements - GInitable.

-
-
-

Description

-

FlatpakTransaction is an object representing an install/update/uninstall -transaction. You create an object like this using flatpak_transaction_new_for_installation() -and then you add all the operations (installs, updates, etc) you wish to do. Then -you start the transaction with flatpak_transaction_run() which will resolve all kinds -of dependencies and report progress and status while downloading and installing these.

-

The dependency resolution that is the first step of executing a transaction can -be influenced by flatpak_transaction_set_disable_dependencies(), -flatpak_transaction_set_disable_related(), flatpak_transaction_add_dependency_source() -and flatpak_transaction_add_default_dependency_sources().

-

The underlying operations that get orchestrated by a FlatpakTransaction are: pulling -new data from remote repositories, deploying newer applications or runtimes and pruning -old deployments. Which of these operations are carried out can be controlled with -flatpak_transaction_set_no_pull(), flatpak_transaction_set_no_deploy() and -flatpak_transaction_set_disable_prune().

-

A transaction is a blocking operation, and all signals are emitted in the same thread. -This means you should either handle the signals directly (say, by doing blocking console -interaction, or by just returning without interaction), or run the operation in a separate -thread and do your own forwarding to the GUI thread.

-

Despite the name, a FlatpakTransaction is more like a batch operation than a transaction -in the database sense. Individual operations are carried out sequentially, and are atomic. -They become visible to the system as they are completed. When an error occurs, already -completed operations are not rolled back.

-

For each operation that is executed during a transaction, you first get a -“new-operation” signal, followed by either a -“operation-done” or “operation-error”.

-

The FlatpakTransaction API is threadsafe in the sense that it is safe to run two -transactions at the same time, in different threads (or processes).

-

Note: Transactions (or any other install/update operation) to a -system installation rely on the ability to create files that are readable -by other users. Some users set a umask that prohibits this. Unfortunately -there is no good way to work around this in a threadsafe, local way, so -such setups will break by default. The flatpak commandline app works -around this by calling umask(022) in the early setup, and it is recommended -that other apps using libflatpak do this too.

-
-
-

Functions

-
-

flatpak_transaction_new_for_installation ()

-
FlatpakTransaction *
-flatpak_transaction_new_for_installation
-                               (FlatpakInstallation *installation,
-                                GCancellable *cancellable,
-                                GError **error);
-

Creates a new FlatpakTransaction object that can be used to do installation -and updates of multiple refs, as well as their dependencies, in a single -operation. Set the options you want on the transaction and add the -refs you want to install/update, then start the transaction with -flatpak_transaction_run().

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

installation

a FlatpakInstallation

 

cancellable

a GCancellable.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

a FlatpakTransaction, or NULL on failure.

-

[transfer full]

-
-
-
-
-

flatpak_transaction_add_install ()

-
gboolean
-flatpak_transaction_add_install (FlatpakTransaction *self,
-                                 const char *remote,
-                                 const char *ref,
-                                 const char **subpaths,
-                                 GError **error);
-

Adds installing the given ref to this transaction.

-

The remote - can either be a configured remote of the installation, -or a file:// uri pointing at a local repository to install from, -in which case an origin remote is created.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakTransaction

 

remote

the name of the remote

 

ref

the ref

 

subpaths

subpaths to install, or the -empty list or NULL to pull all subpaths.

[nullable][array zero-terminated=1]

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success; FALSE with error -set on failure.

-
-
-
-
-

flatpak_transaction_add_install_bundle ()

-
gboolean
-flatpak_transaction_add_install_bundle
-                               (FlatpakTransaction *self,
-                                GFile *file,
-                                GBytes *gpg_data,
-                                GError **error);
-

Adds installing the given bundle to this transaction.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakTransaction

 

file

a GFile that is an flatpak bundle

 

gpg_data

GPG key with which to check bundle signatures, or -NULL to use the key embedded in the bundle (if any).

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success; FALSE with error -set on failure.

-
-
-
-
-

flatpak_transaction_add_install_flatpakref ()

-
gboolean
-flatpak_transaction_add_install_flatpakref
-                               (FlatpakTransaction *self,
-                                GBytes *flatpakref_data,
-                                GError **error);
-

Adds installing the given flatpakref to this transaction.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

self

a FlatpakTransaction

 

flatpakref_data

data from a flatpakref file

 

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success; FALSE with error -set on failure.

-
-
-
-
-

flatpak_transaction_add_rebase ()

-
gboolean
-flatpak_transaction_add_rebase (FlatpakTransaction *self,
-                                const char *remote,
-                                const char *ref,
-                                const char **subpaths,
-                                const char **previous_ids,
-                                GError **error);
-

Adds updating the previous_ids - of the given ref to this transaction, via either -installing the ref - if it was not already present or updating it. This will -treat ref - as the result of following an eol-rebase, and data migration from -the refs in previous_ids - will be set up.

-

See flatpak_transaction_add_install() for a description of remote -.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakTransaction

 

remote

the name of the remote

 

ref

the ref

 

subpaths

the subpaths to include, or NULL to install the complete ref.

[nullable]

previous_ids

Previous ids to add to the -given ref. These should simply be the ids, not the full ref names (e.g. org.foo.Bar, -not org.foo.Bar/x86_64/master).

[nullable][array zero-terminated=1]

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success; FALSE with error -set on failure.

-
-

Since: 1.3.3.

-
-
-
-

flatpak_transaction_add_update ()

-
gboolean
-flatpak_transaction_add_update (FlatpakTransaction *self,
-                                const char *ref,
-                                const char **subpaths,
-                                const char *commit,
-                                GError **error);
-

Adds updating the given ref to this transaction.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

self

a FlatpakTransaction

 

ref

the ref

 

subpaths

subpaths to install; NULL -to use the current set plus the set of configured languages, or -{ NULL } or { "", NULL } to pull all subpaths.

[nullable][array zero-terminated=1]

commit

the commit to update to, or NULL to use the latest.

[nullable]

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success; FALSE with error -set on failure.

-
-
-
-
-

flatpak_transaction_add_uninstall ()

-
gboolean
-flatpak_transaction_add_uninstall (FlatpakTransaction *self,
-                                   const char *ref,
-                                   GError **error);
-

Adds uninstalling the given ref to this transaction. If the transaction is -set to not deploy updates, the request is ignored.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

self

a FlatpakTransaction

 

ref

the ref

 

error

return location for a GError

 
-
-
-

Returns

-

TRUE on success; FALSE with error -set on failure.

-
-
-
-
-

flatpak_transaction_add_default_dependency_sources ()

-
void
-flatpak_transaction_add_default_dependency_sources
-                               (FlatpakTransaction *self);
-

Similar to flatpak_transaction_add_dependency_source(), but adds -all the default installations, which means all the defined system-wide -(but not per-user) installations.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransaction

 
-
-
-
-
-

flatpak_transaction_add_dependency_source ()

-
void
-flatpak_transaction_add_dependency_source
-                               (FlatpakTransaction *self,
-                                FlatpakInstallation *installation);
-

Adds an extra installation as a source for application dependencies. -This means that applications can be installed in this transaction relying -on runtimes from this additional installation (whereas it would normally -install required runtimes that are not installed in the installation -the transaction works on).

-

Also see flatpak_transaction_add_default_dependency_sources().

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakTransaction

 

installation

a FlatpakInstallation

 
-
-
-
-
-

flatpak_transaction_run ()

-
gboolean
-flatpak_transaction_run (FlatpakTransaction *transaction,
-                         GCancellable *cancellable,
-                         GError **error);
-

Executes the transaction.

-

During the course of the execution, various signals will get emitted. -The FlatpakTransaction::choose-remote-for-ref and -“add-new-remote” signals may get emitted while -resolving operations. “ready” is emitted when -the transaction has been fully resolved, and “new-operation” -and “operation-done” are emitted while the operations -are carried out. If an error occurs at any point during the execution, -“operation-error” is emitted.

-

Note that this call blocks until the transaction is done.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

transaction

a FlatpakTransaction

 

cancellable

a GCancellable.

[nullable]

error

return location for an error

 
-
-
-

Returns

-

TRUE on success, FALSE if an error occurred

-
-
-
-
-

flatpak_transaction_get_current_operation ()

-
FlatpakTransactionOperation *
-flatpak_transaction_get_current_operation
-                               (FlatpakTransaction *self);
-

Gets the current operation.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransaction

 
-
-
-

Returns

-

the current FlatpakTransactionOperation.

-

[transfer full]

-
-
-
-
-

flatpak_transaction_get_installation ()

-
FlatpakInstallation *
-flatpak_transaction_get_installation (FlatpakTransaction *self);
-

Gets the installation this transaction was created for.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransactionOperation

 
-
-
-

Returns

-

a FlatpakInstallation.

-

[transfer full]

-
-
-
-
-

flatpak_transaction_get_operations ()

-
GList *
-flatpak_transaction_get_operations (FlatpakTransaction *self);
-

Gets the list of operations. Skipped operations are not included. The order -of the list is the order in which the operations are executed.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransaction

 
-
-
-

Returns

-

a GList of operations.

-

[transfer full][element-type FlatpakTransactionOperation]

-
-
-
-
-

flatpak_transaction_is_empty ()

-
gboolean
-flatpak_transaction_is_empty (FlatpakTransaction *self);
-

Returns whether the transaction contains any non-skipped operations.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransaction

 
-
-
-

Returns

-

TRUE if the transaction is empty

-
-
-
-
-

flatpak_transaction_set_disable_dependencies ()

-
void
-flatpak_transaction_set_disable_dependencies
-                               (FlatpakTransaction *self,
-                                gboolean disable_dependencies);
-

Sets whether the transaction should ignore runtime dependencies -when resolving operations for applications.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakTransaction

 

disable_dependencies

whether to disable runtime dependencies

 
-
-
-
-
-

flatpak_transaction_set_disable_prune ()

-
void
-flatpak_transaction_set_disable_prune (FlatpakTransaction *self,
-                                       gboolean disable_prune);
-

Sets whether the transaction should avoid pruning the local OSTree -repository after updating.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakTransaction

 

disable_prune

whether to avoid pruning

 
-
-
-
-
-

flatpak_transaction_set_disable_related ()

-
void
-flatpak_transaction_set_disable_related
-                               (FlatpakTransaction *self,
-                                gboolean disable_related);
-

Sets whether the transaction should avoid adding related refs -when resolving operations. Related refs are extensions that are -suggested by apps, such as locales.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakTransaction

 

disable_related

whether to avoid adding related refs

 
-
-
-
-
-

flatpak_transaction_set_disable_static_deltas ()

-
void
-flatpak_transaction_set_disable_static_deltas
-                               (FlatpakTransaction *self,
-                                gboolean disable_static_deltas);
-

Sets whether the transaction should avoid using static -deltas when pulling.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakTransaction

 

disable_static_deltas

whether to avoid static deltas

 
-
-
-
-
-

flatpak_transaction_set_no_deploy ()

-
void
-flatpak_transaction_set_no_deploy (FlatpakTransaction *self,
-                                   gboolean no_deploy);
-

Sets whether the transaction should download updates, but -not deploy them.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakTransaction

 

no_deploy

whether to avoid deploying

 
-
-
-
-
-

flatpak_transaction_get_no_deploy ()

-
gboolean
-flatpak_transaction_get_no_deploy (FlatpakTransaction *self);
-

Gets whether the transaction is only downloading updates, -and not deploying them.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransaction

 
-
-
-

Returns

-

TRUE if no_deploy is set, FALSE otherwise

-
-

Since: 1.5.1

-
-
-
-

flatpak_transaction_set_no_pull ()

-
void
-flatpak_transaction_set_no_pull (FlatpakTransaction *self,
-                                 gboolean no_pull);
-

Sets whether the transaction should operate only on locally -available data.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakTransaction

 

no_pull

whether to avoid pulls

 
-
-
-
-
-

flatpak_transaction_get_no_pull ()

-
gboolean
-flatpak_transaction_get_no_pull (FlatpakTransaction *self);
-

Gets whether the transaction should operate only on locally -available data.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransaction

 
-
-
-

Returns

-

TRUE if no_pull is set, FALSE otherwise

-
-

Since: 1.5.1

-
-
-
-

flatpak_transaction_set_reinstall ()

-
void
-flatpak_transaction_set_reinstall (FlatpakTransaction *self,
-                                   gboolean reinstall);
-

Sets whether the transaction should uninstall first if a -ref is already installed.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakTransaction

 

reinstall

whether to reinstall refs

 
-
-
-
-
-

flatpak_transaction_set_force_uninstall ()

-
void
-flatpak_transaction_set_force_uninstall
-                               (FlatpakTransaction *self,
-                                gboolean force_uninstall);
-

Sets whether the transaction should uninstall files even -if they're used by a running application.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakTransaction

 

force_uninstall

whether to force-uninstall refs

 
-
-
-
-
-

flatpak_transaction_set_default_arch ()

-
void
-flatpak_transaction_set_default_arch (FlatpakTransaction *self,
-                                      const char *arch);
-

Sets the architecture to default to where it is unspecified.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakTransaction

 

arch

the arch to make default

 
-
-
-
-
-

flatpak_transaction_set_parent_window ()

-
void
-flatpak_transaction_set_parent_window (FlatpakTransaction *self,
-                                       const char *parent_window);
-

Sets the parent window (if any) to use for any UI show by this transaction. -This is used by authenticators if they need to interact with the user during -authentication.

-

The format of this string depends on the display system in use, and is the -same as used by xdg-desktop-portal.

-

On X11 it should be of the form x11:$xid where $xid is the hex -version of the xwindows id.

-

On wayland is should be wayland:$handle where handle is gotten by -using the export call of the xdg-foreign-unstable wayland extension.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakTransaction

 

parent_window

whether to avoid pulls

 
-
-

Since: 1.5.1

-
-
-
-

flatpak_transaction_get_parent_window ()

-
const char *
-flatpak_transaction_get_parent_window (FlatpakTransaction *self);
-

Gets the parent window set for this transaction, or NULL if unset. See -flatpak_transaction_get_parent_window().

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransaction

 
-
-
-

Returns

-

a window name, or NULL.

-

[transfer none]

-
-

Since: 1.5.1

-
-
-
-

flatpak_transaction_abort_webflow ()

-
void
-flatpak_transaction_abort_webflow (FlatpakTransaction *self,
-                                   guint id);
-

Cancel an ongoing webflow authentication request. This can be call -in the time between “webflow-start” returned -TRUE, and “webflow-done” is emitted. It will -cancel the ongoing authentication operation.

-

This is useful for example if you're showing an authenticaion -window with a browser, but the user closed it before it was finished.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakTransaction

 

id

The webflow id, as passed into the webflow-start signal

 
-
-

Since: 1.5.1

-
-
-
-

Types and Values

-
-

FlatpakTransaction

-
typedef struct _FlatpakTransaction FlatpakTransaction;
-
-
-
-

enum FlatpakTransactionOperationType

-

The type of a FlatpakTransactionOperation.

-
-

Members

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

FLATPAK_TRANSACTION_OPERATION_INSTALL

-

Install a ref from a remote

-
 

FLATPAK_TRANSACTION_OPERATION_UPDATE

-

Update an installed ref

-
 

FLATPAK_TRANSACTION_OPERATION_INSTALL_BUNDLE

-

Install a bundle from a file

-
 

FLATPAK_TRANSACTION_OPERATION_UNINSTALL

-

Uninstall a ref

-
 

FLATPAK_TRANSACTION_OPERATION_LAST_TYPE

-

The (currently) last operation type

-
 
-
-
-
-
-

enum FlatpakTransactionErrorDetails

-

The details for “operation-error”.

-
-

Members

-
----- - - - - - -

FLATPAK_TRANSACTION_ERROR_DETAILS_NON_FATAL

-

The operation failure was not fatal

-
 
-
-
-
-
-

enum FlatpakTransactionRemoteReason

-

The reason for “add-new-remote”.

-
-

Members

-
----- - - - - - - - - - - - - -

FLATPAK_TRANSACTION_REMOTE_GENERIC_REPO

-

The remote specified in the flatpakref has other apps too

-
 

FLATPAK_TRANSACTION_REMOTE_RUNTIME_DEPS

-

The remote has runtimes needed for the app

-
 
-
-
-
-
-

enum FlatpakTransactionResult

-

The details for “operation-done”.

-
-

Members

-
----- - - - - - -

FLATPAK_TRANSACTION_RESULT_NO_CHANGE

-

The update caused no changes

-
 
-
-
-
-
-

Property Details

-
-

The “installation” property

-
  “installation”             FlatpakInstallation *
-

The installation that the transaction operates on.

-

Owner: FlatpakTransaction

-

Flags: Read / Write / Construct Only

-
-
-
-

The “no-interaction” property

-
  “no-interaction”           gboolean
-

TRUE if the transaction is not interactive, FALSE otherwise.

-

See flatpak_transaction_set_no_interaction().

-

Owner: FlatpakTransaction

-

Flags: Read / Write

-

Default value: FALSE

-

Since: 1.13.0

-
-
-
-

Signal Details

-
-

The “add-new-remote” signal

-
gboolean
-user_function (FlatpakTransaction *object,
-               int                 reason,
-               char               *from_id,
-               char               *suggested_remote_name,
-               char               *url,
-               gpointer            user_data)
-

The ::add-new-remote signal gets emitted if, as part of the transaction, -it is required or recommended that a new remote is added, for the reason -described in reason -.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

object

A FlatpakTransaction

 

reason

A FlatpakTransactionRemoteReason for this suggestion.

[type FlatpakTransactionRemoteReason]

from_id

The id of the app/runtime

 

suggested_remote_name

The suggested remote name

 

url

The repo url

 

user_data

user data set when the signal handler was connected.

 
-
-
-

Returns

-

TRUE to add the remote

-
-

Flags: Run Last

-
-
-
-

The “basic-auth-start” signal

-
gboolean
-user_function (FlatpakTransaction *object,
-               char               *remote,
-               char               *realm,
-               GVariant           *options,
-               int                 id,
-               gpointer            user_data)
-

The ::basic-auth-start signal gets emitted when a basic user/password -authentication is needed during the operation. If the caller handles this -it should ask the user for the user and password and return TRUE. Once -the information is gathered call flatpak_transaction_complete_basic_auth() -with it.

-

If the client does not support basic auth then return FALSE from this signal -(or don't implement it). This will abort the authentication and likely -result in the transaction failing (unless the authentication was somehow -optional).

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

object

A FlatpakTransaction

 

remote

The remote we're authenticating with

 

realm

The url to show

 

options

Extra options, currently unused

 

id

The id of the operation, can be used to finish it

 

user_data

user data set when the signal handler was connected.

 
-
-

Flags: Run Last

-

Since: 1.5.2

-
-
-
-

The “choose-remote-for-ref” signal

-
int
-user_function (FlatpakTransaction *object,
-               char               *for_ref,
-               char               *runtime_ref,
-               GStrv               remotes,
-               gpointer            user_data)
-

The ::choose-remote-for-ref signal gets emitted when a -remote needs to be selected during the execution of the transaction.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

object

A FlatpakTransaction

 

for_ref

The ref we are installing

 

runtime_ref

The ref we are looking for

 

remotes

the remotes that has the ref, sorted in prio order

 

user_data

user data set when the signal handler was connected.

 
-
-
-

Returns

-

the index of the remote to use, or -1 to not pick one (and fail)

-
-

Flags: Run Last

-
-
-
-

The “end-of-lifed” signal

-
void
-user_function (FlatpakTransaction *object,
-               char               *ref,
-               char               *reason,
-               char               *rebase,
-               gpointer            user_data)
-

The ::end-of-lifed signal gets emitted when a ref is found to -be marked as end-of-life during the execution of the transaction.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

object

A FlatpakTransaction

 

ref

The ref we are installing

 

reason

The eol reason, or NULL

 

rebase

The new name, if rebased, or NULL

 

user_data

user data set when the signal handler was connected.

 
-
-

Flags: Run Last

-
-
-
-

The “end-of-lifed-with-rebase” signal

-
gboolean
-user_function (FlatpakTransaction *object,
-               char               *remote,
-               char               *ref,
-               char               *reason,
-               char               *rebased_to_ref,
-               GStrv               previous_ids,
-               gpointer            user_data)
-

The ::end-of-lifed-with-rebase signal gets emitted when a ref is found -to be marked as end-of-life before the transaction begins. Unlike -“end-of-lifed”, this signal allows for the -transaction to be modified in order to e.g. install the rebased -ref.

-

If the caller wants to install the rebased ref, they should call -flatpak_transaction_add_uninstall() on ref -, -flatpak_transaction_add_rebase() on rebased_to_ref -, and return TRUE. -Otherwise FALSE may be returned.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

object

A FlatpakTransaction

 

remote

The remote for the ref we are processing

 

ref

The ref we are processing

 

reason

The eol reason, or NULL

 

rebased_to_ref

The new name, if rebased, or NULL

 

previous_ids

The previous names for the rebased ref (if any), including the one from ref -

 

user_data

user data set when the signal handler was connected.

 
-
-
-

Returns

-

TRUE if the operation on this end-of-lifed ref should -be skipped (e.g. because the rebased ref has been added to the -transaction), FALSE if it should remain.

-
-

Flags: Run Last

-

Since: 1.3.2

-
-
-
-

The “install-authenticator” signal

-
void
-user_function (FlatpakTransaction *object,
-               char               *remote,
-               char               *authenticator_ref,
-               gpointer            user_data)
-

The ::install-authenticator signal gets emitted if, as part of -resolving the transaction, we need to use an authenticator, but the authentication -is not installed, but is available to be installed from the ref.

-

The application can handle this signal, and if so create another transaction -to install the authenticator.

-

The default handler does nothing, and if the authenticator is not installed when -the signal handler fails the transaction will error out.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

object

A FlatpakTransaction

 

remote

The remote name

 

authenticator_ref

The ref for the authenticator

 

user_data

user data set when the signal handler was connected.

 
-
-

Flags: Run Last

-

Since: 1.8.0

-
-
-
-

The “new-operation” signal

-
void
-user_function (FlatpakTransaction          *object,
-               FlatpakTransactionOperation *operation,
-               FlatpakTransactionProgress  *progress,
-               gpointer                     user_data)
-

The ::new-operation signal gets emitted during the execution of -the transaction when a new operation is beginning.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

object

A FlatpakTransaction

 

operation

The new FlatpakTransactionOperation

 

progress

A FlatpakTransactionProgress for operation -

 

user_data

user data set when the signal handler was connected.

 
-
-

Flags: Run Last

-
-
-
-

The “operation-done” signal

-
void
-user_function (FlatpakTransaction          *object,
-               FlatpakTransactionOperation *operation,
-               char                        *commit,
-               int                          result,
-               gpointer                     user_data)
-

The ::operation-done signal gets emitted during the execution of -the transaction when an operation is finished.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

object

A FlatpakTransaction

 

operation

The FlatpakTransactionOperation which finished

 

commit

The commit.

[nullable]

result

A FlatpakTransactionResult giving details about the result.

[type FlatpakTransactionResult]

user_data

user data set when the signal handler was connected.

 
-
-

Flags: Run Last

-
-
-
-

The “operation-error” signal

-
gboolean
-user_function (FlatpakTransaction          *object,
-               FlatpakTransactionOperation *operation,
-               GError                      *error,
-               int                          details,
-               gpointer                     user_data)
-

The ::operation-error signal gets emitted when an error occurs during the -execution of the transaction.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

object

A FlatpakTransaction

 

operation

The FlatpakTransactionOperation which failed

 

error

A GError

 

details

A FlatpakTransactionErrorDetails with details about the error.

[type FlatpakTransactionErrorDetails]

user_data

user data set when the signal handler was connected.

 
-
-
-

Returns

-

the TRUE to contine transaction, FALSE to stop

-
-

Flags: Run Last

-
-
-
-

The “ready” signal

-
gboolean
-user_function (FlatpakTransaction *object,
-               gpointer            user_data)
-

The ::ready signal is emitted when all the refs involved in the operation -have been resolved to commits, and the required authentication for all ops is gotten. -At this point flatpak_transaction_get_operations() will return all the operations -that will be executed as part of the transaction.

-
-

Parameters

-
----- - - - - - - - - - - - - -

object

A FlatpakTransaction

 

user_data

user data set when the signal handler was connected.

 
-
-
-

Returns

-

TRUE to carry on with the transaction, FALSE to abort

-
-

Flags: Run Last

-
-
-
-

The “ready-pre-auth” signal

-
gboolean
-user_function (FlatpakTransaction *object,
-               gpointer            user_data)
-

The ::ready-pre-auth signal is emitted when all the refs involved in the -transaction have been resolved to commits, but we might not necessarily -have asked for authentication for all their required operations. This is -very similar to the ::ready signal, and you can choose which one (or both) -to use depending on how you want to handle authentication in your user -interface.

-

At this point flatpak_transaction_get_operations() will return all the -operations that will be executed as part of the transaction. You can call -flatpak_transaction_operation_get_requires_authentication() to see which -will require authentication.

-
-

Parameters

-
----- - - - - - - - - - - - - -

object

A FlatpakTransaction

 

user_data

user data set when the signal handler was connected.

 
-
-
-

Returns

-

TRUE to carry on with the transaction, FALSE to abort

-
-

Flags: Run Last

-

Since: 1.9.1

-
-
-
-

The “webflow-done” signal

-
void
-user_function (FlatpakTransaction *object,
-               GVariant           *options,
-               int                 id,
-               gpointer            user_data)
-

The ::webflow-done signal gets emitted when the authentication -finished the webflow, independent of the reason and results. If -you for were showing a web-browser window it can now be closed.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - -

object

A FlatpakTransaction

 

options

Extra options, currently unused

 

id

The id of the operation

 

user_data

user data set when the signal handler was connected.

 
-
-

Flags: Run Last

-

Since: 1.5.1

-
-
-
-

The “webflow-start” signal

-
gboolean
-user_function (FlatpakTransaction *object,
-               char               *remote,
-               char               *url,
-               GVariant           *options,
-               int                 id,
-               gpointer            user_data)
-

The ::webflow-start signal gets emitted when some kind of user -authentication is needed during the operation. If the caller handles this -it should show the url in a webbrowser and return TRUE. This will -eventually cause the webbrowser to finish the authentication operation and -operation will continue, as signaled by the webflow-done being emitted.

-

If the client does not support webflow then return FALSE from this signal -(or don't implement it). This will abort the authentication and likely -result in the transaction failing (unless the authentication was somehow -optional).

-

During the time between webflow-start and webflow-done the client can call -flatpak_transaction_abort_webflow() to manually abort the authentication. -This is useful if the user aborted the authentication operation some way, -like e.g. closing the browser window.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

object

A FlatpakTransaction

 

remote

The remote we're authenticating with

 

url

The url to show

 

options

Extra options, currently unused

 

id

The id of the operation, can be used to cancel it

 

user_data

user data set when the signal handler was connected.

 
-
-

Flags: Run Last

-

Since: 1.5.1

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/FlatpakTransactionOperation.html b/doc/reference/html/FlatpakTransactionOperation.html deleted file mode 100644 index 27ca935..0000000 --- a/doc/reference/html/FlatpakTransactionOperation.html +++ /dev/null @@ -1,463 +0,0 @@ - - - - -FlatpakTransactionOperation: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

FlatpakTransactionOperation

-

FlatpakTransactionOperation — Operation in a transaction

-
-
-

Functions

- -
-
-

Types and Values

-
---- - - - - -
 FlatpakTransactionOperation
-
-
-

Object Hierarchy

-
    GObject
-    ╰── FlatpakTransactionOperation
-
-
-
-

Description

-

FlatpakTransactionOperation is an object that represents a single operation -in a transaction. You receive a FlatpakTransactionOperation object with the -“new-operation” signal.

-
-
-

Functions

-
-

flatpak_transaction_operation_get_bundle_path ()

-
GFile *
-flatpak_transaction_operation_get_bundle_path
-                               (FlatpakTransactionOperation *self);
-

Gets the path to the bundle.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransactionOperation

 
-
-
-

Returns

-

the bundle GFile or NULL.

-

[transfer none]

-
-
-
-
-

flatpak_transaction_operation_get_commit ()

-
const char *
-flatpak_transaction_operation_get_commit
-                               (FlatpakTransactionOperation *self);
-

Gets the commit ID for the operation.

-

This information is available when the transaction is resolved, -i.e. when “ready” is emitted.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransactionOperation

 
-
-
-

Returns

-

the commit ID.

-

[transfer none]

-
-
-
-
-

flatpak_transaction_operation_get_operation_type ()

-
FlatpakTransactionOperationType
-flatpak_transaction_operation_get_operation_type
-                               (FlatpakTransactionOperation *self);
-

Gets the type of the operation.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransactionOperation

 
-
-
-

Returns

-

the type of operation, as FlatpakTransactionOperationType

-
-
-
-
-

flatpak_transaction_operation_get_ref ()

-
const char *
-flatpak_transaction_operation_get_ref (FlatpakTransactionOperation *self);
-

Gets the ref that the operation applies to.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransactionOperation

 
-
-
-

Returns

-

the ref.

-

[transfer none]

-
-
-
-
-

flatpak_transaction_operation_get_remote ()

-
const char *
-flatpak_transaction_operation_get_remote
-                               (FlatpakTransactionOperation *self);
-

Gets the remote that the operation applies to.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransactionOperation

 
-
-
-

Returns

-

the remote.

-

[transfer none]

-
-
-
-
-

flatpak_transaction_operation_get_metadata ()

-
GKeyFile *
-flatpak_transaction_operation_get_metadata
-                               (FlatpakTransactionOperation *self);
-

Gets the metadata that will be applicable when the -operation is done.

-

This can be compared to the current metadata returned -by flatpak_transaction_operation_get_old_metadata() -to find new required permissions and similar changes.

-

This information is available when the transaction is resolved, -i.e. when “ready” is emitted.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransactionOperation

 
-
-
-

Returns

-

the metadata GKeyFile.

-

[transfer none]

-
-
-
-
-

flatpak_transaction_operation_get_old_metadata ()

-
GKeyFile *
-flatpak_transaction_operation_get_old_metadata
-                               (FlatpakTransactionOperation *self);
-

Gets the metadata current metadata for the ref that self - works on. -Also see flatpak_transaction_operation_get_metadata().

-

This information is available when the transaction is resolved, -i.e. when “ready” is emitted.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransactionOperation

 
-
-
-

Returns

-

the old metadata GKeyFile.

-

[transfer none]

-
-
-
-
-

flatpak_transaction_operation_get_download_size ()

-
guint64
-flatpak_transaction_operation_get_download_size
-                               (FlatpakTransactionOperation *self);
-

Gets the maximum download size for the operation.

-

Note that this does not include the size of dependencies, and -the actual download may be smaller, if some of the data is already -available locally.

-

For uninstall operations, this returns 0.

-

This information is available when the transaction is resolved, -i.e. when “ready” is emitted.

-
-

Parameters

-
----- - - - - - -

self

a flatpakTransactionOperation

 
-
-
-

Returns

-

the download size, in bytes

-
-

Since: 1.1.2

-
-
-
-

flatpak_transaction_operation_get_installed_size ()

-
guint64
-flatpak_transaction_operation_get_installed_size
-                               (FlatpakTransactionOperation *self);
-

Gets the installed size for the operation.

-

Note that even for a new install, the extra space required on -disk may be smaller than this number, if some of the data is already -available locally.

-

For uninstall operations, this returns 0.

-

This information is available when the transaction is resolved, -i.e. when “ready” is emitted.

-
-

Parameters

-
----- - - - - - -

self

a flatpakTransactionOperation

 
-
-
-

Returns

-

the installed size, in bytes

-
-

Since: 1.1.2

-
-
-
-

flatpak_transaction_operation_type_to_string ()

-
const char *
-flatpak_transaction_operation_type_to_string
-                               (FlatpakTransactionOperationType kind);
-

Converts the operation type to a string.

-
-

Parameters

-
----- - - - - - -

kind

a FlatpakTransactionOperationType

 
-
-
-

Returns

-

a string representing kind -.

-

[transfer none]

-
-
-
-
-

Types and Values

-
-

FlatpakTransactionOperation

-
typedef struct _FlatpakTransactionOperation FlatpakTransactionOperation;
-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/FlatpakTransactionProgress.html b/doc/reference/html/FlatpakTransactionProgress.html deleted file mode 100644 index b2a2d4d..0000000 --- a/doc/reference/html/FlatpakTransactionProgress.html +++ /dev/null @@ -1,350 +0,0 @@ - - - - -FlatpakTransactionProgress: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

FlatpakTransactionProgress

-

FlatpakTransactionProgress — Progress of an operation

-
-
-

Functions

- -
-
-

Signals

-
----- - - - - - -
voidchangedRun Last
-
-
-

Types and Values

-
---- - - - - -
 FlatpakTransactionProgress
-
-
-

Object Hierarchy

-
    GObject
-    ╰── FlatpakTransactionProgress
-
-
-
-

Description

-

FlatpakTransactionProgress is an object that represents the progress -of a single operation in a transaction. You obtain a FlatpakTransactionProgress -with the “new-operation” signal.

-
-
-

Functions

-
-

flatpak_transaction_progress_get_is_estimating ()

-
gboolean
-flatpak_transaction_progress_get_is_estimating
-                               (FlatpakTransactionProgress *self);
-

Gets whether the progress is currently estimating

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransactionProgress

 
-
-
-

Returns

-

whether we're estimating

-
-
-
-
-

flatpak_transaction_progress_get_progress ()

-
int
-flatpak_transaction_progress_get_progress
-                               (FlatpakTransactionProgress *self);
-

Gets the current progress.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransactionProgress

 
-
-
-

Returns

-

the current progress, as an integer between 0 and 100

-
-
-
-
-

flatpak_transaction_progress_get_status ()

-
char *
-flatpak_transaction_progress_get_status
-                               (FlatpakTransactionProgress *self);
-

Gets the current status string

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransactionProgress

 
-
-
-

Returns

-

the current status.

-

[transfer full]

-
-
-
-
-

flatpak_transaction_progress_set_update_frequency ()

-
void
-flatpak_transaction_progress_set_update_frequency
-                               (FlatpakTransactionProgress *self,
-                                guint update_interval);
-

Sets how often progress should be updated.

-
-

Parameters

-
----- - - - - - - - - - - - - -

self

a FlatpakTransactionProgress

 

update_interval

the update interval, in milliseconds

 
-
-
-
-
-

flatpak_transaction_progress_get_bytes_transferred ()

-
guint64
-flatpak_transaction_progress_get_bytes_transferred
-                               (FlatpakTransactionProgress *self);
-

Gets the number of bytes that have been transferred.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransactionProgress

 
-
-
-

Returns

-

the number of bytes transferred

-
-

Since: 1.1.2

-
-
-
-

flatpak_transaction_progress_get_start_time ()

-
guint64
-flatpak_transaction_progress_get_start_time
-                               (FlatpakTransactionProgress *self);
-

Gets the time at which this operation has started, as monotonic time.

-
-

Parameters

-
----- - - - - - -

self

a FlatpakTransactionProgress

 
-
-
-

Returns

-

the start time

-
-

Since: 1.1.2

-
-
-
-

Types and Values

-
-

FlatpakTransactionProgress

-
typedef struct _FlatpakTransactionProgress FlatpakTransactionProgress;
-
-
-
-

Signal Details

-
-

The “changed” signal

-
void
-user_function (FlatpakTransactionProgress *object,
-               gpointer                    user_data)
-

Emitted when some detail of the progress object changes, you can call the various methods to get the current status.

-
-

Parameters

-
----- - - - - - - - - - - - - -

object

A FlatpakTransactionProgress

 

user_data

user data set when the signal handler was connected.

 
-
-

Flags: Run Last

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/annotation-glossary.html b/doc/reference/html/annotation-glossary.html deleted file mode 100644 index 2f925a5..0000000 --- a/doc/reference/html/annotation-glossary.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - -Annotation Glossary: Flatpak Library Reference Manual - - - - - - - - - - - - - - - -
-

-Annotation Glossary

-

A

-
allow-none
-

NULL is OK, both for passing and for returning.

-
array
-

Parameter points to an array of items.

-

C

-
closure
-

This parameter is a 'user_data', for callbacks; many bindings can pass NULL here.

-

E

-
element-type
-

Generics and defining elements of containers and arrays.

-

N

-
nullable
-

NULL may be passed as the value in, out, in-out; or as a return value.

-

O

-
out
-

Parameter for returning results. Default is transfer full.

-

S

-
scope call
-

The callback is valid only during the call to the method.

-

T

-
transfer container
-

The caller owns the data container, but not the data inside it.

-
transfer full
-

The caller owns the data, and is responsible for free it.

-
transfer none
-

The data is owned by the callee, which is responsible of freeing it.

-
type
-

Override the parsed C type with given type.

-
- - - \ No newline at end of file diff --git a/doc/reference/html/ch01.html b/doc/reference/html/ch01.html deleted file mode 100644 index 36b1117..0000000 --- a/doc/reference/html/ch01.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - -Flatpak: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-

-Flatpak

-
-
-FlatpakInstallation — Installation information -
-
-FlatpakRemote — Remote repository -
-
-FlatpakTransactionOperation — Operation in a transaction -
-
-FlatpakTransactionProgress — Progress of an operation -
-
-FlatpakTransaction — Transaction information -
-
-FlatpakRef — Application reference -
-
-FlatpakInstalledRef — Installed application reference -
-
-FlatpakRelatedRef — Related application reference -
-
-FlatpakRemoteRef — Remote application reference -
-
-FlatpakBundleRef — Application bundle reference -
-
-FlatpakInstance — Information about a running sandbox -
-
-Error codes -
-
-Version information -
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/ch02.html b/doc/reference/html/ch02.html deleted file mode 100644 index a8e5d6a..0000000 --- a/doc/reference/html/ch02.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - -D-Bus APIs: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-

-D-Bus APIs

- -
- - - \ No newline at end of file diff --git a/doc/reference/html/flatpak-Error-codes.html b/doc/reference/html/flatpak-Error-codes.html deleted file mode 100644 index 4f387cc..0000000 --- a/doc/reference/html/flatpak-Error-codes.html +++ /dev/null @@ -1,356 +0,0 @@ - - - - -Error codes: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

Error codes

-

Error codes

-
-
-

Types and Values

-
---- - - - - - - - - - - - - - - - - - - -
#defineFLATPAK_ERROR
enumFlatpakError
#defineFLATPAK_PORTAL_ERROR
enumFlatpakPortalError
-
-
-

Description

-

The FlatpakError and FlatpakPortalError enumerations contain error codes -for some common errors.

-
-
-

Functions

-

-
-
-

Types and Values

-
-

FLATPAK_ERROR

-
#define FLATPAK_ERROR flatpak_error_quark ()
-
-

The error domain for FlatpakError errors.

-
-
-
-

enum FlatpakError

-

Error codes for library functions.

-
-

Members

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

FLATPAK_ERROR_ALREADY_INSTALLED

-

App/runtime/remote is already installed

-
 

FLATPAK_ERROR_NOT_INSTALLED

-

App/runtime is not installed

-
 

FLATPAK_ERROR_ONLY_PULLED

-

App/runtime was only pulled into the local -repository but not installed.

-
 

FLATPAK_ERROR_DIFFERENT_REMOTE

-

The App/Runtime is already installed, but from a different remote.

-
 

FLATPAK_ERROR_ABORTED

-

The transaction was aborted (returned TRUE in operation-error signal).

-
 

FLATPAK_ERROR_SKIPPED

-

The App/Runtime install was skipped due to earlier errors.

-
 

FLATPAK_ERROR_NEED_NEW_FLATPAK

-

The App/Runtime needs a more recent version of flatpak.

-
 

FLATPAK_ERROR_REMOTE_NOT_FOUND

-

The specified remote was not found.

-
 

FLATPAK_ERROR_RUNTIME_NOT_FOUND

-

A runtime needed for the app was not found.

-
 

FLATPAK_ERROR_DOWNGRADE

-

The pulled commit is a downgrade, and a downgrade wasn't -specifically allowed. (Since: 1.0)

-
 

FLATPAK_ERROR_INVALID_REF

-

A ref could not be parsed. (Since: 1.0.3)

-
 

FLATPAK_ERROR_INVALID_DATA

-

Invalid data. (Since: 1.0.3)

-
 

FLATPAK_ERROR_UNTRUSTED

-

Missing GPG key or signature. (Since: 1.0.3)

-
 

FLATPAK_ERROR_SETUP_FAILED

-

Sandbox setup failed. (Since: 1.0.3)

-
 

FLATPAK_ERROR_EXPORT_FAILED

-

Exporting data failed. (Since: 1.0.3)

-
 

FLATPAK_ERROR_REMOTE_USED

-

Remote can't be uninstalled. (Since: 1.0.3)

-
 

FLATPAK_ERROR_RUNTIME_USED

-

Runtime can't be uninstalled. (Since: 1.0.3)

-
 

FLATPAK_ERROR_INVALID_NAME

-

Application, runtime or remote name is invalid. (Since: 1.0.3)

-
 

FLATPAK_ERROR_OUT_OF_SPACE

-

More disk space needed. (Since: 1.2.0)

-
 

FLATPAK_ERROR_WRONG_USER

-

An operation is being attempted by the wrong user (such as -root operating on a user installation). (Since: 1.2.0)

-
 

FLATPAK_ERROR_NOT_CACHED

-

Cached data was requested, but it was not available. (Since: 1.4.0)

-
 

FLATPAK_ERROR_REF_NOT_FOUND

-

The specified ref was not found. (Since: 1.4.0)

-
 

FLATPAK_ERROR_PERMISSION_DENIED

-

An operation was not allowed by the administrative policy. -For example, an app is not allowed to be installed due -to not complying with the parental controls policy. (Since: 1.5.1)

-
 

FLATPAK_ERROR_AUTHENTICATION_FAILED

-

An authentication operation failed, for example, no -correct password was supplied. (Since: 1.7.3)

-
 

FLATPAK_ERROR_NOT_AUTHORIZED

-

An operation tried to access a ref, or information about it that it -was not authorized. For example, when succesfully authenticating with a -server but the user doesn't have permissions for a private ref. (Since: 1.7.3)

-
 
-
-
-
-
-

FLATPAK_PORTAL_ERROR

-
#define FLATPAK_PORTAL_ERROR flatpak_portal_error_quark ()
-
-

The error domain for FlatpakPortalError errors.

-
-
-
-

enum FlatpakPortalError

-

Error codes returned by portal calls.

-
-

Members

-
----- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

FLATPAK_PORTAL_ERROR_FAILED

-

General portal failure

-
 

FLATPAK_PORTAL_ERROR_INVALID_ARGUMENT

-

An argument was invalid

-
 

FLATPAK_PORTAL_ERROR_NOT_FOUND

-

The object was not found

-
 

FLATPAK_PORTAL_ERROR_EXISTS

-

The object already exists

-
 

FLATPAK_PORTAL_ERROR_NOT_ALLOWED

-

The call was not allowed

-
 

FLATPAK_PORTAL_ERROR_CANCELLED

-

The call was cancelled by the user

-
 

FLATPAK_PORTAL_ERROR_WINDOW_DESTROYED

-

The window was destroyed by the user

-
 
-
-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/flatpak-Version-information.html b/doc/reference/html/flatpak-Version-information.html deleted file mode 100644 index 62ebf25..0000000 --- a/doc/reference/html/flatpak-Version-information.html +++ /dev/null @@ -1,141 +0,0 @@ - - - - -Version information: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

Version information

-

Version information

-
-
-

Functions

-
---- - - - - -
#define -FLATPAK_CHECK_VERSION() -
-
-
-

Types and Values

-
---- - - - - - - - - - - - - - - -
#defineFLATPAK_MAJOR_VERSION
#defineFLATPAK_MINOR_VERSION
#defineFLATPAK_MICRO_VERSION
-
-
-

Description

-

These macros can be used to check the library version in use.

-
-
-

Functions

-
-

FLATPAK_CHECK_VERSION()

-
#define             FLATPAK_CHECK_VERSION(major,minor,micro)
-

Check that the current version is at least major -.minor -.micro -.

-
-

Parameters

-
----- - - - - - - - - - - - - - - - - - -

major

major version to compare against

 

minor

minor version to compare against

 

micro

micro version to compare against

 
-
-
-
-
-

Types and Values

-
-

FLATPAK_MAJOR_VERSION

-
#define FLATPAK_MAJOR_VERSION (1)
-
-

The major version.

-
-
-
-

FLATPAK_MINOR_VERSION

-
#define FLATPAK_MINOR_VERSION (14)
-
-

The minor version.

-
-
-
-

FLATPAK_MICRO_VERSION

-
#define FLATPAK_MICRO_VERSION (10)
-
-

The micro version.

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/flatpak.devhelp2 b/doc/reference/html/flatpak.devhelp2 deleted file mode 100644 index 1cff0f5..0000000 --- a/doc/reference/html/flatpak.devhelp2 +++ /dev/null @@ -1,447 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/doc/reference/html/full-api-index.html b/doc/reference/html/full-api-index.html deleted file mode 100644 index df0e333..0000000 --- a/doc/reference/html/full-api-index.html +++ /dev/null @@ -1,1174 +0,0 @@ - - - - -API Index: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-

-API Index

-

B

-
-FlatpakBundleRef, struct in FlatpakBundleRef -
-
-
-FlatpakBundleRef:file, object property in FlatpakBundleRef -
-
-
-flatpak_bundle_ref_get_appstream, function in FlatpakBundleRef -
-
-
-flatpak_bundle_ref_get_file, function in FlatpakBundleRef -
-
-
-flatpak_bundle_ref_get_icon, function in FlatpakBundleRef -
-
-
-flatpak_bundle_ref_get_installed_size, function in FlatpakBundleRef -
-
-
-flatpak_bundle_ref_get_metadata, function in FlatpakBundleRef -
-
-
-flatpak_bundle_ref_get_origin, function in FlatpakBundleRef -
-
-
-flatpak_bundle_ref_get_runtime_repo_url, function in FlatpakBundleRef -
-
-
-flatpak_bundle_ref_new, function in FlatpakBundleRef -
-
-

C

-
-FLATPAK_CHECK_VERSION, macro in Version information -
-
-

E

-
-FLATPAK_ERROR, macro in Error codes -
-
-
-FlatpakError, enum in Error codes -
-
-

G

-
-flatpak_get_default_arch, function in FlatpakInstallation -
-
-
-flatpak_get_supported_arches, function in FlatpakInstallation -
-
-
-flatpak_get_system_installations, function in FlatpakInstallation -
-
-

I

-
-FlatpakInstallation, struct in FlatpakInstallation -
-
-
-flatpak_installation_add_remote, function in FlatpakInstallation -
-
-
-flatpak_installation_cleanup_local_refs_sync, function in FlatpakInstallation -
-
-
-flatpak_installation_create_monitor, function in FlatpakInstallation -
-
-
-flatpak_installation_drop_caches, function in FlatpakInstallation -
-
-
-flatpak_installation_fetch_remote_metadata_sync, function in FlatpakInstallation -
-
-
-flatpak_installation_fetch_remote_ref_sync, function in FlatpakInstallation -
-
-
-flatpak_installation_fetch_remote_ref_sync_full, function in FlatpakInstallation -
-
-
-flatpak_installation_fetch_remote_size_sync, function in FlatpakInstallation -
-
-
-flatpak_installation_get_config, function in FlatpakInstallation -
-
-
-flatpak_installation_get_current_installed_app, function in FlatpakInstallation -
-
-
-flatpak_installation_get_default_languages, function in FlatpakInstallation -
-
-
-flatpak_installation_get_default_locales, function in FlatpakInstallation -
-
-
-flatpak_installation_get_display_name, function in FlatpakInstallation -
-
-
-flatpak_installation_get_id, function in FlatpakInstallation -
-
-
-flatpak_installation_get_installed_ref, function in FlatpakInstallation -
-
-
-flatpak_installation_get_is_user, function in FlatpakInstallation -
-
-
-flatpak_installation_get_min_free_space_bytes, function in FlatpakInstallation -
-
-
-flatpak_installation_get_no_interaction, function in FlatpakInstallation -
-
-
-flatpak_installation_get_path, function in FlatpakInstallation -
-
-
-flatpak_installation_get_priority, function in FlatpakInstallation -
-
-
-flatpak_installation_get_remote_by_name, function in FlatpakInstallation -
-
-
-flatpak_installation_get_storage_type, function in FlatpakInstallation -
-
-
-flatpak_installation_install, function in FlatpakInstallation -
-
-
-flatpak_installation_install_bundle, function in FlatpakInstallation -
-
-
-flatpak_installation_install_full, function in FlatpakInstallation -
-
-
-flatpak_installation_install_ref_file, function in FlatpakInstallation -
-
-
-flatpak_installation_launch, function in FlatpakInstallation -
-
-
-flatpak_installation_launch_full, function in FlatpakInstallation -
-
-
-flatpak_installation_list_installed_refs, function in FlatpakInstallation -
-
-
-flatpak_installation_list_installed_refs_by_kind, function in FlatpakInstallation -
-
-
-flatpak_installation_list_installed_refs_for_update, function in FlatpakInstallation -
-
-
-flatpak_installation_list_installed_related_refs_sync, function in FlatpakInstallation -
-
-
-flatpak_installation_list_remotes, function in FlatpakInstallation -
-
-
-flatpak_installation_list_remotes_by_type, function in FlatpakInstallation -
-
-
-flatpak_installation_list_remote_refs_sync, function in FlatpakInstallation -
-
-
-flatpak_installation_list_remote_refs_sync_full, function in FlatpakInstallation -
-
-
-flatpak_installation_list_remote_related_refs_sync, function in FlatpakInstallation -
-
-
-flatpak_installation_list_unused_refs, function in FlatpakInstallation -
-
-
-flatpak_installation_load_app_overrides, function in FlatpakInstallation -
-
-
-flatpak_installation_modify_remote, function in FlatpakInstallation -
-
-
-flatpak_installation_new_for_path, function in FlatpakInstallation -
-
-
-flatpak_installation_new_system, function in FlatpakInstallation -
-
-
-flatpak_installation_new_system_with_id, function in FlatpakInstallation -
-
-
-flatpak_installation_new_user, function in FlatpakInstallation -
-
-
-flatpak_installation_prune_local_repo, function in FlatpakInstallation -
-
-
-flatpak_installation_remove_local_ref_sync, function in FlatpakInstallation -
-
-
-flatpak_installation_remove_remote, function in FlatpakInstallation -
-
-
-flatpak_installation_run_triggers, function in FlatpakInstallation -
-
-
-flatpak_installation_set_config_sync, function in FlatpakInstallation -
-
-
-flatpak_installation_set_no_interaction, function in FlatpakInstallation -
-
-
-flatpak_installation_uninstall, function in FlatpakInstallation -
-
-
-flatpak_installation_uninstall_full, function in FlatpakInstallation -
-
-
-flatpak_installation_update, function in FlatpakInstallation -
-
-
-flatpak_installation_update_appstream_full_sync, function in FlatpakInstallation -
-
-
-flatpak_installation_update_appstream_sync, function in FlatpakInstallation -
-
-
-flatpak_installation_update_full, function in FlatpakInstallation -
-
-
-flatpak_installation_update_remote_sync, function in FlatpakInstallation -
-
-
-FlatpakInstalledRef, struct in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:appdata-content-rating, object property in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:appdata-content-rating-type, object property in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:appdata-license, object property in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:appdata-name, object property in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:appdata-summary, object property in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:appdata-version, object property in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:deploy-dir, object property in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:end-of-life, object property in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:end-of-life-rebase, object property in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:installed-size, object property in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:is-current, object property in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:latest-commit, object property in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:origin, object property in FlatpakInstalledRef -
-
-
-FlatpakInstalledRef:subpaths, object property in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_appdata_content_rating, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_appdata_content_rating_type, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_appdata_license, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_appdata_name, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_appdata_summary, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_appdata_version, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_deploy_dir, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_eol, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_eol_rebase, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_installed_size, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_is_current, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_latest_commit, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_origin, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_get_subpaths, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_load_appdata, function in FlatpakInstalledRef -
-
-
-flatpak_installed_ref_load_metadata, function in FlatpakInstalledRef -
-
-
-FlatpakInstallFlags, enum in FlatpakInstallation -
-
-
-FlatpakInstance, struct in FlatpakInstance -
-
-
-flatpak_instance_get_all, function in FlatpakInstance -
-
-
-flatpak_instance_get_app, function in FlatpakInstance -
-
-
-flatpak_instance_get_arch, function in FlatpakInstance -
-
-
-flatpak_instance_get_branch, function in FlatpakInstance -
-
-
-flatpak_instance_get_child_pid, function in FlatpakInstance -
-
-
-flatpak_instance_get_commit, function in FlatpakInstance -
-
-
-flatpak_instance_get_id, function in FlatpakInstance -
-
-
-flatpak_instance_get_info, function in FlatpakInstance -
-
-
-flatpak_instance_get_pid, function in FlatpakInstance -
-
-
-flatpak_instance_get_runtime, function in FlatpakInstance -
-
-
-flatpak_instance_get_runtime_commit, function in FlatpakInstance -
-
-
-flatpak_instance_is_running, function in FlatpakInstance -
-
-

L

-
-FlatpakLaunchFlags, enum in FlatpakInstallation -
-
-

M

-
-FLATPAK_MAJOR_VERSION, macro in Version information -
-
-
-FLATPAK_MICRO_VERSION, macro in Version information -
-
-
-FLATPAK_MINOR_VERSION, macro in Version information -
-
-

P

-
-FlatpakPortalError, enum in Error codes -
-
-
-FLATPAK_PORTAL_ERROR, macro in Error codes -
-
-
-FlatpakProgressCallback, user_function in FlatpakInstallation -
-
-

Q

-
-FlatpakQueryFlags, enum in FlatpakInstallation -
-
-

R

-
-FlatpakRef, struct in FlatpakRef -
-
-
-FlatpakRef:arch, object property in FlatpakRef -
-
-
-FlatpakRef:branch, object property in FlatpakRef -
-
-
-FlatpakRef:collection-id, object property in FlatpakRef -
-
-
-FlatpakRef:commit, object property in FlatpakRef -
-
-
-FlatpakRef:kind, object property in FlatpakRef -
-
-
-FlatpakRef:name, object property in FlatpakRef -
-
-
-FlatpakRefKind, enum in FlatpakRef -
-
-
-flatpak_ref_format_ref, function in FlatpakRef -
-
-
-flatpak_ref_get_arch, function in FlatpakRef -
-
-
-flatpak_ref_get_branch, function in FlatpakRef -
-
-
-flatpak_ref_get_collection_id, function in FlatpakRef -
-
-
-flatpak_ref_get_commit, function in FlatpakRef -
-
-
-flatpak_ref_get_kind, function in FlatpakRef -
-
-
-flatpak_ref_get_name, function in FlatpakRef -
-
-
-flatpak_ref_parse, function in FlatpakRef -
-
-
-FlatpakRelatedRef, struct in FlatpakRelatedRef -
-
-
-FlatpakRelatedRef:should-autoprune, object property in FlatpakRelatedRef -
-
-
-FlatpakRelatedRef:should-delete, object property in FlatpakRelatedRef -
-
-
-FlatpakRelatedRef:should-download, object property in FlatpakRelatedRef -
-
-
-FlatpakRelatedRef:subpaths, object property in FlatpakRelatedRef -
-
-
-flatpak_related_ref_get_subpaths, function in FlatpakRelatedRef -
-
-
-flatpak_related_ref_new, function in FlatpakRelatedRef -
-
-
-flatpak_related_ref_should_autoprune, function in FlatpakRelatedRef -
-
-
-flatpak_related_ref_should_delete, function in FlatpakRelatedRef -
-
-
-flatpak_related_ref_should_download, function in FlatpakRelatedRef -
-
-
-FlatpakRemote, struct in FlatpakRemote -
-
-
-FlatpakRemote:name, object property in FlatpakRemote -
-
-
-FlatpakRemote:type, object property in FlatpakRemote -
-
-
-FlatpakRemoteRef, struct in FlatpakRemoteRef -
-
-
-FlatpakRemoteRef:download-size, object property in FlatpakRemoteRef -
-
-
-FlatpakRemoteRef:end-of-life, object property in FlatpakRemoteRef -
-
-
-FlatpakRemoteRef:end-of-life-rebase, object property in FlatpakRemoteRef -
-
-
-FlatpakRemoteRef:installed-size, object property in FlatpakRemoteRef -
-
-
-FlatpakRemoteRef:metadata, object property in FlatpakRemoteRef -
-
-
-FlatpakRemoteRef:remote-name, object property in FlatpakRemoteRef -
-
-
-FlatpakRemoteType, enum in FlatpakRemote -
-
-
-flatpak_remote_get_appstream_dir, function in FlatpakRemote -
-
-
-flatpak_remote_get_appstream_timestamp, function in FlatpakRemote -
-
-
-flatpak_remote_get_collection_id, function in FlatpakRemote -
-
-
-flatpak_remote_get_comment, function in FlatpakRemote -
-
-
-flatpak_remote_get_default_branch, function in FlatpakRemote -
-
-
-flatpak_remote_get_description, function in FlatpakRemote -
-
-
-flatpak_remote_get_disabled, function in FlatpakRemote -
-
-
-flatpak_remote_get_filter, function in FlatpakRemote -
-
-
-flatpak_remote_get_gpg_verify, function in FlatpakRemote -
-
-
-flatpak_remote_get_homepage, function in FlatpakRemote -
-
-
-flatpak_remote_get_icon, function in FlatpakRemote -
-
-
-flatpak_remote_get_main_ref, function in FlatpakRemote -
-
-
-flatpak_remote_get_name, function in FlatpakRemote -
-
-
-flatpak_remote_get_nodeps, function in FlatpakRemote -
-
-
-flatpak_remote_get_noenumerate, function in FlatpakRemote -
-
-
-flatpak_remote_get_prio, function in FlatpakRemote -
-
-
-flatpak_remote_get_remote_type, function in FlatpakRemote -
-
-
-flatpak_remote_get_title, function in FlatpakRemote -
-
-
-flatpak_remote_get_url, function in FlatpakRemote -
-
-
-flatpak_remote_new, function in FlatpakRemote -
-
-
-flatpak_remote_new_from_file, function in FlatpakRemote -
-
-
-flatpak_remote_ref_get_download_size, function in FlatpakRemoteRef -
-
-
-flatpak_remote_ref_get_eol, function in FlatpakRemoteRef -
-
-
-flatpak_remote_ref_get_eol_rebase, function in FlatpakRemoteRef -
-
-
-flatpak_remote_ref_get_installed_size, function in FlatpakRemoteRef -
-
-
-flatpak_remote_ref_get_metadata, function in FlatpakRemoteRef -
-
-
-flatpak_remote_ref_get_remote_name, function in FlatpakRemoteRef -
-
-
-flatpak_remote_set_collection_id, function in FlatpakRemote -
-
-
-flatpak_remote_set_comment, function in FlatpakRemote -
-
-
-flatpak_remote_set_default_branch, function in FlatpakRemote -
-
-
-flatpak_remote_set_description, function in FlatpakRemote -
-
-
-flatpak_remote_set_disabled, function in FlatpakRemote -
-
-
-flatpak_remote_set_filter, function in FlatpakRemote -
-
-
-flatpak_remote_set_gpg_key, function in FlatpakRemote -
-
-
-flatpak_remote_set_gpg_verify, function in FlatpakRemote -
-
-
-flatpak_remote_set_homepage, function in FlatpakRemote -
-
-
-flatpak_remote_set_icon, function in FlatpakRemote -
-
-
-flatpak_remote_set_main_ref, function in FlatpakRemote -
-
-
-flatpak_remote_set_nodeps, function in FlatpakRemote -
-
-
-flatpak_remote_set_noenumerate, function in FlatpakRemote -
-
-
-flatpak_remote_set_prio, function in FlatpakRemote -
-
-
-flatpak_remote_set_title, function in FlatpakRemote -
-
-
-flatpak_remote_set_url, function in FlatpakRemote -
-
-

S

-
-FlatpakStorageType, enum in FlatpakInstallation -
-
-

T

-
-FlatpakTransaction, struct in FlatpakTransaction -
-
-
-FlatpakTransaction::add-new-remote, object signal in FlatpakTransaction -
-
-
-FlatpakTransaction::basic-auth-start, object signal in FlatpakTransaction -
-
-
-FlatpakTransaction::choose-remote-for-ref, object signal in FlatpakTransaction -
-
-
-FlatpakTransaction::end-of-lifed, object signal in FlatpakTransaction -
-
-
-FlatpakTransaction::end-of-lifed-with-rebase, object signal in FlatpakTransaction -
-
-
-FlatpakTransaction::install-authenticator, object signal in FlatpakTransaction -
-
-
-FlatpakTransaction::new-operation, object signal in FlatpakTransaction -
-
-
-FlatpakTransaction::operation-done, object signal in FlatpakTransaction -
-
-
-FlatpakTransaction::operation-error, object signal in FlatpakTransaction -
-
-
-FlatpakTransaction::ready, object signal in FlatpakTransaction -
-
-
-FlatpakTransaction::ready-pre-auth, object signal in FlatpakTransaction -
-
-
-FlatpakTransaction::webflow-done, object signal in FlatpakTransaction -
-
-
-FlatpakTransaction::webflow-start, object signal in FlatpakTransaction -
-
-
-FlatpakTransaction:installation, object property in FlatpakTransaction -
-
-
-FlatpakTransaction:no-interaction, object property in FlatpakTransaction -
-
-
-FlatpakTransactionErrorDetails, enum in FlatpakTransaction -
-
-
-FlatpakTransactionOperation, struct in FlatpakTransactionOperation -
-
-
-FlatpakTransactionOperationType, enum in FlatpakTransaction -
-
-
-FlatpakTransactionProgress, struct in FlatpakTransactionProgress -
-
-
-FlatpakTransactionProgress::changed, object signal in FlatpakTransactionProgress -
-
-
-FlatpakTransactionRemoteReason, enum in FlatpakTransaction -
-
-
-FlatpakTransactionResult, enum in FlatpakTransaction -
-
-
-flatpak_transaction_abort_webflow, function in FlatpakTransaction -
-
-
-flatpak_transaction_add_default_dependency_sources, function in FlatpakTransaction -
-
-
-flatpak_transaction_add_dependency_source, function in FlatpakTransaction -
-
-
-flatpak_transaction_add_install, function in FlatpakTransaction -
-
-
-flatpak_transaction_add_install_bundle, function in FlatpakTransaction -
-
-
-flatpak_transaction_add_install_flatpakref, function in FlatpakTransaction -
-
-
-flatpak_transaction_add_rebase, function in FlatpakTransaction -
-
-
-flatpak_transaction_add_uninstall, function in FlatpakTransaction -
-
-
-flatpak_transaction_add_update, function in FlatpakTransaction -
-
-
-flatpak_transaction_get_current_operation, function in FlatpakTransaction -
-
-
-flatpak_transaction_get_installation, function in FlatpakTransaction -
-
-
-flatpak_transaction_get_no_deploy, function in FlatpakTransaction -
-
-
-flatpak_transaction_get_no_pull, function in FlatpakTransaction -
-
-
-flatpak_transaction_get_operations, function in FlatpakTransaction -
-
-
-flatpak_transaction_get_parent_window, function in FlatpakTransaction -
-
-
-flatpak_transaction_is_empty, function in FlatpakTransaction -
-
-
-flatpak_transaction_new_for_installation, function in FlatpakTransaction -
-
-
-flatpak_transaction_operation_get_bundle_path, function in FlatpakTransactionOperation -
-
-
-flatpak_transaction_operation_get_commit, function in FlatpakTransactionOperation -
-
-
-flatpak_transaction_operation_get_download_size, function in FlatpakTransactionOperation -
-
-
-flatpak_transaction_operation_get_installed_size, function in FlatpakTransactionOperation -
-
-
-flatpak_transaction_operation_get_metadata, function in FlatpakTransactionOperation -
-
-
-flatpak_transaction_operation_get_old_metadata, function in FlatpakTransactionOperation -
-
-
-flatpak_transaction_operation_get_operation_type, function in FlatpakTransactionOperation -
-
-
-flatpak_transaction_operation_get_ref, function in FlatpakTransactionOperation -
-
-
-flatpak_transaction_operation_get_remote, function in FlatpakTransactionOperation -
-
-
-flatpak_transaction_operation_type_to_string, function in FlatpakTransactionOperation -
-
-
-flatpak_transaction_progress_get_bytes_transferred, function in FlatpakTransactionProgress -
-
-
-flatpak_transaction_progress_get_is_estimating, function in FlatpakTransactionProgress -
-
-
-flatpak_transaction_progress_get_progress, function in FlatpakTransactionProgress -
-
-
-flatpak_transaction_progress_get_start_time, function in FlatpakTransactionProgress -
-
-
-flatpak_transaction_progress_get_status, function in FlatpakTransactionProgress -
-
-
-flatpak_transaction_progress_set_update_frequency, function in FlatpakTransactionProgress -
-
-
-flatpak_transaction_run, function in FlatpakTransaction -
-
-
-flatpak_transaction_set_default_arch, function in FlatpakTransaction -
-
-
-flatpak_transaction_set_disable_dependencies, function in FlatpakTransaction -
-
-
-flatpak_transaction_set_disable_prune, function in FlatpakTransaction -
-
-
-flatpak_transaction_set_disable_related, function in FlatpakTransaction -
-
-
-flatpak_transaction_set_disable_static_deltas, function in FlatpakTransaction -
-
-
-flatpak_transaction_set_force_uninstall, function in FlatpakTransaction -
-
-
-flatpak_transaction_set_no_deploy, function in FlatpakTransaction -
-
-
-flatpak_transaction_set_no_pull, function in FlatpakTransaction -
-
-
-flatpak_transaction_set_parent_window, function in FlatpakTransaction -
-
-
-flatpak_transaction_set_reinstall, function in FlatpakTransaction -
-
-

U

-
-FlatpakUninstallFlags, enum in FlatpakInstallation -
-
-
-FlatpakUpdateFlags, enum in FlatpakInstallation -
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/gdbus-org.freedesktop.Flatpak.Authenticator.html b/doc/reference/html/gdbus-org.freedesktop.Flatpak.Authenticator.html deleted file mode 100644 index 45540e6..0000000 --- a/doc/reference/html/gdbus-org.freedesktop.Flatpak.Authenticator.html +++ /dev/null @@ -1,271 +0,0 @@ - - - - -org.freedesktop.Flatpak.Authenticator: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

org.freedesktop.Flatpak.Authenticator

-

org.freedesktop.Flatpak.Authenticator

-
-
-

Methods

-
-RequestRefTokens (IN  s           handle_token,
-                  IN  a{sv}       authenticator_options,
-                  IN  s           remote,
-                  IN  s           remote_uri,
-                  IN  a(ssia{sv}) refs,
-                  IN  a{sv}       options,
-                  IN  s           parent_window,
-                  OUT o           handle);
-
-
-
-

Properties

-
-version  readable   u
-
-
-
-

Description

-

-

-

-

-
-
-

Method Details

-
-

The RequestRefTokens() method

-
-RequestRefTokens (IN  s           handle_token,
-                  IN  a{sv}       authenticator_options,
-                  IN  s           remote,
-                  IN  s           remote_uri,
-                  IN  a(ssia{sv}) refs,
-                  IN  a{sv}       options,
-                  IN  s           parent_window,
-                  OUT o           handle);
-
-

-

-

- object path element. See the org.freedesktop.Flatpak.AuthenticatorRequest documentation for - more information about the handle. -authenticator_options: Data from the xa.authenticator-options key in the configuration for the remote, it is up to the authenticator to interpret this how it wants. -remote: The name of the remote we're pulling from. -remote_uri: The uri of the remote we're pulling from. -refs: An array of ref that flatpak wants to pull and info about each ref. -options: An extensible dict with extra options. -parent_window: Identifier for the application window, see xdg-desktop-portal docs for details on its format. -handle: Object path for the org.freedesktop.Flatpak.AuthenticatorRequest object representing this call. -

-

-Starts a request for resolving the tokens to use for refs from the remote (with uri remote_uri). -

-

-This is not a regular dbus call that blocks until the result is done, instead it creates -a org.freedesktop.Flatpak.AuthenticatorRequest object representing the ongoing operation and -returns an object path handle to it. When the operation succeds the Response signal is emitted -on the request with a response status and a dict with details. -

-

-The refs array elements are of type (ssia{sv}) where the items are: -

- - - - - -
s: The ref being pulled
s: The exact commit being pulled
i: The token-type of the commit
a{sv}: Extra per-ref metadata, currenlty only has summary.* fields which are copied from the summary per-commit metadata.
-

-

-

-On success (response 0) the returned details should have: -

-
---- - - - - -

tokens a{sas}

- A list of tokens (the first element of the struct), and the refs (the second). -

-

-

-

-For other response types, see the org.freedesktop.Flatpak.AuthenticatorRequest docs. -

-

-Exactly how the authenticator decides on what token to use is up to each implementation, but typically it needs to talk to -some kind of network service which in turn may need interaction such as login or entering credit card details. -This can be done in two ways: -

-

-The authenticator can use a native ui toolkit directly (as its running in the session). To make this work well the -flatpak client can (if its has a UI) pass in the parent_window argument, allowing the authenticator to open its -dialog in a way that is correctly parented. -

-

-Alternatively, if the interaction is web-based, then rather than showing a web browser itself it can emit -the WebFlow signal on the request object, which lets the flatpak client show a webview embedded in its ui in a -way that works best with its user interface. -

-

-For simple user/password authentication (such as http basic authentication systems) there is also a BasicAuth signal -that can be used to get the user to interactively authenticate. This kind of authentication is quite limited, but -if used it can allow nice interactive authentication even in the command line case. -

-

-Currently used keys in the options argument: -

-
---- - - - - - - - - - - -

xa.oci-registry-uri s

- For OCI remotes this is extracted from the summary file and contains the uri to the OCI registry that - contains the images. -

no-interation b

- If true, the authenticator should not do any interaction (and fail instead if it needs to). This can be enabled by - clients that want to run in the background. -

-

-

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IN s handle_token:

-A string that will be used as the last element of the handle. Must be a valid -

IN a{sv} authenticator_options:

-

-

-

-

-

IN s remote:

-

-

-

-

-

IN s remote_uri:

-

-

-

-

-

IN a(ssia{sv}) refs:

-

-

-

-

-

IN a{sv} options:

-

-

-

-

-

IN s parent_window:

-

-

-

-

-

OUT o handle:

-

-

-

-

-
-
-
-
-

Property Details

-
-

The "version" property

-
-version  readable   u
-
-

-

-

-

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/gdbus-org.freedesktop.Flatpak.AuthenticatorRequest.html b/doc/reference/html/gdbus-org.freedesktop.Flatpak.AuthenticatorRequest.html deleted file mode 100644 index a174e31..0000000 --- a/doc/reference/html/gdbus-org.freedesktop.Flatpak.AuthenticatorRequest.html +++ /dev/null @@ -1,266 +0,0 @@ - - - - -org.freedesktop.Flatpak.AuthenticatorRequest: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

org.freedesktop.Flatpak.AuthenticatorRequest

-

org.freedesktop.Flatpak.AuthenticatorRequest

-
-
-

Methods

-
-Close          ();
-BasicAuthReply (IN  s     user,
-                IN  s     password,
-                IN  a{sv} options);
-
-
-
-

Signals

-
-Webflow     (s     uri,
-             a{sv} options);
-WebflowDone (a{sv} options);
-BasicAuth   (s     realm,
-             a{sv} options);
-Response    (u     response,
-             a{sv} results);
-
-
-
-

Description

-

-

-

-

-
-
-

Method Details

-
-

The Close() method

-
-Close ();
-
-

-Closes the authenticator request to which this object refers and ends all -related user interaction (dialogs, webflows etc). -

-

-A Response signal with the cancelled response will be emitted if the operation -was cancelled. There is still a posibility of a race, so the operation might succeed -or fail before processing the close request, so there is no guarantee that the -operation will be cancelled. -

-
-
-
-

The BasicAuthReply() method

-
-BasicAuthReply (IN  s     user,
-                IN  s     password,
-                IN  a{sv} options);
-
-

-Call to finish the request started with the BasicAuth signal. -

-
---- - - - - - - - - - - - - - - -

IN s user:

-The user -

IN s password:

-The password -

IN a{sv} options:

-An extensible dict with extra options. -

-
-
-
-

Signal Details

-
-

The "Webflow" signal

-
-Webflow (s     uri,
-         a{sv} options);
-
-

-Emitted by the authenticator when it needs to do web-based interaction. The -client handles this by showing the URI in a graphical web view. Typically the uri -includes information about a final redirect to a localhost uri that will happen -when the operation is finished allowing the authenticator to get the result of -the operation. This is similar to how OAUTH2 webflows typically work. -

-

-If at any point the user closes or otherwise dismisses the web view the client -should call the org.freedesktop.Flatpak.AuthenticatorRequest.Close method to -tell the authenticator that the operation is aborted. -

-
---- - - - - - - - - - - -

s uri:

-The uri to show -

a{sv} options:

-An extensible dict with extra options. -

-
-
-
-

The "WebflowDone" signal

-
-WebflowDone (a{sv} options);
-
-

-Emitted by the authenticator when the web view is done, at this point the client -can close the WebView. -

-
---- - - - - -

a{sv} options:

-An extensible dict with extra options. -

-
-
-
-

The "BasicAuth" signal

-
-BasicAuth (s     realm,
-           a{sv} options);
-
-

-Emitted by the authenticator when it needs to do a simple user + password authentication. -This is only useful for very simple authentication interaction, but this is still used (for -instance for http basic access authentication), and for those cases this allows a nicely -integrated UI and CLI experience. -

-
---- - - - - - - - - - - -

s realm:

-String showing what the auth is for, similar to http basic auth realm. -

a{sv} options:

-An extensible dict with extra options. -

-
-
-
-

The "Response" signal

-
-Response (u     response,
-          a{sv} results);
-
-

-

-

-Emitted when the user interaction for a portal request is over. -The response indicates how the user interaction ended: -

- - - - -
0: Success, the request is carried out
1: The user cancelled the interaction
2: The user interaction was ended in some other way
-

-In the case of an error (response 2) results can contain a error-message value -describing what went wrong. -

-
---- - - - - - - - - - - -

u response:

-Numeric response -

a{sv} results:

-Vardict with results. The keys and values in the vardict depend on the request. -

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/gdbus-org.freedesktop.Flatpak.Development.html b/doc/reference/html/gdbus-org.freedesktop.Flatpak.Development.html deleted file mode 100644 index 834e67d..0000000 --- a/doc/reference/html/gdbus-org.freedesktop.Flatpak.Development.html +++ /dev/null @@ -1,294 +0,0 @@ - - - - -org.freedesktop.Flatpak.Development: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

org.freedesktop.Flatpak.Development

-

org.freedesktop.Flatpak.Development — Flatpak development interface

-
-
-

Methods

-
-HostCommand       (IN  ay    cwd_path,
-                   IN  aay   argv,
-                   IN  a{uh} fds,
-                   IN  a{ss} envs,
-                   IN  u     flags,
-                   OUT u     pid);
-HostCommandSignal (IN  u     pid,
-                   IN  u     signal,
-                   IN  b     to_process_group);
-
-
-
-

Signals

-
-HostCommandExited (u pid,
-                   u exit_status);
-
-
-
-

Properties

-
-version  readable   u
-
-
-
-

Description

-

-The Development interface lets any client, possibly in a sandbox if -it has access to the session helper, spawn a process on the host, -outside any sandbox. -

-

-Clearly this is not something you typically want a sandboxed app to -do: it is a sandbox escape allowing arbitrary code execution, -and must not be allowed for applications where sandboxing is -intended to be a security boundary. -

-

-However, it is very useful when using Flatpak for distribution and -choice of runtime library stack, without intending to create a -security boundary. For instance, if an IDE like GNOME Builder is -distributed as a trusted Flatpak app and will be used to build other -Flatpak apps, it needs to use this facility to launch a Flatpak -build operation inside the sandbox, because otherwise recursive -calls to flatpak will not work. -

-

-This interface is provided on the D-Bus session bus by the -well-known D-Bus name org.freedesktop.Flatpak, -at the object path /org/freedesktop/Flatpak/Development. -

-

-This documentation describes version 1 of this interface. -

-
-
-

Method Details

-
-

The HostCommand() method

-
-HostCommand (IN  ay    cwd_path,
-             IN  aay   argv,
-             IN  a{uh} fds,
-             IN  a{ss} envs,
-             IN  u     flags,
-             OUT u     pid);
-
-

-This method lets trusted applications (insider or outside a -sandbox) run arbitrary commands in the user's session, outside -any sandbox. -

-

-The following flags values are supported: -

-

-

-
---- - - - - - - - - - - -

1 (FLATPAK_HOST_COMMAND_FLAGS_CLEAR_ENV)

- Clear the environment. -

2 (FLATPAK_HOST_COMMAND_FLAGS_WATCH_BUS)

- Kill the sandbox when the caller disappears from the session bus. -

-

-

-

-Unknown (unsupported) flags are an error and will cause HostCommand() -to fail. -

-

-Note that unlike org.freedesktop.portal.Flatpak.Spawn(), there -is no options parameter here. -

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - -

IN ay cwd_path:

-the working directory for the new process -

IN aay argv:

-the argv for the new process, starting with the executable to launch -

IN a{uh} fds:

-an array of file descriptors to pass to the new process -

IN a{ss} envs:

-an array of variable/value pairs for the environment of the new process -

IN u flags:

-flags -

OUT u pid:

-the PID of the new process -

-
-
-
-

The HostCommandSignal() method

-
-HostCommandSignal (IN  u pid,
-                   IN  u signal,
-                   IN  b to_process_group);
-
-

-This method lets you send a Unix signal to a process -that was started with HostCommand(). -The pid argument here must be a PID that was returned by a -call to HostCommand() from the same sender: terminating unrelated -processes is not allowed. -

-
---- - - - - - - - - - - - - - - -

IN u pid:

-the process ID on the host system -

IN u signal:

-the signal to send (see signal(7)) -

IN b to_process_group:

-whether to send the signal to the process group -

-
-
-
-

Signal Details

-
-

The "HostCommandExited" signal

-
-HostCommandExited (u pid,
-                   u exit_status);
-
-

-Emitted when a process started by -HostCommand() exits. -Use g_spawn_check_exit_status(), or the macros such as -WIFEXITED documented in -waitpid(2), -to interpret the exit_status. -

-

-This signal is not emitted for processes that were not launched -directly by HostCommand(), for example if a process launched by -HostCommand() runs foreground or background child processes. -

-
---- - - - - - - - - - - -

u pid:

-the PID of the process that has ended -

u exit_status:

-the wait status (see waitpid(2)) -

-
-
-
-

Property Details

-
-

The "version" property

-
-version  readable   u
-
-

-The API version number. -This documentation describes version 1 of this interface. -

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/gdbus-org.freedesktop.Flatpak.SessionHelper.html b/doc/reference/html/gdbus-org.freedesktop.Flatpak.SessionHelper.html deleted file mode 100644 index e8d601c..0000000 --- a/doc/reference/html/gdbus-org.freedesktop.Flatpak.SessionHelper.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - -org.freedesktop.Flatpak.SessionHelper: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

org.freedesktop.Flatpak.SessionHelper

-

org.freedesktop.Flatpak.SessionHelper — Flatpak session service

-
-
-

Methods

-
-RequestSession (OUT a{sv} data);
-
-
-
-

Properties

-
-version  readable   u
-
-
-
-

Description

-

-The Flatpak session service is used by the -flatpak run command -to bridge various resources from the host system into Flatpak -sandboxes. It is not intended to be contacted by third-party -applications or libraries. -

-

-This interface is provided on the D-Bus session bus by the -well-known D-Bus name org.freedesktop.Flatpak, -at the object path /org/freedesktop/Flatpak/SessionHelper. -

-

-Note that the service owning the org.freedesktop.Flatpak -well-known name also exports the -org.freedesktop.Flatpak.Development interface. As a result, -letting a sandboxed application contact that well-known name -is a sandbox escape, which must only be allowed for trusted -applications where there is not intended to be any security -boundary between sandbox and host system. -

-

-This documentation describes version 1 of this interface. -

-
-
-

Method Details

-
-

The RequestSession() method

-
-RequestSession (OUT a{sv} data);
-
-

-Set up monitoring and resources for a -flatpak run session. -See the Flatpak source code for details. -

-
---- - - - - -

OUT a{sv} data:

-Information about the new session -

-
-
-
-

Property Details

-
-

The "version" property

-
-version  readable   u
-
-

-The API version number. -This documentation describes version 1 of this interface. -

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/gdbus-org.freedesktop.Flatpak.SystemHelper.html b/doc/reference/html/gdbus-org.freedesktop.Flatpak.SystemHelper.html deleted file mode 100644 index 120b5bf..0000000 --- a/doc/reference/html/gdbus-org.freedesktop.Flatpak.SystemHelper.html +++ /dev/null @@ -1,977 +0,0 @@ - - - - -org.freedesktop.Flatpak.SystemHelper: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

org.freedesktop.Flatpak.SystemHelper

-

org.freedesktop.Flatpak.SystemHelper — Flatpak system service

-
-
-

Methods

-
-Deploy             (IN  ay repo_path,
-                    IN  u  flags,
-                    IN  s  ref,
-                    IN  s  origin,
-                    IN  as subpaths,
-                    IN  as previous_ids,
-                    IN  s  installation);
-DeployAppstream    (IN  ay repo_path,
-                    IN  u  flags,
-                    IN  s  origin,
-                    IN  s  arch,
-                    IN  s  installation);
-Uninstall          (IN  u  flags,
-                    IN  s  ref,
-                    IN  s  installation);
-InstallBundle      (IN  ay bundle_path,
-                    IN  u  flags,
-                    IN  s  remote,
-                    IN  s  installation,
-                    OUT s  ref);
-ConfigureRemote    (IN  u  flags,
-                    IN  s  remote,
-                    IN  s  config,
-                    IN  ay gpg_key,
-                    IN  s  installation);
-Configure          (IN  u  flags,
-                    IN  s  key,
-                    IN  s  value,
-                    IN  s  installation);
-UpdateRemote       (IN  u  flags,
-                    IN  s  remote,
-                    IN  s  installation,
-                    IN  ay summary_path,
-                    IN  ay summary_sig_path);
-RemoveLocalRef     (IN  u  flags,
-                    IN  s  remote,
-                    IN  s  ref,
-                    IN  s  installation);
-PruneLocalRepo     (IN  u  flags,
-                    IN  s  installation);
-RunTriggers        (IN  u  flags,
-                    IN  s  installation);
-EnsureRepo         (IN  u  flags,
-                    IN  s  installation);
-UpdateSummary      (IN  u  flags,
-                    IN  s  installation);
-GenerateOciSummary (IN  u  flags,
-                    IN  s  origin,
-                    IN  s  installation);
-CancelPull         (IN  u  flags,
-                    IN  s  installation,
-                    IN  s  src_dir);
-GetRevokefsFd      (IN  u  flags,
-                    IN  s  installation,
-                    OUT h  fd_index,
-                    OUT s  src_dir);
-
-
-
-

Properties

-
-version  readable   u
-
-
-
-

Description

-

-The Flatpak system service is used by the libflatpak library -to manipulate Flatpak applications and runtimes that are installed -system-wide, for example when implementing -flatpak install. -It is not intended to be contacted by third-party applications -or libraries. See the Flatpak source code for more -details of this interface's methods. -

-

-This interface is provided on the D-Bus system bus by the -well-known D-Bus name org.freedesktop.Flatpak.SystemHelper, -at the object path /org/freedesktop/Flatpak/SystemHelper. -

-

-The system helper runs as a privileged user at the system level, -and receives method calls from less-privileged users. -Authorization for method calls on this interface is mediated by -polkit (formerly PolicyKit) using the policy configuration -org.freedesktop.Flatpak.policy, and can be configured by -system administrators in the same way as for any other system service -that uses polkit. -

-
-
-

Method Details

-
-

The Deploy() method

-
-Deploy (IN  ay repo_path,
-        IN  u  flags,
-        IN  s  ref,
-        IN  s  origin,
-        IN  as subpaths,
-        IN  as previous_ids,
-        IN  s  installation);
-
-

-

-

-

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IN ay repo_path:

-

-

-

-

-

IN u flags:

-

-

-

-

-

IN s ref:

-

-

-

-

-

IN s origin:

-

-

-

-

-

IN as subpaths:

-

-

-

-

-

IN as previous_ids:

-

-

-

-

-

IN s installation:

-

-

-

-

-
-
-
-
-

The DeployAppstream() method

-
-DeployAppstream (IN  ay repo_path,
-                 IN  u  flags,
-                 IN  s  origin,
-                 IN  s  arch,
-                 IN  s  installation);
-
-

-

-

-

-
---- - - - - - - - - - - - - - - - - - - - - - - -

IN ay repo_path:

-

-

-

-

-

IN u flags:

-

-

-

-

-

IN s origin:

-

-

-

-

-

IN s arch:

-

-

-

-

-

IN s installation:

-

-

-

-

-
-
-
-
-

The Uninstall() method

-
-Uninstall (IN  u flags,
-           IN  s ref,
-           IN  s installation);
-
-

-

-

-

-
---- - - - - - - - - - - - - - - -

IN u flags:

-

-

-

-

-

IN s ref:

-

-

-

-

-

IN s installation:

-

-

-

-

-
-
-
-
-

The InstallBundle() method

-
-InstallBundle (IN  ay bundle_path,
-               IN  u  flags,
-               IN  s  remote,
-               IN  s  installation,
-               OUT s  ref);
-
-

-

-

-

-
---- - - - - - - - - - - - - - - - - - - - - - - -

IN ay bundle_path:

-

-

-

-

-

IN u flags:

-

-

-

-

-

IN s remote:

-

-

-

-

-

IN s installation:

-

-

-

-

-

OUT s ref:

-

-

-

-

-
-
-
-
-

The ConfigureRemote() method

-
-ConfigureRemote (IN  u  flags,
-                 IN  s  remote,
-                 IN  s  config,
-                 IN  ay gpg_key,
-                 IN  s  installation);
-
-

-

-

-

-
---- - - - - - - - - - - - - - - - - - - - - - - -

IN u flags:

-

-

-

-

-

IN s remote:

-

-

-

-

-

IN s config:

-

-

-

-

-

IN ay gpg_key:

-

-

-

-

-

IN s installation:

-

-

-

-

-
-
-
-
-

The Configure() method

-
-Configure (IN  u flags,
-           IN  s key,
-           IN  s value,
-           IN  s installation);
-
-

-

-

-

-
---- - - - - - - - - - - - - - - - - - - -

IN u flags:

-

-

-

-

-

IN s key:

-

-

-

-

-

IN s value:

-

-

-

-

-

IN s installation:

-

-

-

-

-
-
-
-
-

The UpdateRemote() method

-
-UpdateRemote (IN  u  flags,
-              IN  s  remote,
-              IN  s  installation,
-              IN  ay summary_path,
-              IN  ay summary_sig_path);
-
-

-

-

-

-
---- - - - - - - - - - - - - - - - - - - - - - - -

IN u flags:

-

-

-

-

-

IN s remote:

-

-

-

-

-

IN s installation:

-

-

-

-

-

IN ay summary_path:

-

-

-

-

-

IN ay summary_sig_path:

-

-

-

-

-
-
-
-
-

The RemoveLocalRef() method

-
-RemoveLocalRef (IN  u flags,
-                IN  s remote,
-                IN  s ref,
-                IN  s installation);
-
-

-

-

-

-
---- - - - - - - - - - - - - - - - - - - -

IN u flags:

-

-

-

-

-

IN s remote:

-

-

-

-

-

IN s ref:

-

-

-

-

-

IN s installation:

-

-

-

-

-
-
-
-
-

The PruneLocalRepo() method

-
-PruneLocalRepo (IN  u flags,
-                IN  s installation);
-
-

-

-

-

-
---- - - - - - - - - - - -

IN u flags:

-

-

-

-

-

IN s installation:

-

-

-

-

-
-
-
-
-

The RunTriggers() method

-
-RunTriggers (IN  u flags,
-             IN  s installation);
-
-

-

-

-

-
---- - - - - - - - - - - -

IN u flags:

-

-

-

-

-

IN s installation:

-

-

-

-

-
-
-
-
-

The EnsureRepo() method

-
-EnsureRepo (IN  u flags,
-            IN  s installation);
-
-

-

-

-

-
---- - - - - - - - - - - -

IN u flags:

-

-

-

-

-

IN s installation:

-

-

-

-

-
-
-
-
-

The UpdateSummary() method

-
-UpdateSummary (IN  u flags,
-               IN  s installation);
-
-

-

-

-

-
---- - - - - - - - - - - -

IN u flags:

-

-

-

-

-

IN s installation:

-

-

-

-

-
-
-
-
-

The GenerateOciSummary() method

-
-GenerateOciSummary (IN  u flags,
-                    IN  s origin,
-                    IN  s installation);
-
-

-

-

-

-
---- - - - - - - - - - - - - - - -

IN u flags:

-

-

-

-

-

IN s origin:

-

-

-

-

-

IN s installation:

-

-

-

-

-
-
-
-
-

The CancelPull() method

-
-CancelPull (IN  u flags,
-            IN  s installation,
-            IN  s src_dir);
-
-

-

-

-

-
---- - - - - - - - - - - - - - - -

IN u flags:

-

-

-

-

-

IN s installation:

-

-

-

-

-

IN s src_dir:

-

-

-

-

-
-
-
-
-

The GetRevokefsFd() method

-
-GetRevokefsFd (IN  u flags,
-               IN  s installation,
-               OUT h fd_index,
-               OUT s src_dir);
-
-

-

-

-

-
---- - - - - - - - - - - - - - - - - - - -

IN u flags:

-

-

-

-

-

IN s installation:

-

-

-

-

-

OUT h fd_index:

-

-

-

-

-

OUT s src_dir:

-

-

-

-

-
-
-
-
-

Property Details

-
-

The "version" property

-
-version  readable   u
-
-

-

-

-

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/gdbus-org.freedesktop.impl.portal.PermissionStore.html b/doc/reference/html/gdbus-org.freedesktop.impl.portal.PermissionStore.html deleted file mode 100644 index 6e65ce4..0000000 --- a/doc/reference/html/gdbus-org.freedesktop.impl.portal.PermissionStore.html +++ /dev/null @@ -1,483 +0,0 @@ - - - - -org.freedesktop.impl.portal.PermissionStore: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

org.freedesktop.impl.portal.PermissionStore

-

org.freedesktop.impl.portal.PermissionStore — Database to store permissions

-
-
-

Methods

-
-Lookup           (IN  s      table,
-                  IN  s      id,
-                  OUT a{sas} permissions,
-                  OUT v      data);
-Set              (IN  s      table,
-                  IN  b      create,
-                  IN  s      id,
-                  IN  a{sas} app_permissions,
-                  IN  v      data);
-Delete           (IN  s      table,
-                  IN  s      id);
-SetValue         (IN  s      table,
-                  IN  b      create,
-                  IN  s      id,
-                  IN  v      data);
-SetPermission    (IN  s      table,
-                  IN  b      create,
-                  IN  s      id,
-                  IN  s      app,
-                  IN  as     permissions);
-DeletePermission (IN  s      table,
-                  IN  s      id,
-                  IN  s      app);
-List             (IN  s      table,
-                  OUT as     ids);
-
-
-
-

Signals

-
-Changed (s      table,
-         s      id,
-         b      deleted,
-         v      data,
-         a{sas} permissions);
-
-
-
-

Properties

-
-version  readable   u
-
-
-
-

Description

-

-The permission store can be used by portals to store permissions -that sandboxed applications have to various resources, such as -files outside the sandbox. -

-

-Since the resources managed by portals can be varied, the permission -store is fairly free-form: there can be multiple tables; resources are -identified by an ID, as are applications, and permissions are stored as -string arrays. None of these strings are interpreted by the permission -store in any way. -

-

-In addition, the permission store allows to associate extra data -(in the form of a GVariant) with each resource. -

-

-This document describes version 2 of the permission store interface. -

-
-
-

Method Details

-
-

The Lookup() method

-
-Lookup (IN  s      table,
-        IN  s      id,
-        OUT a{sas} permissions,
-        OUT v      data);
-
-

-Looks up the entry for a resource in one of the tables and returns -all associated application permissions and data. -

-
---- - - - - - - - - - - - - - - - - - - -

IN s table:

-the name of the table to use -

IN s id:

-the resource ID to look up -

OUT a{sas} permissions:

-map from application ID to permissions -

OUT v data:

-data that is associated with the resource -

-
-
-
-

The Set() method

-
-Set (IN  s      table,
-     IN  b      create,
-     IN  s      id,
-     IN  a{sas} app_permissions,
-     IN  v      data);
-
-

-Writes the entry for a resource in the given table. -

-
---- - - - - - - - - - - - - - - - - - - - - - - -

IN s table:

-the name of the table to use -

IN b create:

-whether to create the table if it does not exist -

IN s id:

-the resource ID to modify -

IN a{sas} app_permissions:

-map from application ID to permissions -

IN v data:

-data to associate with the resource -

-
-
-
-

The Delete() method

-
-Delete (IN  s table,
-        IN  s id);
-
-

-Removes the entry for a resource in the given table. -

-
---- - - - - - - - - - - -

IN s table:

-the name of the table to use -

IN s id:

-the resource ID to delete -

-
-
-
-

The SetValue() method

-
-SetValue (IN  s table,
-          IN  b create,
-          IN  s id,
-          IN  v data);
-
-

-Sets just the data for a resource in the given table. -

-
---- - - - - - - - - - - - - - - - - - - -

IN s table:

-the name of the table to use -

IN b create:

-whether to create the table if it does not exist -

IN s id:

-the resource ID to modify -

IN v data:

-data to associate with the resource -

-
-
-
-

The SetPermission() method

-
-SetPermission (IN  s  table,
-               IN  b  create,
-               IN  s  id,
-               IN  s  app,
-               IN  as permissions);
-
-

-Sets the permissions for an application and a resource -in the given table. -

-
---- - - - - - - - - - - - - - - - - - - - - - - -

IN s table:

-the name of the table to use -

IN b create:

-whether to create the table if it does not exist -

IN s id:

-the resource ID to modify -

IN s app:

-the application ID to modify -

IN as permissions:

-permissions to set -

-
-
-
-

The DeletePermission() method

-
-DeletePermission (IN  s table,
-                  IN  s id,
-                  IN  s app);
-
-

-Removes the entry for an application and a resource -in the given table. -

-

-This method was added in version 2. -

-
---- - - - - - - - - - - - - - - -

IN s table:

-the name of the table to use -

IN s id:

-the resource ID to modify -

IN s app:

-the application ID to modify -

-
-
-
-

The List() method

-
-List (IN  s  table,
-      OUT as ids);
-
-

-Returns all the resources that are present in the table. -

-
---- - - - - - - - - - - -

IN s table:

-the name of the table to use -

OUT as ids:

-IDs of all resources that are present in the table -

-
-
-
-

Signal Details

-
-

The "Changed" signal

-
-Changed (s      table,
-         s      id,
-         b      deleted,
-         v      data,
-         a{sas} permissions);
-
-

-The Changed signal is emitted when the entry for a resource -is modified or deleted. If the entry was deleted, then data -and permissions contain the last values that were found in the -database. If the entry was modified, they contain the new values. -

-
---- - - - - - - - - - - - - - - - - - - - - - - -

s table:

-the name of the table -

s id:

-

-

-

-

-

b deleted:

-whether the resource was deleted -

v data:

-the data that is associated the resource -

a{sas} permissions:

-the permissions that are associated with the resource -

-
-
-
-

Property Details

-
-

The "version" property

-
-version  readable   u
-
-

-

-

-

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/gdbus-org.freedesktop.portal.Documents.html b/doc/reference/html/gdbus-org.freedesktop.portal.Documents.html deleted file mode 100644 index 160079f..0000000 --- a/doc/reference/html/gdbus-org.freedesktop.portal.Documents.html +++ /dev/null @@ -1,653 +0,0 @@ - - - - -org.freedesktop.portal.Documents: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

org.freedesktop.portal.Documents

-

org.freedesktop.portal.Documents — Document portal

-
-
-

Methods

-
-GetMountPoint     (OUT ay     path);
-Add               (IN  h      o_path_fd,
-                   IN  b      reuse_existing,
-                   IN  b      persistent,
-                   OUT s      doc_id);
-AddNamed          (IN  h      o_path_parent_fd,
-                   IN  ay     filename,
-                   IN  b      reuse_existing,
-                   IN  b      persistent,
-                   OUT s      doc_id);
-AddFull           (IN  ah     o_path_fds,
-                   IN  u      flags,
-                   IN  s      app_id,
-                   IN  as     permissions,
-                   OUT as     doc_ids,
-                   OUT a{sv}  extra_out);
-AddNamedFull      (IN  h      o_path_fd,
-                   IN  ay     filename,
-                   IN  u      flags,
-                   IN  s      app_id,
-                   IN  as     permissions,
-                   OUT s      doc_id,
-                   OUT a{sv}  extra_out);
-GrantPermissions  (IN  s      doc_id,
-                   IN  s      app_id,
-                   IN  as     permissions);
-RevokePermissions (IN  s      doc_id,
-                   IN  s      app_id,
-                   IN  as     permissions);
-Delete            (IN  s      doc_id);
-Lookup            (IN  ay     filename,
-                   OUT s      doc_id);
-Info              (IN  s      doc_id,
-                   OUT ay     path,
-                   OUT a{sas} apps);
-List              (IN  s      app_id,
-                   OUT a{say} docs);
-
-
-
-

Properties

-
-version  readable   u
-
-
-
-

Description

-

-The document portal allows to make files from the outside world -available to sandboxed applications in a controlled way. -

-

-Exported files will be made accessible to the application via -a fuse filesystem that gets mounted at /run/user/$UID/doc/. The -filesystem gets mounted both outside and inside the sandbox, but -the view inside the sandbox is restricted to just those files -that the application is allowed to access. -

-

-Individual files will appear at /run/user/$UID/doc/$DOC_ID/filename, -where $DOC_ID is the ID of the file in the document store. It is -returned by the Add() and -AddNamed() calls. -

-

-The permissions that the application has for a document store entry -(see GrantPermissions()) are reflected -in the POSIX mode bits in the fuse filesystem. -

-

-The D-Bus interface for the document portal is available under the -bus name org.freedesktop.portal.Documents and the object path -/org/freedesktop/portal/documents. -

-

-This documentation describes version 3 of this interface. -

-
-
-

Method Details

-
-

The GetMountPoint() method

-
-GetMountPoint (OUT ay path);
-
-

-Returns the path at which the document store fuse filesystem -is mounted. This will typically be /run/user/$UID/doc/. -

-
---- - - - - -

OUT ay path:

-the path at which the fuse filesystem is mounted -

-
-
-
-

The Add() method

-
-Add (IN  h o_path_fd,
-     IN  b reuse_existing,
-     IN  b persistent,
-     OUT s doc_id);
-
-

-Adds a file to the document store. The file is passed in the -form of an open file descriptor to prove that the caller has -access to the file. -

-
---- - - - - - - - - - - - - - - - - - - -

IN h o_path_fd:

-open file descriptor for the file to add -

IN b reuse_existing:

-whether to reuse an existing document store entry for the file -

IN b persistent:

-whether to add the file only for this session or permanently -

OUT s doc_id:

-the ID of the file in the document store -

-
-
-
-

The AddNamed() method

-
-AddNamed (IN  h  o_path_parent_fd,
-          IN  ay filename,
-          IN  b  reuse_existing,
-          IN  b  persistent,
-          OUT s  doc_id);
-
-

-Creates an entry in the document store for writing a new file. -

-
---- - - - - - - - - - - - - - - - - - - - - - - -

IN h o_path_parent_fd:

-open file descriptor for the parent directory -

IN ay filename:

-the basename for the file -

IN b reuse_existing:

-whether to reuse an existing document store entry for the file -

IN b persistent:

-whether to add the file only for this session or permanently -

OUT s doc_id:

-the ID of the file in the document store -

-
-
-
-

The AddFull() method

-
-AddFull (IN  ah    o_path_fds,
-         IN  u     flags,
-         IN  s     app_id,
-         IN  as    permissions,
-         OUT as    doc_ids,
-         OUT a{sv} extra_out);
-
-

-Adds multiple files to the document store. The file is passed in the -form of an open file descriptor to prove that the caller has -access to the file. -

-

-If the as-needed-by-app flag is given, files will only be added to -the document store if the application does not already have access to them. -For files that are not added to the document store, the doc_ids array will -contain an empty string. -

-

-Additionally, if app_id is specified, it will be given the permissions -listed in GrantPermission. -

-

-The method also returns some extra info that can be used to avoid -multiple roundtrips. For now it only contains as "mountpoint", the -fuse mountpoint of the document portal. -

-

-This method was added in version 2 of the org.freedesktop.portal.Documents interface. -

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - -

IN ah o_path_fds:

-open file descriptors for the files to export -

IN u flags:

-flags, 1 == reuse_existing, 2 == persistent, 4 == as-needed-by-app -

IN s app_id:

-an application ID, or empty string -

IN as permissions:

-the permissions to grant, possible values are 'read', 'write', 'grant-permissions' and 'delete' -

OUT as doc_ids:

-the IDs of the files in the document store -

OUT a{sv} extra_out:

-

-

-

-

-
-
-
-
-

The AddNamedFull() method

-
-AddNamedFull (IN  h     o_path_fd,
-              IN  ay    filename,
-              IN  u     flags,
-              IN  s     app_id,
-              IN  as    permissions,
-              OUT s     doc_id,
-              OUT a{sv} extra_out);
-
-

-Creates an entry in the document store for writing a new file. -

-

-If the as-needed-by-app flag is given, file will only be added to -the document store if the application does not already have access to it. -For file that is not added to the document store, the doc_id will -contain an empty string. -

-

-Additionally, if app_id is specified, it will be given the permissions -listed in GrantPermission. -

-

-The method also returns some extra info that can be used to avoid -multiple roundtrips. For now it only contains as "mountpoint", the -fuse mountpoint of the document portal. -

-

-This method was added in version 3 of the org.freedesktop.portal.Documents interface. -

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IN h o_path_fd:

-

-

-

-

-

IN ay filename:

-the basename for the file -

IN u flags:

-flags, 1 == reuse_existing, 2 == persistent, 4 == as-needed-by-app -

IN s app_id:

-an application ID, or empty string -

IN as permissions:

-the permissions to grant, possible values are 'read', 'write', 'grant-permissions' and 'delete' -

OUT s doc_id:

-the ID of the file in the document store -

OUT a{sv} extra_out:

-

-

-

-

-
-
-
-
-

The GrantPermissions() method

-
-GrantPermissions (IN  s  doc_id,
-                  IN  s  app_id,
-                  IN  as permissions);
-
-

-Grants access permissions for a file in the document store -to an application. -

-

-This call is available inside the sandbox if the application -has the 'grant-permissions' permission for the document. -

-
---- - - - - - - - - - - - - - - -

IN s doc_id:

-the ID of the file in the document store -

IN s app_id:

-the ID of the application to which permissions are granted -

IN as permissions:

-the permissions to grant, possible values are 'read', 'write', 'grant-permissions' and 'delete' -

-
-
-
-

The RevokePermissions() method

-
-RevokePermissions (IN  s  doc_id,
-                   IN  s  app_id,
-                   IN  as permissions);
-
-

-Revokes access permissions for a file in the document store -from an application. -

-

-This call is available inside the sandbox if the application -has the 'grant-permissions' permission for the document. -

-
---- - - - - - - - - - - - - - - -

IN s doc_id:

-the ID of the file in the document store -

IN s app_id:

-the ID of the application from which permissions are revoked -

IN as permissions:

-the permissions to revoke, possible values are 'read', 'write', 'grant-permissions' and 'delete' -

-
-
-
-

The Delete() method

-
-Delete (IN  s doc_id);
-
-

-Removes an entry from the document store. The file itself is -not deleted. -

-

-This call is available inside the sandbox if the application -has the 'delete' permission for the document. -

-
---- - - - - -

IN s doc_id:

-the ID of the file in the document store -

-
-
-
-

The Lookup() method

-
-Lookup (IN  ay filename,
-        OUT s  doc_id);
-
-

-Looks up the document ID for a file. -

-

-This call is not available inside the sandbox. -

-
---- - - - - - - - - - - -

IN ay filename:

-a path in the host filesystem -

OUT s doc_id:

-the ID of the file in the document store, or '' if the file is not in the document store -

-
-
-
-

The Info() method

-
-Info (IN  s      doc_id,
-      OUT ay     path,
-      OUT a{sas} apps);
-
-

-Gets the filesystem path and application permissions for a document store -entry. -

-

-This call is not available inside the sandbox. -

-
---- - - - - - - - - - - - - - - -

IN s doc_id:

-the ID of the file in the document store -

OUT ay path:

-the path for the file in the host filesystem -

OUT a{sas} apps:

-a dictionary mapping application IDs to the permissions for that application -

-
-
-
-

The List() method

-
-List (IN  s      app_id,
-      OUT a{say} docs);
-
-

-Lists documents in the document store for an application (or for -all applications). -

-

-This call is not available inside the sandbox. -

-
---- - - - - - - - - - - -

IN s app_id:

-an application ID, or '' to list all documents -

OUT a{say} docs:

-a dictonary mapping document IDs to their filesystem path -

-
-
-
-

Property Details

-
-

The "version" property

-
-version  readable   u
-
-

-

-

-

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/gdbus-org.freedesktop.portal.Flatpak.UpdateMonitor.html b/doc/reference/html/gdbus-org.freedesktop.portal.Flatpak.UpdateMonitor.html deleted file mode 100644 index 6eb9151..0000000 --- a/doc/reference/html/gdbus-org.freedesktop.portal.Flatpak.UpdateMonitor.html +++ /dev/null @@ -1,277 +0,0 @@ - - - - -org.freedesktop.portal.Flatpak.UpdateMonitor: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

org.freedesktop.portal.Flatpak.UpdateMonitor

-

org.freedesktop.portal.Flatpak.UpdateMonitor

-
-
-

Methods

-
-Close  ();
-Update (IN  s     parent_window,
-        IN  a{sv} options);
-
-
-
-

Signals

-
-UpdateAvailable (a{sv} update_info);
-Progress        (a{sv} info);
-
-
-
-

Description

-

-

-

-

-
-
-

Method Details

-
-

The Close() method

-
-Close ();
-
-

-Ends the update monitoring and cancels any ongoing -installation. -

-
-
-
-

The Update() method

-
-Update (IN  s     parent_window,
-        IN  a{sv} options);
-
-

-

-

- see Common Conventions -options: Vardict with optional further information -

-

-Asks to install an update of the calling app. -During the installation, -"Progress" -signals will be emitted to communicate the status -and progress. -

-

-Note that updates are only allowed if the new version -has the same permissions (or less) than the currently installed -version. If the new version requires a new permission then the -operation will fail with the error org.freedesktop.DBus.Error.NotSupported -and updates has to be done with the system tools. -

-

-Currently, no options are accepted. -

-
---- - - - - - - - - - - -

IN s parent_window:

-Identifier for the application window, -

IN a{sv} options:

-

-

-

-

-
-
-
-
-

Signal Details

-
-

The "UpdateAvailable" signal

-
-UpdateAvailable (a{sv} update_info);
-
-

-Gets emitted when a new update is available. This is only -sent once with the same information, but can be sent many -times if new updates appear. -

-

-The following information may be included in the -update_info dictionary: -

-
---- - - - - - - - - - - - - - - -

running-commit s

- The commit of the currently running instance. -

local-commit s

- The commit that is currently installed. Restarting - the application will cause this commit to be used. -

remote-commit s

- The commit that is available as an update from the - remote. Updating the application will deploy this - commit. -

-

-

-
---- - - - - -

a{sv} update_info:

-More information about the available update -

-
-
-
-

The "Progress" signal

-
-Progress (a{sv} info);
-
-

-Gets emitted to indicate progress of the installation. It's -undefined exactly how often this is sent, but it will be emitted -at least once at the end with non-zero status field. For each -successful operation in the update we're also guaranteed to send -one (and only one) signal with progress 100. -

-

-The following fields may be included in the info: -

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - -

n_ops u

- The number of operations that the update - consists of. -

op u

- The position of the currently active - operation. -

progress u

- The progress of the currently active - operation, as a number between 0 and 100. -

status u

-

- The overall status of the update. -

- - - - - -
0: Running
1: Empty. No update to install
2: Done
3: Failed
-

-

-

error s

- The error name, sent when status is Failed -

error_message s

- The error message, sent when status is Failed -

-

-

-
---- - - - - -

a{sv} info:

-More information about the update progress -

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/gdbus-org.freedesktop.portal.Flatpak.html b/doc/reference/html/gdbus-org.freedesktop.portal.Flatpak.html deleted file mode 100644 index cbaeca4..0000000 --- a/doc/reference/html/gdbus-org.freedesktop.portal.Flatpak.html +++ /dev/null @@ -1,399 +0,0 @@ - - - - -org.freedesktop.portal.Flatpak: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-
-
- - -
-

org.freedesktop.portal.Flatpak

-

org.freedesktop.portal.Flatpak — Flatpak portal

-
-
-

Methods

-
-Spawn               (IN  ay    cwd_path,
-                     IN  aay   argv,
-                     IN  a{uh} fds,
-                     IN  a{ss} envs,
-                     IN  u     flags,
-                     IN  a{sv} options,
-                     OUT u     pid);
-SpawnSignal         (IN  u     pid,
-                     IN  u     signal,
-                     IN  b     to_process_group);
-CreateUpdateMonitor (IN  a{sv} options,
-                     OUT o     handle);
-
-
-
-

Signals

-
-SpawnStarted (u pid,
-              u relpid);
-SpawnExited  (u pid,
-              u exit_status);
-
-
-
-

Properties

-
-version   readable   u
-supports  readable   u
-
-
-
-

Description

-

-The flatpak portal exposes some interactions with flatpak on the -host to the sandbox. For example, it allows you to restart the -applications or start a more sandboxed instance. -

-

-This portal is available on the D-Bus session bus under the -bus name org.freedesktop.portal.Flatpak and the object path -/org/freedesktop/portal/Flatpak. -

-

-This documentation describes version 6 of this interface. -

-
-
-

Method Details

-
-

The Spawn() method

-
-Spawn (IN  ay    cwd_path,
-       IN  aay   argv,
-       IN  a{uh} fds,
-       IN  a{ss} envs,
-       IN  u     flags,
-       IN  a{sv} options,
-       OUT u     pid);
-
-

-

-

-

-
---- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IN ay cwd_path:

-

-

-

-

-

IN aay argv:

-

-

-

-

-

IN a{uh} fds:

-

-

-

-

-

IN a{ss} envs:

-

-

-

-

-

IN u flags:

-

-

-

-

-

IN a{sv} options:

-

-

-

-

-

OUT u pid:

-

-

-

-

-
-
-
-
-

The SpawnSignal() method

-
-SpawnSignal (IN  u pid,
-             IN  u signal,
-             IN  b to_process_group);
-
-

-This method lets you send a Unix signal to a process -that was started with Spawn(). -The pid argument here should be the PID that is returned -by the Spawn() call: it is not necessarily valid in the caller's -PID namespace. -

-
---- - - - - - - - - - - - - - - -

IN u pid:

-the PID inside the container to signal -

IN u signal:

-the signal to send (see signal(7)) -

IN b to_process_group:

-whether to send the signal to the process group -

-
-
-
-

The CreateUpdateMonitor() method

-
-CreateUpdateMonitor (IN  a{sv} options,
-                     OUT o     handle);
-
-

-Creates an update monitor object that will emit -signals when an update for the caller becomes -available, and can be used to install it. -

-

-The handle will be of the form /org/freedesktop/portal/Flatpak/update_monitor/SENDER/TOKEN, -where SENDER is the caller's unique name, with the initial ':' removed and -all '.' replaced by '_', and TOKEN is a unique token that the caller can optionally provide -with the 'handle_token' key in the options vardict. -

-

-Currently, no other options are accepted. -

-

-This was added in version 2 of this interface (available from flatpak 1.5.0 and later). -

-
---- - - - - - - - - - - -

IN a{sv} options:

-Vardict with optional further information -

OUT o handle:

-Object path for the org.freedesktop.portal.Flatpak.UpdateMonitor object -

-
-
-
-

Signal Details

-
-

The "SpawnStarted" signal

-
-SpawnStarted (u pid,
-              u relpid);
-
-

-

-

-This is only non-zero if the expose PIDs flag (32) or the share -PIDs flag (128) was passed to -Spawn(), and it may still be zero if -the process exits before its relative PID could be read. -

-

-Emitted when a process started by Spawn() -has fully started. In other words, Spawn() returns once the sandbox -has been started, and this signal is emitted once the process inside -itself is started. -

-

-Only emitted by version 4 of this interface (available from flatpak -1.8.0 and later) and if the notify start flag (64) was passed to -Spawn(). -

-
---- - - - - - - - - - - -

u pid:

-the PID of the process that has been started -

u relpid:

-the PID of the process relative to the current namespace. -

-
-
-
-

The "SpawnExited" signal

-
-SpawnExited (u pid,
-             u exit_status);
-
-

-Emitted when a process started by Spawn() -exits. -Use g_spawn_check_exit_status(), or the macros such as -WIFEXITED documented in -waitpid(2), -to interpret the exit_status. -

-

-This signal is not emitted for processes that were not launched -directly by Spawn(), for example if a process launched by -Spawn() runs foreground or background child processes. -

-
---- - - - - - - - - - - -

u pid:

-the PID of the process that has ended -

u exit_status:

-the wait status (see waitpid(2)) -

-
-
-
-

Property Details

-
-

The "version" property

-
-version  readable   u
-
-

-

-

-

-
-
-
-

The "supports" property

-
-supports  readable   u
-
-

-Flags marking what optional features are available. - The following flags values are supported: -

-
---- - - - - -

1 (FLATPAK_SPAWN_SUPPORT_FLAGS_EXPOSE_PIDS)

- Supports the expose sandbox pids flag of Spawn. - If the version of this interface is 5 or later, this also - indicates that the share sandbox pids flag is available. -

-

-

-

- This was added in version 3 of this interface (available from flatpak 1.6.0 and later). -

-
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/home.png b/doc/reference/html/home.png deleted file mode 100644 index 39561628b701408b1b36fd465def5f27aa2b8dae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 256 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b zKpodXn9)gNb_Gz7y~NYkmHh<^Bfpx+%H@yxfI_{VE{-7GdlR?c+UK}f570+@}wR{?JGMH zdjrGk8kv)xah>*mz>~^6qq@D4%WuQM#ms-c2}k=pyuo~?R)y9&sg&_anZjHe_^s#wR+liP$mrMFa}RoKbLh*2~7Ze1YE5E diff --git a/doc/reference/html/index.html b/doc/reference/html/index.html deleted file mode 100644 index 53391f8..0000000 --- a/doc/reference/html/index.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - -Flatpak Library Reference Manual: Flatpak Library Reference Manual - - - - - - - -
-
-
-
-

- For flatpak 1.14.10 - -

-
-
-
-
-
Flatpak
-
-
-FlatpakInstallation — Installation information -
-
-FlatpakRemote — Remote repository -
-
-FlatpakTransactionOperation — Operation in a transaction -
-
-FlatpakTransactionProgress — Progress of an operation -
-
-FlatpakTransaction — Transaction information -
-
-FlatpakRef — Application reference -
-
-FlatpakInstalledRef — Installed application reference -
-
-FlatpakRelatedRef — Related application reference -
-
-FlatpakRemoteRef — Remote application reference -
-
-FlatpakBundleRef — Application bundle reference -
-
-FlatpakInstance — Information about a running sandbox -
-
-Error codes -
-
-Version information -
-
-
D-Bus APIs
-
-
-org.freedesktop.Flatpak.Authenticator -
-
-org.freedesktop.Flatpak.AuthenticatorRequest -
-
-org.freedesktop.Flatpak.Development — Flatpak development interface -
-
-org.freedesktop.Flatpak.SessionHelper — Flatpak session service -
-
-org.freedesktop.Flatpak.SystemHelper — Flatpak system service -
-
-org.freedesktop.impl.portal.PermissionStore — Database to store permissions -
-
-org.freedesktop.portal.Documents — Document portal -
-
-org.freedesktop.portal.Flatpak — Flatpak portal -
-
-org.freedesktop.portal.Flatpak.UpdateMonitor -
-
-
Object Hierarchy
-
API Index
-
Annotation Glossary
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/left-insensitive.png b/doc/reference/html/left-insensitive.png deleted file mode 100644 index 86d507fe3133d5528de1c5d3c518ce8f40dedd6a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 395 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b zKpodXn9)gNb_Gz7y~NYkmHh<^Bfpx+%H@yx7#J8OJY5_^EKZ-DwAPO~P@r}H%WrKg ztquzd76^*|Nh!X4;97##ER%zc4xd%~U6W6R@no+_0g3Z%|n}STH|D=SRPJOO9B~iR&mA7kP$nCe^yf-*(zde`nTw~^gWpV4z*S!lr z)wcJ0_kpXwKRit^m?8f(#LH}Z$XBKr0uz%3BlFB=^E)!#`^~GsdaPk@-TwOA>euv8s>SYYZo>GuN}6RF-f5m)U4vH`}&=CD40z+5O3 mzxowZ0r#1unNlCue_)dfja=GPV5{uKbLh*2~7axnW2XO diff --git a/doc/reference/html/left.png b/doc/reference/html/left.png deleted file mode 100644 index de3058e270a062253f2171b46e116b27fa331ca5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b zKpodXn9)gNb_Gz7y~NYkmHh<^Bfpx+%H@yxfI^c!T^vI!PG7yWp6_6yNc+cr`-3iy z0j!Y|W13XDcSRQnF4DemhspDT=PKU`Ica}1)Nj41^(}aGvvS_s>T?g{SG9`HTe0Mj ztPIn=rH5+gFvl&P$i!dBThSQBWpm8-L1flDO)eXQpC&PNm$d_aealh4qjX5-s?14- z=@WDU&rkePz;%-Ctc<7l@d-J_<(H1xeV - - - -Object Hierarchy: Flatpak Library Reference Manual - - - - - - - - - - - - - - - - -
-

-Object Hierarchy

-
-    GObject
-    ├── FlatpakRef
-       ├── FlatpakBundleRef
-       ├── FlatpakInstalledRef
-       ├── FlatpakRelatedRef
-       ╰── FlatpakRemoteRef
-    ├── FlatpakInstallation
-    ├── FlatpakInstance
-    ├── FlatpakRemote
-    ├── FlatpakTransaction
-    ├── FlatpakTransactionOperation
-    ╰── FlatpakTransactionProgress
-
-
- - - \ No newline at end of file diff --git a/doc/reference/html/right-insensitive.png b/doc/reference/html/right-insensitive.png deleted file mode 100644 index 8d96cea1ff955b51c6a190cc5366cde0470d63a9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 373 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b zKpodXn9)gNb_Gz7y~NYkmHh<^Bfpx+%H@yx7#J9tJY5_^EKZ-Dw9)Huf=KIrX|ATp z-J4hIF9?>I6t8mR;6ca2q6;^}HS8KDKVar)TDNj?F4Iz_*cjP4vMnz(CYo64`AObN zxnwN2WAx7eU*KK8HGLD&+Xjq%CJ7uql&S{xcbbdoV~^ibiCzfFl0}f*LL_} zn7V_A>wMS19Om)^UC%4|GiSZq&c<-0@Xy@mKPS$NW%54oHp9d!ck7X5n{=!vmoUy) zQv5uoKC$^&kg5I}bM>9!*T0GuFin}%H@EouS_aQaI^MesH`_iqeTMIlfy|aH1G)b2 z^vyRJZm`%j+*ROMwsw6$=+(dPKkQyI*MMhvtbL*LrPVWkp4*xJZ*LvLoRir{93QpD Q0|SV`)78&qol`;+0FU~XGXMYp diff --git a/doc/reference/html/right.png b/doc/reference/html/right.png deleted file mode 100644 index 50e8fc4c4f0c49cca1860dd31ee7e7fd4c99a6ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 261 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b zKpodXn9)gNb_Gz7y~NYkmHh<^Bfpx+%H@yxfI^czT^vI!PG7yWp06=cL dt -{ - padding-top: 0.25em; - padding-bottom: 0.25em; - font-weight: bold; -} - -dl.toc > dl -{ - padding-bottom: 0.5em; -} - -.parameter -{ - font-style: normal; -} - -.footer -{ - padding-top: 3.5em; - /* tango:aluminium 3 */ - color: #babdb6; - text-align: center; - font-size: 80%; -} - -.informalfigure, -.figure -{ - margin: 1em; -} - -.informalexample, -.example -{ - margin-top: 1em; - margin-bottom: 1em; -} - -.warning -{ - /* tango:orange 0/1 */ - background: #ffeed9; - background: rgba(252, 175, 62, 0.1); - border-color: #ffb04f; - border-color: rgba(252, 175, 62, 0.2); -} -.note -{ - /* tango:chameleon 0/0.5 */ - background: #d8ffb2; - background: rgba(138, 226, 52, 0.1); - border-color: #abf562; - border-color: rgba(138, 226, 52, 0.2); -} -div.blockquote -{ - border-color: #eeeeec; -} -.note, .warning, div.blockquote -{ - padding: 0.5em; - border-width: 1px; - border-style: solid; - margin: 2em; -} -.note p, .warning p -{ - margin: 0; -} - -div.warning h3.title, -div.note h3.title -{ - display: none; -} - -p + div.section -{ - margin-top: 1em; -} - -div.refnamediv, -div.refsynopsisdiv, -div.refsect1, -div.refsect2, -div.toc, -div.section -{ - margin-bottom: 1em; -} - -/* blob links */ -h2 .extralinks, h3 .extralinks -{ - float: right; - /* tango:aluminium 3 */ - color: #babdb6; - font-size: 80%; - font-weight: normal; -} - -.lineart -{ - color: #d3d7cf; - font-weight: normal; -} - -.annotation -{ - /* tango:aluminium 5 */ - color: #555753; - font-weight: normal; -} - -.structfield -{ - font-style: normal; - font-weight: normal; -} - -acronym,abbr -{ - border-bottom: 1px dotted gray; -} - -.listing_frame { - /* tango:sky blue 1 */ - border: solid 1px #729fcf; - border: solid 1px rgba(114, 159, 207, 0.2); - padding: 0px; -} - -.listing_lines, .listing_code { - margin-top: 0px; - margin-bottom: 0px; - padding: 0.5em; -} -.listing_lines { - /* tango:sky blue 0.5 */ - background: #a6c5e3; - background: rgba(114, 159, 207, 0.2); - /* tango:aluminium 6 */ - color: #2e3436; -} -.listing_code { - /* tango:sky blue 0 */ - background: #e6f3ff; - background: rgba(114, 159, 207, 0.1); -} -.listing_code .programlisting { - /* override from previous */ - border: none 0px; - padding: 0px; - background: none; -} -.listing_lines pre, .listing_code pre { - margin: 0px; -} - -@media screen { - /* these have a as a first child, but since there are no parent selectors - * we can't use that. */ - a.footnote - { - position: relative; - top: 0em ! important; - } - /* this is needed so that the local anchors are displayed below the naviagtion */ - div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name] - { - display: inline-block; - position: relative; - top:-5em; - } - /* this seems to be a bug in the xsl style sheets when generating indexes */ - div.index div.index - { - top: 0em; - } - /* make space for the fixed navigation bar and add space at the bottom so that - * link targets appear somewhat close to top - */ - body - { - padding-top: 2.5em; - padding-bottom: 500px; - max-width: 60em; - } - p - { - max-width: 60em; - } - /* style and size the navigation bar */ - table.navigation#top - { - position: fixed; - background: #e2e2e2; - border-bottom: solid 1px #babdb6; - border-spacing: 5px; - margin-top: 0; - margin-bottom: 0; - top: 0; - left: 0; - z-index: 10; - } - table.navigation#top td - { - padding-left: 6px; - padding-right: 6px; - } - .navigation a, .navigation a:visited - { - /* tango:sky blue 3 */ - color: #204a87; - } - .navigation a:hover - { - /* tango:sky blue 2 */ - color: #3465a4; - } - td.shortcuts - { - /* tango:sky blue 2 */ - color: #3465a4; - font-size: 80%; - white-space: nowrap; - } - td.shortcuts .dim - { - color: #babdb6; - } - .navigation .title - { - font-size: 80%; - max-width: none; - margin: 0px; - font-weight: normal; - } -} -@media screen and (min-width: 60em) { - /* screen larger than 60em */ - body { margin: auto; } -} -@media screen and (max-width: 60em) { - /* screen less than 60em */ - #nav_hierarchy { display: none; } - #nav_interfaces { display: none; } - #nav_prerequisites { display: none; } - #nav_derived_interfaces { display: none; } - #nav_implementations { display: none; } - #nav_child_properties { display: none; } - #nav_style_properties { display: none; } - #nav_index { display: none; } - #nav_glossary { display: none; } - .gallery_image { display: none; } - .property_flags { display: none; } - .signal_flags { display: none; } - .parameter_annotations { display: none; } - .enum_member_annotations { display: none; } - .struct_member_annotations { display: none; } - .union_member_annotations { display: none; } - /* now that a column is hidden, optimize space */ - col.parameters_name { width: auto; } - col.parameters_description { width: auto; } - col.struct_members_name { width: auto; } - col.struct_members_description { width: auto; } - col.enum_members_name { width: auto; } - col.enum_members_description { width: auto; } - col.union_members_name { width: auto; } - col.union_members_description { width: auto; } - .listing_lines { display: none; } -} -@media print { - table.navigation { - visibility: collapse; - display: none; - } - div.titlepage table.navigation { - visibility: visible; - display: table; - background: #e2e2e2; - border: solid 1px #babdb6; - margin-top: 0; - margin-bottom: 0; - top: 0; - left: 0; - height: 3em; - } -} - -pre { line-height: 125%; } -td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } -span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } -td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } -span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } -.hll { background-color: #ffffcc } -.c { color: #3D7B7B; font-style: italic } /* Comment */ -.err { border: 1px solid #FF0000 } /* Error */ -.k { color: #008000; font-weight: bold } /* Keyword */ -.o { color: #666666 } /* Operator */ -.ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */ -.cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */ -.cp { color: #9C6500 } /* Comment.Preproc */ -.cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */ -.c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */ -.cs { color: #3D7B7B; font-style: italic } /* Comment.Special */ -.gd { color: #A00000 } /* Generic.Deleted */ -.ge { font-style: italic } /* Generic.Emph */ -.ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */ -.gr { color: #E40000 } /* Generic.Error */ -.gh { color: #000080; font-weight: bold } /* Generic.Heading */ -.gi { color: #008400 } /* Generic.Inserted */ -.go { color: #717171 } /* Generic.Output */ -.gp { color: #000080; font-weight: bold } /* Generic.Prompt */ -.gs { font-weight: bold } /* Generic.Strong */ -.gu { color: #800080; font-weight: bold } /* Generic.Subheading */ -.gt { color: #0044DD } /* Generic.Traceback */ -.kc { color: #008000; font-weight: bold } /* Keyword.Constant */ -.kd { color: #008000; font-weight: bold } /* Keyword.Declaration */ -.kn { color: #008000; font-weight: bold } /* Keyword.Namespace */ -.kp { color: #008000 } /* Keyword.Pseudo */ -.kr { color: #008000; font-weight: bold } /* Keyword.Reserved */ -.kt { color: #B00040 } /* Keyword.Type */ -.m { color: #666666 } /* Literal.Number */ -.s { color: #BA2121 } /* Literal.String */ -.na { color: #687822 } /* Name.Attribute */ -.nb { color: #008000 } /* Name.Builtin */ -.nc { color: #0000FF; font-weight: bold } /* Name.Class */ -.no { color: #880000 } /* Name.Constant */ -.nd { color: #AA22FF } /* Name.Decorator */ -.ni { color: #717171; font-weight: bold } /* Name.Entity */ -.ne { color: #CB3F38; font-weight: bold } /* Name.Exception */ -.nf { color: #0000FF } /* Name.Function */ -.nl { color: #767600 } /* Name.Label */ -.nn { color: #0000FF; font-weight: bold } /* Name.Namespace */ -.nt { color: #008000; font-weight: bold } /* Name.Tag */ -.nv { color: #19177C } /* Name.Variable */ -.ow { color: #AA22FF; font-weight: bold } /* Operator.Word */ -.w { color: #bbbbbb } /* Text.Whitespace */ -.mb { color: #666666 } /* Literal.Number.Bin */ -.mf { color: #666666 } /* Literal.Number.Float */ -.mh { color: #666666 } /* Literal.Number.Hex */ -.mi { color: #666666 } /* Literal.Number.Integer */ -.mo { color: #666666 } /* Literal.Number.Oct */ -.sa { color: #BA2121 } /* Literal.String.Affix */ -.sb { color: #BA2121 } /* Literal.String.Backtick */ -.sc { color: #BA2121 } /* Literal.String.Char */ -.dl { color: #BA2121 } /* Literal.String.Delimiter */ -.sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */ -.s2 { color: #BA2121 } /* Literal.String.Double */ -.se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */ -.sh { color: #BA2121 } /* Literal.String.Heredoc */ -.si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */ -.sx { color: #008000 } /* Literal.String.Other */ -.sr { color: #A45A77 } /* Literal.String.Regex */ -.s1 { color: #BA2121 } /* Literal.String.Single */ -.ss { color: #19177C } /* Literal.String.Symbol */ -.bp { color: #008000 } /* Name.Builtin.Pseudo */ -.fm { color: #0000FF } /* Name.Function.Magic */ -.vc { color: #19177C } /* Name.Variable.Class */ -.vg { color: #19177C } /* Name.Variable.Global */ -.vi { color: #19177C } /* Name.Variable.Instance */ -.vm { color: #19177C } /* Name.Variable.Magic */ -.il { color: #666666 } /* Literal.Number.Integer.Long */ \ No newline at end of file diff --git a/doc/reference/html/up-insensitive.png b/doc/reference/html/up-insensitive.png deleted file mode 100644 index 77abaabb24bc67c7bfac7c0390951845f9c8fca3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 374 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b zKpodXn9)gNb_Gz7y~NYkmHh<^Bfpx+%H@yx7#J9tJzX3_EKa|jWUtQ>D01}tO#A3p zr7HUx!ZyE~eNpfcvqy-_=H4F+Q*L)S`D!mzoO$SsO@D{WW9=7TqH|O3#k6i`P5Qx5 zy{o$ToW7;G_>5J-*KRG|wT^$c%^ME>kgpa!%*kg??q>`QT|03PlR*2_@T+HaPOtmV zG9`7Vkn2U>hIy;rF*2MCW_X`_d)>3jy5HIdEVsYdyPw&BIU%FRlB2Y3)h_-7k>ekW z_TR7n$yjjiZ1sD2#xqP7;uCWxaWSm&%6==^pv#c2GTr5gD8nMo1(~x>3+z+hY0cTr zs~isv;(o7JzJ0!8+|TwMQ(`PIqTsbV4C Rzkngc;OXk;vd$@?2>^CrmcIZ1 diff --git a/doc/reference/html/up.png b/doc/reference/html/up.png deleted file mode 100644 index 11a4aeafe4c8ff716aea4350b8c07b415e1c1115..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 260 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b zKpodXn9)gNb_Gz7y~NYkmHh<^Bfpx+%H@yxfI<^JT^vI!PQRUG$kps1;xd2gw(8~z z7XHMU%{Pu%tHc&@+Ij`CY&l`5!+KibM{r7uu2}ENT7wN|=HEPj=+HSS@dtnMce40c zevZLys@4W>+6GUE!tU04Ii{0w_tkMIDB?rA5 zttYTN. - -#################################### -# Everything below here is generic # -#################################### - -if GTK_DOC_USE_LIBTOOL -GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -GTKDOC_RUN = $(LIBTOOL) --mode=execute -else -GTKDOC_CC = $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -GTKDOC_LD = $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -GTKDOC_RUN = -endif - -# We set GPATH here; this gives us semantics for GNU make -# which are more like other make's VPATH, when it comes to -# whether a source that is a target of one rule is then -# searched for in VPATH/GPATH. -# -GPATH = $(srcdir) - -TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE) - -SETUP_FILES = \ - $(content_files) \ - $(expand_content_files) \ - $(DOC_MAIN_SGML_FILE) \ - $(DOC_MODULE)-sections.txt \ - $(DOC_MODULE)-overrides.txt - -EXTRA_DIST = \ - $(HTML_IMAGES) \ - $(SETUP_FILES) - -DOC_STAMPS=setup-build.stamp scan-build.stamp sgml-build.stamp \ - html-build.stamp pdf-build.stamp \ - sgml.stamp html.stamp pdf.stamp - -SCANOBJ_FILES = \ - $(DOC_MODULE).actions \ - $(DOC_MODULE).args \ - $(DOC_MODULE).hierarchy \ - $(DOC_MODULE).interfaces \ - $(DOC_MODULE).prerequisites \ - $(DOC_MODULE).signals - -REPORT_FILES = \ - $(DOC_MODULE)-undocumented.txt \ - $(DOC_MODULE)-undeclared.txt \ - $(DOC_MODULE)-unused.txt - -gtkdoc-check.test: Makefile - $(AM_V_GEN)echo "#!/bin/sh -e" > $@; \ - echo "$(GTKDOC_CHECK_PATH) || exit 1" >> $@; \ - chmod +x $@ - -CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) gtkdoc-check.test - -if GTK_DOC_BUILD_HTML -HTML_BUILD_STAMP=html-build.stamp -else -HTML_BUILD_STAMP= -endif -if GTK_DOC_BUILD_PDF -PDF_BUILD_STAMP=pdf-build.stamp -else -PDF_BUILD_STAMP= -endif - -all-gtk-doc: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) -.PHONY: all-gtk-doc - -if ENABLE_GTK_DOC -all-local: all-gtk-doc -endif - -docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) - -$(REPORT_FILES): sgml-build.stamp - -#### setup #### - -GTK_DOC_V_SETUP=$(GTK_DOC_V_SETUP_@AM_V@) -GTK_DOC_V_SETUP_=$(GTK_DOC_V_SETUP_@AM_DEFAULT_V@) -GTK_DOC_V_SETUP_0=@echo " DOC Preparing build"; - -setup-build.stamp: - -$(GTK_DOC_V_SETUP)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ - files=`echo $(SETUP_FILES) $(DOC_MODULE).types`; \ - if test "x$$files" != "x" ; then \ - for file in $$files ; do \ - destdir=`dirname $(abs_builddir)/$$file`; \ - test -d "$$destdir" || mkdir -p "$$destdir"; \ - test -f $(abs_srcdir)/$$file && \ - cp -pf $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \ - done; \ - fi; \ - fi - $(AM_V_at)touch setup-build.stamp - -#### scan #### - -GTK_DOC_V_SCAN=$(GTK_DOC_V_SCAN_@AM_V@) -GTK_DOC_V_SCAN_=$(GTK_DOC_V_SCAN_@AM_DEFAULT_V@) -GTK_DOC_V_SCAN_0=@echo " DOC Scanning header files"; - -GTK_DOC_V_INTROSPECT=$(GTK_DOC_V_INTROSPECT_@AM_V@) -GTK_DOC_V_INTROSPECT_=$(GTK_DOC_V_INTROSPECT_@AM_DEFAULT_V@) -GTK_DOC_V_INTROSPECT_0=@echo " DOC Introspecting gobjects"; - -scan-build.stamp: setup-build.stamp $(HFILE_GLOB) $(CFILE_GLOB) - $(GTK_DOC_V_SCAN)_source_dir='' ; \ - for i in $(DOC_SOURCE_DIR) ; do \ - _source_dir="$${_source_dir} --source-dir=$$i" ; \ - done ; \ - gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES) - $(GTK_DOC_V_INTROSPECT)if grep -l '^..*$$' $(DOC_MODULE).types > /dev/null 2>&1 ; then \ - scanobj_options=""; \ - gtkdoc-scangobj 2>&1 --help | grep >/dev/null "\--verbose"; \ - if test "$$?" = "0"; then \ - if test "x$(V)" = "x1"; then \ - scanobj_options="--verbose"; \ - fi; \ - fi; \ - CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" \ - gtkdoc-scangobj $(SCANGOBJ_OPTIONS) $$scanobj_options --module=$(DOC_MODULE); \ - else \ - for i in $(SCANOBJ_FILES) ; do \ - test -f $$i || touch $$i ; \ - done \ - fi - $(AM_V_at)touch scan-build.stamp - -$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp - @true - -#### xml #### - -GTK_DOC_V_XML=$(GTK_DOC_V_XML_@AM_V@) -GTK_DOC_V_XML_=$(GTK_DOC_V_XML_@AM_DEFAULT_V@) -GTK_DOC_V_XML_0=@echo " DOC Building XML"; - -sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt $(expand_content_files) xml/gtkdocentities.ent - $(GTK_DOC_V_XML)_source_dir='' ; \ - for i in $(DOC_SOURCE_DIR) ; do \ - _source_dir="$${_source_dir} --source-dir=$$i" ; \ - done ; \ - gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS) - $(AM_V_at)touch sgml-build.stamp - -sgml.stamp: sgml-build.stamp - @true - -$(DOC_MAIN_SGML_FILE): sgml-build.stamp - @true - -xml/gtkdocentities.ent: Makefile - $(GTK_DOC_V_XML)$(MKDIR_P) $(@D) && ( \ - echo ""; \ - echo ""; \ - echo ""; \ - echo ""; \ - echo ""; \ - echo ""; \ - echo ""; \ - ) > $@ - -#### html #### - -GTK_DOC_V_HTML=$(GTK_DOC_V_HTML_@AM_V@) -GTK_DOC_V_HTML_=$(GTK_DOC_V_HTML_@AM_DEFAULT_V@) -GTK_DOC_V_HTML_0=@echo " DOC Building HTML"; - -GTK_DOC_V_XREF=$(GTK_DOC_V_XREF_@AM_V@) -GTK_DOC_V_XREF_=$(GTK_DOC_V_XREF_@AM_DEFAULT_V@) -GTK_DOC_V_XREF_0=@echo " DOC Fixing cross-references"; - -html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files) - $(GTK_DOC_V_HTML)rm -rf html && mkdir html && \ - mkhtml_options=""; \ - gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\--verbose"; \ - if test "$$?" = "0"; then \ - if test "x$(V)" = "x1"; then \ - mkhtml_options="$$mkhtml_options --verbose"; \ - fi; \ - fi; \ - gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\--path"; \ - if test "$$?" = "0"; then \ - mkhtml_options="$$mkhtml_options --path=\"$(abs_srcdir)\""; \ - fi; \ - cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) - -@test "x$(HTML_IMAGES)" = "x" || \ - for file in $(HTML_IMAGES) ; do \ - test -f $(abs_srcdir)/$$file && cp $(abs_srcdir)/$$file $(abs_builddir)/html; \ - test -f $(abs_builddir)/$$file && cp $(abs_builddir)/$$file $(abs_builddir)/html; \ - test -f $$file && cp $$file $(abs_builddir)/html; \ - done; - $(GTK_DOC_V_XREF)gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) - $(AM_V_at)touch html-build.stamp - -#### pdf #### - -GTK_DOC_V_PDF=$(GTK_DOC_V_PDF_@AM_V@) -GTK_DOC_V_PDF_=$(GTK_DOC_V_PDF_@AM_DEFAULT_V@) -GTK_DOC_V_PDF_0=@echo " DOC Building PDF"; - -pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files) - $(GTK_DOC_V_PDF)rm -f $(DOC_MODULE).pdf && \ - mkpdf_options=""; \ - gtkdoc-mkpdf 2>&1 --help | grep >/dev/null "\--verbose"; \ - if test "$$?" = "0"; then \ - if test "x$(V)" = "x1"; then \ - mkpdf_options="$$mkpdf_options --verbose"; \ - fi; \ - fi; \ - if test "x$(HTML_IMAGES)" != "x"; then \ - for img in $(HTML_IMAGES); do \ - part=`dirname $$img`; \ - echo $$mkpdf_options | grep >/dev/null "\--imgdir=$$part "; \ - if test $$? != 0; then \ - mkpdf_options="$$mkpdf_options --imgdir=$$part"; \ - fi; \ - done; \ - fi; \ - gtkdoc-mkpdf --path="$(abs_srcdir)" $$mkpdf_options $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) $(MKPDF_OPTIONS) - $(AM_V_at)touch pdf-build.stamp - -############## - -clean-local: - @rm -f *~ *.bak - @rm -rf .libs - @if echo $(SCAN_OPTIONS) | grep -q "\--rebuild-types" ; then \ - rm -f $(DOC_MODULE).types; \ - fi - @if echo $(SCAN_OPTIONS) | grep -q "\--rebuild-sections" ; then \ - rm -f $(DOC_MODULE)-sections.txt; \ - fi - -distclean-local: - @rm -rf xml html $(REPORT_FILES) $(DOC_MODULE).pdf \ - $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt - @if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ - rm -f $(SETUP_FILES) $(DOC_MODULE).types; \ - fi - -maintainer-clean-local: - @rm -rf xml html - -install-data-local: - @installfiles=`echo $(builddir)/html/*`; \ - if test "$$installfiles" = '$(builddir)/html/*'; \ - then echo 1>&2 'Nothing to install' ; \ - else \ - if test -n "$(DOC_MODULE_VERSION)"; then \ - installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ - else \ - installdir="$(DESTDIR)$(TARGET_DIR)"; \ - fi; \ - $(mkinstalldirs) $${installdir} ; \ - for i in $$installfiles; do \ - echo ' $(INSTALL_DATA) '$$i ; \ - $(INSTALL_DATA) $$i $${installdir}; \ - done; \ - if test -n "$(DOC_MODULE_VERSION)"; then \ - mv -f $${installdir}/$(DOC_MODULE).devhelp2 \ - $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \ - fi; \ - $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \ - fi - -uninstall-local: - @if test -n "$(DOC_MODULE_VERSION)"; then \ - installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ - else \ - installdir="$(DESTDIR)$(TARGET_DIR)"; \ - fi; \ - rm -rf $${installdir} - -# -# Require gtk-doc when making dist -# -if HAVE_GTK_DOC -dist-check-gtkdoc: docs -else -dist-check-gtkdoc: - @echo "*** gtk-doc is needed to run 'make dist'. ***" - @echo "*** gtk-doc was not found when 'configure' ran. ***" - @echo "*** please install gtk-doc and rerun 'configure'. ***" - @false -endif - -dist-hook: dist-check-gtkdoc all-gtk-doc dist-hook-local - @mkdir $(distdir)/html - @cp ./html/* $(distdir)/html - @-cp ./$(DOC_MODULE).pdf $(distdir)/ - @-cp ./$(DOC_MODULE).types $(distdir)/ - @-cp ./$(DOC_MODULE)-sections.txt $(distdir)/ - @cd $(distdir) && rm -f $(DISTCLEANFILES) - @$(GTKDOC_REBASE) --online --relative --html-dir=$(distdir)/html - -.PHONY : dist-hook-local docs diff --git a/icon-validator/Makefile.am.inc b/icon-validator/Makefile.am.inc deleted file mode 100644 index eecbc47..0000000 --- a/icon-validator/Makefile.am.inc +++ /dev/null @@ -1,7 +0,0 @@ -libexec_PROGRAMS += \ - flatpak-validate-icon \ - $(NULL) - -flatpak_validate_icon_SOURCES = icon-validator/validate-icon.c -flatpak_validate_icon_LDADD = $(GDK_PIXBUF_LIBS) -flatpak_validate_icon_CFLAGS = $(AM_CFLAGS) $(GDK_PIXBUF_CFLAGS) -DLIBEXECDIR=\"$(libexecdir)\" diff --git a/icon-validator/meson.build b/icon-validator/meson.build new file mode 100644 index 0000000..0745d17 --- /dev/null +++ b/icon-validator/meson.build @@ -0,0 +1,12 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +executable( + 'flatpak-validate-icon', + install : true, + install_dir : get_option('libexecdir'), + dependencies : [ + gdk_pixbuf_dep, + ], + sources : ['validate-icon.c'], +) diff --git a/icon-validator/validate-icon.c b/icon-validator/validate-icon.c index 6c3d152..07767f8 100644 --- a/icon-validator/validate-icon.c +++ b/icon-validator/validate-icon.c @@ -39,7 +39,7 @@ validate_icon (const char *arg_width, GdkPixbufFormat *format; int max_width, max_height; int width, height; - const char *name; + g_autofree char *name = NULL; const char *allowed_formats[] = { "png", "jpeg", "svg", NULL }; g_autoptr(GdkPixbuf) pixbuf = NULL; g_autoptr(GError) error = NULL; @@ -228,12 +228,12 @@ rerun_in_sandbox (const char *arg_width, if (g_getenv ("G_MESSAGES_PREFIXED")) add_args (args, "--setenv", "G_MESSAGES_PREFIXED", g_getenv ("G_MESSAGES_PREFIXED"), NULL); - add_args (args, validate_icon, arg_width, arg_height, filename, NULL); + add_args (args, "--", validate_icon, arg_width, arg_height, filename, NULL); g_ptr_array_add (args, NULL); { g_autofree char *cmdline = g_strjoinv (" ", (char **) args->pdata); - g_debug ("Icon validation: Spawning %s", cmdline); + g_info ("Icon validation: Spawning %s", cmdline); } execvpe (flatpak_get_bwrap (), (char **) args->pdata, NULL); @@ -252,7 +252,7 @@ static GOptionEntry entries[] = { int main (int argc, char *argv[]) { - GOptionContext *context; + g_autoptr(GOptionContext) context = NULL; GError *error = NULL; context = g_option_context_new ("WIDTH HEIGHT PATH"); diff --git a/install-sh b/install-sh deleted file mode 100755 index ec298b5..0000000 --- a/install-sh +++ /dev/null @@ -1,541 +0,0 @@ -#!/bin/sh -# install - install a program, script, or datafile - -scriptversion=2020-11-14.01; # UTC - -# This originates from X11R5 (mit/util/scripts/install.sh), which was -# later released in X11R6 (xc/config/util/install.sh) with the -# following copyright and license. -# -# Copyright (C) 1994 X Consortium -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to -# deal in the Software without restriction, including without limitation the -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -# sell copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- -# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# -# Except as contained in this notice, the name of the X Consortium shall not -# be used in advertising or otherwise to promote the sale, use or other deal- -# ings in this Software without prior written authorization from the X Consor- -# tium. -# -# -# FSF changes to this file are in the public domain. -# -# Calling this script install-sh is preferred over install.sh, to prevent -# 'make' implicit rules from creating a file called install from it -# when there is no Makefile. -# -# This script is compatible with the BSD install script, but was written -# from scratch. - -tab=' ' -nl=' -' -IFS=" $tab$nl" - -# Set DOITPROG to "echo" to test this script. - -doit=${DOITPROG-} -doit_exec=${doit:-exec} - -# Put in absolute file names if you don't have them in your path; -# or use environment vars. - -chgrpprog=${CHGRPPROG-chgrp} -chmodprog=${CHMODPROG-chmod} -chownprog=${CHOWNPROG-chown} -cmpprog=${CMPPROG-cmp} -cpprog=${CPPROG-cp} -mkdirprog=${MKDIRPROG-mkdir} -mvprog=${MVPROG-mv} -rmprog=${RMPROG-rm} -stripprog=${STRIPPROG-strip} - -posix_mkdir= - -# Desired mode of installed file. -mode=0755 - -# Create dirs (including intermediate dirs) using mode 755. -# This is like GNU 'install' as of coreutils 8.32 (2020). -mkdir_umask=22 - -backupsuffix= -chgrpcmd= -chmodcmd=$chmodprog -chowncmd= -mvcmd=$mvprog -rmcmd="$rmprog -f" -stripcmd= - -src= -dst= -dir_arg= -dst_arg= - -copy_on_change=false -is_target_a_directory=possibly - -usage="\ -Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE - or: $0 [OPTION]... SRCFILES... DIRECTORY - or: $0 [OPTION]... -t DIRECTORY SRCFILES... - or: $0 [OPTION]... -d DIRECTORIES... - -In the 1st form, copy SRCFILE to DSTFILE. -In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. -In the 4th, create DIRECTORIES. - -Options: - --help display this help and exit. - --version display version info and exit. - - -c (ignored) - -C install only if different (preserve data modification time) - -d create directories instead of installing files. - -g GROUP $chgrpprog installed files to GROUP. - -m MODE $chmodprog installed files to MODE. - -o USER $chownprog installed files to USER. - -p pass -p to $cpprog. - -s $stripprog installed files. - -S SUFFIX attempt to back up existing files, with suffix SUFFIX. - -t DIRECTORY install into DIRECTORY. - -T report an error if DSTFILE is a directory. - -Environment variables override the default commands: - CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG - RMPROG STRIPPROG - -By default, rm is invoked with -f; when overridden with RMPROG, -it's up to you to specify -f if you want it. - -If -S is not specified, no backups are attempted. - -Email bug reports to bug-automake@gnu.org. -Automake home page: https://www.gnu.org/software/automake/ -" - -while test $# -ne 0; do - case $1 in - -c) ;; - - -C) copy_on_change=true;; - - -d) dir_arg=true;; - - -g) chgrpcmd="$chgrpprog $2" - shift;; - - --help) echo "$usage"; exit $?;; - - -m) mode=$2 - case $mode in - *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*) - echo "$0: invalid mode: $mode" >&2 - exit 1;; - esac - shift;; - - -o) chowncmd="$chownprog $2" - shift;; - - -p) cpprog="$cpprog -p";; - - -s) stripcmd=$stripprog;; - - -S) backupsuffix="$2" - shift;; - - -t) - is_target_a_directory=always - dst_arg=$2 - # Protect names problematic for 'test' and other utilities. - case $dst_arg in - -* | [=\(\)!]) dst_arg=./$dst_arg;; - esac - shift;; - - -T) is_target_a_directory=never;; - - --version) echo "$0 $scriptversion"; exit $?;; - - --) shift - break;; - - -*) echo "$0: invalid option: $1" >&2 - exit 1;; - - *) break;; - esac - shift -done - -# We allow the use of options -d and -T together, by making -d -# take the precedence; this is for compatibility with GNU install. - -if test -n "$dir_arg"; then - if test -n "$dst_arg"; then - echo "$0: target directory not allowed when installing a directory." >&2 - exit 1 - fi -fi - -if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then - # When -d is used, all remaining arguments are directories to create. - # When -t is used, the destination is already specified. - # Otherwise, the last argument is the destination. Remove it from $@. - for arg - do - if test -n "$dst_arg"; then - # $@ is not empty: it contains at least $arg. - set fnord "$@" "$dst_arg" - shift # fnord - fi - shift # arg - dst_arg=$arg - # Protect names problematic for 'test' and other utilities. - case $dst_arg in - -* | [=\(\)!]) dst_arg=./$dst_arg;; - esac - done -fi - -if test $# -eq 0; then - if test -z "$dir_arg"; then - echo "$0: no input file specified." >&2 - exit 1 - fi - # It's OK to call 'install-sh -d' without argument. - # This can happen when creating conditional directories. - exit 0 -fi - -if test -z "$dir_arg"; then - if test $# -gt 1 || test "$is_target_a_directory" = always; then - if test ! -d "$dst_arg"; then - echo "$0: $dst_arg: Is not a directory." >&2 - exit 1 - fi - fi -fi - -if test -z "$dir_arg"; then - do_exit='(exit $ret); exit $ret' - trap "ret=129; $do_exit" 1 - trap "ret=130; $do_exit" 2 - trap "ret=141; $do_exit" 13 - trap "ret=143; $do_exit" 15 - - # Set umask so as not to create temps with too-generous modes. - # However, 'strip' requires both read and write access to temps. - case $mode in - # Optimize common cases. - *644) cp_umask=133;; - *755) cp_umask=22;; - - *[0-7]) - if test -z "$stripcmd"; then - u_plus_rw= - else - u_plus_rw='% 200' - fi - cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; - *) - if test -z "$stripcmd"; then - u_plus_rw= - else - u_plus_rw=,u+rw - fi - cp_umask=$mode$u_plus_rw;; - esac -fi - -for src -do - # Protect names problematic for 'test' and other utilities. - case $src in - -* | [=\(\)!]) src=./$src;; - esac - - if test -n "$dir_arg"; then - dst=$src - dstdir=$dst - test -d "$dstdir" - dstdir_status=$? - # Don't chown directories that already exist. - if test $dstdir_status = 0; then - chowncmd="" - fi - else - - # Waiting for this to be detected by the "$cpprog $src $dsttmp" command - # might cause directories to be created, which would be especially bad - # if $src (and thus $dsttmp) contains '*'. - if test ! -f "$src" && test ! -d "$src"; then - echo "$0: $src does not exist." >&2 - exit 1 - fi - - if test -z "$dst_arg"; then - echo "$0: no destination specified." >&2 - exit 1 - fi - dst=$dst_arg - - # If destination is a directory, append the input filename. - if test -d "$dst"; then - if test "$is_target_a_directory" = never; then - echo "$0: $dst_arg: Is a directory" >&2 - exit 1 - fi - dstdir=$dst - dstbase=`basename "$src"` - case $dst in - */) dst=$dst$dstbase;; - *) dst=$dst/$dstbase;; - esac - dstdir_status=0 - else - dstdir=`dirname "$dst"` - test -d "$dstdir" - dstdir_status=$? - fi - fi - - case $dstdir in - */) dstdirslash=$dstdir;; - *) dstdirslash=$dstdir/;; - esac - - obsolete_mkdir_used=false - - if test $dstdir_status != 0; then - case $posix_mkdir in - '') - # With -d, create the new directory with the user-specified mode. - # Otherwise, rely on $mkdir_umask. - if test -n "$dir_arg"; then - mkdir_mode=-m$mode - else - mkdir_mode= - fi - - posix_mkdir=false - # The $RANDOM variable is not portable (e.g., dash). Use it - # here however when possible just to lower collision chance. - tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ - - trap ' - ret=$? - rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null - exit $ret - ' 0 - - # Because "mkdir -p" follows existing symlinks and we likely work - # directly in world-writeable /tmp, make sure that the '$tmpdir' - # directory is successfully created first before we actually test - # 'mkdir -p'. - if (umask $mkdir_umask && - $mkdirprog $mkdir_mode "$tmpdir" && - exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 - then - if test -z "$dir_arg" || { - # Check for POSIX incompatibilities with -m. - # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or - # other-writable bit of parent directory when it shouldn't. - # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. - test_tmpdir="$tmpdir/a" - ls_ld_tmpdir=`ls -ld "$test_tmpdir"` - case $ls_ld_tmpdir in - d????-?r-*) different_mode=700;; - d????-?--*) different_mode=755;; - *) false;; - esac && - $mkdirprog -m$different_mode -p -- "$test_tmpdir" && { - ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"` - test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" - } - } - then posix_mkdir=: - fi - rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" - else - # Remove any dirs left behind by ancient mkdir implementations. - rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null - fi - trap '' 0;; - esac - - if - $posix_mkdir && ( - umask $mkdir_umask && - $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" - ) - then : - else - - # mkdir does not conform to POSIX, - # or it failed possibly due to a race condition. Create the - # directory the slow way, step by step, checking for races as we go. - - case $dstdir in - /*) prefix='/';; - [-=\(\)!]*) prefix='./';; - *) prefix='';; - esac - - oIFS=$IFS - IFS=/ - set -f - set fnord $dstdir - shift - set +f - IFS=$oIFS - - prefixes= - - for d - do - test X"$d" = X && continue - - prefix=$prefix$d - if test -d "$prefix"; then - prefixes= - else - if $posix_mkdir; then - (umask $mkdir_umask && - $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break - # Don't fail if two instances are running concurrently. - test -d "$prefix" || exit 1 - else - case $prefix in - *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; - *) qprefix=$prefix;; - esac - prefixes="$prefixes '$qprefix'" - fi - fi - prefix=$prefix/ - done - - if test -n "$prefixes"; then - # Don't fail if two instances are running concurrently. - (umask $mkdir_umask && - eval "\$doit_exec \$mkdirprog $prefixes") || - test -d "$dstdir" || exit 1 - obsolete_mkdir_used=true - fi - fi - fi - - if test -n "$dir_arg"; then - { test -z "$chowncmd" || $doit $chowncmd "$dst"; } && - { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } && - { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false || - test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1 - else - - # Make a couple of temp file names in the proper directory. - dsttmp=${dstdirslash}_inst.$$_ - rmtmp=${dstdirslash}_rm.$$_ - - # Trap to clean up those temp files at exit. - trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 - - # Copy the file name to the temp name. - (umask $cp_umask && - { test -z "$stripcmd" || { - # Create $dsttmp read-write so that cp doesn't create it read-only, - # which would cause strip to fail. - if test -z "$doit"; then - : >"$dsttmp" # No need to fork-exec 'touch'. - else - $doit touch "$dsttmp" - fi - } - } && - $doit_exec $cpprog "$src" "$dsttmp") && - - # and set any options; do chmod last to preserve setuid bits. - # - # If any of these fail, we abort the whole thing. If we want to - # ignore errors from any of these, just make sure not to ignore - # errors from the above "$doit $cpprog $src $dsttmp" command. - # - { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } && - { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } && - { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } && - { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } && - - # If -C, don't bother to copy if it wouldn't change the file. - if $copy_on_change && - old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && - new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && - set -f && - set X $old && old=:$2:$4:$5:$6 && - set X $new && new=:$2:$4:$5:$6 && - set +f && - test "$old" = "$new" && - $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 - then - rm -f "$dsttmp" - else - # If $backupsuffix is set, and the file being installed - # already exists, attempt a backup. Don't worry if it fails, - # e.g., if mv doesn't support -f. - if test -n "$backupsuffix" && test -f "$dst"; then - $doit $mvcmd -f "$dst" "$dst$backupsuffix" 2>/dev/null - fi - - # Rename the file to the real destination. - $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || - - # The rename failed, perhaps because mv can't rename something else - # to itself, or perhaps because mv is so ancient that it does not - # support -f. - { - # Now remove or move aside any old file at destination location. - # We try this two ways since rm can't unlink itself on some - # systems and the destination file might be busy for other - # reasons. In this case, the final cleanup might fail but the new - # file should still install successfully. - { - test ! -f "$dst" || - $doit $rmcmd "$dst" 2>/dev/null || - { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && - { $doit $rmcmd "$rmtmp" 2>/dev/null; :; } - } || - { echo "$0: cannot unlink or rename $dst" >&2 - (exit 1); exit 1 - } - } && - - # Now rename the file to the real destination. - $doit $mvcmd "$dsttmp" "$dst" - } - fi || exit 1 - - trap '' 0 - fi -done - -# Local variables: -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC0" -# time-stamp-end: "; # UTC" -# End: diff --git a/ltmain.sh b/ltmain.sh deleted file mode 100755 index 1dea62a..0000000 --- a/ltmain.sh +++ /dev/null @@ -1,11436 +0,0 @@ -#! /usr/bin/env sh -## DO NOT EDIT - This file generated from ./build-aux/ltmain.in -## by inline-source v2019-02-19.15 - -# libtool (GNU libtool) 2.4.7 -# Provide generalized library-building support services. -# Written by Gordon Matzigkeit , 1996 - -# Copyright (C) 1996-2019, 2021-2022 Free Software Foundation, Inc. -# This is free software; see the source for copying conditions. There is NO -# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -# GNU Libtool is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - - -PROGRAM=libtool -PACKAGE=libtool -VERSION="2.4.7 Debian-2.4.7-7" -package_revision=2.4.7 - - -## ------ ## -## Usage. ## -## ------ ## - -# Run './libtool --help' for help with using this script from the -# command line. - - -## ------------------------------- ## -## User overridable command paths. ## -## ------------------------------- ## - -# After configure completes, it has a better idea of some of the -# shell tools we need than the defaults used by the functions shared -# with bootstrap, so set those here where they can still be over- -# ridden by the user, but otherwise take precedence. - -: ${AUTOCONF="autoconf"} -: ${AUTOMAKE="automake"} - - -## -------------------------- ## -## Source external libraries. ## -## -------------------------- ## - -# Much of our low-level functionality needs to be sourced from external -# libraries, which are installed to $pkgauxdir. - -# Set a version string for this script. -scriptversion=2019-02-19.15; # UTC - -# General shell script boiler plate, and helper functions. -# Written by Gary V. Vaughan, 2004 - -# This is free software. There is NO warranty; not even for -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# -# Copyright (C) 2004-2019, 2021 Bootstrap Authors -# -# This file is dual licensed under the terms of the MIT license -# , and GPL version 2 or later -# . You must apply one of -# these licenses when using or redistributing this software or any of -# the files within it. See the URLs above, or the file `LICENSE` -# included in the Bootstrap distribution for the full license texts. - -# Please report bugs or propose patches to: -# - - -## ------ ## -## Usage. ## -## ------ ## - -# Evaluate this file near the top of your script to gain access to -# the functions and variables defined here: -# -# . `echo "$0" | ${SED-sed} 's|[^/]*$||'`/build-aux/funclib.sh -# -# If you need to override any of the default environment variable -# settings, do that before evaluating this file. - - -## -------------------- ## -## Shell normalisation. ## -## -------------------- ## - -# Some shells need a little help to be as Bourne compatible as possible. -# Before doing anything else, make sure all that help has been provided! - -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in *posix*) set -o posix ;; esac -fi - -# NLS nuisances: We save the old values in case they are required later. -_G_user_locale= -_G_safe_locale= -for _G_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES -do - eval "if test set = \"\${$_G_var+set}\"; then - save_$_G_var=\$$_G_var - $_G_var=C - export $_G_var - _G_user_locale=\"$_G_var=\\\$save_\$_G_var; \$_G_user_locale\" - _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\" - fi" -done -# These NLS vars are set unconditionally (bootstrap issue #24). Unset those -# in case the environment reset is needed later and the $save_* variant is not -# defined (see the code above). -LC_ALL=C -LANGUAGE=C -export LANGUAGE LC_ALL - -# Make sure IFS has a sensible default -sp=' ' -nl=' -' -IFS="$sp $nl" - -# There are apparently some retarded systems that use ';' as a PATH separator! -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# func_unset VAR -# -------------- -# Portably unset VAR. -# In some shells, an 'unset VAR' statement leaves a non-zero return -# status if VAR is already unset, which might be problematic if the -# statement is used at the end of a function (thus poisoning its return -# value) or when 'set -e' is active (causing even a spurious abort of -# the script in this case). -func_unset () -{ - { eval $1=; (eval unset $1) >/dev/null 2>&1 && eval unset $1 || : ; } -} - - -# Make sure CDPATH doesn't cause `cd` commands to output the target dir. -func_unset CDPATH - -# Make sure ${,E,F}GREP behave sanely. -func_unset GREP_OPTIONS - - -## ------------------------- ## -## Locate command utilities. ## -## ------------------------- ## - - -# func_executable_p FILE -# ---------------------- -# Check that FILE is an executable regular file. -func_executable_p () -{ - test -f "$1" && test -x "$1" -} - - -# func_path_progs PROGS_LIST CHECK_FUNC [PATH] -# -------------------------------------------- -# Search for either a program that responds to --version with output -# containing "GNU", or else returned by CHECK_FUNC otherwise, by -# trying all the directories in PATH with each of the elements of -# PROGS_LIST. -# -# CHECK_FUNC should accept the path to a candidate program, and -# set $func_check_prog_result if it truncates its output less than -# $_G_path_prog_max characters. -func_path_progs () -{ - _G_progs_list=$1 - _G_check_func=$2 - _G_PATH=${3-"$PATH"} - - _G_path_prog_max=0 - _G_path_prog_found=false - _G_save_IFS=$IFS; IFS=${PATH_SEPARATOR-:} - for _G_dir in $_G_PATH; do - IFS=$_G_save_IFS - test -z "$_G_dir" && _G_dir=. - for _G_prog_name in $_G_progs_list; do - for _exeext in '' .EXE; do - _G_path_prog=$_G_dir/$_G_prog_name$_exeext - func_executable_p "$_G_path_prog" || continue - case `"$_G_path_prog" --version 2>&1` in - *GNU*) func_path_progs_result=$_G_path_prog _G_path_prog_found=: ;; - *) $_G_check_func $_G_path_prog - func_path_progs_result=$func_check_prog_result - ;; - esac - $_G_path_prog_found && break 3 - done - done - done - IFS=$_G_save_IFS - test -z "$func_path_progs_result" && { - echo "no acceptable sed could be found in \$PATH" >&2 - exit 1 - } -} - - -# We want to be able to use the functions in this file before configure -# has figured out where the best binaries are kept, which means we have -# to search for them ourselves - except when the results are already set -# where we skip the searches. - -# Unless the user overrides by setting SED, search the path for either GNU -# sed, or the sed that truncates its output the least. -test -z "$SED" && { - _G_sed_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ - for _G_i in 1 2 3 4 5 6 7; do - _G_sed_script=$_G_sed_script$nl$_G_sed_script - done - echo "$_G_sed_script" 2>/dev/null | sed 99q >conftest.sed - _G_sed_script= - - func_check_prog_sed () - { - _G_path_prog=$1 - - _G_count=0 - printf 0123456789 >conftest.in - while : - do - cat conftest.in conftest.in >conftest.tmp - mv conftest.tmp conftest.in - cp conftest.in conftest.nl - echo '' >> conftest.nl - "$_G_path_prog" -f conftest.sed conftest.out 2>/dev/null || break - diff conftest.out conftest.nl >/dev/null 2>&1 || break - _G_count=`expr $_G_count + 1` - if test "$_G_count" -gt "$_G_path_prog_max"; then - # Best one so far, save it but keep looking for a better one - func_check_prog_result=$_G_path_prog - _G_path_prog_max=$_G_count - fi - # 10*(2^10) chars as input seems more than enough - test 10 -lt "$_G_count" && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out - } - - func_path_progs "sed gsed" func_check_prog_sed "$PATH:/usr/xpg4/bin" - rm -f conftest.sed - SED=$func_path_progs_result -} - - -# Unless the user overrides by setting GREP, search the path for either GNU -# grep, or the grep that truncates its output the least. -test -z "$GREP" && { - func_check_prog_grep () - { - _G_path_prog=$1 - - _G_count=0 - _G_path_prog_max=0 - printf 0123456789 >conftest.in - while : - do - cat conftest.in conftest.in >conftest.tmp - mv conftest.tmp conftest.in - cp conftest.in conftest.nl - echo 'GREP' >> conftest.nl - "$_G_path_prog" -e 'GREP$' -e '-(cannot match)-' conftest.out 2>/dev/null || break - diff conftest.out conftest.nl >/dev/null 2>&1 || break - _G_count=`expr $_G_count + 1` - if test "$_G_count" -gt "$_G_path_prog_max"; then - # Best one so far, save it but keep looking for a better one - func_check_prog_result=$_G_path_prog - _G_path_prog_max=$_G_count - fi - # 10*(2^10) chars as input seems more than enough - test 10 -lt "$_G_count" && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out - } - - func_path_progs "grep ggrep" func_check_prog_grep "$PATH:/usr/xpg4/bin" - GREP=$func_path_progs_result -} - - -## ------------------------------- ## -## User overridable command paths. ## -## ------------------------------- ## - -# All uppercase variable names are used for environment variables. These -# variables can be overridden by the user before calling a script that -# uses them if a suitable command of that name is not already available -# in the command search PATH. - -: ${CP="cp -f"} -: ${ECHO="printf %s\n"} -: ${EGREP="$GREP -E"} -: ${FGREP="$GREP -F"} -: ${LN_S="ln -s"} -: ${MAKE="make"} -: ${MKDIR="mkdir"} -: ${MV="mv -f"} -: ${RM="rm -f"} -: ${SHELL="${CONFIG_SHELL-/bin/sh}"} - - -## -------------------- ## -## Useful sed snippets. ## -## -------------------- ## - -sed_dirname='s|/[^/]*$||' -sed_basename='s|^.*/||' - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -sed_quote_subst='s|\([`"$\\]\)|\\\1|g' - -# Same as above, but do not quote variable references. -sed_double_quote_subst='s/\(["`\\]\)/\\\1/g' - -# Sed substitution that turns a string into a regex matching for the -# string literally. -sed_make_literal_regex='s|[].[^$\\*\/]|\\&|g' - -# Sed substitution that converts a w32 file name or path -# that contains forward slashes, into one that contains -# (escaped) backslashes. A very naive implementation. -sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' - -# Re-'\' parameter expansions in output of sed_double_quote_subst that -# were '\'-ed in input to the same. If an odd number of '\' preceded a -# '$' in input to sed_double_quote_subst, that '$' was protected from -# expansion. Since each input '\' is now two '\'s, look for any number -# of runs of four '\'s followed by two '\'s and then a '$'. '\' that '$'. -_G_bs='\\' -_G_bs2='\\\\' -_G_bs4='\\\\\\\\' -_G_dollar='\$' -sed_double_backslash="\ - s/$_G_bs4/&\\ -/g - s/^$_G_bs2$_G_dollar/$_G_bs&/ - s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g - s/\n//g" - -# require_check_ifs_backslash -# --------------------------- -# Check if we can use backslash as IFS='\' separator, and set -# $check_ifs_backshlash_broken to ':' or 'false'. -require_check_ifs_backslash=func_require_check_ifs_backslash -func_require_check_ifs_backslash () -{ - _G_save_IFS=$IFS - IFS='\' - _G_check_ifs_backshlash='a\\b' - for _G_i in $_G_check_ifs_backshlash - do - case $_G_i in - a) - check_ifs_backshlash_broken=false - ;; - '') - break - ;; - *) - check_ifs_backshlash_broken=: - break - ;; - esac - done - IFS=$_G_save_IFS - require_check_ifs_backslash=: -} - - -## ----------------- ## -## Global variables. ## -## ----------------- ## - -# Except for the global variables explicitly listed below, the following -# functions in the '^func_' namespace, and the '^require_' namespace -# variables initialised in the 'Resource management' section, sourcing -# this file will not pollute your global namespace with anything -# else. There's no portable way to scope variables in Bourne shell -# though, so actually running these functions will sometimes place -# results into a variable named after the function, and often use -# temporary variables in the '^_G_' namespace. If you are careful to -# avoid using those namespaces casually in your sourcing script, things -# should continue to work as you expect. And, of course, you can freely -# overwrite any of the functions or variables defined here before -# calling anything to customize them. - -EXIT_SUCCESS=0 -EXIT_FAILURE=1 -EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. -EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. - -# Allow overriding, eg assuming that you follow the convention of -# putting '$debug_cmd' at the start of all your functions, you can get -# bash to show function call trace with: -# -# debug_cmd='echo "${FUNCNAME[0]} $*" >&2' bash your-script-name -debug_cmd=${debug_cmd-":"} -exit_cmd=: - -# By convention, finish your script with: -# -# exit $exit_status -# -# so that you can set exit_status to non-zero if you want to indicate -# something went wrong during execution without actually bailing out at -# the point of failure. -exit_status=$EXIT_SUCCESS - -# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh -# is ksh but when the shell is invoked as "sh" and the current value of -# the _XPG environment variable is not equal to 1 (one), the special -# positional parameter $0, within a function call, is the name of the -# function. -progpath=$0 - -# The name of this program. -progname=`$ECHO "$progpath" |$SED "$sed_basename"` - -# Make sure we have an absolute progpath for reexecution: -case $progpath in - [\\/]*|[A-Za-z]:\\*) ;; - *[\\/]*) - progdir=`$ECHO "$progpath" |$SED "$sed_dirname"` - progdir=`cd "$progdir" && pwd` - progpath=$progdir/$progname - ;; - *) - _G_IFS=$IFS - IFS=${PATH_SEPARATOR-:} - for progdir in $PATH; do - IFS=$_G_IFS - test -x "$progdir/$progname" && break - done - IFS=$_G_IFS - test -n "$progdir" || progdir=`pwd` - progpath=$progdir/$progname - ;; -esac - - -## ----------------- ## -## Standard options. ## -## ----------------- ## - -# The following options affect the operation of the functions defined -# below, and should be set appropriately depending on run-time para- -# meters passed on the command line. - -opt_dry_run=false -opt_quiet=false -opt_verbose=false - -# Categories 'all' and 'none' are always available. Append any others -# you will pass as the first argument to func_warning from your own -# code. -warning_categories= - -# By default, display warnings according to 'opt_warning_types'. Set -# 'warning_func' to ':' to elide all warnings, or func_fatal_error to -# treat the next displayed warning as a fatal error. -warning_func=func_warn_and_continue - -# Set to 'all' to display all warnings, 'none' to suppress all -# warnings, or a space delimited list of some subset of -# 'warning_categories' to display only the listed warnings. -opt_warning_types=all - - -## -------------------- ## -## Resource management. ## -## -------------------- ## - -# This section contains definitions for functions that each ensure a -# particular resource (a file, or a non-empty configuration variable for -# example) is available, and if appropriate to extract default values -# from pertinent package files. Call them using their associated -# 'require_*' variable to ensure that they are executed, at most, once. -# -# It's entirely deliberate that calling these functions can set -# variables that don't obey the namespace limitations obeyed by the rest -# of this file, in order that that they be as useful as possible to -# callers. - - -# require_term_colors -# ------------------- -# Allow display of bold text on terminals that support it. -require_term_colors=func_require_term_colors -func_require_term_colors () -{ - $debug_cmd - - test -t 1 && { - # COLORTERM and USE_ANSI_COLORS environment variables take - # precedence, because most terminfo databases neglect to describe - # whether color sequences are supported. - test -n "${COLORTERM+set}" && : ${USE_ANSI_COLORS="1"} - - if test 1 = "$USE_ANSI_COLORS"; then - # Standard ANSI escape sequences - tc_reset='' - tc_bold=''; tc_standout='' - tc_red=''; tc_green='' - tc_blue=''; tc_cyan='' - else - # Otherwise trust the terminfo database after all. - test -n "`tput sgr0 2>/dev/null`" && { - tc_reset=`tput sgr0` - test -n "`tput bold 2>/dev/null`" && tc_bold=`tput bold` - tc_standout=$tc_bold - test -n "`tput smso 2>/dev/null`" && tc_standout=`tput smso` - test -n "`tput setaf 1 2>/dev/null`" && tc_red=`tput setaf 1` - test -n "`tput setaf 2 2>/dev/null`" && tc_green=`tput setaf 2` - test -n "`tput setaf 4 2>/dev/null`" && tc_blue=`tput setaf 4` - test -n "`tput setaf 5 2>/dev/null`" && tc_cyan=`tput setaf 5` - } - fi - } - - require_term_colors=: -} - - -## ----------------- ## -## Function library. ## -## ----------------- ## - -# This section contains a variety of useful functions to call in your -# scripts. Take note of the portable wrappers for features provided by -# some modern shells, which will fall back to slower equivalents on -# less featureful shells. - - -# func_append VAR VALUE -# --------------------- -# Append VALUE onto the existing contents of VAR. - - # _G_HAVE_PLUSEQ_OP - # Can be empty, in which case the shell is probed, "yes" if += is - # useable or anything else if it does not work. - if test -z "$_G_HAVE_PLUSEQ_OP" && \ - __PLUSEQ_TEST="a" && \ - __PLUSEQ_TEST+=" b" 2>/dev/null && \ - test "a b" = "$__PLUSEQ_TEST"; then - _G_HAVE_PLUSEQ_OP=yes - fi - -if test yes = "$_G_HAVE_PLUSEQ_OP" -then - # This is an XSI compatible shell, allowing a faster implementation... - eval 'func_append () - { - $debug_cmd - - eval "$1+=\$2" - }' -else - # ...otherwise fall back to using expr, which is often a shell builtin. - func_append () - { - $debug_cmd - - eval "$1=\$$1\$2" - } -fi - - -# func_append_quoted VAR VALUE -# ---------------------------- -# Quote VALUE and append to the end of shell variable VAR, separated -# by a space. -if test yes = "$_G_HAVE_PLUSEQ_OP"; then - eval 'func_append_quoted () - { - $debug_cmd - - func_quote_arg pretty "$2" - eval "$1+=\\ \$func_quote_arg_result" - }' -else - func_append_quoted () - { - $debug_cmd - - func_quote_arg pretty "$2" - eval "$1=\$$1\\ \$func_quote_arg_result" - } -fi - - -# func_append_uniq VAR VALUE -# -------------------------- -# Append unique VALUE onto the existing contents of VAR, assuming -# entries are delimited by the first character of VALUE. For example: -# -# func_append_uniq options " --another-option option-argument" -# -# will only append to $options if " --another-option option-argument " -# is not already present somewhere in $options already (note spaces at -# each end implied by leading space in second argument). -func_append_uniq () -{ - $debug_cmd - - eval _G_current_value='`$ECHO $'$1'`' - _G_delim=`expr "$2" : '\(.\)'` - - case $_G_delim$_G_current_value$_G_delim in - *"$2$_G_delim"*) ;; - *) func_append "$@" ;; - esac -} - - -# func_arith TERM... -# ------------------ -# Set func_arith_result to the result of evaluating TERMs. - test -z "$_G_HAVE_ARITH_OP" \ - && (eval 'test 2 = $(( 1 + 1 ))') 2>/dev/null \ - && _G_HAVE_ARITH_OP=yes - -if test yes = "$_G_HAVE_ARITH_OP"; then - eval 'func_arith () - { - $debug_cmd - - func_arith_result=$(( $* )) - }' -else - func_arith () - { - $debug_cmd - - func_arith_result=`expr "$@"` - } -fi - - -# func_basename FILE -# ------------------ -# Set func_basename_result to FILE with everything up to and including -# the last / stripped. -if test yes = "$_G_HAVE_XSI_OPS"; then - # If this shell supports suffix pattern removal, then use it to avoid - # forking. Hide the definitions single quotes in case the shell chokes - # on unsupported syntax... - _b='func_basename_result=${1##*/}' - _d='case $1 in - */*) func_dirname_result=${1%/*}$2 ;; - * ) func_dirname_result=$3 ;; - esac' - -else - # ...otherwise fall back to using sed. - _b='func_basename_result=`$ECHO "$1" |$SED "$sed_basename"`' - _d='func_dirname_result=`$ECHO "$1" |$SED "$sed_dirname"` - if test "X$func_dirname_result" = "X$1"; then - func_dirname_result=$3 - else - func_append func_dirname_result "$2" - fi' -fi - -eval 'func_basename () -{ - $debug_cmd - - '"$_b"' -}' - - -# func_dirname FILE APPEND NONDIR_REPLACEMENT -# ------------------------------------------- -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -eval 'func_dirname () -{ - $debug_cmd - - '"$_d"' -}' - - -# func_dirname_and_basename FILE APPEND NONDIR_REPLACEMENT -# -------------------------------------------------------- -# Perform func_basename and func_dirname in a single function -# call: -# dirname: Compute the dirname of FILE. If nonempty, -# add APPEND to the result, otherwise set result -# to NONDIR_REPLACEMENT. -# value returned in "$func_dirname_result" -# basename: Compute filename of FILE. -# value retuned in "$func_basename_result" -# For efficiency, we do not delegate to the functions above but instead -# duplicate the functionality here. -eval 'func_dirname_and_basename () -{ - $debug_cmd - - '"$_b"' - '"$_d"' -}' - - -# func_echo ARG... -# ---------------- -# Echo program name prefixed message. -func_echo () -{ - $debug_cmd - - _G_message=$* - - func_echo_IFS=$IFS - IFS=$nl - for _G_line in $_G_message; do - IFS=$func_echo_IFS - $ECHO "$progname: $_G_line" - done - IFS=$func_echo_IFS -} - - -# func_echo_all ARG... -# -------------------- -# Invoke $ECHO with all args, space-separated. -func_echo_all () -{ - $ECHO "$*" -} - - -# func_echo_infix_1 INFIX ARG... -# ------------------------------ -# Echo program name, followed by INFIX on the first line, with any -# additional lines not showing INFIX. -func_echo_infix_1 () -{ - $debug_cmd - - $require_term_colors - - _G_infix=$1; shift - _G_indent=$_G_infix - _G_prefix="$progname: $_G_infix: " - _G_message=$* - - # Strip color escape sequences before counting printable length - for _G_tc in "$tc_reset" "$tc_bold" "$tc_standout" "$tc_red" "$tc_green" "$tc_blue" "$tc_cyan" - do - test -n "$_G_tc" && { - _G_esc_tc=`$ECHO "$_G_tc" | $SED "$sed_make_literal_regex"` - _G_indent=`$ECHO "$_G_indent" | $SED "s|$_G_esc_tc||g"` - } - done - _G_indent="$progname: "`echo "$_G_indent" | $SED 's|.| |g'`" " ## exclude from sc_prohibit_nested_quotes - - func_echo_infix_1_IFS=$IFS - IFS=$nl - for _G_line in $_G_message; do - IFS=$func_echo_infix_1_IFS - $ECHO "$_G_prefix$tc_bold$_G_line$tc_reset" >&2 - _G_prefix=$_G_indent - done - IFS=$func_echo_infix_1_IFS -} - - -# func_error ARG... -# ----------------- -# Echo program name prefixed message to standard error. -func_error () -{ - $debug_cmd - - $require_term_colors - - func_echo_infix_1 " $tc_standout${tc_red}error$tc_reset" "$*" >&2 -} - - -# func_fatal_error ARG... -# ----------------------- -# Echo program name prefixed message to standard error, and exit. -func_fatal_error () -{ - $debug_cmd - - func_error "$*" - exit $EXIT_FAILURE -} - - -# func_grep EXPRESSION FILENAME -# ----------------------------- -# Check whether EXPRESSION matches any line of FILENAME, without output. -func_grep () -{ - $debug_cmd - - $GREP "$1" "$2" >/dev/null 2>&1 -} - - -# func_len STRING -# --------------- -# Set func_len_result to the length of STRING. STRING may not -# start with a hyphen. - test -z "$_G_HAVE_XSI_OPS" \ - && (eval 'x=a/b/c; - test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ - && _G_HAVE_XSI_OPS=yes - -if test yes = "$_G_HAVE_XSI_OPS"; then - eval 'func_len () - { - $debug_cmd - - func_len_result=${#1} - }' -else - func_len () - { - $debug_cmd - - func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` - } -fi - - -# func_mkdir_p DIRECTORY-PATH -# --------------------------- -# Make sure the entire path to DIRECTORY-PATH is available. -func_mkdir_p () -{ - $debug_cmd - - _G_directory_path=$1 - _G_dir_list= - - if test -n "$_G_directory_path" && test : != "$opt_dry_run"; then - - # Protect directory names starting with '-' - case $_G_directory_path in - -*) _G_directory_path=./$_G_directory_path ;; - esac - - # While some portion of DIR does not yet exist... - while test ! -d "$_G_directory_path"; do - # ...make a list in topmost first order. Use a colon delimited - # list incase some portion of path contains whitespace. - _G_dir_list=$_G_directory_path:$_G_dir_list - - # If the last portion added has no slash in it, the list is done - case $_G_directory_path in */*) ;; *) break ;; esac - - # ...otherwise throw away the child directory and loop - _G_directory_path=`$ECHO "$_G_directory_path" | $SED -e "$sed_dirname"` - done - _G_dir_list=`$ECHO "$_G_dir_list" | $SED 's|:*$||'` - - func_mkdir_p_IFS=$IFS; IFS=: - for _G_dir in $_G_dir_list; do - IFS=$func_mkdir_p_IFS - # mkdir can fail with a 'File exist' error if two processes - # try to create one of the directories concurrently. Don't - # stop in that case! - $MKDIR "$_G_dir" 2>/dev/null || : - done - IFS=$func_mkdir_p_IFS - - # Bail out if we (or some other process) failed to create a directory. - test -d "$_G_directory_path" || \ - func_fatal_error "Failed to create '$1'" - fi -} - - -# func_mktempdir [BASENAME] -# ------------------------- -# Make a temporary directory that won't clash with other running -# libtool processes, and avoids race conditions if possible. If -# given, BASENAME is the basename for that directory. -func_mktempdir () -{ - $debug_cmd - - _G_template=${TMPDIR-/tmp}/${1-$progname} - - if test : = "$opt_dry_run"; then - # Return a directory name, but don't create it in dry-run mode - _G_tmpdir=$_G_template-$$ - else - - # If mktemp works, use that first and foremost - _G_tmpdir=`mktemp -d "$_G_template-XXXXXXXX" 2>/dev/null` - - if test ! -d "$_G_tmpdir"; then - # Failing that, at least try and use $RANDOM to avoid a race - _G_tmpdir=$_G_template-${RANDOM-0}$$ - - func_mktempdir_umask=`umask` - umask 0077 - $MKDIR "$_G_tmpdir" - umask $func_mktempdir_umask - fi - - # If we're not in dry-run mode, bomb out on failure - test -d "$_G_tmpdir" || \ - func_fatal_error "cannot create temporary directory '$_G_tmpdir'" - fi - - $ECHO "$_G_tmpdir" -} - - -# func_normal_abspath PATH -# ------------------------ -# Remove doubled-up and trailing slashes, "." path components, -# and cancel out any ".." path components in PATH after making -# it an absolute path. -func_normal_abspath () -{ - $debug_cmd - - # These SED scripts presuppose an absolute path with a trailing slash. - _G_pathcar='s|^/\([^/]*\).*$|\1|' - _G_pathcdr='s|^/[^/]*||' - _G_removedotparts=':dotsl - s|/\./|/|g - t dotsl - s|/\.$|/|' - _G_collapseslashes='s|/\{1,\}|/|g' - _G_finalslash='s|/*$|/|' - - # Start from root dir and reassemble the path. - func_normal_abspath_result= - func_normal_abspath_tpath=$1 - func_normal_abspath_altnamespace= - case $func_normal_abspath_tpath in - "") - # Empty path, that just means $cwd. - func_stripname '' '/' "`pwd`" - func_normal_abspath_result=$func_stripname_result - return - ;; - # The next three entries are used to spot a run of precisely - # two leading slashes without using negated character classes; - # we take advantage of case's first-match behaviour. - ///*) - # Unusual form of absolute path, do nothing. - ;; - //*) - # Not necessarily an ordinary path; POSIX reserves leading '//' - # and for example Cygwin uses it to access remote file shares - # over CIFS/SMB, so we conserve a leading double slash if found. - func_normal_abspath_altnamespace=/ - ;; - /*) - # Absolute path, do nothing. - ;; - *) - # Relative path, prepend $cwd. - func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath - ;; - esac - - # Cancel out all the simple stuff to save iterations. We also want - # the path to end with a slash for ease of parsing, so make sure - # there is one (and only one) here. - func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ - -e "$_G_removedotparts" -e "$_G_collapseslashes" -e "$_G_finalslash"` - while :; do - # Processed it all yet? - if test / = "$func_normal_abspath_tpath"; then - # If we ascended to the root using ".." the result may be empty now. - if test -z "$func_normal_abspath_result"; then - func_normal_abspath_result=/ - fi - break - fi - func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ - -e "$_G_pathcar"` - func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ - -e "$_G_pathcdr"` - # Figure out what to do with it - case $func_normal_abspath_tcomponent in - "") - # Trailing empty path component, ignore it. - ;; - ..) - # Parent dir; strip last assembled component from result. - func_dirname "$func_normal_abspath_result" - func_normal_abspath_result=$func_dirname_result - ;; - *) - # Actual path component, append it. - func_append func_normal_abspath_result "/$func_normal_abspath_tcomponent" - ;; - esac - done - # Restore leading double-slash if one was found on entry. - func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result -} - - -# func_notquiet ARG... -# -------------------- -# Echo program name prefixed message only when not in quiet mode. -func_notquiet () -{ - $debug_cmd - - $opt_quiet || func_echo ${1+"$@"} - - # A bug in bash halts the script if the last line of a function - # fails when set -e is in force, so we need another command to - # work around that: - : -} - - -# func_relative_path SRCDIR DSTDIR -# -------------------------------- -# Set func_relative_path_result to the relative path from SRCDIR to DSTDIR. -func_relative_path () -{ - $debug_cmd - - func_relative_path_result= - func_normal_abspath "$1" - func_relative_path_tlibdir=$func_normal_abspath_result - func_normal_abspath "$2" - func_relative_path_tbindir=$func_normal_abspath_result - - # Ascend the tree starting from libdir - while :; do - # check if we have found a prefix of bindir - case $func_relative_path_tbindir in - $func_relative_path_tlibdir) - # found an exact match - func_relative_path_tcancelled= - break - ;; - $func_relative_path_tlibdir*) - # found a matching prefix - func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" - func_relative_path_tcancelled=$func_stripname_result - if test -z "$func_relative_path_result"; then - func_relative_path_result=. - fi - break - ;; - *) - func_dirname $func_relative_path_tlibdir - func_relative_path_tlibdir=$func_dirname_result - if test -z "$func_relative_path_tlibdir"; then - # Have to descend all the way to the root! - func_relative_path_result=../$func_relative_path_result - func_relative_path_tcancelled=$func_relative_path_tbindir - break - fi - func_relative_path_result=../$func_relative_path_result - ;; - esac - done - - # Now calculate path; take care to avoid doubling-up slashes. - func_stripname '' '/' "$func_relative_path_result" - func_relative_path_result=$func_stripname_result - func_stripname '/' '/' "$func_relative_path_tcancelled" - if test -n "$func_stripname_result"; then - func_append func_relative_path_result "/$func_stripname_result" - fi - - # Normalisation. If bindir is libdir, return '.' else relative path. - if test -n "$func_relative_path_result"; then - func_stripname './' '' "$func_relative_path_result" - func_relative_path_result=$func_stripname_result - fi - - test -n "$func_relative_path_result" || func_relative_path_result=. - - : -} - - -# func_quote_portable EVAL ARG -# ---------------------------- -# Internal function to portably implement func_quote_arg. Note that we still -# keep attention to performance here so we as much as possible try to avoid -# calling sed binary (so far O(N) complexity as long as func_append is O(1)). -func_quote_portable () -{ - $debug_cmd - - $require_check_ifs_backslash - - func_quote_portable_result=$2 - - # one-time-loop (easy break) - while true - do - if $1; then - func_quote_portable_result=`$ECHO "$2" | $SED \ - -e "$sed_double_quote_subst" -e "$sed_double_backslash"` - break - fi - - # Quote for eval. - case $func_quote_portable_result in - *[\\\`\"\$]*) - # Fallback to sed for $func_check_bs_ifs_broken=:, or when the string - # contains the shell wildcard characters. - case $check_ifs_backshlash_broken$func_quote_portable_result in - :*|*[\[\*\?]*) - func_quote_portable_result=`$ECHO "$func_quote_portable_result" \ - | $SED "$sed_quote_subst"` - break - ;; - esac - - func_quote_portable_old_IFS=$IFS - for _G_char in '\' '`' '"' '$' - do - # STATE($1) PREV($2) SEPARATOR($3) - set start "" "" - func_quote_portable_result=dummy"$_G_char$func_quote_portable_result$_G_char"dummy - IFS=$_G_char - for _G_part in $func_quote_portable_result - do - case $1 in - quote) - func_append func_quote_portable_result "$3$2" - set quote "$_G_part" "\\$_G_char" - ;; - start) - set first "" "" - func_quote_portable_result= - ;; - first) - set quote "$_G_part" "" - ;; - esac - done - done - IFS=$func_quote_portable_old_IFS - ;; - *) ;; - esac - break - done - - func_quote_portable_unquoted_result=$func_quote_portable_result - case $func_quote_portable_result in - # double-quote args containing shell metacharacters to delay - # word splitting, command substitution and variable expansion - # for a subsequent eval. - # many bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - func_quote_portable_result=\"$func_quote_portable_result\" - ;; - esac -} - - -# func_quotefast_eval ARG -# ----------------------- -# Quote one ARG (internal). This is equivalent to 'func_quote_arg eval ARG', -# but optimized for speed. Result is stored in $func_quotefast_eval. -if test xyes = `(x=; printf -v x %q yes; echo x"$x") 2>/dev/null`; then - printf -v _GL_test_printf_tilde %q '~' - if test '\~' = "$_GL_test_printf_tilde"; then - func_quotefast_eval () - { - printf -v func_quotefast_eval_result %q "$1" - } - else - # Broken older Bash implementations. Make those faster too if possible. - func_quotefast_eval () - { - case $1 in - '~'*) - func_quote_portable false "$1" - func_quotefast_eval_result=$func_quote_portable_result - ;; - *) - printf -v func_quotefast_eval_result %q "$1" - ;; - esac - } - fi -else - func_quotefast_eval () - { - func_quote_portable false "$1" - func_quotefast_eval_result=$func_quote_portable_result - } -fi - - -# func_quote_arg MODEs ARG -# ------------------------ -# Quote one ARG to be evaled later. MODEs argument may contain zero or more -# specifiers listed below separated by ',' character. This function returns two -# values: -# i) func_quote_arg_result -# double-quoted (when needed), suitable for a subsequent eval -# ii) func_quote_arg_unquoted_result -# has all characters that are still active within double -# quotes backslashified. Available only if 'unquoted' is specified. -# -# Available modes: -# ---------------- -# 'eval' (default) -# - escape shell special characters -# 'expand' -# - the same as 'eval'; but do not quote variable references -# 'pretty' -# - request aesthetic output, i.e. '"a b"' instead of 'a\ b'. This might -# be used later in func_quote to get output like: 'echo "a b"' instead -# of 'echo a\ b'. This is slower than default on some shells. -# 'unquoted' -# - produce also $func_quote_arg_unquoted_result which does not contain -# wrapping double-quotes. -# -# Examples for 'func_quote_arg pretty,unquoted string': -# -# string | *_result | *_unquoted_result -# ------------+-----------------------+------------------- -# " | \" | \" -# a b | "a b" | a b -# "a b" | "\"a b\"" | \"a b\" -# * | "*" | * -# z="${x-$y}" | "z=\"\${x-\$y}\"" | z=\"\${x-\$y}\" -# -# Examples for 'func_quote_arg pretty,unquoted,expand string': -# -# string | *_result | *_unquoted_result -# --------------+---------------------+-------------------- -# z="${x-$y}" | "z=\"${x-$y}\"" | z=\"${x-$y}\" -func_quote_arg () -{ - _G_quote_expand=false - case ,$1, in - *,expand,*) - _G_quote_expand=: - ;; - esac - - case ,$1, in - *,pretty,*|*,expand,*|*,unquoted,*) - func_quote_portable $_G_quote_expand "$2" - func_quote_arg_result=$func_quote_portable_result - func_quote_arg_unquoted_result=$func_quote_portable_unquoted_result - ;; - *) - # Faster quote-for-eval for some shells. - func_quotefast_eval "$2" - func_quote_arg_result=$func_quotefast_eval_result - ;; - esac -} - - -# func_quote MODEs ARGs... -# ------------------------ -# Quote all ARGs to be evaled later and join them into single command. See -# func_quote_arg's description for more info. -func_quote () -{ - $debug_cmd - _G_func_quote_mode=$1 ; shift - func_quote_result= - while test 0 -lt $#; do - func_quote_arg "$_G_func_quote_mode" "$1" - if test -n "$func_quote_result"; then - func_append func_quote_result " $func_quote_arg_result" - else - func_append func_quote_result "$func_quote_arg_result" - fi - shift - done -} - - -# func_stripname PREFIX SUFFIX NAME -# --------------------------------- -# strip PREFIX and SUFFIX from NAME, and store in func_stripname_result. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -if test yes = "$_G_HAVE_XSI_OPS"; then - eval 'func_stripname () - { - $debug_cmd - - # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are - # positional parameters, so assign one to ordinary variable first. - func_stripname_result=$3 - func_stripname_result=${func_stripname_result#"$1"} - func_stripname_result=${func_stripname_result%"$2"} - }' -else - func_stripname () - { - $debug_cmd - - case $2 in - .*) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%\\\\$2\$%%"`;; - *) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%$2\$%%"`;; - esac - } -fi - - -# func_show_eval CMD [FAIL_EXP] -# ----------------------------- -# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is -# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP -# is given, then evaluate it. -func_show_eval () -{ - $debug_cmd - - _G_cmd=$1 - _G_fail_exp=${2-':'} - - func_quote_arg pretty,expand "$_G_cmd" - eval "func_notquiet $func_quote_arg_result" - - $opt_dry_run || { - eval "$_G_cmd" - _G_status=$? - if test 0 -ne "$_G_status"; then - eval "(exit $_G_status); $_G_fail_exp" - fi - } -} - - -# func_show_eval_locale CMD [FAIL_EXP] -# ------------------------------------ -# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is -# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP -# is given, then evaluate it. Use the saved locale for evaluation. -func_show_eval_locale () -{ - $debug_cmd - - _G_cmd=$1 - _G_fail_exp=${2-':'} - - $opt_quiet || { - func_quote_arg expand,pretty "$_G_cmd" - eval "func_echo $func_quote_arg_result" - } - - $opt_dry_run || { - eval "$_G_user_locale - $_G_cmd" - _G_status=$? - eval "$_G_safe_locale" - if test 0 -ne "$_G_status"; then - eval "(exit $_G_status); $_G_fail_exp" - fi - } -} - - -# func_tr_sh -# ---------- -# Turn $1 into a string suitable for a shell variable name. -# Result is stored in $func_tr_sh_result. All characters -# not in the set a-zA-Z0-9_ are replaced with '_'. Further, -# if $1 begins with a digit, a '_' is prepended as well. -func_tr_sh () -{ - $debug_cmd - - case $1 in - [0-9]* | *[!a-zA-Z0-9_]*) - func_tr_sh_result=`$ECHO "$1" | $SED -e 's/^\([0-9]\)/_\1/' -e 's/[^a-zA-Z0-9_]/_/g'` - ;; - * ) - func_tr_sh_result=$1 - ;; - esac -} - - -# func_verbose ARG... -# ------------------- -# Echo program name prefixed message in verbose mode only. -func_verbose () -{ - $debug_cmd - - $opt_verbose && func_echo "$*" - - : -} - - -# func_warn_and_continue ARG... -# ----------------------------- -# Echo program name prefixed warning message to standard error. -func_warn_and_continue () -{ - $debug_cmd - - $require_term_colors - - func_echo_infix_1 "${tc_red}warning$tc_reset" "$*" >&2 -} - - -# func_warning CATEGORY ARG... -# ---------------------------- -# Echo program name prefixed warning message to standard error. Warning -# messages can be filtered according to CATEGORY, where this function -# elides messages where CATEGORY is not listed in the global variable -# 'opt_warning_types'. -func_warning () -{ - $debug_cmd - - # CATEGORY must be in the warning_categories list! - case " $warning_categories " in - *" $1 "*) ;; - *) func_internal_error "invalid warning category '$1'" ;; - esac - - _G_category=$1 - shift - - case " $opt_warning_types " in - *" $_G_category "*) $warning_func ${1+"$@"} ;; - esac -} - - -# func_sort_ver VER1 VER2 -# ----------------------- -# 'sort -V' is not generally available. -# Note this deviates from the version comparison in automake -# in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a -# but this should suffice as we won't be specifying old -# version formats or redundant trailing .0 in bootstrap.conf. -# If we did want full compatibility then we should probably -# use m4_version_compare from autoconf. -func_sort_ver () -{ - $debug_cmd - - printf '%s\n%s\n' "$1" "$2" \ - | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n -k 9,9n -} - -# func_lt_ver PREV CURR -# --------------------- -# Return true if PREV and CURR are in the correct order according to -# func_sort_ver, otherwise false. Use it like this: -# -# func_lt_ver "$prev_ver" "$proposed_ver" || func_fatal_error "..." -func_lt_ver () -{ - $debug_cmd - - test "x$1" = x`func_sort_ver "$1" "$2" | $SED 1q` -} - - -# Local variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" -# time-stamp-time-zone: "UTC" -# End: -#! /bin/sh - -# A portable, pluggable option parser for Bourne shell. -# Written by Gary V. Vaughan, 2010 - -# This is free software. There is NO warranty; not even for -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# -# Copyright (C) 2010-2019, 2021 Bootstrap Authors -# -# This file is dual licensed under the terms of the MIT license -# , and GPL version 2 or later -# . You must apply one of -# these licenses when using or redistributing this software or any of -# the files within it. See the URLs above, or the file `LICENSE` -# included in the Bootstrap distribution for the full license texts. - -# Please report bugs or propose patches to: -# - -# Set a version string for this script. -scriptversion=2019-02-19.15; # UTC - - -## ------ ## -## Usage. ## -## ------ ## - -# This file is a library for parsing options in your shell scripts along -# with assorted other useful supporting features that you can make use -# of too. -# -# For the simplest scripts you might need only: -# -# #!/bin/sh -# . relative/path/to/funclib.sh -# . relative/path/to/options-parser -# scriptversion=1.0 -# func_options ${1+"$@"} -# eval set dummy "$func_options_result"; shift -# ...rest of your script... -# -# In order for the '--version' option to work, you will need to have a -# suitably formatted comment like the one at the top of this file -# starting with '# Written by ' and ending with '# Copyright'. -# -# For '-h' and '--help' to work, you will also need a one line -# description of your script's purpose in a comment directly above the -# '# Written by ' line, like the one at the top of this file. -# -# The default options also support '--debug', which will turn on shell -# execution tracing (see the comment above debug_cmd below for another -# use), and '--verbose' and the func_verbose function to allow your script -# to display verbose messages only when your user has specified -# '--verbose'. -# -# After sourcing this file, you can plug in processing for additional -# options by amending the variables from the 'Configuration' section -# below, and following the instructions in the 'Option parsing' -# section further down. - -## -------------- ## -## Configuration. ## -## -------------- ## - -# You should override these variables in your script after sourcing this -# file so that they reflect the customisations you have added to the -# option parser. - -# The usage line for option parsing errors and the start of '-h' and -# '--help' output messages. You can embed shell variables for delayed -# expansion at the time the message is displayed, but you will need to -# quote other shell meta-characters carefully to prevent them being -# expanded when the contents are evaled. -usage='$progpath [OPTION]...' - -# Short help message in response to '-h' and '--help'. Add to this or -# override it after sourcing this library to reflect the full set of -# options your script accepts. -usage_message="\ - --debug enable verbose shell tracing - -W, --warnings=CATEGORY - report the warnings falling in CATEGORY [all] - -v, --verbose verbosely report processing - --version print version information and exit - -h, --help print short or long help message and exit -" - -# Additional text appended to 'usage_message' in response to '--help'. -long_help_message=" -Warning categories include: - 'all' show all warnings - 'none' turn off all the warnings - 'error' warnings are treated as fatal errors" - -# Help message printed before fatal option parsing errors. -fatal_help="Try '\$progname --help' for more information." - - - -## ------------------------- ## -## Hook function management. ## -## ------------------------- ## - -# This section contains functions for adding, removing, and running hooks -# in the main code. A hook is just a list of function names that can be -# run in order later on. - -# func_hookable FUNC_NAME -# ----------------------- -# Declare that FUNC_NAME will run hooks added with -# 'func_add_hook FUNC_NAME ...'. -func_hookable () -{ - $debug_cmd - - func_append hookable_fns " $1" -} - - -# func_add_hook FUNC_NAME HOOK_FUNC -# --------------------------------- -# Request that FUNC_NAME call HOOK_FUNC before it returns. FUNC_NAME must -# first have been declared "hookable" by a call to 'func_hookable'. -func_add_hook () -{ - $debug_cmd - - case " $hookable_fns " in - *" $1 "*) ;; - *) func_fatal_error "'$1' does not accept hook functions." ;; - esac - - eval func_append ${1}_hooks '" $2"' -} - - -# func_remove_hook FUNC_NAME HOOK_FUNC -# ------------------------------------ -# Remove HOOK_FUNC from the list of hook functions to be called by -# FUNC_NAME. -func_remove_hook () -{ - $debug_cmd - - eval ${1}_hooks='`$ECHO "\$'$1'_hooks" |$SED "s| '$2'||"`' -} - - -# func_propagate_result FUNC_NAME_A FUNC_NAME_B -# --------------------------------------------- -# If the *_result variable of FUNC_NAME_A _is set_, assign its value to -# *_result variable of FUNC_NAME_B. -func_propagate_result () -{ - $debug_cmd - - func_propagate_result_result=: - if eval "test \"\${${1}_result+set}\" = set" - then - eval "${2}_result=\$${1}_result" - else - func_propagate_result_result=false - fi -} - - -# func_run_hooks FUNC_NAME [ARG]... -# --------------------------------- -# Run all hook functions registered to FUNC_NAME. -# It's assumed that the list of hook functions contains nothing more -# than a whitespace-delimited list of legal shell function names, and -# no effort is wasted trying to catch shell meta-characters or preserve -# whitespace. -func_run_hooks () -{ - $debug_cmd - - _G_rc_run_hooks=false - - case " $hookable_fns " in - *" $1 "*) ;; - *) func_fatal_error "'$1' does not support hook functions." ;; - esac - - eval _G_hook_fns=\$$1_hooks; shift - - for _G_hook in $_G_hook_fns; do - func_unset "${_G_hook}_result" - eval $_G_hook '${1+"$@"}' - func_propagate_result $_G_hook func_run_hooks - if $func_propagate_result_result; then - eval set dummy "$func_run_hooks_result"; shift - fi - done -} - - - -## --------------- ## -## Option parsing. ## -## --------------- ## - -# In order to add your own option parsing hooks, you must accept the -# full positional parameter list from your hook function. You may remove -# or edit any options that you action, and then pass back the remaining -# unprocessed options in '_result', escaped -# suitably for 'eval'. -# -# The '_result' variable is automatically unset -# before your hook gets called; for best performance, only set the -# *_result variable when necessary (i.e. don't call the 'func_quote' -# function unnecessarily because it can be an expensive operation on some -# machines). -# -# Like this: -# -# my_options_prep () -# { -# $debug_cmd -# -# # Extend the existing usage message. -# usage_message=$usage_message' -# -s, --silent don'\''t print informational messages -# ' -# # No change in '$@' (ignored completely by this hook). Leave -# # my_options_prep_result variable intact. -# } -# func_add_hook func_options_prep my_options_prep -# -# -# my_silent_option () -# { -# $debug_cmd -# -# args_changed=false -# -# # Note that, for efficiency, we parse as many options as we can -# # recognise in a loop before passing the remainder back to the -# # caller on the first unrecognised argument we encounter. -# while test $# -gt 0; do -# opt=$1; shift -# case $opt in -# --silent|-s) opt_silent=: -# args_changed=: -# ;; -# # Separate non-argument short options: -# -s*) func_split_short_opt "$_G_opt" -# set dummy "$func_split_short_opt_name" \ -# "-$func_split_short_opt_arg" ${1+"$@"} -# shift -# args_changed=: -# ;; -# *) # Make sure the first unrecognised option "$_G_opt" -# # is added back to "$@" in case we need it later, -# # if $args_changed was set to 'true'. -# set dummy "$_G_opt" ${1+"$@"}; shift; break ;; -# esac -# done -# -# # Only call 'func_quote' here if we processed at least one argument. -# if $args_changed; then -# func_quote eval ${1+"$@"} -# my_silent_option_result=$func_quote_result -# fi -# } -# func_add_hook func_parse_options my_silent_option -# -# -# my_option_validation () -# { -# $debug_cmd -# -# $opt_silent && $opt_verbose && func_fatal_help "\ -# '--silent' and '--verbose' options are mutually exclusive." -# } -# func_add_hook func_validate_options my_option_validation -# -# You'll also need to manually amend $usage_message to reflect the extra -# options you parse. It's preferable to append if you can, so that -# multiple option parsing hooks can be added safely. - - -# func_options_finish [ARG]... -# ---------------------------- -# Finishing the option parse loop (call 'func_options' hooks ATM). -func_options_finish () -{ - $debug_cmd - - func_run_hooks func_options ${1+"$@"} - func_propagate_result func_run_hooks func_options_finish -} - - -# func_options [ARG]... -# --------------------- -# All the functions called inside func_options are hookable. See the -# individual implementations for details. -func_hookable func_options -func_options () -{ - $debug_cmd - - _G_options_quoted=false - - for my_func in options_prep parse_options validate_options options_finish - do - func_unset func_${my_func}_result - func_unset func_run_hooks_result - eval func_$my_func '${1+"$@"}' - func_propagate_result func_$my_func func_options - if $func_propagate_result_result; then - eval set dummy "$func_options_result"; shift - _G_options_quoted=: - fi - done - - $_G_options_quoted || { - # As we (func_options) are top-level options-parser function and - # nobody quoted "$@" for us yet, we need to do it explicitly for - # caller. - func_quote eval ${1+"$@"} - func_options_result=$func_quote_result - } -} - - -# func_options_prep [ARG]... -# -------------------------- -# All initialisations required before starting the option parse loop. -# Note that when calling hook functions, we pass through the list of -# positional parameters. If a hook function modifies that list, and -# needs to propagate that back to rest of this script, then the complete -# modified list must be put in 'func_run_hooks_result' before returning. -func_hookable func_options_prep -func_options_prep () -{ - $debug_cmd - - # Option defaults: - opt_verbose=false - opt_warning_types= - - func_run_hooks func_options_prep ${1+"$@"} - func_propagate_result func_run_hooks func_options_prep -} - - -# func_parse_options [ARG]... -# --------------------------- -# The main option parsing loop. -func_hookable func_parse_options -func_parse_options () -{ - $debug_cmd - - _G_parse_options_requote=false - # this just eases exit handling - while test $# -gt 0; do - # Defer to hook functions for initial option parsing, so they - # get priority in the event of reusing an option name. - func_run_hooks func_parse_options ${1+"$@"} - func_propagate_result func_run_hooks func_parse_options - if $func_propagate_result_result; then - eval set dummy "$func_parse_options_result"; shift - # Even though we may have changed "$@", we passed the "$@" array - # down into the hook and it quoted it for us (because we are in - # this if-branch). No need to quote it again. - _G_parse_options_requote=false - fi - - # Break out of the loop if we already parsed every option. - test $# -gt 0 || break - - # We expect that one of the options parsed in this function matches - # and thus we remove _G_opt from "$@" and need to re-quote. - _G_match_parse_options=: - _G_opt=$1 - shift - case $_G_opt in - --debug|-x) debug_cmd='set -x' - func_echo "enabling shell trace mode" >&2 - $debug_cmd - ;; - - --no-warnings|--no-warning|--no-warn) - set dummy --warnings none ${1+"$@"} - shift - ;; - - --warnings|--warning|-W) - if test $# = 0 && func_missing_arg $_G_opt; then - _G_parse_options_requote=: - break - fi - case " $warning_categories $1" in - *" $1 "*) - # trailing space prevents matching last $1 above - func_append_uniq opt_warning_types " $1" - ;; - *all) - opt_warning_types=$warning_categories - ;; - *none) - opt_warning_types=none - warning_func=: - ;; - *error) - opt_warning_types=$warning_categories - warning_func=func_fatal_error - ;; - *) - func_fatal_error \ - "unsupported warning category: '$1'" - ;; - esac - shift - ;; - - --verbose|-v) opt_verbose=: ;; - --version) func_version ;; - -\?|-h) func_usage ;; - --help) func_help ;; - - # Separate optargs to long options (plugins may need this): - --*=*) func_split_equals "$_G_opt" - set dummy "$func_split_equals_lhs" \ - "$func_split_equals_rhs" ${1+"$@"} - shift - ;; - - # Separate optargs to short options: - -W*) - func_split_short_opt "$_G_opt" - set dummy "$func_split_short_opt_name" \ - "$func_split_short_opt_arg" ${1+"$@"} - shift - ;; - - # Separate non-argument short options: - -\?*|-h*|-v*|-x*) - func_split_short_opt "$_G_opt" - set dummy "$func_split_short_opt_name" \ - "-$func_split_short_opt_arg" ${1+"$@"} - shift - ;; - - --) _G_parse_options_requote=: ; break ;; - -*) func_fatal_help "unrecognised option: '$_G_opt'" ;; - *) set dummy "$_G_opt" ${1+"$@"}; shift - _G_match_parse_options=false - break - ;; - esac - - if $_G_match_parse_options; then - _G_parse_options_requote=: - fi - done - - if $_G_parse_options_requote; then - # save modified positional parameters for caller - func_quote eval ${1+"$@"} - func_parse_options_result=$func_quote_result - fi -} - - -# func_validate_options [ARG]... -# ------------------------------ -# Perform any sanity checks on option settings and/or unconsumed -# arguments. -func_hookable func_validate_options -func_validate_options () -{ - $debug_cmd - - # Display all warnings if -W was not given. - test -n "$opt_warning_types" || opt_warning_types=" $warning_categories" - - func_run_hooks func_validate_options ${1+"$@"} - func_propagate_result func_run_hooks func_validate_options - - # Bail if the options were screwed! - $exit_cmd $EXIT_FAILURE -} - - - -## ----------------- ## -## Helper functions. ## -## ----------------- ## - -# This section contains the helper functions used by the rest of the -# hookable option parser framework in ascii-betical order. - - -# func_fatal_help ARG... -# ---------------------- -# Echo program name prefixed message to standard error, followed by -# a help hint, and exit. -func_fatal_help () -{ - $debug_cmd - - eval \$ECHO \""Usage: $usage"\" - eval \$ECHO \""$fatal_help"\" - func_error ${1+"$@"} - exit $EXIT_FAILURE -} - - -# func_help -# --------- -# Echo long help message to standard output and exit. -func_help () -{ - $debug_cmd - - func_usage_message - $ECHO "$long_help_message" - exit 0 -} - - -# func_missing_arg ARGNAME -# ------------------------ -# Echo program name prefixed message to standard error and set global -# exit_cmd. -func_missing_arg () -{ - $debug_cmd - - func_error "Missing argument for '$1'." - exit_cmd=exit -} - - -# func_split_equals STRING -# ------------------------ -# Set func_split_equals_lhs and func_split_equals_rhs shell variables -# after splitting STRING at the '=' sign. -test -z "$_G_HAVE_XSI_OPS" \ - && (eval 'x=a/b/c; - test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ - && _G_HAVE_XSI_OPS=yes - -if test yes = "$_G_HAVE_XSI_OPS" -then - # This is an XSI compatible shell, allowing a faster implementation... - eval 'func_split_equals () - { - $debug_cmd - - func_split_equals_lhs=${1%%=*} - func_split_equals_rhs=${1#*=} - if test "x$func_split_equals_lhs" = "x$1"; then - func_split_equals_rhs= - fi - }' -else - # ...otherwise fall back to using expr, which is often a shell builtin. - func_split_equals () - { - $debug_cmd - - func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'` - func_split_equals_rhs= - test "x$func_split_equals_lhs=" = "x$1" \ - || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'` - } -fi #func_split_equals - - -# func_split_short_opt SHORTOPT -# ----------------------------- -# Set func_split_short_opt_name and func_split_short_opt_arg shell -# variables after splitting SHORTOPT after the 2nd character. -if test yes = "$_G_HAVE_XSI_OPS" -then - # This is an XSI compatible shell, allowing a faster implementation... - eval 'func_split_short_opt () - { - $debug_cmd - - func_split_short_opt_arg=${1#??} - func_split_short_opt_name=${1%"$func_split_short_opt_arg"} - }' -else - # ...otherwise fall back to using expr, which is often a shell builtin. - func_split_short_opt () - { - $debug_cmd - - func_split_short_opt_name=`expr "x$1" : 'x\(-.\)'` - func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'` - } -fi #func_split_short_opt - - -# func_usage -# ---------- -# Echo short help message to standard output and exit. -func_usage () -{ - $debug_cmd - - func_usage_message - $ECHO "Run '$progname --help |${PAGER-more}' for full usage" - exit 0 -} - - -# func_usage_message -# ------------------ -# Echo short help message to standard output. -func_usage_message () -{ - $debug_cmd - - eval \$ECHO \""Usage: $usage"\" - echo - $SED -n 's|^# || - /^Written by/{ - x;p;x - } - h - /^Written by/q' < "$progpath" - echo - eval \$ECHO \""$usage_message"\" -} - - -# func_version -# ------------ -# Echo version message to standard output and exit. -# The version message is extracted from the calling file's header -# comments, with leading '# ' stripped: -# 1. First display the progname and version -# 2. Followed by the header comment line matching /^# Written by / -# 3. Then a blank line followed by the first following line matching -# /^# Copyright / -# 4. Immediately followed by any lines between the previous matches, -# except lines preceding the intervening completely blank line. -# For example, see the header comments of this file. -func_version () -{ - $debug_cmd - - printf '%s\n' "$progname $scriptversion" - $SED -n ' - /^# Written by /!b - s|^# ||; p; n - - :fwd2blnk - /./ { - n - b fwd2blnk - } - p; n - - :holdwrnt - s|^# || - s|^# *$|| - /^Copyright /!{ - /./H - n - b holdwrnt - } - - s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2| - G - s|\(\n\)\n*|\1|g - p; q' < "$progpath" - - exit $? -} - - -# Local variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-pattern: "30/scriptversion=%:y-%02m-%02d.%02H; # UTC" -# time-stamp-time-zone: "UTC" -# End: - -# Set a version string. -scriptversion='(GNU libtool) 2.4.7' - - -# func_echo ARG... -# ---------------- -# Libtool also displays the current mode in messages, so override -# funclib.sh func_echo with this custom definition. -func_echo () -{ - $debug_cmd - - _G_message=$* - - func_echo_IFS=$IFS - IFS=$nl - for _G_line in $_G_message; do - IFS=$func_echo_IFS - $ECHO "$progname${opt_mode+: $opt_mode}: $_G_line" - done - IFS=$func_echo_IFS -} - - -# func_warning ARG... -# ------------------- -# Libtool warnings are not categorized, so override funclib.sh -# func_warning with this simpler definition. -func_warning () -{ - $debug_cmd - - $warning_func ${1+"$@"} -} - - -## ---------------- ## -## Options parsing. ## -## ---------------- ## - -# Hook in the functions to make sure our own options are parsed during -# the option parsing loop. - -usage='$progpath [OPTION]... [MODE-ARG]...' - -# Short help message in response to '-h'. -usage_message="Options: - --config show all configuration variables - --debug enable verbose shell tracing - -n, --dry-run display commands without modifying any files - --features display basic configuration information and exit - --mode=MODE use operation mode MODE - --no-warnings equivalent to '-Wnone' - --preserve-dup-deps don't remove duplicate dependency libraries - --quiet, --silent don't print informational messages - --tag=TAG use configuration variables from tag TAG - -v, --verbose print more informational messages than default - --version print version information - -W, --warnings=CATEGORY report the warnings falling in CATEGORY [all] - -h, --help, --help-all print short, long, or detailed help message -" - -# Additional text appended to 'usage_message' in response to '--help'. -func_help () -{ - $debug_cmd - - func_usage_message - $ECHO "$long_help_message - -MODE must be one of the following: - - clean remove files from the build directory - compile compile a source file into a libtool object - execute automatically set library path, then run a program - finish complete the installation of libtool libraries - install install libraries or executables - link create a library or an executable - uninstall remove libraries from an installed directory - -MODE-ARGS vary depending on the MODE. When passed as first option, -'--mode=MODE' may be abbreviated as 'MODE' or a unique abbreviation of that. -Try '$progname --help --mode=MODE' for a more detailed description of MODE. - -When reporting a bug, please describe a test case to reproduce it and -include the following information: - - host-triplet: $host - shell: $SHELL - compiler: $LTCC - compiler flags: $LTCFLAGS - linker: $LD (gnu? $with_gnu_ld) - version: $progname $scriptversion Debian-2.4.7-7 - automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` - autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` - -Report bugs to . -GNU libtool home page: . -General help using GNU software: ." - exit 0 -} - - -# func_lo2o OBJECT-NAME -# --------------------- -# Transform OBJECT-NAME from a '.lo' suffix to the platform specific -# object suffix. - -lo2o=s/\\.lo\$/.$objext/ -o2lo=s/\\.$objext\$/.lo/ - -if test yes = "$_G_HAVE_XSI_OPS"; then - eval 'func_lo2o () - { - case $1 in - *.lo) func_lo2o_result=${1%.lo}.$objext ;; - * ) func_lo2o_result=$1 ;; - esac - }' - - # func_xform LIBOBJ-OR-SOURCE - # --------------------------- - # Transform LIBOBJ-OR-SOURCE from a '.o' or '.c' (or otherwise) - # suffix to a '.lo' libtool-object suffix. - eval 'func_xform () - { - func_xform_result=${1%.*}.lo - }' -else - # ...otherwise fall back to using sed. - func_lo2o () - { - func_lo2o_result=`$ECHO "$1" | $SED "$lo2o"` - } - - func_xform () - { - func_xform_result=`$ECHO "$1" | $SED 's|\.[^.]*$|.lo|'` - } -fi - - -# func_fatal_configuration ARG... -# ------------------------------- -# Echo program name prefixed message to standard error, followed by -# a configuration failure hint, and exit. -func_fatal_configuration () -{ - func_fatal_error ${1+"$@"} \ - "See the $PACKAGE documentation for more information." \ - "Fatal configuration error." -} - - -# func_config -# ----------- -# Display the configuration for all the tags in this script. -func_config () -{ - re_begincf='^# ### BEGIN LIBTOOL' - re_endcf='^# ### END LIBTOOL' - - # Default configuration. - $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath" - - # Now print the configurations for the tags. - for tagname in $taglist; do - $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath" - done - - exit $? -} - - -# func_features -# ------------- -# Display the features supported by this script. -func_features () -{ - echo "host: $host" - if test yes = "$build_libtool_libs"; then - echo "enable shared libraries" - else - echo "disable shared libraries" - fi - if test yes = "$build_old_libs"; then - echo "enable static libraries" - else - echo "disable static libraries" - fi - - exit $? -} - - -# func_enable_tag TAGNAME -# ----------------------- -# Verify that TAGNAME is valid, and either flag an error and exit, or -# enable the TAGNAME tag. We also add TAGNAME to the global $taglist -# variable here. -func_enable_tag () -{ - # Global variable: - tagname=$1 - - re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" - re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" - sed_extractcf=/$re_begincf/,/$re_endcf/p - - # Validate tagname. - case $tagname in - *[!-_A-Za-z0-9,/]*) - func_fatal_error "invalid tag name: $tagname" - ;; - esac - - # Don't test for the "default" C tag, as we know it's - # there but not specially marked. - case $tagname in - CC) ;; - *) - if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then - taglist="$taglist $tagname" - - # Evaluate the configuration. Be careful to quote the path - # and the sed script, to avoid splitting on whitespace, but - # also don't use non-portable quotes within backquotes within - # quotes we have to do it in 2 steps: - extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` - eval "$extractedcf" - else - func_error "ignoring unknown tag $tagname" - fi - ;; - esac -} - - -# func_check_version_match -# ------------------------ -# Ensure that we are using m4 macros, and libtool script from the same -# release of libtool. -func_check_version_match () -{ - if test "$package_revision" != "$macro_revision"; then - if test "$VERSION" != "$macro_version"; then - if test -z "$macro_version"; then - cat >&2 <<_LT_EOF -$progname: Version mismatch error. This is $PACKAGE $VERSION, but the -$progname: definition of this LT_INIT comes from an older release. -$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION -$progname: and run autoconf again. -_LT_EOF - else - cat >&2 <<_LT_EOF -$progname: Version mismatch error. This is $PACKAGE $VERSION, but the -$progname: definition of this LT_INIT comes from $PACKAGE $macro_version. -$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION -$progname: and run autoconf again. -_LT_EOF - fi - else - cat >&2 <<_LT_EOF -$progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, -$progname: but the definition of this LT_INIT comes from revision $macro_revision. -$progname: You should recreate aclocal.m4 with macros from revision $package_revision -$progname: of $PACKAGE $VERSION and run autoconf again. -_LT_EOF - fi - - exit $EXIT_MISMATCH - fi -} - - -# libtool_options_prep [ARG]... -# ----------------------------- -# Preparation for options parsed by libtool. -libtool_options_prep () -{ - $debug_mode - - # Option defaults: - opt_config=false - opt_dlopen= - opt_dry_run=false - opt_help=false - opt_mode= - opt_preserve_dup_deps=false - opt_quiet=false - - nonopt= - preserve_args= - - _G_rc_lt_options_prep=: - - _G_rc_lt_options_prep=: - - # Shorthand for --mode=foo, only valid as the first argument - case $1 in - clean|clea|cle|cl) - shift; set dummy --mode clean ${1+"$@"}; shift - ;; - compile|compil|compi|comp|com|co|c) - shift; set dummy --mode compile ${1+"$@"}; shift - ;; - execute|execut|execu|exec|exe|ex|e) - shift; set dummy --mode execute ${1+"$@"}; shift - ;; - finish|finis|fini|fin|fi|f) - shift; set dummy --mode finish ${1+"$@"}; shift - ;; - install|instal|insta|inst|ins|in|i) - shift; set dummy --mode install ${1+"$@"}; shift - ;; - link|lin|li|l) - shift; set dummy --mode link ${1+"$@"}; shift - ;; - uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) - shift; set dummy --mode uninstall ${1+"$@"}; shift - ;; - *) - _G_rc_lt_options_prep=false - ;; - esac - - if $_G_rc_lt_options_prep; then - # Pass back the list of options. - func_quote eval ${1+"$@"} - libtool_options_prep_result=$func_quote_result - fi -} -func_add_hook func_options_prep libtool_options_prep - - -# libtool_parse_options [ARG]... -# --------------------------------- -# Provide handling for libtool specific options. -libtool_parse_options () -{ - $debug_cmd - - _G_rc_lt_parse_options=false - - # Perform our own loop to consume as many options as possible in - # each iteration. - while test $# -gt 0; do - _G_match_lt_parse_options=: - _G_opt=$1 - shift - case $_G_opt in - --dry-run|--dryrun|-n) - opt_dry_run=: - ;; - - --config) func_config ;; - - --dlopen|-dlopen) - opt_dlopen="${opt_dlopen+$opt_dlopen -}$1" - shift - ;; - - --preserve-dup-deps) - opt_preserve_dup_deps=: ;; - - --features) func_features ;; - - --finish) set dummy --mode finish ${1+"$@"}; shift ;; - - --help) opt_help=: ;; - - --help-all) opt_help=': help-all' ;; - - --mode) test $# = 0 && func_missing_arg $_G_opt && break - opt_mode=$1 - case $1 in - # Valid mode arguments: - clean|compile|execute|finish|install|link|relink|uninstall) ;; - - # Catch anything else as an error - *) func_error "invalid argument for $_G_opt" - exit_cmd=exit - break - ;; - esac - shift - ;; - - --no-silent|--no-quiet) - opt_quiet=false - func_append preserve_args " $_G_opt" - ;; - - --no-warnings|--no-warning|--no-warn) - opt_warning=false - func_append preserve_args " $_G_opt" - ;; - - --no-verbose) - opt_verbose=false - func_append preserve_args " $_G_opt" - ;; - - --silent|--quiet) - opt_quiet=: - opt_verbose=false - func_append preserve_args " $_G_opt" - ;; - - --tag) test $# = 0 && func_missing_arg $_G_opt && break - opt_tag=$1 - func_append preserve_args " $_G_opt $1" - func_enable_tag "$1" - shift - ;; - - --verbose|-v) opt_quiet=false - opt_verbose=: - func_append preserve_args " $_G_opt" - ;; - - # An option not handled by this hook function: - *) set dummy "$_G_opt" ${1+"$@"} ; shift - _G_match_lt_parse_options=false - break - ;; - esac - $_G_match_lt_parse_options && _G_rc_lt_parse_options=: - done - - if $_G_rc_lt_parse_options; then - # save modified positional parameters for caller - func_quote eval ${1+"$@"} - libtool_parse_options_result=$func_quote_result - fi -} -func_add_hook func_parse_options libtool_parse_options - - - -# libtool_validate_options [ARG]... -# --------------------------------- -# Perform any sanity checks on option settings and/or unconsumed -# arguments. -libtool_validate_options () -{ - # save first non-option argument - if test 0 -lt $#; then - nonopt=$1 - shift - fi - - # preserve --debug - test : = "$debug_cmd" || func_append preserve_args " --debug" - - case $host in - # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452 - # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788 - *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*) - # don't eliminate duplications in $postdeps and $predeps - opt_duplicate_compiler_generated_deps=: - ;; - *) - opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps - ;; - esac - - $opt_help || { - # Sanity checks first: - func_check_version_match - - test yes != "$build_libtool_libs" \ - && test yes != "$build_old_libs" \ - && func_fatal_configuration "not configured to build any kind of library" - - # Darwin sucks - eval std_shrext=\"$shrext_cmds\" - - # Only execute mode is allowed to have -dlopen flags. - if test -n "$opt_dlopen" && test execute != "$opt_mode"; then - func_error "unrecognized option '-dlopen'" - $ECHO "$help" 1>&2 - exit $EXIT_FAILURE - fi - - # Change the help message to a mode-specific one. - generic_help=$help - help="Try '$progname --help --mode=$opt_mode' for more information." - } - - # Pass back the unparsed argument list - func_quote eval ${1+"$@"} - libtool_validate_options_result=$func_quote_result -} -func_add_hook func_validate_options libtool_validate_options - - -# Process options as early as possible so that --help and --version -# can return quickly. -func_options ${1+"$@"} -eval set dummy "$func_options_result"; shift - - - -## ----------- ## -## Main. ## -## ----------- ## - -magic='%%%MAGIC variable%%%' -magic_exe='%%%MAGIC EXE variable%%%' - -# Global variables. -extracted_archives= -extracted_serial=0 - -# If this variable is set in any of the actions, the command in it -# will be execed at the end. This prevents here-documents from being -# left over by shells. -exec_cmd= - - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -$1 -_LTECHO_EOF' -} - -# func_generated_by_libtool -# True iff stdin has been generated by Libtool. This function is only -# a basic sanity check; it will hardly flush out determined imposters. -func_generated_by_libtool_p () -{ - $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 -} - -# func_lalib_p file -# True iff FILE is a libtool '.la' library or '.lo' object file. -# This function is only a basic sanity check; it will hardly flush out -# determined imposters. -func_lalib_p () -{ - test -f "$1" && - $SED -e 4q "$1" 2>/dev/null | func_generated_by_libtool_p -} - -# func_lalib_unsafe_p file -# True iff FILE is a libtool '.la' library or '.lo' object file. -# This function implements the same check as func_lalib_p without -# resorting to external programs. To this end, it redirects stdin and -# closes it afterwards, without saving the original file descriptor. -# As a safety measure, use it only where a negative result would be -# fatal anyway. Works if 'file' does not exist. -func_lalib_unsafe_p () -{ - lalib_p=no - if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then - for lalib_p_l in 1 2 3 4 - do - read lalib_p_line - case $lalib_p_line in - \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; - esac - done - exec 0<&5 5<&- - fi - test yes = "$lalib_p" -} - -# func_ltwrapper_script_p file -# True iff FILE is a libtool wrapper script -# This function is only a basic sanity check; it will hardly flush out -# determined imposters. -func_ltwrapper_script_p () -{ - test -f "$1" && - $lt_truncate_bin < "$1" 2>/dev/null | func_generated_by_libtool_p -} - -# func_ltwrapper_executable_p file -# True iff FILE is a libtool wrapper executable -# This function is only a basic sanity check; it will hardly flush out -# determined imposters. -func_ltwrapper_executable_p () -{ - func_ltwrapper_exec_suffix= - case $1 in - *.exe) ;; - *) func_ltwrapper_exec_suffix=.exe ;; - esac - $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 -} - -# func_ltwrapper_scriptname file -# Assumes file is an ltwrapper_executable -# uses $file to determine the appropriate filename for a -# temporary ltwrapper_script. -func_ltwrapper_scriptname () -{ - func_dirname_and_basename "$1" "" "." - func_stripname '' '.exe' "$func_basename_result" - func_ltwrapper_scriptname_result=$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper -} - -# func_ltwrapper_p file -# True iff FILE is a libtool wrapper script or wrapper executable -# This function is only a basic sanity check; it will hardly flush out -# determined imposters. -func_ltwrapper_p () -{ - func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" -} - - -# func_execute_cmds commands fail_cmd -# Execute tilde-delimited COMMANDS. -# If FAIL_CMD is given, eval that upon failure. -# FAIL_CMD may read-access the current command in variable CMD! -func_execute_cmds () -{ - $debug_cmd - - save_ifs=$IFS; IFS='~' - for cmd in $1; do - IFS=$sp$nl - eval cmd=\"$cmd\" - IFS=$save_ifs - func_show_eval "$cmd" "${2-:}" - done - IFS=$save_ifs -} - - -# func_source file -# Source FILE, adding directory component if necessary. -# Note that it is not necessary on cygwin/mingw to append a dot to -# FILE even if both FILE and FILE.exe exist: automatic-append-.exe -# behavior happens only for exec(3), not for open(2)! Also, sourcing -# 'FILE.' does not work on cygwin managed mounts. -func_source () -{ - $debug_cmd - - case $1 in - */* | *\\*) . "$1" ;; - *) . "./$1" ;; - esac -} - - -# func_resolve_sysroot PATH -# Replace a leading = in PATH with a sysroot. Store the result into -# func_resolve_sysroot_result -func_resolve_sysroot () -{ - func_resolve_sysroot_result=$1 - case $func_resolve_sysroot_result in - =*) - func_stripname '=' '' "$func_resolve_sysroot_result" - func_resolve_sysroot_result=$lt_sysroot$func_stripname_result - ;; - esac -} - -# func_replace_sysroot PATH -# If PATH begins with the sysroot, replace it with = and -# store the result into func_replace_sysroot_result. -func_replace_sysroot () -{ - case $lt_sysroot:$1 in - ?*:"$lt_sysroot"*) - func_stripname "$lt_sysroot" '' "$1" - func_replace_sysroot_result='='$func_stripname_result - ;; - *) - # Including no sysroot. - func_replace_sysroot_result=$1 - ;; - esac -} - -# func_infer_tag arg -# Infer tagged configuration to use if any are available and -# if one wasn't chosen via the "--tag" command line option. -# Only attempt this if the compiler in the base compile -# command doesn't match the default compiler. -# arg is usually of the form 'gcc ...' -func_infer_tag () -{ - $debug_cmd - - if test -n "$available_tags" && test -z "$tagname"; then - CC_quoted= - for arg in $CC; do - func_append_quoted CC_quoted "$arg" - done - CC_expanded=`func_echo_all $CC` - CC_quoted_expanded=`func_echo_all $CC_quoted` - case $@ in - # Blanks in the command may have been stripped by the calling shell, - # but not from the CC environment variable when configure was run. - " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ - " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;; - # Blanks at the start of $base_compile will cause this to fail - # if we don't check for them as well. - *) - for z in $available_tags; do - if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then - # Evaluate the configuration. - eval "`$SED -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" - CC_quoted= - for arg in $CC; do - # Double-quote args containing other shell metacharacters. - func_append_quoted CC_quoted "$arg" - done - CC_expanded=`func_echo_all $CC` - CC_quoted_expanded=`func_echo_all $CC_quoted` - case "$@ " in - " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ - " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) - # The compiler in the base compile command matches - # the one in the tagged configuration. - # Assume this is the tagged configuration we want. - tagname=$z - break - ;; - esac - fi - done - # If $tagname still isn't set, then no tagged configuration - # was found and let the user know that the "--tag" command - # line option must be used. - if test -z "$tagname"; then - func_echo "unable to infer tagged configuration" - func_fatal_error "specify a tag with '--tag'" -# else -# func_verbose "using $tagname tagged configuration" - fi - ;; - esac - fi -} - - - -# func_write_libtool_object output_name pic_name nonpic_name -# Create a libtool object file (analogous to a ".la" file), -# but don't create it if we're doing a dry run. -func_write_libtool_object () -{ - write_libobj=$1 - if test yes = "$build_libtool_libs"; then - write_lobj=\'$2\' - else - write_lobj=none - fi - - if test yes = "$build_old_libs"; then - write_oldobj=\'$3\' - else - write_oldobj=none - fi - - $opt_dry_run || { - cat >${write_libobj}T </dev/null` - if test "$?" -eq 0 && test -n "$func_convert_core_file_wine_to_w32_tmp"; then - func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" | - $SED -e "$sed_naive_backslashify"` - else - func_convert_core_file_wine_to_w32_result= - fi - fi -} -# end: func_convert_core_file_wine_to_w32 - - -# func_convert_core_path_wine_to_w32 ARG -# Helper function used by path conversion functions when $build is *nix, and -# $host is mingw, cygwin, or some other w32 environment. Relies on a correctly -# configured wine environment available, with the winepath program in $build's -# $PATH. Assumes ARG has no leading or trailing path separator characters. -# -# ARG is path to be converted from $build format to win32. -# Result is available in $func_convert_core_path_wine_to_w32_result. -# Unconvertible file (directory) names in ARG are skipped; if no directory names -# are convertible, then the result may be empty. -func_convert_core_path_wine_to_w32 () -{ - $debug_cmd - - # unfortunately, winepath doesn't convert paths, only file names - func_convert_core_path_wine_to_w32_result= - if test -n "$1"; then - oldIFS=$IFS - IFS=: - for func_convert_core_path_wine_to_w32_f in $1; do - IFS=$oldIFS - func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f" - if test -n "$func_convert_core_file_wine_to_w32_result"; then - if test -z "$func_convert_core_path_wine_to_w32_result"; then - func_convert_core_path_wine_to_w32_result=$func_convert_core_file_wine_to_w32_result - else - func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result" - fi - fi - done - IFS=$oldIFS - fi -} -# end: func_convert_core_path_wine_to_w32 - - -# func_cygpath ARGS... -# Wrapper around calling the cygpath program via LT_CYGPATH. This is used when -# when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2) -# $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or -# (2), returns the Cygwin file name or path in func_cygpath_result (input -# file name or path is assumed to be in w32 format, as previously converted -# from $build's *nix or MSYS format). In case (3), returns the w32 file name -# or path in func_cygpath_result (input file name or path is assumed to be in -# Cygwin format). Returns an empty string on error. -# -# ARGS are passed to cygpath, with the last one being the file name or path to -# be converted. -# -# Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH -# environment variable; do not put it in $PATH. -func_cygpath () -{ - $debug_cmd - - if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then - func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null` - if test "$?" -ne 0; then - # on failure, ensure result is empty - func_cygpath_result= - fi - else - func_cygpath_result= - func_error "LT_CYGPATH is empty or specifies non-existent file: '$LT_CYGPATH'" - fi -} -#end: func_cygpath - - -# func_convert_core_msys_to_w32 ARG -# Convert file name or path ARG from MSYS format to w32 format. Return -# result in func_convert_core_msys_to_w32_result. -func_convert_core_msys_to_w32 () -{ - $debug_cmd - - # awkward: cmd appends spaces to result - func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | - $SED -e 's/[ ]*$//' -e "$sed_naive_backslashify"` -} -#end: func_convert_core_msys_to_w32 - - -# func_convert_file_check ARG1 ARG2 -# Verify that ARG1 (a file name in $build format) was converted to $host -# format in ARG2. Otherwise, emit an error message, but continue (resetting -# func_to_host_file_result to ARG1). -func_convert_file_check () -{ - $debug_cmd - - if test -z "$2" && test -n "$1"; then - func_error "Could not determine host file name corresponding to" - func_error " '$1'" - func_error "Continuing, but uninstalled executables may not work." - # Fallback: - func_to_host_file_result=$1 - fi -} -# end func_convert_file_check - - -# func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH -# Verify that FROM_PATH (a path in $build format) was converted to $host -# format in TO_PATH. Otherwise, emit an error message, but continue, resetting -# func_to_host_file_result to a simplistic fallback value (see below). -func_convert_path_check () -{ - $debug_cmd - - if test -z "$4" && test -n "$3"; then - func_error "Could not determine the host path corresponding to" - func_error " '$3'" - func_error "Continuing, but uninstalled executables may not work." - # Fallback. This is a deliberately simplistic "conversion" and - # should not be "improved". See libtool.info. - if test "x$1" != "x$2"; then - lt_replace_pathsep_chars="s|$1|$2|g" - func_to_host_path_result=`echo "$3" | - $SED -e "$lt_replace_pathsep_chars"` - else - func_to_host_path_result=$3 - fi - fi -} -# end func_convert_path_check - - -# func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG -# Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT -# and appending REPL if ORIG matches BACKPAT. -func_convert_path_front_back_pathsep () -{ - $debug_cmd - - case $4 in - $1 ) func_to_host_path_result=$3$func_to_host_path_result - ;; - esac - case $4 in - $2 ) func_append func_to_host_path_result "$3" - ;; - esac -} -# end func_convert_path_front_back_pathsep - - -################################################## -# $build to $host FILE NAME CONVERSION FUNCTIONS # -################################################## -# invoked via '$to_host_file_cmd ARG' -# -# In each case, ARG is the path to be converted from $build to $host format. -# Result will be available in $func_to_host_file_result. - - -# func_to_host_file ARG -# Converts the file name ARG from $build format to $host format. Return result -# in func_to_host_file_result. -func_to_host_file () -{ - $debug_cmd - - $to_host_file_cmd "$1" -} -# end func_to_host_file - - -# func_to_tool_file ARG LAZY -# converts the file name ARG from $build format to toolchain format. Return -# result in func_to_tool_file_result. If the conversion in use is listed -# in (the comma separated) LAZY, no conversion takes place. -func_to_tool_file () -{ - $debug_cmd - - case ,$2, in - *,"$to_tool_file_cmd",*) - func_to_tool_file_result=$1 - ;; - *) - $to_tool_file_cmd "$1" - func_to_tool_file_result=$func_to_host_file_result - ;; - esac -} -# end func_to_tool_file - - -# func_convert_file_noop ARG -# Copy ARG to func_to_host_file_result. -func_convert_file_noop () -{ - func_to_host_file_result=$1 -} -# end func_convert_file_noop - - -# func_convert_file_msys_to_w32 ARG -# Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic -# conversion to w32 is not available inside the cwrapper. Returns result in -# func_to_host_file_result. -func_convert_file_msys_to_w32 () -{ - $debug_cmd - - func_to_host_file_result=$1 - if test -n "$1"; then - func_convert_core_msys_to_w32 "$1" - func_to_host_file_result=$func_convert_core_msys_to_w32_result - fi - func_convert_file_check "$1" "$func_to_host_file_result" -} -# end func_convert_file_msys_to_w32 - - -# func_convert_file_cygwin_to_w32 ARG -# Convert file name ARG from Cygwin to w32 format. Returns result in -# func_to_host_file_result. -func_convert_file_cygwin_to_w32 () -{ - $debug_cmd - - func_to_host_file_result=$1 - if test -n "$1"; then - # because $build is cygwin, we call "the" cygpath in $PATH; no need to use - # LT_CYGPATH in this case. - func_to_host_file_result=`cygpath -m "$1"` - fi - func_convert_file_check "$1" "$func_to_host_file_result" -} -# end func_convert_file_cygwin_to_w32 - - -# func_convert_file_nix_to_w32 ARG -# Convert file name ARG from *nix to w32 format. Requires a wine environment -# and a working winepath. Returns result in func_to_host_file_result. -func_convert_file_nix_to_w32 () -{ - $debug_cmd - - func_to_host_file_result=$1 - if test -n "$1"; then - func_convert_core_file_wine_to_w32 "$1" - func_to_host_file_result=$func_convert_core_file_wine_to_w32_result - fi - func_convert_file_check "$1" "$func_to_host_file_result" -} -# end func_convert_file_nix_to_w32 - - -# func_convert_file_msys_to_cygwin ARG -# Convert file name ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. -# Returns result in func_to_host_file_result. -func_convert_file_msys_to_cygwin () -{ - $debug_cmd - - func_to_host_file_result=$1 - if test -n "$1"; then - func_convert_core_msys_to_w32 "$1" - func_cygpath -u "$func_convert_core_msys_to_w32_result" - func_to_host_file_result=$func_cygpath_result - fi - func_convert_file_check "$1" "$func_to_host_file_result" -} -# end func_convert_file_msys_to_cygwin - - -# func_convert_file_nix_to_cygwin ARG -# Convert file name ARG from *nix to Cygwin format. Requires Cygwin installed -# in a wine environment, working winepath, and LT_CYGPATH set. Returns result -# in func_to_host_file_result. -func_convert_file_nix_to_cygwin () -{ - $debug_cmd - - func_to_host_file_result=$1 - if test -n "$1"; then - # convert from *nix to w32, then use cygpath to convert from w32 to cygwin. - func_convert_core_file_wine_to_w32 "$1" - func_cygpath -u "$func_convert_core_file_wine_to_w32_result" - func_to_host_file_result=$func_cygpath_result - fi - func_convert_file_check "$1" "$func_to_host_file_result" -} -# end func_convert_file_nix_to_cygwin - - -############################################# -# $build to $host PATH CONVERSION FUNCTIONS # -############################################# -# invoked via '$to_host_path_cmd ARG' -# -# In each case, ARG is the path to be converted from $build to $host format. -# The result will be available in $func_to_host_path_result. -# -# Path separators are also converted from $build format to $host format. If -# ARG begins or ends with a path separator character, it is preserved (but -# converted to $host format) on output. -# -# All path conversion functions are named using the following convention: -# file name conversion function : func_convert_file_X_to_Y () -# path conversion function : func_convert_path_X_to_Y () -# where, for any given $build/$host combination the 'X_to_Y' value is the -# same. If conversion functions are added for new $build/$host combinations, -# the two new functions must follow this pattern, or func_init_to_host_path_cmd -# will break. - - -# func_init_to_host_path_cmd -# Ensures that function "pointer" variable $to_host_path_cmd is set to the -# appropriate value, based on the value of $to_host_file_cmd. -to_host_path_cmd= -func_init_to_host_path_cmd () -{ - $debug_cmd - - if test -z "$to_host_path_cmd"; then - func_stripname 'func_convert_file_' '' "$to_host_file_cmd" - to_host_path_cmd=func_convert_path_$func_stripname_result - fi -} - - -# func_to_host_path ARG -# Converts the path ARG from $build format to $host format. Return result -# in func_to_host_path_result. -func_to_host_path () -{ - $debug_cmd - - func_init_to_host_path_cmd - $to_host_path_cmd "$1" -} -# end func_to_host_path - - -# func_convert_path_noop ARG -# Copy ARG to func_to_host_path_result. -func_convert_path_noop () -{ - func_to_host_path_result=$1 -} -# end func_convert_path_noop - - -# func_convert_path_msys_to_w32 ARG -# Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic -# conversion to w32 is not available inside the cwrapper. Returns result in -# func_to_host_path_result. -func_convert_path_msys_to_w32 () -{ - $debug_cmd - - func_to_host_path_result=$1 - if test -n "$1"; then - # Remove leading and trailing path separator characters from ARG. MSYS - # behavior is inconsistent here; cygpath turns them into '.;' and ';.'; - # and winepath ignores them completely. - func_stripname : : "$1" - func_to_host_path_tmp1=$func_stripname_result - func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" - func_to_host_path_result=$func_convert_core_msys_to_w32_result - func_convert_path_check : ";" \ - "$func_to_host_path_tmp1" "$func_to_host_path_result" - func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" - fi -} -# end func_convert_path_msys_to_w32 - - -# func_convert_path_cygwin_to_w32 ARG -# Convert path ARG from Cygwin to w32 format. Returns result in -# func_to_host_file_result. -func_convert_path_cygwin_to_w32 () -{ - $debug_cmd - - func_to_host_path_result=$1 - if test -n "$1"; then - # See func_convert_path_msys_to_w32: - func_stripname : : "$1" - func_to_host_path_tmp1=$func_stripname_result - func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"` - func_convert_path_check : ";" \ - "$func_to_host_path_tmp1" "$func_to_host_path_result" - func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" - fi -} -# end func_convert_path_cygwin_to_w32 - - -# func_convert_path_nix_to_w32 ARG -# Convert path ARG from *nix to w32 format. Requires a wine environment and -# a working winepath. Returns result in func_to_host_file_result. -func_convert_path_nix_to_w32 () -{ - $debug_cmd - - func_to_host_path_result=$1 - if test -n "$1"; then - # See func_convert_path_msys_to_w32: - func_stripname : : "$1" - func_to_host_path_tmp1=$func_stripname_result - func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" - func_to_host_path_result=$func_convert_core_path_wine_to_w32_result - func_convert_path_check : ";" \ - "$func_to_host_path_tmp1" "$func_to_host_path_result" - func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" - fi -} -# end func_convert_path_nix_to_w32 - - -# func_convert_path_msys_to_cygwin ARG -# Convert path ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. -# Returns result in func_to_host_file_result. -func_convert_path_msys_to_cygwin () -{ - $debug_cmd - - func_to_host_path_result=$1 - if test -n "$1"; then - # See func_convert_path_msys_to_w32: - func_stripname : : "$1" - func_to_host_path_tmp1=$func_stripname_result - func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" - func_cygpath -u -p "$func_convert_core_msys_to_w32_result" - func_to_host_path_result=$func_cygpath_result - func_convert_path_check : : \ - "$func_to_host_path_tmp1" "$func_to_host_path_result" - func_convert_path_front_back_pathsep ":*" "*:" : "$1" - fi -} -# end func_convert_path_msys_to_cygwin - - -# func_convert_path_nix_to_cygwin ARG -# Convert path ARG from *nix to Cygwin format. Requires Cygwin installed in a -# a wine environment, working winepath, and LT_CYGPATH set. Returns result in -# func_to_host_file_result. -func_convert_path_nix_to_cygwin () -{ - $debug_cmd - - func_to_host_path_result=$1 - if test -n "$1"; then - # Remove leading and trailing path separator characters from - # ARG. msys behavior is inconsistent here, cygpath turns them - # into '.;' and ';.', and winepath ignores them completely. - func_stripname : : "$1" - func_to_host_path_tmp1=$func_stripname_result - func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" - func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result" - func_to_host_path_result=$func_cygpath_result - func_convert_path_check : : \ - "$func_to_host_path_tmp1" "$func_to_host_path_result" - func_convert_path_front_back_pathsep ":*" "*:" : "$1" - fi -} -# end func_convert_path_nix_to_cygwin - - -# func_dll_def_p FILE -# True iff FILE is a Windows DLL '.def' file. -# Keep in sync with _LT_DLL_DEF_P in libtool.m4 -func_dll_def_p () -{ - $debug_cmd - - func_dll_def_p_tmp=`$SED -n \ - -e 's/^[ ]*//' \ - -e '/^\(;.*\)*$/d' \ - -e 's/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p' \ - -e q \ - "$1"` - test DEF = "$func_dll_def_p_tmp" -} - - -# func_mode_compile arg... -func_mode_compile () -{ - $debug_cmd - - # Get the compilation command and the source file. - base_compile= - srcfile=$nonopt # always keep a non-empty value in "srcfile" - suppress_opt=yes - suppress_output= - arg_mode=normal - libobj= - later= - pie_flag= - - for arg - do - case $arg_mode in - arg ) - # do not "continue". Instead, add this to base_compile - lastarg=$arg - arg_mode=normal - ;; - - target ) - libobj=$arg - arg_mode=normal - continue - ;; - - normal ) - # Accept any command-line options. - case $arg in - -o) - test -n "$libobj" && \ - func_fatal_error "you cannot specify '-o' more than once" - arg_mode=target - continue - ;; - - -pie | -fpie | -fPIE) - func_append pie_flag " $arg" - continue - ;; - - -shared | -static | -prefer-pic | -prefer-non-pic) - func_append later " $arg" - continue - ;; - - -no-suppress) - suppress_opt=no - continue - ;; - - -Xcompiler) - arg_mode=arg # the next one goes into the "base_compile" arg list - continue # The current "srcfile" will either be retained or - ;; # replaced later. I would guess that would be a bug. - - -Wc,*) - func_stripname '-Wc,' '' "$arg" - args=$func_stripname_result - lastarg= - save_ifs=$IFS; IFS=, - for arg in $args; do - IFS=$save_ifs - func_append_quoted lastarg "$arg" - done - IFS=$save_ifs - func_stripname ' ' '' "$lastarg" - lastarg=$func_stripname_result - - # Add the arguments to base_compile. - func_append base_compile " $lastarg" - continue - ;; - - *) - # Accept the current argument as the source file. - # The previous "srcfile" becomes the current argument. - # - lastarg=$srcfile - srcfile=$arg - ;; - esac # case $arg - ;; - esac # case $arg_mode - - # Aesthetically quote the previous argument. - func_append_quoted base_compile "$lastarg" - done # for arg - - case $arg_mode in - arg) - func_fatal_error "you must specify an argument for -Xcompile" - ;; - target) - func_fatal_error "you must specify a target with '-o'" - ;; - *) - # Get the name of the library object. - test -z "$libobj" && { - func_basename "$srcfile" - libobj=$func_basename_result - } - ;; - esac - - # Recognize several different file suffixes. - # If the user specifies -o file.o, it is replaced with file.lo - case $libobj in - *.[cCFSifmso] | \ - *.ada | *.adb | *.ads | *.asm | \ - *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \ - *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup) - func_xform "$libobj" - libobj=$func_xform_result - ;; - esac - - case $libobj in - *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; - *) - func_fatal_error "cannot determine name of library object from '$libobj'" - ;; - esac - - func_infer_tag $base_compile - - for arg in $later; do - case $arg in - -shared) - test yes = "$build_libtool_libs" \ - || func_fatal_configuration "cannot build a shared library" - build_old_libs=no - continue - ;; - - -static) - build_libtool_libs=no - build_old_libs=yes - continue - ;; - - -prefer-pic) - pic_mode=yes - continue - ;; - - -prefer-non-pic) - pic_mode=no - continue - ;; - esac - done - - func_quote_arg pretty "$libobj" - test "X$libobj" != "X$func_quote_arg_result" \ - && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ - && func_warning "libobj name '$libobj' may not contain shell special characters." - func_dirname_and_basename "$obj" "/" "" - objname=$func_basename_result - xdir=$func_dirname_result - lobj=$xdir$objdir/$objname - - test -z "$base_compile" && \ - func_fatal_help "you must specify a compilation command" - - # Delete any leftover library objects. - if test yes = "$build_old_libs"; then - removelist="$obj $lobj $libobj ${libobj}T" - else - removelist="$lobj $libobj ${libobj}T" - fi - - # On Cygwin there's no "real" PIC flag so we must build both object types - case $host_os in - cygwin* | mingw* | pw32* | os2* | cegcc*) - pic_mode=default - ;; - esac - if test no = "$pic_mode" && test pass_all != "$deplibs_check_method"; then - # non-PIC code in shared libraries is not supported - pic_mode=default - fi - - # Calculate the filename of the output object if compiler does - # not support -o with -c - if test no = "$compiler_c_o"; then - output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.$objext - lockfile=$output_obj.lock - else - output_obj= - need_locks=no - lockfile= - fi - - # Lock this critical section if it is needed - # We use this script file to make the link, it avoids creating a new file - if test yes = "$need_locks"; then - until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do - func_echo "Waiting for $lockfile to be removed" - sleep 2 - done - elif test warn = "$need_locks"; then - if test -f "$lockfile"; then - $ECHO "\ -*** ERROR, $lockfile exists and contains: -`cat $lockfile 2>/dev/null` - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support '-c' and '-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $opt_dry_run || $RM $removelist - exit $EXIT_FAILURE - fi - func_append removelist " $output_obj" - $ECHO "$srcfile" > "$lockfile" - fi - - $opt_dry_run || $RM $removelist - func_append removelist " $lockfile" - trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 - - func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 - srcfile=$func_to_tool_file_result - func_quote_arg pretty "$srcfile" - qsrcfile=$func_quote_arg_result - - # Only build a PIC object if we are building libtool libraries. - if test yes = "$build_libtool_libs"; then - # Without this assignment, base_compile gets emptied. - fbsd_hideous_sh_bug=$base_compile - - if test no != "$pic_mode"; then - command="$base_compile $qsrcfile $pic_flag" - else - # Don't build PIC code - command="$base_compile $qsrcfile" - fi - - func_mkdir_p "$xdir$objdir" - - if test -z "$output_obj"; then - # Place PIC objects in $objdir - func_append command " -o $lobj" - fi - - func_show_eval_locale "$command" \ - 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' - - if test warn = "$need_locks" && - test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then - $ECHO "\ -*** ERROR, $lockfile contains: -`cat $lockfile 2>/dev/null` - -but it should contain: -$srcfile - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support '-c' and '-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $opt_dry_run || $RM $removelist - exit $EXIT_FAILURE - fi - - # Just move the object if needed, then go on to compile the next one - if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then - func_show_eval '$MV "$output_obj" "$lobj"' \ - 'error=$?; $opt_dry_run || $RM $removelist; exit $error' - fi - - # Allow error messages only from the first compilation. - if test yes = "$suppress_opt"; then - suppress_output=' >/dev/null 2>&1' - fi - fi - - # Only build a position-dependent object if we build old libraries. - if test yes = "$build_old_libs"; then - if test yes != "$pic_mode"; then - # Don't build PIC code - command="$base_compile $qsrcfile$pie_flag" - else - command="$base_compile $qsrcfile $pic_flag" - fi - if test yes = "$compiler_c_o"; then - func_append command " -o $obj" - fi - - # Suppress compiler output if we already did a PIC compilation. - func_append command "$suppress_output" - func_show_eval_locale "$command" \ - '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' - - if test warn = "$need_locks" && - test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then - $ECHO "\ -*** ERROR, $lockfile contains: -`cat $lockfile 2>/dev/null` - -but it should contain: -$srcfile - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support '-c' and '-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $opt_dry_run || $RM $removelist - exit $EXIT_FAILURE - fi - - # Just move the object if needed - if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then - func_show_eval '$MV "$output_obj" "$obj"' \ - 'error=$?; $opt_dry_run || $RM $removelist; exit $error' - fi - fi - - $opt_dry_run || { - func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" - - # Unlock the critical section if it was locked - if test no != "$need_locks"; then - removelist=$lockfile - $RM "$lockfile" - fi - } - - exit $EXIT_SUCCESS -} - -$opt_help || { - test compile = "$opt_mode" && func_mode_compile ${1+"$@"} -} - -func_mode_help () -{ - # We need to display help for each of the modes. - case $opt_mode in - "") - # Generic help is extracted from the usage comments - # at the start of this file. - func_help - ;; - - clean) - $ECHO \ -"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... - -Remove files from the build directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed -to RM. - -If FILE is a libtool library, object or program, all the files associated -with it are deleted. Otherwise, only FILE itself is deleted using RM." - ;; - - compile) - $ECHO \ -"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE - -Compile a source file into a libtool library object. - -This mode accepts the following additional options: - - -o OUTPUT-FILE set the output file name to OUTPUT-FILE - -no-suppress do not suppress compiler output for multiple passes - -prefer-pic try to build PIC objects only - -prefer-non-pic try to build non-PIC objects only - -shared do not build a '.o' file suitable for static linking - -static only build a '.o' file suitable for static linking - -Wc,FLAG - -Xcompiler FLAG pass FLAG directly to the compiler - -COMPILE-COMMAND is a command to be used in creating a 'standard' object file -from the given SOURCEFILE. - -The output file name is determined by removing the directory component from -SOURCEFILE, then substituting the C source code suffix '.c' with the -library object suffix, '.lo'." - ;; - - execute) - $ECHO \ -"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... - -Automatically set library path, then run a program. - -This mode accepts the following additional options: - - -dlopen FILE add the directory containing FILE to the library path - -This mode sets the library path environment variable according to '-dlopen' -flags. - -If any of the ARGS are libtool executable wrappers, then they are translated -into their corresponding uninstalled binary, and any of their required library -directories are added to the library path. - -Then, COMMAND is executed, with ARGS as arguments." - ;; - - finish) - $ECHO \ -"Usage: $progname [OPTION]... --mode=finish [LIBDIR]... - -Complete the installation of libtool libraries. - -Each LIBDIR is a directory that contains libtool libraries. - -The commands that this mode executes may require superuser privileges. Use -the '--dry-run' option if you just want to see what would be executed." - ;; - - install) - $ECHO \ -"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... - -Install executables or libraries. - -INSTALL-COMMAND is the installation command. The first component should be -either the 'install' or 'cp' program. - -The following components of INSTALL-COMMAND are treated specially: - - -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation - -The rest of the components are interpreted as arguments to that command (only -BSD-compatible install options are recognized)." - ;; - - link) - $ECHO \ -"Usage: $progname [OPTION]... --mode=link LINK-COMMAND... - -Link object files or libraries together to form another library, or to -create an executable program. - -LINK-COMMAND is a command using the C compiler that you would use to create -a program from several object files. - -The following components of LINK-COMMAND are treated specially: - - -all-static do not do any dynamic linking at all - -avoid-version do not add a version suffix if possible - -bindir BINDIR specify path to binaries directory (for systems where - libraries must be found in the PATH setting at runtime) - -dlopen FILE '-dlpreopen' FILE if it cannot be dlopened at runtime - -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols - -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) - -export-symbols SYMFILE - try to export only the symbols listed in SYMFILE - -export-symbols-regex REGEX - try to export only the symbols matching REGEX - -LLIBDIR search LIBDIR for required installed libraries - -lNAME OUTPUT-FILE requires the installed library libNAME - -module build a library that can dlopened - -no-fast-install disable the fast-install mode - -no-install link a not-installable executable - -no-undefined declare that a library does not refer to external symbols - -o OUTPUT-FILE create OUTPUT-FILE from the specified objects - -objectlist FILE use a list of object files found in FILE to specify objects - -os2dllname NAME force a short DLL name on OS/2 (no effect on other OSes) - -precious-files-regex REGEX - don't remove output files matching REGEX - -release RELEASE specify package release information - -rpath LIBDIR the created library will eventually be installed in LIBDIR - -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries - -shared only do dynamic linking of libtool libraries - -shrext SUFFIX override the standard shared library file extension - -static do not do any dynamic linking of uninstalled libtool libraries - -static-libtool-libs - do not do any dynamic linking of libtool libraries - -version-info CURRENT[:REVISION[:AGE]] - specify library version info [each variable defaults to 0] - -weak LIBNAME declare that the target provides the LIBNAME interface - -Wc,FLAG - -Xcompiler FLAG pass linker-specific FLAG directly to the compiler - -Wa,FLAG - -Xassembler FLAG pass linker-specific FLAG directly to the assembler - -Wl,FLAG - -Xlinker FLAG pass linker-specific FLAG directly to the linker - -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) - -All other options (arguments beginning with '-') are ignored. - -Every other argument is treated as a filename. Files ending in '.la' are -treated as uninstalled libtool libraries, other files are standard or library -object files. - -If the OUTPUT-FILE ends in '.la', then a libtool library is created, -only library objects ('.lo' files) may be specified, and '-rpath' is -required, except when creating a convenience library. - -If OUTPUT-FILE ends in '.a' or '.lib', then a standard library is created -using 'ar' and 'ranlib', or on Windows using 'lib'. - -If OUTPUT-FILE ends in '.lo' or '.$objext', then a reloadable object file -is created, otherwise an executable program is created." - ;; - - uninstall) - $ECHO \ -"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... - -Remove libraries from an installation directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed -to RM. - -If FILE is a libtool library, all the files associated with it are deleted. -Otherwise, only FILE itself is deleted using RM." - ;; - - *) - func_fatal_help "invalid operation mode '$opt_mode'" - ;; - esac - - echo - $ECHO "Try '$progname --help' for more information about other modes." -} - -# Now that we've collected a possible --mode arg, show help if necessary -if $opt_help; then - if test : = "$opt_help"; then - func_mode_help - else - { - func_help noexit - for opt_mode in compile link execute install finish uninstall clean; do - func_mode_help - done - } | $SED -n '1p; 2,$s/^Usage:/ or: /p' - { - func_help noexit - for opt_mode in compile link execute install finish uninstall clean; do - echo - func_mode_help - done - } | - $SED '1d - /^When reporting/,/^Report/{ - H - d - } - $x - /information about other modes/d - /more detailed .*MODE/d - s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/' - fi - exit $? -fi - - -# func_mode_execute arg... -func_mode_execute () -{ - $debug_cmd - - # The first argument is the command name. - cmd=$nonopt - test -z "$cmd" && \ - func_fatal_help "you must specify a COMMAND" - - # Handle -dlopen flags immediately. - for file in $opt_dlopen; do - test -f "$file" \ - || func_fatal_help "'$file' is not a file" - - dir= - case $file in - *.la) - func_resolve_sysroot "$file" - file=$func_resolve_sysroot_result - - # Check to see that this really is a libtool archive. - func_lalib_unsafe_p "$file" \ - || func_fatal_help "'$lib' is not a valid libtool archive" - - # Read the libtool library. - dlname= - library_names= - func_source "$file" - - # Skip this library if it cannot be dlopened. - if test -z "$dlname"; then - # Warn if it was a shared library. - test -n "$library_names" && \ - func_warning "'$file' was not linked with '-export-dynamic'" - continue - fi - - func_dirname "$file" "" "." - dir=$func_dirname_result - - if test -f "$dir/$objdir/$dlname"; then - func_append dir "/$objdir" - else - if test ! -f "$dir/$dlname"; then - func_fatal_error "cannot find '$dlname' in '$dir' or '$dir/$objdir'" - fi - fi - ;; - - *.lo) - # Just add the directory containing the .lo file. - func_dirname "$file" "" "." - dir=$func_dirname_result - ;; - - *) - func_warning "'-dlopen' is ignored for non-libtool libraries and objects" - continue - ;; - esac - - # Get the absolute pathname. - absdir=`cd "$dir" && pwd` - test -n "$absdir" && dir=$absdir - - # Now add the directory to shlibpath_var. - if eval "test -z \"\$$shlibpath_var\""; then - eval "$shlibpath_var=\"\$dir\"" - else - eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" - fi - done - - # This variable tells wrapper scripts just to set shlibpath_var - # rather than running their programs. - libtool_execute_magic=$magic - - # Check if any of the arguments is a wrapper script. - args= - for file - do - case $file in - -* | *.la | *.lo ) ;; - *) - # Do a test to see if this is really a libtool program. - if func_ltwrapper_script_p "$file"; then - func_source "$file" - # Transform arg to wrapped name. - file=$progdir/$program - elif func_ltwrapper_executable_p "$file"; then - func_ltwrapper_scriptname "$file" - func_source "$func_ltwrapper_scriptname_result" - # Transform arg to wrapped name. - file=$progdir/$program - fi - ;; - esac - # Quote arguments (to preserve shell metacharacters). - func_append_quoted args "$file" - done - - if $opt_dry_run; then - # Display what would be done. - if test -n "$shlibpath_var"; then - eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" - echo "export $shlibpath_var" - fi - $ECHO "$cmd$args" - exit $EXIT_SUCCESS - else - if test -n "$shlibpath_var"; then - # Export the shlibpath_var. - eval "export $shlibpath_var" - fi - - # Restore saved environment variables - for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES - do - eval "if test \"\${save_$lt_var+set}\" = set; then - $lt_var=\$save_$lt_var; export $lt_var - else - $lt_unset $lt_var - fi" - done - - # Now prepare to actually exec the command. - exec_cmd=\$cmd$args - fi -} - -test execute = "$opt_mode" && func_mode_execute ${1+"$@"} - - -# func_mode_finish arg... -func_mode_finish () -{ - $debug_cmd - - libs= - libdirs= - admincmds= - - for opt in "$nonopt" ${1+"$@"} - do - if test -d "$opt"; then - func_append libdirs " $opt" - - elif test -f "$opt"; then - if func_lalib_unsafe_p "$opt"; then - func_append libs " $opt" - else - func_warning "'$opt' is not a valid libtool archive" - fi - - else - func_fatal_error "invalid argument '$opt'" - fi - done - - if test -n "$libs"; then - if test -n "$lt_sysroot"; then - sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"` - sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;" - else - sysroot_cmd= - fi - - # Remove sysroot references - if $opt_dry_run; then - for lib in $libs; do - echo "removing references to $lt_sysroot and '=' prefixes from $lib" - done - else - tmpdir=`func_mktempdir` - for lib in $libs; do - $SED -e "$sysroot_cmd s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ - > $tmpdir/tmp-la - mv -f $tmpdir/tmp-la $lib - done - ${RM}r "$tmpdir" - fi - fi - - if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then - for libdir in $libdirs; do - if test -n "$finish_cmds"; then - # Do each command in the finish commands. - func_execute_cmds "$finish_cmds" 'admincmds="$admincmds -'"$cmd"'"' - fi - if test -n "$finish_eval"; then - # Do the single finish_eval. - eval cmds=\"$finish_eval\" - $opt_dry_run || eval "$cmds" || func_append admincmds " - $cmds" - fi - done - fi - - # Exit here if they wanted silent mode. - $opt_quiet && exit $EXIT_SUCCESS - - if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then - echo "----------------------------------------------------------------------" - echo "Libraries have been installed in:" - for libdir in $libdirs; do - $ECHO " $libdir" - done - echo - echo "If you ever happen to want to link against installed libraries" - echo "in a given directory, LIBDIR, you must either use libtool, and" - echo "specify the full pathname of the library, or use the '-LLIBDIR'" - echo "flag during linking and do at least one of the following:" - if test -n "$shlibpath_var"; then - echo " - add LIBDIR to the '$shlibpath_var' environment variable" - echo " during execution" - fi - if test -n "$runpath_var"; then - echo " - add LIBDIR to the '$runpath_var' environment variable" - echo " during linking" - fi - if test -n "$hardcode_libdir_flag_spec"; then - libdir=LIBDIR - eval flag=\"$hardcode_libdir_flag_spec\" - - $ECHO " - use the '$flag' linker flag" - fi - if test -n "$admincmds"; then - $ECHO " - have your system administrator run these commands:$admincmds" - fi - if test -f /etc/ld.so.conf; then - echo " - have your system administrator add LIBDIR to '/etc/ld.so.conf'" - fi - echo - - echo "See any operating system documentation about shared libraries for" - case $host in - solaris2.[6789]|solaris2.1[0-9]) - echo "more information, such as the ld(1), crle(1) and ld.so(8) manual" - echo "pages." - ;; - *) - echo "more information, such as the ld(1) and ld.so(8) manual pages." - ;; - esac - echo "----------------------------------------------------------------------" - fi - exit $EXIT_SUCCESS -} - -test finish = "$opt_mode" && func_mode_finish ${1+"$@"} - - -# func_mode_install arg... -func_mode_install () -{ - $debug_cmd - - # There may be an optional sh(1) argument at the beginning of - # install_prog (especially on Windows NT). - if test "$SHELL" = "$nonopt" || test /bin/sh = "$nonopt" || - # Allow the use of GNU shtool's install command. - case $nonopt in *shtool*) :;; *) false;; esac - then - # Aesthetically quote it. - func_quote_arg pretty "$nonopt" - install_prog="$func_quote_arg_result " - arg=$1 - shift - else - install_prog= - arg=$nonopt - fi - - # The real first argument should be the name of the installation program. - # Aesthetically quote it. - func_quote_arg pretty "$arg" - func_append install_prog "$func_quote_arg_result" - install_shared_prog=$install_prog - case " $install_prog " in - *[\\\ /]cp\ *) install_cp=: ;; - *) install_cp=false ;; - esac - - # We need to accept at least all the BSD install flags. - dest= - files= - opts= - prev= - install_type= - isdir=false - stripme= - no_mode=: - for arg - do - arg2= - if test -n "$dest"; then - func_append files " $dest" - dest=$arg - continue - fi - - case $arg in - -d) isdir=: ;; - -f) - if $install_cp; then :; else - prev=$arg - fi - ;; - -g | -m | -o) - prev=$arg - ;; - -s) - stripme=" -s" - continue - ;; - -*) - ;; - *) - # If the previous option needed an argument, then skip it. - if test -n "$prev"; then - if test X-m = "X$prev" && test -n "$install_override_mode"; then - arg2=$install_override_mode - no_mode=false - fi - prev= - else - dest=$arg - continue - fi - ;; - esac - - # Aesthetically quote the argument. - func_quote_arg pretty "$arg" - func_append install_prog " $func_quote_arg_result" - if test -n "$arg2"; then - func_quote_arg pretty "$arg2" - fi - func_append install_shared_prog " $func_quote_arg_result" - done - - test -z "$install_prog" && \ - func_fatal_help "you must specify an install program" - - test -n "$prev" && \ - func_fatal_help "the '$prev' option requires an argument" - - if test -n "$install_override_mode" && $no_mode; then - if $install_cp; then :; else - func_quote_arg pretty "$install_override_mode" - func_append install_shared_prog " -m $func_quote_arg_result" - fi - fi - - if test -z "$files"; then - if test -z "$dest"; then - func_fatal_help "no file or destination specified" - else - func_fatal_help "you must specify a destination" - fi - fi - - # Strip any trailing slash from the destination. - func_stripname '' '/' "$dest" - dest=$func_stripname_result - - # Check to see that the destination is a directory. - test -d "$dest" && isdir=: - if $isdir; then - destdir=$dest - destname= - else - func_dirname_and_basename "$dest" "" "." - destdir=$func_dirname_result - destname=$func_basename_result - - # Not a directory, so check to see that there is only one file specified. - set dummy $files; shift - test "$#" -gt 1 && \ - func_fatal_help "'$dest' is not a directory" - fi - case $destdir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - for file in $files; do - case $file in - *.lo) ;; - *) - func_fatal_help "'$destdir' must be an absolute directory name" - ;; - esac - done - ;; - esac - - # This variable tells wrapper scripts just to set variables rather - # than running their programs. - libtool_install_magic=$magic - - staticlibs= - future_libdirs= - current_libdirs= - for file in $files; do - - # Do each installation. - case $file in - *.$libext) - # Do the static libraries later. - func_append staticlibs " $file" - ;; - - *.la) - func_resolve_sysroot "$file" - file=$func_resolve_sysroot_result - - # Check to see that this really is a libtool archive. - func_lalib_unsafe_p "$file" \ - || func_fatal_help "'$file' is not a valid libtool archive" - - library_names= - old_library= - relink_command= - func_source "$file" - - # Add the libdir to current_libdirs if it is the destination. - if test "X$destdir" = "X$libdir"; then - case "$current_libdirs " in - *" $libdir "*) ;; - *) func_append current_libdirs " $libdir" ;; - esac - else - # Note the libdir as a future libdir. - case "$future_libdirs " in - *" $libdir "*) ;; - *) func_append future_libdirs " $libdir" ;; - esac - fi - - func_dirname "$file" "/" "" - dir=$func_dirname_result - func_append dir "$objdir" - - if test -n "$relink_command"; then - # Determine the prefix the user has applied to our future dir. - inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"` - - # Don't allow the user to place us outside of our expected - # location b/c this prevents finding dependent libraries that - # are installed to the same prefix. - # At present, this check doesn't affect windows .dll's that - # are installed into $libdir/../bin (currently, that works fine) - # but it's something to keep an eye on. - test "$inst_prefix_dir" = "$destdir" && \ - func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir" - - if test -n "$inst_prefix_dir"; then - # Stick the inst_prefix_dir data into the link command. - relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` - else - relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"` - fi - - func_warning "relinking '$file'" - func_show_eval "$relink_command" \ - 'func_fatal_error "error: relink '\''$file'\'' with the above command before installing it"' - fi - - # See the names of the shared library. - set dummy $library_names; shift - if test -n "$1"; then - realname=$1 - shift - - srcname=$realname - test -n "$relink_command" && srcname=${realname}T - - # Install the shared library and build the symlinks. - func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ - 'exit $?' - tstripme=$stripme - case $host_os in - cygwin* | mingw* | pw32* | cegcc*) - case $realname in - *.dll.a) - tstripme= - ;; - esac - ;; - os2*) - case $realname in - *_dll.a) - tstripme= - ;; - esac - ;; - esac - if test -n "$tstripme" && test -n "$striplib"; then - func_show_eval "$striplib $destdir/$realname" 'exit $?' - fi - - if test "$#" -gt 0; then - # Delete the old symlinks, and create new ones. - # Try 'ln -sf' first, because the 'ln' binary might depend on - # the symlink we replace! Solaris /bin/ln does not understand -f, - # so we also need to try rm && ln -s. - for linkname - do - test "$linkname" != "$realname" \ - && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })" - done - fi - - # Do each command in the postinstall commands. - lib=$destdir/$realname - func_execute_cmds "$postinstall_cmds" 'exit $?' - fi - - # Install the pseudo-library for information purposes. - func_basename "$file" - name=$func_basename_result - instname=$dir/${name}i - func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' - - # Maybe install the static library, too. - test -n "$old_library" && func_append staticlibs " $dir/$old_library" - ;; - - *.lo) - # Install (i.e. copy) a libtool object. - - # Figure out destination file name, if it wasn't already specified. - if test -n "$destname"; then - destfile=$destdir/$destname - else - func_basename "$file" - destfile=$func_basename_result - destfile=$destdir/$destfile - fi - - # Deduce the name of the destination old-style object file. - case $destfile in - *.lo) - func_lo2o "$destfile" - staticdest=$func_lo2o_result - ;; - *.$objext) - staticdest=$destfile - destfile= - ;; - *) - func_fatal_help "cannot copy a libtool object to '$destfile'" - ;; - esac - - # Install the libtool object if requested. - test -n "$destfile" && \ - func_show_eval "$install_prog $file $destfile" 'exit $?' - - # Install the old object if enabled. - if test yes = "$build_old_libs"; then - # Deduce the name of the old-style object file. - func_lo2o "$file" - staticobj=$func_lo2o_result - func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?' - fi - exit $EXIT_SUCCESS - ;; - - *) - # Figure out destination file name, if it wasn't already specified. - if test -n "$destname"; then - destfile=$destdir/$destname - else - func_basename "$file" - destfile=$func_basename_result - destfile=$destdir/$destfile - fi - - # If the file is missing, and there is a .exe on the end, strip it - # because it is most likely a libtool script we actually want to - # install - stripped_ext= - case $file in - *.exe) - if test ! -f "$file"; then - func_stripname '' '.exe' "$file" - file=$func_stripname_result - stripped_ext=.exe - fi - ;; - esac - - # Do a test to see if this is really a libtool program. - case $host in - *cygwin* | *mingw*) - if func_ltwrapper_executable_p "$file"; then - func_ltwrapper_scriptname "$file" - wrapper=$func_ltwrapper_scriptname_result - else - func_stripname '' '.exe' "$file" - wrapper=$func_stripname_result - fi - ;; - *) - wrapper=$file - ;; - esac - if func_ltwrapper_script_p "$wrapper"; then - notinst_deplibs= - relink_command= - - func_source "$wrapper" - - # Check the variables that should have been set. - test -z "$generated_by_libtool_version" && \ - func_fatal_error "invalid libtool wrapper script '$wrapper'" - - finalize=: - for lib in $notinst_deplibs; do - # Check to see that each library is installed. - libdir= - if test -f "$lib"; then - func_source "$lib" - fi - libfile=$libdir/`$ECHO "$lib" | $SED 's%^.*/%%g'` - if test -n "$libdir" && test ! -f "$libfile"; then - func_warning "'$lib' has not been installed in '$libdir'" - finalize=false - fi - done - - relink_command= - func_source "$wrapper" - - outputname= - if test no = "$fast_install" && test -n "$relink_command"; then - $opt_dry_run || { - if $finalize; then - tmpdir=`func_mktempdir` - func_basename "$file$stripped_ext" - file=$func_basename_result - outputname=$tmpdir/$file - # Replace the output file specification. - relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` - - $opt_quiet || { - func_quote_arg expand,pretty "$relink_command" - eval "func_echo $func_quote_arg_result" - } - if eval "$relink_command"; then : - else - func_error "error: relink '$file' with the above command before installing it" - $opt_dry_run || ${RM}r "$tmpdir" - continue - fi - file=$outputname - else - func_warning "cannot relink '$file'" - fi - } - else - # Install the binary that we compiled earlier. - file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"` - fi - fi - - # remove .exe since cygwin /usr/bin/install will append another - # one anyway - case $install_prog,$host in - */usr/bin/install*,*cygwin*) - case $file:$destfile in - *.exe:*.exe) - # this is ok - ;; - *.exe:*) - destfile=$destfile.exe - ;; - *:*.exe) - func_stripname '' '.exe' "$destfile" - destfile=$func_stripname_result - ;; - esac - ;; - esac - func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?' - $opt_dry_run || if test -n "$outputname"; then - ${RM}r "$tmpdir" - fi - ;; - esac - done - - for file in $staticlibs; do - func_basename "$file" - name=$func_basename_result - - # Set up the ranlib parameters. - oldlib=$destdir/$name - func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 - tool_oldlib=$func_to_tool_file_result - - func_show_eval "$install_prog \$file \$oldlib" 'exit $?' - - if test -n "$stripme" && test -n "$old_striplib"; then - func_show_eval "$old_striplib $tool_oldlib" 'exit $?' - fi - - # Do each command in the postinstall commands. - func_execute_cmds "$old_postinstall_cmds" 'exit $?' - done - - test -n "$future_libdirs" && \ - func_warning "remember to run '$progname --finish$future_libdirs'" - - if test -n "$current_libdirs"; then - # Maybe just do a dry run. - $opt_dry_run && current_libdirs=" -n$current_libdirs" - exec_cmd='$SHELL "$progpath" $preserve_args --finish$current_libdirs' - else - exit $EXIT_SUCCESS - fi -} - -test install = "$opt_mode" && func_mode_install ${1+"$@"} - - -# func_generate_dlsyms outputname originator pic_p -# Extract symbols from dlprefiles and create ${outputname}S.o with -# a dlpreopen symbol table. -func_generate_dlsyms () -{ - $debug_cmd - - my_outputname=$1 - my_originator=$2 - my_pic_p=${3-false} - my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'` - my_dlsyms= - - if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then - if test -n "$NM" && test -n "$global_symbol_pipe"; then - my_dlsyms=${my_outputname}S.c - else - func_error "not configured to extract global symbols from dlpreopened files" - fi - fi - - if test -n "$my_dlsyms"; then - case $my_dlsyms in - "") ;; - *.c) - # Discover the nlist of each of the dlfiles. - nlist=$output_objdir/$my_outputname.nm - - func_show_eval "$RM $nlist ${nlist}S ${nlist}T" - - # Parse the name list into a source file. - func_verbose "creating $output_objdir/$my_dlsyms" - - $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ -/* $my_dlsyms - symbol resolution table for '$my_outputname' dlsym emulation. */ -/* Generated by $PROGRAM (GNU $PACKAGE) $VERSION */ - -#ifdef __cplusplus -extern \"C\" { -#endif - -#if defined __GNUC__ && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) -#pragma GCC diagnostic ignored \"-Wstrict-prototypes\" -#endif - -/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ -#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE -/* DATA imports from DLLs on WIN32 can't be const, because runtime - relocations are performed -- see ld's documentation on pseudo-relocs. */ -# define LT_DLSYM_CONST -#elif defined __osf__ -/* This system does not cope well with relocations in const data. */ -# define LT_DLSYM_CONST -#else -# define LT_DLSYM_CONST const -#endif - -#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) - -/* External symbol declarations for the compiler. */\ -" - - if test yes = "$dlself"; then - func_verbose "generating symbol list for '$output'" - - $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" - - # Add our own program objects to the symbol list. - progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP` - for progfile in $progfiles; do - func_to_tool_file "$progfile" func_convert_file_msys_to_w32 - func_verbose "extracting global C symbols from '$func_to_tool_file_result'" - $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'" - done - - if test -n "$exclude_expsyms"; then - $opt_dry_run || { - eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' - eval '$MV "$nlist"T "$nlist"' - } - fi - - if test -n "$export_symbols_regex"; then - $opt_dry_run || { - eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' - eval '$MV "$nlist"T "$nlist"' - } - fi - - # Prepare the list of exported symbols - if test -z "$export_symbols"; then - export_symbols=$output_objdir/$outputname.exp - $opt_dry_run || { - $RM $export_symbols - eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' - case $host in - *cygwin* | *mingw* | *cegcc* ) - eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' - eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' - ;; - esac - } - else - $opt_dry_run || { - eval "$SED -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' - eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' - eval '$MV "$nlist"T "$nlist"' - case $host in - *cygwin* | *mingw* | *cegcc* ) - eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' - eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' - ;; - esac - } - fi - fi - - for dlprefile in $dlprefiles; do - func_verbose "extracting global C symbols from '$dlprefile'" - func_basename "$dlprefile" - name=$func_basename_result - case $host in - *cygwin* | *mingw* | *cegcc* ) - # if an import library, we need to obtain dlname - if func_win32_import_lib_p "$dlprefile"; then - func_tr_sh "$dlprefile" - eval "curr_lafile=\$libfile_$func_tr_sh_result" - dlprefile_dlbasename= - if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then - # Use subshell, to avoid clobbering current variable values - dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"` - if test -n "$dlprefile_dlname"; then - func_basename "$dlprefile_dlname" - dlprefile_dlbasename=$func_basename_result - else - # no lafile. user explicitly requested -dlpreopen . - $sharedlib_from_linklib_cmd "$dlprefile" - dlprefile_dlbasename=$sharedlib_from_linklib_result - fi - fi - $opt_dry_run || { - if test -n "$dlprefile_dlbasename"; then - eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"' - else - func_warning "Could not compute DLL name from $name" - eval '$ECHO ": $name " >> "$nlist"' - fi - func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 - eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe | - $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'" - } - else # not an import lib - $opt_dry_run || { - eval '$ECHO ": $name " >> "$nlist"' - func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 - eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" - } - fi - ;; - *) - $opt_dry_run || { - eval '$ECHO ": $name " >> "$nlist"' - func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 - eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" - } - ;; - esac - done - - $opt_dry_run || { - # Make sure we have at least an empty file. - test -f "$nlist" || : > "$nlist" - - if test -n "$exclude_expsyms"; then - $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T - $MV "$nlist"T "$nlist" - fi - - # Try sorting and uniquifying the output. - if $GREP -v "^: " < "$nlist" | - if sort -k 3 /dev/null 2>&1; then - sort -k 3 - else - sort +2 - fi | - uniq > "$nlist"S; then - : - else - $GREP -v "^: " < "$nlist" > "$nlist"S - fi - - if test -f "$nlist"S; then - eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"' - else - echo '/* NONE */' >> "$output_objdir/$my_dlsyms" - fi - - func_show_eval '$RM "${nlist}I"' - if test -n "$global_symbol_to_import"; then - eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I' - fi - - echo >> "$output_objdir/$my_dlsyms" "\ - -/* The mapping between symbol names and symbols. */ -typedef struct { - const char *name; - void *address; -} lt_dlsymlist; -extern LT_DLSYM_CONST lt_dlsymlist -lt_${my_prefix}_LTX_preloaded_symbols[];\ -" - - if test -s "$nlist"I; then - echo >> "$output_objdir/$my_dlsyms" "\ -static void lt_syminit(void) -{ - LT_DLSYM_CONST lt_dlsymlist *symbol = lt_${my_prefix}_LTX_preloaded_symbols; - for (; symbol->name; ++symbol) - {" - $SED 's/.*/ if (STREQ (symbol->name, \"&\")) symbol->address = (void *) \&&;/' < "$nlist"I >> "$output_objdir/$my_dlsyms" - echo >> "$output_objdir/$my_dlsyms" "\ - } -}" - fi - echo >> "$output_objdir/$my_dlsyms" "\ -LT_DLSYM_CONST lt_dlsymlist -lt_${my_prefix}_LTX_preloaded_symbols[] = -{ {\"$my_originator\", (void *) 0}," - - if test -s "$nlist"I; then - echo >> "$output_objdir/$my_dlsyms" "\ - {\"@INIT@\", (void *) <_syminit}," - fi - - case $need_lib_prefix in - no) - eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms" - ;; - *) - eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms" - ;; - esac - echo >> "$output_objdir/$my_dlsyms" "\ - {0, (void *) 0} -}; - -/* This works around a problem in FreeBSD linker */ -#ifdef FREEBSD_WORKAROUND -static const void *lt_preloaded_setup() { - return lt_${my_prefix}_LTX_preloaded_symbols; -} -#endif - -#ifdef __cplusplus -} -#endif\ -" - } # !$opt_dry_run - - pic_flag_for_symtable= - case "$compile_command " in - *" -static "*) ;; - *) - case $host in - # compiling the symbol table file with pic_flag works around - # a FreeBSD bug that causes programs to crash when -lm is - # linked before any other PIC object. But we must not use - # pic_flag when linking with -static. The problem exists in - # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. - *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) - pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;; - *-*-hpux*) - pic_flag_for_symtable=" $pic_flag" ;; - *) - $my_pic_p && pic_flag_for_symtable=" $pic_flag" - ;; - esac - ;; - esac - symtab_cflags= - for arg in $LTCFLAGS; do - case $arg in - -pie | -fpie | -fPIE) ;; - *) func_append symtab_cflags " $arg" ;; - esac - done - - # Now compile the dynamic symbol file. - func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' - - # Clean up the generated files. - func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T" "${nlist}I"' - - # Transform the symbol file into the correct name. - symfileobj=$output_objdir/${my_outputname}S.$objext - case $host in - *cygwin* | *mingw* | *cegcc* ) - if test -f "$output_objdir/$my_outputname.def"; then - compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` - finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` - else - compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` - finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` - fi - ;; - *) - compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` - finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` - ;; - esac - ;; - *) - func_fatal_error "unknown suffix for '$my_dlsyms'" - ;; - esac - else - # We keep going just in case the user didn't refer to - # lt_preloaded_symbols. The linker will fail if global_symbol_pipe - # really was required. - - # Nullify the symbol file. - compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"` - finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"` - fi -} - -# func_cygming_gnu_implib_p ARG -# This predicate returns with zero status (TRUE) if -# ARG is a GNU/binutils-style import library. Returns -# with nonzero status (FALSE) otherwise. -func_cygming_gnu_implib_p () -{ - $debug_cmd - - func_to_tool_file "$1" func_convert_file_msys_to_w32 - func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` - test -n "$func_cygming_gnu_implib_tmp" -} - -# func_cygming_ms_implib_p ARG -# This predicate returns with zero status (TRUE) if -# ARG is an MS-style import library. Returns -# with nonzero status (FALSE) otherwise. -func_cygming_ms_implib_p () -{ - $debug_cmd - - func_to_tool_file "$1" func_convert_file_msys_to_w32 - func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` - test -n "$func_cygming_ms_implib_tmp" -} - -# func_win32_libid arg -# return the library type of file 'arg' -# -# Need a lot of goo to handle *both* DLLs and import libs -# Has to be a shell function in order to 'eat' the argument -# that is supplied when $file_magic_command is called. -# Despite the name, also deal with 64 bit binaries. -func_win32_libid () -{ - $debug_cmd - - win32_libid_type=unknown - win32_fileres=`file -L $1 2>/dev/null` - case $win32_fileres in - *ar\ archive\ import\ library*) # definitely import - win32_libid_type="x86 archive import" - ;; - *ar\ archive*) # could be an import, or static - # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. - if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | - $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then - case $nm_interface in - "MS dumpbin") - if func_cygming_ms_implib_p "$1" || - func_cygming_gnu_implib_p "$1" - then - win32_nmres=import - else - win32_nmres= - fi - ;; - *) - func_to_tool_file "$1" func_convert_file_msys_to_w32 - win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | - $SED -n -e ' - 1,100{ - / I /{ - s|.*|import| - p - q - } - }'` - ;; - esac - case $win32_nmres in - import*) win32_libid_type="x86 archive import";; - *) win32_libid_type="x86 archive static";; - esac - fi - ;; - *DLL*) - win32_libid_type="x86 DLL" - ;; - *executable*) # but shell scripts are "executable" too... - case $win32_fileres in - *MS\ Windows\ PE\ Intel*) - win32_libid_type="x86 DLL" - ;; - esac - ;; - esac - $ECHO "$win32_libid_type" -} - -# func_cygming_dll_for_implib ARG -# -# Platform-specific function to extract the -# name of the DLL associated with the specified -# import library ARG. -# Invoked by eval'ing the libtool variable -# $sharedlib_from_linklib_cmd -# Result is available in the variable -# $sharedlib_from_linklib_result -func_cygming_dll_for_implib () -{ - $debug_cmd - - sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"` -} - -# func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs -# -# The is the core of a fallback implementation of a -# platform-specific function to extract the name of the -# DLL associated with the specified import library LIBNAME. -# -# SECTION_NAME is either .idata$6 or .idata$7, depending -# on the platform and compiler that created the implib. -# -# Echos the name of the DLL associated with the -# specified import library. -func_cygming_dll_for_implib_fallback_core () -{ - $debug_cmd - - match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"` - $OBJDUMP -s --section "$1" "$2" 2>/dev/null | - $SED '/^Contents of section '"$match_literal"':/{ - # Place marker at beginning of archive member dllname section - s/.*/====MARK====/ - p - d - } - # These lines can sometimes be longer than 43 characters, but - # are always uninteresting - /:[ ]*file format pe[i]\{,1\}-/d - /^In archive [^:]*:/d - # Ensure marker is printed - /^====MARK====/p - # Remove all lines with less than 43 characters - /^.\{43\}/!d - # From remaining lines, remove first 43 characters - s/^.\{43\}//' | - $SED -n ' - # Join marker and all lines until next marker into a single line - /^====MARK====/ b para - H - $ b para - b - :para - x - s/\n//g - # Remove the marker - s/^====MARK====// - # Remove trailing dots and whitespace - s/[\. \t]*$// - # Print - /./p' | - # we now have a list, one entry per line, of the stringified - # contents of the appropriate section of all members of the - # archive that possess that section. Heuristic: eliminate - # all those that have a first or second character that is - # a '.' (that is, objdump's representation of an unprintable - # character.) This should work for all archives with less than - # 0x302f exports -- but will fail for DLLs whose name actually - # begins with a literal '.' or a single character followed by - # a '.'. - # - # Of those that remain, print the first one. - $SED -e '/^\./d;/^.\./d;q' -} - -# func_cygming_dll_for_implib_fallback ARG -# Platform-specific function to extract the -# name of the DLL associated with the specified -# import library ARG. -# -# This fallback implementation is for use when $DLLTOOL -# does not support the --identify-strict option. -# Invoked by eval'ing the libtool variable -# $sharedlib_from_linklib_cmd -# Result is available in the variable -# $sharedlib_from_linklib_result -func_cygming_dll_for_implib_fallback () -{ - $debug_cmd - - if func_cygming_gnu_implib_p "$1"; then - # binutils import library - sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"` - elif func_cygming_ms_implib_p "$1"; then - # ms-generated import library - sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"` - else - # unknown - sharedlib_from_linklib_result= - fi -} - - -# func_extract_an_archive dir oldlib -func_extract_an_archive () -{ - $debug_cmd - - f_ex_an_ar_dir=$1; shift - f_ex_an_ar_oldlib=$1 - if test yes = "$lock_old_archive_extraction"; then - lockfile=$f_ex_an_ar_oldlib.lock - until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do - func_echo "Waiting for $lockfile to be removed" - sleep 2 - done - fi - func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \ - 'stat=$?; rm -f "$lockfile"; exit $stat' - if test yes = "$lock_old_archive_extraction"; then - $opt_dry_run || rm -f "$lockfile" - fi - if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then - : - else - func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" - fi -} - - -# func_extract_archives gentop oldlib ... -func_extract_archives () -{ - $debug_cmd - - my_gentop=$1; shift - my_oldlibs=${1+"$@"} - my_oldobjs= - my_xlib= - my_xabs= - my_xdir= - - for my_xlib in $my_oldlibs; do - # Extract the objects. - case $my_xlib in - [\\/]* | [A-Za-z]:[\\/]*) my_xabs=$my_xlib ;; - *) my_xabs=`pwd`"/$my_xlib" ;; - esac - func_basename "$my_xlib" - my_xlib=$func_basename_result - my_xlib_u=$my_xlib - while :; do - case " $extracted_archives " in - *" $my_xlib_u "*) - func_arith $extracted_serial + 1 - extracted_serial=$func_arith_result - my_xlib_u=lt$extracted_serial-$my_xlib ;; - *) break ;; - esac - done - extracted_archives="$extracted_archives $my_xlib_u" - my_xdir=$my_gentop/$my_xlib_u - - func_mkdir_p "$my_xdir" - - case $host in - *-darwin*) - func_verbose "Extracting $my_xabs" - # Do not bother doing anything if just a dry run - $opt_dry_run || { - darwin_orig_dir=`pwd` - cd $my_xdir || exit $? - darwin_archive=$my_xabs - darwin_curdir=`pwd` - func_basename "$darwin_archive" - darwin_base_archive=$func_basename_result - darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` - if test -n "$darwin_arches"; then - darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` - darwin_arch= - func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" - for darwin_arch in $darwin_arches; do - func_mkdir_p "unfat-$$/$darwin_base_archive-$darwin_arch" - $LIPO -thin $darwin_arch -output "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" "$darwin_archive" - cd "unfat-$$/$darwin_base_archive-$darwin_arch" - func_extract_an_archive "`pwd`" "$darwin_base_archive" - cd "$darwin_curdir" - $RM "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" - done # $darwin_arches - ## Okay now we've a bunch of thin objects, gotta fatten them up :) - darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$sed_basename" | sort -u` - darwin_file= - darwin_files= - for darwin_file in $darwin_filelist; do - darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP` - $LIPO -create -output "$darwin_file" $darwin_files - done # $darwin_filelist - $RM -rf unfat-$$ - cd "$darwin_orig_dir" - else - cd $darwin_orig_dir - func_extract_an_archive "$my_xdir" "$my_xabs" - fi # $darwin_arches - } # !$opt_dry_run - ;; - *) - func_extract_an_archive "$my_xdir" "$my_xabs" - ;; - esac - my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP` - done - - func_extract_archives_result=$my_oldobjs -} - - -# func_emit_wrapper [arg=no] -# -# Emit a libtool wrapper script on stdout. -# Don't directly open a file because we may want to -# incorporate the script contents within a cygwin/mingw -# wrapper executable. Must ONLY be called from within -# func_mode_link because it depends on a number of variables -# set therein. -# -# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR -# variable will take. If 'yes', then the emitted script -# will assume that the directory where it is stored is -# the $objdir directory. This is a cygwin/mingw-specific -# behavior. -func_emit_wrapper () -{ - func_emit_wrapper_arg1=${1-no} - - $ECHO "\ -#! $SHELL - -# $output - temporary wrapper script for $objdir/$outputname -# Generated by $PROGRAM (GNU $PACKAGE) $VERSION -# -# The $output program cannot be directly executed until all the libtool -# libraries that it depends on are installed. -# -# This wrapper script should never be moved out of the build directory. -# If it is, it will not operate correctly. - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -sed_quote_subst='$sed_quote_subst' - -# Be Bourne compatible -if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which - # is contrary to our usage. Disable this feature. - alias -g '\${1+\"\$@\"}'='\"\$@\"' - setopt NO_GLOB_SUBST -else - case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac -fi -BIN_SH=xpg4; export BIN_SH # for Tru64 -DUALCASE=1; export DUALCASE # for MKS sh - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -relink_command=\"$relink_command\" - -# This environment variable determines our operation mode. -if test \"\$libtool_install_magic\" = \"$magic\"; then - # install mode needs the following variables: - generated_by_libtool_version='$macro_version' - notinst_deplibs='$notinst_deplibs' -else - # When we are sourced in execute mode, \$file and \$ECHO are already set. - if test \"\$libtool_execute_magic\" != \"$magic\"; then - file=\"\$0\"" - - func_quote_arg pretty "$ECHO" - qECHO=$func_quote_arg_result - $ECHO "\ - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -\$1 -_LTECHO_EOF' -} - ECHO=$qECHO - fi - -# Very basic option parsing. These options are (a) specific to -# the libtool wrapper, (b) are identical between the wrapper -# /script/ and the wrapper /executable/ that is used only on -# windows platforms, and (c) all begin with the string "--lt-" -# (application programs are unlikely to have options that match -# this pattern). -# -# There are only two supported options: --lt-debug and -# --lt-dump-script. There is, deliberately, no --lt-help. -# -# The first argument to this parsing function should be the -# script's $0 value, followed by "$@". -lt_option_debug= -func_parse_lt_options () -{ - lt_script_arg0=\$0 - shift - for lt_opt - do - case \"\$lt_opt\" in - --lt-debug) lt_option_debug=1 ;; - --lt-dump-script) - lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\` - test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=. - lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\` - cat \"\$lt_dump_D/\$lt_dump_F\" - exit 0 - ;; - --lt-*) - \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2 - exit 1 - ;; - esac - done - - # Print the debug banner immediately: - if test -n \"\$lt_option_debug\"; then - echo \"$outputname:$output:\$LINENO: libtool wrapper (GNU $PACKAGE) $VERSION\" 1>&2 - fi -} - -# Used when --lt-debug. Prints its arguments to stdout -# (redirection is the responsibility of the caller) -func_lt_dump_args () -{ - lt_dump_args_N=1; - for lt_arg - do - \$ECHO \"$outputname:$output:\$LINENO: newargv[\$lt_dump_args_N]: \$lt_arg\" - lt_dump_args_N=\`expr \$lt_dump_args_N + 1\` - done -} - -# Core function for launching the target application -func_exec_program_core () -{ -" - case $host in - # Backslashes separate directories on plain windows - *-*-mingw | *-*-os2* | *-cegcc*) - $ECHO "\ - if test -n \"\$lt_option_debug\"; then - \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2 - func_lt_dump_args \${1+\"\$@\"} 1>&2 - fi - exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} -" - ;; - - *) - $ECHO "\ - if test -n \"\$lt_option_debug\"; then - \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir/\$program\" 1>&2 - func_lt_dump_args \${1+\"\$@\"} 1>&2 - fi - exec \"\$progdir/\$program\" \${1+\"\$@\"} -" - ;; - esac - $ECHO "\ - \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 - exit 1 -} - -# A function to encapsulate launching the target application -# Strips options in the --lt-* namespace from \$@ and -# launches target application with the remaining arguments. -func_exec_program () -{ - case \" \$* \" in - *\\ --lt-*) - for lt_wr_arg - do - case \$lt_wr_arg in - --lt-*) ;; - *) set x \"\$@\" \"\$lt_wr_arg\"; shift;; - esac - shift - done ;; - esac - func_exec_program_core \${1+\"\$@\"} -} - - # Parse options - func_parse_lt_options \"\$0\" \${1+\"\$@\"} - - # Find the directory that this script lives in. - thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\` - test \"x\$thisdir\" = \"x\$file\" && thisdir=. - - # Follow symbolic links until we get to the real thisdir. - file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\` - while test -n \"\$file\"; do - destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\` - - # If there was a directory component, then change thisdir. - if test \"x\$destdir\" != \"x\$file\"; then - case \"\$destdir\" in - [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; - *) thisdir=\"\$thisdir/\$destdir\" ;; - esac - fi - - file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\` - file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\` - done - - # Usually 'no', except on cygwin/mingw when embedded into - # the cwrapper. - WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1 - if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then - # special case for '.' - if test \"\$thisdir\" = \".\"; then - thisdir=\`pwd\` - fi - # remove .libs from thisdir - case \"\$thisdir\" in - *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;; - $objdir ) thisdir=. ;; - esac - fi - - # Try to get the absolute directory name. - absdir=\`cd \"\$thisdir\" && pwd\` - test -n \"\$absdir\" && thisdir=\"\$absdir\" -" - - if test yes = "$fast_install"; then - $ECHO "\ - program=lt-'$outputname'$exeext - progdir=\"\$thisdir/$objdir\" - - if test ! -f \"\$progdir/\$program\" || - { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | $SED 1q\`; \\ - test \"X\$file\" != \"X\$progdir/\$program\"; }; then - - file=\"\$\$-\$program\" - - if test ! -d \"\$progdir\"; then - $MKDIR \"\$progdir\" - else - $RM \"\$progdir/\$file\" - fi" - - $ECHO "\ - - # relink executable if necessary - if test -n \"\$relink_command\"; then - if relink_command_output=\`eval \$relink_command 2>&1\`; then : - else - \$ECHO \"\$relink_command_output\" >&2 - $RM \"\$progdir/\$file\" - exit 1 - fi - fi - - $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || - { $RM \"\$progdir/\$program\"; - $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; } - $RM \"\$progdir/\$file\" - fi" - else - $ECHO "\ - program='$outputname' - progdir=\"\$thisdir/$objdir\" -" - fi - - $ECHO "\ - - if test -f \"\$progdir/\$program\"; then" - - # fixup the dll searchpath if we need to. - # - # Fix the DLL searchpath if we need to. Do this before prepending - # to shlibpath, because on Windows, both are PATH and uninstalled - # libraries must come first. - if test -n "$dllsearchpath"; then - $ECHO "\ - # Add the dll search path components to the executable PATH - PATH=$dllsearchpath:\$PATH -" - fi - - # Export our shlibpath_var if we have one. - if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then - $ECHO "\ - # Add our own library path to $shlibpath_var - $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" - - # Some systems cannot cope with colon-terminated $shlibpath_var - # The second colon is a workaround for a bug in BeOS R4 sed - $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\` - - export $shlibpath_var -" - fi - - $ECHO "\ - if test \"\$libtool_execute_magic\" != \"$magic\"; then - # Run the actual program with our arguments. - func_exec_program \${1+\"\$@\"} - fi - else - # The program doesn't exist. - \$ECHO \"\$0: error: '\$progdir/\$program' does not exist\" 1>&2 - \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 - \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 - exit 1 - fi -fi\ -" -} - - -# func_emit_cwrapperexe_src -# emit the source code for a wrapper executable on stdout -# Must ONLY be called from within func_mode_link because -# it depends on a number of variable set therein. -func_emit_cwrapperexe_src () -{ - cat < -#include -#ifdef _MSC_VER -# include -# include -# include -#else -# include -# include -# ifdef __CYGWIN__ -# include -# endif -#endif -#include -#include -#include -#include -#include -#include -#include -#include - -#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) - -/* declarations of non-ANSI functions */ -#if defined __MINGW32__ -# ifdef __STRICT_ANSI__ -int _putenv (const char *); -# endif -#elif defined __CYGWIN__ -# ifdef __STRICT_ANSI__ -char *realpath (const char *, char *); -int putenv (char *); -int setenv (const char *, const char *, int); -# endif -/* #elif defined other_platform || defined ... */ -#endif - -/* portability defines, excluding path handling macros */ -#if defined _MSC_VER -# define setmode _setmode -# define stat _stat -# define chmod _chmod -# define getcwd _getcwd -# define putenv _putenv -# define S_IXUSR _S_IEXEC -#elif defined __MINGW32__ -# define setmode _setmode -# define stat _stat -# define chmod _chmod -# define getcwd _getcwd -# define putenv _putenv -#elif defined __CYGWIN__ -# define HAVE_SETENV -# define FOPEN_WB "wb" -/* #elif defined other platforms ... */ -#endif - -#if defined PATH_MAX -# define LT_PATHMAX PATH_MAX -#elif defined MAXPATHLEN -# define LT_PATHMAX MAXPATHLEN -#else -# define LT_PATHMAX 1024 -#endif - -#ifndef S_IXOTH -# define S_IXOTH 0 -#endif -#ifndef S_IXGRP -# define S_IXGRP 0 -#endif - -/* path handling portability macros */ -#ifndef DIR_SEPARATOR -# define DIR_SEPARATOR '/' -# define PATH_SEPARATOR ':' -#endif - -#if defined _WIN32 || defined __MSDOS__ || defined __DJGPP__ || \ - defined __OS2__ -# define HAVE_DOS_BASED_FILE_SYSTEM -# define FOPEN_WB "wb" -# ifndef DIR_SEPARATOR_2 -# define DIR_SEPARATOR_2 '\\' -# endif -# ifndef PATH_SEPARATOR_2 -# define PATH_SEPARATOR_2 ';' -# endif -#endif - -#ifndef DIR_SEPARATOR_2 -# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) -#else /* DIR_SEPARATOR_2 */ -# define IS_DIR_SEPARATOR(ch) \ - (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) -#endif /* DIR_SEPARATOR_2 */ - -#ifndef PATH_SEPARATOR_2 -# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) -#else /* PATH_SEPARATOR_2 */ -# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) -#endif /* PATH_SEPARATOR_2 */ - -#ifndef FOPEN_WB -# define FOPEN_WB "w" -#endif -#ifndef _O_BINARY -# define _O_BINARY 0 -#endif - -#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) -#define XFREE(stale) do { \ - if (stale) { free (stale); stale = 0; } \ -} while (0) - -#if defined LT_DEBUGWRAPPER -static int lt_debug = 1; -#else -static int lt_debug = 0; -#endif - -const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */ - -void *xmalloc (size_t num); -char *xstrdup (const char *string); -const char *base_name (const char *name); -char *find_executable (const char *wrapper); -char *chase_symlinks (const char *pathspec); -int make_executable (const char *path); -int check_executable (const char *path); -char *strendzap (char *str, const char *pat); -void lt_debugprintf (const char *file, int line, const char *fmt, ...); -void lt_fatal (const char *file, int line, const char *message, ...); -static const char *nonnull (const char *s); -static const char *nonempty (const char *s); -void lt_setenv (const char *name, const char *value); -char *lt_extend_str (const char *orig_value, const char *add, int to_end); -void lt_update_exe_path (const char *name, const char *value); -void lt_update_lib_path (const char *name, const char *value); -char **prepare_spawn (char **argv); -void lt_dump_script (FILE *f); -EOF - - cat <= 0) - && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) - return 1; - else - return 0; -} - -int -make_executable (const char *path) -{ - int rval = 0; - struct stat st; - - lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n", - nonempty (path)); - if ((!path) || (!*path)) - return 0; - - if (stat (path, &st) >= 0) - { - rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); - } - return rval; -} - -/* Searches for the full path of the wrapper. Returns - newly allocated full path name if found, NULL otherwise - Does not chase symlinks, even on platforms that support them. -*/ -char * -find_executable (const char *wrapper) -{ - int has_slash = 0; - const char *p; - const char *p_next; - /* static buffer for getcwd */ - char tmp[LT_PATHMAX + 1]; - size_t tmp_len; - char *concat_name; - - lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", - nonempty (wrapper)); - - if ((wrapper == NULL) || (*wrapper == '\0')) - return NULL; - - /* Absolute path? */ -#if defined HAVE_DOS_BASED_FILE_SYSTEM - if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') - { - concat_name = xstrdup (wrapper); - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - } - else - { -#endif - if (IS_DIR_SEPARATOR (wrapper[0])) - { - concat_name = xstrdup (wrapper); - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - } -#if defined HAVE_DOS_BASED_FILE_SYSTEM - } -#endif - - for (p = wrapper; *p; p++) - if (*p == '/') - { - has_slash = 1; - break; - } - if (!has_slash) - { - /* no slashes; search PATH */ - const char *path = getenv ("PATH"); - if (path != NULL) - { - for (p = path; *p; p = p_next) - { - const char *q; - size_t p_len; - for (q = p; *q; q++) - if (IS_PATH_SEPARATOR (*q)) - break; - p_len = (size_t) (q - p); - p_next = (*q == '\0' ? q : q + 1); - if (p_len == 0) - { - /* empty path: current directory */ - if (getcwd (tmp, LT_PATHMAX) == NULL) - lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", - nonnull (strerror (errno))); - tmp_len = strlen (tmp); - concat_name = - XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); - memcpy (concat_name, tmp, tmp_len); - concat_name[tmp_len] = '/'; - strcpy (concat_name + tmp_len + 1, wrapper); - } - else - { - concat_name = - XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); - memcpy (concat_name, p, p_len); - concat_name[p_len] = '/'; - strcpy (concat_name + p_len + 1, wrapper); - } - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - } - } - /* not found in PATH; assume curdir */ - } - /* Relative path | not found in path: prepend cwd */ - if (getcwd (tmp, LT_PATHMAX) == NULL) - lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", - nonnull (strerror (errno))); - tmp_len = strlen (tmp); - concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); - memcpy (concat_name, tmp, tmp_len); - concat_name[tmp_len] = '/'; - strcpy (concat_name + tmp_len + 1, wrapper); - - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - return NULL; -} - -char * -chase_symlinks (const char *pathspec) -{ -#ifndef S_ISLNK - return xstrdup (pathspec); -#else - char buf[LT_PATHMAX]; - struct stat s; - char *tmp_pathspec = xstrdup (pathspec); - char *p; - int has_symlinks = 0; - while (strlen (tmp_pathspec) && !has_symlinks) - { - lt_debugprintf (__FILE__, __LINE__, - "checking path component for symlinks: %s\n", - tmp_pathspec); - if (lstat (tmp_pathspec, &s) == 0) - { - if (S_ISLNK (s.st_mode) != 0) - { - has_symlinks = 1; - break; - } - - /* search backwards for last DIR_SEPARATOR */ - p = tmp_pathspec + strlen (tmp_pathspec) - 1; - while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) - p--; - if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) - { - /* no more DIR_SEPARATORS left */ - break; - } - *p = '\0'; - } - else - { - lt_fatal (__FILE__, __LINE__, - "error accessing file \"%s\": %s", - tmp_pathspec, nonnull (strerror (errno))); - } - } - XFREE (tmp_pathspec); - - if (!has_symlinks) - { - return xstrdup (pathspec); - } - - tmp_pathspec = realpath (pathspec, buf); - if (tmp_pathspec == 0) - { - lt_fatal (__FILE__, __LINE__, - "could not follow symlinks for %s", pathspec); - } - return xstrdup (tmp_pathspec); -#endif -} - -char * -strendzap (char *str, const char *pat) -{ - size_t len, patlen; - - assert (str != NULL); - assert (pat != NULL); - - len = strlen (str); - patlen = strlen (pat); - - if (patlen <= len) - { - str += len - patlen; - if (STREQ (str, pat)) - *str = '\0'; - } - return str; -} - -void -lt_debugprintf (const char *file, int line, const char *fmt, ...) -{ - va_list args; - if (lt_debug) - { - (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line); - va_start (args, fmt); - (void) vfprintf (stderr, fmt, args); - va_end (args); - } -} - -static void -lt_error_core (int exit_status, const char *file, - int line, const char *mode, - const char *message, va_list ap) -{ - fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode); - vfprintf (stderr, message, ap); - fprintf (stderr, ".\n"); - - if (exit_status >= 0) - exit (exit_status); -} - -void -lt_fatal (const char *file, int line, const char *message, ...) -{ - va_list ap; - va_start (ap, message); - lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap); - va_end (ap); -} - -static const char * -nonnull (const char *s) -{ - return s ? s : "(null)"; -} - -static const char * -nonempty (const char *s) -{ - return (s && !*s) ? "(empty)" : nonnull (s); -} - -void -lt_setenv (const char *name, const char *value) -{ - lt_debugprintf (__FILE__, __LINE__, - "(lt_setenv) setting '%s' to '%s'\n", - nonnull (name), nonnull (value)); - { -#ifdef HAVE_SETENV - /* always make a copy, for consistency with !HAVE_SETENV */ - char *str = xstrdup (value); - setenv (name, str, 1); -#else - size_t len = strlen (name) + 1 + strlen (value) + 1; - char *str = XMALLOC (char, len); - sprintf (str, "%s=%s", name, value); - if (putenv (str) != EXIT_SUCCESS) - { - XFREE (str); - } -#endif - } -} - -char * -lt_extend_str (const char *orig_value, const char *add, int to_end) -{ - char *new_value; - if (orig_value && *orig_value) - { - size_t orig_value_len = strlen (orig_value); - size_t add_len = strlen (add); - new_value = XMALLOC (char, add_len + orig_value_len + 1); - if (to_end) - { - strcpy (new_value, orig_value); - strcpy (new_value + orig_value_len, add); - } - else - { - strcpy (new_value, add); - strcpy (new_value + add_len, orig_value); - } - } - else - { - new_value = xstrdup (add); - } - return new_value; -} - -void -lt_update_exe_path (const char *name, const char *value) -{ - lt_debugprintf (__FILE__, __LINE__, - "(lt_update_exe_path) modifying '%s' by prepending '%s'\n", - nonnull (name), nonnull (value)); - - if (name && *name && value && *value) - { - char *new_value = lt_extend_str (getenv (name), value, 0); - /* some systems can't cope with a ':'-terminated path #' */ - size_t len = strlen (new_value); - while ((len > 0) && IS_PATH_SEPARATOR (new_value[len-1])) - { - new_value[--len] = '\0'; - } - lt_setenv (name, new_value); - XFREE (new_value); - } -} - -void -lt_update_lib_path (const char *name, const char *value) -{ - lt_debugprintf (__FILE__, __LINE__, - "(lt_update_lib_path) modifying '%s' by prepending '%s'\n", - nonnull (name), nonnull (value)); - - if (name && *name && value && *value) - { - char *new_value = lt_extend_str (getenv (name), value, 0); - lt_setenv (name, new_value); - XFREE (new_value); - } -} - -EOF - case $host_os in - mingw*) - cat <<"EOF" - -/* Prepares an argument vector before calling spawn(). - Note that spawn() does not by itself call the command interpreter - (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") : - ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); - GetVersionEx(&v); - v.dwPlatformId == VER_PLATFORM_WIN32_NT; - }) ? "cmd.exe" : "command.com"). - Instead it simply concatenates the arguments, separated by ' ', and calls - CreateProcess(). We must quote the arguments since Win32 CreateProcess() - interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a - special way: - - Space and tab are interpreted as delimiters. They are not treated as - delimiters if they are surrounded by double quotes: "...". - - Unescaped double quotes are removed from the input. Their only effect is - that within double quotes, space and tab are treated like normal - characters. - - Backslashes not followed by double quotes are not special. - - But 2*n+1 backslashes followed by a double quote become - n backslashes followed by a double quote (n >= 0): - \" -> " - \\\" -> \" - \\\\\" -> \\" - */ -#define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" -#define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" -char ** -prepare_spawn (char **argv) -{ - size_t argc; - char **new_argv; - size_t i; - - /* Count number of arguments. */ - for (argc = 0; argv[argc] != NULL; argc++) - ; - - /* Allocate new argument vector. */ - new_argv = XMALLOC (char *, argc + 1); - - /* Put quoted arguments into the new argument vector. */ - for (i = 0; i < argc; i++) - { - const char *string = argv[i]; - - if (string[0] == '\0') - new_argv[i] = xstrdup ("\"\""); - else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL) - { - int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL); - size_t length; - unsigned int backslashes; - const char *s; - char *quoted_string; - char *p; - - length = 0; - backslashes = 0; - if (quote_around) - length++; - for (s = string; *s != '\0'; s++) - { - char c = *s; - if (c == '"') - length += backslashes + 1; - length++; - if (c == '\\') - backslashes++; - else - backslashes = 0; - } - if (quote_around) - length += backslashes + 1; - - quoted_string = XMALLOC (char, length + 1); - - p = quoted_string; - backslashes = 0; - if (quote_around) - *p++ = '"'; - for (s = string; *s != '\0'; s++) - { - char c = *s; - if (c == '"') - { - unsigned int j; - for (j = backslashes + 1; j > 0; j--) - *p++ = '\\'; - } - *p++ = c; - if (c == '\\') - backslashes++; - else - backslashes = 0; - } - if (quote_around) - { - unsigned int j; - for (j = backslashes; j > 0; j--) - *p++ = '\\'; - *p++ = '"'; - } - *p = '\0'; - - new_argv[i] = quoted_string; - } - else - new_argv[i] = (char *) string; - } - new_argv[argc] = NULL; - - return new_argv; -} -EOF - ;; - esac - - cat <<"EOF" -void lt_dump_script (FILE* f) -{ -EOF - func_emit_wrapper yes | - $SED -n -e ' -s/^\(.\{79\}\)\(..*\)/\1\ -\2/ -h -s/\([\\"]\)/\\\1/g -s/$/\\n/ -s/\([^\n]*\).*/ fputs ("\1", f);/p -g -D' - cat <<"EOF" -} -EOF -} -# end: func_emit_cwrapperexe_src - -# func_win32_import_lib_p ARG -# True if ARG is an import lib, as indicated by $file_magic_cmd -func_win32_import_lib_p () -{ - $debug_cmd - - case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in - *import*) : ;; - *) false ;; - esac -} - -# func_suncc_cstd_abi -# !!ONLY CALL THIS FOR SUN CC AFTER $compile_command IS FULLY EXPANDED!! -# Several compiler flags select an ABI that is incompatible with the -# Cstd library. Avoid specifying it if any are in CXXFLAGS. -func_suncc_cstd_abi () -{ - $debug_cmd - - case " $compile_command " in - *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*) - suncc_use_cstd_abi=no - ;; - *) - suncc_use_cstd_abi=yes - ;; - esac -} - -# func_mode_link arg... -func_mode_link () -{ - $debug_cmd - - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) - # It is impossible to link a dll without this setting, and - # we shouldn't force the makefile maintainer to figure out - # what system we are compiling for in order to pass an extra - # flag for every libtool invocation. - # allow_undefined=no - - # FIXME: Unfortunately, there are problems with the above when trying - # to make a dll that has undefined symbols, in which case not - # even a static library is built. For now, we need to specify - # -no-undefined on the libtool link line when we can be certain - # that all symbols are satisfied, otherwise we get a static library. - allow_undefined=yes - ;; - *) - allow_undefined=yes - ;; - esac - libtool_args=$nonopt - base_compile="$nonopt $@" - compile_command=$nonopt - finalize_command=$nonopt - - compile_rpath= - finalize_rpath= - compile_shlibpath= - finalize_shlibpath= - convenience= - old_convenience= - deplibs= - old_deplibs= - compiler_flags= - linker_flags= - dllsearchpath= - lib_search_path=`pwd` - inst_prefix_dir= - new_inherited_linker_flags= - - avoid_version=no - bindir= - dlfiles= - dlprefiles= - dlself=no - export_dynamic=no - export_symbols= - export_symbols_regex= - generated= - libobjs= - ltlibs= - module=no - no_install=no - objs= - os2dllname= - non_pic_objects= - precious_files_regex= - prefer_static_libs=no - preload=false - prev= - prevarg= - release= - rpath= - xrpath= - perm_rpath= - temp_rpath= - thread_safe=no - vinfo= - vinfo_number=no - weak_libs= - single_module=$wl-single_module - func_infer_tag $base_compile - - # We need to know -static, to get the right output filenames. - for arg - do - case $arg in - -shared) - test yes != "$build_libtool_libs" \ - && func_fatal_configuration "cannot build a shared library" - build_old_libs=no - break - ;; - -all-static | -static | -static-libtool-libs) - case $arg in - -all-static) - if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then - func_warning "complete static linking is impossible in this configuration" - fi - if test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - prefer_static_libs=yes - ;; - -static) - if test -z "$pic_flag" && test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - prefer_static_libs=built - ;; - -static-libtool-libs) - if test -z "$pic_flag" && test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - prefer_static_libs=yes - ;; - esac - build_libtool_libs=no - build_old_libs=yes - break - ;; - esac - done - - # See if our shared archives depend on static archives. - test -n "$old_archive_from_new_cmds" && build_old_libs=yes - - # Go through the arguments, transforming them on the way. - while test "$#" -gt 0; do - arg=$1 - shift - func_quote_arg pretty,unquoted "$arg" - qarg=$func_quote_arg_unquoted_result - func_append libtool_args " $func_quote_arg_result" - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then - case $prev in - output) - func_append compile_command " @OUTPUT@" - func_append finalize_command " @OUTPUT@" - ;; - esac - - case $prev in - bindir) - bindir=$arg - prev= - continue - ;; - dlfiles|dlprefiles) - $preload || { - # Add the symbol object into the linking commands. - func_append compile_command " @SYMFILE@" - func_append finalize_command " @SYMFILE@" - preload=: - } - case $arg in - *.la | *.lo) ;; # We handle these cases below. - force) - if test no = "$dlself"; then - dlself=needless - export_dynamic=yes - fi - prev= - continue - ;; - self) - if test dlprefiles = "$prev"; then - dlself=yes - elif test dlfiles = "$prev" && test yes != "$dlopen_self"; then - dlself=yes - else - dlself=needless - export_dynamic=yes - fi - prev= - continue - ;; - *) - if test dlfiles = "$prev"; then - func_append dlfiles " $arg" - else - func_append dlprefiles " $arg" - fi - prev= - continue - ;; - esac - ;; - expsyms) - export_symbols=$arg - test -f "$arg" \ - || func_fatal_error "symbol file '$arg' does not exist" - prev= - continue - ;; - expsyms_regex) - export_symbols_regex=$arg - prev= - continue - ;; - framework) - case $host in - *-*-darwin*) - case "$deplibs " in - *" $qarg.ltframework "*) ;; - *) func_append deplibs " $qarg.ltframework" # this is fixed later - ;; - esac - ;; - esac - prev= - continue - ;; - inst_prefix) - inst_prefix_dir=$arg - prev= - continue - ;; - mllvm) - # Clang does not use LLVM to link, so we can simply discard any - # '-mllvm $arg' options when doing the link step. - prev= - continue - ;; - objectlist) - if test -f "$arg"; then - save_arg=$arg - moreargs= - for fil in `cat "$save_arg"` - do -# func_append moreargs " $fil" - arg=$fil - # A libtool-controlled object. - - # Check to see that this really is a libtool object. - if func_lalib_unsafe_p "$arg"; then - pic_object= - non_pic_object= - - # Read the .lo file - func_source "$arg" - - if test -z "$pic_object" || - test -z "$non_pic_object" || - test none = "$pic_object" && - test none = "$non_pic_object"; then - func_fatal_error "cannot find name of object for '$arg'" - fi - - # Extract subdirectory from the argument. - func_dirname "$arg" "/" "" - xdir=$func_dirname_result - - if test none != "$pic_object"; then - # Prepend the subdirectory the object is found in. - pic_object=$xdir$pic_object - - if test dlfiles = "$prev"; then - if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then - func_append dlfiles " $pic_object" - prev= - continue - else - # If libtool objects are unsupported, then we need to preload. - prev=dlprefiles - fi - fi - - # CHECK ME: I think I busted this. -Ossama - if test dlprefiles = "$prev"; then - # Preload the old-style object. - func_append dlprefiles " $pic_object" - prev= - fi - - # A PIC object. - func_append libobjs " $pic_object" - arg=$pic_object - fi - - # Non-PIC object. - if test none != "$non_pic_object"; then - # Prepend the subdirectory the object is found in. - non_pic_object=$xdir$non_pic_object - - # A standard non-PIC object - func_append non_pic_objects " $non_pic_object" - if test -z "$pic_object" || test none = "$pic_object"; then - arg=$non_pic_object - fi - else - # If the PIC object exists, use it instead. - # $xdir was prepended to $pic_object above. - non_pic_object=$pic_object - func_append non_pic_objects " $non_pic_object" - fi - else - # Only an error if not doing a dry-run. - if $opt_dry_run; then - # Extract subdirectory from the argument. - func_dirname "$arg" "/" "" - xdir=$func_dirname_result - - func_lo2o "$arg" - pic_object=$xdir$objdir/$func_lo2o_result - non_pic_object=$xdir$func_lo2o_result - func_append libobjs " $pic_object" - func_append non_pic_objects " $non_pic_object" - else - func_fatal_error "'$arg' is not a valid libtool object" - fi - fi - done - else - func_fatal_error "link input file '$arg' does not exist" - fi - arg=$save_arg - prev= - continue - ;; - os2dllname) - os2dllname=$arg - prev= - continue - ;; - precious_regex) - precious_files_regex=$arg - prev= - continue - ;; - release) - release=-$arg - prev= - continue - ;; - rpath | xrpath) - # We need an absolute path. - case $arg in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - func_fatal_error "only absolute run-paths are allowed" - ;; - esac - if test rpath = "$prev"; then - case "$rpath " in - *" $arg "*) ;; - *) func_append rpath " $arg" ;; - esac - else - case "$xrpath " in - *" $arg "*) ;; - *) func_append xrpath " $arg" ;; - esac - fi - prev= - continue - ;; - shrext) - shrext_cmds=$arg - prev= - continue - ;; - weak) - func_append weak_libs " $arg" - prev= - continue - ;; - xassembler) - func_append compiler_flags " -Xassembler $qarg" - prev= - func_append compile_command " -Xassembler $qarg" - func_append finalize_command " -Xassembler $qarg" - continue - ;; - xcclinker) - func_append linker_flags " $qarg" - func_append compiler_flags " $qarg" - prev= - func_append compile_command " $qarg" - func_append finalize_command " $qarg" - continue - ;; - xcompiler) - func_append compiler_flags " $qarg" - prev= - func_append compile_command " $qarg" - func_append finalize_command " $qarg" - continue - ;; - xlinker) - func_append linker_flags " $qarg" - func_append compiler_flags " $wl$qarg" - prev= - func_append compile_command " $wl$qarg" - func_append finalize_command " $wl$qarg" - continue - ;; - *) - eval "$prev=\"\$arg\"" - prev= - continue - ;; - esac - fi # test -n "$prev" - - prevarg=$arg - - case $arg in - -all-static) - if test -n "$link_static_flag"; then - # See comment for -static flag below, for more details. - func_append compile_command " $link_static_flag" - func_append finalize_command " $link_static_flag" - fi - continue - ;; - - -allow-undefined) - # FIXME: remove this flag sometime in the future. - func_fatal_error "'-allow-undefined' must not be used because it is the default" - ;; - - -avoid-version) - avoid_version=yes - continue - ;; - - -bindir) - prev=bindir - continue - ;; - - -dlopen) - prev=dlfiles - continue - ;; - - -dlpreopen) - prev=dlprefiles - continue - ;; - - -export-dynamic) - export_dynamic=yes - continue - ;; - - -export-symbols | -export-symbols-regex) - if test -n "$export_symbols" || test -n "$export_symbols_regex"; then - func_fatal_error "more than one -exported-symbols argument is not allowed" - fi - if test X-export-symbols = "X$arg"; then - prev=expsyms - else - prev=expsyms_regex - fi - continue - ;; - - -framework) - prev=framework - continue - ;; - - -inst-prefix-dir) - prev=inst_prefix - continue - ;; - - # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* - # so, if we see these flags be careful not to treat them like -L - -L[A-Z][A-Z]*:*) - case $with_gcc/$host in - no/*-*-irix* | /*-*-irix*) - func_append compile_command " $arg" - func_append finalize_command " $arg" - ;; - esac - continue - ;; - - -L*) - func_stripname "-L" '' "$arg" - if test -z "$func_stripname_result"; then - if test "$#" -gt 0; then - func_fatal_error "require no space between '-L' and '$1'" - else - func_fatal_error "need path for '-L' option" - fi - fi - func_resolve_sysroot "$func_stripname_result" - dir=$func_resolve_sysroot_result - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - absdir=`cd "$dir" && pwd` - test -z "$absdir" && \ - func_fatal_error "cannot determine absolute directory name of '$dir'" - dir=$absdir - ;; - esac - case "$deplibs " in - *" -L$dir "* | *" $arg "*) - # Will only happen for absolute or sysroot arguments - ;; - *) - # Preserve sysroot, but never include relative directories - case $dir in - [\\/]* | [A-Za-z]:[\\/]* | =*) func_append deplibs " $arg" ;; - *) func_append deplibs " -L$dir" ;; - esac - func_append lib_search_path " $dir" - ;; - esac - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) - testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` - case :$dllsearchpath: in - *":$dir:"*) ;; - ::) dllsearchpath=$dir;; - *) func_append dllsearchpath ":$dir";; - esac - case :$dllsearchpath: in - *":$testbindir:"*) ;; - ::) dllsearchpath=$testbindir;; - *) func_append dllsearchpath ":$testbindir";; - esac - ;; - esac - continue - ;; - - -l*) - if test X-lc = "X$arg" || test X-lm = "X$arg"; then - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) - # These systems don't actually have a C or math library (as such) - continue - ;; - *-*-os2*) - # These systems don't actually have a C library (as such) - test X-lc = "X$arg" && continue - ;; - *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*) - # Do not include libc due to us having libc/libc_r. - test X-lc = "X$arg" && continue - ;; - *-*-rhapsody* | *-*-darwin1.[012]) - # Rhapsody C and math libraries are in the System framework - func_append deplibs " System.ltframework" - continue - ;; - *-*-sco3.2v5* | *-*-sco5v6*) - # Causes problems with __ctype - test X-lc = "X$arg" && continue - ;; - *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) - # Compiler inserts libc in the correct place for threads to work - test X-lc = "X$arg" && continue - ;; - esac - elif test X-lc_r = "X$arg"; then - case $host in - *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*) - # Do not include libc_r directly, use -pthread flag. - continue - ;; - esac - fi - func_append deplibs " $arg" - continue - ;; - - -mllvm) - prev=mllvm - continue - ;; - - -module) - module=yes - continue - ;; - - # Tru64 UNIX uses -model [arg] to determine the layout of C++ - # classes, name mangling, and exception handling. - # Darwin uses the -arch flag to determine output architecture. - -model|-arch|-isysroot|--sysroot) - func_append compiler_flags " $arg" - func_append compile_command " $arg" - func_append finalize_command " $arg" - prev=xcompiler - continue - ;; - # Solaris ld rejects as of 11.4. Refer to Oracle bug 22985199. - -pthread) - case $host in - *solaris2*) ;; - *) - case "$new_inherited_linker_flags " in - *" $arg "*) ;; - * ) func_append new_inherited_linker_flags " $arg" ;; - esac - ;; - esac - continue - ;; - -mt|-mthreads|-kthread|-Kthread|-pthreads|--thread-safe \ - |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) - func_append compiler_flags " $arg" - func_append compile_command " $arg" - func_append finalize_command " $arg" - case "$new_inherited_linker_flags " in - *" $arg "*) ;; - * ) func_append new_inherited_linker_flags " $arg" ;; - esac - continue - ;; - - -multi_module) - single_module=$wl-multi_module - continue - ;; - - -no-fast-install) - fast_install=no - continue - ;; - - -no-install) - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) - # The PATH hackery in wrapper scripts is required on Windows - # and Darwin in order for the loader to find any dlls it needs. - func_warning "'-no-install' is ignored for $host" - func_warning "assuming '-no-fast-install' instead" - fast_install=no - ;; - *) no_install=yes ;; - esac - continue - ;; - - -no-undefined) - allow_undefined=no - continue - ;; - - -objectlist) - prev=objectlist - continue - ;; - - -os2dllname) - prev=os2dllname - continue - ;; - - -o) prev=output ;; - - -precious-files-regex) - prev=precious_regex - continue - ;; - - -release) - prev=release - continue - ;; - - -rpath) - prev=rpath - continue - ;; - - -R) - prev=xrpath - continue - ;; - - -R*) - func_stripname '-R' '' "$arg" - dir=$func_stripname_result - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - =*) - func_stripname '=' '' "$dir" - dir=$lt_sysroot$func_stripname_result - ;; - *) - func_fatal_error "only absolute run-paths are allowed" - ;; - esac - case "$xrpath " in - *" $dir "*) ;; - *) func_append xrpath " $dir" ;; - esac - continue - ;; - - -shared) - # The effects of -shared are defined in a previous loop. - continue - ;; - - -shrext) - prev=shrext - continue - ;; - - -static | -static-libtool-libs) - # The effects of -static are defined in a previous loop. - # We used to do the same as -all-static on platforms that - # didn't have a PIC flag, but the assumption that the effects - # would be equivalent was wrong. It would break on at least - # Digital Unix and AIX. - continue - ;; - - -thread-safe) - thread_safe=yes - continue - ;; - - -version-info) - prev=vinfo - continue - ;; - - -version-number) - prev=vinfo - vinfo_number=yes - continue - ;; - - -weak) - prev=weak - continue - ;; - - -Wc,*) - func_stripname '-Wc,' '' "$arg" - args=$func_stripname_result - arg= - save_ifs=$IFS; IFS=, - for flag in $args; do - IFS=$save_ifs - func_quote_arg pretty "$flag" - func_append arg " $func_quote_arg_result" - func_append compiler_flags " $func_quote_arg_result" - done - IFS=$save_ifs - func_stripname ' ' '' "$arg" - arg=$func_stripname_result - ;; - - -Wl,*) - func_stripname '-Wl,' '' "$arg" - args=$func_stripname_result - arg= - save_ifs=$IFS; IFS=, - for flag in $args; do - IFS=$save_ifs - func_quote_arg pretty "$flag" - func_append arg " $wl$func_quote_arg_result" - func_append compiler_flags " $wl$func_quote_arg_result" - func_append linker_flags " $func_quote_arg_result" - done - IFS=$save_ifs - func_stripname ' ' '' "$arg" - arg=$func_stripname_result - ;; - - -Xassembler) - prev=xassembler - continue - ;; - - -Xcompiler) - prev=xcompiler - continue - ;; - - -Xlinker) - prev=xlinker - continue - ;; - - -XCClinker) - prev=xcclinker - continue - ;; - - # -msg_* for osf cc - -msg_*) - func_quote_arg pretty "$arg" - arg=$func_quote_arg_result - ;; - - # Flags to be passed through unchanged, with rationale: - # -64, -mips[0-9] enable 64-bit mode for the SGI compiler - # -r[0-9][0-9]* specify processor for the SGI compiler - # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler - # +DA*, +DD* enable 64-bit mode for the HP compiler - # -q* compiler args for the IBM compiler - # -m*, -t[45]*, -txscale* architecture-specific flags for GCC - # -F/path path to uninstalled frameworks, gcc on darwin - # -p, -pg, --coverage, -fprofile-* profiling flags for GCC - # -fstack-protector* stack protector flags for GCC - # @file GCC response files - # -tp=* Portland pgcc target processor selection - # --sysroot=* for sysroot support - # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization - # -specs=* GCC specs files - # -stdlib=* select c++ std lib with clang - # -fsanitize=* Clang/GCC memory and address sanitizer - # -fuse-ld=* Linker select flags for GCC - # -static-* direct GCC to link specific libraries statically - # -fcilkplus Cilk Plus language extension features for C/C++ - # -Wa,* Pass flags directly to the assembler - -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ - -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ - -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ - -specs=*|-fsanitize=*|-fuse-ld=*|-static-*|-fcilkplus|-Wa,*) - func_quote_arg pretty "$arg" - arg=$func_quote_arg_result - func_append compile_command " $arg" - func_append finalize_command " $arg" - func_append compiler_flags " $arg" - continue - ;; - - -Z*) - if test os2 = "`expr $host : '.*\(os2\)'`"; then - # OS/2 uses -Zxxx to specify OS/2-specific options - compiler_flags="$compiler_flags $arg" - func_append compile_command " $arg" - func_append finalize_command " $arg" - case $arg in - -Zlinker | -Zstack) - prev=xcompiler - ;; - esac - continue - else - # Otherwise treat like 'Some other compiler flag' below - func_quote_arg pretty "$arg" - arg=$func_quote_arg_result - fi - ;; - - # Some other compiler flag. - -* | +*) - func_quote_arg pretty "$arg" - arg=$func_quote_arg_result - ;; - - *.$objext) - # A standard object. - func_append objs " $arg" - ;; - - *.lo) - # A libtool-controlled object. - - # Check to see that this really is a libtool object. - if func_lalib_unsafe_p "$arg"; then - pic_object= - non_pic_object= - - # Read the .lo file - func_source "$arg" - - if test -z "$pic_object" || - test -z "$non_pic_object" || - test none = "$pic_object" && - test none = "$non_pic_object"; then - func_fatal_error "cannot find name of object for '$arg'" - fi - - # Extract subdirectory from the argument. - func_dirname "$arg" "/" "" - xdir=$func_dirname_result - - test none = "$pic_object" || { - # Prepend the subdirectory the object is found in. - pic_object=$xdir$pic_object - - if test dlfiles = "$prev"; then - if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then - func_append dlfiles " $pic_object" - prev= - continue - else - # If libtool objects are unsupported, then we need to preload. - prev=dlprefiles - fi - fi - - # CHECK ME: I think I busted this. -Ossama - if test dlprefiles = "$prev"; then - # Preload the old-style object. - func_append dlprefiles " $pic_object" - prev= - fi - - # A PIC object. - func_append libobjs " $pic_object" - arg=$pic_object - } - - # Non-PIC object. - if test none != "$non_pic_object"; then - # Prepend the subdirectory the object is found in. - non_pic_object=$xdir$non_pic_object - - # A standard non-PIC object - func_append non_pic_objects " $non_pic_object" - if test -z "$pic_object" || test none = "$pic_object"; then - arg=$non_pic_object - fi - else - # If the PIC object exists, use it instead. - # $xdir was prepended to $pic_object above. - non_pic_object=$pic_object - func_append non_pic_objects " $non_pic_object" - fi - else - # Only an error if not doing a dry-run. - if $opt_dry_run; then - # Extract subdirectory from the argument. - func_dirname "$arg" "/" "" - xdir=$func_dirname_result - - func_lo2o "$arg" - pic_object=$xdir$objdir/$func_lo2o_result - non_pic_object=$xdir$func_lo2o_result - func_append libobjs " $pic_object" - func_append non_pic_objects " $non_pic_object" - else - func_fatal_error "'$arg' is not a valid libtool object" - fi - fi - ;; - - *.$libext) - # An archive. - func_append deplibs " $arg" - func_append old_deplibs " $arg" - continue - ;; - - *.la) - # A libtool-controlled library. - - func_resolve_sysroot "$arg" - if test dlfiles = "$prev"; then - # This library was specified with -dlopen. - func_append dlfiles " $func_resolve_sysroot_result" - prev= - elif test dlprefiles = "$prev"; then - # The library was specified with -dlpreopen. - func_append dlprefiles " $func_resolve_sysroot_result" - prev= - else - func_append deplibs " $func_resolve_sysroot_result" - fi - continue - ;; - - # Some other compiler argument. - *) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - func_quote_arg pretty "$arg" - arg=$func_quote_arg_result - ;; - esac # arg - - # Now actually substitute the argument into the commands. - if test -n "$arg"; then - func_append compile_command " $arg" - func_append finalize_command " $arg" - fi - done # argument parsing loop - - test -n "$prev" && \ - func_fatal_help "the '$prevarg' option requires an argument" - - if test yes = "$export_dynamic" && test -n "$export_dynamic_flag_spec"; then - eval arg=\"$export_dynamic_flag_spec\" - func_append compile_command " $arg" - func_append finalize_command " $arg" - fi - - oldlibs= - # calculate the name of the file, without its directory - func_basename "$output" - outputname=$func_basename_result - libobjs_save=$libobjs - - if test -n "$shlibpath_var"; then - # get the directories listed in $shlibpath_var - eval shlib_search_path=\`\$ECHO \"\$$shlibpath_var\" \| \$SED \'s/:/ /g\'\` - else - shlib_search_path= - fi - eval sys_lib_search_path=\"$sys_lib_search_path_spec\" - eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" - - # Definition is injected by LT_CONFIG during libtool generation. - func_munge_path_list sys_lib_dlsearch_path "$LT_SYS_LIBRARY_PATH" - - func_dirname "$output" "/" "" - output_objdir=$func_dirname_result$objdir - func_to_tool_file "$output_objdir/" - tool_output_objdir=$func_to_tool_file_result - # Create the object directory. - func_mkdir_p "$output_objdir" - - # Determine the type of output - case $output in - "") - func_fatal_help "you must specify an output file" - ;; - *.$libext) linkmode=oldlib ;; - *.lo | *.$objext) linkmode=obj ;; - *.la) linkmode=lib ;; - *) linkmode=prog ;; # Anything else should be a program. - esac - - specialdeplibs= - - libs= - # Find all interdependent deplibs by searching for libraries - # that are linked more than once (e.g. -la -lb -la) - for deplib in $deplibs; do - if $opt_preserve_dup_deps; then - case "$libs " in - *" $deplib "*) func_append specialdeplibs " $deplib" ;; - esac - fi - func_append libs " $deplib" - done - - if test lib = "$linkmode"; then - libs="$predeps $libs $compiler_lib_search_path $postdeps" - - # Compute libraries that are listed more than once in $predeps - # $postdeps and mark them as special (i.e., whose duplicates are - # not to be eliminated). - pre_post_deps= - if $opt_duplicate_compiler_generated_deps; then - for pre_post_dep in $predeps $postdeps; do - case "$pre_post_deps " in - *" $pre_post_dep "*) func_append specialdeplibs " $pre_post_deps" ;; - esac - func_append pre_post_deps " $pre_post_dep" - done - fi - pre_post_deps= - fi - - deplibs= - newdependency_libs= - newlib_search_path= - need_relink=no # whether we're linking any uninstalled libtool libraries - notinst_deplibs= # not-installed libtool libraries - notinst_path= # paths that contain not-installed libtool libraries - - case $linkmode in - lib) - passes="conv dlpreopen link" - for file in $dlfiles $dlprefiles; do - case $file in - *.la) ;; - *) - func_fatal_help "libraries can '-dlopen' only libtool libraries: $file" - ;; - esac - done - ;; - prog) - compile_deplibs= - finalize_deplibs= - alldeplibs=false - newdlfiles= - newdlprefiles= - passes="conv scan dlopen dlpreopen link" - ;; - *) passes="conv" - ;; - esac - - for pass in $passes; do - # The preopen pass in lib mode reverses $deplibs; put it back here - # so that -L comes before libs that need it for instance... - if test lib,link = "$linkmode,$pass"; then - ## FIXME: Find the place where the list is rebuilt in the wrong - ## order, and fix it there properly - tmp_deplibs= - for deplib in $deplibs; do - tmp_deplibs="$deplib $tmp_deplibs" - done - deplibs=$tmp_deplibs - fi - - if test lib,link = "$linkmode,$pass" || - test prog,scan = "$linkmode,$pass"; then - libs=$deplibs - deplibs= - fi - if test prog = "$linkmode"; then - case $pass in - dlopen) libs=$dlfiles ;; - dlpreopen) libs=$dlprefiles ;; - link) - libs="$deplibs %DEPLIBS%" - test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs" - ;; - esac - fi - if test lib,dlpreopen = "$linkmode,$pass"; then - # Collect and forward deplibs of preopened libtool libs - for lib in $dlprefiles; do - # Ignore non-libtool-libs - dependency_libs= - func_resolve_sysroot "$lib" - case $lib in - *.la) func_source "$func_resolve_sysroot_result" ;; - esac - - # Collect preopened libtool deplibs, except any this library - # has declared as weak libs - for deplib in $dependency_libs; do - func_basename "$deplib" - deplib_base=$func_basename_result - case " $weak_libs " in - *" $deplib_base "*) ;; - *) func_append deplibs " $deplib" ;; - esac - done - done - libs=$dlprefiles - fi - if test dlopen = "$pass"; then - # Collect dlpreopened libraries - save_deplibs=$deplibs - deplibs= - fi - - for deplib in $libs; do - lib= - found=false - case $deplib in - -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ - |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) - if test prog,link = "$linkmode,$pass"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - func_append compiler_flags " $deplib" - if test lib = "$linkmode"; then - case "$new_inherited_linker_flags " in - *" $deplib "*) ;; - * ) func_append new_inherited_linker_flags " $deplib" ;; - esac - fi - fi - continue - ;; - -l*) - if test lib != "$linkmode" && test prog != "$linkmode"; then - func_warning "'-l' is ignored for archives/objects" - continue - fi - func_stripname '-l' '' "$deplib" - name=$func_stripname_result - if test lib = "$linkmode"; then - searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" - else - searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" - fi - for searchdir in $searchdirs; do - for search_ext in .la $std_shrext .so .a; do - # Search the libtool library - lib=$searchdir/lib$name$search_ext - if test -f "$lib"; then - if test .la = "$search_ext"; then - found=: - else - found=false - fi - break 2 - fi - done - done - if $found; then - # deplib is a libtool library - # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, - # We need to do some special things here, and not later. - if test yes = "$allow_libtool_libs_with_static_runtimes"; then - case " $predeps $postdeps " in - *" $deplib "*) - if func_lalib_p "$lib"; then - library_names= - old_library= - func_source "$lib" - for l in $old_library $library_names; do - ll=$l - done - if test "X$ll" = "X$old_library"; then # only static version available - found=false - func_dirname "$lib" "" "." - ladir=$func_dirname_result - lib=$ladir/$old_library - if test prog,link = "$linkmode,$pass"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" - fi - continue - fi - fi - ;; - *) ;; - esac - fi - else - # deplib doesn't seem to be a libtool library - if test prog,link = "$linkmode,$pass"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" - fi - continue - fi - ;; # -l - *.ltframework) - if test prog,link = "$linkmode,$pass"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - if test lib = "$linkmode"; then - case "$new_inherited_linker_flags " in - *" $deplib "*) ;; - * ) func_append new_inherited_linker_flags " $deplib" ;; - esac - fi - fi - continue - ;; - -L*) - case $linkmode in - lib) - deplibs="$deplib $deplibs" - test conv = "$pass" && continue - newdependency_libs="$deplib $newdependency_libs" - func_stripname '-L' '' "$deplib" - func_resolve_sysroot "$func_stripname_result" - func_append newlib_search_path " $func_resolve_sysroot_result" - ;; - prog) - if test conv = "$pass"; then - deplibs="$deplib $deplibs" - continue - fi - if test scan = "$pass"; then - deplibs="$deplib $deplibs" - else - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - fi - func_stripname '-L' '' "$deplib" - func_resolve_sysroot "$func_stripname_result" - func_append newlib_search_path " $func_resolve_sysroot_result" - ;; - *) - func_warning "'-L' is ignored for archives/objects" - ;; - esac # linkmode - continue - ;; # -L - -R*) - if test link = "$pass"; then - func_stripname '-R' '' "$deplib" - func_resolve_sysroot "$func_stripname_result" - dir=$func_resolve_sysroot_result - # Make sure the xrpath contains only unique directories. - case "$xrpath " in - *" $dir "*) ;; - *) func_append xrpath " $dir" ;; - esac - fi - deplibs="$deplib $deplibs" - continue - ;; - *.la) - func_resolve_sysroot "$deplib" - lib=$func_resolve_sysroot_result - ;; - *.$libext) - if test conv = "$pass"; then - deplibs="$deplib $deplibs" - continue - fi - case $linkmode in - lib) - # Linking convenience modules into shared libraries is allowed, - # but linking other static libraries is non-portable. - case " $dlpreconveniencelibs " in - *" $deplib "*) ;; - *) - valid_a_lib=false - case $deplibs_check_method in - match_pattern*) - set dummy $deplibs_check_method; shift - match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` - if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \ - | $EGREP "$match_pattern_regex" > /dev/null; then - valid_a_lib=: - fi - ;; - pass_all) - valid_a_lib=: - ;; - esac - if $valid_a_lib; then - echo - $ECHO "*** Warning: Linking the shared library $output against the" - $ECHO "*** static library $deplib is not portable!" - deplibs="$deplib $deplibs" - else - echo - $ECHO "*** Warning: Trying to link with static lib archive $deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have" - echo "*** because the file extensions .$libext of this argument makes me believe" - echo "*** that it is just a static archive that I should not use here." - fi - ;; - esac - continue - ;; - prog) - if test link != "$pass"; then - deplibs="$deplib $deplibs" - else - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - fi - continue - ;; - esac # linkmode - ;; # *.$libext - *.lo | *.$objext) - if test conv = "$pass"; then - deplibs="$deplib $deplibs" - elif test prog = "$linkmode"; then - if test dlpreopen = "$pass" || test yes != "$dlopen_support" || test no = "$build_libtool_libs"; then - # If there is no dlopen support or we're linking statically, - # we need to preload. - func_append newdlprefiles " $deplib" - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - func_append newdlfiles " $deplib" - fi - fi - continue - ;; - %DEPLIBS%) - alldeplibs=: - continue - ;; - esac # case $deplib - - $found || test -f "$lib" \ - || func_fatal_error "cannot find the library '$lib' or unhandled argument '$deplib'" - - # Check to see that this really is a libtool archive. - func_lalib_unsafe_p "$lib" \ - || func_fatal_error "'$lib' is not a valid libtool archive" - - func_dirname "$lib" "" "." - ladir=$func_dirname_result - - dlname= - dlopen= - dlpreopen= - libdir= - library_names= - old_library= - inherited_linker_flags= - # If the library was installed with an old release of libtool, - # it will not redefine variables installed, or shouldnotlink - installed=yes - shouldnotlink=no - avoidtemprpath= - - - # Read the .la file - func_source "$lib" - - # Convert "-framework foo" to "foo.ltframework" - if test -n "$inherited_linker_flags"; then - tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'` - for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do - case " $new_inherited_linker_flags " in - *" $tmp_inherited_linker_flag "*) ;; - *) func_append new_inherited_linker_flags " $tmp_inherited_linker_flag";; - esac - done - fi - dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - if test lib,link = "$linkmode,$pass" || - test prog,scan = "$linkmode,$pass" || - { test prog != "$linkmode" && test lib != "$linkmode"; }; then - test -n "$dlopen" && func_append dlfiles " $dlopen" - test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen" - fi - - if test conv = "$pass"; then - # Only check for convenience libraries - deplibs="$lib $deplibs" - if test -z "$libdir"; then - if test -z "$old_library"; then - func_fatal_error "cannot find name of link library for '$lib'" - fi - # It is a libtool convenience library, so add in its objects. - func_append convenience " $ladir/$objdir/$old_library" - func_append old_convenience " $ladir/$objdir/$old_library" - tmp_libs= - for deplib in $dependency_libs; do - deplibs="$deplib $deplibs" - if $opt_preserve_dup_deps; then - case "$tmp_libs " in - *" $deplib "*) func_append specialdeplibs " $deplib" ;; - esac - fi - func_append tmp_libs " $deplib" - done - elif test prog != "$linkmode" && test lib != "$linkmode"; then - func_fatal_error "'$lib' is not a convenience library" - fi - continue - fi # $pass = conv - - - # Get the name of the library we link against. - linklib= - if test -n "$old_library" && - { test yes = "$prefer_static_libs" || - test built,no = "$prefer_static_libs,$installed"; }; then - linklib=$old_library - else - for l in $old_library $library_names; do - linklib=$l - done - fi - if test -z "$linklib"; then - func_fatal_error "cannot find name of link library for '$lib'" - fi - - # This library was specified with -dlopen. - if test dlopen = "$pass"; then - test -z "$libdir" \ - && func_fatal_error "cannot -dlopen a convenience library: '$lib'" - if test -z "$dlname" || - test yes != "$dlopen_support" || - test no = "$build_libtool_libs" - then - # If there is no dlname, no dlopen support or we're linking - # statically, we need to preload. We also need to preload any - # dependent libraries so libltdl's deplib preloader doesn't - # bomb out in the load deplibs phase. - func_append dlprefiles " $lib $dependency_libs" - else - func_append newdlfiles " $lib" - fi - continue - fi # $pass = dlopen - - # We need an absolute path. - case $ladir in - [\\/]* | [A-Za-z]:[\\/]*) abs_ladir=$ladir ;; - *) - abs_ladir=`cd "$ladir" && pwd` - if test -z "$abs_ladir"; then - func_warning "cannot determine absolute directory name of '$ladir'" - func_warning "passing it literally to the linker, although it might fail" - abs_ladir=$ladir - fi - ;; - esac - func_basename "$lib" - laname=$func_basename_result - - # Find the relevant object directory and library name. - if test yes = "$installed"; then - if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then - func_warning "library '$lib' was moved." - dir=$ladir - absdir=$abs_ladir - libdir=$abs_ladir - else - dir=$lt_sysroot$libdir - absdir=$lt_sysroot$libdir - fi - test yes = "$hardcode_automatic" && avoidtemprpath=yes - else - if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then - dir=$ladir - absdir=$abs_ladir - # Remove this search path later - func_append notinst_path " $abs_ladir" - else - dir=$ladir/$objdir - absdir=$abs_ladir/$objdir - # Remove this search path later - func_append notinst_path " $abs_ladir" - fi - fi # $installed = yes - func_stripname 'lib' '.la' "$laname" - name=$func_stripname_result - - # This library was specified with -dlpreopen. - if test dlpreopen = "$pass"; then - if test -z "$libdir" && test prog = "$linkmode"; then - func_fatal_error "only libraries may -dlpreopen a convenience library: '$lib'" - fi - case $host in - # special handling for platforms with PE-DLLs. - *cygwin* | *mingw* | *cegcc* ) - # Linker will automatically link against shared library if both - # static and shared are present. Therefore, ensure we extract - # symbols from the import library if a shared library is present - # (otherwise, the dlopen module name will be incorrect). We do - # this by putting the import library name into $newdlprefiles. - # We recover the dlopen module name by 'saving' the la file - # name in a special purpose variable, and (later) extracting the - # dlname from the la file. - if test -n "$dlname"; then - func_tr_sh "$dir/$linklib" - eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname" - func_append newdlprefiles " $dir/$linklib" - else - func_append newdlprefiles " $dir/$old_library" - # Keep a list of preopened convenience libraries to check - # that they are being used correctly in the link pass. - test -z "$libdir" && \ - func_append dlpreconveniencelibs " $dir/$old_library" - fi - ;; - * ) - # Prefer using a static library (so that no silly _DYNAMIC symbols - # are required to link). - if test -n "$old_library"; then - func_append newdlprefiles " $dir/$old_library" - # Keep a list of preopened convenience libraries to check - # that they are being used correctly in the link pass. - test -z "$libdir" && \ - func_append dlpreconveniencelibs " $dir/$old_library" - # Otherwise, use the dlname, so that lt_dlopen finds it. - elif test -n "$dlname"; then - func_append newdlprefiles " $dir/$dlname" - else - func_append newdlprefiles " $dir/$linklib" - fi - ;; - esac - fi # $pass = dlpreopen - - if test -z "$libdir"; then - # Link the convenience library - if test lib = "$linkmode"; then - deplibs="$dir/$old_library $deplibs" - elif test prog,link = "$linkmode,$pass"; then - compile_deplibs="$dir/$old_library $compile_deplibs" - finalize_deplibs="$dir/$old_library $finalize_deplibs" - else - deplibs="$lib $deplibs" # used for prog,scan pass - fi - continue - fi - - - if test prog = "$linkmode" && test link != "$pass"; then - func_append newlib_search_path " $ladir" - deplibs="$lib $deplibs" - - linkalldeplibs=false - if test no != "$link_all_deplibs" || test -z "$library_names" || - test no = "$build_libtool_libs"; then - linkalldeplibs=: - fi - - tmp_libs= - for deplib in $dependency_libs; do - case $deplib in - -L*) func_stripname '-L' '' "$deplib" - func_resolve_sysroot "$func_stripname_result" - func_append newlib_search_path " $func_resolve_sysroot_result" - ;; - esac - # Need to link against all dependency_libs? - if $linkalldeplibs; then - deplibs="$deplib $deplibs" - else - # Need to hardcode shared library paths - # or/and link against static libraries - newdependency_libs="$deplib $newdependency_libs" - fi - if $opt_preserve_dup_deps; then - case "$tmp_libs " in - *" $deplib "*) func_append specialdeplibs " $deplib" ;; - esac - fi - func_append tmp_libs " $deplib" - done # for deplib - continue - fi # $linkmode = prog... - - if test prog,link = "$linkmode,$pass"; then - if test -n "$library_names" && - { { test no = "$prefer_static_libs" || - test built,yes = "$prefer_static_libs,$installed"; } || - test -z "$old_library"; }; then - # We need to hardcode the library path - if test -n "$shlibpath_var" && test -z "$avoidtemprpath"; then - # Make sure the rpath contains only unique directories. - case $temp_rpath: in - *"$absdir:"*) ;; - *) func_append temp_rpath "$absdir:" ;; - esac - fi - - # Hardcode the library path. - # Skip directories that are in the system default run-time - # search path. - case " $sys_lib_dlsearch_path " in - *" $absdir "*) ;; - *) - case "$compile_rpath " in - *" $absdir "*) ;; - *) func_append compile_rpath " $absdir" ;; - esac - ;; - esac - case " $sys_lib_dlsearch_path " in - *" $libdir "*) ;; - *) - case "$finalize_rpath " in - *" $libdir "*) ;; - *) func_append finalize_rpath " $libdir" ;; - esac - ;; - esac - fi # $linkmode,$pass = prog,link... - - if $alldeplibs && - { test pass_all = "$deplibs_check_method" || - { test yes = "$build_libtool_libs" && - test -n "$library_names"; }; }; then - # We only need to search for static libraries - continue - fi - fi - - link_static=no # Whether the deplib will be linked statically - use_static_libs=$prefer_static_libs - if test built = "$use_static_libs" && test yes = "$installed"; then - use_static_libs=no - fi - if test -n "$library_names" && - { test no = "$use_static_libs" || test -z "$old_library"; }; then - case $host in - *cygwin* | *mingw* | *cegcc* | *os2*) - # No point in relinking DLLs because paths are not encoded - func_append notinst_deplibs " $lib" - need_relink=no - ;; - *) - if test no = "$installed"; then - func_append notinst_deplibs " $lib" - need_relink=yes - fi - ;; - esac - # This is a shared library - - # Warn about portability, can't link against -module's on some - # systems (darwin). Don't bleat about dlopened modules though! - dlopenmodule= - for dlpremoduletest in $dlprefiles; do - if test "X$dlpremoduletest" = "X$lib"; then - dlopenmodule=$dlpremoduletest - break - fi - done - if test -z "$dlopenmodule" && test yes = "$shouldnotlink" && test link = "$pass"; then - echo - if test prog = "$linkmode"; then - $ECHO "*** Warning: Linking the executable $output against the loadable module" - else - $ECHO "*** Warning: Linking the shared library $output against the loadable module" - fi - $ECHO "*** $linklib is not portable!" - fi - if test lib = "$linkmode" && - test yes = "$hardcode_into_libs"; then - # Hardcode the library path. - # Skip directories that are in the system default run-time - # search path. - case " $sys_lib_dlsearch_path " in - *" $absdir "*) ;; - *) - case "$compile_rpath " in - *" $absdir "*) ;; - *) func_append compile_rpath " $absdir" ;; - esac - ;; - esac - case " $sys_lib_dlsearch_path " in - *" $libdir "*) ;; - *) - case "$finalize_rpath " in - *" $libdir "*) ;; - *) func_append finalize_rpath " $libdir" ;; - esac - ;; - esac - fi - - if test -n "$old_archive_from_expsyms_cmds"; then - # figure out the soname - set dummy $library_names - shift - realname=$1 - shift - libname=`eval "\\$ECHO \"$libname_spec\""` - # use dlname if we got it. it's perfectly good, no? - if test -n "$dlname"; then - soname=$dlname - elif test -n "$soname_spec"; then - # bleh windows - case $host in - *cygwin* | mingw* | *cegcc* | *os2*) - func_arith $current - $age - major=$func_arith_result - versuffix=-$major - ;; - esac - eval soname=\"$soname_spec\" - else - soname=$realname - fi - - # Make a new name for the extract_expsyms_cmds to use - soroot=$soname - func_basename "$soroot" - soname=$func_basename_result - func_stripname 'lib' '.dll' "$soname" - newlib=libimp-$func_stripname_result.a - - # If the library has no export list, then create one now - if test -f "$output_objdir/$soname-def"; then : - else - func_verbose "extracting exported symbol list from '$soname'" - func_execute_cmds "$extract_expsyms_cmds" 'exit $?' - fi - - # Create $newlib - if test -f "$output_objdir/$newlib"; then :; else - func_verbose "generating import library for '$soname'" - func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' - fi - # make sure the library variables are pointing to the new library - dir=$output_objdir - linklib=$newlib - fi # test -n "$old_archive_from_expsyms_cmds" - - if test prog = "$linkmode" || test relink != "$opt_mode"; then - add_shlibpath= - add_dir= - add= - lib_linked=yes - case $hardcode_action in - immediate | unsupported) - if test no = "$hardcode_direct"; then - add=$dir/$linklib - case $host in - *-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;; - *-*-sysv4*uw2*) add_dir=-L$dir ;; - *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ - *-*-unixware7*) add_dir=-L$dir ;; - *-*-darwin* ) - # if the lib is a (non-dlopened) module then we cannot - # link against it, someone is ignoring the earlier warnings - if /usr/bin/file -L $add 2> /dev/null | - $GREP ": [^:]* bundle" >/dev/null; then - if test "X$dlopenmodule" != "X$lib"; then - $ECHO "*** Warning: lib $linklib is a module, not a shared library" - if test -z "$old_library"; then - echo - echo "*** And there doesn't seem to be a static archive available" - echo "*** The link will probably fail, sorry" - else - add=$dir/$old_library - fi - elif test -n "$old_library"; then - add=$dir/$old_library - fi - fi - esac - elif test no = "$hardcode_minus_L"; then - case $host in - *-*-sunos*) add_shlibpath=$dir ;; - esac - add_dir=-L$dir - add=-l$name - elif test no = "$hardcode_shlibpath_var"; then - add_shlibpath=$dir - add=-l$name - else - lib_linked=no - fi - ;; - relink) - if test yes = "$hardcode_direct" && - test no = "$hardcode_direct_absolute"; then - add=$dir/$linklib - elif test yes = "$hardcode_minus_L"; then - add_dir=-L$absdir - # Try looking first in the location we're being installed to. - if test -n "$inst_prefix_dir"; then - case $libdir in - [\\/]*) - func_append add_dir " -L$inst_prefix_dir$libdir" - ;; - esac - fi - add=-l$name - elif test yes = "$hardcode_shlibpath_var"; then - add_shlibpath=$dir - add=-l$name - else - lib_linked=no - fi - ;; - *) lib_linked=no ;; - esac - - if test yes != "$lib_linked"; then - func_fatal_configuration "unsupported hardcode properties" - fi - - if test -n "$add_shlibpath"; then - case :$compile_shlibpath: in - *":$add_shlibpath:"*) ;; - *) func_append compile_shlibpath "$add_shlibpath:" ;; - esac - fi - if test prog = "$linkmode"; then - test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" - test -n "$add" && compile_deplibs="$add $compile_deplibs" - else - test -n "$add_dir" && deplibs="$add_dir $deplibs" - test -n "$add" && deplibs="$add $deplibs" - if test yes != "$hardcode_direct" && - test yes != "$hardcode_minus_L" && - test yes = "$hardcode_shlibpath_var"; then - case :$finalize_shlibpath: in - *":$libdir:"*) ;; - *) func_append finalize_shlibpath "$libdir:" ;; - esac - fi - fi - fi - - if test prog = "$linkmode" || test relink = "$opt_mode"; then - add_shlibpath= - add_dir= - add= - # Finalize command for both is simple: just hardcode it. - if test yes = "$hardcode_direct" && - test no = "$hardcode_direct_absolute"; then - add=$libdir/$linklib - elif test yes = "$hardcode_minus_L"; then - add_dir=-L$libdir - add=-l$name - elif test yes = "$hardcode_shlibpath_var"; then - case :$finalize_shlibpath: in - *":$libdir:"*) ;; - *) func_append finalize_shlibpath "$libdir:" ;; - esac - add=-l$name - elif test yes = "$hardcode_automatic"; then - if test -n "$inst_prefix_dir" && - test -f "$inst_prefix_dir$libdir/$linklib"; then - add=$inst_prefix_dir$libdir/$linklib - else - add=$libdir/$linklib - fi - else - # We cannot seem to hardcode it, guess we'll fake it. - add_dir=-L$libdir - # Try looking first in the location we're being installed to. - if test -n "$inst_prefix_dir"; then - case $libdir in - [\\/]*) - func_append add_dir " -L$inst_prefix_dir$libdir" - ;; - esac - fi - add=-l$name - fi - - if test prog = "$linkmode"; then - test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" - test -n "$add" && finalize_deplibs="$add $finalize_deplibs" - else - test -n "$add_dir" && deplibs="$add_dir $deplibs" - test -n "$add" && deplibs="$add $deplibs" - fi - fi - elif test prog = "$linkmode"; then - # Here we assume that one of hardcode_direct or hardcode_minus_L - # is not unsupported. This is valid on all known static and - # shared platforms. - if test unsupported != "$hardcode_direct"; then - test -n "$old_library" && linklib=$old_library - compile_deplibs="$dir/$linklib $compile_deplibs" - finalize_deplibs="$dir/$linklib $finalize_deplibs" - else - compile_deplibs="-l$name -L$dir $compile_deplibs" - finalize_deplibs="-l$name -L$dir $finalize_deplibs" - fi - elif test yes = "$build_libtool_libs"; then - # Not a shared library - if test pass_all != "$deplibs_check_method"; then - # We're trying link a shared library against a static one - # but the system doesn't support it. - - # Just print a warning and add the library to dependency_libs so - # that the program can be linked against the static library. - echo - $ECHO "*** Warning: This system cannot link to static lib archive $lib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have." - if test yes = "$module"; then - echo "*** But as you try to build a module library, libtool will still create " - echo "*** a static module, that should work as long as the dlopening application" - echo "*** is linked with the -dlopen flag to resolve symbols at runtime." - if test -z "$global_symbol_pipe"; then - echo - echo "*** However, this would only work if libtool was able to extract symbol" - echo "*** lists from a program, using 'nm' or equivalent, but libtool could" - echo "*** not find such a program. So, this module is probably useless." - echo "*** 'nm' from GNU binutils and a full rebuild may help." - fi - if test no = "$build_old_libs"; then - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - fi - else - deplibs="$dir/$old_library $deplibs" - link_static=yes - fi - fi # link shared/static library? - - if test lib = "$linkmode"; then - if test -n "$dependency_libs" && - { test yes != "$hardcode_into_libs" || - test yes = "$build_old_libs" || - test yes = "$link_static"; }; then - # Extract -R from dependency_libs - temp_deplibs= - for libdir in $dependency_libs; do - case $libdir in - -R*) func_stripname '-R' '' "$libdir" - temp_xrpath=$func_stripname_result - case " $xrpath " in - *" $temp_xrpath "*) ;; - *) func_append xrpath " $temp_xrpath";; - esac;; - *) func_append temp_deplibs " $libdir";; - esac - done - dependency_libs=$temp_deplibs - fi - - func_append newlib_search_path " $absdir" - # Link against this library - test no = "$link_static" && newdependency_libs="$abs_ladir/$laname $newdependency_libs" - # ... and its dependency_libs - tmp_libs= - for deplib in $dependency_libs; do - newdependency_libs="$deplib $newdependency_libs" - case $deplib in - -L*) func_stripname '-L' '' "$deplib" - func_resolve_sysroot "$func_stripname_result";; - *) func_resolve_sysroot "$deplib" ;; - esac - if $opt_preserve_dup_deps; then - case "$tmp_libs " in - *" $func_resolve_sysroot_result "*) - func_append specialdeplibs " $func_resolve_sysroot_result" ;; - esac - fi - func_append tmp_libs " $func_resolve_sysroot_result" - done - - if test no != "$link_all_deplibs"; then - # Add the search paths of all dependency libraries - for deplib in $dependency_libs; do - path= - case $deplib in - -L*) path=$deplib ;; - *.la) - func_resolve_sysroot "$deplib" - deplib=$func_resolve_sysroot_result - func_dirname "$deplib" "" "." - dir=$func_dirname_result - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) absdir=$dir ;; - *) - absdir=`cd "$dir" && pwd` - if test -z "$absdir"; then - func_warning "cannot determine absolute directory name of '$dir'" - absdir=$dir - fi - ;; - esac - if $GREP "^installed=no" $deplib > /dev/null; then - case $host in - *-*-darwin*) - depdepl= - eval deplibrary_names=`$SED -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` - if test -n "$deplibrary_names"; then - for tmp in $deplibrary_names; do - depdepl=$tmp - done - if test -f "$absdir/$objdir/$depdepl"; then - depdepl=$absdir/$objdir/$depdepl - darwin_install_name=`$OTOOL -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` - if test -z "$darwin_install_name"; then - darwin_install_name=`$OTOOL64 -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` - fi - func_append compiler_flags " $wl-dylib_file $wl$darwin_install_name:$depdepl" - func_append linker_flags " -dylib_file $darwin_install_name:$depdepl" - path= - fi - fi - ;; - *) - path=-L$absdir/$objdir - ;; - esac - else - eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` - test -z "$libdir" && \ - func_fatal_error "'$deplib' is not a valid libtool archive" - test "$absdir" != "$libdir" && \ - func_warning "'$deplib' seems to be moved" - - path=-L$absdir - fi - ;; - esac - case " $deplibs " in - *" $path "*) ;; - *) deplibs="$path $deplibs" ;; - esac - done - fi # link_all_deplibs != no - fi # linkmode = lib - done # for deplib in $libs - if test link = "$pass"; then - if test prog = "$linkmode"; then - compile_deplibs="$new_inherited_linker_flags $compile_deplibs" - finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" - else - compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - fi - fi - dependency_libs=$newdependency_libs - if test dlpreopen = "$pass"; then - # Link the dlpreopened libraries before other libraries - for deplib in $save_deplibs; do - deplibs="$deplib $deplibs" - done - fi - if test dlopen != "$pass"; then - test conv = "$pass" || { - # Make sure lib_search_path contains only unique directories. - lib_search_path= - for dir in $newlib_search_path; do - case "$lib_search_path " in - *" $dir "*) ;; - *) func_append lib_search_path " $dir" ;; - esac - done - newlib_search_path= - } - - if test prog,link = "$linkmode,$pass"; then - vars="compile_deplibs finalize_deplibs" - else - vars=deplibs - fi - for var in $vars dependency_libs; do - # Add libraries to $var in reverse order - eval tmp_libs=\"\$$var\" - new_libs= - for deplib in $tmp_libs; do - # FIXME: Pedantically, this is the right thing to do, so - # that some nasty dependency loop isn't accidentally - # broken: - #new_libs="$deplib $new_libs" - # Pragmatically, this seems to cause very few problems in - # practice: - case $deplib in - -L*) new_libs="$deplib $new_libs" ;; - -R*) ;; - *) - # And here is the reason: when a library appears more - # than once as an explicit dependence of a library, or - # is implicitly linked in more than once by the - # compiler, it is considered special, and multiple - # occurrences thereof are not removed. Compare this - # with having the same library being listed as a - # dependency of multiple other libraries: in this case, - # we know (pedantically, we assume) the library does not - # need to be listed more than once, so we keep only the - # last copy. This is not always right, but it is rare - # enough that we require users that really mean to play - # such unportable linking tricks to link the library - # using -Wl,-lname, so that libtool does not consider it - # for duplicate removal. - case " $specialdeplibs " in - *" $deplib "*) new_libs="$deplib $new_libs" ;; - *) - case " $new_libs " in - *" $deplib "*) ;; - *) new_libs="$deplib $new_libs" ;; - esac - ;; - esac - ;; - esac - done - tmp_libs= - for deplib in $new_libs; do - case $deplib in - -L*) - case " $tmp_libs " in - *" $deplib "*) ;; - *) func_append tmp_libs " $deplib" ;; - esac - ;; - *) func_append tmp_libs " $deplib" ;; - esac - done - eval $var=\"$tmp_libs\" - done # for var - fi - - # Add Sun CC postdeps if required: - test CXX = "$tagname" && { - case $host_os in - linux*) - case `$CC -V 2>&1 | $SED 5q` in - *Sun\ C*) # Sun C++ 5.9 - func_suncc_cstd_abi - - if test no != "$suncc_use_cstd_abi"; then - func_append postdeps ' -library=Cstd -library=Crun' - fi - ;; - esac - ;; - - solaris*) - func_cc_basename "$CC" - case $func_cc_basename_result in - CC* | sunCC*) - func_suncc_cstd_abi - - if test no != "$suncc_use_cstd_abi"; then - func_append postdeps ' -library=Cstd -library=Crun' - fi - ;; - esac - ;; - esac - } - - # Last step: remove runtime libs from dependency_libs - # (they stay in deplibs) - tmp_libs= - for i in $dependency_libs; do - case " $predeps $postdeps $compiler_lib_search_path " in - *" $i "*) - i= - ;; - esac - if test -n "$i"; then - func_append tmp_libs " $i" - fi - done - dependency_libs=$tmp_libs - done # for pass - if test prog = "$linkmode"; then - dlfiles=$newdlfiles - fi - if test prog = "$linkmode" || test lib = "$linkmode"; then - dlprefiles=$newdlprefiles - fi - - case $linkmode in - oldlib) - if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then - func_warning "'-dlopen' is ignored for archives" - fi - - case " $deplibs" in - *\ -l* | *\ -L*) - func_warning "'-l' and '-L' are ignored for archives" ;; - esac - - test -n "$rpath" && \ - func_warning "'-rpath' is ignored for archives" - - test -n "$xrpath" && \ - func_warning "'-R' is ignored for archives" - - test -n "$vinfo" && \ - func_warning "'-version-info/-version-number' is ignored for archives" - - test -n "$release" && \ - func_warning "'-release' is ignored for archives" - - test -n "$export_symbols$export_symbols_regex" && \ - func_warning "'-export-symbols' is ignored for archives" - - # Now set the variables for building old libraries. - build_libtool_libs=no - oldlibs=$output - func_append objs "$old_deplibs" - ;; - - lib) - # Make sure we only generate libraries of the form 'libNAME.la'. - case $outputname in - lib*) - func_stripname 'lib' '.la' "$outputname" - name=$func_stripname_result - eval shared_ext=\"$shrext_cmds\" - eval libname=\"$libname_spec\" - ;; - *) - test no = "$module" \ - && func_fatal_help "libtool library '$output' must begin with 'lib'" - - if test no != "$need_lib_prefix"; then - # Add the "lib" prefix for modules if required - func_stripname '' '.la' "$outputname" - name=$func_stripname_result - eval shared_ext=\"$shrext_cmds\" - eval libname=\"$libname_spec\" - else - func_stripname '' '.la' "$outputname" - libname=$func_stripname_result - fi - ;; - esac - - if test -n "$objs"; then - if test pass_all != "$deplibs_check_method"; then - func_fatal_error "cannot build libtool library '$output' from non-libtool objects on this host:$objs" - else - echo - $ECHO "*** Warning: Linking the shared library $output against the non-libtool" - $ECHO "*** objects $objs is not portable!" - func_append libobjs " $objs" - fi - fi - - test no = "$dlself" \ - || func_warning "'-dlopen self' is ignored for libtool libraries" - - set dummy $rpath - shift - test 1 -lt "$#" \ - && func_warning "ignoring multiple '-rpath's for a libtool library" - - install_libdir=$1 - - oldlibs= - if test -z "$rpath"; then - if test yes = "$build_libtool_libs"; then - # Building a libtool convenience library. - # Some compilers have problems with a '.al' extension so - # convenience libraries should have the same extension an - # archive normally would. - oldlibs="$output_objdir/$libname.$libext $oldlibs" - build_libtool_libs=convenience - build_old_libs=yes - fi - - test -n "$vinfo" && \ - func_warning "'-version-info/-version-number' is ignored for convenience libraries" - - test -n "$release" && \ - func_warning "'-release' is ignored for convenience libraries" - else - - # Parse the version information argument. - save_ifs=$IFS; IFS=: - set dummy $vinfo 0 0 0 - shift - IFS=$save_ifs - - test -n "$7" && \ - func_fatal_help "too many parameters to '-version-info'" - - # convert absolute version numbers to libtool ages - # this retains compatibility with .la files and attempts - # to make the code below a bit more comprehensible - - case $vinfo_number in - yes) - number_major=$1 - number_minor=$2 - number_revision=$3 - # - # There are really only two kinds -- those that - # use the current revision as the major version - # and those that subtract age and use age as - # a minor version. But, then there is irix - # that has an extra 1 added just for fun - # - case $version_type in - # correct linux to gnu/linux during the next big refactor - darwin|freebsd-elf|linux|midnightbsd-elf|osf|windows|none) - func_arith $number_major + $number_minor - current=$func_arith_result - age=$number_minor - revision=$number_revision - ;; - freebsd-aout|qnx|sunos) - current=$number_major - revision=$number_minor - age=0 - ;; - irix|nonstopux) - func_arith $number_major + $number_minor - current=$func_arith_result - age=$number_minor - revision=$number_minor - lt_irix_increment=no - ;; - *) - func_fatal_configuration "$modename: unknown library version type '$version_type'" - ;; - esac - ;; - no) - current=$1 - revision=$2 - age=$3 - ;; - esac - - # Check that each of the things are valid numbers. - case $current in - 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; - *) - func_error "CURRENT '$current' must be a nonnegative integer" - func_fatal_error "'$vinfo' is not valid version information" - ;; - esac - - case $revision in - 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; - *) - func_error "REVISION '$revision' must be a nonnegative integer" - func_fatal_error "'$vinfo' is not valid version information" - ;; - esac - - case $age in - 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; - *) - func_error "AGE '$age' must be a nonnegative integer" - func_fatal_error "'$vinfo' is not valid version information" - ;; - esac - - if test "$age" -gt "$current"; then - func_error "AGE '$age' is greater than the current interface number '$current'" - func_fatal_error "'$vinfo' is not valid version information" - fi - - # Calculate the version variables. - major= - versuffix= - verstring= - case $version_type in - none) ;; - - darwin) - # Like Linux, but with the current version available in - # verstring for coding it into the library header - func_arith $current - $age - major=.$func_arith_result - versuffix=$major.$age.$revision - # Darwin ld doesn't like 0 for these options... - func_arith $current + 1 - minor_current=$func_arith_result - xlcverstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" - verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" - # On Darwin other compilers - case $CC in - nagfor*) - verstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" - ;; - *) - verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" - ;; - esac - ;; - - freebsd-aout) - major=.$current - versuffix=.$current.$revision - ;; - - freebsd-elf | midnightbsd-elf) - func_arith $current - $age - major=.$func_arith_result - versuffix=$major.$age.$revision - ;; - - irix | nonstopux) - if test no = "$lt_irix_increment"; then - func_arith $current - $age - else - func_arith $current - $age + 1 - fi - major=$func_arith_result - - case $version_type in - nonstopux) verstring_prefix=nonstopux ;; - *) verstring_prefix=sgi ;; - esac - verstring=$verstring_prefix$major.$revision - - # Add in all the interfaces that we are compatible with. - loop=$revision - while test 0 -ne "$loop"; do - func_arith $revision - $loop - iface=$func_arith_result - func_arith $loop - 1 - loop=$func_arith_result - verstring=$verstring_prefix$major.$iface:$verstring - done - - # Before this point, $major must not contain '.'. - major=.$major - versuffix=$major.$revision - ;; - - linux) # correct to gnu/linux during the next big refactor - func_arith $current - $age - major=.$func_arith_result - versuffix=$major.$age.$revision - ;; - - osf) - func_arith $current - $age - major=.$func_arith_result - versuffix=.$current.$age.$revision - verstring=$current.$age.$revision - - # Add in all the interfaces that we are compatible with. - loop=$age - while test 0 -ne "$loop"; do - func_arith $current - $loop - iface=$func_arith_result - func_arith $loop - 1 - loop=$func_arith_result - verstring=$verstring:$iface.0 - done - - # Make executables depend on our current version. - func_append verstring ":$current.0" - ;; - - qnx) - major=.$current - versuffix=.$current - ;; - - sco) - major=.$current - versuffix=.$current - ;; - - sunos) - major=.$current - versuffix=.$current.$revision - ;; - - windows) - # Use '-' rather than '.', since we only want one - # extension on DOS 8.3 file systems. - func_arith $current - $age - major=$func_arith_result - versuffix=-$major - ;; - - *) - func_fatal_configuration "unknown library version type '$version_type'" - ;; - esac - - # Clear the version info if we defaulted, and they specified a release. - if test -z "$vinfo" && test -n "$release"; then - major= - case $version_type in - darwin) - # we can't check for "0.0" in archive_cmds due to quoting - # problems, so we reset it completely - verstring= - ;; - *) - verstring=0.0 - ;; - esac - if test no = "$need_version"; then - versuffix= - else - versuffix=.0.0 - fi - fi - - # Remove version info from name if versioning should be avoided - if test yes,no = "$avoid_version,$need_version"; then - major= - versuffix= - verstring= - fi - - # Check to see if the archive will have undefined symbols. - if test yes = "$allow_undefined"; then - if test unsupported = "$allow_undefined_flag"; then - if test yes = "$build_old_libs"; then - func_warning "undefined symbols not allowed in $host shared libraries; building static only" - build_libtool_libs=no - else - func_fatal_error "can't build $host shared library unless -no-undefined is specified" - fi - fi - else - # Don't allow undefined symbols. - allow_undefined_flag=$no_undefined_flag - fi - - fi - - func_generate_dlsyms "$libname" "$libname" : - func_append libobjs " $symfileobj" - test " " = "$libobjs" && libobjs= - - if test relink != "$opt_mode"; then - # Remove our outputs, but don't remove object files since they - # may have been created when compiling PIC objects. - removelist= - tempremovelist=`$ECHO "$output_objdir/*"` - for p in $tempremovelist; do - case $p in - *.$objext | *.gcno) - ;; - $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/$libname$release.*) - if test -n "$precious_files_regex"; then - if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 - then - continue - fi - fi - func_append removelist " $p" - ;; - *) ;; - esac - done - test -n "$removelist" && \ - func_show_eval "${RM}r \$removelist" - fi - - # Now set the variables for building old libraries. - if test yes = "$build_old_libs" && test convenience != "$build_libtool_libs"; then - func_append oldlibs " $output_objdir/$libname.$libext" - - # Transform .lo files to .o files. - oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; $lo2o" | $NL2SP` - fi - - # Eliminate all temporary directories. - #for path in $notinst_path; do - # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"` - # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"` - # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"` - #done - - if test -n "$xrpath"; then - # If the user specified any rpath flags, then add them. - temp_xrpath= - for libdir in $xrpath; do - func_replace_sysroot "$libdir" - func_append temp_xrpath " -R$func_replace_sysroot_result" - case "$finalize_rpath " in - *" $libdir "*) ;; - *) func_append finalize_rpath " $libdir" ;; - esac - done - if test yes != "$hardcode_into_libs" || test yes = "$build_old_libs"; then - dependency_libs="$temp_xrpath $dependency_libs" - fi - fi - - # Make sure dlfiles contains only unique files that won't be dlpreopened - old_dlfiles=$dlfiles - dlfiles= - for lib in $old_dlfiles; do - case " $dlprefiles $dlfiles " in - *" $lib "*) ;; - *) func_append dlfiles " $lib" ;; - esac - done - - # Make sure dlprefiles contains only unique files - old_dlprefiles=$dlprefiles - dlprefiles= - for lib in $old_dlprefiles; do - case "$dlprefiles " in - *" $lib "*) ;; - *) func_append dlprefiles " $lib" ;; - esac - done - - if test yes = "$build_libtool_libs"; then - if test -n "$rpath"; then - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) - # these systems don't actually have a c library (as such)! - ;; - *-*-rhapsody* | *-*-darwin1.[012]) - # Rhapsody C library is in the System framework - func_append deplibs " System.ltframework" - ;; - *-*-netbsd*) - # Don't link with libc until the a.out ld.so is fixed. - ;; - *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-midnightbsd*) - # Do not include libc due to us having libc/libc_r. - ;; - *-*-sco3.2v5* | *-*-sco5v6*) - # Causes problems with __ctype - ;; - *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) - # Compiler inserts libc in the correct place for threads to work - ;; - *) - # Add libc to deplibs on all other systems if necessary. - if test yes = "$build_libtool_need_lc"; then - func_append deplibs " -lc" - fi - ;; - esac - fi - - # Transform deplibs into only deplibs that can be linked in shared. - name_save=$name - libname_save=$libname - release_save=$release - versuffix_save=$versuffix - major_save=$major - # I'm not sure if I'm treating the release correctly. I think - # release should show up in the -l (ie -lgmp5) so we don't want to - # add it in twice. Is that correct? - release= - versuffix= - major= - newdeplibs= - droppeddeps=no - case $deplibs_check_method in - pass_all) - # Don't check for shared/static. Everything works. - # This might be a little naive. We might want to check - # whether the library exists or not. But this is on - # osf3 & osf4 and I'm not really sure... Just - # implementing what was already the behavior. - newdeplibs=$deplibs - ;; - test_compile) - # This code stresses the "libraries are programs" paradigm to its - # limits. Maybe even breaks it. We compile a program, linking it - # against the deplibs as a proxy for the library. Then we can check - # whether they linked in statically or dynamically with ldd. - $opt_dry_run || $RM conftest.c - cat > conftest.c </dev/null` - $nocaseglob - else - potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null` - fi - for potent_lib in $potential_libs; do - # Follow soft links. - if ls -lLd "$potent_lib" 2>/dev/null | - $GREP " -> " >/dev/null; then - continue - fi - # The statement above tries to avoid entering an - # endless loop below, in case of cyclic links. - # We might still enter an endless loop, since a link - # loop can be closed while we follow links, - # but so what? - potlib=$potent_lib - while test -h "$potlib" 2>/dev/null; do - potliblink=`ls -ld $potlib | $SED 's/.* -> //'` - case $potliblink in - [\\/]* | [A-Za-z]:[\\/]*) potlib=$potliblink;; - *) potlib=`$ECHO "$potlib" | $SED 's|[^/]*$||'`"$potliblink";; - esac - done - if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | - $SED -e 10q | - $EGREP "$file_magic_regex" > /dev/null; then - func_append newdeplibs " $a_deplib" - a_deplib= - break 2 - fi - done - done - fi - if test -n "$a_deplib"; then - droppeddeps=yes - echo - $ECHO "*** Warning: linker path does not have real file for library $a_deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have" - echo "*** because I did check the linker path looking for a file starting" - if test -z "$potlib"; then - $ECHO "*** with $libname but no candidates were found. (...for file magic test)" - else - $ECHO "*** with $libname and none of the candidates passed a file format test" - $ECHO "*** using a file magic. Last file checked: $potlib" - fi - fi - ;; - *) - # Add a -L argument. - func_append newdeplibs " $a_deplib" - ;; - esac - done # Gone through all deplibs. - ;; - match_pattern*) - set dummy $deplibs_check_method; shift - match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` - for a_deplib in $deplibs; do - case $a_deplib in - -l*) - func_stripname -l '' "$a_deplib" - name=$func_stripname_result - if test yes = "$allow_libtool_libs_with_static_runtimes"; then - case " $predeps $postdeps " in - *" $a_deplib "*) - func_append newdeplibs " $a_deplib" - a_deplib= - ;; - esac - fi - if test -n "$a_deplib"; then - libname=`eval "\\$ECHO \"$libname_spec\""` - for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do - potential_libs=`ls $i/$libname[.-]* 2>/dev/null` - for potent_lib in $potential_libs; do - potlib=$potent_lib # see symlink-check above in file_magic test - if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \ - $EGREP "$match_pattern_regex" > /dev/null; then - func_append newdeplibs " $a_deplib" - a_deplib= - break 2 - fi - done - done - fi - if test -n "$a_deplib"; then - droppeddeps=yes - echo - $ECHO "*** Warning: linker path does not have real file for library $a_deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have" - echo "*** because I did check the linker path looking for a file starting" - if test -z "$potlib"; then - $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" - else - $ECHO "*** with $libname and none of the candidates passed a file format test" - $ECHO "*** using a regex pattern. Last file checked: $potlib" - fi - fi - ;; - *) - # Add a -L argument. - func_append newdeplibs " $a_deplib" - ;; - esac - done # Gone through all deplibs. - ;; - none | unknown | *) - newdeplibs= - tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'` - if test yes = "$allow_libtool_libs_with_static_runtimes"; then - for i in $predeps $postdeps; do - # can't use Xsed below, because $i might contain '/' - tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s|$i||"` - done - fi - case $tmp_deplibs in - *[!\ \ ]*) - echo - if test none = "$deplibs_check_method"; then - echo "*** Warning: inter-library dependencies are not supported in this platform." - else - echo "*** Warning: inter-library dependencies are not known to be supported." - fi - echo "*** All declared inter-library dependencies are being dropped." - droppeddeps=yes - ;; - esac - ;; - esac - versuffix=$versuffix_save - major=$major_save - release=$release_save - libname=$libname_save - name=$name_save - - case $host in - *-*-rhapsody* | *-*-darwin1.[012]) - # On Rhapsody replace the C library with the System framework - newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'` - ;; - esac - - if test yes = "$droppeddeps"; then - if test yes = "$module"; then - echo - echo "*** Warning: libtool could not satisfy all declared inter-library" - $ECHO "*** dependencies of module $libname. Therefore, libtool will create" - echo "*** a static module, that should work as long as the dlopening" - echo "*** application is linked with the -dlopen flag." - if test -z "$global_symbol_pipe"; then - echo - echo "*** However, this would only work if libtool was able to extract symbol" - echo "*** lists from a program, using 'nm' or equivalent, but libtool could" - echo "*** not find such a program. So, this module is probably useless." - echo "*** 'nm' from GNU binutils and a full rebuild may help." - fi - if test no = "$build_old_libs"; then - oldlibs=$output_objdir/$libname.$libext - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - else - echo "*** The inter-library dependencies that have been dropped here will be" - echo "*** automatically added whenever a program is linked with this library" - echo "*** or is declared to -dlopen it." - - if test no = "$allow_undefined"; then - echo - echo "*** Since this library must not contain undefined symbols," - echo "*** because either the platform does not support them or" - echo "*** it was explicitly requested with -no-undefined," - echo "*** libtool will only create a static version of it." - if test no = "$build_old_libs"; then - oldlibs=$output_objdir/$libname.$libext - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - fi - fi - fi - # Done checking deplibs! - deplibs=$newdeplibs - fi - # Time to change all our "foo.ltframework" stuff back to "-framework foo" - case $host in - *-*-darwin*) - newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - ;; - esac - - # move library search paths that coincide with paths to not yet - # installed libraries to the beginning of the library search list - new_libs= - for path in $notinst_path; do - case " $new_libs " in - *" -L$path/$objdir "*) ;; - *) - case " $deplibs " in - *" -L$path/$objdir "*) - func_append new_libs " -L$path/$objdir" ;; - esac - ;; - esac - done - for deplib in $deplibs; do - case $deplib in - -L*) - case " $new_libs " in - *" $deplib "*) ;; - *) func_append new_libs " $deplib" ;; - esac - ;; - *) func_append new_libs " $deplib" ;; - esac - done - deplibs=$new_libs - - # All the library-specific variables (install_libdir is set above). - library_names= - old_library= - dlname= - - # Test again, we may have decided not to build it any more - if test yes = "$build_libtool_libs"; then - # Remove $wl instances when linking with ld. - # FIXME: should test the right _cmds variable. - case $archive_cmds in - *\$LD\ *) wl= ;; - esac - if test yes = "$hardcode_into_libs"; then - # Hardcode the library paths - hardcode_libdirs= - dep_rpath= - rpath=$finalize_rpath - test relink = "$opt_mode" || rpath=$compile_rpath$rpath - for libdir in $rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - func_replace_sysroot "$libdir" - libdir=$func_replace_sysroot_result - if test -z "$hardcode_libdirs"; then - hardcode_libdirs=$libdir - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - func_append dep_rpath " $flag" - fi - elif test -n "$runpath_var"; then - case "$perm_rpath " in - *" $libdir "*) ;; - *) func_append perm_rpath " $libdir" ;; - esac - fi - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir=$hardcode_libdirs - eval "dep_rpath=\"$hardcode_libdir_flag_spec\"" - fi - if test -n "$runpath_var" && test -n "$perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $perm_rpath; do - func_append rpath "$dir:" - done - eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" - fi - test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" - fi - - shlibpath=$finalize_shlibpath - test relink = "$opt_mode" || shlibpath=$compile_shlibpath$shlibpath - if test -n "$shlibpath"; then - eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" - fi - - # Get the real and link names of the library. - eval shared_ext=\"$shrext_cmds\" - eval library_names=\"$library_names_spec\" - set dummy $library_names - shift - realname=$1 - shift - - if test -n "$soname_spec"; then - eval soname=\"$soname_spec\" - else - soname=$realname - fi - if test -z "$dlname"; then - dlname=$soname - fi - - lib=$output_objdir/$realname - linknames= - for link - do - func_append linknames " $link" - done - - # Use standard objects if they are pic - test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP` - test "X$libobjs" = "X " && libobjs= - - delfiles= - if test -n "$export_symbols" && test -n "$include_expsyms"; then - $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" - export_symbols=$output_objdir/$libname.uexp - func_append delfiles " $export_symbols" - fi - - orig_export_symbols= - case $host_os in - cygwin* | mingw* | cegcc*) - if test -n "$export_symbols" && test -z "$export_symbols_regex"; then - # exporting using user supplied symfile - func_dll_def_p "$export_symbols" || { - # and it's NOT already a .def file. Must figure out - # which of the given symbols are data symbols and tag - # them as such. So, trigger use of export_symbols_cmds. - # export_symbols gets reassigned inside the "prepare - # the list of exported symbols" if statement, so the - # include_expsyms logic still works. - orig_export_symbols=$export_symbols - export_symbols= - always_export_symbols=yes - } - fi - ;; - esac - - # Prepare the list of exported symbols - if test -z "$export_symbols"; then - if test yes = "$always_export_symbols" || test -n "$export_symbols_regex"; then - func_verbose "generating symbol list for '$libname.la'" - export_symbols=$output_objdir/$libname.exp - $opt_dry_run || $RM $export_symbols - cmds=$export_symbols_cmds - save_ifs=$IFS; IFS='~' - for cmd1 in $cmds; do - IFS=$save_ifs - # Take the normal branch if the nm_file_list_spec branch - # doesn't work or if tool conversion is not needed. - case $nm_file_list_spec~$to_tool_file_cmd in - *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*) - try_normal_branch=yes - eval cmd=\"$cmd1\" - func_len " $cmd" - len=$func_len_result - ;; - *) - try_normal_branch=no - ;; - esac - if test yes = "$try_normal_branch" \ - && { test "$len" -lt "$max_cmd_len" \ - || test "$max_cmd_len" -le -1; } - then - func_show_eval "$cmd" 'exit $?' - skipped_export=false - elif test -n "$nm_file_list_spec"; then - func_basename "$output" - output_la=$func_basename_result - save_libobjs=$libobjs - save_output=$output - output=$output_objdir/$output_la.nm - func_to_tool_file "$output" - libobjs=$nm_file_list_spec$func_to_tool_file_result - func_append delfiles " $output" - func_verbose "creating $NM input file list: $output" - for obj in $save_libobjs; do - func_to_tool_file "$obj" - $ECHO "$func_to_tool_file_result" - done > "$output" - eval cmd=\"$cmd1\" - func_show_eval "$cmd" 'exit $?' - output=$save_output - libobjs=$save_libobjs - skipped_export=false - else - # The command line is too long to execute in one step. - func_verbose "using reloadable object file for export list..." - skipped_export=: - # Break out early, otherwise skipped_export may be - # set to false by a later but shorter cmd. - break - fi - done - IFS=$save_ifs - if test -n "$export_symbols_regex" && test : != "$skipped_export"; then - func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' - func_show_eval '$MV "${export_symbols}T" "$export_symbols"' - fi - fi - fi - - if test -n "$export_symbols" && test -n "$include_expsyms"; then - tmp_export_symbols=$export_symbols - test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols - $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' - fi - - if test : != "$skipped_export" && test -n "$orig_export_symbols"; then - # The given exports_symbols file has to be filtered, so filter it. - func_verbose "filter symbol list for '$libname.la' to tag DATA exports" - # FIXME: $output_objdir/$libname.filter potentially contains lots of - # 's' commands, which not all seds can handle. GNU sed should be fine - # though. Also, the filter scales superlinearly with the number of - # global variables. join(1) would be nice here, but unfortunately - # isn't a blessed tool. - $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter - func_append delfiles " $export_symbols $output_objdir/$libname.filter" - export_symbols=$output_objdir/$libname.def - $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols - fi - - tmp_deplibs= - for test_deplib in $deplibs; do - case " $convenience " in - *" $test_deplib "*) ;; - *) - func_append tmp_deplibs " $test_deplib" - ;; - esac - done - deplibs=$tmp_deplibs - - if test -n "$convenience"; then - if test -n "$whole_archive_flag_spec" && - test yes = "$compiler_needs_object" && - test -z "$libobjs"; then - # extract the archives, so we have objects to list. - # TODO: could optimize this to just extract one archive. - whole_archive_flag_spec= - fi - if test -n "$whole_archive_flag_spec"; then - save_libobjs=$libobjs - eval libobjs=\"\$libobjs $whole_archive_flag_spec\" - test "X$libobjs" = "X " && libobjs= - else - gentop=$output_objdir/${outputname}x - func_append generated " $gentop" - - func_extract_archives $gentop $convenience - func_append libobjs " $func_extract_archives_result" - test "X$libobjs" = "X " && libobjs= - fi - fi - - if test yes = "$thread_safe" && test -n "$thread_safe_flag_spec"; then - eval flag=\"$thread_safe_flag_spec\" - func_append linker_flags " $flag" - fi - - # Make a backup of the uninstalled library when relinking - if test relink = "$opt_mode"; then - $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? - fi - - # Do each of the archive commands. - if test yes = "$module" && test -n "$module_cmds"; then - if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then - eval test_cmds=\"$module_expsym_cmds\" - cmds=$module_expsym_cmds - else - eval test_cmds=\"$module_cmds\" - cmds=$module_cmds - fi - else - if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - eval test_cmds=\"$archive_expsym_cmds\" - cmds=$archive_expsym_cmds - else - eval test_cmds=\"$archive_cmds\" - cmds=$archive_cmds - fi - fi - - if test : != "$skipped_export" && - func_len " $test_cmds" && - len=$func_len_result && - test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then - : - else - # The command line is too long to link in one step, link piecewise - # or, if using GNU ld and skipped_export is not :, use a linker - # script. - - # Save the value of $output and $libobjs because we want to - # use them later. If we have whole_archive_flag_spec, we - # want to use save_libobjs as it was before - # whole_archive_flag_spec was expanded, because we can't - # assume the linker understands whole_archive_flag_spec. - # This may have to be revisited, in case too many - # convenience libraries get linked in and end up exceeding - # the spec. - if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then - save_libobjs=$libobjs - fi - save_output=$output - func_basename "$output" - output_la=$func_basename_result - - # Clear the reloadable object creation command queue and - # initialize k to one. - test_cmds= - concat_cmds= - objlist= - last_robj= - k=1 - - if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then - output=$output_objdir/$output_la.lnkscript - func_verbose "creating GNU ld script: $output" - echo 'INPUT (' > $output - for obj in $save_libobjs - do - func_to_tool_file "$obj" - $ECHO "$func_to_tool_file_result" >> $output - done - echo ')' >> $output - func_append delfiles " $output" - func_to_tool_file "$output" - output=$func_to_tool_file_result - elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then - output=$output_objdir/$output_la.lnk - func_verbose "creating linker input file list: $output" - : > $output - set x $save_libobjs - shift - firstobj= - if test yes = "$compiler_needs_object"; then - firstobj="$1 " - shift - fi - for obj - do - func_to_tool_file "$obj" - $ECHO "$func_to_tool_file_result" >> $output - done - func_append delfiles " $output" - func_to_tool_file "$output" - output=$firstobj\"$file_list_spec$func_to_tool_file_result\" - else - if test -n "$save_libobjs"; then - func_verbose "creating reloadable object files..." - output=$output_objdir/$output_la-$k.$objext - eval test_cmds=\"$reload_cmds\" - func_len " $test_cmds" - len0=$func_len_result - len=$len0 - - # Loop over the list of objects to be linked. - for obj in $save_libobjs - do - func_len " $obj" - func_arith $len + $func_len_result - len=$func_arith_result - if test -z "$objlist" || - test "$len" -lt "$max_cmd_len"; then - func_append objlist " $obj" - else - # The command $test_cmds is almost too long, add a - # command to the queue. - if test 1 -eq "$k"; then - # The first file doesn't have a previous command to add. - reload_objs=$objlist - eval concat_cmds=\"$reload_cmds\" - else - # All subsequent reloadable object files will link in - # the last one created. - reload_objs="$objlist $last_robj" - eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\" - fi - last_robj=$output_objdir/$output_la-$k.$objext - func_arith $k + 1 - k=$func_arith_result - output=$output_objdir/$output_la-$k.$objext - objlist=" $obj" - func_len " $last_robj" - func_arith $len0 + $func_len_result - len=$func_arith_result - fi - done - # Handle the remaining objects by creating one last - # reloadable object file. All subsequent reloadable object - # files will link in the last one created. - test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - reload_objs="$objlist $last_robj" - eval concat_cmds=\"\$concat_cmds$reload_cmds\" - if test -n "$last_robj"; then - eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" - fi - func_append delfiles " $output" - - else - output= - fi - - ${skipped_export-false} && { - func_verbose "generating symbol list for '$libname.la'" - export_symbols=$output_objdir/$libname.exp - $opt_dry_run || $RM $export_symbols - libobjs=$output - # Append the command to create the export file. - test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\" - if test -n "$last_robj"; then - eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" - fi - } - - test -n "$save_libobjs" && - func_verbose "creating a temporary reloadable object file: $output" - - # Loop through the commands generated above and execute them. - save_ifs=$IFS; IFS='~' - for cmd in $concat_cmds; do - IFS=$save_ifs - $opt_quiet || { - func_quote_arg expand,pretty "$cmd" - eval "func_echo $func_quote_arg_result" - } - $opt_dry_run || eval "$cmd" || { - lt_exit=$? - - # Restore the uninstalled library and exit - if test relink = "$opt_mode"; then - ( cd "$output_objdir" && \ - $RM "${realname}T" && \ - $MV "${realname}U" "$realname" ) - fi - - exit $lt_exit - } - done - IFS=$save_ifs - - if test -n "$export_symbols_regex" && ${skipped_export-false}; then - func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' - func_show_eval '$MV "${export_symbols}T" "$export_symbols"' - fi - fi - - ${skipped_export-false} && { - if test -n "$export_symbols" && test -n "$include_expsyms"; then - tmp_export_symbols=$export_symbols - test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols - $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' - fi - - if test -n "$orig_export_symbols"; then - # The given exports_symbols file has to be filtered, so filter it. - func_verbose "filter symbol list for '$libname.la' to tag DATA exports" - # FIXME: $output_objdir/$libname.filter potentially contains lots of - # 's' commands, which not all seds can handle. GNU sed should be fine - # though. Also, the filter scales superlinearly with the number of - # global variables. join(1) would be nice here, but unfortunately - # isn't a blessed tool. - $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter - func_append delfiles " $export_symbols $output_objdir/$libname.filter" - export_symbols=$output_objdir/$libname.def - $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols - fi - } - - libobjs=$output - # Restore the value of output. - output=$save_output - - if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then - eval libobjs=\"\$libobjs $whole_archive_flag_spec\" - test "X$libobjs" = "X " && libobjs= - fi - # Expand the library linking commands again to reset the - # value of $libobjs for piecewise linking. - - # Do each of the archive commands. - if test yes = "$module" && test -n "$module_cmds"; then - if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then - cmds=$module_expsym_cmds - else - cmds=$module_cmds - fi - else - if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - cmds=$archive_expsym_cmds - else - cmds=$archive_cmds - fi - fi - fi - - if test -n "$delfiles"; then - # Append the command to remove temporary files to $cmds. - eval cmds=\"\$cmds~\$RM $delfiles\" - fi - - # Add any objects from preloaded convenience libraries - if test -n "$dlprefiles"; then - gentop=$output_objdir/${outputname}x - func_append generated " $gentop" - - func_extract_archives $gentop $dlprefiles - func_append libobjs " $func_extract_archives_result" - test "X$libobjs" = "X " && libobjs= - fi - - save_ifs=$IFS; IFS='~' - for cmd in $cmds; do - IFS=$sp$nl - eval cmd=\"$cmd\" - IFS=$save_ifs - $opt_quiet || { - func_quote_arg expand,pretty "$cmd" - eval "func_echo $func_quote_arg_result" - } - $opt_dry_run || eval "$cmd" || { - lt_exit=$? - - # Restore the uninstalled library and exit - if test relink = "$opt_mode"; then - ( cd "$output_objdir" && \ - $RM "${realname}T" && \ - $MV "${realname}U" "$realname" ) - fi - - exit $lt_exit - } - done - IFS=$save_ifs - - # Restore the uninstalled library and exit - if test relink = "$opt_mode"; then - $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? - - if test -n "$convenience"; then - if test -z "$whole_archive_flag_spec"; then - func_show_eval '${RM}r "$gentop"' - fi - fi - - exit $EXIT_SUCCESS - fi - - # Create links to the real library. - for linkname in $linknames; do - if test "$realname" != "$linkname"; then - func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?' - fi - done - - # If -module or -export-dynamic was specified, set the dlname. - if test yes = "$module" || test yes = "$export_dynamic"; then - # On all known operating systems, these are identical. - dlname=$soname - fi - fi - ;; - - obj) - if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then - func_warning "'-dlopen' is ignored for objects" - fi - - case " $deplibs" in - *\ -l* | *\ -L*) - func_warning "'-l' and '-L' are ignored for objects" ;; - esac - - test -n "$rpath" && \ - func_warning "'-rpath' is ignored for objects" - - test -n "$xrpath" && \ - func_warning "'-R' is ignored for objects" - - test -n "$vinfo" && \ - func_warning "'-version-info' is ignored for objects" - - test -n "$release" && \ - func_warning "'-release' is ignored for objects" - - case $output in - *.lo) - test -n "$objs$old_deplibs" && \ - func_fatal_error "cannot build library object '$output' from non-libtool objects" - - libobj=$output - func_lo2o "$libobj" - obj=$func_lo2o_result - ;; - *) - libobj= - obj=$output - ;; - esac - - # Delete the old objects. - $opt_dry_run || $RM $obj $libobj - - # Objects from convenience libraries. This assumes - # single-version convenience libraries. Whenever we create - # different ones for PIC/non-PIC, this we'll have to duplicate - # the extraction. - reload_conv_objs= - gentop= - # if reload_cmds runs $LD directly, get rid of -Wl from - # whole_archive_flag_spec and hope we can get by with turning comma - # into space. - case $reload_cmds in - *\$LD[\ \$]*) wl= ;; - esac - if test -n "$convenience"; then - if test -n "$whole_archive_flag_spec"; then - eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" - test -n "$wl" || tmp_whole_archive_flags=`$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` - reload_conv_objs=$reload_objs\ $tmp_whole_archive_flags - else - gentop=$output_objdir/${obj}x - func_append generated " $gentop" - - func_extract_archives $gentop $convenience - reload_conv_objs="$reload_objs $func_extract_archives_result" - fi - fi - - # If we're not building shared, we need to use non_pic_objs - test yes = "$build_libtool_libs" || libobjs=$non_pic_objects - - # Create the old-style object. - reload_objs=$objs$old_deplibs' '`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; /\.lib$/d; $lo2o" | $NL2SP`' '$reload_conv_objs - - output=$obj - func_execute_cmds "$reload_cmds" 'exit $?' - - # Exit if we aren't doing a library object file. - if test -z "$libobj"; then - if test -n "$gentop"; then - func_show_eval '${RM}r "$gentop"' - fi - - exit $EXIT_SUCCESS - fi - - test yes = "$build_libtool_libs" || { - if test -n "$gentop"; then - func_show_eval '${RM}r "$gentop"' - fi - - # Create an invalid libtool object if no PIC, so that we don't - # accidentally link it into a program. - # $show "echo timestamp > $libobj" - # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? - exit $EXIT_SUCCESS - } - - if test -n "$pic_flag" || test default != "$pic_mode"; then - # Only do commands if we really have different PIC objects. - reload_objs="$libobjs $reload_conv_objs" - output=$libobj - func_execute_cmds "$reload_cmds" 'exit $?' - fi - - if test -n "$gentop"; then - func_show_eval '${RM}r "$gentop"' - fi - - exit $EXIT_SUCCESS - ;; - - prog) - case $host in - *cygwin*) func_stripname '' '.exe' "$output" - output=$func_stripname_result.exe;; - esac - test -n "$vinfo" && \ - func_warning "'-version-info' is ignored for programs" - - test -n "$release" && \ - func_warning "'-release' is ignored for programs" - - $preload \ - && test unknown,unknown,unknown = "$dlopen_support,$dlopen_self,$dlopen_self_static" \ - && func_warning "'LT_INIT([dlopen])' not used. Assuming no dlopen support." - - case $host in - *-*-rhapsody* | *-*-darwin1.[012]) - # On Rhapsody replace the C library is the System framework - compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'` - finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'` - ;; - esac - - case $host in - *-*-darwin*) - # Don't allow lazy linking, it breaks C++ global constructors - # But is supposedly fixed on 10.4 or later (yay!). - if test CXX = "$tagname"; then - case ${MACOSX_DEPLOYMENT_TARGET-10.0} in - 10.[0123]) - func_append compile_command " $wl-bind_at_load" - func_append finalize_command " $wl-bind_at_load" - ;; - esac - fi - # Time to change all our "foo.ltframework" stuff back to "-framework foo" - compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - ;; - esac - - - # move library search paths that coincide with paths to not yet - # installed libraries to the beginning of the library search list - new_libs= - for path in $notinst_path; do - case " $new_libs " in - *" -L$path/$objdir "*) ;; - *) - case " $compile_deplibs " in - *" -L$path/$objdir "*) - func_append new_libs " -L$path/$objdir" ;; - esac - ;; - esac - done - for deplib in $compile_deplibs; do - case $deplib in - -L*) - case " $new_libs " in - *" $deplib "*) ;; - *) func_append new_libs " $deplib" ;; - esac - ;; - *) func_append new_libs " $deplib" ;; - esac - done - compile_deplibs=$new_libs - - - func_append compile_command " $compile_deplibs" - func_append finalize_command " $finalize_deplibs" - - if test -n "$rpath$xrpath"; then - # If the user specified any rpath flags, then add them. - for libdir in $rpath $xrpath; do - # This is the magic to use -rpath. - case "$finalize_rpath " in - *" $libdir "*) ;; - *) func_append finalize_rpath " $libdir" ;; - esac - done - fi - - # Now hardcode the library paths - rpath= - hardcode_libdirs= - for libdir in $compile_rpath $finalize_rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs=$libdir - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - func_append rpath " $flag" - fi - elif test -n "$runpath_var"; then - case "$perm_rpath " in - *" $libdir "*) ;; - *) func_append perm_rpath " $libdir" ;; - esac - fi - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) - testbindir=`$ECHO "$libdir" | $SED -e 's*/lib$*/bin*'` - case :$dllsearchpath: in - *":$libdir:"*) ;; - ::) dllsearchpath=$libdir;; - *) func_append dllsearchpath ":$libdir";; - esac - case :$dllsearchpath: in - *":$testbindir:"*) ;; - ::) dllsearchpath=$testbindir;; - *) func_append dllsearchpath ":$testbindir";; - esac - ;; - esac - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir=$hardcode_libdirs - eval rpath=\" $hardcode_libdir_flag_spec\" - fi - compile_rpath=$rpath - - rpath= - hardcode_libdirs= - for libdir in $finalize_rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs=$libdir - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - func_append rpath " $flag" - fi - elif test -n "$runpath_var"; then - case "$finalize_perm_rpath " in - *" $libdir "*) ;; - *) func_append finalize_perm_rpath " $libdir" ;; - esac - fi - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir=$hardcode_libdirs - eval rpath=\" $hardcode_libdir_flag_spec\" - fi - finalize_rpath=$rpath - - if test -n "$libobjs" && test yes = "$build_old_libs"; then - # Transform all the library objects into standard objects. - compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP` - finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP` - fi - - func_generate_dlsyms "$outputname" "@PROGRAM@" false - - # template prelinking step - if test -n "$prelink_cmds"; then - func_execute_cmds "$prelink_cmds" 'exit $?' - fi - - wrappers_required=: - case $host in - *cegcc* | *mingw32ce*) - # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. - wrappers_required=false - ;; - *cygwin* | *mingw* ) - test yes = "$build_libtool_libs" || wrappers_required=false - ;; - *) - if test no = "$need_relink" || test yes != "$build_libtool_libs"; then - wrappers_required=false - fi - ;; - esac - $wrappers_required || { - # Replace the output file specification. - compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'` - link_command=$compile_command$compile_rpath - - # We have no uninstalled library dependencies, so finalize right now. - exit_status=0 - func_show_eval "$link_command" 'exit_status=$?' - - if test -n "$postlink_cmds"; then - func_to_tool_file "$output" - postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` - func_execute_cmds "$postlink_cmds" 'exit $?' - fi - - # Delete the generated files. - if test -f "$output_objdir/${outputname}S.$objext"; then - func_show_eval '$RM "$output_objdir/${outputname}S.$objext"' - fi - - exit $exit_status - } - - if test -n "$compile_shlibpath$finalize_shlibpath"; then - compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" - fi - if test -n "$finalize_shlibpath"; then - finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" - fi - - compile_var= - finalize_var= - if test -n "$runpath_var"; then - if test -n "$perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $perm_rpath; do - func_append rpath "$dir:" - done - compile_var="$runpath_var=\"$rpath\$$runpath_var\" " - fi - if test -n "$finalize_perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $finalize_perm_rpath; do - func_append rpath "$dir:" - done - finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " - fi - fi - - if test yes = "$no_install"; then - # We don't need to create a wrapper script. - link_command=$compile_var$compile_command$compile_rpath - # Replace the output file specification. - link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'` - # Delete the old output file. - $opt_dry_run || $RM $output - # Link the executable and exit - func_show_eval "$link_command" 'exit $?' - - if test -n "$postlink_cmds"; then - func_to_tool_file "$output" - postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` - func_execute_cmds "$postlink_cmds" 'exit $?' - fi - - exit $EXIT_SUCCESS - fi - - case $hardcode_action,$fast_install in - relink,*) - # Fast installation is not supported - link_command=$compile_var$compile_command$compile_rpath - relink_command=$finalize_var$finalize_command$finalize_rpath - - func_warning "this platform does not like uninstalled shared libraries" - func_warning "'$output' will be relinked during installation" - ;; - *,yes) - link_command=$finalize_var$compile_command$finalize_rpath - relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` - ;; - *,no) - link_command=$compile_var$compile_command$compile_rpath - relink_command=$finalize_var$finalize_command$finalize_rpath - ;; - *,needless) - link_command=$finalize_var$compile_command$finalize_rpath - relink_command= - ;; - esac - - # Replace the output file specification. - link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` - - # Delete the old output files. - $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname - - func_show_eval "$link_command" 'exit $?' - - if test -n "$postlink_cmds"; then - func_to_tool_file "$output_objdir/$outputname" - postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` - func_execute_cmds "$postlink_cmds" 'exit $?' - fi - - # Now create the wrapper script. - func_verbose "creating $output" - - # Quote the relink command for shipping. - if test -n "$relink_command"; then - # Preserve any variables that may affect compiler behavior - for var in $variables_saved_for_relink; do - if eval test -z \"\${$var+set}\"; then - relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" - elif eval var_value=\$$var; test -z "$var_value"; then - relink_command="$var=; export $var; $relink_command" - else - func_quote_arg pretty "$var_value" - relink_command="$var=$func_quote_arg_result; export $var; $relink_command" - fi - done - func_quote eval cd "`pwd`" - func_quote_arg pretty,unquoted "($func_quote_result; $relink_command)" - relink_command=$func_quote_arg_unquoted_result - fi - - # Only actually do things if not in dry run mode. - $opt_dry_run || { - # win32 will think the script is a binary if it has - # a .exe suffix, so we strip it off here. - case $output in - *.exe) func_stripname '' '.exe' "$output" - output=$func_stripname_result ;; - esac - # test for cygwin because mv fails w/o .exe extensions - case $host in - *cygwin*) - exeext=.exe - func_stripname '' '.exe' "$outputname" - outputname=$func_stripname_result ;; - *) exeext= ;; - esac - case $host in - *cygwin* | *mingw* ) - func_dirname_and_basename "$output" "" "." - output_name=$func_basename_result - output_path=$func_dirname_result - cwrappersource=$output_path/$objdir/lt-$output_name.c - cwrapper=$output_path/$output_name.exe - $RM $cwrappersource $cwrapper - trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 - - func_emit_cwrapperexe_src > $cwrappersource - - # The wrapper executable is built using the $host compiler, - # because it contains $host paths and files. If cross- - # compiling, it, like the target executable, must be - # executed on the $host or under an emulation environment. - $opt_dry_run || { - $LTCC $LTCFLAGS -o $cwrapper $cwrappersource - $STRIP $cwrapper - } - - # Now, create the wrapper script for func_source use: - func_ltwrapper_scriptname $cwrapper - $RM $func_ltwrapper_scriptname_result - trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 - $opt_dry_run || { - # note: this script will not be executed, so do not chmod. - if test "x$build" = "x$host"; then - $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result - else - func_emit_wrapper no > $func_ltwrapper_scriptname_result - fi - } - ;; - * ) - $RM $output - trap "$RM $output; exit $EXIT_FAILURE" 1 2 15 - - func_emit_wrapper no > $output - chmod +x $output - ;; - esac - } - exit $EXIT_SUCCESS - ;; - esac - - # See if we need to build an old-fashioned archive. - for oldlib in $oldlibs; do - - case $build_libtool_libs in - convenience) - oldobjs="$libobjs_save $symfileobj" - addlibs=$convenience - build_libtool_libs=no - ;; - module) - oldobjs=$libobjs_save - addlibs=$old_convenience - build_libtool_libs=no - ;; - *) - oldobjs="$old_deplibs $non_pic_objects" - $preload && test -f "$symfileobj" \ - && func_append oldobjs " $symfileobj" - addlibs=$old_convenience - ;; - esac - - if test -n "$addlibs"; then - gentop=$output_objdir/${outputname}x - func_append generated " $gentop" - - func_extract_archives $gentop $addlibs - func_append oldobjs " $func_extract_archives_result" - fi - - # Do each command in the archive commands. - if test -n "$old_archive_from_new_cmds" && test yes = "$build_libtool_libs"; then - cmds=$old_archive_from_new_cmds - else - - # Add any objects from preloaded convenience libraries - if test -n "$dlprefiles"; then - gentop=$output_objdir/${outputname}x - func_append generated " $gentop" - - func_extract_archives $gentop $dlprefiles - func_append oldobjs " $func_extract_archives_result" - fi - - # POSIX demands no paths to be encoded in archives. We have - # to avoid creating archives with duplicate basenames if we - # might have to extract them afterwards, e.g., when creating a - # static archive out of a convenience library, or when linking - # the entirety of a libtool archive into another (currently - # not supported by libtool). - if (for obj in $oldobjs - do - func_basename "$obj" - $ECHO "$func_basename_result" - done | sort | sort -uc >/dev/null 2>&1); then - : - else - echo "copying selected object files to avoid basename conflicts..." - gentop=$output_objdir/${outputname}x - func_append generated " $gentop" - func_mkdir_p "$gentop" - save_oldobjs=$oldobjs - oldobjs= - counter=1 - for obj in $save_oldobjs - do - func_basename "$obj" - objbase=$func_basename_result - case " $oldobjs " in - " ") oldobjs=$obj ;; - *[\ /]"$objbase "*) - while :; do - # Make sure we don't pick an alternate name that also - # overlaps. - newobj=lt$counter-$objbase - func_arith $counter + 1 - counter=$func_arith_result - case " $oldobjs " in - *[\ /]"$newobj "*) ;; - *) if test ! -f "$gentop/$newobj"; then break; fi ;; - esac - done - func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" - func_append oldobjs " $gentop/$newobj" - ;; - *) func_append oldobjs " $obj" ;; - esac - done - fi - func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 - tool_oldlib=$func_to_tool_file_result - eval cmds=\"$old_archive_cmds\" - - func_len " $cmds" - len=$func_len_result - if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then - cmds=$old_archive_cmds - elif test -n "$archiver_list_spec"; then - func_verbose "using command file archive linking..." - for obj in $oldobjs - do - func_to_tool_file "$obj" - $ECHO "$func_to_tool_file_result" - done > $output_objdir/$libname.libcmd - func_to_tool_file "$output_objdir/$libname.libcmd" - oldobjs=" $archiver_list_spec$func_to_tool_file_result" - cmds=$old_archive_cmds - else - # the command line is too long to link in one step, link in parts - func_verbose "using piecewise archive linking..." - save_RANLIB=$RANLIB - RANLIB=: - objlist= - concat_cmds= - save_oldobjs=$oldobjs - oldobjs= - # Is there a better way of finding the last object in the list? - for obj in $save_oldobjs - do - last_oldobj=$obj - done - eval test_cmds=\"$old_archive_cmds\" - func_len " $test_cmds" - len0=$func_len_result - len=$len0 - for obj in $save_oldobjs - do - func_len " $obj" - func_arith $len + $func_len_result - len=$func_arith_result - func_append objlist " $obj" - if test "$len" -lt "$max_cmd_len"; then - : - else - # the above command should be used before it gets too long - oldobjs=$objlist - if test "$obj" = "$last_oldobj"; then - RANLIB=$save_RANLIB - fi - test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - eval concat_cmds=\"\$concat_cmds$old_archive_cmds\" - objlist= - len=$len0 - fi - done - RANLIB=$save_RANLIB - oldobjs=$objlist - if test -z "$oldobjs"; then - eval cmds=\"\$concat_cmds\" - else - eval cmds=\"\$concat_cmds~\$old_archive_cmds\" - fi - fi - fi - func_execute_cmds "$cmds" 'exit $?' - done - - test -n "$generated" && \ - func_show_eval "${RM}r$generated" - - # Now create the libtool archive. - case $output in - *.la) - old_library= - test yes = "$build_old_libs" && old_library=$libname.$libext - func_verbose "creating $output" - - # Preserve any variables that may affect compiler behavior - for var in $variables_saved_for_relink; do - if eval test -z \"\${$var+set}\"; then - relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" - elif eval var_value=\$$var; test -z "$var_value"; then - relink_command="$var=; export $var; $relink_command" - else - func_quote_arg pretty,unquoted "$var_value" - relink_command="$var=$func_quote_arg_unquoted_result; export $var; $relink_command" - fi - done - # Quote the link command for shipping. - func_quote eval cd "`pwd`" - relink_command="($func_quote_result; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" - func_quote_arg pretty,unquoted "$relink_command" - relink_command=$func_quote_arg_unquoted_result - if test yes = "$hardcode_automatic"; then - relink_command= - fi - - # Only create the output if not a dry run. - $opt_dry_run || { - for installed in no yes; do - if test yes = "$installed"; then - if test -z "$install_libdir"; then - break - fi - output=$output_objdir/${outputname}i - # Replace all uninstalled libtool libraries with the installed ones - newdependency_libs= - for deplib in $dependency_libs; do - case $deplib in - *.la) - func_basename "$deplib" - name=$func_basename_result - func_resolve_sysroot "$deplib" - eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` - test -z "$libdir" && \ - func_fatal_error "'$deplib' is not a valid libtool archive" - func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name" - ;; - -L*) - func_stripname -L '' "$deplib" - func_replace_sysroot "$func_stripname_result" - func_append newdependency_libs " -L$func_replace_sysroot_result" - ;; - -R*) - func_stripname -R '' "$deplib" - func_replace_sysroot "$func_stripname_result" - func_append newdependency_libs " -R$func_replace_sysroot_result" - ;; - *) func_append newdependency_libs " $deplib" ;; - esac - done - dependency_libs=$newdependency_libs - newdlfiles= - - for lib in $dlfiles; do - case $lib in - *.la) - func_basename "$lib" - name=$func_basename_result - eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` - test -z "$libdir" && \ - func_fatal_error "'$lib' is not a valid libtool archive" - func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name" - ;; - *) func_append newdlfiles " $lib" ;; - esac - done - dlfiles=$newdlfiles - newdlprefiles= - for lib in $dlprefiles; do - case $lib in - *.la) - # Only pass preopened files to the pseudo-archive (for - # eventual linking with the app. that links it) if we - # didn't already link the preopened objects directly into - # the library: - func_basename "$lib" - name=$func_basename_result - eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` - test -z "$libdir" && \ - func_fatal_error "'$lib' is not a valid libtool archive" - func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name" - ;; - esac - done - dlprefiles=$newdlprefiles - else - newdlfiles= - for lib in $dlfiles; do - case $lib in - [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; - *) abs=`pwd`"/$lib" ;; - esac - func_append newdlfiles " $abs" - done - dlfiles=$newdlfiles - newdlprefiles= - for lib in $dlprefiles; do - case $lib in - [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; - *) abs=`pwd`"/$lib" ;; - esac - func_append newdlprefiles " $abs" - done - dlprefiles=$newdlprefiles - fi - $RM $output - # place dlname in correct position for cygwin - # In fact, it would be nice if we could use this code for all target - # systems that can't hard-code library paths into their executables - # and that have no shared library path variable independent of PATH, - # but it turns out we can't easily determine that from inspecting - # libtool variables, so we have to hard-code the OSs to which it - # applies here; at the moment, that means platforms that use the PE - # object format with DLL files. See the long comment at the top of - # tests/bindir.at for full details. - tdlname=$dlname - case $host,$output,$installed,$module,$dlname in - *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) - # If a -bindir argument was supplied, place the dll there. - if test -n "$bindir"; then - func_relative_path "$install_libdir" "$bindir" - tdlname=$func_relative_path_result/$dlname - else - # Otherwise fall back on heuristic. - tdlname=../bin/$dlname - fi - ;; - esac - $ECHO > $output "\ -# $outputname - a libtool library file -# Generated by $PROGRAM (GNU $PACKAGE) $VERSION -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# The name that we can dlopen(3). -dlname='$tdlname' - -# Names of this library. -library_names='$library_names' - -# The name of the static archive. -old_library='$old_library' - -# Linker flags that cannot go in dependency_libs. -inherited_linker_flags='$new_inherited_linker_flags' - -# Libraries that this one depends upon. -dependency_libs='$dependency_libs' - -# Names of additional weak libraries provided by this library -weak_library_names='$weak_libs' - -# Version information for $libname. -current=$current -age=$age -revision=$revision - -# Is this an already installed library? -installed=$installed - -# Should we warn about portability when linking against -modules? -shouldnotlink=$module - -# Files to dlopen/dlpreopen -dlopen='$dlfiles' -dlpreopen='$dlprefiles' - -# Directory that this library needs to be installed in: -libdir='$install_libdir'" - if test no,yes = "$installed,$need_relink"; then - $ECHO >> $output "\ -relink_command=\"$relink_command\"" - fi - done - } - - # Do a symbolic link so that the libtool archive can be found in - # LD_LIBRARY_PATH before the program is installed. - func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?' - ;; - esac - exit $EXIT_SUCCESS -} - -if test link = "$opt_mode" || test relink = "$opt_mode"; then - func_mode_link ${1+"$@"} -fi - - -# func_mode_uninstall arg... -func_mode_uninstall () -{ - $debug_cmd - - RM=$nonopt - files= - rmforce=false - exit_status=0 - - # This variable tells wrapper scripts just to set variables rather - # than running their programs. - libtool_install_magic=$magic - - for arg - do - case $arg in - -f) func_append RM " $arg"; rmforce=: ;; - -*) func_append RM " $arg" ;; - *) func_append files " $arg" ;; - esac - done - - test -z "$RM" && \ - func_fatal_help "you must specify an RM program" - - rmdirs= - - for file in $files; do - func_dirname "$file" "" "." - dir=$func_dirname_result - if test . = "$dir"; then - odir=$objdir - else - odir=$dir/$objdir - fi - func_basename "$file" - name=$func_basename_result - test uninstall = "$opt_mode" && odir=$dir - - # Remember odir for removal later, being careful to avoid duplicates - if test clean = "$opt_mode"; then - case " $rmdirs " in - *" $odir "*) ;; - *) func_append rmdirs " $odir" ;; - esac - fi - - # Don't error if the file doesn't exist and rm -f was used. - if { test -L "$file"; } >/dev/null 2>&1 || - { test -h "$file"; } >/dev/null 2>&1 || - test -f "$file"; then - : - elif test -d "$file"; then - exit_status=1 - continue - elif $rmforce; then - continue - fi - - rmfiles=$file - - case $name in - *.la) - # Possibly a libtool archive, so verify it. - if func_lalib_p "$file"; then - func_source $dir/$name - - # Delete the libtool libraries and symlinks. - for n in $library_names; do - func_append rmfiles " $odir/$n" - done - test -n "$old_library" && func_append rmfiles " $odir/$old_library" - - case $opt_mode in - clean) - case " $library_names " in - *" $dlname "*) ;; - *) test -n "$dlname" && func_append rmfiles " $odir/$dlname" ;; - esac - test -n "$libdir" && func_append rmfiles " $odir/$name $odir/${name}i" - ;; - uninstall) - if test -n "$library_names"; then - # Do each command in the postuninstall commands. - func_execute_cmds "$postuninstall_cmds" '$rmforce || exit_status=1' - fi - - if test -n "$old_library"; then - # Do each command in the old_postuninstall commands. - func_execute_cmds "$old_postuninstall_cmds" '$rmforce || exit_status=1' - fi - # FIXME: should reinstall the best remaining shared library. - ;; - esac - fi - ;; - - *.lo) - # Possibly a libtool object, so verify it. - if func_lalib_p "$file"; then - - # Read the .lo file - func_source $dir/$name - - # Add PIC object to the list of files to remove. - if test -n "$pic_object" && test none != "$pic_object"; then - func_append rmfiles " $dir/$pic_object" - fi - - # Add non-PIC object to the list of files to remove. - if test -n "$non_pic_object" && test none != "$non_pic_object"; then - func_append rmfiles " $dir/$non_pic_object" - fi - fi - ;; - - *) - if test clean = "$opt_mode"; then - noexename=$name - case $file in - *.exe) - func_stripname '' '.exe' "$file" - file=$func_stripname_result - func_stripname '' '.exe' "$name" - noexename=$func_stripname_result - # $file with .exe has already been added to rmfiles, - # add $file without .exe - func_append rmfiles " $file" - ;; - esac - # Do a test to see if this is a libtool program. - if func_ltwrapper_p "$file"; then - if func_ltwrapper_executable_p "$file"; then - func_ltwrapper_scriptname "$file" - relink_command= - func_source $func_ltwrapper_scriptname_result - func_append rmfiles " $func_ltwrapper_scriptname_result" - else - relink_command= - func_source $dir/$noexename - fi - - # note $name still contains .exe if it was in $file originally - # as does the version of $file that was added into $rmfiles - func_append rmfiles " $odir/$name $odir/${name}S.$objext" - if test yes = "$fast_install" && test -n "$relink_command"; then - func_append rmfiles " $odir/lt-$name" - fi - if test "X$noexename" != "X$name"; then - func_append rmfiles " $odir/lt-$noexename.c" - fi - fi - fi - ;; - esac - func_show_eval "$RM $rmfiles" 'exit_status=1' - done - - # Try to remove the $objdir's in the directories where we deleted files - for dir in $rmdirs; do - if test -d "$dir"; then - func_show_eval "rmdir $dir >/dev/null 2>&1" - fi - done - - exit $exit_status -} - -if test uninstall = "$opt_mode" || test clean = "$opt_mode"; then - func_mode_uninstall ${1+"$@"} -fi - -test -z "$opt_mode" && { - help=$generic_help - func_fatal_help "you must specify a MODE" -} - -test -z "$exec_cmd" && \ - func_fatal_help "invalid operation mode '$opt_mode'" - -if test -n "$exec_cmd"; then - eval exec "$exec_cmd" - exit $EXIT_FAILURE -fi - -exit $exit_status - - -# The TAGs below are defined such that we never get into a situation -# where we disable both kinds of libraries. Given conflicting -# choices, we go for a static library, that is the most portable, -# since we can't tell whether shared libraries were disabled because -# the user asked for that or because the platform doesn't support -# them. This is particularly important on AIX, because we don't -# support having both static and shared libraries enabled at the same -# time on that platform, so we default to a shared-only configuration. -# If a disable-shared tag is given, we'll fallback to a static-only -# configuration. But we'll never go from static-only to shared-only. - -# ### BEGIN LIBTOOL TAG CONFIG: disable-shared -build_libtool_libs=no -build_old_libs=yes -# ### END LIBTOOL TAG CONFIG: disable-shared - -# ### BEGIN LIBTOOL TAG CONFIG: disable-static -build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` -# ### END LIBTOOL TAG CONFIG: disable-static - -# Local Variables: -# mode:shell-script -# sh-indentation:2 -# End: diff --git a/m4/attributes.m4 b/m4/attributes.m4 deleted file mode 100644 index 51ac88b..0000000 --- a/m4/attributes.m4 +++ /dev/null @@ -1,292 +0,0 @@ -dnl Macros to check the presence of generic (non-typed) symbols. -dnl Copyright (c) 2006-2008 Diego Pettenò -dnl Copyright (c) 2006-2008 xine project -dnl Copyright (c) 2012 Lucas De Marchi -dnl -dnl This program is free software; you can redistribute it and/or modify -dnl it under the terms of the GNU General Public License as published by -dnl the Free Software Foundation; either version 2, or (at your option) -dnl any later version. -dnl -dnl This program is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -dnl GNU General Public License for more details. -dnl -dnl You should have received a copy of the GNU General Public License -dnl along with this program; if not, write to the Free Software -dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -dnl 02110-1301, USA. -dnl -dnl As a special exception, the copyright owners of the -dnl macro gives unlimited permission to copy, distribute and modify the -dnl configure scripts that are the output of Autoconf when processing the -dnl Macro. You need not follow the terms of the GNU General Public -dnl License when using or distributing such scripts, even though portions -dnl of the text of the Macro appear in them. The GNU General Public -dnl License (GPL) does govern all other use of the material that -dnl constitutes the Autoconf Macro. -dnl -dnl This special exception to the GPL applies to versions of the -dnl Autoconf Macro released by this project. When you make and -dnl distribute a modified version of the Autoconf Macro, you may extend -dnl this special exception to the GPL to apply to your modified version as -dnl well. - -dnl Check if FLAG in ENV-VAR is supported by compiler and append it -dnl to WHERE-TO-APPEND variable. Note that we invert -Wno-* checks to -dnl -W* as gcc cannot test for negated warnings. If a C snippet is passed, -dnl use it, otherwise use a simple main() definition that just returns 0. -dnl CC_CHECK_FLAG_APPEND([WHERE-TO-APPEND], [ENV-VAR], [FLAG], [C-SNIPPET]) - -AC_DEFUN([CC_CHECK_FLAG_APPEND], [ - AC_CACHE_CHECK([if $CC supports flag $3 in envvar $2], - AS_TR_SH([cc_cv_$2_$3]), - [eval "AS_TR_SH([cc_save_$2])='${$2}'" - eval "AS_TR_SH([$2])='${cc_save_$2} -Werror `echo "$3" | sed 's/^-Wno-/-W/'`'" - AC_LINK_IFELSE([AC_LANG_SOURCE(ifelse([$4], [], - [int main(void) { return 0; } ], - [$4]))], - [eval "AS_TR_SH([cc_cv_$2_$3])='yes'"], - [eval "AS_TR_SH([cc_cv_$2_$3])='no'"]) - eval "AS_TR_SH([$2])='$cc_save_$2'"]) - - AS_IF([eval test x$]AS_TR_SH([cc_cv_$2_$3])[ = xyes], - [eval "$1='${$1} $3'"]) -]) - -dnl CC_CHECK_FLAGS_APPEND([WHERE-TO-APPEND], [ENV-VAR], [FLAG1 FLAG2], [C-SNIPPET]) -AC_DEFUN([CC_CHECK_FLAGS_APPEND], [ - for flag in [$3]; do - CC_CHECK_FLAG_APPEND([$1], [$2], $flag, [$4]) - done -]) - -dnl Check if the flag is supported by linker (cacheable) -dnl CC_CHECK_LDFLAGS([FLAG], [ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND]) - -AC_DEFUN([CC_CHECK_LDFLAGS], [ - AC_CACHE_CHECK([if $CC supports $1 flag], - AS_TR_SH([cc_cv_ldflags_$1]), - [ac_save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $1" - AC_LINK_IFELSE([int main() { return 1; }], - [eval "AS_TR_SH([cc_cv_ldflags_$1])='yes'"], - [eval "AS_TR_SH([cc_cv_ldflags_$1])="]) - LDFLAGS="$ac_save_LDFLAGS" - ]) - - AS_IF([eval test x$]AS_TR_SH([cc_cv_ldflags_$1])[ = xyes], - [$2], [$3]) -]) - -dnl define the LDFLAGS_NOUNDEFINED variable with the correct value for -dnl the current linker to avoid undefined references in a shared object. -AC_DEFUN([CC_NOUNDEFINED], [ - dnl We check $host for which systems to enable this for. - AC_REQUIRE([AC_CANONICAL_HOST]) - - case $host in - dnl FreeBSD (et al.) does not complete linking for shared objects when pthreads - dnl are requested, as different implementations are present; to avoid problems - dnl use -Wl,-z,defs only for those platform not behaving this way. - *-freebsd* | *-openbsd*) ;; - *) - dnl First of all check for the --no-undefined variant of GNU ld. This allows - dnl for a much more readable command line, so that people can understand what - dnl it does without going to look for what the heck -z defs does. - for possible_flags in "-Wl,--no-undefined" "-Wl,-z,defs"; do - CC_CHECK_LDFLAGS([$possible_flags], [LDFLAGS_NOUNDEFINED="$possible_flags"]) - break - done - ;; - esac - - AC_SUBST([LDFLAGS_NOUNDEFINED]) -]) - -dnl Check for a -Werror flag or equivalent. -Werror is the GCC -dnl and ICC flag that tells the compiler to treat all the warnings -dnl as fatal. We usually need this option to make sure that some -dnl constructs (like attributes) are not simply ignored. -dnl -dnl Other compilers don't support -Werror per se, but they support -dnl an equivalent flag: -dnl - Sun Studio compiler supports -errwarn=%all -AC_DEFUN([CC_CHECK_WERROR], [ - AC_CACHE_CHECK( - [for $CC way to treat warnings as errors], - [cc_cv_werror], - [CC_CHECK_CFLAGS_SILENT([-Werror], [cc_cv_werror=-Werror], - [CC_CHECK_CFLAGS_SILENT([-errwarn=%all], [cc_cv_werror=-errwarn=%all])]) - ]) -]) - -AC_DEFUN([CC_CHECK_ATTRIBUTE], [ - AC_REQUIRE([CC_CHECK_WERROR]) - AC_CACHE_CHECK([if $CC supports __attribute__(( ifelse([$2], , [$1], [$2]) ))], - AS_TR_SH([cc_cv_attribute_$1]), - [ac_save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $cc_cv_werror" - AC_COMPILE_IFELSE([AC_LANG_SOURCE([$3])], - [eval "AS_TR_SH([cc_cv_attribute_$1])='yes'"], - [eval "AS_TR_SH([cc_cv_attribute_$1])='no'"]) - CFLAGS="$ac_save_CFLAGS" - ]) - - AS_IF([eval test x$]AS_TR_SH([cc_cv_attribute_$1])[ = xyes], - [AC_DEFINE( - AS_TR_CPP([SUPPORT_ATTRIBUTE_$1]), 1, - [Define this if the compiler supports __attribute__(( ifelse([$2], , [$1], [$2]) ))] - ) - $4], - [$5]) -]) - -AC_DEFUN([CC_ATTRIBUTE_CONSTRUCTOR], [ - CC_CHECK_ATTRIBUTE( - [constructor],, - [void __attribute__((constructor)) ctor() { int a; }], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_FORMAT], [ - CC_CHECK_ATTRIBUTE( - [format], [format(printf, n, n)], - [void __attribute__((format(printf, 1, 2))) printflike(const char *fmt, ...) { fmt = (void *)0; }], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_FORMAT_ARG], [ - CC_CHECK_ATTRIBUTE( - [format_arg], [format_arg(printf)], - [char *__attribute__((format_arg(1))) gettextlike(const char *fmt) { fmt = (void *)0; }], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_VISIBILITY], [ - CC_CHECK_ATTRIBUTE( - [visibility_$1], [visibility("$1")], - [void __attribute__((visibility("$1"))) $1_function() { }], - [$2], [$3]) -]) - -AC_DEFUN([CC_ATTRIBUTE_NONNULL], [ - CC_CHECK_ATTRIBUTE( - [nonnull], [nonnull()], - [void __attribute__((nonnull())) some_function(void *foo, void *bar) { foo = (void*)0; bar = (void*)0; }], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_UNUSED], [ - CC_CHECK_ATTRIBUTE( - [unused], , - [void some_function(void *foo, __attribute__((unused)) void *bar);], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_SENTINEL], [ - CC_CHECK_ATTRIBUTE( - [sentinel], , - [void some_function(void *foo, ...) __attribute__((sentinel));], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_DEPRECATED], [ - CC_CHECK_ATTRIBUTE( - [deprecated], , - [void some_function(void *foo, ...) __attribute__((deprecated));], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_ALIAS], [ - CC_CHECK_ATTRIBUTE( - [alias], [weak, alias], - [void other_function(void *foo) { } - void some_function(void *foo) __attribute__((weak, alias("other_function")));], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_MALLOC], [ - CC_CHECK_ATTRIBUTE( - [malloc], , - [void * __attribute__((malloc)) my_alloc(int n);], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_PACKED], [ - CC_CHECK_ATTRIBUTE( - [packed], , - [struct astructure { char a; int b; long c; void *d; } __attribute__((packed));], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_CONST], [ - CC_CHECK_ATTRIBUTE( - [const], , - [int __attribute__((const)) twopow(int n) { return 1 << n; } ], - [$1], [$2]) -]) - -AC_DEFUN([CC_FLAG_VISIBILITY], [ - AC_REQUIRE([CC_CHECK_WERROR]) - AC_CACHE_CHECK([if $CC supports -fvisibility=hidden], - [cc_cv_flag_visibility], - [cc_flag_visibility_save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $cc_cv_werror" - CC_CHECK_CFLAGS_SILENT([-fvisibility=hidden], - cc_cv_flag_visibility='yes', - cc_cv_flag_visibility='no') - CFLAGS="$cc_flag_visibility_save_CFLAGS"]) - - AS_IF([test "x$cc_cv_flag_visibility" = "xyes"], - [AC_DEFINE([SUPPORT_FLAG_VISIBILITY], 1, - [Define this if the compiler supports the -fvisibility flag]) - $1], - [$2]) -]) - -AC_DEFUN([CC_FUNC_EXPECT], [ - AC_REQUIRE([CC_CHECK_WERROR]) - AC_CACHE_CHECK([if compiler has __builtin_expect function], - [cc_cv_func_expect], - [ac_save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $cc_cv_werror" - AC_COMPILE_IFELSE([AC_LANG_SOURCE( - [int some_function() { - int a = 3; - return (int)__builtin_expect(a, 3); - }])], - [cc_cv_func_expect=yes], - [cc_cv_func_expect=no]) - CFLAGS="$ac_save_CFLAGS" - ]) - - AS_IF([test "x$cc_cv_func_expect" = "xyes"], - [AC_DEFINE([SUPPORT__BUILTIN_EXPECT], 1, - [Define this if the compiler supports __builtin_expect() function]) - $1], - [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_ALIGNED], [ - AC_REQUIRE([CC_CHECK_WERROR]) - AC_CACHE_CHECK([highest __attribute__ ((aligned ())) supported], - [cc_cv_attribute_aligned], - [ac_save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $cc_cv_werror" - for cc_attribute_align_try in 64 32 16 8 4 2; do - AC_COMPILE_IFELSE([AC_LANG_SOURCE([ - int main() { - static char c __attribute__ ((aligned($cc_attribute_align_try))) = 0; - return c; - }])], [cc_cv_attribute_aligned=$cc_attribute_align_try; break]) - done - CFLAGS="$ac_save_CFLAGS" - ]) - - if test "x$cc_cv_attribute_aligned" != "x"; then - AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX], [$cc_cv_attribute_aligned], - [Define the highest alignment supported]) - fi -]) diff --git a/m4/gettext.m4 b/m4/gettext.m4 deleted file mode 100644 index 8d1f066..0000000 --- a/m4/gettext.m4 +++ /dev/null @@ -1,401 +0,0 @@ -# gettext.m4 serial 66 (gettext-0.18.2) -dnl Copyright (C) 1995-2013 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. -dnl -dnl This file can can be used in projects which are not available under -dnl the GNU General Public License or the GNU Library General Public -dnl License but which still want to provide support for the GNU gettext -dnl functionality. -dnl Please note that the actual code of the GNU gettext library is covered -dnl by the GNU Library General Public License, and the rest of the GNU -dnl gettext package package is covered by the GNU General Public License. -dnl They are *not* in the public domain. - -dnl Authors: -dnl Ulrich Drepper , 1995-2000. -dnl Bruno Haible , 2000-2006, 2008-2010. - -dnl Macro to add for using GNU gettext. - -dnl Usage: AM_GNU_GETTEXT([INTLSYMBOL], [NEEDSYMBOL], [INTLDIR]). -dnl INTLSYMBOL can be one of 'external', 'no-libtool', 'use-libtool'. The -dnl default (if it is not specified or empty) is 'no-libtool'. -dnl INTLSYMBOL should be 'external' for packages with no intl directory, -dnl and 'no-libtool' or 'use-libtool' for packages with an intl directory. -dnl If INTLSYMBOL is 'use-libtool', then a libtool library -dnl $(top_builddir)/intl/libintl.la will be created (shared and/or static, -dnl depending on --{enable,disable}-{shared,static} and on the presence of -dnl AM-DISABLE-SHARED). If INTLSYMBOL is 'no-libtool', a static library -dnl $(top_builddir)/intl/libintl.a will be created. -dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext -dnl implementations (in libc or libintl) without the ngettext() function -dnl will be ignored. If NEEDSYMBOL is specified and is -dnl 'need-formatstring-macros', then GNU gettext implementations that don't -dnl support the ISO C 99 formatstring macros will be ignored. -dnl INTLDIR is used to find the intl libraries. If empty, -dnl the value '$(top_builddir)/intl/' is used. -dnl -dnl The result of the configuration is one of three cases: -dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled -dnl and used. -dnl Catalog format: GNU --> install in $(datadir) -dnl Catalog extension: .mo after installation, .gmo in source tree -dnl 2) GNU gettext has been found in the system's C library. -dnl Catalog format: GNU --> install in $(datadir) -dnl Catalog extension: .mo after installation, .gmo in source tree -dnl 3) No internationalization, always use English msgid. -dnl Catalog format: none -dnl Catalog extension: none -dnl If INTLSYMBOL is 'external', only cases 2 and 3 can occur. -dnl The use of .gmo is historical (it was needed to avoid overwriting the -dnl GNU format catalogs when building on a platform with an X/Open gettext), -dnl but we keep it in order not to force irrelevant filename changes on the -dnl maintainers. -dnl -AC_DEFUN([AM_GNU_GETTEXT], -[ - dnl Argument checking. - ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], , - [errprint([ERROR: invalid first argument to AM_GNU_GETTEXT -])])])])]) - ifelse(ifelse([$1], [], [old])[]ifelse([$1], [no-libtool], [old]), [old], - [AC_DIAGNOSE([obsolete], [Use of AM_GNU_GETTEXT without [external] argument is deprecated.])]) - ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], , - [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT -])])])]) - define([gt_included_intl], - ifelse([$1], [external], - ifdef([AM_GNU_GETTEXT_][INTL_SUBDIR], [yes], [no]), - [yes])) - define([gt_libtool_suffix_prefix], ifelse([$1], [use-libtool], [l], [])) - gt_NEEDS_INIT - AM_GNU_GETTEXT_NEED([$2]) - - AC_REQUIRE([AM_PO_SUBDIRS])dnl - ifelse(gt_included_intl, yes, [ - AC_REQUIRE([AM_INTL_SUBDIR])dnl - ]) - - dnl Prerequisites of AC_LIB_LINKFLAGS_BODY. - AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) - AC_REQUIRE([AC_LIB_RPATH]) - - dnl Sometimes libintl requires libiconv, so first search for libiconv. - dnl Ideally we would do this search only after the - dnl if test "$USE_NLS" = "yes"; then - dnl if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then - dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT - dnl the configure script would need to contain the same shell code - dnl again, outside any 'if'. There are two solutions: - dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'. - dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE. - dnl Since AC_PROVIDE_IFELSE is only in autoconf >= 2.52 and not - dnl documented, we avoid it. - ifelse(gt_included_intl, yes, , [ - AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) - ]) - - dnl Sometimes, on Mac OS X, libintl requires linking with CoreFoundation. - gt_INTL_MACOSX - - dnl Set USE_NLS. - AC_REQUIRE([AM_NLS]) - - ifelse(gt_included_intl, yes, [ - BUILD_INCLUDED_LIBINTL=no - USE_INCLUDED_LIBINTL=no - ]) - LIBINTL= - LTLIBINTL= - POSUB= - - dnl Add a version number to the cache macros. - case " $gt_needs " in - *" need-formatstring-macros "*) gt_api_version=3 ;; - *" need-ngettext "*) gt_api_version=2 ;; - *) gt_api_version=1 ;; - esac - gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc" - gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl" - - dnl If we use NLS figure out what method - if test "$USE_NLS" = "yes"; then - gt_use_preinstalled_gnugettext=no - ifelse(gt_included_intl, yes, [ - AC_MSG_CHECKING([whether included gettext is requested]) - AC_ARG_WITH([included-gettext], - [ --with-included-gettext use the GNU gettext library included here], - nls_cv_force_use_gnu_gettext=$withval, - nls_cv_force_use_gnu_gettext=no) - AC_MSG_RESULT([$nls_cv_force_use_gnu_gettext]) - - nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext" - if test "$nls_cv_force_use_gnu_gettext" != "yes"; then - ]) - dnl User does not insist on using GNU NLS library. Figure out what - dnl to use. If GNU gettext is available we use this. Else we have - dnl to fall back to GNU NLS library. - - if test $gt_api_version -ge 3; then - gt_revision_test_code=' -#ifndef __GNU_GETTEXT_SUPPORTED_REVISION -#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) -#endif -changequote(,)dnl -typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; -changequote([,])dnl -' - else - gt_revision_test_code= - fi - if test $gt_api_version -ge 2; then - gt_expression_test_code=' + * ngettext ("", "", 0)' - else - gt_expression_test_code= - fi - - AC_CACHE_CHECK([for GNU gettext in libc], [$gt_func_gnugettext_libc], - [AC_LINK_IFELSE( - [AC_LANG_PROGRAM( - [[ -#include -$gt_revision_test_code -extern int _nl_msg_cat_cntr; -extern int *_nl_domain_bindings; - ]], - [[ -bindtextdomain ("", ""); -return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings - ]])], - [eval "$gt_func_gnugettext_libc=yes"], - [eval "$gt_func_gnugettext_libc=no"])]) - - if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then - dnl Sometimes libintl requires libiconv, so first search for libiconv. - ifelse(gt_included_intl, yes, , [ - AM_ICONV_LINK - ]) - dnl Search for libintl and define LIBINTL, LTLIBINTL and INCINTL - dnl accordingly. Don't use AC_LIB_LINKFLAGS_BODY([intl],[iconv]) - dnl because that would add "-liconv" to LIBINTL and LTLIBINTL - dnl even if libiconv doesn't exist. - AC_LIB_LINKFLAGS_BODY([intl]) - AC_CACHE_CHECK([for GNU gettext in libintl], - [$gt_func_gnugettext_libintl], - [gt_save_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $INCINTL" - gt_save_LIBS="$LIBS" - LIBS="$LIBS $LIBINTL" - dnl Now see whether libintl exists and does not depend on libiconv. - AC_LINK_IFELSE( - [AC_LANG_PROGRAM( - [[ -#include -$gt_revision_test_code -extern int _nl_msg_cat_cntr; -extern -#ifdef __cplusplus -"C" -#endif -const char *_nl_expand_alias (const char *); - ]], - [[ -bindtextdomain ("", ""); -return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") - ]])], - [eval "$gt_func_gnugettext_libintl=yes"], - [eval "$gt_func_gnugettext_libintl=no"]) - dnl Now see whether libintl exists and depends on libiconv. - if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then - LIBS="$LIBS $LIBICONV" - AC_LINK_IFELSE( - [AC_LANG_PROGRAM( - [[ -#include -$gt_revision_test_code -extern int _nl_msg_cat_cntr; -extern -#ifdef __cplusplus -"C" -#endif -const char *_nl_expand_alias (const char *); - ]], - [[ -bindtextdomain ("", ""); -return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") - ]])], - [LIBINTL="$LIBINTL $LIBICONV" - LTLIBINTL="$LTLIBINTL $LTLIBICONV" - eval "$gt_func_gnugettext_libintl=yes" - ]) - fi - CPPFLAGS="$gt_save_CPPFLAGS" - LIBS="$gt_save_LIBS"]) - fi - - dnl If an already present or preinstalled GNU gettext() is found, - dnl use it. But if this macro is used in GNU gettext, and GNU - dnl gettext is already preinstalled in libintl, we update this - dnl libintl. (Cf. the install rule in intl/Makefile.in.) - if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \ - || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \ - && test "$PACKAGE" != gettext-runtime \ - && test "$PACKAGE" != gettext-tools; }; then - gt_use_preinstalled_gnugettext=yes - else - dnl Reset the values set by searching for libintl. - LIBINTL= - LTLIBINTL= - INCINTL= - fi - - ifelse(gt_included_intl, yes, [ - if test "$gt_use_preinstalled_gnugettext" != "yes"; then - dnl GNU gettext is not found in the C library. - dnl Fall back on included GNU gettext library. - nls_cv_use_gnu_gettext=yes - fi - fi - - if test "$nls_cv_use_gnu_gettext" = "yes"; then - dnl Mark actions used to generate GNU NLS library. - BUILD_INCLUDED_LIBINTL=yes - USE_INCLUDED_LIBINTL=yes - LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV $LIBTHREAD" - LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV $LTLIBTHREAD" - LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'` - fi - - CATOBJEXT= - if test "$gt_use_preinstalled_gnugettext" = "yes" \ - || test "$nls_cv_use_gnu_gettext" = "yes"; then - dnl Mark actions to use GNU gettext tools. - CATOBJEXT=.gmo - fi - ]) - - if test -n "$INTL_MACOSX_LIBS"; then - if test "$gt_use_preinstalled_gnugettext" = "yes" \ - || test "$nls_cv_use_gnu_gettext" = "yes"; then - dnl Some extra flags are needed during linking. - LIBINTL="$LIBINTL $INTL_MACOSX_LIBS" - LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS" - fi - fi - - if test "$gt_use_preinstalled_gnugettext" = "yes" \ - || test "$nls_cv_use_gnu_gettext" = "yes"; then - AC_DEFINE([ENABLE_NLS], [1], - [Define to 1 if translation of program messages to the user's native language - is requested.]) - else - USE_NLS=no - fi - fi - - AC_MSG_CHECKING([whether to use NLS]) - AC_MSG_RESULT([$USE_NLS]) - if test "$USE_NLS" = "yes"; then - AC_MSG_CHECKING([where the gettext function comes from]) - if test "$gt_use_preinstalled_gnugettext" = "yes"; then - if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then - gt_source="external libintl" - else - gt_source="libc" - fi - else - gt_source="included intl directory" - fi - AC_MSG_RESULT([$gt_source]) - fi - - if test "$USE_NLS" = "yes"; then - - if test "$gt_use_preinstalled_gnugettext" = "yes"; then - if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then - AC_MSG_CHECKING([how to link with libintl]) - AC_MSG_RESULT([$LIBINTL]) - AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCINTL]) - fi - - dnl For backward compatibility. Some packages may be using this. - AC_DEFINE([HAVE_GETTEXT], [1], - [Define if the GNU gettext() function is already present or preinstalled.]) - AC_DEFINE([HAVE_DCGETTEXT], [1], - [Define if the GNU dcgettext() function is already present or preinstalled.]) - fi - - dnl We need to process the po/ directory. - POSUB=po - fi - - ifelse(gt_included_intl, yes, [ - dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL - dnl to 'yes' because some of the testsuite requires it. - if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then - BUILD_INCLUDED_LIBINTL=yes - fi - - dnl Make all variables we use known to autoconf. - AC_SUBST([BUILD_INCLUDED_LIBINTL]) - AC_SUBST([USE_INCLUDED_LIBINTL]) - AC_SUBST([CATOBJEXT]) - - dnl For backward compatibility. Some configure.ins may be using this. - nls_cv_header_intl= - nls_cv_header_libgt= - - dnl For backward compatibility. Some Makefiles may be using this. - DATADIRNAME=share - AC_SUBST([DATADIRNAME]) - - dnl For backward compatibility. Some Makefiles may be using this. - INSTOBJEXT=.mo - AC_SUBST([INSTOBJEXT]) - - dnl For backward compatibility. Some Makefiles may be using this. - GENCAT=gencat - AC_SUBST([GENCAT]) - - dnl For backward compatibility. Some Makefiles may be using this. - INTLOBJS= - if test "$USE_INCLUDED_LIBINTL" = yes; then - INTLOBJS="\$(GETTOBJS)" - fi - AC_SUBST([INTLOBJS]) - - dnl Enable libtool support if the surrounding package wishes it. - INTL_LIBTOOL_SUFFIX_PREFIX=gt_libtool_suffix_prefix - AC_SUBST([INTL_LIBTOOL_SUFFIX_PREFIX]) - ]) - - dnl For backward compatibility. Some Makefiles may be using this. - INTLLIBS="$LIBINTL" - AC_SUBST([INTLLIBS]) - - dnl Make all documented variables known to autoconf. - AC_SUBST([LIBINTL]) - AC_SUBST([LTLIBINTL]) - AC_SUBST([POSUB]) -]) - - -dnl gt_NEEDS_INIT ensures that the gt_needs variable is initialized. -m4_define([gt_NEEDS_INIT], -[ - m4_divert_text([DEFAULTS], [gt_needs=]) - m4_define([gt_NEEDS_INIT], []) -]) - - -dnl Usage: AM_GNU_GETTEXT_NEED([NEEDSYMBOL]) -AC_DEFUN([AM_GNU_GETTEXT_NEED], -[ - m4_divert_text([INIT_PREPARE], [gt_needs="$gt_needs $1"]) -]) - - -dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version]) -AC_DEFUN([AM_GNU_GETTEXT_VERSION], []) diff --git a/m4/glibtests.m4 b/m4/glibtests.m4 deleted file mode 100644 index 7d5920a..0000000 --- a/m4/glibtests.m4 +++ /dev/null @@ -1,28 +0,0 @@ -dnl GLIB_TESTS -dnl - -AC_DEFUN([GLIB_TESTS], -[ - AC_ARG_ENABLE(installed-tests, - AS_HELP_STRING([--enable-installed-tests], - [Enable installation of some test cases]), - [case ${enableval} in - yes) ENABLE_INSTALLED_TESTS="1" ;; - no) ENABLE_INSTALLED_TESTS="" ;; - *) AC_MSG_ERROR([bad value ${enableval} for --enable-installed-tests]) ;; - esac]) - AM_CONDITIONAL([ENABLE_INSTALLED_TESTS], test "$ENABLE_INSTALLED_TESTS" = "1") - AC_ARG_ENABLE(always-build-tests, - AS_HELP_STRING([--enable-always-build-tests], - [Enable always building tests during 'make all']), - [case ${enableval} in - yes) ENABLE_ALWAYS_BUILD_TESTS="1" ;; - no) ENABLE_ALWAYS_BUILD_TESTS="" ;; - *) AC_MSG_ERROR([bad value ${enableval} for --enable-always-build-tests]) ;; - esac]) - AM_CONDITIONAL([ENABLE_ALWAYS_BUILD_TESTS], test "$ENABLE_ALWAYS_BUILD_TESTS" = "1") - if test "$ENABLE_INSTALLED_TESTS" = "1"; then - AC_SUBST(installed_test_metadir, [${datadir}/installed-tests/]AC_PACKAGE_NAME) - AC_SUBST(installed_testdir, [${libexecdir}/installed-tests/]AC_PACKAGE_NAME) - fi -]) diff --git a/m4/gtk-doc.m4 b/m4/gtk-doc.m4 deleted file mode 100644 index 2d12f01..0000000 --- a/m4/gtk-doc.m4 +++ /dev/null @@ -1,113 +0,0 @@ -# -*- mode: autoconf -*- -# -# gtk-doc.m4 - configure macro to check for gtk-doc -# Copyright (C) 2003 James Henstridge -# 2007-2017 Stefan Sauer -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . -# -# As a special exception, the above copyright owner gives unlimited -# permission to copy, distribute and modify the configure scripts that -# are the output of Autoconf when processing the Macro. You need not -# follow the terms of the GNU General Public License when using or -# distributing such scripts, even though portions of the text of the -# Macro appear in them. The GNU General Public License (GPL) does govern -# all other use of the material that constitutes the Autoconf Macro. - -# serial 2 - -dnl Usage: -dnl GTK_DOC_CHECK([minimum-gtk-doc-version]) -AC_DEFUN([GTK_DOC_CHECK], -[ - AC_REQUIRE([PKG_PROG_PKG_CONFIG]) - AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first - AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first - - ifelse([$1],[],[gtk_doc_requires="gtk-doc"],[gtk_doc_requires="gtk-doc >= $1"]) - AC_MSG_CHECKING([for gtk-doc]) - PKG_CHECK_EXISTS([$gtk_doc_requires],[have_gtk_doc=yes],[have_gtk_doc=no]) - AC_MSG_RESULT($have_gtk_doc) - - if test "$have_gtk_doc" = "no"; then - AC_MSG_WARN([ - You will not be able to create source packages with 'make dist' - because $gtk_doc_requires is not found.]) - fi - - dnl check for tools we added during development - dnl Use AC_CHECK_PROG to avoid the check target using an absolute path that - dnl may not be writable by the user. Currently, automake requires that the - dnl test name must end in '.test'. - dnl https://bugzilla.gnome.org/show_bug.cgi?id=701638 - AC_CHECK_PROG([GTKDOC_CHECK],[gtkdoc-check],[gtkdoc-check.test]) - AC_PATH_PROG([GTKDOC_CHECK_PATH],[gtkdoc-check]) - AC_PATH_PROGS([GTKDOC_REBASE],[gtkdoc-rebase],[true]) - AC_PATH_PROG([GTKDOC_MKPDF],[gtkdoc-mkpdf]) - - dnl for overriding the documentation installation directory - AC_ARG_WITH([html-dir], - AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),, - [with_html_dir='${datadir}/gtk-doc/html']) - HTML_DIR="$with_html_dir" - AC_SUBST([HTML_DIR]) - - dnl enable/disable documentation building - AC_ARG_ENABLE([gtk-doc], - AS_HELP_STRING([--enable-gtk-doc], - [use gtk-doc to build documentation [[default=no]]]),, - [enable_gtk_doc=no]) - - AC_MSG_CHECKING([whether to build gtk-doc documentation]) - AC_MSG_RESULT($enable_gtk_doc) - - if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then - AC_MSG_ERROR([ - You must have $gtk_doc_requires installed to build documentation for - $PACKAGE_NAME. Please install gtk-doc or disable building the - documentation by adding '--disable-gtk-doc' to '[$]0'.]) - fi - - dnl don't check for glib if we build glib - if test "x$PACKAGE_NAME" != "xglib"; then - dnl don't fail if someone does not have glib - PKG_CHECK_MODULES(GTKDOC_DEPS, glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0,,[:]) - fi - - dnl enable/disable output formats - AC_ARG_ENABLE([gtk-doc-html], - AS_HELP_STRING([--enable-gtk-doc-html], - [build documentation in html format [[default=yes]]]),, - [enable_gtk_doc_html=yes]) - AC_ARG_ENABLE([gtk-doc-pdf], - AS_HELP_STRING([--enable-gtk-doc-pdf], - [build documentation in pdf format [[default=no]]]),, - [enable_gtk_doc_pdf=no]) - - if test -z "$GTKDOC_MKPDF"; then - enable_gtk_doc_pdf=no - fi - - if test -z "$AM_DEFAULT_VERBOSITY"; then - AM_DEFAULT_VERBOSITY=1 - fi - AC_SUBST([AM_DEFAULT_VERBOSITY]) - - AM_CONDITIONAL([HAVE_GTK_DOC], [test x$have_gtk_doc = xyes]) - AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes]) - AM_CONDITIONAL([GTK_DOC_BUILD_HTML], [test x$enable_gtk_doc_html = xyes]) - AM_CONDITIONAL([GTK_DOC_BUILD_PDF], [test x$enable_gtk_doc_pdf = xyes]) - AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"]) - AM_CONDITIONAL([GTK_DOC_USE_REBASE], [test -n "$GTKDOC_REBASE"]) -]) diff --git a/m4/iconv.m4 b/m4/iconv.m4 deleted file mode 100644 index a503646..0000000 --- a/m4/iconv.m4 +++ /dev/null @@ -1,268 +0,0 @@ -# iconv.m4 serial 18 (gettext-0.18.2) -dnl Copyright (C) 2000-2002, 2007-2013 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -dnl From Bruno Haible. - -AC_DEFUN([AM_ICONV_LINKFLAGS_BODY], -[ - dnl Prerequisites of AC_LIB_LINKFLAGS_BODY. - AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) - AC_REQUIRE([AC_LIB_RPATH]) - - dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV - dnl accordingly. - AC_LIB_LINKFLAGS_BODY([iconv]) -]) - -AC_DEFUN([AM_ICONV_LINK], -[ - dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and - dnl those with the standalone portable GNU libiconv installed). - AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles - - dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV - dnl accordingly. - AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) - - dnl Add $INCICONV to CPPFLAGS before performing the following checks, - dnl because if the user has installed libiconv and not disabled its use - dnl via --without-libiconv-prefix, he wants to use it. The first - dnl AC_LINK_IFELSE will then fail, the second AC_LINK_IFELSE will succeed. - am_save_CPPFLAGS="$CPPFLAGS" - AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV]) - - AC_CACHE_CHECK([for iconv], [am_cv_func_iconv], [ - am_cv_func_iconv="no, consider installing GNU libiconv" - am_cv_lib_iconv=no - AC_LINK_IFELSE( - [AC_LANG_PROGRAM( - [[ -#include -#include - ]], - [[iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd);]])], - [am_cv_func_iconv=yes]) - if test "$am_cv_func_iconv" != yes; then - am_save_LIBS="$LIBS" - LIBS="$LIBS $LIBICONV" - AC_LINK_IFELSE( - [AC_LANG_PROGRAM( - [[ -#include -#include - ]], - [[iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd);]])], - [am_cv_lib_iconv=yes] - [am_cv_func_iconv=yes]) - LIBS="$am_save_LIBS" - fi - ]) - if test "$am_cv_func_iconv" = yes; then - AC_CACHE_CHECK([for working iconv], [am_cv_func_iconv_works], [ - dnl This tests against bugs in AIX 5.1, AIX 6.1..7.1, HP-UX 11.11, - dnl Solaris 10. - am_save_LIBS="$LIBS" - if test $am_cv_lib_iconv = yes; then - LIBS="$LIBS $LIBICONV" - fi - AC_RUN_IFELSE( - [AC_LANG_SOURCE([[ -#include -#include -int main () -{ - int result = 0; - /* Test against AIX 5.1 bug: Failures are not distinguishable from successful - returns. */ - { - iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8"); - if (cd_utf8_to_88591 != (iconv_t)(-1)) - { - static const char input[] = "\342\202\254"; /* EURO SIGN */ - char buf[10]; - const char *inptr = input; - size_t inbytesleft = strlen (input); - char *outptr = buf; - size_t outbytesleft = sizeof (buf); - size_t res = iconv (cd_utf8_to_88591, - (char **) &inptr, &inbytesleft, - &outptr, &outbytesleft); - if (res == 0) - result |= 1; - iconv_close (cd_utf8_to_88591); - } - } - /* Test against Solaris 10 bug: Failures are not distinguishable from - successful returns. */ - { - iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646"); - if (cd_ascii_to_88591 != (iconv_t)(-1)) - { - static const char input[] = "\263"; - char buf[10]; - const char *inptr = input; - size_t inbytesleft = strlen (input); - char *outptr = buf; - size_t outbytesleft = sizeof (buf); - size_t res = iconv (cd_ascii_to_88591, - (char **) &inptr, &inbytesleft, - &outptr, &outbytesleft); - if (res == 0) - result |= 2; - iconv_close (cd_ascii_to_88591); - } - } - /* Test against AIX 6.1..7.1 bug: Buffer overrun. */ - { - iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); - if (cd_88591_to_utf8 != (iconv_t)(-1)) - { - static const char input[] = "\304"; - static char buf[2] = { (char)0xDE, (char)0xAD }; - const char *inptr = input; - size_t inbytesleft = 1; - char *outptr = buf; - size_t outbytesleft = 1; - size_t res = iconv (cd_88591_to_utf8, - (char **) &inptr, &inbytesleft, - &outptr, &outbytesleft); - if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) - result |= 4; - iconv_close (cd_88591_to_utf8); - } - } -#if 0 /* This bug could be worked around by the caller. */ - /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */ - { - iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591"); - if (cd_88591_to_utf8 != (iconv_t)(-1)) - { - static const char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; - char buf[50]; - const char *inptr = input; - size_t inbytesleft = strlen (input); - char *outptr = buf; - size_t outbytesleft = sizeof (buf); - size_t res = iconv (cd_88591_to_utf8, - (char **) &inptr, &inbytesleft, - &outptr, &outbytesleft); - if ((int)res > 0) - result |= 8; - iconv_close (cd_88591_to_utf8); - } - } -#endif - /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is - provided. */ - if (/* Try standardized names. */ - iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1) - /* Try IRIX, OSF/1 names. */ - && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1) - /* Try AIX names. */ - && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1) - /* Try HP-UX names. */ - && iconv_open ("utf8", "eucJP") == (iconv_t)(-1)) - result |= 16; - return result; -}]])], - [am_cv_func_iconv_works=yes], - [am_cv_func_iconv_works=no], - [ -changequote(,)dnl - case "$host_os" in - aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; - *) am_cv_func_iconv_works="guessing yes" ;; - esac -changequote([,])dnl - ]) - LIBS="$am_save_LIBS" - ]) - case "$am_cv_func_iconv_works" in - *no) am_func_iconv=no am_cv_lib_iconv=no ;; - *) am_func_iconv=yes ;; - esac - else - am_func_iconv=no am_cv_lib_iconv=no - fi - if test "$am_func_iconv" = yes; then - AC_DEFINE([HAVE_ICONV], [1], - [Define if you have the iconv() function and it works.]) - fi - if test "$am_cv_lib_iconv" = yes; then - AC_MSG_CHECKING([how to link with libiconv]) - AC_MSG_RESULT([$LIBICONV]) - else - dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV - dnl either. - CPPFLAGS="$am_save_CPPFLAGS" - LIBICONV= - LTLIBICONV= - fi - AC_SUBST([LIBICONV]) - AC_SUBST([LTLIBICONV]) -]) - -dnl Define AM_ICONV using AC_DEFUN_ONCE for Autoconf >= 2.64, in order to -dnl avoid warnings like -dnl "warning: AC_REQUIRE: `AM_ICONV' was expanded before it was required". -dnl This is tricky because of the way 'aclocal' is implemented: -dnl - It requires defining an auxiliary macro whose name ends in AC_DEFUN. -dnl Otherwise aclocal's initial scan pass would miss the macro definition. -dnl - It requires a line break inside the AC_DEFUN_ONCE and AC_DEFUN expansions. -dnl Otherwise aclocal would emit many "Use of uninitialized value $1" -dnl warnings. -m4_define([gl_iconv_AC_DEFUN], - m4_version_prereq([2.64], - [[AC_DEFUN_ONCE( - [$1], [$2])]], - [m4_ifdef([gl_00GNULIB], - [[AC_DEFUN_ONCE( - [$1], [$2])]], - [[AC_DEFUN( - [$1], [$2])]])])) -gl_iconv_AC_DEFUN([AM_ICONV], -[ - AM_ICONV_LINK - if test "$am_cv_func_iconv" = yes; then - AC_MSG_CHECKING([for iconv declaration]) - AC_CACHE_VAL([am_cv_proto_iconv], [ - AC_COMPILE_IFELSE( - [AC_LANG_PROGRAM( - [[ -#include -#include -extern -#ifdef __cplusplus -"C" -#endif -#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) -size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); -#else -size_t iconv(); -#endif - ]], - [[]])], - [am_cv_proto_iconv_arg1=""], - [am_cv_proto_iconv_arg1="const"]) - am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"]) - am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` - AC_MSG_RESULT([ - $am_cv_proto_iconv]) - AC_DEFINE_UNQUOTED([ICONV_CONST], [$am_cv_proto_iconv_arg1], - [Define as const if the declaration of iconv() needs const.]) - dnl Also substitute ICONV_CONST in the gnulib generated . - m4_ifdef([gl_ICONV_H_DEFAULTS], - [AC_REQUIRE([gl_ICONV_H_DEFAULTS]) - if test -n "$am_cv_proto_iconv_arg1"; then - ICONV_CONST="const" - fi - ]) - fi -]) diff --git a/m4/intlmacosx.m4 b/m4/intlmacosx.m4 deleted file mode 100644 index ab97d39..0000000 --- a/m4/intlmacosx.m4 +++ /dev/null @@ -1,56 +0,0 @@ -# intlmacosx.m4 serial 5 (gettext-0.18.2) -dnl Copyright (C) 2004-2013 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. -dnl -dnl This file can can be used in projects which are not available under -dnl the GNU General Public License or the GNU Library General Public -dnl License but which still want to provide support for the GNU gettext -dnl functionality. -dnl Please note that the actual code of the GNU gettext library is covered -dnl by the GNU Library General Public License, and the rest of the GNU -dnl gettext package package is covered by the GNU General Public License. -dnl They are *not* in the public domain. - -dnl Checks for special options needed on Mac OS X. -dnl Defines INTL_MACOSX_LIBS. -AC_DEFUN([gt_INTL_MACOSX], -[ - dnl Check for API introduced in Mac OS X 10.2. - AC_CACHE_CHECK([for CFPreferencesCopyAppValue], - [gt_cv_func_CFPreferencesCopyAppValue], - [gt_save_LIBS="$LIBS" - LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" - AC_LINK_IFELSE( - [AC_LANG_PROGRAM( - [[#include ]], - [[CFPreferencesCopyAppValue(NULL, NULL)]])], - [gt_cv_func_CFPreferencesCopyAppValue=yes], - [gt_cv_func_CFPreferencesCopyAppValue=no]) - LIBS="$gt_save_LIBS"]) - if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then - AC_DEFINE([HAVE_CFPREFERENCESCOPYAPPVALUE], [1], - [Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in the CoreFoundation framework.]) - fi - dnl Check for API introduced in Mac OS X 10.3. - AC_CACHE_CHECK([for CFLocaleCopyCurrent], [gt_cv_func_CFLocaleCopyCurrent], - [gt_save_LIBS="$LIBS" - LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" - AC_LINK_IFELSE( - [AC_LANG_PROGRAM( - [[#include ]], - [[CFLocaleCopyCurrent();]])], - [gt_cv_func_CFLocaleCopyCurrent=yes], - [gt_cv_func_CFLocaleCopyCurrent=no]) - LIBS="$gt_save_LIBS"]) - if test $gt_cv_func_CFLocaleCopyCurrent = yes; then - AC_DEFINE([HAVE_CFLOCALECOPYCURRENT], [1], - [Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the CoreFoundation framework.]) - fi - INTL_MACOSX_LIBS= - if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then - INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" - fi - AC_SUBST([INTL_MACOSX_LIBS]) -]) diff --git a/m4/lib-ld.m4 b/m4/lib-ld.m4 deleted file mode 100644 index c145e47..0000000 --- a/m4/lib-ld.m4 +++ /dev/null @@ -1,119 +0,0 @@ -# lib-ld.m4 serial 6 -dnl Copyright (C) 1996-2003, 2009-2013 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -dnl Subroutines of libtool.m4, -dnl with replacements s/_*LT_PATH/AC_LIB_PROG/ and s/lt_/acl_/ to avoid -dnl collision with libtool.m4. - -dnl From libtool-2.4. Sets the variable with_gnu_ld to yes or no. -AC_DEFUN([AC_LIB_PROG_LD_GNU], -[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], [acl_cv_prog_gnu_ld], -[# I'd rather use --version here, but apparently some GNU lds only accept -v. -case `$LD -v 2>&1 /dev/null 2>&1 \ - && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - || PATH_SEPARATOR=';' - } -fi - -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - AC_MSG_CHECKING([for ld used by $CC]) - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [[\\/]]* | ?:[[\\/]]*) - re_direlt='/[[^/]][[^/]]*/\.\./' - # Canonicalize the pathname of ld - ac_prog=`echo "$ac_prog"| sed 's%\\\\%/%g'` - while echo "$ac_prog" | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - AC_MSG_CHECKING([for GNU ld]) -else - AC_MSG_CHECKING([for non-GNU ld]) -fi -AC_CACHE_VAL([acl_cv_path_LD], -[if test -z "$LD"; then - acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS="$acl_save_ifs" - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - acl_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some variants of GNU ld only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - case `"$acl_cv_path_LD" -v 2>&1 = 1.10 to complain if config.rpath is missing. - m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])]) - AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS - AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld - AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host - AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir - AC_CACHE_CHECK([for shared library run path origin], [acl_cv_rpath], [ - CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ - ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh - . ./conftest.sh - rm -f ./conftest.sh - acl_cv_rpath=done - ]) - wl="$acl_cv_wl" - acl_libext="$acl_cv_libext" - acl_shlibext="$acl_cv_shlibext" - acl_libname_spec="$acl_cv_libname_spec" - acl_library_names_spec="$acl_cv_library_names_spec" - acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" - acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" - acl_hardcode_direct="$acl_cv_hardcode_direct" - acl_hardcode_minus_L="$acl_cv_hardcode_minus_L" - dnl Determine whether the user wants rpath handling at all. - AC_ARG_ENABLE([rpath], - [ --disable-rpath do not hardcode runtime library paths], - :, enable_rpath=yes) -]) - -dnl AC_LIB_FROMPACKAGE(name, package) -dnl declares that libname comes from the given package. The configure file -dnl will then not have a --with-libname-prefix option but a -dnl --with-package-prefix option. Several libraries can come from the same -dnl package. This declaration must occur before an AC_LIB_LINKFLAGS or similar -dnl macro call that searches for libname. -AC_DEFUN([AC_LIB_FROMPACKAGE], -[ - pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-], - [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) - define([acl_frompackage_]NAME, [$2]) - popdef([NAME]) - pushdef([PACK],[$2]) - pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-], - [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) - define([acl_libsinpackage_]PACKUP, - m4_ifdef([acl_libsinpackage_]PACKUP, [m4_defn([acl_libsinpackage_]PACKUP)[, ]],)[lib$1]) - popdef([PACKUP]) - popdef([PACK]) -]) - -dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and -dnl the libraries corresponding to explicit and implicit dependencies. -dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables. -dnl Also, sets the LIB${NAME}_PREFIX variable to nonempty if libname was found -dnl in ${LIB${NAME}_PREFIX}/$acl_libdirstem. -AC_DEFUN([AC_LIB_LINKFLAGS_BODY], -[ - AC_REQUIRE([AC_LIB_PREPARE_MULTILIB]) - pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-], - [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) - pushdef([PACK],[m4_ifdef([acl_frompackage_]NAME, [acl_frompackage_]NAME, lib[$1])]) - pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-], - [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) - pushdef([PACKLIBS],[m4_ifdef([acl_frompackage_]NAME, [acl_libsinpackage_]PACKUP, lib[$1])]) - dnl Autoconf >= 2.61 supports dots in --with options. - pushdef([P_A_C_K],[m4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]),[2.61]),[-1],[m4_translit(PACK,[.],[_])],PACK)]) - dnl By default, look in $includedir and $libdir. - use_additional=yes - AC_LIB_WITH_FINAL_PREFIX([ - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - ]) - AC_ARG_WITH(P_A_C_K[-prefix], -[[ --with-]]P_A_C_K[[-prefix[=DIR] search for ]PACKLIBS[ in DIR/include and DIR/lib - --without-]]P_A_C_K[[-prefix don't search for ]PACKLIBS[ in includedir and libdir]], -[ - if test "X$withval" = "Xno"; then - use_additional=no - else - if test "X$withval" = "X"; then - AC_LIB_WITH_FINAL_PREFIX([ - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - ]) - else - additional_includedir="$withval/include" - additional_libdir="$withval/$acl_libdirstem" - if test "$acl_libdirstem2" != "$acl_libdirstem" \ - && ! test -d "$withval/$acl_libdirstem"; then - additional_libdir="$withval/$acl_libdirstem2" - fi - fi - fi -]) - dnl Search the library and its dependencies in $additional_libdir and - dnl $LDFLAGS. Using breadth-first-seach. - LIB[]NAME= - LTLIB[]NAME= - INC[]NAME= - LIB[]NAME[]_PREFIX= - dnl HAVE_LIB${NAME} is an indicator that LIB${NAME}, LTLIB${NAME} have been - dnl computed. So it has to be reset here. - HAVE_LIB[]NAME= - rpathdirs= - ltrpathdirs= - names_already_handled= - names_next_round='$1 $2' - while test -n "$names_next_round"; do - names_this_round="$names_next_round" - names_next_round= - for name in $names_this_round; do - already_handled= - for n in $names_already_handled; do - if test "$n" = "$name"; then - already_handled=yes - break - fi - done - if test -z "$already_handled"; then - names_already_handled="$names_already_handled $name" - dnl See if it was already located by an earlier AC_LIB_LINKFLAGS - dnl or AC_LIB_HAVE_LINKFLAGS call. - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./+-|ABCDEFGHIJKLMNOPQRSTUVWXYZ____|'` - eval value=\"\$HAVE_LIB$uppername\" - if test -n "$value"; then - if test "$value" = yes; then - eval value=\"\$LIB$uppername\" - test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value" - eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value" - else - dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined - dnl that this library doesn't exist. So just drop it. - : - fi - else - dnl Search the library lib$name in $additional_libdir and $LDFLAGS - dnl and the already constructed $LIBNAME/$LTLIBNAME. - found_dir= - found_la= - found_so= - found_a= - eval libname=\"$acl_libname_spec\" # typically: libname=lib$name - if test -n "$acl_shlibext"; then - shrext=".$acl_shlibext" # typically: shrext=.so - else - shrext= - fi - if test $use_additional = yes; then - dir="$additional_libdir" - dnl The same code as in the loop below: - dnl First look for a shared library. - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - dnl Then look for a static library. - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - fi - if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIB[]NAME; do - AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) - case "$x" in - -L*) - dir=`echo "X$x" | sed -e 's/^X-L//'` - dnl First look for a shared library. - if test -n "$acl_shlibext"; then - if test -f "$dir/$libname$shrext"; then - found_dir="$dir" - found_so="$dir/$libname$shrext" - else - if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then - ver=`(cd "$dir" && \ - for f in "$libname$shrext".*; do echo "$f"; done \ - | sed -e "s,^$libname$shrext\\\\.,," \ - | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ - | sed 1q ) 2>/dev/null` - if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then - found_dir="$dir" - found_so="$dir/$libname$shrext.$ver" - fi - else - eval library_names=\"$acl_library_names_spec\" - for f in $library_names; do - if test -f "$dir/$f"; then - found_dir="$dir" - found_so="$dir/$f" - break - fi - done - fi - fi - fi - dnl Then look for a static library. - if test "X$found_dir" = "X"; then - if test -f "$dir/$libname.$acl_libext"; then - found_dir="$dir" - found_a="$dir/$libname.$acl_libext" - fi - fi - if test "X$found_dir" != "X"; then - if test -f "$dir/$libname.la"; then - found_la="$dir/$libname.la" - fi - fi - ;; - esac - if test "X$found_dir" != "X"; then - break - fi - done - fi - if test "X$found_dir" != "X"; then - dnl Found the library. - LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name" - if test "X$found_so" != "X"; then - dnl Linking with a shared library. We attempt to hardcode its - dnl directory into the executable's runpath, unless it's the - dnl standard /usr/lib. - if test "$enable_rpath" = no \ - || test "X$found_dir" = "X/usr/$acl_libdirstem" \ - || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then - dnl No hardcoding is needed. - LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" - else - dnl Use an explicit option to hardcode DIR into the resulting - dnl binary. - dnl Potentially add DIR to ltrpathdirs. - dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $found_dir" - fi - dnl The hardcoding into $LIBNAME is system dependent. - if test "$acl_hardcode_direct" = yes; then - dnl Using DIR/libNAME.so during linking hardcodes DIR into the - dnl resulting binary. - LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" - else - if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then - dnl Use an explicit option to hardcode DIR into the resulting - dnl binary. - LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" - dnl Potentially add DIR to rpathdirs. - dnl The rpathdirs will be appended to $LIBNAME at the end. - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $found_dir" - fi - else - dnl Rely on "-L$found_dir". - dnl But don't add it if it's already contained in the LDFLAGS - dnl or the already constructed $LIBNAME - haveit= - for x in $LDFLAGS $LIB[]NAME; do - AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) - if test "X$x" = "X-L$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir" - fi - if test "$acl_hardcode_minus_L" != no; then - dnl FIXME: Not sure whether we should use - dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" - dnl here. - LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" - else - dnl We cannot use $acl_hardcode_runpath_var and LD_RUN_PATH - dnl here, because this doesn't fit in flags passed to the - dnl compiler. So give up. No hardcoding. This affects only - dnl very old systems. - dnl FIXME: Not sure whether we should use - dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" - dnl here. - LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" - fi - fi - fi - fi - else - if test "X$found_a" != "X"; then - dnl Linking with a static library. - LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a" - else - dnl We shouldn't come here, but anyway it's good to have a - dnl fallback. - LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name" - fi - fi - dnl Assume the include files are nearby. - additional_includedir= - case "$found_dir" in - */$acl_libdirstem | */$acl_libdirstem/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` - if test "$name" = '$1'; then - LIB[]NAME[]_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - */$acl_libdirstem2 | */$acl_libdirstem2/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` - if test "$name" = '$1'; then - LIB[]NAME[]_PREFIX="$basedir" - fi - additional_includedir="$basedir/include" - ;; - esac - if test "X$additional_includedir" != "X"; then - dnl Potentially add $additional_includedir to $INCNAME. - dnl But don't add it - dnl 1. if it's the standard /usr/include, - dnl 2. if it's /usr/local/include and we are using GCC on Linux, - dnl 3. if it's already present in $CPPFLAGS or the already - dnl constructed $INCNAME, - dnl 4. if it doesn't exist as a directory. - if test "X$additional_includedir" != "X/usr/include"; then - haveit= - if test "X$additional_includedir" = "X/usr/local/include"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - for x in $CPPFLAGS $INC[]NAME; do - AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) - if test "X$x" = "X-I$additional_includedir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_includedir"; then - dnl Really add $additional_includedir to $INCNAME. - INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir" - fi - fi - fi - fi - fi - dnl Look for dependencies. - if test -n "$found_la"; then - dnl Read the .la file. It defines the variables - dnl dlname, library_names, old_library, dependency_libs, current, - dnl age, revision, installed, dlopen, dlpreopen, libdir. - save_libdir="$libdir" - case "$found_la" in - */* | *\\*) . "$found_la" ;; - *) . "./$found_la" ;; - esac - libdir="$save_libdir" - dnl We use only dependency_libs. - for dep in $dependency_libs; do - case "$dep" in - -L*) - additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME. - dnl But don't add it - dnl 1. if it's the standard /usr/lib, - dnl 2. if it's /usr/local/lib and we are using GCC on Linux, - dnl 3. if it's already present in $LDFLAGS or the already - dnl constructed $LIBNAME, - dnl 4. if it doesn't exist as a directory. - if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \ - && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then - haveit= - if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ - || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - haveit= - for x in $LDFLAGS $LIB[]NAME; do - AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - dnl Really add $additional_libdir to $LIBNAME. - LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir" - fi - fi - haveit= - for x in $LDFLAGS $LTLIB[]NAME; do - AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - dnl Really add $additional_libdir to $LTLIBNAME. - LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir" - fi - fi - fi - fi - ;; - -R*) - dir=`echo "X$dep" | sed -e 's/^X-R//'` - if test "$enable_rpath" != no; then - dnl Potentially add DIR to rpathdirs. - dnl The rpathdirs will be appended to $LIBNAME at the end. - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $dir" - fi - dnl Potentially add DIR to ltrpathdirs. - dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $dir" - fi - fi - ;; - -l*) - dnl Handle this in the next round. - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` - ;; - *.la) - dnl Handle this in the next round. Throw away the .la's - dnl directory; it is already contained in a preceding -L - dnl option. - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` - ;; - *) - dnl Most likely an immediate library name. - LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep" - LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep" - ;; - esac - done - fi - else - dnl Didn't find the library; assume it is in the system directories - dnl known to the linker and runtime loader. (All the system - dnl directories known to the linker should also be known to the - dnl runtime loader, otherwise the system is severely misconfigured.) - LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" - LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name" - fi - fi - fi - done - done - if test "X$rpathdirs" != "X"; then - if test -n "$acl_hardcode_libdir_separator"; then - dnl Weird platform: only the last -rpath option counts, the user must - dnl pass all path elements in one option. We can arrange that for a - dnl single library, but not when more than one $LIBNAMEs are used. - alldirs= - for found_dir in $rpathdirs; do - alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" - done - dnl Note: acl_hardcode_libdir_flag_spec uses $libdir and $wl. - acl_save_libdir="$libdir" - libdir="$alldirs" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" - else - dnl The -rpath options are cumulative. - for found_dir in $rpathdirs; do - acl_save_libdir="$libdir" - libdir="$found_dir" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" - done - fi - fi - if test "X$ltrpathdirs" != "X"; then - dnl When using libtool, the option that works for both libraries and - dnl executables is -R. The -R options are cumulative. - for found_dir in $ltrpathdirs; do - LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir" - done - fi - popdef([P_A_C_K]) - popdef([PACKLIBS]) - popdef([PACKUP]) - popdef([PACK]) - popdef([NAME]) -]) - -dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR, -dnl unless already present in VAR. -dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes -dnl contains two or three consecutive elements that belong together. -AC_DEFUN([AC_LIB_APPENDTOVAR], -[ - for element in [$2]; do - haveit= - for x in $[$1]; do - AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - [$1]="${[$1]}${[$1]:+ }$element" - fi - done -]) - -dnl For those cases where a variable contains several -L and -l options -dnl referring to unknown libraries and directories, this macro determines the -dnl necessary additional linker options for the runtime path. -dnl AC_LIB_LINKFLAGS_FROM_LIBS([LDADDVAR], [LIBSVALUE], [USE-LIBTOOL]) -dnl sets LDADDVAR to linker options needed together with LIBSVALUE. -dnl If USE-LIBTOOL evaluates to non-empty, linking with libtool is assumed, -dnl otherwise linking without libtool is assumed. -AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS], -[ - AC_REQUIRE([AC_LIB_RPATH]) - AC_REQUIRE([AC_LIB_PREPARE_MULTILIB]) - $1= - if test "$enable_rpath" != no; then - if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then - dnl Use an explicit option to hardcode directories into the resulting - dnl binary. - rpathdirs= - next= - for opt in $2; do - if test -n "$next"; then - dir="$next" - dnl No need to hardcode the standard /usr/lib. - if test "X$dir" != "X/usr/$acl_libdirstem" \ - && test "X$dir" != "X/usr/$acl_libdirstem2"; then - rpathdirs="$rpathdirs $dir" - fi - next= - else - case $opt in - -L) next=yes ;; - -L*) dir=`echo "X$opt" | sed -e 's,^X-L,,'` - dnl No need to hardcode the standard /usr/lib. - if test "X$dir" != "X/usr/$acl_libdirstem" \ - && test "X$dir" != "X/usr/$acl_libdirstem2"; then - rpathdirs="$rpathdirs $dir" - fi - next= ;; - *) next= ;; - esac - fi - done - if test "X$rpathdirs" != "X"; then - if test -n ""$3""; then - dnl libtool is used for linking. Use -R options. - for dir in $rpathdirs; do - $1="${$1}${$1:+ }-R$dir" - done - else - dnl The linker is used for linking directly. - if test -n "$acl_hardcode_libdir_separator"; then - dnl Weird platform: only the last -rpath option counts, the user - dnl must pass all path elements in one option. - alldirs= - for dir in $rpathdirs; do - alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$dir" - done - acl_save_libdir="$libdir" - libdir="$alldirs" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - $1="$flag" - else - dnl The -rpath options are cumulative. - for dir in $rpathdirs; do - acl_save_libdir="$libdir" - libdir="$dir" - eval flag=\"$acl_hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - $1="${$1}${$1:+ }$flag" - done - fi - fi - fi - fi - fi - AC_SUBST([$1]) -]) diff --git a/m4/lib-prefix.m4 b/m4/lib-prefix.m4 deleted file mode 100644 index 60908e8..0000000 --- a/m4/lib-prefix.m4 +++ /dev/null @@ -1,224 +0,0 @@ -# lib-prefix.m4 serial 7 (gettext-0.18) -dnl Copyright (C) 2001-2005, 2008-2013 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -dnl From Bruno Haible. - -dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and -dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't -dnl require excessive bracketing. -ifdef([AC_HELP_STRING], -[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])], -[AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])]) - -dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed -dnl to access previously installed libraries. The basic assumption is that -dnl a user will want packages to use other packages he previously installed -dnl with the same --prefix option. -dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate -dnl libraries, but is otherwise very convenient. -AC_DEFUN([AC_LIB_PREFIX], -[ - AC_BEFORE([$0], [AC_LIB_LINKFLAGS]) - AC_REQUIRE([AC_PROG_CC]) - AC_REQUIRE([AC_CANONICAL_HOST]) - AC_REQUIRE([AC_LIB_PREPARE_MULTILIB]) - AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) - dnl By default, look in $includedir and $libdir. - use_additional=yes - AC_LIB_WITH_FINAL_PREFIX([ - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - ]) - AC_LIB_ARG_WITH([lib-prefix], -[ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib - --without-lib-prefix don't search for libraries in includedir and libdir], -[ - if test "X$withval" = "Xno"; then - use_additional=no - else - if test "X$withval" = "X"; then - AC_LIB_WITH_FINAL_PREFIX([ - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - ]) - else - additional_includedir="$withval/include" - additional_libdir="$withval/$acl_libdirstem" - fi - fi -]) - if test $use_additional = yes; then - dnl Potentially add $additional_includedir to $CPPFLAGS. - dnl But don't add it - dnl 1. if it's the standard /usr/include, - dnl 2. if it's already present in $CPPFLAGS, - dnl 3. if it's /usr/local/include and we are using GCC on Linux, - dnl 4. if it doesn't exist as a directory. - if test "X$additional_includedir" != "X/usr/include"; then - haveit= - for x in $CPPFLAGS; do - AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) - if test "X$x" = "X-I$additional_includedir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test "X$additional_includedir" = "X/usr/local/include"; then - if test -n "$GCC"; then - case $host_os in - linux* | gnu* | k*bsd*-gnu) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - if test -d "$additional_includedir"; then - dnl Really add $additional_includedir to $CPPFLAGS. - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir" - fi - fi - fi - fi - dnl Potentially add $additional_libdir to $LDFLAGS. - dnl But don't add it - dnl 1. if it's the standard /usr/lib, - dnl 2. if it's already present in $LDFLAGS, - dnl 3. if it's /usr/local/lib and we are using GCC on Linux, - dnl 4. if it doesn't exist as a directory. - if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then - haveit= - for x in $LDFLAGS; do - AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then - if test -n "$GCC"; then - case $host_os in - linux*) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - dnl Really add $additional_libdir to $LDFLAGS. - LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir" - fi - fi - fi - fi - fi -]) - -dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix, -dnl acl_final_exec_prefix, containing the values to which $prefix and -dnl $exec_prefix will expand at the end of the configure script. -AC_DEFUN([AC_LIB_PREPARE_PREFIX], -[ - dnl Unfortunately, prefix and exec_prefix get only finally determined - dnl at the end of configure. - if test "X$prefix" = "XNONE"; then - acl_final_prefix="$ac_default_prefix" - else - acl_final_prefix="$prefix" - fi - if test "X$exec_prefix" = "XNONE"; then - acl_final_exec_prefix='${prefix}' - else - acl_final_exec_prefix="$exec_prefix" - fi - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" - prefix="$acl_save_prefix" -]) - -dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the -dnl variables prefix and exec_prefix bound to the values they will have -dnl at the end of the configure script. -AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX], -[ - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - $1 - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" -]) - -dnl AC_LIB_PREPARE_MULTILIB creates -dnl - a variable acl_libdirstem, containing the basename of the libdir, either -dnl "lib" or "lib64" or "lib/64", -dnl - a variable acl_libdirstem2, as a secondary possible value for -dnl acl_libdirstem, either the same as acl_libdirstem or "lib/sparcv9" or -dnl "lib/amd64". -AC_DEFUN([AC_LIB_PREPARE_MULTILIB], -[ - dnl There is no formal standard regarding lib and lib64. - dnl On glibc systems, the current practice is that on a system supporting - dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under - dnl $prefix/lib64 and 32-bit libraries go under $prefix/lib. We determine - dnl the compiler's default mode by looking at the compiler's library search - dnl path. If at least one of its elements ends in /lib64 or points to a - dnl directory whose absolute pathname ends in /lib64, we assume a 64-bit ABI. - dnl Otherwise we use the default, namely "lib". - dnl On Solaris systems, the current practice is that on a system supporting - dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under - dnl $prefix/lib/64 (which is a symlink to either $prefix/lib/sparcv9 or - dnl $prefix/lib/amd64) and 32-bit libraries go under $prefix/lib. - AC_REQUIRE([AC_CANONICAL_HOST]) - acl_libdirstem=lib - acl_libdirstem2= - case "$host_os" in - solaris*) - dnl See Solaris 10 Software Developer Collection > Solaris 64-bit Developer's Guide > The Development Environment - dnl . - dnl "Portable Makefiles should refer to any library directories using the 64 symbolic link." - dnl But we want to recognize the sparcv9 or amd64 subdirectory also if the - dnl symlink is missing, so we set acl_libdirstem2 too. - AC_CACHE_CHECK([for 64-bit host], [gl_cv_solaris_64bit], - [AC_EGREP_CPP([sixtyfour bits], [ -#ifdef _LP64 -sixtyfour bits -#endif - ], [gl_cv_solaris_64bit=yes], [gl_cv_solaris_64bit=no]) - ]) - if test $gl_cv_solaris_64bit = yes; then - acl_libdirstem=lib/64 - case "$host_cpu" in - sparc*) acl_libdirstem2=lib/sparcv9 ;; - i*86 | x86_64) acl_libdirstem2=lib/amd64 ;; - esac - fi - ;; - *) - searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` - if test -n "$searchpath"; then - acl_save_IFS="${IFS= }"; IFS=":" - for searchdir in $searchpath; do - if test -d "$searchdir"; then - case "$searchdir" in - */lib64/ | */lib64 ) acl_libdirstem=lib64 ;; - */../ | */.. ) - # Better ignore directories of this form. They are misleading. - ;; - *) searchdir=`cd "$searchdir" && pwd` - case "$searchdir" in - */lib64 ) acl_libdirstem=lib64 ;; - esac ;; - esac - fi - done - IFS="$acl_save_IFS" - fi - ;; - esac - test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem" -]) diff --git a/m4/libtool.m4 b/m4/libtool.m4 deleted file mode 100644 index e7b6833..0000000 --- a/m4/libtool.m4 +++ /dev/null @@ -1,8427 +0,0 @@ -# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- -# -# Copyright (C) 1996-2001, 2003-2019, 2021-2022 Free Software -# Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -m4_define([_LT_COPYING], [dnl -# Copyright (C) 2014 Free Software Foundation, Inc. -# This is free software; see the source for copying conditions. There is NO -# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -# GNU Libtool is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of of the License, or -# (at your option) any later version. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program or library that is built -# using GNU Libtool, you may include this file under the same -# distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . -]) - -# serial 59 LT_INIT - - -# LT_PREREQ(VERSION) -# ------------------ -# Complain and exit if this libtool version is less that VERSION. -m4_defun([LT_PREREQ], -[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, - [m4_default([$3], - [m4_fatal([Libtool version $1 or higher is required], - 63)])], - [$2])]) - - -# _LT_CHECK_BUILDDIR -# ------------------ -# Complain if the absolute build directory name contains unusual characters -m4_defun([_LT_CHECK_BUILDDIR], -[case `pwd` in - *\ * | *\ *) - AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; -esac -]) - - -# LT_INIT([OPTIONS]) -# ------------------ -AC_DEFUN([LT_INIT], -[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK -AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl -AC_BEFORE([$0], [LT_LANG])dnl -AC_BEFORE([$0], [LT_OUTPUT])dnl -AC_BEFORE([$0], [LTDL_INIT])dnl -m4_require([_LT_CHECK_BUILDDIR])dnl - -dnl Autoconf doesn't catch unexpanded LT_ macros by default: -m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl -m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl -dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 -dnl unless we require an AC_DEFUNed macro: -AC_REQUIRE([LTOPTIONS_VERSION])dnl -AC_REQUIRE([LTSUGAR_VERSION])dnl -AC_REQUIRE([LTVERSION_VERSION])dnl -AC_REQUIRE([LTOBSOLETE_VERSION])dnl -m4_require([_LT_PROG_LTMAIN])dnl - -_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}]) - -dnl Parse OPTIONS -_LT_SET_OPTIONS([$0], [$1]) - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS=$ltmain - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -AC_SUBST(LIBTOOL)dnl - -_LT_SETUP - -# Only expand once: -m4_define([LT_INIT]) -])# LT_INIT - -# Old names: -AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) -AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_PROG_LIBTOOL], []) -dnl AC_DEFUN([AM_PROG_LIBTOOL], []) - - -# _LT_PREPARE_CC_BASENAME -# ----------------------- -m4_defun([_LT_PREPARE_CC_BASENAME], [ -# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. -func_cc_basename () -{ - for cc_temp in @S|@*""; do - case $cc_temp in - compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; - distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; - \-*) ;; - *) break;; - esac - done - func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` -} -])# _LT_PREPARE_CC_BASENAME - - -# _LT_CC_BASENAME(CC) -# ------------------- -# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME, -# but that macro is also expanded into generated libtool script, which -# arranges for $SED and $ECHO to be set by different means. -m4_defun([_LT_CC_BASENAME], -[m4_require([_LT_PREPARE_CC_BASENAME])dnl -AC_REQUIRE([_LT_DECL_SED])dnl -AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl -func_cc_basename $1 -cc_basename=$func_cc_basename_result -]) - - -# _LT_FILEUTILS_DEFAULTS -# ---------------------- -# It is okay to use these file commands and assume they have been set -# sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'. -m4_defun([_LT_FILEUTILS_DEFAULTS], -[: ${CP="cp -f"} -: ${MV="mv -f"} -: ${RM="rm -f"} -])# _LT_FILEUTILS_DEFAULTS - - -# _LT_SETUP -# --------- -m4_defun([_LT_SETUP], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl -AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl - -_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl -dnl -_LT_DECL([], [host_alias], [0], [The host system])dnl -_LT_DECL([], [host], [0])dnl -_LT_DECL([], [host_os], [0])dnl -dnl -_LT_DECL([], [build_alias], [0], [The build system])dnl -_LT_DECL([], [build], [0])dnl -_LT_DECL([], [build_os], [0])dnl -dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([LT_PATH_LD])dnl -AC_REQUIRE([LT_PATH_NM])dnl -dnl -AC_REQUIRE([AC_PROG_LN_S])dnl -test -z "$LN_S" && LN_S="ln -s" -_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl -dnl -AC_REQUIRE([LT_CMD_MAX_LEN])dnl -_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl -_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl -dnl -m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_CHECK_SHELL_FEATURES])dnl -m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl -m4_require([_LT_CMD_RELOAD])dnl -m4_require([_LT_DECL_FILECMD])dnl -m4_require([_LT_CHECK_MAGIC_METHOD])dnl -m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl -m4_require([_LT_CMD_OLD_ARCHIVE])dnl -m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl -m4_require([_LT_WITH_SYSROOT])dnl -m4_require([_LT_CMD_TRUNCATE])dnl - -_LT_CONFIG_LIBTOOL_INIT([ -# See if we are running on zsh, and set the options that allow our -# commands through without removal of \ escapes INIT. -if test -n "\${ZSH_VERSION+set}"; then - setopt NO_GLOB_SUBST -fi -]) -if test -n "${ZSH_VERSION+set}"; then - setopt NO_GLOB_SUBST -fi - -_LT_CHECK_OBJDIR - -m4_require([_LT_TAG_COMPILER])dnl - -case $host_os in -aix3*) - # AIX sometimes has problems with the GCC collect2 program. For some - # reason, if we set the COLLECT_NAMES environment variable, the problems - # vanish in a puff of smoke. - if test set != "${COLLECT_NAMES+set}"; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Global variables: -ofile=libtool -can_build_shared=yes - -# All known linkers require a '.a' archive for static linking (except MSVC and -# ICC, which need '.lib'). -libext=a - -with_gnu_ld=$lt_cv_prog_gnu_ld - -old_CC=$CC -old_CFLAGS=$CFLAGS - -# Set sane defaults for various variables -test -z "$CC" && CC=cc -test -z "$LTCC" && LTCC=$CC -test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS -test -z "$LD" && LD=ld -test -z "$ac_objext" && ac_objext=o - -_LT_CC_BASENAME([$compiler]) - -# Only perform the check for file, if the check method requires it -test -z "$MAGIC_CMD" && MAGIC_CMD=file -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - _LT_PATH_MAGIC - fi - ;; -esac - -# Use C for the default configuration in the libtool script -LT_SUPPORTED_TAG([CC]) -_LT_LANG_C_CONFIG -_LT_LANG_DEFAULT_CONFIG -_LT_CONFIG_COMMANDS -])# _LT_SETUP - - -# _LT_PREPARE_SED_QUOTE_VARS -# -------------------------- -# Define a few sed substitution that help us do robust quoting. -m4_defun([_LT_PREPARE_SED_QUOTE_VARS], -[# Backslashify metacharacters that are still active within -# double-quoted strings. -sed_quote_subst='s/\([["`$\\]]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\([["`\\]]\)/\\\1/g' - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# Sed substitution to delay expansion of an escaped single quote. -delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' - -# Sed substitution to avoid accidental globbing in evaled expressions -no_glob_subst='s/\*/\\\*/g' -]) - -# _LT_PROG_LTMAIN -# --------------- -# Note that this code is called both from 'configure', and 'config.status' -# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, -# 'config.status' has no value for ac_aux_dir unless we are using Automake, -# so we pass a copy along to make sure it has a sensible value anyway. -m4_defun([_LT_PROG_LTMAIN], -[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl -_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) -ltmain=$ac_aux_dir/ltmain.sh -])# _LT_PROG_LTMAIN - - -## ------------------------------------- ## -## Accumulate code for creating libtool. ## -## ------------------------------------- ## - -# So that we can recreate a full libtool script including additional -# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS -# in macros and then make a single call at the end using the 'libtool' -# label. - - -# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) -# ---------------------------------------- -# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. -m4_define([_LT_CONFIG_LIBTOOL_INIT], -[m4_ifval([$1], - [m4_append([_LT_OUTPUT_LIBTOOL_INIT], - [$1 -])])]) - -# Initialize. -m4_define([_LT_OUTPUT_LIBTOOL_INIT]) - - -# _LT_CONFIG_LIBTOOL([COMMANDS]) -# ------------------------------ -# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. -m4_define([_LT_CONFIG_LIBTOOL], -[m4_ifval([$1], - [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], - [$1 -])])]) - -# Initialize. -m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) - - -# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) -# ----------------------------------------------------- -m4_defun([_LT_CONFIG_SAVE_COMMANDS], -[_LT_CONFIG_LIBTOOL([$1]) -_LT_CONFIG_LIBTOOL_INIT([$2]) -]) - - -# _LT_FORMAT_COMMENT([COMMENT]) -# ----------------------------- -# Add leading comment marks to the start of each line, and a trailing -# full-stop to the whole comment if one is not present already. -m4_define([_LT_FORMAT_COMMENT], -[m4_ifval([$1], [ -m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], - [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) -)]) - - - -## ------------------------ ## -## FIXME: Eliminate VARNAME ## -## ------------------------ ## - - -# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) -# ------------------------------------------------------------------- -# CONFIGNAME is the name given to the value in the libtool script. -# VARNAME is the (base) name used in the configure script. -# VALUE may be 0, 1 or 2 for a computed quote escaped value based on -# VARNAME. Any other value will be used directly. -m4_define([_LT_DECL], -[lt_if_append_uniq([lt_decl_varnames], [$2], [, ], - [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], - [m4_ifval([$1], [$1], [$2])]) - lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) - m4_ifval([$4], - [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) - lt_dict_add_subkey([lt_decl_dict], [$2], - [tagged?], [m4_ifval([$5], [yes], [no])])]) -]) - - -# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) -# -------------------------------------------------------- -m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) - - -# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) -# ------------------------------------------------ -m4_define([lt_decl_tag_varnames], -[_lt_decl_filter([tagged?], [yes], $@)]) - - -# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) -# --------------------------------------------------------- -m4_define([_lt_decl_filter], -[m4_case([$#], - [0], [m4_fatal([$0: too few arguments: $#])], - [1], [m4_fatal([$0: too few arguments: $#: $1])], - [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], - [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], - [lt_dict_filter([lt_decl_dict], $@)])[]dnl -]) - - -# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) -# -------------------------------------------------- -m4_define([lt_decl_quote_varnames], -[_lt_decl_filter([value], [1], $@)]) - - -# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) -# --------------------------------------------------- -m4_define([lt_decl_dquote_varnames], -[_lt_decl_filter([value], [2], $@)]) - - -# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) -# --------------------------------------------------- -m4_define([lt_decl_varnames_tagged], -[m4_assert([$# <= 2])dnl -_$0(m4_quote(m4_default([$1], [[, ]])), - m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), - m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) -m4_define([_lt_decl_varnames_tagged], -[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) - - -# lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) -# ------------------------------------------------ -m4_define([lt_decl_all_varnames], -[_$0(m4_quote(m4_default([$1], [[, ]])), - m4_if([$2], [], - m4_quote(lt_decl_varnames), - m4_quote(m4_shift($@))))[]dnl -]) -m4_define([_lt_decl_all_varnames], -[lt_join($@, lt_decl_varnames_tagged([$1], - lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl -]) - - -# _LT_CONFIG_STATUS_DECLARE([VARNAME]) -# ------------------------------------ -# Quote a variable value, and forward it to 'config.status' so that its -# declaration there will have the same value as in 'configure'. VARNAME -# must have a single quote delimited value for this to work. -m4_define([_LT_CONFIG_STATUS_DECLARE], -[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`']) - - -# _LT_CONFIG_STATUS_DECLARATIONS -# ------------------------------ -# We delimit libtool config variables with single quotes, so when -# we write them to config.status, we have to be sure to quote all -# embedded single quotes properly. In configure, this macro expands -# each variable declared with _LT_DECL (and _LT_TAGDECL) into: -# -# ='`$ECHO "$" | $SED "$delay_single_quote_subst"`' -m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], -[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), - [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) - - -# _LT_LIBTOOL_TAGS -# ---------------- -# Output comment and list of tags supported by the script -m4_defun([_LT_LIBTOOL_TAGS], -[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl -available_tags='_LT_TAGS'dnl -]) - - -# _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) -# ----------------------------------- -# Extract the dictionary values for VARNAME (optionally with TAG) and -# expand to a commented shell variable setting: -# -# # Some comment about what VAR is for. -# visible_name=$lt_internal_name -m4_define([_LT_LIBTOOL_DECLARE], -[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], - [description])))[]dnl -m4_pushdef([_libtool_name], - m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl -m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), - [0], [_libtool_name=[$]$1], - [1], [_libtool_name=$lt_[]$1], - [2], [_libtool_name=$lt_[]$1], - [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl -m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl -]) - - -# _LT_LIBTOOL_CONFIG_VARS -# ----------------------- -# Produce commented declarations of non-tagged libtool config variables -# suitable for insertion in the LIBTOOL CONFIG section of the 'libtool' -# script. Tagged libtool config variables (even for the LIBTOOL CONFIG -# section) are produced by _LT_LIBTOOL_TAG_VARS. -m4_defun([_LT_LIBTOOL_CONFIG_VARS], -[m4_foreach([_lt_var], - m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), - [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) - - -# _LT_LIBTOOL_TAG_VARS(TAG) -# ------------------------- -m4_define([_LT_LIBTOOL_TAG_VARS], -[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), - [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) - - -# _LT_TAGVAR(VARNAME, [TAGNAME]) -# ------------------------------ -m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) - - -# _LT_CONFIG_COMMANDS -# ------------------- -# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of -# variables for single and double quote escaping we saved from calls -# to _LT_DECL, we can put quote escaped variables declarations -# into 'config.status', and then the shell code to quote escape them in -# for loops in 'config.status'. Finally, any additional code accumulated -# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. -m4_defun([_LT_CONFIG_COMMANDS], -[AC_PROVIDE_IFELSE([LT_OUTPUT], - dnl If the libtool generation code has been placed in $CONFIG_LT, - dnl instead of duplicating it all over again into config.status, - dnl then we will have config.status run $CONFIG_LT later, so it - dnl needs to know what name is stored there: - [AC_CONFIG_COMMANDS([libtool], - [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], - dnl If the libtool generation code is destined for config.status, - dnl expand the accumulated commands and init code now: - [AC_CONFIG_COMMANDS([libtool], - [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) -])#_LT_CONFIG_COMMANDS - - -# Initialize. -m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], -[ - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -sed_quote_subst='$sed_quote_subst' -double_quote_subst='$double_quote_subst' -delay_variable_subst='$delay_variable_subst' -_LT_CONFIG_STATUS_DECLARATIONS -LTCC='$LTCC' -LTCFLAGS='$LTCFLAGS' -compiler='$compiler_DEFAULT' - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -\$[]1 -_LTECHO_EOF' -} - -# Quote evaled strings. -for var in lt_decl_all_varnames([[ \ -]], lt_decl_quote_varnames); do - case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in - *[[\\\\\\\`\\"\\\$]]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes - ;; - *) - eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" - ;; - esac -done - -# Double-quote double-evaled strings. -for var in lt_decl_all_varnames([[ \ -]], lt_decl_dquote_varnames); do - case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in - *[[\\\\\\\`\\"\\\$]]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes - ;; - *) - eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" - ;; - esac -done - -_LT_OUTPUT_LIBTOOL_INIT -]) - -# _LT_GENERATED_FILE_INIT(FILE, [COMMENT]) -# ------------------------------------ -# Generate a child script FILE with all initialization necessary to -# reuse the environment learned by the parent script, and make the -# file executable. If COMMENT is supplied, it is inserted after the -# '#!' sequence but before initialization text begins. After this -# macro, additional text can be appended to FILE to form the body of -# the child script. The macro ends with non-zero status if the -# file could not be fully written (such as if the disk is full). -m4_ifdef([AS_INIT_GENERATED], -[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])], -[m4_defun([_LT_GENERATED_FILE_INIT], -[m4_require([AS_PREPARE])]dnl -[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl -[lt_write_fail=0 -cat >$1 <<_ASEOF || lt_write_fail=1 -#! $SHELL -# Generated by $as_me. -$2 -SHELL=\${CONFIG_SHELL-$SHELL} -export SHELL -_ASEOF -cat >>$1 <<\_ASEOF || lt_write_fail=1 -AS_SHELL_SANITIZE -_AS_PREPARE -exec AS_MESSAGE_FD>&1 -_ASEOF -test 0 = "$lt_write_fail" && chmod +x $1[]dnl -m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT - -# LT_OUTPUT -# --------- -# This macro allows early generation of the libtool script (before -# AC_OUTPUT is called), incase it is used in configure for compilation -# tests. -AC_DEFUN([LT_OUTPUT], -[: ${CONFIG_LT=./config.lt} -AC_MSG_NOTICE([creating $CONFIG_LT]) -_LT_GENERATED_FILE_INIT(["$CONFIG_LT"], -[# Run this file to recreate a libtool stub with the current configuration.]) - -cat >>"$CONFIG_LT" <<\_LTEOF -lt_cl_silent=false -exec AS_MESSAGE_LOG_FD>>config.log -{ - echo - AS_BOX([Running $as_me.]) -} >&AS_MESSAGE_LOG_FD - -lt_cl_help="\ -'$as_me' creates a local libtool stub from the current configuration, -for use in further configure time tests before the real libtool is -generated. - -Usage: $[0] [[OPTIONS]] - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - -Report bugs to ." - -lt_cl_version="\ -m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl -m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) -configured by $[0], generated by m4_PACKAGE_STRING. - -Copyright (C) 2011 Free Software Foundation, Inc. -This config.lt script is free software; the Free Software Foundation -gives unlimited permision to copy, distribute and modify it." - -while test 0 != $[#] -do - case $[1] in - --version | --v* | -V ) - echo "$lt_cl_version"; exit 0 ;; - --help | --h* | -h ) - echo "$lt_cl_help"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --quiet | --q* | --silent | --s* | -q ) - lt_cl_silent=: ;; - - -*) AC_MSG_ERROR([unrecognized option: $[1] -Try '$[0] --help' for more information.]) ;; - - *) AC_MSG_ERROR([unrecognized argument: $[1] -Try '$[0] --help' for more information.]) ;; - esac - shift -done - -if $lt_cl_silent; then - exec AS_MESSAGE_FD>/dev/null -fi -_LTEOF - -cat >>"$CONFIG_LT" <<_LTEOF -_LT_OUTPUT_LIBTOOL_COMMANDS_INIT -_LTEOF - -cat >>"$CONFIG_LT" <<\_LTEOF -AC_MSG_NOTICE([creating $ofile]) -_LT_OUTPUT_LIBTOOL_COMMANDS -AS_EXIT(0) -_LTEOF -chmod +x "$CONFIG_LT" - -# configure is writing to config.log, but config.lt does its own redirection, -# appending to config.log, which fails on DOS, as config.log is still kept -# open by configure. Here we exec the FD to /dev/null, effectively closing -# config.log, so it can be properly (re)opened and appended to by config.lt. -lt_cl_success=: -test yes = "$silent" && - lt_config_lt_args="$lt_config_lt_args --quiet" -exec AS_MESSAGE_LOG_FD>/dev/null -$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false -exec AS_MESSAGE_LOG_FD>>config.log -$lt_cl_success || AS_EXIT(1) -])# LT_OUTPUT - - -# _LT_CONFIG(TAG) -# --------------- -# If TAG is the built-in tag, create an initial libtool script with a -# default configuration from the untagged config vars. Otherwise add code -# to config.status for appending the configuration named by TAG from the -# matching tagged config vars. -m4_defun([_LT_CONFIG], -[m4_require([_LT_FILEUTILS_DEFAULTS])dnl -_LT_CONFIG_SAVE_COMMANDS([ - m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl - m4_if(_LT_TAG, [C], [ - # See if we are running on zsh, and set the options that allow our - # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}"; then - setopt NO_GLOB_SUBST - fi - - cfgfile=${ofile}T - trap "$RM \"$cfgfile\"; exit 1" 1 2 15 - $RM "$cfgfile" - - cat <<_LT_EOF >> "$cfgfile" -#! $SHELL -# Generated automatically by $as_me ($PACKAGE) $VERSION -# NOTE: Changes made to this file will be lost: look at ltmain.sh. - -# Provide generalized library-building support services. -# Written by Gordon Matzigkeit, 1996 - -_LT_COPYING -_LT_LIBTOOL_TAGS - -# Configured defaults for sys_lib_dlsearch_path munging. -: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} - -# ### BEGIN LIBTOOL CONFIG -_LT_LIBTOOL_CONFIG_VARS -_LT_LIBTOOL_TAG_VARS -# ### END LIBTOOL CONFIG - -_LT_EOF - - cat <<'_LT_EOF' >> "$cfgfile" - -# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE - -_LT_PREPARE_MUNGE_PATH_LIST -_LT_PREPARE_CC_BASENAME - -# ### END FUNCTIONS SHARED WITH CONFIGURE - -_LT_EOF - - case $host_os in - aix3*) - cat <<\_LT_EOF >> "$cfgfile" -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test set != "${COLLECT_NAMES+set}"; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -_LT_EOF - ;; - esac - - _LT_PROG_LTMAIN - - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - $SED '$q' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - mv -f "$cfgfile" "$ofile" || - (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") - chmod +x "$ofile" -], -[cat <<_LT_EOF >> "$ofile" - -dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded -dnl in a comment (ie after a #). -# ### BEGIN LIBTOOL TAG CONFIG: $1 -_LT_LIBTOOL_TAG_VARS(_LT_TAG) -# ### END LIBTOOL TAG CONFIG: $1 -_LT_EOF -])dnl /m4_if -], -[m4_if([$1], [], [ - PACKAGE='$PACKAGE' - VERSION='$VERSION' - RM='$RM' - ofile='$ofile'], []) -])dnl /_LT_CONFIG_SAVE_COMMANDS -])# _LT_CONFIG - - -# LT_SUPPORTED_TAG(TAG) -# --------------------- -# Trace this macro to discover what tags are supported by the libtool -# --tag option, using: -# autoconf --trace 'LT_SUPPORTED_TAG:$1' -AC_DEFUN([LT_SUPPORTED_TAG], []) - - -# C support is built-in for now -m4_define([_LT_LANG_C_enabled], []) -m4_define([_LT_TAGS], []) - - -# LT_LANG(LANG) -# ------------- -# Enable libtool support for the given language if not already enabled. -AC_DEFUN([LT_LANG], -[AC_BEFORE([$0], [LT_OUTPUT])dnl -m4_case([$1], - [C], [_LT_LANG(C)], - [C++], [_LT_LANG(CXX)], - [Go], [_LT_LANG(GO)], - [Java], [_LT_LANG(GCJ)], - [Fortran 77], [_LT_LANG(F77)], - [Fortran], [_LT_LANG(FC)], - [Windows Resource], [_LT_LANG(RC)], - [m4_ifdef([_LT_LANG_]$1[_CONFIG], - [_LT_LANG($1)], - [m4_fatal([$0: unsupported language: "$1"])])])dnl -])# LT_LANG - - -# _LT_LANG(LANGNAME) -# ------------------ -m4_defun([_LT_LANG], -[m4_ifdef([_LT_LANG_]$1[_enabled], [], - [LT_SUPPORTED_TAG([$1])dnl - m4_append([_LT_TAGS], [$1 ])dnl - m4_define([_LT_LANG_]$1[_enabled], [])dnl - _LT_LANG_$1_CONFIG($1)])dnl -])# _LT_LANG - - -m4_ifndef([AC_PROG_GO], [ -############################################################ -# NOTE: This macro has been submitted for inclusion into # -# GNU Autoconf as AC_PROG_GO. When it is available in # -# a released version of Autoconf we should remove this # -# macro and use it instead. # -############################################################ -m4_defun([AC_PROG_GO], -[AC_LANG_PUSH(Go)dnl -AC_ARG_VAR([GOC], [Go compiler command])dnl -AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl -_AC_ARG_VAR_LDFLAGS()dnl -AC_CHECK_TOOL(GOC, gccgo) -if test -z "$GOC"; then - if test -n "$ac_tool_prefix"; then - AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo]) - fi -fi -if test -z "$GOC"; then - AC_CHECK_PROG(GOC, gccgo, gccgo, false) -fi -])#m4_defun -])#m4_ifndef - - -# _LT_LANG_DEFAULT_CONFIG -# ----------------------- -m4_defun([_LT_LANG_DEFAULT_CONFIG], -[AC_PROVIDE_IFELSE([AC_PROG_CXX], - [LT_LANG(CXX)], - [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) - -AC_PROVIDE_IFELSE([AC_PROG_F77], - [LT_LANG(F77)], - [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) - -AC_PROVIDE_IFELSE([AC_PROG_FC], - [LT_LANG(FC)], - [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) - -dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal -dnl pulling things in needlessly. -AC_PROVIDE_IFELSE([AC_PROG_GCJ], - [LT_LANG(GCJ)], - [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], - [LT_LANG(GCJ)], - [AC_PROVIDE_IFELSE([LT_PROG_GCJ], - [LT_LANG(GCJ)], - [m4_ifdef([AC_PROG_GCJ], - [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) - m4_ifdef([A][M_PROG_GCJ], - [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) - m4_ifdef([LT_PROG_GCJ], - [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) - -AC_PROVIDE_IFELSE([AC_PROG_GO], - [LT_LANG(GO)], - [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])]) - -AC_PROVIDE_IFELSE([LT_PROG_RC], - [LT_LANG(RC)], - [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) -])# _LT_LANG_DEFAULT_CONFIG - -# Obsolete macros: -AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) -AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) -AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) -AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) -AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_CXX], []) -dnl AC_DEFUN([AC_LIBTOOL_F77], []) -dnl AC_DEFUN([AC_LIBTOOL_FC], []) -dnl AC_DEFUN([AC_LIBTOOL_GCJ], []) -dnl AC_DEFUN([AC_LIBTOOL_RC], []) - - -# _LT_TAG_COMPILER -# ---------------- -m4_defun([_LT_TAG_COMPILER], -[AC_REQUIRE([AC_PROG_CC])dnl - -_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl -_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl -_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl -_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl - -# If no C compiler was specified, use CC. -LTCC=${LTCC-"$CC"} - -# If no C compiler flags were specified, use CFLAGS. -LTCFLAGS=${LTCFLAGS-"$CFLAGS"} - -# Allow CC to be a program name with arguments. -compiler=$CC -])# _LT_TAG_COMPILER - - -# _LT_COMPILER_BOILERPLATE -# ------------------------ -# Check for compiler boilerplate output or warnings with -# the simple compiler test code. -m4_defun([_LT_COMPILER_BOILERPLATE], -[m4_require([_LT_DECL_SED])dnl -ac_outfile=conftest.$ac_objext -echo "$lt_simple_compile_test_code" >conftest.$ac_ext -eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err -_lt_compiler_boilerplate=`cat conftest.err` -$RM conftest* -])# _LT_COMPILER_BOILERPLATE - - -# _LT_LINKER_BOILERPLATE -# ---------------------- -# Check for linker boilerplate output or warnings with -# the simple link test code. -m4_defun([_LT_LINKER_BOILERPLATE], -[m4_require([_LT_DECL_SED])dnl -ac_outfile=conftest.$ac_objext -echo "$lt_simple_link_test_code" >conftest.$ac_ext -eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err -_lt_linker_boilerplate=`cat conftest.err` -$RM -r conftest* -])# _LT_LINKER_BOILERPLATE - -# _LT_REQUIRED_DARWIN_CHECKS -# ------------------------- -m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ - case $host_os in - rhapsody* | darwin*) - AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) - AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) - AC_CHECK_TOOL([LIPO], [lipo], [:]) - AC_CHECK_TOOL([OTOOL], [otool], [:]) - AC_CHECK_TOOL([OTOOL64], [otool64], [:]) - _LT_DECL([], [DSYMUTIL], [1], - [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) - _LT_DECL([], [NMEDIT], [1], - [Tool to change global to local symbols on Mac OS X]) - _LT_DECL([], [LIPO], [1], - [Tool to manipulate fat objects and archives on Mac OS X]) - _LT_DECL([], [OTOOL], [1], - [ldd/readelf like tool for Mach-O binaries on Mac OS X]) - _LT_DECL([], [OTOOL64], [1], - [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) - - AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], - [lt_cv_apple_cc_single_mod=no - if test -z "$LT_MULTI_MODULE"; then - # By default we will add the -single_module flag. You can override - # by either setting the environment variable LT_MULTI_MODULE - # non-empty at configure time, or by adding -multi_module to the - # link flags. - rm -rf libconftest.dylib* - echo "int foo(void){return 1;}" > conftest.c - echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ --dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD - $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ - -dynamiclib -Wl,-single_module conftest.c 2>conftest.err - _lt_result=$? - # If there is a non-empty error log, and "single_module" - # appears in it, assume the flag caused a linker warning - if test -s conftest.err && $GREP single_module conftest.err; then - cat conftest.err >&AS_MESSAGE_LOG_FD - # Otherwise, if the output was created with a 0 exit code from - # the compiler, it worked. - elif test -f libconftest.dylib && test 0 = "$_lt_result"; then - lt_cv_apple_cc_single_mod=yes - else - cat conftest.err >&AS_MESSAGE_LOG_FD - fi - rm -rf libconftest.dylib* - rm -f conftest.* - fi]) - - AC_CACHE_CHECK([for -exported_symbols_list linker flag], - [lt_cv_ld_exported_symbols_list], - [lt_cv_ld_exported_symbols_list=no - save_LDFLAGS=$LDFLAGS - echo "_main" > conftest.sym - LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" - AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], - [lt_cv_ld_exported_symbols_list=yes], - [lt_cv_ld_exported_symbols_list=no]) - LDFLAGS=$save_LDFLAGS - ]) - - AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load], - [lt_cv_ld_force_load=no - cat > conftest.c << _LT_EOF -int forced_loaded() { return 2;} -_LT_EOF - echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD - $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD - echo "$AR $AR_FLAGS libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD - $AR $AR_FLAGS libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD - echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD - $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD - cat > conftest.c << _LT_EOF -int main() { return 0;} -_LT_EOF - echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD - $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err - _lt_result=$? - if test -s conftest.err && $GREP force_load conftest.err; then - cat conftest.err >&AS_MESSAGE_LOG_FD - elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then - lt_cv_ld_force_load=yes - else - cat conftest.err >&AS_MESSAGE_LOG_FD - fi - rm -f conftest.err libconftest.a conftest conftest.c - rm -rf conftest.dSYM - ]) - case $host_os in - rhapsody* | darwin1.[[012]]) - _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; - darwin1.*) - _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; - darwin*) - case $MACOSX_DEPLOYMENT_TARGET,$host in - 10.[[012]],*|,*powerpc*-darwin[[5-8]]*) - _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; - *) - _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; - esac - ;; - esac - if test yes = "$lt_cv_apple_cc_single_mod"; then - _lt_dar_single_mod='$single_module' - fi - if test yes = "$lt_cv_ld_exported_symbols_list"; then - _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' - else - _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' - fi - if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then - _lt_dsymutil='~$DSYMUTIL $lib || :' - else - _lt_dsymutil= - fi - ;; - esac -]) - - -# _LT_DARWIN_LINKER_FEATURES([TAG]) -# --------------------------------- -# Checks for linker and compiler features on darwin -m4_defun([_LT_DARWIN_LINKER_FEATURES], -[ - m4_require([_LT_REQUIRED_DARWIN_CHECKS]) - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_automatic, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - if test yes = "$lt_cv_ld_force_load"; then - _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' - m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes], - [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes]) - else - _LT_TAGVAR(whole_archive_flag_spec, $1)='' - fi - _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined - case $cc_basename in - ifort*|nagfor*) _lt_dar_can_shared=yes ;; - *) _lt_dar_can_shared=$GCC ;; - esac - if test yes = "$_lt_dar_can_shared"; then - output_verbose_link_cmd=func_echo_all - _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" - _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" - _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" - _LT_TAGVAR(module_expsym_cmds, $1)="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" - m4_if([$1], [CXX], -[ if test yes != "$lt_cv_apple_cc_single_mod"; then - _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil" - _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" - fi -],[]) - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi -]) - -# _LT_SYS_MODULE_PATH_AIX([TAGNAME]) -# ---------------------------------- -# Links a minimal program and checks the executable -# for the system default hardcoded library path. In most cases, -# this is /usr/lib:/lib, but when the MPI compilers are used -# the location of the communication and MPI libs are included too. -# If we don't find anything, use the default library path according -# to the aix ld manual. -# Store the results from the different compilers for each TAGNAME. -# Allow to override them for all tags through lt_cv_aix_libpath. -m4_defun([_LT_SYS_MODULE_PATH_AIX], -[m4_require([_LT_DECL_SED])dnl -if test set = "${lt_cv_aix_libpath+set}"; then - aix_libpath=$lt_cv_aix_libpath -else - AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])], - [AC_LINK_IFELSE([AC_LANG_PROGRAM],[ - lt_aix_libpath_sed='[ - /Import File Strings/,/^$/ { - /^0/ { - s/^0 *\([^ ]*\) *$/\1/ - p - } - }]' - _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` - # Check for a 64-bit object if we didn't find anything. - if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then - _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` - fi],[]) - if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then - _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib - fi - ]) - aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1]) -fi -])# _LT_SYS_MODULE_PATH_AIX - - -# _LT_SHELL_INIT(ARG) -# ------------------- -m4_define([_LT_SHELL_INIT], -[m4_divert_text([M4SH-INIT], [$1 -])])# _LT_SHELL_INIT - - - -# _LT_PROG_ECHO_BACKSLASH -# ----------------------- -# Find how we can fake an echo command that does not interpret backslash. -# In particular, with Autoconf 2.60 or later we add some code to the start -# of the generated configure script that will find a shell with a builtin -# printf (that we can use as an echo command). -m4_defun([_LT_PROG_ECHO_BACKSLASH], -[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO -ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO - -AC_MSG_CHECKING([how to print strings]) -# Test print first, because it will be a builtin if present. -if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ - test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then - ECHO='print -r --' -elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then - ECHO='printf %s\n' -else - # Use this function as a fallback that always works. - func_fallback_echo () - { - eval 'cat <<_LTECHO_EOF -$[]1 -_LTECHO_EOF' - } - ECHO='func_fallback_echo' -fi - -# func_echo_all arg... -# Invoke $ECHO with all args, space-separated. -func_echo_all () -{ - $ECHO "$*" -} - -case $ECHO in - printf*) AC_MSG_RESULT([printf]) ;; - print*) AC_MSG_RESULT([print -r]) ;; - *) AC_MSG_RESULT([cat]) ;; -esac - -m4_ifdef([_AS_DETECT_SUGGESTED], -[_AS_DETECT_SUGGESTED([ - test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || ( - ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' - ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO - ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO - PATH=/empty FPATH=/empty; export PATH FPATH - test "X`printf %s $ECHO`" = "X$ECHO" \ - || test "X`print -r -- $ECHO`" = "X$ECHO" )])]) - -_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) -_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes]) -])# _LT_PROG_ECHO_BACKSLASH - - -# _LT_WITH_SYSROOT -# ---------------- -AC_DEFUN([_LT_WITH_SYSROOT], -[m4_require([_LT_DECL_SED])dnl -AC_MSG_CHECKING([for sysroot]) -AC_ARG_WITH([sysroot], -[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@], - [Search for dependent libraries within DIR (or the compiler's sysroot - if not specified).])], -[], [with_sysroot=no]) - -dnl lt_sysroot will always be passed unquoted. We quote it here -dnl in case the user passed a directory name. -lt_sysroot= -case $with_sysroot in #( - yes) - if test yes = "$GCC"; then - lt_sysroot=`$CC --print-sysroot 2>/dev/null` - fi - ;; #( - /*) - lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"` - ;; #( - no|'') - ;; #( - *) - AC_MSG_RESULT([$with_sysroot]) - AC_MSG_ERROR([The sysroot must be an absolute path.]) - ;; -esac - - AC_MSG_RESULT([${lt_sysroot:-no}]) -_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl -[dependent libraries, and where our libraries should be installed.])]) - -# _LT_ENABLE_LOCK -# --------------- -m4_defun([_LT_ENABLE_LOCK], -[AC_ARG_ENABLE([libtool-lock], - [AS_HELP_STRING([--disable-libtool-lock], - [avoid locking (might break parallel builds)])]) -test no = "$enable_libtool_lock" || enable_libtool_lock=yes - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -ia64-*-hpux*) - # Find out what ABI is being produced by ac_compile, and set mode - # options accordingly. - echo 'int i;' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `$FILECMD conftest.$ac_objext` in - *ELF-32*) - HPUX_IA64_MODE=32 - ;; - *ELF-64*) - HPUX_IA64_MODE=64 - ;; - esac - fi - rm -rf conftest* - ;; -*-*-irix6*) - # Find out what ABI is being produced by ac_compile, and set linker - # options accordingly. - echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - if test yes = "$lt_cv_prog_gnu_ld"; then - case `$FILECMD conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -melf32bsmip" - ;; - *N32*) - LD="${LD-ld} -melf32bmipn32" - ;; - *64-bit*) - LD="${LD-ld} -melf64bmip" - ;; - esac - else - case `$FILECMD conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - fi - rm -rf conftest* - ;; - -mips64*-*linux*) - # Find out what ABI is being produced by ac_compile, and set linker - # options accordingly. - echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - emul=elf - case `$FILECMD conftest.$ac_objext` in - *32-bit*) - emul="${emul}32" - ;; - *64-bit*) - emul="${emul}64" - ;; - esac - case `$FILECMD conftest.$ac_objext` in - *MSB*) - emul="${emul}btsmip" - ;; - *LSB*) - emul="${emul}ltsmip" - ;; - esac - case `$FILECMD conftest.$ac_objext` in - *N32*) - emul="${emul}n32" - ;; - esac - LD="${LD-ld} -m $emul" - fi - rm -rf conftest* - ;; - -x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ -s390*-*linux*|s390*-*tpf*|sparc*-*linux*) - # Find out what ABI is being produced by ac_compile, and set linker - # options accordingly. Note that the listed cases only cover the - # situations where additional linker options are needed (such as when - # doing 32-bit compilation for a host where ld defaults to 64-bit, or - # vice versa); the common cases where no linker options are needed do - # not appear in the list. - echo 'int i;' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `$FILECMD conftest.o` in - *32-bit*) - case $host in - x86_64-*kfreebsd*-gnu) - LD="${LD-ld} -m elf_i386_fbsd" - ;; - x86_64-*linux*) - case `$FILECMD conftest.o` in - *x86-64*) - LD="${LD-ld} -m elf32_x86_64" - ;; - *) - LD="${LD-ld} -m elf_i386" - ;; - esac - ;; - powerpc64le-*linux*) - LD="${LD-ld} -m elf32lppclinux" - ;; - powerpc64-*linux*) - LD="${LD-ld} -m elf32ppclinux" - ;; - s390x-*linux*) - LD="${LD-ld} -m elf_s390" - ;; - sparc64-*linux*) - LD="${LD-ld} -m elf32_sparc" - ;; - esac - ;; - *64-bit*) - case $host in - x86_64-*kfreebsd*-gnu) - LD="${LD-ld} -m elf_x86_64_fbsd" - ;; - x86_64-*linux*) - LD="${LD-ld} -m elf_x86_64" - ;; - powerpcle-*linux*) - LD="${LD-ld} -m elf64lppc" - ;; - powerpc-*linux*) - LD="${LD-ld} -m elf64ppc" - ;; - s390*-*linux*|s390*-*tpf*) - LD="${LD-ld} -m elf64_s390" - ;; - sparc*-*linux*) - LD="${LD-ld} -m elf64_sparc" - ;; - esac - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS=$CFLAGS - CFLAGS="$CFLAGS -belf" - AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, - [AC_LANG_PUSH(C) - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) - AC_LANG_POP]) - if test yes != "$lt_cv_cc_needs_belf"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS=$SAVE_CFLAGS - fi - ;; -*-*solaris*) - # Find out what ABI is being produced by ac_compile, and set linker - # options accordingly. - echo 'int i;' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `$FILECMD conftest.o` in - *64-bit*) - case $lt_cv_prog_gnu_ld in - yes*) - case $host in - i?86-*-solaris*|x86_64-*-solaris*) - LD="${LD-ld} -m elf_x86_64" - ;; - sparc*-*-solaris*) - LD="${LD-ld} -m elf64_sparc" - ;; - esac - # GNU ld 2.21 introduced _sol2 emulations. Use them if available. - if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then - LD=${LD-ld}_sol2 - fi - ;; - *) - if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then - LD="${LD-ld} -64" - fi - ;; - esac - ;; - esac - fi - rm -rf conftest* - ;; -esac - -need_locks=$enable_libtool_lock -])# _LT_ENABLE_LOCK - - -# _LT_PROG_AR -# ----------- -m4_defun([_LT_PROG_AR], -[AC_CHECK_TOOLS(AR, [ar], false) -: ${AR=ar} -_LT_DECL([], [AR], [1], [The archiver]) - -# Use ARFLAGS variable as AR's operation code to sync the variable naming with -# Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have -# higher priority because thats what people were doing historically (setting -# ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS -# variable obsoleted/removed. - -test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr} -lt_ar_flags=$AR_FLAGS -_LT_DECL([], [lt_ar_flags], [0], [Flags to create an archive (by configure)]) - -# Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override -# by AR_FLAGS because that was never working and AR_FLAGS is about to die. -_LT_DECL([], [AR_FLAGS], [\@S|@{ARFLAGS-"\@S|@lt_ar_flags"}], - [Flags to create an archive]) - -AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], - [lt_cv_ar_at_file=no - AC_COMPILE_IFELSE([AC_LANG_PROGRAM], - [echo conftest.$ac_objext > conftest.lst - lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD' - AC_TRY_EVAL([lt_ar_try]) - if test 0 -eq "$ac_status"; then - # Ensure the archiver fails upon bogus file names. - rm -f conftest.$ac_objext libconftest.a - AC_TRY_EVAL([lt_ar_try]) - if test 0 -ne "$ac_status"; then - lt_cv_ar_at_file=@ - fi - fi - rm -f conftest.* libconftest.a - ]) - ]) - -if test no = "$lt_cv_ar_at_file"; then - archiver_list_spec= -else - archiver_list_spec=$lt_cv_ar_at_file -fi -_LT_DECL([], [archiver_list_spec], [1], - [How to feed a file listing to the archiver]) -])# _LT_PROG_AR - - -# _LT_CMD_OLD_ARCHIVE -# ------------------- -m4_defun([_LT_CMD_OLD_ARCHIVE], -[_LT_PROG_AR - -AC_CHECK_TOOL(STRIP, strip, :) -test -z "$STRIP" && STRIP=: -_LT_DECL([], [STRIP], [1], [A symbol stripping program]) - -AC_CHECK_TOOL(RANLIB, ranlib, :) -test -z "$RANLIB" && RANLIB=: -_LT_DECL([], [RANLIB], [1], - [Commands used to install an old-style archive]) - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - case $host_os in - bitrig* | openbsd*) - old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" - ;; - *) - old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" - ;; - esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" -fi - -case $host_os in - darwin*) - lock_old_archive_extraction=yes ;; - *) - lock_old_archive_extraction=no ;; -esac -_LT_DECL([], [old_postinstall_cmds], [2]) -_LT_DECL([], [old_postuninstall_cmds], [2]) -_LT_TAGDECL([], [old_archive_cmds], [2], - [Commands used to build an old-style archive]) -_LT_DECL([], [lock_old_archive_extraction], [0], - [Whether to use a lock for old archive extraction]) -])# _LT_CMD_OLD_ARCHIVE - - -# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, -# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) -# ---------------------------------------------------------------- -# Check whether the given compiler option works -AC_DEFUN([_LT_COMPILER_OPTION], -[m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_DECL_SED])dnl -AC_CACHE_CHECK([$1], [$2], - [$2=no - m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - # The option is referenced via a variable to avoid confusing sed. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&AS_MESSAGE_LOG_FD - echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. - $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then - $2=yes - fi - fi - $RM conftest* -]) - -if test yes = "[$]$2"; then - m4_if([$5], , :, [$5]) -else - m4_if([$6], , :, [$6]) -fi -])# _LT_COMPILER_OPTION - -# Old name: -AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) - - -# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, -# [ACTION-SUCCESS], [ACTION-FAILURE]) -# ---------------------------------------------------- -# Check whether the given linker option works -AC_DEFUN([_LT_LINKER_OPTION], -[m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_DECL_SED])dnl -AC_CACHE_CHECK([$1], [$2], - [$2=no - save_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS $3" - echo "$lt_simple_link_test_code" > conftest.$ac_ext - if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then - # The linker can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - # Append any errors to the config.log. - cat conftest.err 1>&AS_MESSAGE_LOG_FD - $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp - $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 - if diff conftest.exp conftest.er2 >/dev/null; then - $2=yes - fi - else - $2=yes - fi - fi - $RM -r conftest* - LDFLAGS=$save_LDFLAGS -]) - -if test yes = "[$]$2"; then - m4_if([$4], , :, [$4]) -else - m4_if([$5], , :, [$5]) -fi -])# _LT_LINKER_OPTION - -# Old name: -AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) - - -# LT_CMD_MAX_LEN -#--------------- -AC_DEFUN([LT_CMD_MAX_LEN], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -# find the maximum length of command line arguments -AC_MSG_CHECKING([the maximum length of command line arguments]) -AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl - i=0 - teststring=ABCD - - case $build_os in - msdosdjgpp*) - # On DJGPP, this test can blow up pretty badly due to problems in libc - # (any single argument exceeding 2000 bytes causes a buffer overrun - # during glob expansion). Even if it were fixed, the result of this - # check would be larger than it should be. - lt_cv_sys_max_cmd_len=12288; # 12K is about right - ;; - - gnu*) - # Under GNU Hurd, this test is not required because there is - # no limit to the length of command line arguments. - # Libtool will interpret -1 as no limit whatsoever - lt_cv_sys_max_cmd_len=-1; - ;; - - cygwin* | mingw* | cegcc*) - # On Win9x/ME, this test blows up -- it succeeds, but takes - # about 5 minutes as the teststring grows exponentially. - # Worse, since 9x/ME are not pre-emptively multitasking, - # you end up with a "frozen" computer, even though with patience - # the test eventually succeeds (with a max line length of 256k). - # Instead, let's just punt: use the minimum linelength reported by - # all of the supported platforms: 8192 (on NT/2K/XP). - lt_cv_sys_max_cmd_len=8192; - ;; - - mint*) - # On MiNT this can take a long time and run out of memory. - lt_cv_sys_max_cmd_len=8192; - ;; - - amigaos*) - # On AmigaOS with pdksh, this test takes hours, literally. - # So we just punt and use a minimum line length of 8192. - lt_cv_sys_max_cmd_len=8192; - ;; - - bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*) - # This has been around since 386BSD, at least. Likely further. - if test -x /sbin/sysctl; then - lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` - elif test -x /usr/sbin/sysctl; then - lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` - else - lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs - fi - # And add a safety zone - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` - ;; - - interix*) - # We know the value 262144 and hardcode it with a safety zone (like BSD) - lt_cv_sys_max_cmd_len=196608 - ;; - - os2*) - # The test takes a long time on OS/2. - lt_cv_sys_max_cmd_len=8192 - ;; - - osf*) - # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure - # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not - # nice to cause kernel panics so lets avoid the loop below. - # First set a reasonable default. - lt_cv_sys_max_cmd_len=16384 - # - if test -x /sbin/sysconfig; then - case `/sbin/sysconfig -q proc exec_disable_arg_limit` in - *1*) lt_cv_sys_max_cmd_len=-1 ;; - esac - fi - ;; - sco3.2v5*) - lt_cv_sys_max_cmd_len=102400 - ;; - sysv5* | sco5v6* | sysv4.2uw2*) - kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` - if test -n "$kargmax"; then - lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[[ ]]//'` - else - lt_cv_sys_max_cmd_len=32768 - fi - ;; - *) - lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` - if test -n "$lt_cv_sys_max_cmd_len" && \ - test undefined != "$lt_cv_sys_max_cmd_len"; then - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` - else - # Make teststring a little bigger before we do anything with it. - # a 1K string should be a reasonable start. - for i in 1 2 3 4 5 6 7 8; do - teststring=$teststring$teststring - done - SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} - # If test is not a shell built-in, we'll probably end up computing a - # maximum length that is only half of the actual maximum length, but - # we can't tell. - while { test X`env echo "$teststring$teststring" 2>/dev/null` \ - = "X$teststring$teststring"; } >/dev/null 2>&1 && - test 17 != "$i" # 1/2 MB should be enough - do - i=`expr $i + 1` - teststring=$teststring$teststring - done - # Only check the string length outside the loop. - lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` - teststring= - # Add a significant safety factor because C++ compilers can tack on - # massive amounts of additional arguments before passing them to the - # linker. It appears as though 1/2 is a usable value. - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` - fi - ;; - esac -]) -if test -n "$lt_cv_sys_max_cmd_len"; then - AC_MSG_RESULT($lt_cv_sys_max_cmd_len) -else - AC_MSG_RESULT(none) -fi -max_cmd_len=$lt_cv_sys_max_cmd_len -_LT_DECL([], [max_cmd_len], [0], - [What is the maximum length of a command?]) -])# LT_CMD_MAX_LEN - -# Old name: -AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) - - -# _LT_HEADER_DLFCN -# ---------------- -m4_defun([_LT_HEADER_DLFCN], -[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl -])# _LT_HEADER_DLFCN - - -# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, -# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) -# ---------------------------------------------------------------- -m4_defun([_LT_TRY_DLOPEN_SELF], -[m4_require([_LT_HEADER_DLFCN])dnl -if test yes = "$cross_compiling"; then : - [$4] -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF -[#line $LINENO "configure" -#include "confdefs.h" - -#if HAVE_DLFCN_H -#include -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL -# else -# define LT_DLGLOBAL 0 -# endif -#endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -/* When -fvisibility=hidden is used, assume the code has been annotated - correspondingly for the symbols needed. */ -#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) -int fnord () __attribute__((visibility("default"))); -#endif - -int fnord () { return 42; } -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else - { - if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - else puts (dlerror ()); - } - /* dlclose (self); */ - } - else - puts (dlerror ()); - - return status; -}] -_LT_EOF - if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then - (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) $1 ;; - x$lt_dlneed_uscore) $2 ;; - x$lt_dlunknown|x*) $3 ;; - esac - else : - # compilation failed - $3 - fi -fi -rm -fr conftest* -])# _LT_TRY_DLOPEN_SELF - - -# LT_SYS_DLOPEN_SELF -# ------------------ -AC_DEFUN([LT_SYS_DLOPEN_SELF], -[m4_require([_LT_HEADER_DLFCN])dnl -if test yes != "$enable_dlopen"; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else - lt_cv_dlopen=no - lt_cv_dlopen_libs= - - case $host_os in - beos*) - lt_cv_dlopen=load_add_on - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - - mingw* | pw32* | cegcc*) - lt_cv_dlopen=LoadLibrary - lt_cv_dlopen_libs= - ;; - - cygwin*) - lt_cv_dlopen=dlopen - lt_cv_dlopen_libs= - ;; - - darwin*) - # if libdl is installed we need to link against it - AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[ - lt_cv_dlopen=dyld - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ]) - ;; - - tpf*) - # Don't try to run any link tests for TPF. We know it's impossible - # because TPF is a cross-compiler, and we know how we open DSOs. - lt_cv_dlopen=dlopen - lt_cv_dlopen_libs= - lt_cv_dlopen_self=no - ;; - - *) - AC_CHECK_FUNC([shl_load], - [lt_cv_dlopen=shl_load], - [AC_CHECK_LIB([dld], [shl_load], - [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld], - [AC_CHECK_FUNC([dlopen], - [lt_cv_dlopen=dlopen], - [AC_CHECK_LIB([dl], [dlopen], - [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl], - [AC_CHECK_LIB([svld], [dlopen], - [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld], - [AC_CHECK_LIB([dld], [dld_link], - [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld]) - ]) - ]) - ]) - ]) - ]) - ;; - esac - - if test no = "$lt_cv_dlopen"; then - enable_dlopen=no - else - enable_dlopen=yes - fi - - case $lt_cv_dlopen in - dlopen) - save_CPPFLAGS=$CPPFLAGS - test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - - save_LDFLAGS=$LDFLAGS - wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - - save_LIBS=$LIBS - LIBS="$lt_cv_dlopen_libs $LIBS" - - AC_CACHE_CHECK([whether a program can dlopen itself], - lt_cv_dlopen_self, [dnl - _LT_TRY_DLOPEN_SELF( - lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, - lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) - ]) - - if test yes = "$lt_cv_dlopen_self"; then - wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" - AC_CACHE_CHECK([whether a statically linked program can dlopen itself], - lt_cv_dlopen_self_static, [dnl - _LT_TRY_DLOPEN_SELF( - lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, - lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) - ]) - fi - - CPPFLAGS=$save_CPPFLAGS - LDFLAGS=$save_LDFLAGS - LIBS=$save_LIBS - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi -_LT_DECL([dlopen_support], [enable_dlopen], [0], - [Whether dlopen is supported]) -_LT_DECL([dlopen_self], [enable_dlopen_self], [0], - [Whether dlopen of programs is supported]) -_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], - [Whether dlopen of statically linked programs is supported]) -])# LT_SYS_DLOPEN_SELF - -# Old name: -AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) - - -# _LT_COMPILER_C_O([TAGNAME]) -# --------------------------- -# Check to see if options -c and -o are simultaneously supported by compiler. -# This macro does not hard code the compiler like AC_PROG_CC_C_O. -m4_defun([_LT_COMPILER_C_O], -[m4_require([_LT_DECL_SED])dnl -m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_TAG_COMPILER])dnl -AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], - [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], - [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no - $RM -r conftest 2>/dev/null - mkdir conftest - cd conftest - mkdir out - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - - lt_compiler_flag="-o out/conftest2.$ac_objext" - # Insert the option either (1) after the last *FLAGS variable, or - # (2) before a word containing "conftest.", or (3) at the end. - # Note that $ac_compile itself does not contain backslashes and begins - # with a dollar sign (not a hyphen), so the echo should work correctly. - lt_compile=`echo "$ac_compile" | $SED \ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) - (eval "$lt_compile" 2>out/conftest.err) - ac_status=$? - cat out/conftest.err >&AS_MESSAGE_LOG_FD - echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD - if (exit $ac_status) && test -s out/conftest2.$ac_objext - then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp - $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 - if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then - _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes - fi - fi - chmod u+w . 2>&AS_MESSAGE_LOG_FD - $RM conftest* - # SGI C++ compiler will create directory out/ii_files/ for - # template instantiation - test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files - $RM out/* && rmdir out - cd .. - $RM -r conftest - $RM conftest* -]) -_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], - [Does compiler simultaneously support -c and -o options?]) -])# _LT_COMPILER_C_O - - -# _LT_COMPILER_FILE_LOCKS([TAGNAME]) -# ---------------------------------- -# Check to see if we can do hard links to lock some files if needed -m4_defun([_LT_COMPILER_FILE_LOCKS], -[m4_require([_LT_ENABLE_LOCK])dnl -m4_require([_LT_FILEUTILS_DEFAULTS])dnl -_LT_COMPILER_C_O([$1]) - -hard_links=nottested -if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then - # do not overwrite the value of need_locks provided by the user - AC_MSG_CHECKING([if we can lock with hard links]) - hard_links=yes - $RM conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - AC_MSG_RESULT([$hard_links]) - if test no = "$hard_links"; then - AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe]) - need_locks=warn - fi -else - need_locks=no -fi -_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) -])# _LT_COMPILER_FILE_LOCKS - - -# _LT_CHECK_OBJDIR -# ---------------- -m4_defun([_LT_CHECK_OBJDIR], -[AC_CACHE_CHECK([for objdir], [lt_cv_objdir], -[rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - lt_cv_objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - lt_cv_objdir=_libs -fi -rmdir .libs 2>/dev/null]) -objdir=$lt_cv_objdir -_LT_DECL([], [objdir], [0], - [The name of the directory that contains temporary libtool files])dnl -m4_pattern_allow([LT_OBJDIR])dnl -AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/", - [Define to the sub-directory where libtool stores uninstalled libraries.]) -])# _LT_CHECK_OBJDIR - - -# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) -# -------------------------------------- -# Check hardcoding attributes. -m4_defun([_LT_LINKER_HARDCODE_LIBPATH], -[AC_MSG_CHECKING([how to hardcode library paths into programs]) -_LT_TAGVAR(hardcode_action, $1)= -if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || - test -n "$_LT_TAGVAR(runpath_var, $1)" || - test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then - - # We can hardcode non-existent directories. - if test no != "$_LT_TAGVAR(hardcode_direct, $1)" && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" && - test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then - # Linking always hardcodes the temporary library directory. - _LT_TAGVAR(hardcode_action, $1)=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - _LT_TAGVAR(hardcode_action, $1)=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - _LT_TAGVAR(hardcode_action, $1)=unsupported -fi -AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) - -if test relink = "$_LT_TAGVAR(hardcode_action, $1)" || - test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then - # Fast installation is not supported - enable_fast_install=no -elif test yes = "$shlibpath_overrides_runpath" || - test no = "$enable_shared"; then - # Fast installation is not necessary - enable_fast_install=needless -fi -_LT_TAGDECL([], [hardcode_action], [0], - [How to hardcode a shared library path into an executable]) -])# _LT_LINKER_HARDCODE_LIBPATH - - -# _LT_CMD_STRIPLIB -# ---------------- -m4_defun([_LT_CMD_STRIPLIB], -[m4_require([_LT_DECL_EGREP]) -striplib= -old_striplib= -AC_MSG_CHECKING([whether stripping libraries is possible]) -if test -z "$STRIP"; then - AC_MSG_RESULT([no]) -else - if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then - old_striplib="$STRIP --strip-debug" - striplib="$STRIP --strip-unneeded" - AC_MSG_RESULT([yes]) - else - case $host_os in - darwin*) - # FIXME - insert some real tests, host_os isn't really good enough - striplib="$STRIP -x" - old_striplib="$STRIP -S" - AC_MSG_RESULT([yes]) - ;; - freebsd*) - if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then - old_striplib="$STRIP --strip-debug" - striplib="$STRIP --strip-unneeded" - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - fi - ;; - *) - AC_MSG_RESULT([no]) - ;; - esac - fi -fi -_LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) -_LT_DECL([], [striplib], [1]) -])# _LT_CMD_STRIPLIB - - -# _LT_PREPARE_MUNGE_PATH_LIST -# --------------------------- -# Make sure func_munge_path_list() is defined correctly. -m4_defun([_LT_PREPARE_MUNGE_PATH_LIST], -[[# func_munge_path_list VARIABLE PATH -# ----------------------------------- -# VARIABLE is name of variable containing _space_ separated list of -# directories to be munged by the contents of PATH, which is string -# having a format: -# "DIR[:DIR]:" -# string "DIR[ DIR]" will be prepended to VARIABLE -# ":DIR[:DIR]" -# string "DIR[ DIR]" will be appended to VARIABLE -# "DIRP[:DIRP]::[DIRA:]DIRA" -# string "DIRP[ DIRP]" will be prepended to VARIABLE and string -# "DIRA[ DIRA]" will be appended to VARIABLE -# "DIR[:DIR]" -# VARIABLE will be replaced by "DIR[ DIR]" -func_munge_path_list () -{ - case x@S|@2 in - x) - ;; - *:) - eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\" - ;; - x:*) - eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\" - ;; - *::*) - eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" - eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\" - ;; - *) - eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\" - ;; - esac -} -]])# _LT_PREPARE_PATH_LIST - - -# _LT_SYS_DYNAMIC_LINKER([TAG]) -# ----------------------------- -# PORTME Fill in your ld.so characteristics -m4_defun([_LT_SYS_DYNAMIC_LINKER], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -m4_require([_LT_DECL_EGREP])dnl -m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_DECL_OBJDUMP])dnl -m4_require([_LT_DECL_SED])dnl -m4_require([_LT_CHECK_SHELL_FEATURES])dnl -m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl -AC_MSG_CHECKING([dynamic linker characteristics]) -m4_if([$1], - [], [ -if test yes = "$GCC"; then - case $host_os in - darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; - *) lt_awk_arg='/^libraries:/' ;; - esac - case $host_os in - mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;; - *) lt_sed_strip_eq='s|=/|/|g' ;; - esac - lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` - case $lt_search_path_spec in - *\;*) - # if the path contains ";" then we assume it to be the separator - # otherwise default to the standard path separator (i.e. ":") - it is - # assumed that no part of a normal pathname contains ";" but that should - # okay in the real world where ";" in dirpaths is itself problematic. - lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` - ;; - *) - lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` - ;; - esac - # Ok, now we have the path, separated by spaces, we can step through it - # and add multilib dir if necessary... - lt_tmp_lt_search_path_spec= - lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` - # ...but if some path component already ends with the multilib dir we assume - # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). - case "$lt_multi_os_dir; $lt_search_path_spec " in - "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) - lt_multi_os_dir= - ;; - esac - for lt_sys_path in $lt_search_path_spec; do - if test -d "$lt_sys_path$lt_multi_os_dir"; then - lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" - elif test -n "$lt_multi_os_dir"; then - test -d "$lt_sys_path" && \ - lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" - fi - done - lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' -BEGIN {RS = " "; FS = "/|\n";} { - lt_foo = ""; - lt_count = 0; - for (lt_i = NF; lt_i > 0; lt_i--) { - if ($lt_i != "" && $lt_i != ".") { - if ($lt_i == "..") { - lt_count++; - } else { - if (lt_count == 0) { - lt_foo = "/" $lt_i lt_foo; - } else { - lt_count--; - } - } - } - } - if (lt_foo != "") { lt_freq[[lt_foo]]++; } - if (lt_freq[[lt_foo]] == 1) { print lt_foo; } -}'` - # AWK program above erroneously prepends '/' to C:/dos/paths - # for these hosts. - case $host_os in - mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ - $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;; - esac - sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` -else - sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" -fi]) -library_names_spec= -libname_spec='lib$name' -soname_spec= -shrext_cmds=.so -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -need_lib_prefix=unknown -hardcode_into_libs=no - -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -need_version=unknown - -AC_ARG_VAR([LT_SYS_LIBRARY_PATH], -[User-defined run-time library search path.]) - -case $host_os in -aix3*) - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$release$shared_ext$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX 3 has no versioning support, so we append a major version to the name. - soname_spec='$libname$release$shared_ext$major' - ;; - -aix[[4-9]]*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - hardcode_into_libs=yes - if test ia64 = "$host_cpu"; then - # AIX 5 supports IA64 - library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' - shlibpath_var=LD_LIBRARY_PATH - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line '#! .'. This would cause the generated library to - # depend on '.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - case $host_os in - aix4 | aix4.[[01]] | aix4.[[01]].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then - : - else - can_build_shared=no - fi - ;; - esac - # Using Import Files as archive members, it is possible to support - # filename-based versioning of shared library archives on AIX. While - # this would work for both with and without runtime linking, it will - # prevent static linking of such archives. So we do filename-based - # shared library versioning with .so extension only, which is used - # when both runtime linking and shared linking is enabled. - # Unfortunately, runtime linking may impact performance, so we do - # not want this to be the default eventually. Also, we use the - # versioned .so libs for executables only if there is the -brtl - # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. - # To allow for filename-based versioning support, we need to create - # libNAME.so.V as an archive file, containing: - # *) an Import File, referring to the versioned filename of the - # archive as well as the shared archive member, telling the - # bitwidth (32 or 64) of that shared object, and providing the - # list of exported symbols of that shared object, eventually - # decorated with the 'weak' keyword - # *) the shared object with the F_LOADONLY flag set, to really avoid - # it being seen by the linker. - # At run time we better use the real file rather than another symlink, - # but for link time we create the symlink libNAME.so -> libNAME.so.V - - case $with_aix_soname,$aix_use_runtimelinking in - # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct - # soname into executable. Probably we can add versioning support to - # collect2, so additional links can be useful in future. - aix,yes) # traditional libtool - dynamic_linker='AIX unversionable lib.so' - # If using run time linking (on AIX 4.2 or later) use lib.so - # instead of lib.a to let people know that these are not - # typical AIX shared libraries. - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - ;; - aix,no) # traditional AIX only - dynamic_linker='AIX lib.a[(]lib.so.V[)]' - # We preserve .a as extension for shared libraries through AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='$libname$release.a $libname.a' - soname_spec='$libname$release$shared_ext$major' - ;; - svr4,*) # full svr4 only - dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]" - library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' - # We do not specify a path in Import Files, so LIBPATH fires. - shlibpath_overrides_runpath=yes - ;; - *,yes) # both, prefer svr4 - dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]" - library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' - # unpreferred sharedlib libNAME.a needs extra handling - postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' - postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' - # We do not specify a path in Import Files, so LIBPATH fires. - shlibpath_overrides_runpath=yes - ;; - *,no) # both, prefer aix - dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]" - library_names_spec='$libname$release.a $libname.a' - soname_spec='$libname$release$shared_ext$major' - # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling - postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' - postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' - ;; - esac - shlibpath_var=LIBPATH - fi - ;; - -amigaos*) - case $host_cpu in - powerpc) - # Since July 2007 AmigaOS4 officially supports .so libraries. - # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - ;; - m68k) - library_names_spec='$libname.ixlibrary $libname.a' - # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' - ;; - esac - ;; - -beos*) - library_names_spec='$libname$shared_ext' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - ;; - -bsdi[[45]]*) - version_type=linux # correct to gnu/linux during the next big refactor - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32* | cegcc*) - version_type=windows - shrext_cmds=.dll - need_version=no - need_lib_prefix=no - - case $GCC,$cc_basename in - yes,*) - # gcc - library_names_spec='$libname.dll.a' - # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \$file`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog $dir/$dlname \$dldir/$dlname~ - chmod a+x \$dldir/$dlname~ - if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then - eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; - fi' - postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $RM \$dlpath' - shlibpath_overrides_runpath=yes - - case $host_os in - cygwin*) - # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' -m4_if([$1], [],[ - sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) - ;; - mingw* | cegcc*) - # MinGW DLLs use traditional 'lib' prefix - soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' - ;; - pw32*) - # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' - ;; - esac - dynamic_linker='Win32 ld.exe' - ;; - - *,cl* | *,icl*) - # Native MSVC or ICC - libname_spec='$name' - soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' - library_names_spec='$libname.dll.lib' - - case $build_os in - mingw*) - sys_lib_search_path_spec= - lt_save_ifs=$IFS - IFS=';' - for lt_path in $LIB - do - IFS=$lt_save_ifs - # Let DOS variable expansion print the short 8.3 style file name. - lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` - sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" - done - IFS=$lt_save_ifs - # Convert to MSYS style. - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` - ;; - cygwin*) - # Convert to unix form, then to dos form, then back to unix form - # but this time dos style (no spaces!) so that the unix form looks - # like /cygdrive/c/PROGRA~1:/cygdr... - sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` - sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` - sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - ;; - *) - sys_lib_search_path_spec=$LIB - if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then - # It is most probably a Windows format PATH. - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` - else - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - fi - # FIXME: find the short name or the path components, as spaces are - # common. (e.g. "Program Files" -> "PROGRA~1") - ;; - esac - - # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \$file`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog $dir/$dlname \$dldir/$dlname' - postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $RM \$dlpath' - shlibpath_overrides_runpath=yes - dynamic_linker='Win32 link.exe' - ;; - - *) - # Assume MSVC and ICC wrapper - library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib' - dynamic_linker='Win32 ld.exe' - ;; - esac - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' - soname_spec='$libname$release$major$shared_ext' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' -m4_if([$1], [],[ - sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) - sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' - ;; - -dgux*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -freebsd* | dragonfly* | midnightbsd*) - # DragonFly does not have aout. When/if they implement a new - # versioning mechanism, adjust this. - if test -x /usr/bin/objformat; then - objformat=`/usr/bin/objformat` - else - case $host_os in - freebsd[[23]].*) objformat=aout ;; - *) objformat=elf ;; - esac - fi - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - need_version=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2.*) - shlibpath_overrides_runpath=yes - ;; - freebsd3.[[01]]* | freebsdelf3.[[01]]*) - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ - freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - *) # from 4.6 on, and DragonFly - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - esac - ;; - -haiku*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - dynamic_linker="$host_os runtime_loader" - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LIBRARY_PATH - shlibpath_overrides_runpath=no - sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - version_type=sunos - need_lib_prefix=no - need_version=no - case $host_cpu in - ia64*) - shrext_cmds='.so' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.so" - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - if test 32 = "$HPUX_IA64_MODE"; then - sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" - sys_lib_dlsearch_path_spec=/usr/lib/hpux32 - else - sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" - sys_lib_dlsearch_path_spec=/usr/lib/hpux64 - fi - ;; - hppa*64*) - shrext_cmds='.sl' - hardcode_into_libs=yes - dynamic_linker="$host_os dld.sl" - shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH - shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - *) - shrext_cmds='.sl' - dynamic_linker="$host_os dld.sl" - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - ;; - esac - # HP-UX runs *really* slowly unless shared libraries are mode 555, ... - postinstall_cmds='chmod 555 $lib' - # or fails outright, so override atomically: - install_override_mode=555 - ;; - -interix[[3-9]]*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - -irix5* | irix6* | nonstopux*) - case $host_os in - nonstopux*) version_type=nonstopux ;; - *) - if test yes = "$lt_cv_prog_gnu_ld"; then - version_type=linux # correct to gnu/linux during the next big refactor - else - version_type=irix - fi ;; - esac - need_lib_prefix=no - need_version=no - soname_spec='$libname$release$shared_ext$major' - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' - case $host_os in - irix5* | nonstopux*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") - libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") - libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") - libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" - sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" - hardcode_into_libs=yes - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux*oldld* | linux*aout* | linux*coff*) - dynamic_linker=no - ;; - -linux*android*) - version_type=none # Android doesn't support versioned libraries. - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext' - soname_spec='$libname$release$shared_ext' - finish_cmds= - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - dynamic_linker='Android linker' - # Don't embed -rpath directories since the linker doesn't support them. - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - ;; - -# This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - - # Some binutils ld are patched to set DT_RUNPATH - AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath], - [lt_cv_shlibpath_overrides_runpath=no - save_LDFLAGS=$LDFLAGS - save_libdir=$libdir - eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ - LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" - AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], - [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], - [lt_cv_shlibpath_overrides_runpath=yes])]) - LDFLAGS=$save_LDFLAGS - libdir=$save_libdir - ]) - shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath - - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # Ideally, we could use ldconfig to report *all* directores which are - # searched for libraries, however this is still not possible. Aside from not - # being certain /sbin/ldconfig is available, command - # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, - # even though it is searched at run-time. Try to do the best guess by - # appending ld.so.conf contents (and includes) to the search path. - if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` - sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" - fi - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -netbsdelf*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='NetBSD ld.elf_so' - ;; - -netbsd*) - version_type=sunos - need_lib_prefix=no - need_version=no - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -*nto* | *qnx*) - version_type=qnx - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='ldqnx.so' - ;; - -openbsd* | bitrig*) - version_type=sunos - sys_lib_dlsearch_path_spec=/usr/lib - need_lib_prefix=no - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then - need_version=no - else - need_version=yes - fi - library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -os2*) - libname_spec='$name' - version_type=windows - shrext_cmds=.dll - need_version=no - need_lib_prefix=no - # OS/2 can only load a DLL with a base name of 8 characters or less. - soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; - v=$($ECHO $release$versuffix | tr -d .-); - n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); - $ECHO $n$v`$shared_ext' - library_names_spec='${libname}_dll.$libext' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=BEGINLIBPATH - sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - postinstall_cmds='base_file=`basename \$file`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog $dir/$dlname \$dldir/$dlname~ - chmod a+x \$dldir/$dlname~ - if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then - eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; - fi' - postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ - dlpath=$dir/\$dldll~ - $RM \$dlpath' - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_lib_prefix=no - need_version=no - soname_spec='$libname$release$shared_ext$major' - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec - ;; - -rdos*) - dynamic_linker=no - ;; - -solaris*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test yes = "$with_gnu_ld"; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.3*) - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - sni) - shlibpath_overrides_runpath=no - need_lib_prefix=no - runpath_var=LD_RUN_PATH - ;; - siemens) - need_lib_prefix=no - ;; - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -sysv4*MP*) - if test -d /usr/nec; then - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' - soname_spec='$libname$shared_ext.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - version_type=sco - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - if test yes = "$with_gnu_ld"; then - sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' - else - sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' - case $host_os in - sco3.2v5*) - sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" - ;; - esac - fi - sys_lib_dlsearch_path_spec='/usr/lib' - ;; - -tpf*) - # TPF is a cross-target only. Preferred cross-host = GNU/Linux. - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - -uts4*) - version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' - soname_spec='$libname$release$shared_ext$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -*) - dynamic_linker=no - ;; -esac -AC_MSG_RESULT([$dynamic_linker]) -test no = "$dynamic_linker" && can_build_shared=no - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test yes = "$GCC"; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi - -if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then - sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec -fi - -if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then - sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec -fi - -# remember unaugmented sys_lib_dlsearch_path content for libtool script decls... -configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec - -# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code -func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" - -# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool -configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH - -_LT_DECL([], [variables_saved_for_relink], [1], - [Variables whose values should be saved in libtool wrapper scripts and - restored at link time]) -_LT_DECL([], [need_lib_prefix], [0], - [Do we need the "lib" prefix for modules?]) -_LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) -_LT_DECL([], [version_type], [0], [Library versioning type]) -_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) -_LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) -_LT_DECL([], [shlibpath_overrides_runpath], [0], - [Is shlibpath searched before the hard-coded library search path?]) -_LT_DECL([], [libname_spec], [1], [Format of library name prefix]) -_LT_DECL([], [library_names_spec], [1], - [[List of archive names. First name is the real one, the rest are links. - The last name is the one that the linker finds with -lNAME]]) -_LT_DECL([], [soname_spec], [1], - [[The coded name of the library, if different from the real name]]) -_LT_DECL([], [install_override_mode], [1], - [Permission mode override for installation of shared libraries]) -_LT_DECL([], [postinstall_cmds], [2], - [Command to use after installation of a shared archive]) -_LT_DECL([], [postuninstall_cmds], [2], - [Command to use after uninstallation of a shared archive]) -_LT_DECL([], [finish_cmds], [2], - [Commands used to finish a libtool library installation in a directory]) -_LT_DECL([], [finish_eval], [1], - [[As "finish_cmds", except a single script fragment to be evaled but - not shown]]) -_LT_DECL([], [hardcode_into_libs], [0], - [Whether we should hardcode library paths into libraries]) -_LT_DECL([], [sys_lib_search_path_spec], [2], - [Compile-time system search path for libraries]) -_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2], - [Detected run-time system search path for libraries]) -_LT_DECL([], [configure_time_lt_sys_library_path], [2], - [Explicit LT_SYS_LIBRARY_PATH set during ./configure time]) -])# _LT_SYS_DYNAMIC_LINKER - - -# _LT_PATH_TOOL_PREFIX(TOOL) -# -------------------------- -# find a file program that can recognize shared library -AC_DEFUN([_LT_PATH_TOOL_PREFIX], -[m4_require([_LT_DECL_EGREP])dnl -AC_MSG_CHECKING([for $1]) -AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, -[case $MAGIC_CMD in -[[\\/*] | ?:[\\/]*]) - lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. - ;; -*) - lt_save_MAGIC_CMD=$MAGIC_CMD - lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR -dnl $ac_dummy forces splitting on constant user-supplied paths. -dnl POSIX.2 word splitting is done only on the output of word expansions, -dnl not every word. This closes a longstanding sh security hole. - ac_dummy="m4_if([$2], , $PATH, [$2])" - for ac_dir in $ac_dummy; do - IFS=$lt_save_ifs - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$1"; then - lt_cv_path_MAGIC_CMD=$ac_dir/"$1" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` - MAGIC_CMD=$lt_cv_path_MAGIC_CMD - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - $EGREP "$file_magic_regex" > /dev/null; then - : - else - cat <<_LT_EOF 1>&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -_LT_EOF - fi ;; - esac - fi - break - fi - done - IFS=$lt_save_ifs - MAGIC_CMD=$lt_save_MAGIC_CMD - ;; -esac]) -MAGIC_CMD=$lt_cv_path_MAGIC_CMD -if test -n "$MAGIC_CMD"; then - AC_MSG_RESULT($MAGIC_CMD) -else - AC_MSG_RESULT(no) -fi -_LT_DECL([], [MAGIC_CMD], [0], - [Used to examine libraries when file_magic_cmd begins with "file"])dnl -])# _LT_PATH_TOOL_PREFIX - -# Old name: -AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) - - -# _LT_PATH_MAGIC -# -------------- -# find a file program that can recognize a shared library -m4_defun([_LT_PATH_MAGIC], -[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) - else - MAGIC_CMD=: - fi -fi -])# _LT_PATH_MAGIC - - -# LT_PATH_LD -# ---------- -# find the pathname to the GNU or non-GNU linker -AC_DEFUN([LT_PATH_LD], -[AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -m4_require([_LT_DECL_SED])dnl -m4_require([_LT_DECL_EGREP])dnl -m4_require([_LT_PROG_ECHO_BACKSLASH])dnl - -AC_ARG_WITH([gnu-ld], - [AS_HELP_STRING([--with-gnu-ld], - [assume the C compiler uses GNU ld @<:@default=no@:>@])], - [test no = "$withval" || with_gnu_ld=yes], - [with_gnu_ld=no])dnl - -ac_prog=ld -if test yes = "$GCC"; then - # Check if gcc -print-prog-name=ld gives a path. - AC_MSG_CHECKING([for ld used by $CC]) - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return, which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [[\\/]]* | ?:[[\\/]]*) - re_direlt='/[[^/]][[^/]]*/\.\./' - # Canonicalize the pathname of ld - ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` - while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do - ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` - done - test -z "$LD" && LD=$ac_prog - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test yes = "$with_gnu_ld"; then - AC_MSG_CHECKING([for GNU ld]) -else - AC_MSG_CHECKING([for non-GNU ld]) -fi -AC_CACHE_VAL(lt_cv_path_LD, -[if test -z "$LD"; then - lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - IFS=$lt_save_ifs - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD=$ac_dir/$ac_prog - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some variants of GNU ld only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - case `"$lt_cv_path_LD" -v 2>&1 &1 conftest.i -cat conftest.i conftest.i >conftest2.i -: ${lt_DD:=$DD} -AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd], -[if "$ac_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then - cmp -s conftest.i conftest.out \ - && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: -fi]) -rm -f conftest.i conftest2.i conftest.out]) -])# _LT_PATH_DD - - -# _LT_CMD_TRUNCATE -# ---------------- -# find command to truncate a binary pipe -m4_defun([_LT_CMD_TRUNCATE], -[m4_require([_LT_PATH_DD]) -AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin], -[printf 0123456789abcdef0123456789abcdef >conftest.i -cat conftest.i conftest.i >conftest2.i -lt_cv_truncate_bin= -if "$ac_cv_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then - cmp -s conftest.i conftest.out \ - && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" -fi -rm -f conftest.i conftest2.i conftest.out -test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"]) -_LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1], - [Command to truncate a binary pipe]) -])# _LT_CMD_TRUNCATE - - -# _LT_CHECK_MAGIC_METHOD -# ---------------------- -# how to check for library dependencies -# -- PORTME fill in with the dynamic library characteristics -m4_defun([_LT_CHECK_MAGIC_METHOD], -[m4_require([_LT_DECL_EGREP]) -m4_require([_LT_DECL_OBJDUMP]) -AC_CACHE_CHECK([how to recognize dependent libraries], -lt_cv_deplibs_check_method, -[lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# 'unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [[regex]]' -- check by looking for files in library path -# that responds to the $file_magic_cmd with a given extended regex. -# If you have 'file' or equivalent on your system and you're not sure -# whether 'pass_all' will *always* work, you probably want this one. - -case $host_os in -aix[[4-9]]*) - lt_cv_deplibs_check_method=pass_all - ;; - -beos*) - lt_cv_deplibs_check_method=pass_all - ;; - -bsdi[[45]]*) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' - lt_cv_file_magic_cmd='$FILECMD -L' - lt_cv_file_magic_test_file=/shlib/libc.so - ;; - -cygwin*) - # func_win32_libid is a shell function defined in ltmain.sh - lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' - lt_cv_file_magic_cmd='func_win32_libid' - ;; - -mingw* | pw32*) - # Base MSYS/MinGW do not provide the 'file' command needed by - # func_win32_libid shell function, so use a weaker test based on 'objdump', - # unless we find 'file', for example because we are cross-compiling. - if ( file / ) >/dev/null 2>&1; then - lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' - lt_cv_file_magic_cmd='func_win32_libid' - else - # Keep this pattern in sync with the one in func_win32_libid. - lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' - lt_cv_file_magic_cmd='$OBJDUMP -f' - fi - ;; - -cegcc*) - # use the weaker test based on 'objdump'. See mingw*. - lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' - lt_cv_file_magic_cmd='$OBJDUMP -f' - ;; - -darwin* | rhapsody*) - lt_cv_deplibs_check_method=pass_all - ;; - -freebsd* | dragonfly* | midnightbsd*) - if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' - lt_cv_file_magic_cmd=$FILECMD - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -haiku*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20* | hpux11*) - lt_cv_file_magic_cmd=$FILECMD - case $host_cpu in - ia64*) - lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' - lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so - ;; - hppa*64*) - [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]'] - lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl - ;; - *) - lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library' - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - esac - ;; - -interix[[3-9]]*) - # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' - ;; - -irix5* | irix6* | nonstopux*) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -netbsd* | netbsdelf*-gnu) - if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' - else - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' - fi - ;; - -newos6*) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' - lt_cv_file_magic_cmd=$FILECMD - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -*nto* | *qnx*) - lt_cv_deplibs_check_method=pass_all - ;; - -openbsd* | bitrig*) - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' - else - lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' - fi - ;; - -osf3* | osf4* | osf5*) - lt_cv_deplibs_check_method=pass_all - ;; - -rdos*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - lt_cv_deplibs_check_method=pass_all - ;; - -sysv4 | sysv4.3*) - case $host_vendor in - motorola) - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - sequent) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' - ;; - sni) - lt_cv_file_magic_cmd='/bin/file' - lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" - lt_cv_file_magic_test_file=/lib/libc.so - ;; - siemens) - lt_cv_deplibs_check_method=pass_all - ;; - pc) - lt_cv_deplibs_check_method=pass_all - ;; - esac - ;; - -tpf*) - lt_cv_deplibs_check_method=pass_all - ;; -os2*) - lt_cv_deplibs_check_method=pass_all - ;; -esac -]) - -file_magic_glob= -want_nocaseglob=no -if test "$build" = "$host"; then - case $host_os in - mingw* | pw32*) - if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then - want_nocaseglob=yes - else - file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"` - fi - ;; - esac -fi - -file_magic_cmd=$lt_cv_file_magic_cmd -deplibs_check_method=$lt_cv_deplibs_check_method -test -z "$deplibs_check_method" && deplibs_check_method=unknown - -_LT_DECL([], [deplibs_check_method], [1], - [Method to check whether dependent libraries are shared objects]) -_LT_DECL([], [file_magic_cmd], [1], - [Command to use when deplibs_check_method = "file_magic"]) -_LT_DECL([], [file_magic_glob], [1], - [How to find potential files when deplibs_check_method = "file_magic"]) -_LT_DECL([], [want_nocaseglob], [1], - [Find potential files using nocaseglob when deplibs_check_method = "file_magic"]) -])# _LT_CHECK_MAGIC_METHOD - - -# LT_PATH_NM -# ---------- -# find the pathname to a BSD- or MS-compatible name lister -AC_DEFUN([LT_PATH_NM], -[AC_REQUIRE([AC_PROG_CC])dnl -AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, -[if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM=$NM -else - lt_nm_to_check=${ac_tool_prefix}nm - if test -n "$ac_tool_prefix" && test "$build" = "$host"; then - lt_nm_to_check="$lt_nm_to_check nm" - fi - for lt_tmp_nm in $lt_nm_to_check; do - lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do - IFS=$lt_save_ifs - test -z "$ac_dir" && ac_dir=. - tmp_nm=$ac_dir/$lt_tmp_nm - if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the 'sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty - case $build_os in - mingw*) lt_bad_file=conftest.nm/nofile ;; - *) lt_bad_file=/dev/null ;; - esac - case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in - *$lt_bad_file* | *'Invalid file or object type'*) - lt_cv_path_NM="$tmp_nm -B" - break 2 - ;; - *) - case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in - */dev/null*) - lt_cv_path_NM="$tmp_nm -p" - break 2 - ;; - *) - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - ;; - esac - ;; - esac - fi - done - IFS=$lt_save_ifs - done - : ${lt_cv_path_NM=no} -fi]) -if test no != "$lt_cv_path_NM"; then - NM=$lt_cv_path_NM -else - # Didn't find any BSD compatible name lister, look for dumpbin. - if test -n "$DUMPBIN"; then : - # Let the user override the test. - else - AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) - case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in - *COFF*) - DUMPBIN="$DUMPBIN -symbols -headers" - ;; - *) - DUMPBIN=: - ;; - esac - fi - AC_SUBST([DUMPBIN]) - if test : != "$DUMPBIN"; then - NM=$DUMPBIN - fi -fi -test -z "$NM" && NM=nm -AC_SUBST([NM]) -_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl - -AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], - [lt_cv_nm_interface="BSD nm" - echo "int some_variable = 0;" > conftest.$ac_ext - (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD) - (eval "$ac_compile" 2>conftest.err) - cat conftest.err >&AS_MESSAGE_LOG_FD - (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) - (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) - cat conftest.err >&AS_MESSAGE_LOG_FD - (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD) - cat conftest.out >&AS_MESSAGE_LOG_FD - if $GREP 'External.*some_variable' conftest.out > /dev/null; then - lt_cv_nm_interface="MS dumpbin" - fi - rm -f conftest*]) -])# LT_PATH_NM - -# Old names: -AU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) -AU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AM_PROG_NM], []) -dnl AC_DEFUN([AC_PROG_NM], []) - -# _LT_CHECK_SHAREDLIB_FROM_LINKLIB -# -------------------------------- -# how to determine the name of the shared library -# associated with a specific link library. -# -- PORTME fill in with the dynamic library characteristics -m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB], -[m4_require([_LT_DECL_EGREP]) -m4_require([_LT_DECL_OBJDUMP]) -m4_require([_LT_DECL_DLLTOOL]) -AC_CACHE_CHECK([how to associate runtime and link libraries], -lt_cv_sharedlib_from_linklib_cmd, -[lt_cv_sharedlib_from_linklib_cmd='unknown' - -case $host_os in -cygwin* | mingw* | pw32* | cegcc*) - # two different shell functions defined in ltmain.sh; - # decide which one to use based on capabilities of $DLLTOOL - case `$DLLTOOL --help 2>&1` in - *--identify-strict*) - lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib - ;; - *) - lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback - ;; - esac - ;; -*) - # fallback: assume linklib IS sharedlib - lt_cv_sharedlib_from_linklib_cmd=$ECHO - ;; -esac -]) -sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd -test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO - -_LT_DECL([], [sharedlib_from_linklib_cmd], [1], - [Command to associate shared and link libraries]) -])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB - - -# _LT_PATH_MANIFEST_TOOL -# ---------------------- -# locate the manifest tool -m4_defun([_LT_PATH_MANIFEST_TOOL], -[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :) -test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt -AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool], - [lt_cv_path_mainfest_tool=no - echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD - $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out - cat conftest.err >&AS_MESSAGE_LOG_FD - if $GREP 'Manifest Tool' conftest.out > /dev/null; then - lt_cv_path_mainfest_tool=yes - fi - rm -f conftest*]) -if test yes != "$lt_cv_path_mainfest_tool"; then - MANIFEST_TOOL=: -fi -_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl -])# _LT_PATH_MANIFEST_TOOL - - -# _LT_DLL_DEF_P([FILE]) -# --------------------- -# True iff FILE is a Windows DLL '.def' file. -# Keep in sync with func_dll_def_p in the libtool script -AC_DEFUN([_LT_DLL_DEF_P], -[dnl - test DEF = "`$SED -n dnl - -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace - -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments - -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl - -e q dnl Only consider the first "real" line - $1`" dnl -])# _LT_DLL_DEF_P - - -# LT_LIB_M -# -------- -# check for math library -AC_DEFUN([LT_LIB_M], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -LIBM= -case $host in -*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*) - # These system don't have libm, or don't need it - ;; -*-ncr-sysv4.3*) - AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw) - AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") - ;; -*) - AC_CHECK_LIB(m, cos, LIBM=-lm) - ;; -esac -AC_SUBST([LIBM]) -])# LT_LIB_M - -# Old name: -AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_CHECK_LIBM], []) - - -# _LT_COMPILER_NO_RTTI([TAGNAME]) -# ------------------------------- -m4_defun([_LT_COMPILER_NO_RTTI], -[m4_require([_LT_TAG_COMPILER])dnl - -_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= - -if test yes = "$GCC"; then - case $cc_basename in - nvcc*) - _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;; - *) - _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;; - esac - - _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], - lt_cv_prog_compiler_rtti_exceptions, - [-fno-rtti -fno-exceptions], [], - [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) -fi -_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], - [Compiler flag to turn off builtin functions]) -])# _LT_COMPILER_NO_RTTI - - -# _LT_CMD_GLOBAL_SYMBOLS -# ---------------------- -m4_defun([_LT_CMD_GLOBAL_SYMBOLS], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_PROG_AWK])dnl -AC_REQUIRE([LT_PATH_NM])dnl -AC_REQUIRE([LT_PATH_LD])dnl -m4_require([_LT_DECL_SED])dnl -m4_require([_LT_DECL_EGREP])dnl -m4_require([_LT_TAG_COMPILER])dnl - -# Check for command to grab the raw symbol name followed by C symbol from nm. -AC_MSG_CHECKING([command to parse $NM output from $compiler object]) -AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], -[ -# These are sane defaults that work on at least a few old systems. -# [They come from Ultrix. What could be older than Ultrix?!! ;)] - -# Character class describing NM global symbol codes. -symcode='[[BCDEGRST]]' - -# Regexp to match symbols that can be accessed directly from C. -sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[[BCDT]]' - ;; -cygwin* | mingw* | pw32* | cegcc*) - symcode='[[ABCDGISTW]]' - ;; -hpux*) - if test ia64 = "$host_cpu"; then - symcode='[[ABCDEGRST]]' - fi - ;; -irix* | nonstopux*) - symcode='[[BCDEGRST]]' - ;; -osf*) - symcode='[[BCDEGQRST]]' - ;; -solaris*) - symcode='[[BDRT]]' - ;; -sco3.2v5*) - symcode='[[DT]]' - ;; -sysv4.2uw2*) - symcode='[[DT]]' - ;; -sysv5* | sco5v6* | unixware* | OpenUNIX*) - symcode='[[ABDT]]' - ;; -sysv4) - symcode='[[DFNSTU]]' - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -case `$NM -V 2>&1` in -*GNU* | *'with BFD'*) - symcode='[[ABCDGIRSTW]]' ;; -esac - -if test "$lt_cv_nm_interface" = "MS dumpbin"; then - # Gets list of data symbols to import. - lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'" - # Adjust the below global symbol transforms to fixup imported variables. - lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" - lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" - lt_c_name_lib_hook="\ - -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ - -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" -else - # Disable hooks by default. - lt_cv_sys_global_symbol_to_import= - lt_cdecl_hook= - lt_c_name_hook= - lt_c_name_lib_hook= -fi - -# Transform an extracted symbol line into a proper C declaration. -# Some systems (esp. on ia64) link data and code symbols differently, -# so use this general approach. -lt_cv_sys_global_symbol_to_cdecl="$SED -n"\ -$lt_cdecl_hook\ -" -e 's/^T .* \(.*\)$/extern int \1();/p'"\ -" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" - -# Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\ -$lt_c_name_hook\ -" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ -" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" - -# Transform an extracted symbol line into symbol name with lib prefix and -# symbol address. -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\ -$lt_c_name_lib_hook\ -" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ -" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ -" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" - -# Handle CRLF in mingw tool chain -opt_cr= -case $build_os in -mingw*) - opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp - ;; -esac - -# Try without a prefix underscore, then with it. -for ac_symprfx in "" "_"; do - - # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. - symxfrm="\\1 $ac_symprfx\\2 \\2" - - # Write the raw and C identifiers. - if test "$lt_cv_nm_interface" = "MS dumpbin"; then - # Fake it for dumpbin and say T for any non-static function, - # D for any global variable and I for any imported variable. - # Also find C++ and __fastcall symbols from MSVC++ or ICC, - # which start with @ or ?. - lt_cv_sys_global_symbol_pipe="$AWK ['"\ -" {last_section=section; section=\$ 3};"\ -" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ -" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ -" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ -" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ -" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ -" \$ 0!~/External *\|/{next};"\ -" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ -" {if(hide[section]) next};"\ -" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ -" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ -" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ -" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ -" ' prfx=^$ac_symprfx]" - else - lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" - fi - lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'" - - # Check to see that the pipe works correctly. - pipe_works=no - - rm -f conftest* - cat > conftest.$ac_ext <<_LT_EOF -#ifdef __cplusplus -extern "C" { -#endif -char nm_test_var; -void nm_test_func(void); -void nm_test_func(void){} -#ifdef __cplusplus -} -#endif -int main(){nm_test_var='a';nm_test_func();return(0);} -_LT_EOF - - if AC_TRY_EVAL(ac_compile); then - # Now try to grab the symbols. - nlist=conftest.nm - $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD - if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&AS_MESSAGE_LOG_FD && test -s "$nlist"; then - # Try sorting and uniquifying the output. - if sort "$nlist" | uniq > "$nlist"T; then - mv -f "$nlist"T "$nlist" - else - rm -f "$nlist"T - fi - - # Make sure that we snagged all the symbols we need. - if $GREP ' nm_test_var$' "$nlist" >/dev/null; then - if $GREP ' nm_test_func$' "$nlist" >/dev/null; then - cat <<_LT_EOF > conftest.$ac_ext -/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ -#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE -/* DATA imports from DLLs on WIN32 can't be const, because runtime - relocations are performed -- see ld's documentation on pseudo-relocs. */ -# define LT@&t@_DLSYM_CONST -#elif defined __osf__ -/* This system does not cope well with relocations in const data. */ -# define LT@&t@_DLSYM_CONST -#else -# define LT@&t@_DLSYM_CONST const -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -_LT_EOF - # Now generate the symbol file. - eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' - - cat <<_LT_EOF >> conftest.$ac_ext - -/* The mapping between symbol names and symbols. */ -LT@&t@_DLSYM_CONST struct { - const char *name; - void *address; -} -lt__PROGRAM__LTX_preloaded_symbols[[]] = -{ - { "@PROGRAM@", (void *) 0 }, -_LT_EOF - $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext - cat <<\_LT_EOF >> conftest.$ac_ext - {0, (void *) 0} -}; - -/* This works around a problem in FreeBSD linker */ -#ifdef FREEBSD_WORKAROUND -static const void *lt_preloaded_setup() { - return lt__PROGRAM__LTX_preloaded_symbols; -} -#endif - -#ifdef __cplusplus -} -#endif -_LT_EOF - # Now try linking the two files. - mv conftest.$ac_objext conftstm.$ac_objext - lt_globsym_save_LIBS=$LIBS - lt_globsym_save_CFLAGS=$CFLAGS - LIBS=conftstm.$ac_objext - CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" - if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then - pipe_works=yes - fi - LIBS=$lt_globsym_save_LIBS - CFLAGS=$lt_globsym_save_CFLAGS - else - echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD - fi - else - echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD - fi - else - echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD - fi - else - echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD - cat conftest.$ac_ext >&5 - fi - rm -rf conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test yes = "$pipe_works"; then - break - else - lt_cv_sys_global_symbol_pipe= - fi -done -]) -if test -z "$lt_cv_sys_global_symbol_pipe"; then - lt_cv_sys_global_symbol_to_cdecl= -fi -if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then - AC_MSG_RESULT(failed) -else - AC_MSG_RESULT(ok) -fi - -# Response file support. -if test "$lt_cv_nm_interface" = "MS dumpbin"; then - nm_file_list_spec='@' -elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then - nm_file_list_spec='@' -fi - -_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], - [Take the output of nm and produce a listing of raw symbols and C names]) -_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], - [Transform the output of nm in a proper C declaration]) -_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1], - [Transform the output of nm into a list of symbols to manually relocate]) -_LT_DECL([global_symbol_to_c_name_address], - [lt_cv_sys_global_symbol_to_c_name_address], [1], - [Transform the output of nm in a C name address pair]) -_LT_DECL([global_symbol_to_c_name_address_lib_prefix], - [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], - [Transform the output of nm in a C name address pair when lib prefix is needed]) -_LT_DECL([nm_interface], [lt_cv_nm_interface], [1], - [The name lister interface]) -_LT_DECL([], [nm_file_list_spec], [1], - [Specify filename containing input files for $NM]) -]) # _LT_CMD_GLOBAL_SYMBOLS - - -# _LT_COMPILER_PIC([TAGNAME]) -# --------------------------- -m4_defun([_LT_COMPILER_PIC], -[m4_require([_LT_TAG_COMPILER])dnl -_LT_TAGVAR(lt_prog_compiler_wl, $1)= -_LT_TAGVAR(lt_prog_compiler_pic, $1)= -_LT_TAGVAR(lt_prog_compiler_static, $1)= - -m4_if([$1], [CXX], [ - # C++ specific cases for pic, static, wl, etc. - if test yes = "$GXX"; then - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test ia64 = "$host_cpu"; then - # AIX 5 now supports IA64 processor - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - m68k) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the '-m68020' flag to GCC prevents building anything better, - # like '-m68040'. - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' - ;; - esac - ;; - - beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - mingw* | cygwin* | os2* | pw32* | cegcc*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - # Although the cygwin gcc ignores -fPIC, still need this for old-style - # (--disable-auto-import) libraries - m4_if([$1], [GCJ], [], - [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) - case $host_os in - os2*) - _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' - ;; - esac - ;; - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' - ;; - *djgpp*) - # DJGPP does not support shared libraries at all - _LT_TAGVAR(lt_prog_compiler_pic, $1)= - ;; - haiku*) - # PIC is the default for Haiku. - # The "-static" flag exists, but is broken. - _LT_TAGVAR(lt_prog_compiler_static, $1)= - ;; - interix[[3-9]]*) - # Interix 3.x gcc -fpic/-fPIC options generate broken code. - # Instead, we relocate shared libraries at runtime. - ;; - sysv4*MP*) - if test -d /usr/nec; then - _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic - fi - ;; - hpux*) - # PIC is the default for 64-bit PA HP-UX, but not for 32-bit - # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag - # sets the default TLS model and affects inlining. - case $host_cpu in - hppa*64*) - ;; - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - ;; - *qnx* | *nto*) - # QNX uses GNU C++, but need to define -shared option too, otherwise - # it will coredump. - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' - ;; - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - else - case $host_os in - aix[[4-9]]*) - # All AIX code is PIC. - if test ia64 = "$host_cpu"; then - # AIX 5 now supports IA64 processor - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - else - _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' - fi - ;; - chorus*) - case $cc_basename in - cxch68*) - # Green Hills C++ Compiler - # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" - ;; - esac - ;; - mingw* | cygwin* | os2* | pw32* | cegcc*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - m4_if([$1], [GCJ], [], - [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) - ;; - dgux*) - case $cc_basename in - ec++*) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - ;; - ghcx*) - # Green Hills C++ Compiler - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - *) - ;; - esac - ;; - freebsd* | dragonfly* | midnightbsd*) - # FreeBSD uses GNU C++ - ;; - hpux9* | hpux10* | hpux11*) - case $cc_basename in - CC*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' - if test ia64 != "$host_cpu"; then - _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - fi - ;; - aCC*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' - case $host_cpu in - hppa*64*|ia64*) - # +Z the default - ;; - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - ;; - esac - ;; - *) - ;; - esac - ;; - interix*) - # This is c89, which is MS Visual C++ (no shared libs) - # Anyone wants to do a port? - ;; - irix5* | irix6* | nonstopux*) - case $cc_basename in - CC*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - # CC pic flag -KPIC is the default. - ;; - *) - ;; - esac - ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - case $cc_basename in - KCC*) - # KAI C++ Compiler - _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - ecpc* ) - # old Intel C++ for x86_64, which still supported -KPIC. - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - icpc* ) - # Intel C++, used to be incompatible with GCC. - # ICC 10 doesn't accept -KPIC any more. - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - pgCC* | pgcpp*) - # Portland Group C++ compiler - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - cxx*) - # Compaq C++ - # Make sure the PIC flag is empty. It appears that all Alpha - # Linux and Compaq Tru64 Unix objects are PIC. - _LT_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*) - # IBM XL 8.0, 9.0 on PPC and BlueGene - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' - ;; - *) - case `$CC -V 2>&1 | $SED 5q` in - *Sun\ C*) - # Sun C++ 5.9 - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' - ;; - esac - ;; - esac - ;; - lynxos*) - ;; - m88k*) - ;; - mvs*) - case $cc_basename in - cxx*) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' - ;; - *) - ;; - esac - ;; - netbsd* | netbsdelf*-gnu) - ;; - *qnx* | *nto*) - # QNX uses GNU C++, but need to define -shared option too, otherwise - # it will coredump. - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' - ;; - osf3* | osf4* | osf5*) - case $cc_basename in - KCC*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' - ;; - RCC*) - # Rational C++ 2.4.1 - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - cxx*) - # Digital/Compaq C++ - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # Make sure the PIC flag is empty. It appears that all Alpha - # Linux and Compaq Tru64 Unix objects are PIC. - _LT_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - *) - ;; - esac - ;; - psos*) - ;; - solaris*) - case $cc_basename in - CC* | sunCC*) - # Sun C++ 4.2, 5.x and Centerline C++ - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' - ;; - gcx*) - # Green Hills C++ Compiler - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' - ;; - *) - ;; - esac - ;; - sunos4*) - case $cc_basename in - CC*) - # Sun C++ 4.x - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - lcc*) - # Lucid - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - ;; - *) - ;; - esac - ;; - sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) - case $cc_basename in - CC*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - esac - ;; - tandem*) - case $cc_basename in - NCC*) - # NonStop-UX NCC 3.20 - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - ;; - *) - ;; - esac - ;; - vxworks*) - ;; - *) - _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - ;; - esac - fi -], -[ - if test yes = "$GCC"; then - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test ia64 = "$host_cpu"; then - # AIX 5 now supports IA64 processor - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - m68k) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the '-m68020' flag to GCC prevents building anything better, - # like '-m68040'. - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' - ;; - esac - ;; - - beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - - mingw* | cygwin* | pw32* | os2* | cegcc*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - # Although the cygwin gcc ignores -fPIC, still need this for old-style - # (--disable-auto-import) libraries - m4_if([$1], [GCJ], [], - [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) - case $host_os in - os2*) - _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' - ;; - esac - ;; - - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' - ;; - - haiku*) - # PIC is the default for Haiku. - # The "-static" flag exists, but is broken. - _LT_TAGVAR(lt_prog_compiler_static, $1)= - ;; - - hpux*) - # PIC is the default for 64-bit PA HP-UX, but not for 32-bit - # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag - # sets the default TLS model and affects inlining. - case $host_cpu in - hppa*64*) - # +Z the default - ;; - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - ;; - - interix[[3-9]]*) - # Interix 3.x gcc -fpic/-fPIC options generate broken code. - # Instead, we relocate shared libraries at runtime. - ;; - - msdosdjgpp*) - # Just because we use GCC doesn't mean we suddenly get shared libraries - # on systems that don't support them. - _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - enable_shared=no - ;; - - *nto* | *qnx*) - # QNX uses GNU C++, but need to define -shared option too, otherwise - # it will coredump. - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic - fi - ;; - - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - ;; - esac - - case $cc_basename in - nvcc*) # Cuda Compiler Driver 2.2 - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker ' - if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then - _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)" - fi - ;; - esac - else - # PORTME Check for flag to pass linker flags through the system compiler. - case $host_os in - aix*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - if test ia64 = "$host_cpu"; then - # AIX 5 now supports IA64 processor - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - else - _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' - fi - ;; - - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' - case $cc_basename in - nagfor*) - # NAG Fortran compiler - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - esac - ;; - - mingw* | cygwin* | pw32* | os2* | cegcc*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - m4_if([$1], [GCJ], [], - [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) - case $host_os in - os2*) - _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' - ;; - esac - ;; - - hpux9* | hpux10* | hpux11*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but - # not for PA HP-UX. - case $host_cpu in - hppa*64*|ia64*) - # +Z the default - ;; - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' - ;; - esac - # Is there a better lt_prog_compiler_static that works with the bundled CC? - _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' - ;; - - irix5* | irix6* | nonstopux*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # PIC (with -KPIC) is the default. - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - - linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - case $cc_basename in - # old Intel for x86_64, which still supported -KPIC. - ecc*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - # flang / f18. f95 an alias for gfortran or flang on Debian - flang* | f18* | f95*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - # icc used to be incompatible with GCC. - # ICC 10 doesn't accept -KPIC any more. - icc* | ifort*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - # Lahey Fortran 8.1. - lf95*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' - _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' - ;; - nagfor*) - # NAG Fortran compiler - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - tcc*) - # Fabrice Bellard et al's Tiny C Compiler - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) - # Portland Group compilers (*not* the Pentium gcc compiler, - # which looks to be a dead project) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - ccc*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # All Alpha code is PIC. - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - xl* | bgxl* | bgf* | mpixl*) - # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' - ;; - *) - case `$CC -V 2>&1 | $SED 5q` in - *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) - # Sun Fortran 8.3 passes all unrecognized flags to the linker - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - _LT_TAGVAR(lt_prog_compiler_wl, $1)='' - ;; - *Sun\ F* | *Sun*Fortran*) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' - ;; - *Sun\ C*) - # Sun C 5.9 - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - ;; - *Intel*\ [[CF]]*Compiler*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; - *Portland\ Group*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - esac - ;; - esac - ;; - - newsos6) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - *nto* | *qnx*) - # QNX uses GNU C++, but need to define -shared option too, otherwise - # it will coredump. - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' - ;; - - osf3* | osf4* | osf5*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - # All OSF/1 code is PIC. - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - - rdos*) - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - - solaris*) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - case $cc_basename in - f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; - *) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; - esac - ;; - - sunos4*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - fi - ;; - - sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - unicos*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - ;; - - uts4*) - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' - ;; - - *) - _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no - ;; - esac - fi -]) -case $host_os in - # For platforms that do not support PIC, -DPIC is meaningless: - *djgpp*) - _LT_TAGVAR(lt_prog_compiler_pic, $1)= - ;; - *) - _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" - ;; -esac - -AC_CACHE_CHECK([for $compiler option to produce PIC], - [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)], - [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) -_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1) - -# -# Check to make sure the PIC flag actually works. -# -if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then - _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], - [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], - [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], - [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in - "" | " "*) ;; - *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;; - esac], - [_LT_TAGVAR(lt_prog_compiler_pic, $1)= - _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) -fi -_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], - [Additional compiler flags for building library objects]) - -_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], - [How to pass a linker flag through the compiler]) -# -# Check to make sure the static flag actually works. -# -wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" -_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], - _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), - $lt_tmp_static_flag, - [], - [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) -_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], - [Compiler flag to prevent dynamic linking]) -])# _LT_COMPILER_PIC - - -# _LT_LINKER_SHLIBS([TAGNAME]) -# ---------------------------- -# See if the linker supports building shared libraries. -m4_defun([_LT_LINKER_SHLIBS], -[AC_REQUIRE([LT_PATH_LD])dnl -AC_REQUIRE([LT_PATH_NM])dnl -m4_require([_LT_PATH_MANIFEST_TOOL])dnl -m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_DECL_EGREP])dnl -m4_require([_LT_DECL_SED])dnl -m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl -m4_require([_LT_TAG_COMPILER])dnl -AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) -m4_if([$1], [CXX], [ - _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] - case $host_os in - aix[[4-9]]*) - # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to GNU nm, but means don't demangle to AIX nm. - # Without the "-l" option, or with the "-B" option, AIX nm treats - # weak defined symbols like other global defined symbols, whereas - # GNU nm marks them as "W". - # While the 'weak' keyword is ignored in the Export File, we need - # it in the Import File for the 'aix-soname' feature, so we have - # to replace the "-B" option with "-P" for AIX nm. - if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then - _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' - else - _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' - fi - ;; - pw32*) - _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds - ;; - cygwin* | mingw* | cegcc*) - case $cc_basename in - cl* | icl*) - _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' - ;; - *) - _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' - _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] - ;; - esac - ;; - linux* | k*bsd*-gnu | gnu*) - _LT_TAGVAR(link_all_deplibs, $1)=no - ;; - *) - _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - ;; - esac -], [ - runpath_var= - _LT_TAGVAR(allow_undefined_flag, $1)= - _LT_TAGVAR(always_export_symbols, $1)=no - _LT_TAGVAR(archive_cmds, $1)= - _LT_TAGVAR(archive_expsym_cmds, $1)= - _LT_TAGVAR(compiler_needs_object, $1)=no - _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no - _LT_TAGVAR(export_dynamic_flag_spec, $1)= - _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - _LT_TAGVAR(hardcode_automatic, $1)=no - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_direct_absolute, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= - _LT_TAGVAR(hardcode_libdir_separator, $1)= - _LT_TAGVAR(hardcode_minus_L, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported - _LT_TAGVAR(inherit_rpath, $1)=no - _LT_TAGVAR(link_all_deplibs, $1)=unknown - _LT_TAGVAR(module_cmds, $1)= - _LT_TAGVAR(module_expsym_cmds, $1)= - _LT_TAGVAR(old_archive_from_new_cmds, $1)= - _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= - _LT_TAGVAR(thread_safe_flag_spec, $1)= - _LT_TAGVAR(whole_archive_flag_spec, $1)= - # include_expsyms should be a list of space-separated symbols to be *always* - # included in the symbol list - _LT_TAGVAR(include_expsyms, $1)= - # exclude_expsyms can be an extended regexp of symbols to exclude - # it will be wrapped by ' (' and ')$', so one must not match beginning or - # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', - # as well as any symbol that contains 'd'. - _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] - # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out - # platforms (ab)use it in PIC code, but their linkers get confused if - # the symbol is explicitly referenced. Since portable code cannot - # rely on this symbol name, it's probably fine to never include it in - # preloaded symbol tables. - # Exclude shared library initialization/finalization symbols. -dnl Note also adjust exclude_expsyms for C++ above. - extract_expsyms_cmds= - - case $host_os in - cygwin* | mingw* | pw32* | cegcc*) - # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++ or Intel C++ Compiler. - if test yes != "$GCC"; then - with_gnu_ld=no - fi - ;; - interix*) - # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC) - with_gnu_ld=yes - ;; - openbsd* | bitrig*) - with_gnu_ld=no - ;; - linux* | k*bsd*-gnu | gnu*) - _LT_TAGVAR(link_all_deplibs, $1)=no - ;; - esac - - _LT_TAGVAR(ld_shlibs, $1)=yes - - # On some targets, GNU ld is compatible enough with the native linker - # that we're better off using the native interface for both. - lt_use_gnu_ld_interface=no - if test yes = "$with_gnu_ld"; then - case $host_os in - aix*) - # The AIX port of GNU ld has always aspired to compatibility - # with the native linker. However, as the warning in the GNU ld - # block says, versions before 2.19.5* couldn't really create working - # shared libraries, regardless of the interface used. - case `$LD -v 2>&1` in - *\ \(GNU\ Binutils\)\ 2.19.5*) ;; - *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;; - *\ \(GNU\ Binutils\)\ [[3-9]]*) ;; - *) - lt_use_gnu_ld_interface=yes - ;; - esac - ;; - *) - lt_use_gnu_ld_interface=yes - ;; - esac - fi - - if test yes = "$lt_use_gnu_ld_interface"; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='$wl' - - # Set some defaults for GNU ld with shared library support. These - # are reset later if shared libraries are not supported. Putting them - # here allows them to be overridden if necessary. - runpath_var=LD_RUN_PATH - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then - _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' - else - _LT_TAGVAR(whole_archive_flag_spec, $1)= - fi - supports_anon_versioning=no - case `$LD -v | $SED -e 's/([[^)]]\+)\s\+//' 2>&1` in - *GNU\ gold*) supports_anon_versioning=yes ;; - *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 - *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... - *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... - *\ 2.11.*) ;; # other 2.11 versions - *) supports_anon_versioning=yes ;; - esac - - # See if GNU ld supports shared libraries. - case $host_os in - aix[[3-9]]*) - # On AIX/PPC, the GNU linker is very broken - if test ia64 != "$host_cpu"; then - _LT_TAGVAR(ld_shlibs, $1)=no - cat <<_LT_EOF 1>&2 - -*** Warning: the GNU linker, at least up to release 2.19, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to install binutils -*** 2.20 or above, or modify your PATH so that a non-GNU linker is found. -*** You will then need to restart the configuration process. - -_LT_EOF - fi - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='' - ;; - m68k) - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_minus_L, $1)=yes - ;; - esac - ;; - - beos*) - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - cygwin* | mingw* | pw32* | cegcc*) - # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, - # as there is no search path for DLLs. - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_TAGVAR(always_export_symbols, $1)=no - _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' - _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] - - if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file, use it as - # is; otherwise, prepend EXPORTS... - _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - haiku*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(link_all_deplibs, $1)=yes - ;; - - os2*) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - shrext_cmds=.dll - _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - prefix_cmds="$SED"~ - if test EXPORTS = "`$SED 1q $export_symbols`"; then - prefix_cmds="$prefix_cmds -e 1d"; - fi~ - prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ - cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' - _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='@' - ;; - - interix[[3-9]]*) - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' - # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. - # Instead, shared libraries are loaded at an image base (0x10000000 by - # default) and relocated if they conflict, which is a slow very memory - # consuming and fragmenting process. To avoid this, we pick a random, - # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link - # time. Moving up from 0x10000000 also allows more sbrk(2) space. - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - ;; - - gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) - tmp_diet=no - if test linux-dietlibc = "$host_os"; then - case $cc_basename in - diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) - esac - fi - if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ - && test no = "$tmp_diet" - then - tmp_addflag=' $pic_flag' - tmp_sharedflag='-shared' - case $cc_basename,$host_cpu in - pgcc*) # Portland Group C compiler - _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - tmp_addflag=' $pic_flag' - ;; - pgf77* | pgf90* | pgf95* | pgfortran*) - # Portland Group f77 and f90 compilers - _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - tmp_addflag=' $pic_flag -Mnomain' ;; - ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 - tmp_addflag=' -i_dynamic' ;; - efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 - tmp_addflag=' -i_dynamic -nofor_main' ;; - ifc* | ifort*) # Intel Fortran compiler - tmp_addflag=' -nofor_main' ;; - lf95*) # Lahey Fortran 8.1 - _LT_TAGVAR(whole_archive_flag_spec, $1)= - tmp_sharedflag='--shared' ;; - nagfor*) # NAGFOR 5.3 - tmp_sharedflag='-Wl,-shared' ;; - xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) - tmp_sharedflag='-qmkshrobj' - tmp_addflag= ;; - nvcc*) # Cuda Compiler Driver 2.2 - _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - _LT_TAGVAR(compiler_needs_object, $1)=yes - ;; - esac - case `$CC -V 2>&1 | $SED 5q` in - *Sun\ C*) # Sun C 5.9 - _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - _LT_TAGVAR(compiler_needs_object, $1)=yes - tmp_sharedflag='-G' ;; - *Sun\ F*) # Sun Fortran 8.3 - tmp_sharedflag='-G' ;; - esac - _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - - if test yes = "$supports_anon_versioning"; then - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' - fi - - case $cc_basename in - tcc*) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic' - ;; - xlf* | bgf* | bgxlf* | mpixlf*) - # IBM XL Fortran 10.1 on PPC cannot create shared libs itself - _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' - if test yes = "$supports_anon_versioning"; then - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' - fi - ;; - esac - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - netbsd* | netbsdelf*-gnu) - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris*) - if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then - _LT_TAGVAR(ld_shlibs, $1)=no - cat <<_LT_EOF 1>&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -_LT_EOF - elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) - case `$LD -v 2>&1` in - *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) - _LT_TAGVAR(ld_shlibs, $1)=no - cat <<_LT_EOF 1>&2 - -*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot -*** reliably create shared libraries on SCO systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.16.91.0.3 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -_LT_EOF - ;; - *) - # For security reasons, it is highly recommended that you always - # use absolute paths for naming shared libraries, and exclude the - # DT_RUNPATH tag from executables and libraries. But doing so - # requires that you compile everything twice, which is a pain. - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - - sunos4*) - _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - *) - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - - if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then - runpath_var= - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= - _LT_TAGVAR(export_dynamic_flag_spec, $1)= - _LT_TAGVAR(whole_archive_flag_spec, $1)= - fi - else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_TAGVAR(always_export_symbols, $1)=yes - _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - _LT_TAGVAR(hardcode_minus_L, $1)=yes - if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - _LT_TAGVAR(hardcode_direct, $1)=unsupported - fi - ;; - - aix[[4-9]]*) - if test ia64 = "$host_cpu"; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag= - else - # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to GNU nm, but means don't demangle to AIX nm. - # Without the "-l" option, or with the "-B" option, AIX nm treats - # weak defined symbols like other global defined symbols, whereas - # GNU nm marks them as "W". - # While the 'weak' keyword is ignored in the Export File, we need - # it in the Import File for the 'aix-soname' feature, so we have - # to replace the "-B" option with "-P" for AIX nm. - if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then - _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' - else - _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' - fi - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # have runtime linking enabled, and use it for executables. - # For shared libraries, we enable/disable runtime linking - # depending on the kind of the shared library created - - # when "with_aix_soname,aix_use_runtimelinking" is: - # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables - # "aix,yes" lib.so shared, rtl:yes, for executables - # lib.a static archive - # "both,no" lib.so.V(shr.o) shared, rtl:yes - # lib.a(lib.so.V) shared, rtl:no, for executables - # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables - # lib.a(lib.so.V) shared, rtl:no - # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables - # lib.a static archive - case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) - for ld_flag in $LDFLAGS; do - if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then - aix_use_runtimelinking=yes - break - fi - done - if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then - # With aix-soname=svr4, we create the lib.so.V shared archives only, - # so we don't have lib.a shared libs to link our executables. - # We have to force runtime linking in this case. - aix_use_runtimelinking=yes - LDFLAGS="$LDFLAGS -Wl,-brtl" - fi - ;; - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - _LT_TAGVAR(archive_cmds, $1)='' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='$wl-f,' - case $with_aix_soname,$aix_use_runtimelinking in - aix,*) ;; # traditional, no import file - svr4,* | *,yes) # use import file - # The Import File defines what to hardcode. - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_direct_absolute, $1)=no - ;; - esac - - if test yes = "$GCC"; then - case $host_os in aix4.[[012]]|aix4.[[012]].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`$CC -print-prog-name=collect2` - if test -f "$collect2name" && - strings "$collect2name" | $GREP resolve_lib_name >/dev/null - then - # We have reworked collect2 - : - else - # We have old collect2 - _LT_TAGVAR(hardcode_direct, $1)=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)= - fi - ;; - esac - shared_flag='-shared' - if test yes = "$aix_use_runtimelinking"; then - shared_flag="$shared_flag "'$wl-G' - fi - # Need to ensure runtime linking is disabled for the traditional - # shared library, or the linker may eventually find shared libraries - # /with/ Import File - we do not want to mix them. - shared_flag_aix='-shared' - shared_flag_svr4='-shared $wl-G' - else - # not using gcc - if test ia64 = "$host_cpu"; then - # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release - # chokes on -Wl,-G. The following line is correct: - shared_flag='-G' - else - if test yes = "$aix_use_runtimelinking"; then - shared_flag='$wl-G' - else - shared_flag='$wl-bM:SRE' - fi - shared_flag_aix='$wl-bM:SRE' - shared_flag_svr4='$wl-G' - fi - fi - - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' - # It seems that -bexpall does not export symbols beginning with - # underscore (_), so it is better to generate a list of symbols to export. - _LT_TAGVAR(always_export_symbols, $1)=yes - if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - _LT_TAGVAR(allow_undefined_flag, $1)='-berok' - # Determine the default libpath from the value encoded in an - # empty executable. - _LT_SYS_MODULE_PATH_AIX([$1]) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag - else - if test ia64 = "$host_cpu"; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' - _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" - _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" - else - # Determine the default libpath from the value encoded in an - # empty executable. - _LT_SYS_MODULE_PATH_AIX([$1]) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' - _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' - if test yes = "$with_gnu_ld"; then - # We only use this code for GNU lds that support --whole-archive. - _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' - else - # Exported symbols can be pulled into shared objects from archives - _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' - fi - _LT_TAGVAR(archive_cmds_need_lc, $1)=yes - _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' - # -brtl affects multiple linker settings, -berok does not and is overridden later - compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' - if test svr4 != "$with_aix_soname"; then - # This is similar to how AIX traditionally builds its shared libraries. - _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' - fi - if test aix != "$with_aix_soname"; then - _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' - else - # used by -dlpreopen to get the symbols - _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' - fi - _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' - fi - fi - ;; - - amigaos*) - case $host_cpu in - powerpc) - # see comment about AmigaOS4 .so support - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='' - ;; - m68k) - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_minus_L, $1)=yes - ;; - esac - ;; - - bsdi[[45]]*) - _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic - ;; - - cygwin* | mingw* | pw32* | cegcc*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++ or Intel C++ Compiler. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - case $cc_basename in - cl* | icl*) - # Native MSVC or ICC - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_TAGVAR(always_export_symbols, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='@' - # Tell ltmain to make .lib files, not .a files. - libext=lib - # Tell ltmain to make .dll files, not .so files. - shrext_cmds=.dll - # FIXME: Setting linknames here is a bad hack. - _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' - _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then - cp "$export_symbols" "$output_objdir/$soname.def"; - echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; - else - $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; - fi~ - $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ - linknames=' - # The linker will not automatically build a static lib if we build a DLL. - # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' - _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' - _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols' - # Don't use ranlib - _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' - _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ - lt_tool_outputfile="@TOOL_OUTPUT@"~ - case $lt_outputfile in - *.exe|*.EXE) ;; - *) - lt_outputfile=$lt_outputfile.exe - lt_tool_outputfile=$lt_tool_outputfile.exe - ;; - esac~ - if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then - $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; - $RM "$lt_outputfile.manifest"; - fi' - ;; - *) - # Assume MSVC and ICC wrapper - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # Tell ltmain to make .dll files, not .so files. - shrext_cmds=.dll - # FIXME: Setting linknames here is a bad hack. - _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' - # FIXME: Should let the user specify the lib program. - _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' - _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - ;; - esac - ;; - - darwin* | rhapsody*) - _LT_DARWIN_LINKER_FEATURES($1) - ;; - - dgux*) - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor - # support. Future versions do this automatically, but an explicit c++rt0.o - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2.*) - _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | dragonfly* | midnightbsd*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - hpux9*) - if test yes = "$GCC"; then - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' - else - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' - fi - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_TAGVAR(hardcode_direct, $1)=yes - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' - ;; - - hpux10*) - if test yes,no = "$GCC,$with_gnu_ld"; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' - else - _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' - fi - if test no = "$with_gnu_ld"; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_TAGVAR(hardcode_minus_L, $1)=yes - fi - ;; - - hpux11*) - if test yes,no = "$GCC,$with_gnu_ld"; then - case $host_cpu in - hppa*64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - ia64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - else - case $host_cpu in - hppa*64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - ia64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - m4_if($1, [], [ - # Older versions of the 11.00 compiler do not understand -b yet - # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) - _LT_LINKER_OPTION([if $CC understands -b], - _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b], - [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'], - [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])], - [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags']) - ;; - esac - fi - if test no = "$with_gnu_ld"; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - - case $host_cpu in - hppa*64*|ia64*) - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - *) - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' - - # hardcode_minus_L: Not really in the search PATH, - # but as the default location of the library. - _LT_TAGVAR(hardcode_minus_L, $1)=yes - ;; - esac - fi - ;; - - irix5* | irix6* | nonstopux*) - if test yes = "$GCC"; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' - # Try to use the -exported_symbol ld option, if it does not - # work, assume that -exports_file does not work either and - # implicitly export all symbols. - # This should be the same for all languages, so no per-tag cache variable. - AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol], - [lt_cv_irix_exported_symbol], - [save_LDFLAGS=$LDFLAGS - LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" - AC_LINK_IFELSE( - [AC_LANG_SOURCE( - [AC_LANG_CASE([C], [[int foo (void) { return 0; }]], - [C++], [[int foo (void) { return 0; }]], - [Fortran 77], [[ - subroutine foo - end]], - [Fortran], [[ - subroutine foo - end]])])], - [lt_cv_irix_exported_symbol=yes], - [lt_cv_irix_exported_symbol=no]) - LDFLAGS=$save_LDFLAGS]) - if test yes = "$lt_cv_irix_exported_symbol"; then - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' - fi - _LT_TAGVAR(link_all_deplibs, $1)=no - else - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' - fi - _LT_TAGVAR(archive_cmds_need_lc, $1)='no' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_TAGVAR(inherit_rpath, $1)=yes - _LT_TAGVAR(link_all_deplibs, $1)=yes - ;; - - linux*) - case $cc_basename in - tcc*) - # Fabrice Bellard et al's Tiny C Compiler - _LT_TAGVAR(ld_shlibs, $1)=yes - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - ;; - esac - ;; - - netbsd* | netbsdelf*-gnu) - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - newsos6) - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - *nto* | *qnx*) - ;; - - openbsd* | bitrig*) - if test -f /usr/libexec/ld.so; then - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' - else - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' - fi - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - os2*) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - shrext_cmds=.dll - _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - prefix_cmds="$SED"~ - if test EXPORTS = "`$SED 1q $export_symbols`"; then - prefix_cmds="$prefix_cmds -e 1d"; - fi~ - prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ - cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' - _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='@' - ;; - - osf3*) - if test yes = "$GCC"; then - _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' - else - _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' - fi - _LT_TAGVAR(archive_cmds_need_lc, $1)='no' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test yes = "$GCC"; then - _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - else - _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ - $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp' - - # Both c and cxx compiler support -rpath directly - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - fi - _LT_TAGVAR(archive_cmds_need_lc, $1)='no' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - ;; - - solaris*) - _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' - if test yes = "$GCC"; then - wlarc='$wl' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' - else - case `$CC -V 2>&1` in - *"Compilers 5.0"*) - wlarc='' - _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' - ;; - *) - wlarc='$wl' - _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' - ;; - esac - fi - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - case $host_os in - solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; - *) - # The compiler driver will combine and reorder linker options, - # but understands '-z linker_flag'. GCC discards it without '$wl', - # but is careful enough not to reorder. - # Supported since Solaris 2.6 (maybe 2.5.1?) - if test yes = "$GCC"; then - _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' - else - _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' - fi - ;; - esac - _LT_TAGVAR(link_all_deplibs, $1)=yes - ;; - - sunos4*) - if test sequent = "$host_vendor"; then - # Use $CC to link under sequent, because it throws in some extra .o - # files that make .init and .fini sections work. - _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' - else - _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - fi - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - sysv4) - case $host_vendor in - sni) - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? - ;; - siemens) - ## LD is ld it makes a PLAMLIB - ## CC just makes a GrossModule. - _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' - _LT_TAGVAR(hardcode_direct, $1)=no - ;; - motorola) - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie - ;; - esac - runpath_var='LD_RUN_PATH' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - sysv4.3*) - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' - ;; - - sysv4*MP*) - if test -d /usr/nec; then - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - _LT_TAGVAR(ld_shlibs, $1)=yes - fi - ;; - - sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) - _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - runpath_var='LD_RUN_PATH' - - if test yes = "$GCC"; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - else - _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - ;; - - sysv5* | sco3.2v5* | sco5v6*) - # Note: We CANNOT use -z defs as we might desire, because we do not - # link with -lc, and that would cause any symbols used from libc to - # always be unresolved, which means just about no library would - # ever link correctly. If we're not using GNU ld we use -z text - # though, which does catch some bad symbols but isn't as heavy-handed - # as -z defs. - _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' - _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' - runpath_var='LD_RUN_PATH' - - if test yes = "$GCC"; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - else - _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - ;; - - uts4*) - _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - - *) - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - - if test sni = "$host_vendor"; then - case $host in - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym' - ;; - esac - fi - fi -]) -AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) -test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no - -_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld - -_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl -_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl -_LT_DECL([], [extract_expsyms_cmds], [2], - [The commands to extract the exported symbol list from a shared archive]) - -# -# Do we need to explicitly link libc? -# -case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in -x|xyes) - # Assume -lc should be added - _LT_TAGVAR(archive_cmds_need_lc, $1)=yes - - if test yes,yes = "$GCC,$enable_shared"; then - case $_LT_TAGVAR(archive_cmds, $1) in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - AC_CACHE_CHECK([whether -lc should be explicitly linked in], - [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1), - [$RM conftest* - echo "$lt_simple_compile_test_code" > conftest.$ac_ext - - if AC_TRY_EVAL(ac_compile) 2>conftest.err; then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) - pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1) - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) - _LT_TAGVAR(allow_undefined_flag, $1)= - if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) - then - lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no - else - lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes - fi - _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi - $RM conftest* - ]) - _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1) - ;; - esac - fi - ;; -esac - -_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], - [Whether or not to add -lc for building shared libraries]) -_LT_TAGDECL([allow_libtool_libs_with_static_runtimes], - [enable_shared_with_static_runtimes], [0], - [Whether or not to disallow shared libs when runtime libs are static]) -_LT_TAGDECL([], [export_dynamic_flag_spec], [1], - [Compiler flag to allow reflexive dlopens]) -_LT_TAGDECL([], [whole_archive_flag_spec], [1], - [Compiler flag to generate shared objects directly from archives]) -_LT_TAGDECL([], [compiler_needs_object], [1], - [Whether the compiler copes with passing no objects directly]) -_LT_TAGDECL([], [old_archive_from_new_cmds], [2], - [Create an old-style archive from a shared archive]) -_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], - [Create a temporary old-style archive to link instead of a shared archive]) -_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) -_LT_TAGDECL([], [archive_expsym_cmds], [2]) -_LT_TAGDECL([], [module_cmds], [2], - [Commands used to build a loadable module if different from building - a shared archive.]) -_LT_TAGDECL([], [module_expsym_cmds], [2]) -_LT_TAGDECL([], [with_gnu_ld], [1], - [Whether we are building with GNU ld or not]) -_LT_TAGDECL([], [allow_undefined_flag], [1], - [Flag that allows shared libraries with undefined symbols to be built]) -_LT_TAGDECL([], [no_undefined_flag], [1], - [Flag that enforces no undefined symbols]) -_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], - [Flag to hardcode $libdir into a binary during linking. - This must work even if $libdir does not exist]) -_LT_TAGDECL([], [hardcode_libdir_separator], [1], - [Whether we need a single "-rpath" flag with a separated argument]) -_LT_TAGDECL([], [hardcode_direct], [0], - [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes - DIR into the resulting binary]) -_LT_TAGDECL([], [hardcode_direct_absolute], [0], - [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes - DIR into the resulting binary and the resulting library dependency is - "absolute", i.e impossible to change by setting $shlibpath_var if the - library is relocated]) -_LT_TAGDECL([], [hardcode_minus_L], [0], - [Set to "yes" if using the -LDIR flag during linking hardcodes DIR - into the resulting binary]) -_LT_TAGDECL([], [hardcode_shlibpath_var], [0], - [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR - into the resulting binary]) -_LT_TAGDECL([], [hardcode_automatic], [0], - [Set to "yes" if building a shared library automatically hardcodes DIR - into the library and all subsequent libraries and executables linked - against it]) -_LT_TAGDECL([], [inherit_rpath], [0], - [Set to yes if linker adds runtime paths of dependent libraries - to runtime path list]) -_LT_TAGDECL([], [link_all_deplibs], [0], - [Whether libtool must link a program against all its dependency libraries]) -_LT_TAGDECL([], [always_export_symbols], [0], - [Set to "yes" if exported symbols are required]) -_LT_TAGDECL([], [export_symbols_cmds], [2], - [The commands to list exported symbols]) -_LT_TAGDECL([], [exclude_expsyms], [1], - [Symbols that should not be listed in the preloaded symbols]) -_LT_TAGDECL([], [include_expsyms], [1], - [Symbols that must always be exported]) -_LT_TAGDECL([], [prelink_cmds], [2], - [Commands necessary for linking programs (against libraries) with templates]) -_LT_TAGDECL([], [postlink_cmds], [2], - [Commands necessary for finishing linking programs]) -_LT_TAGDECL([], [file_list_spec], [1], - [Specify filename containing input files]) -dnl FIXME: Not yet implemented -dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], -dnl [Compiler flag to generate thread safe objects]) -])# _LT_LINKER_SHLIBS - - -# _LT_LANG_C_CONFIG([TAG]) -# ------------------------ -# Ensure that the configuration variables for a C compiler are suitably -# defined. These variables are subsequently used by _LT_CONFIG to write -# the compiler configuration to 'libtool'. -m4_defun([_LT_LANG_C_CONFIG], -[m4_require([_LT_DECL_EGREP])dnl -lt_save_CC=$CC -AC_LANG_PUSH(C) - -# Source file extension for C test sources. -ac_ext=c - -# Object file extension for compiled C test sources. -objext=o -_LT_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;" - -# Code to be used in simple link tests -lt_simple_link_test_code='int main(){return(0);}' - -_LT_TAG_COMPILER -# Save the default compiler, since it gets overwritten when the other -# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. -compiler_DEFAULT=$CC - -# save warnings/boilerplate of simple test code -_LT_COMPILER_BOILERPLATE -_LT_LINKER_BOILERPLATE - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -if test -n "$compiler"; then - _LT_COMPILER_NO_RTTI($1) - _LT_COMPILER_PIC($1) - _LT_COMPILER_C_O($1) - _LT_COMPILER_FILE_LOCKS($1) - _LT_LINKER_SHLIBS($1) - _LT_SYS_DYNAMIC_LINKER($1) - _LT_LINKER_HARDCODE_LIBPATH($1) - LT_SYS_DLOPEN_SELF - _LT_CMD_STRIPLIB - - # Report what library types will actually be built - AC_MSG_CHECKING([if libtool supports shared libraries]) - AC_MSG_RESULT([$can_build_shared]) - - AC_MSG_CHECKING([whether to build shared libraries]) - test no = "$can_build_shared" && enable_shared=no - - # On AIX, shared libraries and static libraries use the same namespace, and - # are all built from PIC. - case $host_os in - aix3*) - test yes = "$enable_shared" && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - - aix[[4-9]]*) - if test ia64 != "$host_cpu"; then - case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in - yes,aix,yes) ;; # shared object as lib.so file only - yes,svr4,*) ;; # shared object as lib.so archive member only - yes,*) enable_static=no ;; # shared object in lib.a archive as well - esac - fi - ;; - esac - AC_MSG_RESULT([$enable_shared]) - - AC_MSG_CHECKING([whether to build static libraries]) - # Make sure either enable_shared or enable_static is yes. - test yes = "$enable_shared" || enable_static=yes - AC_MSG_RESULT([$enable_static]) - - _LT_CONFIG($1) -fi -AC_LANG_POP -CC=$lt_save_CC -])# _LT_LANG_C_CONFIG - - -# _LT_LANG_CXX_CONFIG([TAG]) -# -------------------------- -# Ensure that the configuration variables for a C++ compiler are suitably -# defined. These variables are subsequently used by _LT_CONFIG to write -# the compiler configuration to 'libtool'. -m4_defun([_LT_LANG_CXX_CONFIG], -[m4_require([_LT_FILEUTILS_DEFAULTS])dnl -m4_require([_LT_DECL_EGREP])dnl -m4_require([_LT_PATH_MANIFEST_TOOL])dnl -if test -n "$CXX" && ( test no != "$CXX" && - ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) || - (test g++ != "$CXX"))); then - AC_PROG_CXXCPP -else - _lt_caught_CXX_error=yes -fi - -AC_LANG_PUSH(C++) -_LT_TAGVAR(archive_cmds_need_lc, $1)=no -_LT_TAGVAR(allow_undefined_flag, $1)= -_LT_TAGVAR(always_export_symbols, $1)=no -_LT_TAGVAR(archive_expsym_cmds, $1)= -_LT_TAGVAR(compiler_needs_object, $1)=no -_LT_TAGVAR(export_dynamic_flag_spec, $1)= -_LT_TAGVAR(hardcode_direct, $1)=no -_LT_TAGVAR(hardcode_direct_absolute, $1)=no -_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= -_LT_TAGVAR(hardcode_libdir_separator, $1)= -_LT_TAGVAR(hardcode_minus_L, $1)=no -_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported -_LT_TAGVAR(hardcode_automatic, $1)=no -_LT_TAGVAR(inherit_rpath, $1)=no -_LT_TAGVAR(module_cmds, $1)= -_LT_TAGVAR(module_expsym_cmds, $1)= -_LT_TAGVAR(link_all_deplibs, $1)=unknown -_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_TAGVAR(reload_flag, $1)=$reload_flag -_LT_TAGVAR(reload_cmds, $1)=$reload_cmds -_LT_TAGVAR(no_undefined_flag, $1)= -_LT_TAGVAR(whole_archive_flag_spec, $1)= -_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no - -# Source file extension for C++ test sources. -ac_ext=cpp - -# Object file extension for compiled C++ test sources. -objext=o -_LT_TAGVAR(objext, $1)=$objext - -# No sense in running all these tests if we already determined that -# the CXX compiler isn't working. Some variables (like enable_shared) -# are currently assumed to apply to all compilers on this platform, -# and will be corrupted by setting them based on a non-working compiler. -if test yes != "$_lt_caught_CXX_error"; then - # Code to be used in simple compile tests - lt_simple_compile_test_code="int some_variable = 0;" - - # Code to be used in simple link tests - lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' - - # ltmain only uses $CC for tagged configurations so make sure $CC is set. - _LT_TAG_COMPILER - - # save warnings/boilerplate of simple test code - _LT_COMPILER_BOILERPLATE - _LT_LINKER_BOILERPLATE - - # Allow CC to be a program name with arguments. - lt_save_CC=$CC - lt_save_CFLAGS=$CFLAGS - lt_save_LD=$LD - lt_save_GCC=$GCC - GCC=$GXX - lt_save_with_gnu_ld=$with_gnu_ld - lt_save_path_LD=$lt_cv_path_LD - if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then - lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx - else - $as_unset lt_cv_prog_gnu_ld - fi - if test -n "${lt_cv_path_LDCXX+set}"; then - lt_cv_path_LD=$lt_cv_path_LDCXX - else - $as_unset lt_cv_path_LD - fi - test -z "${LDCXX+set}" || LD=$LDCXX - CC=${CXX-"c++"} - CFLAGS=$CXXFLAGS - compiler=$CC - _LT_TAGVAR(compiler, $1)=$CC - _LT_CC_BASENAME([$compiler]) - - if test -n "$compiler"; then - # We don't want -fno-exception when compiling C++ code, so set the - # no_builtin_flag separately - if test yes = "$GXX"; then - _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' - else - _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= - fi - - if test yes = "$GXX"; then - # Set up default GNU C++ configuration - - LT_PATH_LD - - # Check if GNU C++ uses GNU ld as the underlying linker, since the - # archiving commands below assume that GNU ld is being used. - if test yes = "$with_gnu_ld"; then - _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' - - # If archive_cmds runs LD, not CC, wlarc should be empty - # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to - # investigate it a little bit more. (MM) - wlarc='$wl' - - # ancient GNU ld didn't support --whole-archive et. al. - if eval "`$CC -print-prog-name=ld` --help 2>&1" | - $GREP 'no-whole-archive' > /dev/null; then - _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' - else - _LT_TAGVAR(whole_archive_flag_spec, $1)= - fi - else - with_gnu_ld=no - wlarc= - - # A generic and very simple default shared library creation - # command for GNU C++ for the case where it uses the native - # linker, instead of GNU ld. If possible, this setting should - # overridden to take advantage of the native linker features on - # the platform it is being used on. - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' - fi - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' - - else - GXX=no - with_gnu_ld=no - wlarc= - fi - - # PORTME: fill in a description of your system's C++ link characteristics - AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) - _LT_TAGVAR(ld_shlibs, $1)=yes - case $host_os in - aix3*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - aix[[4-9]]*) - if test ia64 = "$host_cpu"; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - exp_sym_flag='-Bexport' - no_entry_flag= - else - aix_use_runtimelinking=no - - # Test if we are trying to use run time linking or normal - # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # have runtime linking enabled, and use it for executables. - # For shared libraries, we enable/disable runtime linking - # depending on the kind of the shared library created - - # when "with_aix_soname,aix_use_runtimelinking" is: - # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables - # "aix,yes" lib.so shared, rtl:yes, for executables - # lib.a static archive - # "both,no" lib.so.V(shr.o) shared, rtl:yes - # lib.a(lib.so.V) shared, rtl:no, for executables - # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables - # lib.a(lib.so.V) shared, rtl:no - # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables - # lib.a static archive - case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) - for ld_flag in $LDFLAGS; do - case $ld_flag in - *-brtl*) - aix_use_runtimelinking=yes - break - ;; - esac - done - if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then - # With aix-soname=svr4, we create the lib.so.V shared archives only, - # so we don't have lib.a shared libs to link our executables. - # We have to force runtime linking in this case. - aix_use_runtimelinking=yes - LDFLAGS="$LDFLAGS -Wl,-brtl" - fi - ;; - esac - - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - - _LT_TAGVAR(archive_cmds, $1)='' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='$wl-f,' - case $with_aix_soname,$aix_use_runtimelinking in - aix,*) ;; # no import file - svr4,* | *,yes) # use import file - # The Import File defines what to hardcode. - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_direct_absolute, $1)=no - ;; - esac - - if test yes = "$GXX"; then - case $host_os in aix4.[[012]]|aix4.[[012]].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`$CC -print-prog-name=collect2` - if test -f "$collect2name" && - strings "$collect2name" | $GREP resolve_lib_name >/dev/null - then - # We have reworked collect2 - : - else - # We have old collect2 - _LT_TAGVAR(hardcode_direct, $1)=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)= - fi - esac - shared_flag='-shared' - if test yes = "$aix_use_runtimelinking"; then - shared_flag=$shared_flag' $wl-G' - fi - # Need to ensure runtime linking is disabled for the traditional - # shared library, or the linker may eventually find shared libraries - # /with/ Import File - we do not want to mix them. - shared_flag_aix='-shared' - shared_flag_svr4='-shared $wl-G' - else - # not using gcc - if test ia64 = "$host_cpu"; then - # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release - # chokes on -Wl,-G. The following line is correct: - shared_flag='-G' - else - if test yes = "$aix_use_runtimelinking"; then - shared_flag='$wl-G' - else - shared_flag='$wl-bM:SRE' - fi - shared_flag_aix='$wl-bM:SRE' - shared_flag_svr4='$wl-G' - fi - fi - - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' - # It seems that -bexpall does not export symbols beginning with - # underscore (_), so it is better to generate a list of symbols to - # export. - _LT_TAGVAR(always_export_symbols, $1)=yes - if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then - # Warning - without using the other runtime loading flags (-brtl), - # -berok will link without error, but may produce a broken library. - # The "-G" linker flag allows undefined symbols. - _LT_TAGVAR(no_undefined_flag, $1)='-bernotok' - # Determine the default libpath from the value encoded in an empty - # executable. - _LT_SYS_MODULE_PATH_AIX([$1]) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" - - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag - else - if test ia64 = "$host_cpu"; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' - _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" - _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" - else - # Determine the default libpath from the value encoded in an - # empty executable. - _LT_SYS_MODULE_PATH_AIX([$1]) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" - # Warning - without using the other run time loading flags, - # -berok will link without error, but may produce a broken library. - _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' - _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' - if test yes = "$with_gnu_ld"; then - # We only use this code for GNU lds that support --whole-archive. - _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' - else - # Exported symbols can be pulled into shared objects from archives - _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' - fi - _LT_TAGVAR(archive_cmds_need_lc, $1)=yes - _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' - # -brtl affects multiple linker settings, -berok does not and is overridden later - compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' - if test svr4 != "$with_aix_soname"; then - # This is similar to how AIX traditionally builds its shared - # libraries. Need -bnortl late, we may have -brtl in LDFLAGS. - _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' - fi - if test aix != "$with_aix_soname"; then - _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' - else - # used by -dlpreopen to get the symbols - _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' - fi - _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' - fi - fi - ;; - - beos*) - if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - chorus*) - case $cc_basename in - *) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - - cygwin* | mingw* | pw32* | cegcc*) - case $GXX,$cc_basename in - ,cl* | no,cl* | ,icl* | no,icl*) - # Native MSVC or ICC - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_TAGVAR(always_export_symbols, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='@' - # Tell ltmain to make .lib files, not .a files. - libext=lib - # Tell ltmain to make .dll files, not .so files. - shrext_cmds=.dll - # FIXME: Setting linknames here is a bad hack. - _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' - _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then - cp "$export_symbols" "$output_objdir/$soname.def"; - echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; - else - $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; - fi~ - $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ - linknames=' - # The linker will not automatically build a static lib if we build a DLL. - # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' - _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - # Don't use ranlib - _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' - _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ - lt_tool_outputfile="@TOOL_OUTPUT@"~ - case $lt_outputfile in - *.exe|*.EXE) ;; - *) - lt_outputfile=$lt_outputfile.exe - lt_tool_outputfile=$lt_tool_outputfile.exe - ;; - esac~ - func_to_tool_file "$lt_outputfile"~ - if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then - $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; - $RM "$lt_outputfile.manifest"; - fi' - ;; - *) - # g++ - # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, - # as there is no search path for DLLs. - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - _LT_TAGVAR(always_export_symbols, $1)=no - _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - - if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file, use it as - # is; otherwise, prepend EXPORTS... - _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - darwin* | rhapsody*) - _LT_DARWIN_LINKER_FEATURES($1) - ;; - - os2*) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' - _LT_TAGVAR(hardcode_minus_L, $1)=yes - _LT_TAGVAR(allow_undefined_flag, $1)=unsupported - shrext_cmds=.dll - _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ - $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ - $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ - $ECHO EXPORTS >> $output_objdir/$libname.def~ - prefix_cmds="$SED"~ - if test EXPORTS = "`$SED 1q $export_symbols`"; then - prefix_cmds="$prefix_cmds -e 1d"; - fi~ - prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ - cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ - $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ - emximp -o $lib $output_objdir/$libname.def' - _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' - _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes - _LT_TAGVAR(file_list_spec, $1)='@' - ;; - - dgux*) - case $cc_basename in - ec++*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - ghcx*) - # Green Hills C++ Compiler - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - - freebsd2.*) - # C++ shared libraries reported to be fairly broken before - # switch to ELF - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - - freebsd-elf*) - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - ;; - - freebsd* | dragonfly* | midnightbsd*) - # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF - # conventions - _LT_TAGVAR(ld_shlibs, $1)=yes - ;; - - haiku*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(link_all_deplibs, $1)=yes - ;; - - hpux9*) - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, - # but as the default - # location of the library. - - case $cc_basename in - CC*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - aCC*) - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' - ;; - *) - if test yes = "$GXX"; then - _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' - else - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - - hpux10*|hpux11*) - if test no = "$with_gnu_ld"; then - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - - case $host_cpu in - hppa*64*|ia64*) - ;; - *) - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' - ;; - esac - fi - case $host_cpu in - hppa*64*|ia64*) - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - ;; - *) - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, - # but as the default - # location of the library. - ;; - esac - - case $cc_basename in - CC*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - aCC*) - case $host_cpu in - hppa*64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - ia64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - esac - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' - ;; - *) - if test yes = "$GXX"; then - if test no = "$with_gnu_ld"; then - case $host_cpu in - hppa*64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - ia64*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - ;; - esac - fi - else - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - - interix[[3-9]]*) - _LT_TAGVAR(hardcode_direct, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' - # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. - # Instead, shared libraries are loaded at an image base (0x10000000 by - # default) and relocated if they conflict, which is a slow very memory - # consuming and fragmenting process. To avoid this, we pick a random, - # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link - # time. Moving up from 0x10000000 also allows more sbrk(2) space. - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - ;; - irix5* | irix6*) - case $cc_basename in - CC*) - # SGI C++ - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' - - # Archives containing C++ object files must be created using - # "CC -ar", where "CC" is the IRIX C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' - ;; - *) - if test yes = "$GXX"; then - if test no = "$with_gnu_ld"; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' - else - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib' - fi - fi - _LT_TAGVAR(link_all_deplibs, $1)=yes - ;; - esac - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - _LT_TAGVAR(inherit_rpath, $1)=yes - ;; - - linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - case $cc_basename in - KCC*) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib' - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' - - # Archives containing C++ object files must be created using - # "CC -Bstatic", where "CC" is the KAI C++ compiler. - _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' - ;; - icpc* | ecpc* ) - # Intel C++ - with_gnu_ld=yes - # version 8.0 and above of icpc choke on multiply defined symbols - # if we add $predep_objects and $postdep_objects, however 7.1 and - # earlier do not add the objects themselves. - case `$CC -V 2>&1` in - *"Version 7."*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - ;; - *) # Version 8.0 or newer - tmp_idyn= - case $host_cpu in - ia64*) tmp_idyn=' -i_dynamic';; - esac - _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - ;; - esac - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' - _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' - ;; - pgCC* | pgcpp*) - # Portland Group C++ compiler - case `$CC -V` in - *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*) - _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ - compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' - _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ - $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ - $RANLIB $oldlib' - _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ - $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ - rm -rf $tpldir~ - $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ - $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - ;; - *) # Version 6 and above use weak symbols - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' - ;; - esac - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' - _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - ;; - cxx*) - # Compaq C++ - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib $wl-retain-symbols-file $wl$export_symbols' - - runpath_var=LD_RUN_PATH - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed' - ;; - xl* | mpixl* | bgxl*) - # IBM XL 8.0 on PPC, with GNU ld - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' - _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - if test yes = "$supports_anon_versioning"; then - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' - fi - ;; - *) - case `$CC -V 2>&1 | $SED 5q` in - *Sun\ C*) - # Sun C++ 5.9 - _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' - _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' - _LT_TAGVAR(compiler_needs_object, $1)=yes - - # Not sure whether something based on - # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 - # would be better. - output_verbose_link_cmd='func_echo_all' - - # Archives containing C++ object files must be created using - # "CC -xar", where "CC" is the Sun C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' - ;; - esac - ;; - esac - ;; - - lynxos*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - - m88k*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - - mvs*) - case $cc_basename in - cxx*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' - wlarc= - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - fi - # Workaround some broken pre-1.5 toolchains - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' - ;; - - *nto* | *qnx*) - _LT_TAGVAR(ld_shlibs, $1)=yes - ;; - - openbsd* | bitrig*) - if test -f /usr/libexec/ld.so; then - _LT_TAGVAR(hardcode_direct, $1)=yes - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_direct_absolute, $1)=yes - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' - if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib' - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' - _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' - fi - output_verbose_link_cmd=func_echo_all - else - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - - osf3* | osf4* | osf5*) - case $cc_basename in - KCC*) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - - # Archives containing C++ object files must be created using - # the KAI C++ compiler. - case $host in - osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; - *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; - esac - ;; - RCC*) - # Rational C++ 2.4.1 - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - cxx*) - case $host in - osf3*) - _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - ;; - *) - _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' - _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ - echo "-hidden">> $lib.exp~ - $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~ - $RM $lib.exp' - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' - ;; - esac - - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' - ;; - *) - if test yes,no = "$GXX,$with_gnu_ld"; then - _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' - case $host in - osf3*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' - ;; - esac - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' - - else - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - fi - ;; - esac - ;; - - psos*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - - sunos4*) - case $cc_basename in - CC*) - # Sun C++ 4.x - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - lcc*) - # Lucid - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - - solaris*) - case $cc_basename in - CC* | sunCC*) - # Sun C++ 4.2, 5.x and Centerline C++ - _LT_TAGVAR(archive_cmds_need_lc,$1)=yes - _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' - _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - case $host_os in - solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; - *) - # The compiler driver will combine and reorder linker options, - # but understands '-z linker_flag'. - # Supported since Solaris 2.6 (maybe 2.5.1?) - _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' - ;; - esac - _LT_TAGVAR(link_all_deplibs, $1)=yes - - output_verbose_link_cmd='func_echo_all' - - # Archives containing C++ object files must be created using - # "CC -xar", where "CC" is the Sun C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' - ;; - gcx*) - # Green Hills C++ Compiler - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' - - # The C++ compiler must be used to create the archive. - _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' - ;; - *) - # GNU C++ compiler with Solaris linker - if test yes,no = "$GXX,$with_gnu_ld"; then - _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs' - if $CC --version | $GREP -v '^2\.7' > /dev/null; then - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' - else - # g++ 2.7 appears to require '-G' NOT '-shared' on this - # platform. - _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' - _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' - fi - - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir' - case $host_os in - solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; - *) - _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' - ;; - esac - fi - ;; - esac - ;; - - sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) - _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - runpath_var='LD_RUN_PATH' - - case $cc_basename in - CC*) - _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - ;; - - sysv5* | sco3.2v5* | sco5v6*) - # Note: We CANNOT use -z defs as we might desire, because we do not - # link with -lc, and that would cause any symbols used from libc to - # always be unresolved, which means just about no library would - # ever link correctly. If we're not using GNU ld we use -z text - # though, which does catch some bad symbols but isn't as heavy-handed - # as -z defs. - _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' - _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' - _LT_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_TAGVAR(hardcode_shlibpath_var, $1)=no - _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' - _LT_TAGVAR(hardcode_libdir_separator, $1)=':' - _LT_TAGVAR(link_all_deplibs, $1)=yes - _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' - runpath_var='LD_RUN_PATH' - - case $cc_basename in - CC*) - _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~ - '"$_LT_TAGVAR(old_archive_cmds, $1)" - _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~ - '"$_LT_TAGVAR(reload_cmds, $1)" - ;; - *) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - ;; - esac - ;; - - tandem*) - case $cc_basename in - NCC*) - # NonStop-UX NCC 3.20 - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - *) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - ;; - - vxworks*) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - - *) - # FIXME: insert proper C++ library support - _LT_TAGVAR(ld_shlibs, $1)=no - ;; - esac - - AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) - test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no - - _LT_TAGVAR(GCC, $1)=$GXX - _LT_TAGVAR(LD, $1)=$LD - - ## CAVEAT EMPTOR: - ## There is no encapsulation within the following macros, do not change - ## the running order or otherwise move them around unless you know exactly - ## what you are doing... - _LT_SYS_HIDDEN_LIBDEPS($1) - _LT_COMPILER_PIC($1) - _LT_COMPILER_C_O($1) - _LT_COMPILER_FILE_LOCKS($1) - _LT_LINKER_SHLIBS($1) - _LT_SYS_DYNAMIC_LINKER($1) - _LT_LINKER_HARDCODE_LIBPATH($1) - - _LT_CONFIG($1) - fi # test -n "$compiler" - - CC=$lt_save_CC - CFLAGS=$lt_save_CFLAGS - LDCXX=$LD - LD=$lt_save_LD - GCC=$lt_save_GCC - with_gnu_ld=$lt_save_with_gnu_ld - lt_cv_path_LDCXX=$lt_cv_path_LD - lt_cv_path_LD=$lt_save_path_LD - lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld - lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld -fi # test yes != "$_lt_caught_CXX_error" - -AC_LANG_POP -])# _LT_LANG_CXX_CONFIG - - -# _LT_FUNC_STRIPNAME_CNF -# ---------------------- -# func_stripname_cnf prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -# -# This function is identical to the (non-XSI) version of func_stripname, -# except this one can be used by m4 code that may be executed by configure, -# rather than the libtool script. -m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl -AC_REQUIRE([_LT_DECL_SED]) -AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH]) -func_stripname_cnf () -{ - case @S|@2 in - .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;; - *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;; - esac -} # func_stripname_cnf -])# _LT_FUNC_STRIPNAME_CNF - - -# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) -# --------------------------------- -# Figure out "hidden" library dependencies from verbose -# compiler output when linking a shared library. -# Parse the compiler output and extract the necessary -# objects, libraries and library flags. -m4_defun([_LT_SYS_HIDDEN_LIBDEPS], -[m4_require([_LT_FILEUTILS_DEFAULTS])dnl -AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl -# Dependencies to place before and after the object being linked: -_LT_TAGVAR(predep_objects, $1)= -_LT_TAGVAR(postdep_objects, $1)= -_LT_TAGVAR(predeps, $1)= -_LT_TAGVAR(postdeps, $1)= -_LT_TAGVAR(compiler_lib_search_path, $1)= - -dnl we can't use the lt_simple_compile_test_code here, -dnl because it contains code intended for an executable, -dnl not a library. It's possible we should let each -dnl tag define a new lt_????_link_test_code variable, -dnl but it's only used here... -m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF -int a; -void foo (void) { a = 0; } -_LT_EOF -], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF -class Foo -{ -public: - Foo (void) { a = 0; } -private: - int a; -}; -_LT_EOF -], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF - subroutine foo - implicit none - integer*4 a - a=0 - return - end -_LT_EOF -], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF - subroutine foo - implicit none - integer a - a=0 - return - end -_LT_EOF -], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF -public class foo { - private int a; - public void bar (void) { - a = 0; - } -}; -_LT_EOF -], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF -package foo -func foo() { -} -_LT_EOF -]) - -_lt_libdeps_save_CFLAGS=$CFLAGS -case "$CC $CFLAGS " in #( -*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;; -*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;; -*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;; -esac - -dnl Parse the compiler output and extract the necessary -dnl objects, libraries and library flags. -if AC_TRY_EVAL(ac_compile); then - # Parse the compiler output and extract the necessary - # objects, libraries and library flags. - - # Sentinel used to keep track of whether or not we are before - # the conftest object file. - pre_test_object_deps_done=no - - for p in `eval "$output_verbose_link_cmd"`; do - case $prev$p in - - -L* | -R* | -l*) - # Some compilers place space between "-{L,R}" and the path. - # Remove the space. - if test x-L = "$p" || - test x-R = "$p"; then - prev=$p - continue - fi - - # Expand the sysroot to ease extracting the directories later. - if test -z "$prev"; then - case $p in - -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;; - -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;; - -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;; - esac - fi - case $p in - =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; - esac - if test no = "$pre_test_object_deps_done"; then - case $prev in - -L | -R) - # Internal compiler library paths should come after those - # provided the user. The postdeps already come after the - # user supplied libs so there is no need to process them. - if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then - _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p - else - _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p" - fi - ;; - # The "-l" case would never come before the object being - # linked, so don't bother handling this case. - esac - else - if test -z "$_LT_TAGVAR(postdeps, $1)"; then - _LT_TAGVAR(postdeps, $1)=$prev$p - else - _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p" - fi - fi - prev= - ;; - - *.lto.$objext) ;; # Ignore GCC LTO objects - *.$objext) - # This assumes that the test object file only shows up - # once in the compiler output. - if test "$p" = "conftest.$objext"; then - pre_test_object_deps_done=yes - continue - fi - - if test no = "$pre_test_object_deps_done"; then - if test -z "$_LT_TAGVAR(predep_objects, $1)"; then - _LT_TAGVAR(predep_objects, $1)=$p - else - _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" - fi - else - if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then - _LT_TAGVAR(postdep_objects, $1)=$p - else - _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" - fi - fi - ;; - - *) ;; # Ignore the rest. - - esac - done - - # Clean up. - rm -f a.out a.exe -else - echo "libtool.m4: error: problem compiling $1 test program" -fi - -$RM -f confest.$objext -CFLAGS=$_lt_libdeps_save_CFLAGS - -# PORTME: override above test on systems where it is broken -m4_if([$1], [CXX], -[case $host_os in -interix[[3-9]]*) - # Interix 3.5 installs completely hosed .la files for C++, so rather than - # hack all around it, let's just trust "g++" to DTRT. - _LT_TAGVAR(predep_objects,$1)= - _LT_TAGVAR(postdep_objects,$1)= - _LT_TAGVAR(postdeps,$1)= - ;; -esac -]) - -case " $_LT_TAGVAR(postdeps, $1) " in -*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; -esac - _LT_TAGVAR(compiler_lib_search_dirs, $1)= -if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then - _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'` -fi -_LT_TAGDECL([], [compiler_lib_search_dirs], [1], - [The directories searched by this compiler when creating a shared library]) -_LT_TAGDECL([], [predep_objects], [1], - [Dependencies to place before and after the objects being linked to - create a shared library]) -_LT_TAGDECL([], [postdep_objects], [1]) -_LT_TAGDECL([], [predeps], [1]) -_LT_TAGDECL([], [postdeps], [1]) -_LT_TAGDECL([], [compiler_lib_search_path], [1], - [The library search path used internally by the compiler when linking - a shared library]) -])# _LT_SYS_HIDDEN_LIBDEPS - - -# _LT_LANG_F77_CONFIG([TAG]) -# -------------------------- -# Ensure that the configuration variables for a Fortran 77 compiler are -# suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to 'libtool'. -m4_defun([_LT_LANG_F77_CONFIG], -[AC_LANG_PUSH(Fortran 77) -if test -z "$F77" || test no = "$F77"; then - _lt_disable_F77=yes -fi - -_LT_TAGVAR(archive_cmds_need_lc, $1)=no -_LT_TAGVAR(allow_undefined_flag, $1)= -_LT_TAGVAR(always_export_symbols, $1)=no -_LT_TAGVAR(archive_expsym_cmds, $1)= -_LT_TAGVAR(export_dynamic_flag_spec, $1)= -_LT_TAGVAR(hardcode_direct, $1)=no -_LT_TAGVAR(hardcode_direct_absolute, $1)=no -_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= -_LT_TAGVAR(hardcode_libdir_separator, $1)= -_LT_TAGVAR(hardcode_minus_L, $1)=no -_LT_TAGVAR(hardcode_automatic, $1)=no -_LT_TAGVAR(inherit_rpath, $1)=no -_LT_TAGVAR(module_cmds, $1)= -_LT_TAGVAR(module_expsym_cmds, $1)= -_LT_TAGVAR(link_all_deplibs, $1)=unknown -_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_TAGVAR(reload_flag, $1)=$reload_flag -_LT_TAGVAR(reload_cmds, $1)=$reload_cmds -_LT_TAGVAR(no_undefined_flag, $1)= -_LT_TAGVAR(whole_archive_flag_spec, $1)= -_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no - -# Source file extension for f77 test sources. -ac_ext=f - -# Object file extension for compiled f77 test sources. -objext=o -_LT_TAGVAR(objext, $1)=$objext - -# No sense in running all these tests if we already determined that -# the F77 compiler isn't working. Some variables (like enable_shared) -# are currently assumed to apply to all compilers on this platform, -# and will be corrupted by setting them based on a non-working compiler. -if test yes != "$_lt_disable_F77"; then - # Code to be used in simple compile tests - lt_simple_compile_test_code="\ - subroutine t - return - end -" - - # Code to be used in simple link tests - lt_simple_link_test_code="\ - program t - end -" - - # ltmain only uses $CC for tagged configurations so make sure $CC is set. - _LT_TAG_COMPILER - - # save warnings/boilerplate of simple test code - _LT_COMPILER_BOILERPLATE - _LT_LINKER_BOILERPLATE - - # Allow CC to be a program name with arguments. - lt_save_CC=$CC - lt_save_GCC=$GCC - lt_save_CFLAGS=$CFLAGS - CC=${F77-"f77"} - CFLAGS=$FFLAGS - compiler=$CC - _LT_TAGVAR(compiler, $1)=$CC - _LT_CC_BASENAME([$compiler]) - GCC=$G77 - if test -n "$compiler"; then - AC_MSG_CHECKING([if libtool supports shared libraries]) - AC_MSG_RESULT([$can_build_shared]) - - AC_MSG_CHECKING([whether to build shared libraries]) - test no = "$can_build_shared" && enable_shared=no - - # On AIX, shared libraries and static libraries use the same namespace, and - # are all built from PIC. - case $host_os in - aix3*) - test yes = "$enable_shared" && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - aix[[4-9]]*) - if test ia64 != "$host_cpu"; then - case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in - yes,aix,yes) ;; # shared object as lib.so file only - yes,svr4,*) ;; # shared object as lib.so archive member only - yes,*) enable_static=no ;; # shared object in lib.a archive as well - esac - fi - ;; - esac - AC_MSG_RESULT([$enable_shared]) - - AC_MSG_CHECKING([whether to build static libraries]) - # Make sure either enable_shared or enable_static is yes. - test yes = "$enable_shared" || enable_static=yes - AC_MSG_RESULT([$enable_static]) - - _LT_TAGVAR(GCC, $1)=$G77 - _LT_TAGVAR(LD, $1)=$LD - - ## CAVEAT EMPTOR: - ## There is no encapsulation within the following macros, do not change - ## the running order or otherwise move them around unless you know exactly - ## what you are doing... - _LT_COMPILER_PIC($1) - _LT_COMPILER_C_O($1) - _LT_COMPILER_FILE_LOCKS($1) - _LT_LINKER_SHLIBS($1) - _LT_SYS_DYNAMIC_LINKER($1) - _LT_LINKER_HARDCODE_LIBPATH($1) - - _LT_CONFIG($1) - fi # test -n "$compiler" - - GCC=$lt_save_GCC - CC=$lt_save_CC - CFLAGS=$lt_save_CFLAGS -fi # test yes != "$_lt_disable_F77" - -AC_LANG_POP -])# _LT_LANG_F77_CONFIG - - -# _LT_LANG_FC_CONFIG([TAG]) -# ------------------------- -# Ensure that the configuration variables for a Fortran compiler are -# suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to 'libtool'. -m4_defun([_LT_LANG_FC_CONFIG], -[AC_LANG_PUSH(Fortran) - -if test -z "$FC" || test no = "$FC"; then - _lt_disable_FC=yes -fi - -_LT_TAGVAR(archive_cmds_need_lc, $1)=no -_LT_TAGVAR(allow_undefined_flag, $1)= -_LT_TAGVAR(always_export_symbols, $1)=no -_LT_TAGVAR(archive_expsym_cmds, $1)= -_LT_TAGVAR(export_dynamic_flag_spec, $1)= -_LT_TAGVAR(hardcode_direct, $1)=no -_LT_TAGVAR(hardcode_direct_absolute, $1)=no -_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= -_LT_TAGVAR(hardcode_libdir_separator, $1)= -_LT_TAGVAR(hardcode_minus_L, $1)=no -_LT_TAGVAR(hardcode_automatic, $1)=no -_LT_TAGVAR(inherit_rpath, $1)=no -_LT_TAGVAR(module_cmds, $1)= -_LT_TAGVAR(module_expsym_cmds, $1)= -_LT_TAGVAR(link_all_deplibs, $1)=unknown -_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_TAGVAR(reload_flag, $1)=$reload_flag -_LT_TAGVAR(reload_cmds, $1)=$reload_cmds -_LT_TAGVAR(no_undefined_flag, $1)= -_LT_TAGVAR(whole_archive_flag_spec, $1)= -_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no - -# Source file extension for fc test sources. -ac_ext=${ac_fc_srcext-f} - -# Object file extension for compiled fc test sources. -objext=o -_LT_TAGVAR(objext, $1)=$objext - -# No sense in running all these tests if we already determined that -# the FC compiler isn't working. Some variables (like enable_shared) -# are currently assumed to apply to all compilers on this platform, -# and will be corrupted by setting them based on a non-working compiler. -if test yes != "$_lt_disable_FC"; then - # Code to be used in simple compile tests - lt_simple_compile_test_code="\ - subroutine t - return - end -" - - # Code to be used in simple link tests - lt_simple_link_test_code="\ - program t - end -" - - # ltmain only uses $CC for tagged configurations so make sure $CC is set. - _LT_TAG_COMPILER - - # save warnings/boilerplate of simple test code - _LT_COMPILER_BOILERPLATE - _LT_LINKER_BOILERPLATE - - # Allow CC to be a program name with arguments. - lt_save_CC=$CC - lt_save_GCC=$GCC - lt_save_CFLAGS=$CFLAGS - CC=${FC-"f95"} - CFLAGS=$FCFLAGS - compiler=$CC - GCC=$ac_cv_fc_compiler_gnu - - _LT_TAGVAR(compiler, $1)=$CC - _LT_CC_BASENAME([$compiler]) - - if test -n "$compiler"; then - AC_MSG_CHECKING([if libtool supports shared libraries]) - AC_MSG_RESULT([$can_build_shared]) - - AC_MSG_CHECKING([whether to build shared libraries]) - test no = "$can_build_shared" && enable_shared=no - - # On AIX, shared libraries and static libraries use the same namespace, and - # are all built from PIC. - case $host_os in - aix3*) - test yes = "$enable_shared" && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - aix[[4-9]]*) - if test ia64 != "$host_cpu"; then - case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in - yes,aix,yes) ;; # shared object as lib.so file only - yes,svr4,*) ;; # shared object as lib.so archive member only - yes,*) enable_static=no ;; # shared object in lib.a archive as well - esac - fi - ;; - esac - AC_MSG_RESULT([$enable_shared]) - - AC_MSG_CHECKING([whether to build static libraries]) - # Make sure either enable_shared or enable_static is yes. - test yes = "$enable_shared" || enable_static=yes - AC_MSG_RESULT([$enable_static]) - - _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu - _LT_TAGVAR(LD, $1)=$LD - - ## CAVEAT EMPTOR: - ## There is no encapsulation within the following macros, do not change - ## the running order or otherwise move them around unless you know exactly - ## what you are doing... - _LT_SYS_HIDDEN_LIBDEPS($1) - _LT_COMPILER_PIC($1) - _LT_COMPILER_C_O($1) - _LT_COMPILER_FILE_LOCKS($1) - _LT_LINKER_SHLIBS($1) - _LT_SYS_DYNAMIC_LINKER($1) - _LT_LINKER_HARDCODE_LIBPATH($1) - - _LT_CONFIG($1) - fi # test -n "$compiler" - - GCC=$lt_save_GCC - CC=$lt_save_CC - CFLAGS=$lt_save_CFLAGS -fi # test yes != "$_lt_disable_FC" - -AC_LANG_POP -])# _LT_LANG_FC_CONFIG - - -# _LT_LANG_GCJ_CONFIG([TAG]) -# -------------------------- -# Ensure that the configuration variables for the GNU Java Compiler compiler -# are suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to 'libtool'. -m4_defun([_LT_LANG_GCJ_CONFIG], -[AC_REQUIRE([LT_PROG_GCJ])dnl -AC_LANG_SAVE - -# Source file extension for Java test sources. -ac_ext=java - -# Object file extension for compiled Java test sources. -objext=o -_LT_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="class foo {}" - -# Code to be used in simple link tests -lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_TAG_COMPILER - -# save warnings/boilerplate of simple test code -_LT_COMPILER_BOILERPLATE -_LT_LINKER_BOILERPLATE - -# Allow CC to be a program name with arguments. -lt_save_CC=$CC -lt_save_CFLAGS=$CFLAGS -lt_save_GCC=$GCC -GCC=yes -CC=${GCJ-"gcj"} -CFLAGS=$GCJFLAGS -compiler=$CC -_LT_TAGVAR(compiler, $1)=$CC -_LT_TAGVAR(LD, $1)=$LD -_LT_CC_BASENAME([$compiler]) - -# GCJ did not exist at the time GCC didn't implicitly link libc in. -_LT_TAGVAR(archive_cmds_need_lc, $1)=no - -_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_TAGVAR(reload_flag, $1)=$reload_flag -_LT_TAGVAR(reload_cmds, $1)=$reload_cmds - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -if test -n "$compiler"; then - _LT_COMPILER_NO_RTTI($1) - _LT_COMPILER_PIC($1) - _LT_COMPILER_C_O($1) - _LT_COMPILER_FILE_LOCKS($1) - _LT_LINKER_SHLIBS($1) - _LT_LINKER_HARDCODE_LIBPATH($1) - - _LT_CONFIG($1) -fi - -AC_LANG_RESTORE - -GCC=$lt_save_GCC -CC=$lt_save_CC -CFLAGS=$lt_save_CFLAGS -])# _LT_LANG_GCJ_CONFIG - - -# _LT_LANG_GO_CONFIG([TAG]) -# -------------------------- -# Ensure that the configuration variables for the GNU Go compiler -# are suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to 'libtool'. -m4_defun([_LT_LANG_GO_CONFIG], -[AC_REQUIRE([LT_PROG_GO])dnl -AC_LANG_SAVE - -# Source file extension for Go test sources. -ac_ext=go - -# Object file extension for compiled Go test sources. -objext=o -_LT_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code="package main; func main() { }" - -# Code to be used in simple link tests -lt_simple_link_test_code='package main; func main() { }' - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_TAG_COMPILER - -# save warnings/boilerplate of simple test code -_LT_COMPILER_BOILERPLATE -_LT_LINKER_BOILERPLATE - -# Allow CC to be a program name with arguments. -lt_save_CC=$CC -lt_save_CFLAGS=$CFLAGS -lt_save_GCC=$GCC -GCC=yes -CC=${GOC-"gccgo"} -CFLAGS=$GOFLAGS -compiler=$CC -_LT_TAGVAR(compiler, $1)=$CC -_LT_TAGVAR(LD, $1)=$LD -_LT_CC_BASENAME([$compiler]) - -# Go did not exist at the time GCC didn't implicitly link libc in. -_LT_TAGVAR(archive_cmds_need_lc, $1)=no - -_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds -_LT_TAGVAR(reload_flag, $1)=$reload_flag -_LT_TAGVAR(reload_cmds, $1)=$reload_cmds - -## CAVEAT EMPTOR: -## There is no encapsulation within the following macros, do not change -## the running order or otherwise move them around unless you know exactly -## what you are doing... -if test -n "$compiler"; then - _LT_COMPILER_NO_RTTI($1) - _LT_COMPILER_PIC($1) - _LT_COMPILER_C_O($1) - _LT_COMPILER_FILE_LOCKS($1) - _LT_LINKER_SHLIBS($1) - _LT_LINKER_HARDCODE_LIBPATH($1) - - _LT_CONFIG($1) -fi - -AC_LANG_RESTORE - -GCC=$lt_save_GCC -CC=$lt_save_CC -CFLAGS=$lt_save_CFLAGS -])# _LT_LANG_GO_CONFIG - - -# _LT_LANG_RC_CONFIG([TAG]) -# ------------------------- -# Ensure that the configuration variables for the Windows resource compiler -# are suitably defined. These variables are subsequently used by _LT_CONFIG -# to write the compiler configuration to 'libtool'. -m4_defun([_LT_LANG_RC_CONFIG], -[AC_REQUIRE([LT_PROG_RC])dnl -AC_LANG_SAVE - -# Source file extension for RC test sources. -ac_ext=rc - -# Object file extension for compiled RC test sources. -objext=o -_LT_TAGVAR(objext, $1)=$objext - -# Code to be used in simple compile tests -lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' - -# Code to be used in simple link tests -lt_simple_link_test_code=$lt_simple_compile_test_code - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -_LT_TAG_COMPILER - -# save warnings/boilerplate of simple test code -_LT_COMPILER_BOILERPLATE -_LT_LINKER_BOILERPLATE - -# Allow CC to be a program name with arguments. -lt_save_CC=$CC -lt_save_CFLAGS=$CFLAGS -lt_save_GCC=$GCC -GCC= -CC=${RC-"windres"} -CFLAGS= -compiler=$CC -_LT_TAGVAR(compiler, $1)=$CC -_LT_CC_BASENAME([$compiler]) -_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes - -if test -n "$compiler"; then - : - _LT_CONFIG($1) -fi - -GCC=$lt_save_GCC -AC_LANG_RESTORE -CC=$lt_save_CC -CFLAGS=$lt_save_CFLAGS -])# _LT_LANG_RC_CONFIG - - -# LT_PROG_GCJ -# ----------- -AC_DEFUN([LT_PROG_GCJ], -[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], - [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], - [AC_CHECK_TOOL(GCJ, gcj,) - test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2" - AC_SUBST(GCJFLAGS)])])[]dnl -]) - -# Old name: -AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([LT_AC_PROG_GCJ], []) - - -# LT_PROG_GO -# ---------- -AC_DEFUN([LT_PROG_GO], -[AC_CHECK_TOOL(GOC, gccgo,) -]) - - -# LT_PROG_RC -# ---------- -AC_DEFUN([LT_PROG_RC], -[AC_CHECK_TOOL(RC, windres,) -]) - -# Old name: -AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([LT_AC_PROG_RC], []) - - -# _LT_DECL_EGREP -# -------------- -# If we don't have a new enough Autoconf to choose the best grep -# available, choose the one first in the user's PATH. -m4_defun([_LT_DECL_EGREP], -[AC_REQUIRE([AC_PROG_EGREP])dnl -AC_REQUIRE([AC_PROG_FGREP])dnl -test -z "$GREP" && GREP=grep -_LT_DECL([], [GREP], [1], [A grep program that handles long lines]) -_LT_DECL([], [EGREP], [1], [An ERE matcher]) -_LT_DECL([], [FGREP], [1], [A literal string matcher]) -dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too -AC_SUBST([GREP]) -]) - - -# _LT_DECL_OBJDUMP -# -------------- -# If we don't have a new enough Autoconf to choose the best objdump -# available, choose the one first in the user's PATH. -m4_defun([_LT_DECL_OBJDUMP], -[AC_CHECK_TOOL(OBJDUMP, objdump, false) -test -z "$OBJDUMP" && OBJDUMP=objdump -_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) -AC_SUBST([OBJDUMP]) -]) - -# _LT_DECL_DLLTOOL -# ---------------- -# Ensure DLLTOOL variable is set. -m4_defun([_LT_DECL_DLLTOOL], -[AC_CHECK_TOOL(DLLTOOL, dlltool, false) -test -z "$DLLTOOL" && DLLTOOL=dlltool -_LT_DECL([], [DLLTOOL], [1], [DLL creation program]) -AC_SUBST([DLLTOOL]) -]) - -# _LT_DECL_FILECMD -# ---------------- -# Check for a file(cmd) program that can be used to detect file type and magic -m4_defun([_LT_DECL_FILECMD], -[AC_CHECK_TOOL([FILECMD], [file], [:]) -_LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types]) -])# _LD_DECL_FILECMD - -# _LT_DECL_SED -# ------------ -# Check for a fully-functional sed program, that truncates -# as few characters as possible. Prefer GNU sed if found. -m4_defun([_LT_DECL_SED], -[AC_PROG_SED -test -z "$SED" && SED=sed -Xsed="$SED -e 1s/^X//" -_LT_DECL([], [SED], [1], [A sed program that does not truncate output]) -_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], - [Sed that helps us avoid accidentally triggering echo(1) options like -n]) -])# _LT_DECL_SED - -m4_ifndef([AC_PROG_SED], [ -############################################################ -# NOTE: This macro has been submitted for inclusion into # -# GNU Autoconf as AC_PROG_SED. When it is available in # -# a released version of Autoconf we should remove this # -# macro and use it instead. # -############################################################ - -m4_defun([AC_PROG_SED], -[AC_MSG_CHECKING([for a sed that does not truncate output]) -AC_CACHE_VAL(lt_cv_path_SED, -[# Loop through the user's path and test for sed and gsed. -# Then use that list of sed's as ones to test for truncation. -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for lt_ac_prog in sed gsed; do - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then - lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" - fi - done - done -done -IFS=$as_save_IFS -lt_ac_max=0 -lt_ac_count=0 -# Add /usr/xpg4/bin/sed as it is typically found on Solaris -# along with /bin/sed that truncates output. -for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do - test ! -f "$lt_ac_sed" && continue - cat /dev/null > conftest.in - lt_ac_count=0 - echo $ECHO_N "0123456789$ECHO_C" >conftest.in - # Check for GNU sed and select it if it is found. - if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then - lt_cv_path_SED=$lt_ac_sed - break - fi - while true; do - cat conftest.in conftest.in >conftest.tmp - mv conftest.tmp conftest.in - cp conftest.in conftest.nl - echo >>conftest.nl - $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break - cmp -s conftest.out conftest.nl || break - # 10000 chars as input seems more than enough - test 10 -lt "$lt_ac_count" && break - lt_ac_count=`expr $lt_ac_count + 1` - if test "$lt_ac_count" -gt "$lt_ac_max"; then - lt_ac_max=$lt_ac_count - lt_cv_path_SED=$lt_ac_sed - fi - done -done -]) -SED=$lt_cv_path_SED -AC_SUBST([SED]) -AC_MSG_RESULT([$SED]) -])#AC_PROG_SED -])#m4_ifndef - -# Old name: -AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([LT_AC_PROG_SED], []) - - -# _LT_CHECK_SHELL_FEATURES -# ------------------------ -# Find out whether the shell is Bourne or XSI compatible, -# or has some other useful features. -m4_defun([_LT_CHECK_SHELL_FEATURES], -[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - lt_unset=unset -else - lt_unset=false -fi -_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl - -# test EBCDIC or ASCII -case `echo X|tr X '\101'` in - A) # ASCII based system - # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr - lt_SP2NL='tr \040 \012' - lt_NL2SP='tr \015\012 \040\040' - ;; - *) # EBCDIC based system - lt_SP2NL='tr \100 \n' - lt_NL2SP='tr \r\n \100\100' - ;; -esac -_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl -_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl -])# _LT_CHECK_SHELL_FEATURES - - -# _LT_PATH_CONVERSION_FUNCTIONS -# ----------------------------- -# Determine what file name conversion functions should be used by -# func_to_host_file (and, implicitly, by func_to_host_path). These are needed -# for certain cross-compile configurations and native mingw. -m4_defun([_LT_PATH_CONVERSION_FUNCTIONS], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -AC_MSG_CHECKING([how to convert $build file names to $host format]) -AC_CACHE_VAL(lt_cv_to_host_file_cmd, -[case $host in - *-*-mingw* ) - case $build in - *-*-mingw* ) # actually msys - lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 - ;; - *-*-cygwin* ) - lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 - ;; - * ) # otherwise, assume *nix - lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 - ;; - esac - ;; - *-*-cygwin* ) - case $build in - *-*-mingw* ) # actually msys - lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin - ;; - *-*-cygwin* ) - lt_cv_to_host_file_cmd=func_convert_file_noop - ;; - * ) # otherwise, assume *nix - lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin - ;; - esac - ;; - * ) # unhandled hosts (and "normal" native builds) - lt_cv_to_host_file_cmd=func_convert_file_noop - ;; -esac -]) -to_host_file_cmd=$lt_cv_to_host_file_cmd -AC_MSG_RESULT([$lt_cv_to_host_file_cmd]) -_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd], - [0], [convert $build file names to $host format])dnl - -AC_MSG_CHECKING([how to convert $build file names to toolchain format]) -AC_CACHE_VAL(lt_cv_to_tool_file_cmd, -[#assume ordinary cross tools, or native build. -lt_cv_to_tool_file_cmd=func_convert_file_noop -case $host in - *-*-mingw* ) - case $build in - *-*-mingw* ) # actually msys - lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 - ;; - esac - ;; -esac -]) -to_tool_file_cmd=$lt_cv_to_tool_file_cmd -AC_MSG_RESULT([$lt_cv_to_tool_file_cmd]) -_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd], - [0], [convert $build files to toolchain format])dnl -])# _LT_PATH_CONVERSION_FUNCTIONS diff --git a/m4/ltoptions.m4 b/m4/ltoptions.m4 deleted file mode 100644 index b0b5e9c..0000000 --- a/m4/ltoptions.m4 +++ /dev/null @@ -1,437 +0,0 @@ -# Helper functions for option handling. -*- Autoconf -*- -# -# Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free -# Software Foundation, Inc. -# Written by Gary V. Vaughan, 2004 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -# serial 8 ltoptions.m4 - -# This is to help aclocal find these macros, as it can't see m4_define. -AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) - - -# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) -# ------------------------------------------ -m4_define([_LT_MANGLE_OPTION], -[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])]) - - -# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) -# --------------------------------------- -# Set option OPTION-NAME for macro MACRO-NAME, and if there is a -# matching handler defined, dispatch to it. Other OPTION-NAMEs are -# saved as a flag. -m4_define([_LT_SET_OPTION], -[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl -m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), - _LT_MANGLE_DEFUN([$1], [$2]), - [m4_warning([Unknown $1 option '$2'])])[]dnl -]) - - -# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET]) -# ------------------------------------------------------------ -# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. -m4_define([_LT_IF_OPTION], -[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])]) - - -# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) -# ------------------------------------------------------- -# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME -# are set. -m4_define([_LT_UNLESS_OPTIONS], -[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), - [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option), - [m4_define([$0_found])])])[]dnl -m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3 -])[]dnl -]) - - -# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) -# ---------------------------------------- -# OPTION-LIST is a space-separated list of Libtool options associated -# with MACRO-NAME. If any OPTION has a matching handler declared with -# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about -# the unknown option and exit. -m4_defun([_LT_SET_OPTIONS], -[# Set options -m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), - [_LT_SET_OPTION([$1], _LT_Option)]) - -m4_if([$1],[LT_INIT],[ - dnl - dnl Simply set some default values (i.e off) if boolean options were not - dnl specified: - _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no - ]) - _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no - ]) - dnl - dnl If no reference was made to various pairs of opposing options, then - dnl we run the default mode handler for the pair. For example, if neither - dnl 'shared' nor 'disable-shared' was passed, we enable building of shared - dnl archives by default: - _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) - _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) - _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) - _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], - [_LT_ENABLE_FAST_INSTALL]) - _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4], - [_LT_WITH_AIX_SONAME([aix])]) - ]) -])# _LT_SET_OPTIONS - - -## --------------------------------- ## -## Macros to handle LT_INIT options. ## -## --------------------------------- ## - -# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) -# ----------------------------------------- -m4_define([_LT_MANGLE_DEFUN], -[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])]) - - -# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) -# ----------------------------------------------- -m4_define([LT_OPTION_DEFINE], -[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl -])# LT_OPTION_DEFINE - - -# dlopen -# ------ -LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes -]) - -AU_DEFUN([AC_LIBTOOL_DLOPEN], -[_LT_SET_OPTION([LT_INIT], [dlopen]) -AC_DIAGNOSE([obsolete], -[$0: Remove this warning and the call to _LT_SET_OPTION when you -put the 'dlopen' option into LT_INIT's first parameter.]) -]) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) - - -# win32-dll -# --------- -# Declare package support for building win32 dll's. -LT_OPTION_DEFINE([LT_INIT], [win32-dll], -[enable_win32_dll=yes - -case $host in -*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*) - AC_CHECK_TOOL(AS, as, false) - AC_CHECK_TOOL(DLLTOOL, dlltool, false) - AC_CHECK_TOOL(OBJDUMP, objdump, false) - ;; -esac - -test -z "$AS" && AS=as -_LT_DECL([], [AS], [1], [Assembler program])dnl - -test -z "$DLLTOOL" && DLLTOOL=dlltool -_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl - -test -z "$OBJDUMP" && OBJDUMP=objdump -_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl -])# win32-dll - -AU_DEFUN([AC_LIBTOOL_WIN32_DLL], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -_LT_SET_OPTION([LT_INIT], [win32-dll]) -AC_DIAGNOSE([obsolete], -[$0: Remove this warning and the call to _LT_SET_OPTION when you -put the 'win32-dll' option into LT_INIT's first parameter.]) -]) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], []) - - -# _LT_ENABLE_SHARED([DEFAULT]) -# ---------------------------- -# implement the --enable-shared flag, and supports the 'shared' and -# 'disable-shared' LT_INIT options. -# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. -m4_define([_LT_ENABLE_SHARED], -[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl -AC_ARG_ENABLE([shared], - [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@], - [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_shared=yes ;; - no) enable_shared=no ;; - *) - enable_shared=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for pkg in $enableval; do - IFS=$lt_save_ifs - if test "X$pkg" = "X$p"; then - enable_shared=yes - fi - done - IFS=$lt_save_ifs - ;; - esac], - [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) - - _LT_DECL([build_libtool_libs], [enable_shared], [0], - [Whether or not to build shared libraries]) -])# _LT_ENABLE_SHARED - -LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])]) -LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])]) - -# Old names: -AC_DEFUN([AC_ENABLE_SHARED], -[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared]) -]) - -AC_DEFUN([AC_DISABLE_SHARED], -[_LT_SET_OPTION([LT_INIT], [disable-shared]) -]) - -AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) -AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AM_ENABLE_SHARED], []) -dnl AC_DEFUN([AM_DISABLE_SHARED], []) - - - -# _LT_ENABLE_STATIC([DEFAULT]) -# ---------------------------- -# implement the --enable-static flag, and support the 'static' and -# 'disable-static' LT_INIT options. -# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. -m4_define([_LT_ENABLE_STATIC], -[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl -AC_ARG_ENABLE([static], - [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@], - [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_static=yes ;; - no) enable_static=no ;; - *) - enable_static=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for pkg in $enableval; do - IFS=$lt_save_ifs - if test "X$pkg" = "X$p"; then - enable_static=yes - fi - done - IFS=$lt_save_ifs - ;; - esac], - [enable_static=]_LT_ENABLE_STATIC_DEFAULT) - - _LT_DECL([build_old_libs], [enable_static], [0], - [Whether or not to build static libraries]) -])# _LT_ENABLE_STATIC - -LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])]) -LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])]) - -# Old names: -AC_DEFUN([AC_ENABLE_STATIC], -[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static]) -]) - -AC_DEFUN([AC_DISABLE_STATIC], -[_LT_SET_OPTION([LT_INIT], [disable-static]) -]) - -AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) -AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AM_ENABLE_STATIC], []) -dnl AC_DEFUN([AM_DISABLE_STATIC], []) - - - -# _LT_ENABLE_FAST_INSTALL([DEFAULT]) -# ---------------------------------- -# implement the --enable-fast-install flag, and support the 'fast-install' -# and 'disable-fast-install' LT_INIT options. -# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. -m4_define([_LT_ENABLE_FAST_INSTALL], -[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl -AC_ARG_ENABLE([fast-install], - [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], - [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], - [p=${PACKAGE-default} - case $enableval in - yes) enable_fast_install=yes ;; - no) enable_fast_install=no ;; - *) - enable_fast_install=no - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for pkg in $enableval; do - IFS=$lt_save_ifs - if test "X$pkg" = "X$p"; then - enable_fast_install=yes - fi - done - IFS=$lt_save_ifs - ;; - esac], - [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) - -_LT_DECL([fast_install], [enable_fast_install], [0], - [Whether or not to optimize for fast installation])dnl -])# _LT_ENABLE_FAST_INSTALL - -LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])]) -LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])]) - -# Old names: -AU_DEFUN([AC_ENABLE_FAST_INSTALL], -[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) -AC_DIAGNOSE([obsolete], -[$0: Remove this warning and the call to _LT_SET_OPTION when you put -the 'fast-install' option into LT_INIT's first parameter.]) -]) - -AU_DEFUN([AC_DISABLE_FAST_INSTALL], -[_LT_SET_OPTION([LT_INIT], [disable-fast-install]) -AC_DIAGNOSE([obsolete], -[$0: Remove this warning and the call to _LT_SET_OPTION when you put -the 'disable-fast-install' option into LT_INIT's first parameter.]) -]) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], []) -dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) - - -# _LT_WITH_AIX_SONAME([DEFAULT]) -# ---------------------------------- -# implement the --with-aix-soname flag, and support the `aix-soname=aix' -# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT -# is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'. -m4_define([_LT_WITH_AIX_SONAME], -[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl -shared_archive_member_spec= -case $host,$enable_shared in -power*-*-aix[[5-9]]*,yes) - AC_MSG_CHECKING([which variant of shared library versioning to provide]) - AC_ARG_WITH([aix-soname], - [AS_HELP_STRING([--with-aix-soname=aix|svr4|both], - [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])], - [case $withval in - aix|svr4|both) - ;; - *) - AC_MSG_ERROR([Unknown argument to --with-aix-soname]) - ;; - esac - lt_cv_with_aix_soname=$with_aix_soname], - [AC_CACHE_VAL([lt_cv_with_aix_soname], - [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT) - with_aix_soname=$lt_cv_with_aix_soname]) - AC_MSG_RESULT([$with_aix_soname]) - if test aix != "$with_aix_soname"; then - # For the AIX way of multilib, we name the shared archive member - # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', - # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. - # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, - # the AIX toolchain works better with OBJECT_MODE set (default 32). - if test 64 = "${OBJECT_MODE-32}"; then - shared_archive_member_spec=shr_64 - else - shared_archive_member_spec=shr - fi - fi - ;; -*) - with_aix_soname=aix - ;; -esac - -_LT_DECL([], [shared_archive_member_spec], [0], - [Shared archive member basename, for filename based shared library versioning on AIX])dnl -])# _LT_WITH_AIX_SONAME - -LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])]) -LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])]) -LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])]) - - -# _LT_WITH_PIC([MODE]) -# -------------------- -# implement the --with-pic flag, and support the 'pic-only' and 'no-pic' -# LT_INIT options. -# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'. -m4_define([_LT_WITH_PIC], -[AC_ARG_WITH([pic], - [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@], - [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], - [lt_p=${PACKAGE-default} - case $withval in - yes|no) pic_mode=$withval ;; - *) - pic_mode=default - # Look at the argument we got. We use all the common list separators. - lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, - for lt_pkg in $withval; do - IFS=$lt_save_ifs - if test "X$lt_pkg" = "X$lt_p"; then - pic_mode=yes - fi - done - IFS=$lt_save_ifs - ;; - esac], - [pic_mode=m4_default([$1], [default])]) - -_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl -])# _LT_WITH_PIC - -LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])]) -LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])]) - -# Old name: -AU_DEFUN([AC_LIBTOOL_PICMODE], -[_LT_SET_OPTION([LT_INIT], [pic-only]) -AC_DIAGNOSE([obsolete], -[$0: Remove this warning and the call to _LT_SET_OPTION when you -put the 'pic-only' option into LT_INIT's first parameter.]) -]) - -dnl aclocal-1.4 backwards compatibility: -dnl AC_DEFUN([AC_LIBTOOL_PICMODE], []) - -## ----------------- ## -## LTDL_INIT Options ## -## ----------------- ## - -m4_define([_LTDL_MODE], []) -LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive], - [m4_define([_LTDL_MODE], [nonrecursive])]) -LT_OPTION_DEFINE([LTDL_INIT], [recursive], - [m4_define([_LTDL_MODE], [recursive])]) -LT_OPTION_DEFINE([LTDL_INIT], [subproject], - [m4_define([_LTDL_MODE], [subproject])]) - -m4_define([_LTDL_TYPE], []) -LT_OPTION_DEFINE([LTDL_INIT], [installable], - [m4_define([_LTDL_TYPE], [installable])]) -LT_OPTION_DEFINE([LTDL_INIT], [convenience], - [m4_define([_LTDL_TYPE], [convenience])]) diff --git a/m4/ltsugar.m4 b/m4/ltsugar.m4 deleted file mode 100644 index 902508b..0000000 --- a/m4/ltsugar.m4 +++ /dev/null @@ -1,124 +0,0 @@ -# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- -# -# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2022 Free Software -# Foundation, Inc. -# Written by Gary V. Vaughan, 2004 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -# serial 6 ltsugar.m4 - -# This is to help aclocal find these macros, as it can't see m4_define. -AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) - - -# lt_join(SEP, ARG1, [ARG2...]) -# ----------------------------- -# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their -# associated separator. -# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier -# versions in m4sugar had bugs. -m4_define([lt_join], -[m4_if([$#], [1], [], - [$#], [2], [[$2]], - [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) -m4_define([_lt_join], -[m4_if([$#$2], [2], [], - [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) - - -# lt_car(LIST) -# lt_cdr(LIST) -# ------------ -# Manipulate m4 lists. -# These macros are necessary as long as will still need to support -# Autoconf-2.59, which quotes differently. -m4_define([lt_car], [[$1]]) -m4_define([lt_cdr], -[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], - [$#], 1, [], - [m4_dquote(m4_shift($@))])]) -m4_define([lt_unquote], $1) - - -# lt_append(MACRO-NAME, STRING, [SEPARATOR]) -# ------------------------------------------ -# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'. -# Note that neither SEPARATOR nor STRING are expanded; they are appended -# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). -# No SEPARATOR is output if MACRO-NAME was previously undefined (different -# than defined and empty). -# -# This macro is needed until we can rely on Autoconf 2.62, since earlier -# versions of m4sugar mistakenly expanded SEPARATOR but not STRING. -m4_define([lt_append], -[m4_define([$1], - m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) - - - -# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) -# ---------------------------------------------------------- -# Produce a SEP delimited list of all paired combinations of elements of -# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list -# has the form PREFIXmINFIXSUFFIXn. -# Needed until we can rely on m4_combine added in Autoconf 2.62. -m4_define([lt_combine], -[m4_if(m4_eval([$# > 3]), [1], - [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl -[[m4_foreach([_Lt_prefix], [$2], - [m4_foreach([_Lt_suffix], - ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, - [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) - - -# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) -# ----------------------------------------------------------------------- -# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited -# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. -m4_define([lt_if_append_uniq], -[m4_ifdef([$1], - [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], - [lt_append([$1], [$2], [$3])$4], - [$5])], - [lt_append([$1], [$2], [$3])$4])]) - - -# lt_dict_add(DICT, KEY, VALUE) -# ----------------------------- -m4_define([lt_dict_add], -[m4_define([$1($2)], [$3])]) - - -# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) -# -------------------------------------------- -m4_define([lt_dict_add_subkey], -[m4_define([$1($2:$3)], [$4])]) - - -# lt_dict_fetch(DICT, KEY, [SUBKEY]) -# ---------------------------------- -m4_define([lt_dict_fetch], -[m4_ifval([$3], - m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), - m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) - - -# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) -# ----------------------------------------------------------------- -m4_define([lt_if_dict_fetch], -[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], - [$5], - [$6])]) - - -# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) -# -------------------------------------------------------------- -m4_define([lt_dict_filter], -[m4_if([$5], [], [], - [lt_join(m4_quote(m4_default([$4], [[, ]])), - lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), - [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl -]) diff --git a/m4/ltversion.m4 b/m4/ltversion.m4 deleted file mode 100644 index b155d0a..0000000 --- a/m4/ltversion.m4 +++ /dev/null @@ -1,24 +0,0 @@ -# ltversion.m4 -- version numbers -*- Autoconf -*- -# -# Copyright (C) 2004, 2011-2019, 2021-2022 Free Software Foundation, -# Inc. -# Written by Scott James Remnant, 2004 -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -# @configure_input@ - -# serial 4245 ltversion.m4 -# This file is part of GNU Libtool - -m4_define([LT_PACKAGE_VERSION], [2.4.7]) -m4_define([LT_PACKAGE_REVISION], [2.4.7]) - -AC_DEFUN([LTVERSION_VERSION], -[macro_version='2.4.7' -macro_revision='2.4.7' -_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) -_LT_DECL(, macro_revision, 0) -]) diff --git a/m4/lt~obsolete.m4 b/m4/lt~obsolete.m4 deleted file mode 100644 index 0f7a875..0000000 --- a/m4/lt~obsolete.m4 +++ /dev/null @@ -1,99 +0,0 @@ -# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- -# -# Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2022 Free -# Software Foundation, Inc. -# Written by Scott James Remnant, 2004. -# -# This file is free software; the Free Software Foundation gives -# unlimited permission to copy and/or distribute it, with or without -# modifications, as long as this notice is preserved. - -# serial 5 lt~obsolete.m4 - -# These exist entirely to fool aclocal when bootstrapping libtool. -# -# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN), -# which have later been changed to m4_define as they aren't part of the -# exported API, or moved to Autoconf or Automake where they belong. -# -# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN -# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us -# using a macro with the same name in our local m4/libtool.m4 it'll -# pull the old libtool.m4 in (it doesn't see our shiny new m4_define -# and doesn't know about Autoconf macros at all.) -# -# So we provide this file, which has a silly filename so it's always -# included after everything else. This provides aclocal with the -# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything -# because those macros already exist, or will be overwritten later. -# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. -# -# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. -# Yes, that means every name once taken will need to remain here until -# we give up compatibility with versions before 1.7, at which point -# we need to keep only those names which we still refer to. - -# This is to help aclocal find these macros, as it can't see m4_define. -AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])]) - -m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])]) -m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])]) -m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])]) -m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])]) -m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])]) -m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])]) -m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])]) -m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])]) -m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])]) -m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])]) -m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])]) -m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])]) -m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])]) -m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])]) -m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])]) -m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])]) -m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])]) -m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])]) -m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])]) -m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])]) -m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])]) -m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])]) -m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])]) -m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])]) -m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])]) -m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])]) -m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])]) -m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])]) -m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])]) -m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])]) -m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])]) -m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])]) -m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])]) -m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])]) -m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])]) -m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])]) -m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])]) -m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])]) -m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])]) -m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])]) -m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])]) -m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])]) -m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) -m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) -m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) -m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])]) -m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])]) -m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])]) -m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])]) -m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])]) -m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])]) -m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) -m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])]) -m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) -m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])]) -m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])]) -m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])]) -m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])]) -m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])]) -m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])]) -m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])]) diff --git a/m4/nls.m4 b/m4/nls.m4 deleted file mode 100644 index 8f8a147..0000000 --- a/m4/nls.m4 +++ /dev/null @@ -1,32 +0,0 @@ -# nls.m4 serial 5 (gettext-0.18) -dnl Copyright (C) 1995-2003, 2005-2006, 2008-2013 Free Software Foundation, -dnl Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. -dnl -dnl This file can can be used in projects which are not available under -dnl the GNU General Public License or the GNU Library General Public -dnl License but which still want to provide support for the GNU gettext -dnl functionality. -dnl Please note that the actual code of the GNU gettext library is covered -dnl by the GNU Library General Public License, and the rest of the GNU -dnl gettext package package is covered by the GNU General Public License. -dnl They are *not* in the public domain. - -dnl Authors: -dnl Ulrich Drepper , 1995-2000. -dnl Bruno Haible , 2000-2003. - -AC_PREREQ([2.50]) - -AC_DEFUN([AM_NLS], -[ - AC_MSG_CHECKING([whether NLS is requested]) - dnl Default is enabled NLS - AC_ARG_ENABLE([nls], - [ --disable-nls do not use Native Language Support], - USE_NLS=$enableval, USE_NLS=yes) - AC_MSG_RESULT([$USE_NLS]) - AC_SUBST([USE_NLS]) -]) diff --git a/m4/po.m4 b/m4/po.m4 deleted file mode 100644 index f395723..0000000 --- a/m4/po.m4 +++ /dev/null @@ -1,452 +0,0 @@ -# po.m4 serial 20 (gettext-0.18.2) -dnl Copyright (C) 1995-2013 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. -dnl -dnl This file can can be used in projects which are not available under -dnl the GNU General Public License or the GNU Library General Public -dnl License but which still want to provide support for the GNU gettext -dnl functionality. -dnl Please note that the actual code of the GNU gettext library is covered -dnl by the GNU Library General Public License, and the rest of the GNU -dnl gettext package package is covered by the GNU General Public License. -dnl They are *not* in the public domain. - -dnl Authors: -dnl Ulrich Drepper , 1995-2000. -dnl Bruno Haible , 2000-2003. - -AC_PREREQ([2.60]) - -dnl Checks for all prerequisites of the po subdirectory. -AC_DEFUN([AM_PO_SUBDIRS], -[ - AC_REQUIRE([AC_PROG_MAKE_SET])dnl - AC_REQUIRE([AC_PROG_INSTALL])dnl - AC_REQUIRE([AC_PROG_MKDIR_P])dnl - AC_REQUIRE([AM_NLS])dnl - - dnl Release version of the gettext macros. This is used to ensure that - dnl the gettext macros and po/Makefile.in.in are in sync. - AC_SUBST([GETTEXT_MACRO_VERSION], [0.18]) - - dnl Perform the following tests also if --disable-nls has been given, - dnl because they are needed for "make dist" to work. - - dnl Search for GNU msgfmt in the PATH. - dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions. - dnl The second test excludes FreeBSD msgfmt. - AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, - [$ac_dir/$ac_word --statistics /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 && - (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], - :) - AC_PATH_PROG([GMSGFMT], [gmsgfmt], [$MSGFMT]) - - dnl Test whether it is GNU msgfmt >= 0.15. -changequote(,)dnl - case `$MSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in - '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) MSGFMT_015=: ;; - *) MSGFMT_015=$MSGFMT ;; - esac -changequote([,])dnl - AC_SUBST([MSGFMT_015]) -changequote(,)dnl - case `$GMSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in - '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) GMSGFMT_015=: ;; - *) GMSGFMT_015=$GMSGFMT ;; - esac -changequote([,])dnl - AC_SUBST([GMSGFMT_015]) - - dnl Search for GNU xgettext 0.12 or newer in the PATH. - dnl The first test excludes Solaris xgettext and early GNU xgettext versions. - dnl The second test excludes FreeBSD xgettext. - AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, - [$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 && - (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], - :) - dnl Remove leftover from FreeBSD xgettext call. - rm -f messages.po - - dnl Test whether it is GNU xgettext >= 0.15. -changequote(,)dnl - case `$XGETTEXT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in - '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) XGETTEXT_015=: ;; - *) XGETTEXT_015=$XGETTEXT ;; - esac -changequote([,])dnl - AC_SUBST([XGETTEXT_015]) - - dnl Search for GNU msgmerge 0.11 or newer in the PATH. - AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge, - [$ac_dir/$ac_word --update -q /dev/null /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1], :) - - dnl Installation directories. - dnl Autoconf >= 2.60 defines localedir. For older versions of autoconf, we - dnl have to define it here, so that it can be used in po/Makefile. - test -n "$localedir" || localedir='${datadir}/locale' - AC_SUBST([localedir]) - - dnl Support for AM_XGETTEXT_OPTION. - test -n "${XGETTEXT_EXTRA_OPTIONS+set}" || XGETTEXT_EXTRA_OPTIONS= - AC_SUBST([XGETTEXT_EXTRA_OPTIONS]) - - AC_CONFIG_COMMANDS([po-directories], [[ - for ac_file in $CONFIG_FILES; do - # Support "outfile[:infile[:infile...]]" - case "$ac_file" in - *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; - esac - # PO directories have a Makefile.in generated from Makefile.in.in. - case "$ac_file" in */Makefile.in) - # Adjust a relative srcdir. - ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` - ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'` - ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` - # In autoconf-2.13 it is called $ac_given_srcdir. - # In autoconf-2.50 it is called $srcdir. - test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" - case "$ac_given_srcdir" in - .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; - /*) top_srcdir="$ac_given_srcdir" ;; - *) top_srcdir="$ac_dots$ac_given_srcdir" ;; - esac - # Treat a directory as a PO directory if and only if it has a - # POTFILES.in file. This allows packages to have multiple PO - # directories under different names or in different locations. - if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then - rm -f "$ac_dir/POTFILES" - test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" - gt_tab=`printf '\t'` - cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ${gt_tab}]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" - POMAKEFILEDEPS="POTFILES.in" - # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend - # on $ac_dir but don't depend on user-specified configuration - # parameters. - if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then - # The LINGUAS file contains the set of available languages. - if test -n "$OBSOLETE_ALL_LINGUAS"; then - test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" - fi - ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` - # Hide the ALL_LINGUAS assignment from automake < 1.5. - eval 'ALL_LINGUAS''=$ALL_LINGUAS_' - POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" - else - # The set of available languages was given in configure.in. - # Hide the ALL_LINGUAS assignment from automake < 1.5. - eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' - fi - # Compute POFILES - # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) - # Compute UPDATEPOFILES - # as $(foreach lang, $(ALL_LINGUAS), $(lang).po-update) - # Compute DUMMYPOFILES - # as $(foreach lang, $(ALL_LINGUAS), $(lang).nop) - # Compute GMOFILES - # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) - case "$ac_given_srcdir" in - .) srcdirpre= ;; - *) srcdirpre='$(srcdir)/' ;; - esac - POFILES= - UPDATEPOFILES= - DUMMYPOFILES= - GMOFILES= - for lang in $ALL_LINGUAS; do - POFILES="$POFILES $srcdirpre$lang.po" - UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" - DUMMYPOFILES="$DUMMYPOFILES $lang.nop" - GMOFILES="$GMOFILES $srcdirpre$lang.gmo" - done - # CATALOGS depends on both $ac_dir and the user's LINGUAS - # environment variable. - INST_LINGUAS= - if test -n "$ALL_LINGUAS"; then - for presentlang in $ALL_LINGUAS; do - useit=no - if test "%UNSET%" != "$LINGUAS"; then - desiredlanguages="$LINGUAS" - else - desiredlanguages="$ALL_LINGUAS" - fi - for desiredlang in $desiredlanguages; do - # Use the presentlang catalog if desiredlang is - # a. equal to presentlang, or - # b. a variant of presentlang (because in this case, - # presentlang can be used as a fallback for messages - # which are not translated in the desiredlang catalog). - case "$desiredlang" in - "$presentlang"*) useit=yes;; - esac - done - if test $useit = yes; then - INST_LINGUAS="$INST_LINGUAS $presentlang" - fi - done - fi - CATALOGS= - if test -n "$INST_LINGUAS"; then - for lang in $INST_LINGUAS; do - CATALOGS="$CATALOGS $lang.gmo" - done - fi - test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" - sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" - for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do - if test -f "$f"; then - case "$f" in - *.orig | *.bak | *~) ;; - *) cat "$f" >> "$ac_dir/Makefile" ;; - esac - fi - done - fi - ;; - esac - done]], - [# Capture the value of obsolete ALL_LINGUAS because we need it to compute - # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it - # from automake < 1.5. - eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' - # Capture the value of LINGUAS because we need it to compute CATALOGS. - LINGUAS="${LINGUAS-%UNSET%}" - ]) -]) - -dnl Postprocesses a Makefile in a directory containing PO files. -AC_DEFUN([AM_POSTPROCESS_PO_MAKEFILE], -[ - # When this code is run, in config.status, two variables have already been - # set: - # - OBSOLETE_ALL_LINGUAS is the value of LINGUAS set in configure.in, - # - LINGUAS is the value of the environment variable LINGUAS at configure - # time. - -changequote(,)dnl - # Adjust a relative srcdir. - ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` - ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'` - ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` - # In autoconf-2.13 it is called $ac_given_srcdir. - # In autoconf-2.50 it is called $srcdir. - test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" - case "$ac_given_srcdir" in - .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; - /*) top_srcdir="$ac_given_srcdir" ;; - *) top_srcdir="$ac_dots$ac_given_srcdir" ;; - esac - - # Find a way to echo strings without interpreting backslash. - if test "X`(echo '\t') 2>/dev/null`" = 'X\t'; then - gt_echo='echo' - else - if test "X`(printf '%s\n' '\t') 2>/dev/null`" = 'X\t'; then - gt_echo='printf %s\n' - else - echo_func () { - cat < "$ac_file.tmp" - tab=`printf '\t'` - if grep -l '@TCLCATALOGS@' "$ac_file" > /dev/null; then - # Add dependencies that cannot be formulated as a simple suffix rule. - for lang in $ALL_LINGUAS; do - frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` - cat >> "$ac_file.tmp" < /dev/null; then - # Add dependencies that cannot be formulated as a simple suffix rule. - for lang in $ALL_LINGUAS; do - frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'` - cat >> "$ac_file.tmp" <> "$ac_file.tmp" <, 1996. - -AC_PREREQ([2.50]) - -# Search path for a program which passes the given test. - -dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, -dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) -AC_DEFUN([AM_PATH_PROG_WITH_TEST], -[ -# Prepare PATH_SEPARATOR. -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which - # contains only /bin. Note that ksh looks also at the FPATH variable, - # so we have to set that as well for the test. - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ - || PATH_SEPARATOR=';' - } -fi - -# Find out how to test for executable files. Don't use a zero-byte file, -# as systems may use methods other than mode bits to determine executability. -cat >conf$$.file <<_ASEOF -#! /bin/sh -exit 0 -_ASEOF -chmod +x conf$$.file -if test -x conf$$.file >/dev/null 2>&1; then - ac_executable_p="test -x" -else - ac_executable_p="test -f" -fi -rm -f conf$$.file - -# Extract the first word of "$2", so it can be a program name with args. -set dummy $2; ac_word=[$]2 -AC_MSG_CHECKING([for $ac_word]) -AC_CACHE_VAL([ac_cv_path_$1], -[case "[$]$1" in - [[\\/]]* | ?:[[\\/]]*) - ac_cv_path_$1="[$]$1" # Let the user override the test with a path. - ;; - *) - ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in ifelse([$5], , $PATH, [$5]); do - IFS="$ac_save_IFS" - test -z "$ac_dir" && ac_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then - echo "$as_me: trying $ac_dir/$ac_word..." >&AS_MESSAGE_LOG_FD - if [$3]; then - ac_cv_path_$1="$ac_dir/$ac_word$ac_exec_ext" - break 2 - fi - fi - done - done - IFS="$ac_save_IFS" -dnl If no 4th arg is given, leave the cache variable unset, -dnl so AC_PATH_PROGS will keep looking. -ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" -])dnl - ;; -esac])dnl -$1="$ac_cv_path_$1" -if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then - AC_MSG_RESULT([$][$1]) -else - AC_MSG_RESULT([no]) -fi -AC_SUBST([$1])dnl -]) diff --git a/meson.build b/meson.build new file mode 100644 index 0000000..a1b783b --- /dev/null +++ b/meson.build @@ -0,0 +1,547 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +project( + 'flatpak', + 'c', + version : '1.16.0', + default_options: [ + 'warning_level=2', + ], + meson_version : '>=0.53.0', +) + +flatpak_major_version = 1 +flatpak_minor_version = 16 +flatpak_micro_version = 0 +flatpak_extra_version = '' + +flatpak_interface_age = 0 +flatpak_binary_age = ( + 10000 * flatpak_major_version + + 100 * flatpak_minor_version + + flatpak_micro_version +) + +if '@0@.@1@.@2@@3@'.format( + flatpak_major_version, + flatpak_minor_version, + flatpak_micro_version, + flatpak_extra_version, +) != meson.project_version() + error('Project version does not match parts') +endif + +required_glib = '2.46' +# Before increasing this, update subprojects/bubblewrap.wrap +required_bwrap = '0.10.0' +# Before increasing this, update subprojects/dbus-proxy.wrap +required_dbus_proxy = '0.1.0' +required_libostree = '2020.8' + +fs = import('fs') +gnome = import('gnome') +i18n = import('i18n') +pkgconfig = import('pkgconfig') + +# TODO: We can replace these with meson.project_foo_root() +# when we depend on meson 0.56 +project_build_root = meson.current_build_dir() +project_source_root = meson.current_source_dir() + +if meson.version().version_compare('>=0.58') + global_source_root = meson.global_source_root() +else + global_source_root = meson.source_root() +endif + +if meson.version().version_compare('>=0.55.0') + can_run_host_binaries = meson.can_run_host_binaries() +else + can_run_host_binaries = meson.has_exe_wrapper() or not meson.is_cross_build() +endif + +cc = meson.get_compiler('c') +add_project_arguments('-include', 'config.h', language : 'c') +common_include_directories = include_directories( + '.', + 'common', +) + +# Keep this in sync with ostree, except remove -Wall (part of Meson +# warning_level 2) and -Werror=declaration-after-statement +add_project_arguments( + cc.get_supported_arguments([ + '-Werror=shadow', + '-Werror=empty-body', + '-Werror=strict-prototypes', + '-Werror=missing-prototypes', + '-Werror=implicit-function-declaration', + '-Werror=pointer-arith', + '-Werror=init-self', + '-Werror=missing-declarations', + '-Werror=return-type', + '-Werror=overflow', + '-Werror=int-conversion', + '-Werror=parenthesis', + '-Werror=incompatible-pointer-types', + '-Werror=misleading-indentation', + '-Werror=missing-include-dirs', + + # Meson warning_level=2 would do this, but we are not fully + # signedness-safe yet + '-Wno-sign-compare', + '-Wno-error=sign-compare', + + # Meson warning_level=2 would do this + '-Wno-cast-function-type', + '-Wno-error=cast-function-type', + + # Deliberately not warning about these, ability to zero-initialize + # a struct is a feature + '-Wno-missing-field-initializers', + '-Wno-error=missing-field-initializers', + + # Deliberately not warning about these + '-Wno-unused-parameter', + '-Wno-error=unused-parameter', + ]), + language : 'c', +) +# Flatpak is Linux-specific, so for now we assume that -fvisibility=hidden +# is always supported +add_project_arguments('-fvisibility=hidden', language : 'c') + +if ( + cc.has_argument('-Werror=format=2') + and cc.has_argument('-Werror=format-security') + and cc.has_argument('-Werror=format-nonliteral') +) + add_project_arguments([ + '-Werror=format=2', + '-Werror=format-security', + '-Werror=format-nonliteral', + ], language : 'c') +endif + +dbus_config_dir = get_option('dbus_config_dir') +if dbus_config_dir == '' + dbus_config_dir = get_option('sysconfdir') / 'dbus-1' / 'system.d' +endif + +dbus_service_dir = get_option('dbus_service_dir') +if dbus_service_dir == '' + dbus_service_dir = get_option('datadir') / 'dbus-1' / 'services' +endif + +profile_dir = get_option('profile_dir') +if profile_dir == '' + profile_dir = get_option('sysconfdir') / 'profile.d' +endif + +system_install_dir = get_option('system_install_dir') +if system_install_dir == '' + system_install_dir = get_option('localstatedir') / 'lib' / 'flatpak' +endif + +docdir = get_option('docdir') +if docdir == '' + docdir = get_option('datadir') / 'doc' / 'flatpak' +endif + +if not cc.check_header('sys/xattr.h') + error('You must have sys/xattr.h from glibc') +endif + +libglnx = subproject( + 'libglnx', + default_options : [ + 'warning_level=1', + 'tests=false', + ], +) + +not_found = dependency('', required : false) +threads_dep = dependency('threads') +bison = find_program('bison') +libcap_dep = dependency('libcap') +libglnx_dep = libglnx.get_variable('libglnx_dep') +libglnx_testlib_dep = libglnx.get_variable('libglnx_testlib_dep') +libarchive_dep = dependency('libarchive', version : '>=2.8.0') +glib_dep = dependency('glib-2.0', version : '>=' + required_glib) +gio_dep = dependency('gio-2.0', version : '>=' + required_glib) +gio_unix_dep = dependency('gio-unix-2.0', version : '>=' + required_glib) + +libcurl_dep = not_found +libsoup_dep = not_found + +if get_option('http_backend') == 'soup' + libsoup_dep = dependency('libsoup-2.4') +else + libcurl_dep = dependency('libcurl', version : '>=7.29.0') +endif + +libxml_dep = dependency('libxml-2.0', version : '>=2.4') +libzstd_dep = dependency('libzstd', version : '>=0.8.1', required : get_option('libzstd')) +dconf_dep = dependency('dconf', version : '>=0.26', required : get_option('dconf')) +libsystemd_dep = dependency('libsystemd', required : get_option('systemd')) +malcontent_dep = dependency('malcontent-0', version : '>=0.5.0', required : get_option('malcontent')) +polkit_agent_dep = dependency('polkit-agent-1', version : '>=0.98', required : get_option('system_helper')) +build_system_helper = polkit_agent_dep.found() + +fuse_dep = dependency('fuse3', version : '>=3.1.1', required : false) +if fuse_dep.found() + fuse_api = 31 +else + fuse_dep = dependency('fuse', version : '>=2.9.2') + fuse_api = 26 +endif + +fusermount = get_option('system_fusermount') +if fusermount == '' + if fuse_api >= 30 + fusermount_program = find_program('fusermount3', required: true) + else + fusermount_program = find_program('fusermount', required: true) + endif + if meson.version().version_compare('>=0.55') + fusermount = fusermount_program.full_path() + else + fusermount = fusermount_program.path() + endif +endif + +xau_dep = dependency('xau', required : get_option('xauth')) +libostree_dep = dependency('ostree-1', version : '>=' + required_libostree) +json_glib_dep = dependency('json-glib-1.0') +appstream_dep = dependency('appstream', version : '>=0.12.0') +gdk_pixbuf_dep = dependency('gdk-pixbuf-2.0') +libseccomp_dep = dependency('libseccomp', required : get_option('seccomp')) +gir_dep = dependency('gobject-introspection-1.0', version : '>=1.40.0', required : get_option('gir')) +gtkdoc_dep = dependency('gtk-doc', required : get_option('gtkdoc'), native : true) +build_gtk_doc = gtkdoc_dep.found() + +wayland_client = dependency('wayland-client', required : get_option('wayland_security_context')) +wayland_scanner = dependency('wayland-scanner', version : '>= 1.15', required : get_option('wayland_security_context'), native : true) +wayland_protocols = dependency('wayland-protocols', version : '>= 1.32', required : get_option('wayland_security_context')) +build_wayland_security_context = wayland_client.found() and wayland_scanner.found() and wayland_protocols.found() + +base_deps = [glib_dep, gio_dep, gio_unix_dep] + +gpgme_dep = dependency('gpgme', version : '>=1.8.0') + +if get_option('selinux_module').disabled() + build_selinux_module = false +else + build_selinux_module = fs.is_file('/usr/share/selinux/devel/Makefile') + + if get_option('selinux_module').enabled() and not build_selinux_module + error('selinux-policy-devel needed to build selinux module') + endif +endif + +manpages_xsl = 'http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl' +xsltproc = find_program('xsltproc', required : get_option('man')) +build_man_pages = false + +if xsltproc.found() + if run_command([ + xsltproc, '--nonet', manpages_xsl, + ], check : false).returncode() == 0 + message('Docbook XSL found') + build_man_pages = true + elif get_option('man').enabled() + error('Man page requested, but Docbook XSL stylesheets not found') + else + message('Docbook XSL not found, man page disabled automatically') + endif +endif + +xmlto = find_program('xmlto', required : get_option('docbook_docs')) + +if run_command( + 'python3', '-c', 'import pyparsing', + check : false +).returncode() != 0 + error('python3 "pyparsing" module is required') +endif + +foreach system_executable : [ + ['bubblewrap', required_bwrap, 'system_bubblewrap'], + ['xdg-dbus-proxy', required_dbus_proxy, 'system_dbus_proxy'], +] + name = system_executable[0] + required = system_executable[1] + option_name = system_executable[2] + value = get_option(option_name) + + if value != '' + version = '' + + if can_run_host_binaries + result = run_command( + value, '--version', + capture : true, + check : true, + ) + output = result.stdout() + + if output.startswith(name + ' ') + version = output.split()[1] + endif + endif + + if version == '' + # Cross-compiling, or unable to parse --version output + warning( + 'Unable to determine version of @0@ (@1@), please ensure it is >= @2@'.format( + name, value, required, + ) + ) + elif version.version_compare('<' + required) + error( + '@0@ must be version >= @1@ (found: @2@)'.format( + option_name, required, version, + ) + ) + endif + endif +endforeach + +# We don't actually need this, but we do need the polkit daemon itself, +# and they're generally packaged together. +find_program('pkcheck', required : get_option('tests')) + +find_program('socat', required : get_option('tests')) + +if get_option('installed_tests') and not get_option('tests') + error('-Dinstalled_tests=true is incompatible with -Dtests=false') +endif + +cdata = configuration_data() +cdata.set('_GNU_SOURCE', 1) +cdata.set('FLATPAK_COMPILATION', 1) +cdata.set('PACKAGE_MAJOR_VERSION', flatpak_major_version) +cdata.set('PACKAGE_MINOR_VERSION', flatpak_minor_version) +cdata.set('PACKAGE_MICRO_VERSION', flatpak_micro_version) +cdata.set('PACKAGE_EXTRA_VERSION', flatpak_extra_version) +cdata.set_quoted( + 'PACKAGE_STRING', + 'Flatpak @0@'.format(meson.project_version()), +) +cdata.set_quoted('PACKAGE_VERSION', meson.project_version()) +cdata.set_quoted( + 'FLATPAK_BINDIR', + get_option('prefix') / get_option('bindir'), +) +cdata.set_quoted( + 'FLATPAK_SYSTEMDIR', + get_option('prefix') / system_install_dir, +) +cdata.set_quoted( + 'FLATPAK_CONFIGDIR', + get_option('prefix') / get_option('sysconfdir') / 'flatpak', +) +cdata.set_quoted( + 'FLATPAK_DATADIR', + get_option('prefix') / get_option('datadir') / 'flatpak', +) +cdata.set_quoted('LIBEXECDIR', get_option('prefix') / get_option('libexecdir')) +cdata.set_quoted('DATADIR', get_option('prefix') / get_option('datadir')) +cdata.set_quoted('LOCALEDIR', get_option('prefix') / get_option('localedir')) +cdata.set_quoted('SYSTEM_FONTS_DIR', get_option('system_fonts_dir')) +cdata.set_quoted('SYSTEM_HELPER_USER', get_option('system_helper_user')) +cdata.set_quoted( + 'SYSTEM_FONT_CACHE_DIRS', + ':'.join(get_option('system_font_cache_dirs')), +) +cdata.set_quoted('G_LOG_DOMAIN', 'flatpak') +cdata.set_quoted('GETTEXT_PACKAGE', 'flatpak') +cdata.set('FUSE_USE_VERSION', fuse_api) +cdata.set_quoted('FUSERMOUNT', fusermount) + +if get_option('system_bubblewrap') == '' + cdata.set_quoted('HELPER', get_option('prefix') / get_option('libexecdir') / 'flatpak-bwrap') +else + cdata.set_quoted('HELPER', get_option('system_bubblewrap')) +endif + +if get_option('system_dbus_proxy') == '' + cdata.set_quoted('DBUSPROXY', get_option('prefix') / get_option('libexecdir') / 'flatpak-dbus-proxy') +else + cdata.set_quoted('DBUSPROXY', get_option('system_dbus_proxy')) +endif + +# Flatpak is Linux-specific, so we assume this is always supported +cdata.set('FLATPAK_EXTERN', '__attribute__((visibility("default"))) extern') + +if glib_dep.version().version_compare('>=2.60') + # Ignore massive GTimeVal deprecation warnings in 2.62 + cdata.set('GLIB_VERSION_MIN_REQUIRED', 'GLIB_VERSION_2_60') +endif + +if dconf_dep.found() + cdata.set('HAVE_DCONF', 1) +endif + +if libcurl_dep.found() + cdata.set('HAVE_CURL', 1) +endif + +if libseccomp_dep.found() + cdata.set('ENABLE_SECCOMP', 1) +endif + +if libsoup_dep.found() + cdata.set('HAVE_SOUP', 1) +endif + +if libsystemd_dep.found() + cdata.set('HAVE_LIBSYSTEMD', 1) +endif + +if libzstd_dep.found() + cdata.set('HAVE_ZSTD', 1) +endif + +if malcontent_dep.found() + cdata.set('HAVE_LIBMALCONTENT', 1) +endif + +if xau_dep.found() + cdata.set('ENABLE_XAUTH', 1) +endif + +if build_wayland_security_context + cdata.set('ENABLE_WAYLAND_SECURITY_CONTEXT', 1) +endif + +if not get_option('sandboxed_triggers') + cdata.set('DISABLE_SANDBOXED_TRIGGERS', 1) +endif + +if cc.has_function( + 'archive_read_support_filter_all', + dependencies : libarchive_dep, + prefix : '#include ', +) + cdata.set('HAVE_ARCHIVE_READ_SUPPORT_FILTER_ALL', 1) +endif + +if build_system_helper + cdata.set('USE_SYSTEM_HELPER', '1') +endif + +configure_file( + output : 'config.h', + configuration : cdata, +) + +# TODO: When we depend on Meson >= 0.57.0, we can print dependencies +# as themselves rather than as booleans if we want to. +summary( + { + 'Build system helper' : build_system_helper, + 'Build selinux module' : build_selinux_module, + 'Build bubblewrap' : (get_option('system_bubblewrap') == ''), + 'Build dbus-proxy' : (get_option('system_dbus_proxy') == ''), + 'fusermount executable' : fusermount, + 'Use sandboxed triggers' : get_option('sandboxed_triggers'), + 'Use seccomp' : libseccomp_dep.found(), + 'Privileged group' : get_option('privileged_group'), + 'Use dconf' : dconf_dep.found(), + 'Use libsystemd' : libsystemd_dep.found(), + 'Use libmalcontent' : malcontent_dep.found(), + 'Use libzstd' : libzstd_dep.found(), + 'Use auto sideloading' : get_option('auto_sideloading'), + 'Wayland security context' : build_wayland_security_context, + }, + bool_yn : true, +) + +if get_option('system_bubblewrap') == '' + subproject( + 'bubblewrap', + default_options : [ + 'program_prefix=flatpak-', + 'tests=false', + ], + ) +endif + +if get_option('system_dbus_proxy') == '' + subproject( + 'dbus-proxy', + default_options : [ + 'warning_level=1', + 'program_prefix=flatpak-', + 'tests=false', + ], + ) +endif + +# Used for .service files in multiple subdirectories +service_conf_data = configuration_data() +service_conf_data.set('libexecdir', get_option('prefix') / get_option('libexecdir')) +service_conf_data.set('localstatedir', get_option('prefix') / get_option('localstatedir')) +service_conf_data.set('media_dir', get_option('prefix') / get_option('run_media_dir')) +service_conf_data.set('extraargs', '') + +subdir('common') +subdir('data') + +subdir('app') +subdir('env.d') +subdir('profile') +subdir('icon-validator') +subdir('oci-authenticator') +subdir('portal') +subdir('revokefs') +subdir('session-helper') +subdir('scripts') + +subdir('completion') +subdir('doc') +subdir('po') +subdir('triggers') + +if get_option('auto_sideloading') + subdir('sideload-repos-systemd') +endif + +if build_selinux_module + subdir('selinux') +endif + +if build_system_helper + subdir('system-helper') +endif + +if get_option('tests') + subdir('tests') +endif + +pkgconfig_variables = [] + +# TODO: These can be dropped when we require Meson >= 0.62.0 +pkgconfig_variables += 'exec_prefix=${prefix}' +pkgconfig_variables += 'datadir=' + ('${prefix}' / get_option('datadir')) + +pkgconfig_variables += 'datarootdir=' + ('${prefix}' / get_option('datadir')) +pkgconfig_variables += 'interfaces_dir=${datadir}/dbus-1/interfaces/' +pkgconfig_variables += 'httpbackend=' + get_option('http_backend') + +pkgconfig.generate( + libflatpak, + description : 'Application sandboxing framework', + subdirs : 'flatpak', + requires : [ + 'glib-2.0', + 'gio-2.0', + 'ostree-1', + ], + requires_private : [ + 'gio-unix-2.0', + ], + variables : pkgconfig_variables, +) diff --git a/meson_options.txt b/meson_options.txt new file mode 100644 index 0000000..c4f34c2 --- /dev/null +++ b/meson_options.txt @@ -0,0 +1,246 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +option( + 'auto_sideloading', + type : 'boolean', + description : 'enable systemd units which make Flatpak sideload from inserted USB drives', + value : false, +) +option( + 'dconf', + type : 'feature', + description : 'Use dconf?', + value : 'auto', +) +option( + 'dbus_config_dir', + type : 'string', + description : 'directory for D-Bus system configuration [$sysconfdir/dbus-1/system.d]', + value : '', +) +option( + 'dbus_service_dir', + type : 'string', + description : 'directory for D-Bus session service files [$datadir/dbus-1/services]', + value : '', +) +option( + 'docbook_docs', + type : 'feature', + description : 'build documentation with xmlto', + value : 'auto', +) +option( + 'docdir', + type : 'string', + description : 'documentation directory [$datadir/doc/flatpak]', + value : '', +) +option( + 'gdm_env_file', + type : 'boolean', + description : 'install gdm env.d file (not needed if systemd generators work', + value : false, +) +option( + 'gir', + type : 'feature', + description : 'build GObject-Introspection metadata', + value : 'auto', +) +option( + 'gtkdoc', + type : 'feature', + description : 'build API reference documentation with gtk-doc', + value : 'auto', +) +option( + 'http_backend', + type : 'combo', + description : 'library used to implement HTTP', + choices : ['curl', 'soup'], + value : 'curl', +) +option( + 'installed_tests', + type : 'boolean', + description : 'install automated tests', + value : false, +) +option( + 'internal_checks', + type : 'boolean', + description : 'enable internal checking', + value : false, +) +option( + 'libzstd', + type : 'feature', + description : 'use libzstd?', + value : 'auto', +) +option( + 'malcontent', + type : 'feature', + description : 'use libmalcontent for parental controls?', + value : 'auto', +) +option( + 'man', + type : 'feature', + description : 'build man pages', + value : 'auto', +) +option( + 'privileged_group', + type : 'string', + description : 'name of root-equivalent group', + value : 'wheel', +) +option( + 'profile_dir', + type : 'string', + description : 'directory for profile.d files', + value : '', +) +option( + 'run_media_dir', + type : 'string', + description : 'location of auto-mounted USB drives]', + value : '/run/media', +) +option( + 'sandboxed_triggers', + type : 'boolean', + description : 'enable sandboxed triggers', + value : true, +) +option( + 'seccomp', + type : 'feature', + description : 'enable seccomp', + value : 'enabled', +) +option( + 'selinux_module', + type : 'feature', + description : 'enable selinux module for system-helper', + value : 'auto', +) +option( + 'system_bubblewrap', + type : 'string', + description : 'system bwrap executable, or empty string to build subproject', + value : '', +) +option( + 'system_dbus_proxy', + type : 'string', + description : 'system xdg-dbus-proxy executable, or empty string to build subproject', + value : '', +) +option( + 'system_fusermount', + type : 'string', + description : 'system fusermount executable, or empty string to auto-select based on fuse version', + value : '', +) +option( + 'system_font_cache_dirs', + type : 'array', + description : 'directory where the system font cache is', + value : ['/var/cache/fontconfig', '/usr/lib/fontconfig/cache'], +) +option( + 'system_fonts_dir', + type : 'string', + description : 'Directory where system fonts are', + value : '/usr/share/fonts', +) +option( + 'system_helper', + type : 'feature', + description : 'enable system helper', + value : 'enabled', +) +option( + 'system_helper_user', + type : 'string', + description : 'name of the system helper user', + value : 'flatpak', +) +option( + 'system_install_dir', + type : 'string', + description : 'location of system installation [$localstatedir/lib/flatpak]', + value : '', +) +option( + 'systemdsystemenvgendir', + type : 'string', + description : 'directory for systemd system environment generators', + value : 'lib/systemd/system-environment-generators', +) +option( + 'systemd', + type : 'feature', + description : 'build with systemd support', + value : 'auto', +) +option( + 'systemdsystemunitdir', + type : 'string', + description : 'directory for systemd system service files', + # deliberately lib and not based on get_option('libdir'): + # this should not be lib64 or lib/x86_64-linux-gnu + value : 'lib/systemd/system', +) +option( + 'systemduserenvgendir', + type : 'string', + description : 'directory for systemd user environment generators', + value : 'lib/systemd/user-environment-generators', +) +option( + 'systemduserunitdir', + type : 'string', + description : 'directory for systemd user service files', + value : 'lib/systemd/user', +) +option( + 'sysusersdir', + type : 'string', + description : 'directory for systemd sysusers.d configuration files', + value : 'lib/sysusers.d' +) +option( + 'tmpfilesdir', + type : 'string', + description : 'directory for systemd tmpfiles.d configuration files', + value : 'lib/tmpfiles.d' +) +option( + 'tests', + type : 'boolean', + description : 'build tests', + value : true, +) +option( + 'xauth', + type : 'feature', + description : 'enable Xauth use', + value : 'enabled', +) +option( + 'wayland_security_context', + type : 'feature', + description : 'enable wayland security-context protocol support', + value : 'auto', +) +option( + 'xmlto_flags', + type : 'array', + description : 'options to pass to xmlto', + value : [], +) diff --git a/missing b/missing deleted file mode 100755 index 1fe1611..0000000 --- a/missing +++ /dev/null @@ -1,215 +0,0 @@ -#! /bin/sh -# Common wrapper for a few potentially missing GNU programs. - -scriptversion=2018-03-07.03; # UTC - -# Copyright (C) 1996-2021 Free Software Foundation, Inc. -# Originally written by Fran,cois Pinard , 1996. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -if test $# -eq 0; then - echo 1>&2 "Try '$0 --help' for more information" - exit 1 -fi - -case $1 in - - --is-lightweight) - # Used by our autoconf macros to check whether the available missing - # script is modern enough. - exit 0 - ;; - - --run) - # Back-compat with the calling convention used by older automake. - shift - ;; - - -h|--h|--he|--hel|--help) - echo "\ -$0 [OPTION]... PROGRAM [ARGUMENT]... - -Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due -to PROGRAM being missing or too old. - -Options: - -h, --help display this help and exit - -v, --version output version information and exit - -Supported PROGRAM values: - aclocal autoconf autoheader autom4te automake makeinfo - bison yacc flex lex help2man - -Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and -'g' are ignored when checking the name. - -Send bug reports to ." - exit $? - ;; - - -v|--v|--ve|--ver|--vers|--versi|--versio|--version) - echo "missing $scriptversion (GNU Automake)" - exit $? - ;; - - -*) - echo 1>&2 "$0: unknown '$1' option" - echo 1>&2 "Try '$0 --help' for more information" - exit 1 - ;; - -esac - -# Run the given program, remember its exit status. -"$@"; st=$? - -# If it succeeded, we are done. -test $st -eq 0 && exit 0 - -# Also exit now if we it failed (or wasn't found), and '--version' was -# passed; such an option is passed most likely to detect whether the -# program is present and works. -case $2 in --version|--help) exit $st;; esac - -# Exit code 63 means version mismatch. This often happens when the user -# tries to use an ancient version of a tool on a file that requires a -# minimum version. -if test $st -eq 63; then - msg="probably too old" -elif test $st -eq 127; then - # Program was missing. - msg="missing on your system" -else - # Program was found and executed, but failed. Give up. - exit $st -fi - -perl_URL=https://www.perl.org/ -flex_URL=https://github.com/westes/flex -gnu_software_URL=https://www.gnu.org/software - -program_details () -{ - case $1 in - aclocal|automake) - echo "The '$1' program is part of the GNU Automake package:" - echo "<$gnu_software_URL/automake>" - echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:" - echo "<$gnu_software_URL/autoconf>" - echo "<$gnu_software_URL/m4/>" - echo "<$perl_URL>" - ;; - autoconf|autom4te|autoheader) - echo "The '$1' program is part of the GNU Autoconf package:" - echo "<$gnu_software_URL/autoconf/>" - echo "It also requires GNU m4 and Perl in order to run:" - echo "<$gnu_software_URL/m4/>" - echo "<$perl_URL>" - ;; - esac -} - -give_advice () -{ - # Normalize program name to check for. - normalized_program=`echo "$1" | sed ' - s/^gnu-//; t - s/^gnu//; t - s/^g//; t'` - - printf '%s\n' "'$1' is $msg." - - configure_deps="'configure.ac' or m4 files included by 'configure.ac'" - case $normalized_program in - autoconf*) - echo "You should only need it if you modified 'configure.ac'," - echo "or m4 files included by it." - program_details 'autoconf' - ;; - autoheader*) - echo "You should only need it if you modified 'acconfig.h' or" - echo "$configure_deps." - program_details 'autoheader' - ;; - automake*) - echo "You should only need it if you modified 'Makefile.am' or" - echo "$configure_deps." - program_details 'automake' - ;; - aclocal*) - echo "You should only need it if you modified 'acinclude.m4' or" - echo "$configure_deps." - program_details 'aclocal' - ;; - autom4te*) - echo "You might have modified some maintainer files that require" - echo "the 'autom4te' program to be rebuilt." - program_details 'autom4te' - ;; - bison*|yacc*) - echo "You should only need it if you modified a '.y' file." - echo "You may want to install the GNU Bison package:" - echo "<$gnu_software_URL/bison/>" - ;; - lex*|flex*) - echo "You should only need it if you modified a '.l' file." - echo "You may want to install the Fast Lexical Analyzer package:" - echo "<$flex_URL>" - ;; - help2man*) - echo "You should only need it if you modified a dependency" \ - "of a man page." - echo "You may want to install the GNU Help2man package:" - echo "<$gnu_software_URL/help2man/>" - ;; - makeinfo*) - echo "You should only need it if you modified a '.texi' file, or" - echo "any other file indirectly affecting the aspect of the manual." - echo "You might want to install the Texinfo package:" - echo "<$gnu_software_URL/texinfo/>" - echo "The spurious makeinfo call might also be the consequence of" - echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might" - echo "want to install GNU make:" - echo "<$gnu_software_URL/make/>" - ;; - *) - echo "You might have modified some files without having the proper" - echo "tools for further handling them. Check the 'README' file, it" - echo "often tells you about the needed prerequisites for installing" - echo "this package. You may also peek at any GNU archive site, in" - echo "case some other package contains this missing '$1' program." - ;; - esac -} - -give_advice "$1" | sed -e '1s/^/WARNING: /' \ - -e '2,$s/^/ /' >&2 - -# Propagate the correct exit status (expected to be 127 for a program -# not found, 63 for a program that failed due to version mismatch). -exit $st - -# Local variables: -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC0" -# time-stamp-end: "; # UTC" -# End: diff --git a/oci-authenticator/Makefile.am.inc b/oci-authenticator/Makefile.am.inc deleted file mode 100644 index 3510e25..0000000 --- a/oci-authenticator/Makefile.am.inc +++ /dev/null @@ -1,28 +0,0 @@ -libexec_PROGRAMS += \ - flatpak-oci-authenticator \ - $(NULL) - -service_in_files += oci-authenticator/flatpak-oci-authenticator.service.in -systemduserunit_DATA += oci-authenticator/flatpak-oci-authenticator.service - -service_in_files += oci-authenticator/org.flatpak.Authenticator.Oci.service.in -dbus_service_DATA += oci-authenticator/org.flatpak.Authenticator.Oci.service - -flatpak_oci_authenticator_SOURCES = \ - oci-authenticator/flatpak-oci-authenticator.c \ - $(NULL) - -BUILT_SOURCES += $(nodist_flatpak_oci_authenticator_SOURCES) -CLEANFILES += $(nodist_flatpak_oci_authenticator_SOURCES) - -flatpak_oci_authenticator_LDADD = $(AM_LDADD) $(BASE_LIBS) $(OSTREE_LIBS) libflatpak-common.la libflatpak-common-base.la libglnx.la -flatpak_oci_authenticator_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(SOUP_CFLAGS) \ - $(JSON_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DDATADIR=\"$(datadir)\" \ - $(NULL) -flatpak_oci_authenticator_CPPFLAGS = $(AM_CPPFLAGS) -I$(builddir)/oci-authenticator diff --git a/oci-authenticator/flatpak-oci-authenticator.c b/oci-authenticator/flatpak-oci-authenticator.c index 7d202aa..a5ee6aa 100644 --- a/oci-authenticator/flatpak-oci-authenticator.c +++ b/oci-authenticator/flatpak-oci-authenticator.c @@ -40,7 +40,7 @@ static FlatpakHttpSession *http_session = NULL; static void skeleton_died_cb (gpointer data) { - g_debug ("skeleton finalized, exiting"); + g_info ("skeleton finalized, exiting"); g_main_loop_quit (main_loop); } @@ -49,7 +49,7 @@ unref_skeleton_in_timeout_cb (gpointer user_data) { static gboolean unreffed = FALSE; - g_debug ("unreffing authenticator main ref"); + g_info ("unreffing authenticator main ref"); if (!unreffed) { g_object_unref (authenticator); @@ -79,7 +79,7 @@ idle_timeout_cb (gpointer user_data) { if (name_owner_id) { - g_debug ("Idle - unowning name"); + g_info ("Idle - unowning name"); unref_skeleton_in_timeout (); } return G_SOURCE_REMOVE; @@ -130,7 +130,7 @@ handle_request_ref_tokens_close (FlatpakAuthenticatorRequest *object, { BasicAuthData *auth = user_data; - g_debug ("handlling Request.Close"); + g_info ("handlling Request.Close"); flatpak_authenticator_request_complete_close (object, invocation); @@ -181,7 +181,7 @@ peer_died (const char *name) { for (GList *l = active; l != NULL; l = l->next) { - g_debug ("Cancelling auth operation for dying peer %s", name); + g_info ("Cancelling auth operation for dying peer %s", name); cancel_basic_auth (l->data); } g_list_free (active); @@ -202,7 +202,7 @@ handle_request_ref_tokens_basic_auth_reply (FlatpakAuthenticatorRequest *object, { BasicAuthData *auth = user_data; - g_debug ("handlling Request.BasicAuthReply %s %s", arg_user, arg_password); + g_info ("handlling Request.BasicAuthReply %s %s", arg_user, arg_password); flatpak_authenticator_request_complete_basic_auth_reply (object, invocation); @@ -465,7 +465,7 @@ handle_request_ref_tokens (FlatpakAuthenticator *f_authenticator, GVariantBuilder results; g_autofree char *sender = g_strdup (g_dbus_method_invocation_get_sender (invocation)); - g_debug ("handling Authenticator.RequestRefTokens"); + g_info ("handling Authenticator.RequestRefTokens"); g_variant_lookup (arg_authenticator_options, "auth", "&s", &auth); have_auth = auth != NULL; @@ -509,7 +509,7 @@ handle_request_ref_tokens (FlatpakAuthenticator *f_authenticator, /* Look up credentials in config files */ if (!have_auth) { - g_debug ("Looking for %s in auth info", oci_registry_uri); + g_info ("Looking for %s in auth info", oci_registry_uri); auth = lookup_auth_from_config (oci_registry_uri); have_auth = auth != NULL; } @@ -520,7 +520,7 @@ handle_request_ref_tokens (FlatpakAuthenticator *f_authenticator, { g_autoptr(GVariant) ref_data = g_variant_get_child_value (arg_refs, 0); - g_debug ("Trying anonymous authentication"); + g_info ("Trying anonymous authentication"); first_token = get_token_for_ref (registry, ref_data, NULL, &anon_error); if (first_token != NULL) @@ -529,7 +529,7 @@ handle_request_ref_tokens (FlatpakAuthenticator *f_authenticator, { if (g_error_matches (anon_error, FLATPAK_ERROR, FLATPAK_ERROR_NOT_AUTHORIZED)) { - g_debug ("Anonymous authentication failed: %s", anon_error->message); + g_info ("Anonymous authentication failed: %s", anon_error->message); /* Continue trying with authentication below */ } @@ -551,7 +551,7 @@ handle_request_ref_tokens (FlatpakAuthenticator *f_authenticator, { g_autoptr(GVariant) ref_data = g_variant_get_child_value (arg_refs, 0); - g_debug ("Trying user/password based authentication"); + g_info ("Trying user/password based authentication"); while (auth == NULL) { @@ -576,7 +576,7 @@ handle_request_ref_tokens (FlatpakAuthenticator *f_authenticator, return error_request (request, sender, error); else { - g_debug ("Auth failed getting token: %s", error->message); + g_info ("Auth failed getting token: %s", error->message); /* Keep error for reporting below, or clear on next iteration start */ } } @@ -612,7 +612,7 @@ handle_request_ref_tokens (FlatpakAuthenticator *f_authenticator, g_variant_builder_init (&results, G_VARIANT_TYPE ("a{sv}")); g_variant_builder_add (&results, "{sv}", "tokens", g_variant_builder_end (&tokens)); - g_debug ("emitting OK response"); + g_info ("emitting OK response"); flatpak_authenticator_request_emit_response (request, FLATPAK_AUTH_RESPONSE_OK, g_variant_builder_end (&results)); @@ -639,7 +639,7 @@ on_bus_acquired (GDBusConnection *connection, { GError *error = NULL; - g_debug ("Bus acquired, creating skeleton"); + g_info ("Bus acquired, creating skeleton"); g_dbus_connection_set_exit_on_close (connection, FALSE); @@ -673,7 +673,7 @@ on_name_acquired (GDBusConnection *connection, const gchar *name, gpointer user_data) { - g_debug ("Name acquired"); + g_info ("Name acquired"); } static void @@ -681,7 +681,7 @@ on_name_lost (GDBusConnection *connection, const gchar *name, gpointer user_data) { - g_debug ("Name lost"); + g_info ("Name lost"); } @@ -726,7 +726,7 @@ main (int argc, { gboolean replace; gboolean opt_verbose; - GOptionContext *context; + g_autoptr(GOptionContext) context = NULL; GDBusConnection *session_bus; GBusNameOwnerFlags flags; g_autoptr(GError) error = NULL; @@ -765,9 +765,9 @@ main (int argc, } if (opt_verbose) - g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG | G_LOG_LEVEL_INFO, message_handler, NULL); + g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, message_handler, NULL); - g_debug ("Started flatpak-authenticator"); + g_info ("Started flatpak-authenticator"); http_session = flatpak_create_http_session (PACKAGE_STRING); diff --git a/oci-authenticator/meson.build b/oci-authenticator/meson.build new file mode 100644 index 0000000..9229f03 --- /dev/null +++ b/oci-authenticator/meson.build @@ -0,0 +1,35 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +executable( + 'flatpak-oci-authenticator', + 'flatpak-oci-authenticator.c', + dependencies : [ + base_deps, + json_glib_dep, + libflatpak_common_base_dep, + libflatpak_common_dep, + libglnx_dep, + libostree_dep, + libsoup_dep, + ], + include_directories : [ + include_directories('.'), + ], + install : true, + install_dir : get_option('libexecdir'), +) + +configure_file( + input : 'flatpak-oci-authenticator.service.in', + output : 'flatpak-oci-authenticator.service', + configuration : service_conf_data, + install_dir : get_option('systemduserunitdir'), +) + +configure_file( + input : 'org.flatpak.Authenticator.Oci.service.in', + output : 'org.flatpak.Authenticator.Oci.service', + configuration : service_conf_data, + install_dir : dbus_service_dir, +) diff --git a/po/LINGUAS b/po/LINGUAS index 2eb9418..72ba05a 100644 --- a/po/LINGUAS +++ b/po/LINGUAS @@ -9,6 +9,8 @@ hi hr hu id +ka +nl oc pl pt diff --git a/po/Makefile.in.in b/po/Makefile.in.in deleted file mode 100644 index fce63a6..0000000 --- a/po/Makefile.in.in +++ /dev/null @@ -1,453 +0,0 @@ -# Makefile for PO directory in any package using GNU gettext. -# Copyright (C) 1995-1997, 2000-2007, 2009-2010 by Ulrich Drepper -# -# This file can be copied and used freely without restrictions. It can -# be used in projects which are not available under the GNU General Public -# License but which still want to provide support for the GNU gettext -# functionality. -# Please note that the actual code of GNU gettext is covered by the GNU -# General Public License and is *not* in the public domain. -# -# Origin: gettext-0.18.2 -GETTEXT_MACRO_VERSION = 0.18 - -PACKAGE = @PACKAGE@ -VERSION = @VERSION@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ - -SHELL = /bin/sh -@SET_MAKE@ - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ - -prefix = @prefix@ -exec_prefix = @exec_prefix@ -datarootdir = @datarootdir@ -datadir = @datadir@ -localedir = @localedir@ -gettextsrcdir = $(datadir)/gettext/po - -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ - -# We use $(mkdir_p). -# In automake <= 1.9.x, $(mkdir_p) is defined either as "mkdir -p --" or as -# "$(mkinstalldirs)" or as "$(install_sh) -d". For these automake versions, -# @install_sh@ does not start with $(SHELL), so we add it. -# In automake >= 1.10, @mkdir_p@ is derived from ${MKDIR_P}, which is defined -# either as "/path/to/mkdir -p" or ".../install-sh -c -d". For these automake -# versions, $(mkinstalldirs) and $(install_sh) are unused. -mkinstalldirs = $(SHELL) @install_sh@ -d -install_sh = $(SHELL) @install_sh@ -MKDIR_P = @MKDIR_P@ -mkdir_p = @mkdir_p@ - -GMSGFMT_ = @GMSGFMT@ -GMSGFMT_no = @GMSGFMT@ -GMSGFMT_yes = @GMSGFMT_015@ -GMSGFMT = $(GMSGFMT_$(USE_MSGCTXT)) -MSGFMT_ = @MSGFMT@ -MSGFMT_no = @MSGFMT@ -MSGFMT_yes = @MSGFMT_015@ -MSGFMT = $(MSGFMT_$(USE_MSGCTXT)) -XGETTEXT_ = @XGETTEXT@ -XGETTEXT_no = @XGETTEXT@ -XGETTEXT_yes = @XGETTEXT_015@ -XGETTEXT = $(XGETTEXT_$(USE_MSGCTXT)) -MSGMERGE = msgmerge -MSGMERGE_UPDATE = @MSGMERGE@ --update -MSGINIT = msginit -MSGCONV = msgconv -MSGFILTER = msgfilter - -POFILES = @POFILES@ -GMOFILES = @GMOFILES@ -UPDATEPOFILES = @UPDATEPOFILES@ -DUMMYPOFILES = @DUMMYPOFILES@ -DISTFILES.common = Makefile.in.in remove-potcdate.sin \ -$(DISTFILES.common.extra1) $(DISTFILES.common.extra2) $(DISTFILES.common.extra3) -DISTFILES = $(DISTFILES.common) Makevars POTFILES.in \ -$(POFILES) $(GMOFILES) \ -$(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3) - -POTFILES = \ - -CATALOGS = @CATALOGS@ - -# Makevars gets inserted here. (Don't remove this line!) - -.SUFFIXES: -.SUFFIXES: .po .gmo .mo .sed .sin .nop .po-create .po-update - -.po.mo: - @echo "$(MSGFMT) -c -o $@ $<"; \ - $(MSGFMT) -c -o t-$@ $< && mv t-$@ $@ - -.po.gmo: - @lang=`echo $* | sed -e 's,.*/,,'`; \ - test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ - echo "$${cdcmd}rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics --verbose -o $${lang}.gmo $${lang}.po"; \ - cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics --verbose -o t-$${lang}.gmo $${lang}.po && mv t-$${lang}.gmo $${lang}.gmo - -.sin.sed: - sed -e '/^#/d' $< > t-$@ - mv t-$@ $@ - - -all: all-@USE_NLS@ - -all-yes: stamp-po -all-no: - -# Ensure that the gettext macros and this Makefile.in.in are in sync. -CHECK_MACRO_VERSION = \ - test "$(GETTEXT_MACRO_VERSION)" = "@GETTEXT_MACRO_VERSION@" \ - || { echo "*** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version $(GETTEXT_MACRO_VERSION) but the autoconf macros are from gettext version @GETTEXT_MACRO_VERSION@" 1>&2; \ - exit 1; \ - } - -# $(srcdir)/$(DOMAIN).pot is only created when needed. When xgettext finds no -# internationalized messages, no $(srcdir)/$(DOMAIN).pot is created (because -# we don't want to bother translators with empty POT files). We assume that -# LINGUAS is empty in this case, i.e. $(POFILES) and $(GMOFILES) are empty. -# In this case, stamp-po is a nop (i.e. a phony target). - -# stamp-po is a timestamp denoting the last time at which the CATALOGS have -# been loosely updated. Its purpose is that when a developer or translator -# checks out the package via CVS, and the $(DOMAIN).pot file is not in CVS, -# "make" will update the $(DOMAIN).pot and the $(CATALOGS), but subsequent -# invocations of "make" will do nothing. This timestamp would not be necessary -# if updating the $(CATALOGS) would always touch them; however, the rule for -# $(POFILES) has been designed to not touch files that don't need to be -# changed. -stamp-po: $(srcdir)/$(DOMAIN).pot - @$(CHECK_MACRO_VERSION) - test ! -f $(srcdir)/$(DOMAIN).pot || \ - test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES) - @test ! -f $(srcdir)/$(DOMAIN).pot || { \ - echo "touch stamp-po" && \ - echo timestamp > stamp-poT && \ - mv stamp-poT stamp-po; \ - } - -# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update', -# otherwise packages like GCC can not be built if only parts of the source -# have been downloaded. - -# This target rebuilds $(DOMAIN).pot; it is an expensive operation. -# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed. -# The determination of whether the package xyz is a GNU one is based on the -# heuristic whether some file in the top level directory mentions "GNU xyz". -# If GNU 'find' is available, we avoid grepping through monster files. -$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed - if { if (LC_ALL=C find --version) 2>/dev/null | grep GNU >/dev/null; then \ - LC_ALL=C find -L $(top_srcdir) -maxdepth 1 -type f -size -10000000c -exec grep 'GNU @PACKAGE@' /dev/null '{}' ';' 2>/dev/null; \ - else \ - LC_ALL=C grep 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null; \ - fi; \ - } | grep -v 'libtool:' >/dev/null; then \ - package_gnu='GNU '; \ - else \ - package_gnu=''; \ - fi; \ - if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' = '@'PACKAGE_BUGREPORT'@'; then \ - msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \ - else \ - msgid_bugs_address='$(PACKAGE_BUGREPORT)'; \ - fi; \ - case `$(XGETTEXT) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ - '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].* | 0.16 | 0.16.[0-1]*) \ - $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ - --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \ - --files-from=$(srcdir)/POTFILES.in \ - --copyright-holder='$(COPYRIGHT_HOLDER)' \ - --msgid-bugs-address="$$msgid_bugs_address" \ - ;; \ - *) \ - $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ - --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \ - --files-from=$(srcdir)/POTFILES.in \ - --copyright-holder='$(COPYRIGHT_HOLDER)' \ - --package-name="$${package_gnu}@PACKAGE@" \ - --package-version='@VERSION@' \ - --msgid-bugs-address="$$msgid_bugs_address" \ - ;; \ - esac - test ! -f $(DOMAIN).po || { \ - if test -f $(srcdir)/$(DOMAIN).pot; then \ - sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \ - sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \ - if cmp $(DOMAIN).1po $(DOMAIN).2po >/dev/null 2>&1; then \ - rm -f $(DOMAIN).1po $(DOMAIN).2po $(DOMAIN).po; \ - else \ - rm -f $(DOMAIN).1po $(DOMAIN).2po $(srcdir)/$(DOMAIN).pot && \ - mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ - fi; \ - else \ - mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ - fi; \ - } - -# This rule has no dependencies: we don't need to update $(DOMAIN).pot at -# every "make" invocation, only create it when it is missing. -# Only "make $(DOMAIN).pot-update" or "make dist" will force an update. -$(srcdir)/$(DOMAIN).pot: - $(MAKE) $(DOMAIN).pot-update - -# This target rebuilds a PO file if $(DOMAIN).pot has changed. -# Note that a PO file is not touched if it doesn't need to be changed. -$(POFILES): $(srcdir)/$(DOMAIN).pot - @lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \ - if test -f "$(srcdir)/$${lang}.po"; then \ - test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ - echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \ - cd $(srcdir) \ - && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ - '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \ - $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) $${lang}.po $(DOMAIN).pot;; \ - *) \ - $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \ - esac; \ - }; \ - else \ - $(MAKE) $${lang}.po-create; \ - fi - - -install: install-exec install-data -install-exec: -install-data: install-data-@USE_NLS@ - if test "$(PACKAGE)" = "gettext-tools"; then \ - $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ - for file in $(DISTFILES.common) Makevars.template; do \ - $(INSTALL_DATA) $(srcdir)/$$file \ - $(DESTDIR)$(gettextsrcdir)/$$file; \ - done; \ - for file in Makevars; do \ - rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ - done; \ - else \ - : ; \ - fi -install-data-no: all -install-data-yes: all - @catalogs='$(CATALOGS)'; \ - for cat in $$catalogs; do \ - cat=`basename $$cat`; \ - lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ - dir=$(localedir)/$$lang/LC_MESSAGES; \ - $(mkdir_p) $(DESTDIR)$$dir; \ - if test -r $$cat; then realcat=$$cat; else realcat=$(srcdir)/$$cat; fi; \ - $(INSTALL_DATA) $$realcat $(DESTDIR)$$dir/$(DOMAIN).mo; \ - echo "installing $$realcat as $(DESTDIR)$$dir/$(DOMAIN).mo"; \ - for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ - if test -n "$$lc"; then \ - if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ - link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ - mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ - mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ - (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ - for file in *; do \ - if test -f $$file; then \ - ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ - fi; \ - done); \ - rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ - else \ - if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ - :; \ - else \ - rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ - mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ - fi; \ - fi; \ - rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ - ln -s ../LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ - ln $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ - cp -p $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ - echo "installing $$realcat link as $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo"; \ - fi; \ - done; \ - done - -install-strip: install - -installdirs: installdirs-exec installdirs-data -installdirs-exec: -installdirs-data: installdirs-data-@USE_NLS@ - if test "$(PACKAGE)" = "gettext-tools"; then \ - $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ - else \ - : ; \ - fi -installdirs-data-no: -installdirs-data-yes: - @catalogs='$(CATALOGS)'; \ - for cat in $$catalogs; do \ - cat=`basename $$cat`; \ - lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ - dir=$(localedir)/$$lang/LC_MESSAGES; \ - $(mkdir_p) $(DESTDIR)$$dir; \ - for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ - if test -n "$$lc"; then \ - if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ - link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ - mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ - mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ - (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ - for file in *; do \ - if test -f $$file; then \ - ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ - fi; \ - done); \ - rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ - else \ - if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ - :; \ - else \ - rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ - mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ - fi; \ - fi; \ - fi; \ - done; \ - done - -# Define this as empty until I found a useful application. -installcheck: - -uninstall: uninstall-exec uninstall-data -uninstall-exec: -uninstall-data: uninstall-data-@USE_NLS@ - if test "$(PACKAGE)" = "gettext-tools"; then \ - for file in $(DISTFILES.common) Makevars.template; do \ - rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ - done; \ - else \ - : ; \ - fi -uninstall-data-no: -uninstall-data-yes: - catalogs='$(CATALOGS)'; \ - for cat in $$catalogs; do \ - cat=`basename $$cat`; \ - lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ - for lc in LC_MESSAGES $(EXTRA_LOCALE_CATEGORIES); do \ - rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ - done; \ - done - -check: all - -info dvi ps pdf html tags TAGS ctags CTAGS ID: - -mostlyclean: - rm -f remove-potcdate.sed - rm -f stamp-poT - rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po - rm -fr *.o - -clean: mostlyclean - -distclean: clean - rm -f Makefile Makefile.in POTFILES *.mo - -maintainer-clean: distclean - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." - rm -f stamp-po $(GMOFILES) - -distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) -dist distdir: - $(MAKE) update-po - @$(MAKE) dist2 -# This is a separate target because 'update-po' must be executed before. -dist2: stamp-po $(DISTFILES) - dists="$(DISTFILES)"; \ - if test "$(PACKAGE)" = "gettext-tools"; then \ - dists="$$dists Makevars.template"; \ - fi; \ - if test -f $(srcdir)/$(DOMAIN).pot; then \ - dists="$$dists $(DOMAIN).pot stamp-po"; \ - fi; \ - if test -f $(srcdir)/ChangeLog; then \ - dists="$$dists ChangeLog"; \ - fi; \ - for i in 0 1 2 3 4 5 6 7 8 9; do \ - if test -f $(srcdir)/ChangeLog.$$i; then \ - dists="$$dists ChangeLog.$$i"; \ - fi; \ - done; \ - if test -f $(srcdir)/LINGUAS; then dists="$$dists LINGUAS"; fi; \ - for file in $$dists; do \ - if test -f $$file; then \ - cp -p $$file $(distdir) || exit 1; \ - else \ - cp -p $(srcdir)/$$file $(distdir) || exit 1; \ - fi; \ - done - -update-po: Makefile - $(MAKE) $(DOMAIN).pot-update - test -z "$(UPDATEPOFILES)" || $(MAKE) $(UPDATEPOFILES) - $(MAKE) update-gmo - -# General rule for creating PO files. - -.nop.po-create: - @lang=`echo $@ | sed -e 's/\.po-create$$//'`; \ - echo "File $$lang.po does not exist. If you are a translator, you can create it through 'msginit'." 1>&2; \ - exit 1 - -# General rule for updating PO files. - -.nop.po-update: - @lang=`echo $@ | sed -e 's/\.po-update$$//'`; \ - if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH; fi; \ - tmpdir=`pwd`; \ - echo "$$lang:"; \ - test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ - echo "$${cdcmd}$(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \ - cd $(srcdir); \ - if { case `$(MSGMERGE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ - '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \ - $(MSGMERGE) $(MSGMERGE_OPTIONS) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ - *) \ - $(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ - esac; \ - }; then \ - if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ - rm -f $$tmpdir/$$lang.new.po; \ - else \ - if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ - :; \ - else \ - echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ - exit 1; \ - fi; \ - fi; \ - else \ - echo "msgmerge for $$lang.po failed!" 1>&2; \ - rm -f $$tmpdir/$$lang.new.po; \ - fi - -$(DUMMYPOFILES): - -update-gmo: Makefile $(GMOFILES) - @: - -# Recreate Makefile by invoking config.status. Explicitly invoke the shell, -# because execution permission bits may not work on the current file system. -# Use @SHELL@, which is the shell determined by autoconf for the use by its -# scripts, not $(SHELL) which is hardwired to /bin/sh and may be deficient. -Makefile: Makefile.in.in Makevars $(top_builddir)/config.status @POMAKEFILEDEPS@ - cd $(top_builddir) \ - && @SHELL@ ./config.status $(subdir)/$@.in po-directories - -force: - -# Tell versions [3.59,3.63) of GNU make not to export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/po/POTFILES.in b/po/POTFILES.in index 87c4c09..b3cb79c 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -49,17 +49,22 @@ app/flatpak-main.c app/flatpak-quiet-transaction.c common/flatpak-auth.c common/flatpak-context.c +common/flatpak-dir-utils.c common/flatpak-dir.c common/flatpak-exports.c +common/flatpak-glib-backports.c common/flatpak-installation.c common/flatpak-instance.c common/flatpak-oci-registry.c common/flatpak-progress.c common/flatpak-ref-utils.c common/flatpak-remote.c +common/flatpak-repo-utils.c common/flatpak-run.c +common/flatpak-run-dbus.c common/flatpak-transaction.c common/flatpak-uri.c +common/flatpak-usb.c common/flatpak-utils.c oci-authenticator/flatpak-oci-authenticator.c portal/flatpak-portal.c diff --git a/po/POTFILES.skip b/po/POTFILES.skip new file mode 100644 index 0000000..dd8473f --- /dev/null +++ b/po/POTFILES.skip @@ -0,0 +1,3 @@ +# List of source files that should *not* be translated. +# Please keep this file sorted alphabetically. +app/parse-datetime.c diff --git a/po/Rules-quot b/po/Rules-quot deleted file mode 100644 index d2ac20d..0000000 --- a/po/Rules-quot +++ /dev/null @@ -1,47 +0,0 @@ -# Special Makefile rules for English message catalogs with quotation marks. - -DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot - -.SUFFIXES: .insert-header .po-update-en - -en@quot.po-create: - $(MAKE) en@quot.po-update -en@boldquot.po-create: - $(MAKE) en@boldquot.po-update - -en@quot.po-update: en@quot.po-update-en -en@boldquot.po-update: en@boldquot.po-update-en - -.insert-header.po-update-en: - @lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \ - if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \ - tmpdir=`pwd`; \ - echo "$$lang:"; \ - ll=`echo $$lang | sed -e 's/@.*//'`; \ - LC_ALL=C; export LC_ALL; \ - cd $(srcdir); \ - if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$lang -o - 2>/dev/null | sed -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | $(MSGFILTER) sed -f `echo $$lang | sed -e 's/.*@//'`.sed 2>/dev/null > $$tmpdir/$$lang.new.po; then \ - if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ - rm -f $$tmpdir/$$lang.new.po; \ - else \ - if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ - :; \ - else \ - echo "creation of $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ - exit 1; \ - fi; \ - fi; \ - else \ - echo "creation of $$lang.po failed!" 1>&2; \ - rm -f $$tmpdir/$$lang.new.po; \ - fi - -en@quot.insert-header: insert-header.sin - sed -e '/^#/d' -e 's/HEADER/en@quot.header/g' $(srcdir)/insert-header.sin > en@quot.insert-header - -en@boldquot.insert-header: insert-header.sin - sed -e '/^#/d' -e 's/HEADER/en@boldquot.header/g' $(srcdir)/insert-header.sin > en@boldquot.insert-header - -mostlyclean: mostlyclean-quot -mostlyclean-quot: - rm -f *.insert-header diff --git a/po/boldquot.sed b/po/boldquot.sed deleted file mode 100644 index 4b937aa..0000000 --- a/po/boldquot.sed +++ /dev/null @@ -1,10 +0,0 @@ -s/"\([^"]*\)"/“\1”/g -s/`\([^`']*\)'/‘\1’/g -s/ '\([^`']*\)' / ‘\1’ /g -s/ '\([^`']*\)'$/ ‘\1’/g -s/^'\([^`']*\)' /‘\1’ /g -s/“”/""/g -s/“/“/g -s/”/”/g -s/‘/‘/g -s/’/’/g diff --git a/po/cs.gmo b/po/cs.gmo deleted file mode 100644 index 64edd68645082081fc14df45ecfe0769b9e8e0d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 100014 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 R8c0f?pd^anGi7qt{|ATR=F|WH diff --git a/po/cs.po b/po/cs.po index 02ab1ae..3f0e857 100644 --- a/po/cs.po +++ b/po/cs.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" -"PO-Revision-Date: 2022-08-23 18:04+0200\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2024-09-12 23:44+0200\n" "Last-Translator: Daniel Rusek \n" "Language-Team: Czech \n" "Language: cs\n" @@ -16,106 +16,106 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -"X-Generator: Poedit 3.1.1\n" +"X-Generator: Poedit 3.5\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Exportovat prostředí namísto aplikace" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Architektura, pro kterou se má vytvořit balík" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARCHITEKTURA" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Url pro repozitář" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Url pro flatpakrepo soubor prostředí" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Přidat klíč GPG ze SOUBORU (- pro standardní vstup)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "SOUBOR" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "ID klíče GPG pro podepsání OCI obrazu" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "KLÍČ-ID" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "KLÍČ-ID" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "Domovský adresář pro použití při hledání klíčenek" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "DOMOVSKÝ_ADRESÁŘ" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "OSTree commit pro vytvoření delta bundle" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "COMMIT" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Exportovat oci obraz namísto flatpak balíku" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -123,58 +123,58 @@ msgstr "" "UMÍSTĚNÍ NÁZEV_SOUBORU NÁZEV [VĚTEV] - Vytvořit jeden soubor balíku z " "místního repozitáře" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "UMÍSTĚNÍ, NÁZEV_SOUBORU A NÁZEV musí být určeny" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Příliš mnoho parametrů" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "„%s“ není platným repozitářem" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "„%s“ není platným repozitářem: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "„%s“ není platným názvem: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "„%s“ není platným názvem větve: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -209,7 +209,7 @@ msgstr "ADRESÁŘ" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Kde hledat adresář s upraveným sdk (výchozí je „usr“)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Použít alternativní soubor pro metadata" @@ -229,104 +229,105 @@ msgstr "Zaznamenávat volání sběrnice sezení" msgid "Log system bus calls" msgstr "Zaznamenávat volání systémové sběrnice" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "ADRESÁŘ [PŘÍKAZ [ARGUMENT…]] - Sestavit v adresáři" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "ADRESÁŘ musí být určen" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "Adresář sestavení %s neinicializován, použijte flatpak build-init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "neplatná metadata, není aplikace nebo prostředí" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Nelze spustit aplikaci" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Adresář pro zdrojový repozitář" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "ZDROJ-REPOZITÁŘ" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Ref pro zdrojový repozitář" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "ZDROJ-REF" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Předmět na jeden řádek" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "PŘEDMĚT" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Úplný popis" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "TĚLO" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Aktualizovat appstream větev" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Aktualizovat appstream větev" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Neaktualizovat shrnutí" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "ID klíče GPG pro podepsání commitu" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "Označit sestavení jako end-of-life" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "DŮVOD" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -334,370 +335,375 @@ msgstr "" "Označit refy odpovídající předponě OLDID jako end-of-life, k nahrazení daným " "NEWID" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "OLDID=NEWID" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "Nastavit typ tokenu požadovaného k instalaci tohoto commitu" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "HODNOTA" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "Přepsat časovou značku commitu (NOW pro aktuální čas)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "TIMESTAMP" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "Negenerovat index shrnutí" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "CÍL-REPO [CÍL-REF…] - Vytvořit nový commit z existujících commitů" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "CÍL-REPO musí být určeno" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "Pokud není --src-repo určeno, musí být určen přesně jeden cílový ref" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "Pokud je --src-ref určeno, musí být určen přesně jeden cílový ref" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "Buď --src-repo nebo --src-ref musí být určeno" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "Neplatný formát parametrů použití --end-of-life-rebase=OLDID=NEWID" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "Neplatný název %s v --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "Nelze zpracovat „%s“" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: žádná změna\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "" "Architektura, pro kterou exportovat (musí být kompatibilní s hostitelem)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Použít alternativní adresář pro soubory" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "PODADRESÁŘ" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Soubory k vyloučení" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "VZOR" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Vyloučené soubory k zahrnutí" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "Označit sestavení jako end-of-life, k nahrazení daným ID" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Přepsat časovou značku commitu" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "ID kolekce" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Neplatný typ uri %s, pouze http/https jsou podporovány" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "V názvu souboru dodatečných dat nejsou povolena lomítka" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Neplatný formát pro kontrolní součet sha256: „%s“" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Dodatečná data s nulovou velikostí nejsou podporována" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "UMÍSTĚNÍ ADRESÁŘ [VĚTEV] - Vytvořit repozitář z adresáře sestavení" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "UMÍSTĚNÍ a ADRESÁŘ musí být určeny" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "„%s“ není platným ID kolekce: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Není určen žádný název v metadatech" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Commit: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Celková metadata: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Zapsaná metadata: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Celkový obsah: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Zapsaný obsah: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Zapsáno bajtů obsahu:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Příkaz, který se má nastavit" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "PŘÍKAZ" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Požadovaná verze flatpaku" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "MAJOR.MINOR.MICRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Nezpracovat exporty" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Informace o dodatečných údajích" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NÁZEV=PROMĚNNÁ[=HODNOTA]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NÁZEV" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Nastavit prioritu rozšíření (pouze pro rozšíření)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "HODNOTA" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Změnit sdk použité pro aplikaci" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Změnit prostředí použité pro aplikaci" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "PROSTŘEDÍ" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Nastavit generickou volbu metadat" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "SKUPINA=KLÍČ[=HODNOTA]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Nedědit oprávnění z prostředí" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "Neexportuje se %s, neplatné rozšíření\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "Neexportuje se %s, nepovolený název export souboru\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "Exportuje se %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Nalezen více než jeden spustitelný soubor\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "Používá se %s jako příkaz\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Nenalezen žádný spustitelný soubor\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Neplatný --require-version argument: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " "GROUP=KEY[=VALUE]]" msgstr "" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -705,63 +711,64 @@ msgid "" "NAME=VAR[=VALUE]" msgstr "" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "Neplatný název rozšíření %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "ADRESÁŘ - Dokončit adresář sestavení" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Adresář sestavení %s není inicializován" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Adresář sestavení %s je již uzavřen" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Zkontrolujte prosím exportované soubory a metadata\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REF" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Importovat oci obraz namísto flatpak balíku" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Ref „%s“ nebyl nalezen v registru" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "Více obrazů v registru, určete ref pomocí --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "Importuje se %s (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "" "UMÍSTĚNÍ NÁZEV_SOUBORU - Importovat soubor balíku do místního repozitáře" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "UMÍSTĚNÍ a NÁZEV_SOUBORU musí být určeny" @@ -875,205 +882,208 @@ msgstr "„%s“ není platným názvem aplikace: %s" msgid "Build directory %s already initialized" msgstr "Adresář sestavení %s je již inicializován" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Architektura, pro kterou se má instalovat" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Hledat prostředí s určeným názvem" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "UMÍSTĚNÍ [ID [VĚTEV]] - Podepsat aplikaci nebo prostředí" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "UMÍSTĚNÍ musí být určeno" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Žádné id klíče gpg určeny" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Přesměrovat tento repozitář na novou URL" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Hezký název, který bude použit pro tento repozitář" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "JMÉNO" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "Jednořádkový komentář pro tento repozitář" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "KOMENTÁŘ" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "Popis v celém odstavci pro tento repozitář" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "POPIS" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "URL pro webovou stránku pro tento repozitář" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "URL pro ikonu pro tento repozitář" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Výchozí větev pro použití s tímto vzdáleným repozitářem" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "VĚTEV" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "ID-KOLEKCE" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Název autentikátoru pro tento repozitář" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "Automaticky instalovat autentikátor pro tento repozitář" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "Neinstalovat automaticky autentikátor pro tento repozitář" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Volba autentikátoru" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "KLÍČ=HODNOTA" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Importovat nový výchozí veřejný klíč GPG ze SOUBORU" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "ID klíče GPG pro podepsání shrnutí" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Generovat delta soubory" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Neaktualizovat appstream větev" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "POČET-ÚLOHY" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "HLOUBKA" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Generování delta souboru: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Generování delta souboru: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Selhalo generování delta souboru %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Selhalo generování delta souboru %s (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "UMÍSTĚNÍ - Aktualizovat metadata repozitáře" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Aktualizace appstream větve\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Aktualizace shrnutí\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Celkový počet objektů: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Žádné nedostupné objekty\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "Odstraněno %u objektů, %s uvolněno\n" @@ -1145,25 +1155,25 @@ msgstr "Můžete určit pouze jedno z --list, --get, --set nebo --unset" msgid "Must specify one of --list, --get, --set or --unset" msgstr "Musíte určit jedno z --list, --get, --set nebo --unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Hledat aplikaci s určeným názvem" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Architektura, která se má kopírovat" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "CÍL" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "Povolit částečné commity ve vytvořeném repozitáři" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " @@ -1172,13 +1182,13 @@ msgstr "" "Varování: Související ref „%s“ je částečně nainstalován. Pro potlačení této " "zprávy použijte --allow-partial.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" "Varování: Vynechává se související ref „%s“, protože není nainstalován.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1187,13 +1197,13 @@ msgstr "" "Varování: Vynechává se související ref „%s“, protože jeho vzdálený repozitář " "„%s“ nemá nastaveno ID kolekce.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" "Varování: Vynechává se související ref „%s“, protože se jedná o extra-data.\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1202,34 +1212,34 @@ msgstr "" "Vzdálený repozitář „%s“ nemá nastaveno ID kolekce, které je povinné pro P2P " "distribuci „%s“." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" "Varování: Vynechává se ref „%s“ (prostředí „%s“), protože se jedná o extra-" "data.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" "CESTA-PŘIPOJENÍ [REF…] - Kopírovat aplikace a/nebo prostředí na vyměnitelné " "médium" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "CESTA-PŘIPOJENÍ a REF musí být určeny" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "Ref „%s“ nalezen ve více instalacích: %s. Musíte určit jednu." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "Refy musí být všechny ve stejné instalaci (nalezeno v %s a %s)." -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " @@ -1238,19 +1248,19 @@ msgstr "" "Varování: Ref „%s“ je částečně nainstalován. Pro potlačení této zprávy " "použijte --allow-partial.\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "Instalovaný ref „%s“ je extra-data a nemůže být distribuován offline" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" "Varování: Nepodařilo se aktualizovat repo metadata pro vzdálený repozitář " "„%s“: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1258,7 +1268,7 @@ msgstr "" "„%s“ architektura „%s“: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1267,7 +1277,7 @@ msgstr "" "architektura „%s“: %s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1342,19 +1352,20 @@ msgstr "SOUBOR - Získat informace o exportovaném souboru" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Neexportováno\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Jaké informace zobrazit" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "POLE,…" @@ -1373,7 +1384,7 @@ msgid "Show the document path" msgstr "Zobrazit cestu k dokumentu" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Původ" @@ -1387,7 +1398,7 @@ msgid "Show applications with permission" msgstr "Zobrazit aplikace s oprávněním" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Oprávnění" @@ -1514,12 +1525,12 @@ msgid "Show the kind of change" msgstr "Zobrazit druh změny" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Ref" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Zobrazit ref" @@ -1528,24 +1539,24 @@ msgid "Show the application/runtime ID" msgstr "Zobrazit ID aplikace/prostředí" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Architektura" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Zobrazit architekturu" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Větev" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Zobrazit větev" @@ -1557,7 +1568,7 @@ msgstr "Instalace" msgid "Show the affected installation" msgstr "Zobrazit ovlivněnou instalaci" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Vzdálený repozitář" @@ -1566,7 +1577,7 @@ msgid "Show the remote" msgstr "Zobrazit vzdálený repozitář" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Commit" @@ -1586,7 +1597,7 @@ msgstr "Zobrazit předchozí commit" msgid "Show the remote URL" msgstr "Zobrazit URL vzdáleného repozitáře" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Uživatel" @@ -1603,7 +1614,7 @@ msgid "Show the tool that was used" msgstr "Zobrazit nástroj, který byl použit" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Verze" @@ -1631,10 +1642,12 @@ msgid " - Show history" msgstr " - Zobrazit historii" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "Nelze zpracovat volbu --since" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "Nelze zpracovat volbu --until" @@ -1650,11 +1663,11 @@ msgstr "Zobrazit systémové instalace" msgid "Show specific system-wide installations" msgstr "Zobrazit specifické systémové instalace" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Zobrazit ref" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Zobrazit commit" @@ -1666,15 +1679,15 @@ msgstr "Zobrazit původ" msgid "Show size" msgstr "Zobrazit velikost" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Zobrazit metadata" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Zobrazit prostředí" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Zobrazit sdk" @@ -1686,8 +1699,8 @@ msgstr "Zobrazit oprávnění" msgid "Query file access" msgstr "Dotázat se na přístup k souborům" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1706,7 +1719,7 @@ msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "" "NÁZEV [VĚTEV] - Získat informace o nainstalované aplikaci nebo prostředí" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "NÁZEV musí být určen" @@ -1715,85 +1728,87 @@ msgstr "NÁZEV musí být určen" msgid "ref not present in origin" msgstr "" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Varování: Commit nemá žádná flatpak metadata\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Ref:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Architektura:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Větev:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Verze:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Licence:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Kolekce:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Instalace:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Instalováno:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Prostředí:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Datum:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Předmět:" @@ -1806,15 +1821,15 @@ msgid "Latest commit:" msgstr "Poslední commit:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Commit:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Rodič:" @@ -1823,14 +1838,14 @@ msgid "Alt-id:" msgstr "Alt-id:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "End-of-life:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "End-of-life-rebase:" @@ -1839,146 +1854,147 @@ msgid "Subdirectories:" msgstr "Podadresáře:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Rozšíření:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Původ:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Podcesty:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "neudržováno" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "neznámé" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Nedělat pull, pouze instalovat z místní cache" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Nedělat nasazení, pouze stáhnout do místní cache" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Neinstalovat související refy" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Neověřovat/neinstalovat běhové závislosti" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "Nepřipínat automaticky explicitní instalace" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Nepoužívat statické delta soubory" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Předpokládat, že UMÍSTĚNÍ je jednosouborový balíček .flatpak" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Předpokládat, že UMÍSTĚNÍ je popis aplikace .flatpakref" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "" "Zkontrolovat podpisy balíku klíčem GPG ze souboru (- pro standardní vstup)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Instalovat pouze tuto podcestu" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Automaticky odpovědět ano na všechny otázky" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Nejprve odinstalovat, pokud je již nainstalováno" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "Produkovat minimální výstup a neptat se na otázky" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Aktualizovat instalaci, pokud je již nainstalováno" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "Použít tento místní repozitář pro sideloady" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Název souboru balíku musí byt určen" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Vzdálené balíky nejsou podporovány" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" -msgstr "Název vzdáleného repozitáře musí být určen" +msgstr "Název souboru nebo uri musí být určen" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "[UMÍSTĚNÍ/VZDÁLENÉ] [REF…] - Instalovat aplikace nebo prostředí" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "Alespoň jeden REF musí být určen" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Vyhledávají se shody…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, c-format msgid "No remote refs found for ‘%s’" msgstr "Nenalezeny žádné vzdálené refy pro „%s“" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Neplatná větev %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Nic nevyhovuje názvu %s v místním repozitáři pro vzdálený repozitář %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Nic nevyhovuje názvu %s ve vzdáleném repozitáři %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Přeskakuje se: %s\n" @@ -2016,51 +2032,51 @@ msgstr "Vypsat seznam nainstalovaných aplikací" msgid "Arch to show" msgstr "Architektura, která se má zobrazit" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Zobrazit všechny refy (včetně locale/debug)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "Vypsat všechny aplikace používající PROSTŘEDÍ" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Název" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Zobrazit název" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Popis" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Zobrazit popis" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "ID aplikace" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Zobrazit ID aplikace" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Zobrazit verzi" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Prostředí" @@ -2068,7 +2084,7 @@ msgstr "Prostředí" msgid "Show the used runtime" msgstr "Zobrazit použité prostředí" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Zobrazit prostředí původu" @@ -2080,7 +2096,7 @@ msgstr "Zobrazit instalaci" msgid "Active commit" msgstr "Aktivní commit" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Zobrazit aktivní commit" @@ -2092,35 +2108,35 @@ msgstr "Poslední commit" msgid "Show the latest commit" msgstr "Zobrazit nejnovější commit" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Instalovaná velikost" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Zobrazit instalovanou velikost" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Možnosti" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Zobrazit volby" -#: app/flatpak-builtins-list.c:179 -#, fuzzy, c-format +#: app/flatpak-builtins-list.c:178 +#, c-format msgid "Unable to load details of %s: %s" -msgstr "Nelze načíst metadata ze vzdáleného repozitáře %s: %s" +msgstr "Selhalo načtení podrobností o %s: %s" -#: app/flatpak-builtins-list.c:189 +#: app/flatpak-builtins-list.c:188 #, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Selhala kontrola aktuální verze %s: %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - Vypsat nainstalované aplikace a/nebo prostředí" @@ -2132,7 +2148,7 @@ msgstr "" msgid "APP BRANCH - Make branch of application current" msgstr "" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "APLIKACE musí být určena" @@ -2157,10 +2173,12 @@ msgstr "" "vzorů" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "Žádné maskované vzory\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Maskované vzory:\n" @@ -2176,26 +2194,26 @@ msgstr "Zobrazit existující přepsání" msgid "[APP] - Override settings [for application]" msgstr "[APLIKACE] - Přepsat nastavení [pro aplikaci]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABULKA] [ID] - Zobrazit oprávnění" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Tabulka" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Objekt" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "Aplikace" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Data" @@ -2253,10 +2271,12 @@ msgstr "" "[VZOR…] - zakázat automatické odstranění prostředí podle odpovídajících vzorů" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "Žádné připnuté vzory\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "Připnuté vzory:\n" @@ -2332,127 +2352,127 @@ msgstr "Zobrazit, když běží aplikace na pozadí" msgid " - Enumerate running sandboxes" msgstr " - Vypsat spuštěné sandboxy" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Nedělat nic, pokud poskytnutý vzdálený repozitář již existuje" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "UMÍSTĚNÍ určuje konfigurační soubor, ne cestu k repozitáři" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Zakázat ověřování pomocí GPG" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Označit vzdálený repozitář jako nepoužit pro enumeraci" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Označit vzdálený repozitář jako nepoužit pro závislosti" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "" "Nastavit prioritu (výchozí hodnota je 1, vyšší hodnota znamená větší " "prioritu)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORITA" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "" "Pojmenovaná podmnožina, která bude použita pro tento vzdálený repozitář" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "PODMNOŽINA" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Hezký název, který bude použit pro tento vzdálený repozitář" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "Jednořádkový komentář pro tento vzdálený repozitář" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "Popis v celém odstavci pro tento vzdálený repozitář" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "URL pro webovou stránku pro tento vzdálený repozitář" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "URL pro ikonu pro tento vzdálený repozitář" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Výchozí větev pro použití s tímto vzdáleným repozitářem" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Importovat klíč GPG ze SOUBORU (- pro standardní vstup)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Nastavit cestu pro místní SOUBOR filtru" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Zakázat vzdálený repozitář" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Název autentikátoru" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Automaticky instalovat autentikátor" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "Neinstalovat automaticky autentikátor" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "Nelze načíst uri %s: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Nelze načíst soubor %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NÁZEV UMÍSTĚNÍ - Přidat vzdálený repozitář" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "Ověřování pomocí GPG je vyžadováno, pokud jsou povoleny kolekce" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "Vzdálený repozitář %s již existuje" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Neplatný název autentikátoru %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "Varování: Nepodařilo se aktualizovat dodatečná metadata pro „%s“: %s\n" @@ -2479,61 +2499,61 @@ msgstr "Odstranit je?" msgid "Can't remove remote '%s' with installed refs" msgstr "Nelze odstranit vzdálený repozitář „%s“ s instalovanými refy" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "Commit, pro který zobrazit informace" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Zobrazit záznam" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Zobrazit rodiče" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Použít místní cache i pokud jsou zastaralé" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "Vypsat pouze refy dostupné jako sideloady" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " VZDÁLENÉ REF - Zobrazit informace o aplikaci nebo prostředí ve vzdáleném " "repozitáři" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "VZDÁLENÉ a REF musí být určeny" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Stažení:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "Historie:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Commit:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Předmět:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Datum:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Varování: Commit %s nemá žádná flatpak metadata\n" @@ -2562,7 +2582,7 @@ msgstr "Zobrazit URL" msgid "Show the collection ID" msgstr "Zobrazit ID kolekce" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "Podmnožina" @@ -2618,39 +2638,39 @@ msgstr "Zobrazit ikonu" msgid " - List remote repositories" msgstr " - Vypsat vzdálené repozitáře" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Zobrazit architektury a větve" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Zobrazit pouze prostředí" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Zobrazit pouze aplikace" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Zobrazit pouze ty, pro které jsou k dispozici aktualizace" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Omezit na tuto architekturu (* pro všechny)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Zobrazit prostředí" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Stahovaná velikost" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Zobrazit stahovanou velikost" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr " [VZDÁLENÉ nebo URI] - Zobrazit dostupná prostředí a aplikace" @@ -2779,224 +2799,231 @@ msgstr "Chyba při reinstalování %s: %s\n" msgid "- Repair a flatpak installation" msgstr "- Opravit flatpak instalaci" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d/%d] Ověřuje se %s…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "Chod naprázdno: " -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "Maže se ref %s z důvodu chybějících objektů\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "Maže se ref %s z důvodu neplatných objektů\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "Maže se ref %s z důvodu %d\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "Kontrolují se vzdálené repozitáře...\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "Vzdálený repozitář %s pro ref %s chybí\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "Vzdálený repozitář %s pro ref %s je zakázán\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "Odstraňuje se .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "Reinstalují se refy\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "Reinstalují se odstraněné refy\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "Během odstraňování appstream pro %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "Během nasazování appstream pro %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Mód repozitáře: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "Indexovaná shrnutí: %s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "pravda" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "nepravda" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "Podshrnutí: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "Verze cache: %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "Indexované delty: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Jméno: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Komentář: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Popis: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Domovská stránka: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Ikona: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "ID kolekce: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Výchozí větev: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "URL přesměrování: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "ID kolekce nasazení: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Název autentikátoru: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "Instalace autentikátoru: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "Hash klíče GPG: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "%zd větví shrnutí\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Instalováno" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Stažení" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "Podmnožiny" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "Výběr" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "Délka historie" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Vypsat obecné informace o repozitáři" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Vypsat větve v repozitáři" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Vypsat metadata pro větev" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Zobrazit commity pro větev" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "Vypsat informace o podmnožině repozitářů" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "Omezit informace na podmnožiny s touto předponou" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "UMÍSTĚNÍ - Údržba repozitáře" @@ -3092,11 +3119,11 @@ msgstr "" msgid "Use PATH instead of the runtime's /usr" msgstr "" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "APLIKACE [ARGUMENT…] - Spustit aplikaci" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "prostředí/%s/%s/%s nenainstalováno" @@ -3113,15 +3140,15 @@ msgstr "Vzdálené repozitáře" msgid "Show the remotes" msgstr "Zobrazit vzdálené repozitáře" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "TEXT - Vyhledat text ve vzdálených aplikacích/prostředích" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "TEXT musí být určen" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Nenalezeny žádné shody" @@ -3200,6 +3227,7 @@ msgstr "" "flatpak-pin(1):\n" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Nic nepoužívaného k odinstalaci\n" @@ -3224,6 +3252,7 @@ msgid "Warning: %s is not installed\n" msgstr "Varování: %s není nainstalováno\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "Žádný z uvedených refů není nainstalován" @@ -3264,6 +3293,7 @@ msgid "With --commit, only one REF may be specified" msgstr "" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Vyhledávají se aktualizace…\n" @@ -3273,28 +3303,29 @@ msgid "Unable to update %s: %s\n" msgstr "Nelze aktualizovat %s: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Není co dělat.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "Vzdálený repozitář „%s“ nalezen ve více instalacích:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Který si přejete použít (0 pro zrušení)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "Nebyl vybrán žádný vzdálený repozitář pro vyřešení „%s“, který existuje ve " "více instalacích" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3303,13 +3334,13 @@ msgstr "" "Vzdálený repozitář „%s“ nebyl nalezen\n" "Tip: Pro přidání vzdáleného repozitáře použijte flatpak remote-add" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Vzdálený repozitář „%s“ nebyl nalezen v instalaci %s" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3318,139 +3349,130 @@ msgstr "" "Nalezen ref „%s“ ve vzdáleném repozitáři „%s“ (%s).\n" "Použít tento ref?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "Nevybrán žádný ref pro vyřešení shod pro „%s“" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "Podobné refy pro „%s“ nalezeny ve vzdáleném repozitáři „%s“ (%s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "Nalezen nainstalovaný ref „%s“ (%s). Je to správně?" -#: app/flatpak-builtins-utils.c:521 -msgid "All of the above" -msgstr "Všechny výše uvedené" - #: app/flatpak-builtins-utils.c:522 #, c-format -msgid "Similar installed refs found for ‘%s’:" -msgstr "Nalezeny podobné nainstalované refy pro „%s“:" - -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 -#, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"Nalezeny podobné refy pro „%s“ ve vzdáleném repozitáři „%s“ (%s).\n" -"Použít tento vzdálený repozitář?" +msgid "All of the above" +msgstr "Všechny výše uvedené" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:523 #, c-format -msgid "No remote chosen to resolve matches for ‘%s’" -msgstr "Nevybrán žádný vzdálený repozitář pro vyřešení shod pro „%s“" +msgid "Similar installed refs found for ‘%s’:" +msgstr "Nalezeny podobné nainstalované refy pro „%s“:" -#: app/flatpak-builtins-utils.c:593 +#: app/flatpak-builtins-utils.c:581 #, c-format msgid "Remotes found with refs similar to ‘%s’:" msgstr "Nalezeny vzdálené repozitáře s refy podobnými „%s“:" -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:584 +#, c-format +msgid "No remote chosen to resolve matches for ‘%s’" +msgstr "Nevybrán žádný vzdálený repozitář pro vyřešení shod pro „%s“" + +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "Aktualizují se appstream data pro uživatelský vzdálený repozitář %s" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Aktualizují se appstream data pro vzdálený repozitář %s" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Chyba během aktualizace" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "Vzdálený repozitář „%s“ nebyl nalezen" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Nejednoznačná přípona: „%s“." #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "Možné hodnoty jsou :s[tart], :m[iddle], :e[nd] nebo :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Neplatná přípona: „%s“." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Nejednoznačný sloupec: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Neznámý sloupec: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Dostupné sloupce:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Zobrazit všechny sloupce" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Zobrazit dostupné sloupce" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "" "Požadované prostředí pro %s (%s) bylo nalezeno ve vzdáleném repozitáři %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Chcete ho nainstalovat?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "" "Požadované prostředí pro %s (%s) bylo nalezeno ve vzdálených repozitářích:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Který si přejete instalovat (0 pro zrušení)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Nastavuje se %s jako nový vzdálený repozitář „%s“\n" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3462,7 +3484,7 @@ msgstr "" "Má být vzdálený repozitář ponechán pro budoucí instalace?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3473,126 +3495,126 @@ msgstr "" " %s\n" "Konfigurovat tohle jako nový vzdálený repozitář „%s“" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Instalace…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Instalace %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Aktualizace…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Aktualizace %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Odinstalace…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Odinstalace %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Informace: %s bylo přeskočeno" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, c-format msgid "Warning: %s%s%s already installed" msgstr "Varování: %s%s%s je již nainstalováno" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, c-format msgid "Error: %s%s%s already installed" msgstr "Chyba: %s%s%s je již nainstalováno" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, c-format msgid "Warning: %s%s%s not installed" msgstr "Varování: %s%s%s nenainstalováno" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, c-format msgid "Error: %s%s%s not installed" msgstr "Chyba: %s%s%s nenainstalováno" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "Varování: %s%s%s vyžaduje novější verzi flatpaku" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "Chyba: %s%s%s vyžaduje novější verzi flatpaku" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" msgstr "Varování: Na disku není dostatek místa k provedení této operace" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" msgstr "Chyba: Na disku není dostatek místa k provedení této operace" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, c-format msgid "Warning: %s" msgstr "Varování: %s" -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, c-format msgid "Error: %s" msgstr "Chyba: %s" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, c-format msgid "Failed to install %s%s%s: " msgstr "Selhala instalace %s%s%s: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, c-format msgid "Failed to update %s%s%s: " msgstr "Selhala aktualizace %s%s%s: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Selhala instalace balíku %s%s%s: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Selhala odinstalace %s%s%s: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "Pro vzdálený repozitář „%s“ je vyžadováno ověření\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Otevřít prohlížeč?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "Přihlášení vyžadující vzdálený repozitář %s (doména %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Heslo" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, c-format msgid "" "\n" @@ -3603,7 +3625,7 @@ msgstr "" "Informace: (připnuto) prostředí %s%s%s větev %s%s%s je end-of-life, ve " "prospěch %s%s%s větev %s%s%s\n" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, c-format msgid "" "\n" @@ -3614,7 +3636,7 @@ msgstr "" "Informace: prostředí %s%s%s větev %s%s%s je end-of-life, ve prospěch %s%s%s " "větev %s%s%s\n" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, c-format msgid "" "\n" @@ -3626,7 +3648,7 @@ msgstr "" "větev %s%s%s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, c-format msgid "" "\n" @@ -3636,7 +3658,7 @@ msgstr "" "Informace: (připnuto) prostředí %s%s%s větev %s%s%s je end-of-life, z " "důvodu:\n" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, c-format msgid "" "\n" @@ -3645,7 +3667,7 @@ msgstr "" "\n" "Informace: prostředí %s%s%s větev %s%s%s je end-of-life, z důvodu:\n" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, c-format msgid "" "\n" @@ -3654,90 +3676,88 @@ msgstr "" "\n" "Informace: aplikace %s%s%s větev %s%s%s je end-of-life, z důvodu:\n" -#: app/flatpak-cli-transaction.c:947 +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" msgstr "Informace: aplikace používající toto rozšíření:\n" -#: app/flatpak-cli-transaction.c:949 +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" msgstr "Informace: aplikace používající toto prostředí:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "Nahradit?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "Aktualizace na rebased verzi\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "Selhalo rebase %s na %s: " -#: app/flatpak-cli-transaction.c:1009 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Selhala odinstalace %s pro rebase na %s: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, c-format msgid "New %s%s%s permissions:" msgstr "Nových %s%s%s oprávnění:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, c-format msgid "%s%s%s permissions:" msgstr "%s%s%s oprávnění:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Varování: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Op" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "částečný" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Pokračovat s těmito změnami do uživatelské instalace?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Pokračovat s těmito změnami do systémové instalace?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Pokračovat s těmito změnami do %s?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Změny dokončeny." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Odinstalace dokončena." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Instalace dokončena." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Aktualizace dokončeny." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Vyskytla se jedna či více chyb" @@ -3974,11 +3994,11 @@ msgstr "Zobrazit informace o repozitáři" #: app/flatpak-main.c:161 msgid "Show debug information, -vv for more detail" -msgstr "Zobrazit ladící informace, -vv pro více detailů" +msgstr "Zobrazit ladicí informace, -vv pro více detailů" #: app/flatpak-main.c:162 msgid "Show OSTree debug information" -msgstr "Zobrazit ladící informace OSTree" +msgstr "Zobrazit ladicí informace OSTree" #: app/flatpak-main.c:168 msgid "Print version information and exit" @@ -4031,6 +4051,9 @@ msgid "" "XDG_DATA_DIRS environment variable, so applications installed by Flatpak may " "not appear on your desktop until the session is restarted." msgstr "" +"Všimněte si, že adresáře %s nejsou ve vyhledávací cestě nastavené proměnnou " +"prostředí XDG_DATA_DIRS, takže aplikace nainstalované pomocí Flatpaku se " +"nemusí objevit na vaší ploše, dokud nebude sezení restartováno." #: app/flatpak-main.c:311 #, c-format @@ -4039,8 +4062,11 @@ msgid "" "XDG_DATA_DIRS environment variable, so applications installed by Flatpak may " "not appear on your desktop until the session is restarted." msgstr "" +"Všimněte si, že adresář %s není ve vyhledávací cestě nastavené proměnnou " +"prostředí XDG_DATA_DIRS, takže aplikace nainstalované pomocí Flatpaku se " +"nemusí objevit na vaší ploše, dokud nebude sezení restartováno." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." @@ -4049,27 +4075,27 @@ msgstr "" "uživatelské instalaci, nebo použijte shell uživatele root pro operaci na " "instalaci uživatele root." -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "Více instalací určeno pro příkaz, který funguje na jedné instalaci" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "Viz „%s --help“" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "„%s“ není platným flatpak příkazem. Měli jste na mysli „%s%s“?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "„%s“ není příkaz flatpaku" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Nebyl určen žádný příkaz" @@ -4132,16 +4158,16 @@ msgstr "Varování: Selhala odinstalace %s: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Chyba: Selhala odinstalace %s: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s je již nainstalováno" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s není nainstalováno" @@ -4170,58 +4196,54 @@ msgstr "Informace: %s je end-of-life, z důvodu: %s\n" msgid "Failed to rebase %s to %s: %s\n" msgstr "Selhalo rebase %s na %s: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Selhala odinstalace %s pro rebase na %s: %s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "Nenastaven žádný autentikátor pro vzdálený repozitář „%s“" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Neznámý typ sdílení %s, platné typy jsou: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Neznámý typ zásad %s, platné typy jsou: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Neplatný název dbus %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Neznámý typ soketu %s, platné typy jsou: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Neznámý typ zařízení %s, platné typy jsou: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Neznámý typ funkce %s, platné typy jsou: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "Umístění systému souborů „%s“ obsahuje „..“" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" "--filesystem=/ není dostupné, pro podobný výsledek použijte --filesystem=host" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4230,849 +4252,907 @@ msgstr "" "Neplatné umístění systému souborů %s, platná umístění jsou: host, host-os, " "host-etc, home, xdg-*[/…], ~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Neplatný formát env %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" -msgstr "" +msgstr "Název proměnné prostředí nesmí obsahovat '=': %s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "--add-policy argumenty musí být ve formě SUBSYSTÉM.KLÍČ=HODNOTA" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "--add-policy hodnoty nemohou začínat „!“" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "--remove-policy argumenty musí být ve formě SUBSYSTÉM.KLÍČ=HODNOTA" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "--remove-policy hodnoty nemohou začínat „!“" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Sdílet s hostitelem" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "SDÍLET" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Zrušit sdílení s hostitelem" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Odhalit soket aplikaci" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "SOKET" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Neodhalovat soket aplikaci" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Odhalit zařízení aplikaci" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "ZAŘÍZENÍ" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Neodhalovat zařízení aplikaci" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Umožnit funkci" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "FUNKCE" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Neumožnit funkci" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "Odhalit systém souborů aplikaci (:ro pro přístup pouze ke čtení)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "SYSTÉM_SOUBORŮ[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Neodhalovat systém souborů aplikaci" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "SYSTÉM_SOUBORŮ" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Nastavit proměnnou prostředí" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "PROMĚNNÁ=HODNOTA" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "Číst proměnné prostředí ve formátu env -0 z FD" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "FD" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "Odstranit proměnnou z prostředí" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "PROMĚNNÁ" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Povolit aplikaci vlastnit název na sběrnici sezení" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "NÁZEV_DBUS" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Povolit aplikaci komunikovat s názvem na sběrnici sezení" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "Nepovolit aplikaci komunikovat s názvem na sběrnici sezení" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Povolit aplikaci vlastnit název na systémové sběrnici" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Povolit aplikaci komunikovat s názvem na systémové sběrnici" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "Nepovolit aplikaci komunikovat s názvem na systémové sběrnici" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +msgid "Allow app to own name on the a11y bus" +msgstr "Povolit aplikaci vlastnit název na sběrnici a11y" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Přidat generickou volbu bezpečnostní politiky" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "SUBSYSTÉM.KLÍČ=HODNOTA" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Odebrat generickou volbu bezpečnostní politiky" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "Trvalá podcesta domovského adresáře" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "NÁZEV_SOUBORU" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Trvalá podcesta domovského adresáře" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Nevyžadovat běžící sezení (bez vytvoření cgroups)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" -msgstr "" +msgstr "Nenahrazení „%s“ tmpfs: %s" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" -msgstr "" +msgstr "Nesdílení „%s“ se sandboxem: %s" #. Even if the error is one that we would normally silence, like #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" -msgstr "" +msgstr "Nepovolení přístupu k domovskému adresáři: %s" -#: common/flatpak-context.c:2828 -#, fuzzy, c-format +#: common/flatpak-context.c:3150 +#, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" -msgstr "Selhalo vytvoření dočasného adresáře %s" +msgstr "Selhalo poskytnutí dočasného domovského adresáře v sandboxu: %s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Nelze načíst shrnutí ze vzdáleného repozitáře %s: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "Nemohu nalézt ref „%s“ ve vzdáleném repozitáři %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 #, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " -msgstr "" -"Žádný záznam pro %s ve flatpak cache shrnutí vzdáleného repozitáře „%s“ " +msgid "No entry for %s in remote %s summary flatpak cache" +msgstr "Žádný záznam pro %s ve flatpak cache shrnutí vzdáleného repozitáře %s" -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "Žádné shrnutí nebo Flatpak cache dostupná pro vzdálený repozitář %s" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "Žádný záznam pro %s v cache shrnutí vzdáleného repozitáře „%s“ " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Chybějící xa.data ve shrnutí pro vzdálený repozitář %s" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Nepodporovaná verze shrnutí %d pro vzdálený repozitář %s" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Nepodařilo se nalézt ref %s ve vzdáleném repozitáři %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "Obraz není manifest" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" "Nepodařilo se získat nejnovější kontrolní součet pro ref %s ve vzdáleném " "repozitáři %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "Žádný záznam pro %s v řídké cache shrnutí vzdáleného repozitáře %s" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "Nelze se připojit k systémové sběrnici" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "Uživatelská instalace" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "Systémová (%s) instalace" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Žádná přepsání nenalezena pro %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "%s (commit %s) nenainstalováno" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "Chyba během zpracování souboru flatpakrepo pro %s: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Během otevírání repozitáře %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "Konfigurační klíč %s není nastaven" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "Žádný současný vzor %s odpovídající %s" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "Žádný appstream commit k nasazení" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Neplatný kontrolní součet pro uri dodatečných dat %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Prázdný název pro uri dodatečných dat %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Nepodporovaný uri dodatečných dat %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Chyba během načítání místních dodatečných dat %s: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Chybná velikost pro dodatečná data %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "Během stahování %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Chybná velikost pro dodatečná data %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Neplatný kontrolní součet pro dodatečná data %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s commit %s je již nainstalováno" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "Během stahování %s ze vzdáleného repozitáře %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "GPG podpisy nalezeny, ale žádný není ve svazku důvěryhodných klíčů" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Nedostatek paměti" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Selhalo čtení z exportovaného souboru" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Chyba při čtení mimetype xml souboru" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Neplatný mimetype xml soubor" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "Soubor služby D-Bus „%s“ má neplatný název" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "Neplatný Exec argument %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "" -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "" -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Neplatný kontrolní součet pro dodatečná data" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Chybná velikost pro dodatečná data" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "Během zapisování souboru dodatečných dat „%s“: " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "apply_extra skript selhal, návratová hodnota %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" "Instalace aplikace %s není povolena bezpečnostní politikou, kterou nastavil " "váš administrátor" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "Během pokusu o vyřešení ref %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s není dostupné" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Nemohu vytvořit adresář sestavení" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Nelze číst commit %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "" -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "" -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "" -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Během pokusu o odstranění existujícího dodatečného adresáře: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Během pokusu o aplikaci dodatečných dat: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Neplatný ref %s commitu: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s větev %s je již nainstalováno" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "" -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Tato verze aplikace %s je již nainstalována" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "Nemohu změnit vzdálený repozitář během instalace balíčku" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "Nelze aktualizovat na specifický commit bez root oprávnění" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "Nelze odstranit %s, je požadováno pro: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s větev %s není nainstalováno" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "%s commit %s nenainstalováno" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "Nelze načíst filtr „%s“" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "Nelze zpracovat filtr „%s“" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "Nelze zapsat cache shrnutí: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " "URL passed to remote-add was valid." msgstr "" -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "Pro %s je dostupno více větví, musíte určit jednu z nich: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Nic nevyhovuje názvu %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Nemohu nalézt ref %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Chyba během prohledávání vzdáleného repozitáře %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Chyba během prohledávání místního repozitáře: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s nenainstalováno" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Nemohu nalézt instalaci %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "Neplatný formát souboru, žádná skupina %s" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Neplatná verze %s, pouze 1 je podporována" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "Neplatný formát souboru, %s není určen" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "Neplatný formát souboru, neplatný klíč gpg" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "ID kolekce vyžaduje poskytnutí GPG klíče" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Prostředí %s, větev %s je již nainstalováno" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Aplikace %s, větev %s je již nainstalováno" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" "Nelze odstranit vzdálený repozitář „%s“ s nainstalovaným refem %s (minimálně)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Neplatný znak „/“ v názvu vzdáleného repozitáře: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "Neurčena žádná konfigurace pro vzdálený repozitář %s" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" -msgstr "" +msgstr "Je vyžadována absolutní cesta" -#: common/flatpak-exports.c:923 -#, fuzzy, c-format +#: common/flatpak-exports.c:933 +#, c-format msgid "Unable to open path \"%s\": %s" -msgstr "Nelze aktualizovat %s: %s\n" +msgstr "Nelze otevřít cestu „%s“: %s" -#: common/flatpak-exports.c:930 -#, fuzzy, c-format +#: common/flatpak-exports.c:940 +#, c-format msgid "Unable to get file type of \"%s\": %s" -msgstr "Selhalo vytvoření souboru %s" +msgstr "Selhalo získání typu souboru „%s“: %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" -msgstr "" +msgstr "Soubor „%s“ má nepodporovaný typ 0o%o" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" -msgstr "" +msgstr "Selhalo získání informací o souborovém systému pro „%s“: %s" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" -msgstr "" +msgstr "Cesta „%s“ je rezervována Flatpakem" -#: common/flatpak-exports.c:1051 -#, fuzzy, c-format +#: common/flatpak-exports.c:1061 +#, c-format msgid "Unable to resolve symbolic link \"%s\": %s" -msgstr "Selhala aktualizace symbolického odkazu %s/%s" +msgstr "Selhal překlad symbolického odkazu „%s“: %s" + +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "Prázdný řetězec není číslo" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "„%s“ není číslo bez znaménka" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "" -#: common/flatpak-installation.c:831 +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "Ref %s není nainstalován" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "Aplikace %s není nainstalována" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "Vzdálený repozitář „%s“ již existuje" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "Jak bylo požadováno, %s bylo pouze staženo, ale nebylo nainstalováno" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "Selhalo vytvoření adresáře %s" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "Selhalo uzamčení %s" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "Selhalo otevření adresáře %s" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "Selhalo vytvoření dočasného adresáře %s" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "Selhalo vytvoření souboru %s" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Selhala aktualizace symbolického odkazu %s/%s" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "Autorizace selhala: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Autorizace selhala" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "Neplatný formát souboru delta" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, c-format msgid "Unable to lookup key ID %s: %d" msgstr "" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "Chyba během podepisování commitu: %d" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Neplatná konfigurace OCI obrazu" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "Neurčen žádný ref pro OCI obraz %s" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Špatný ref (%s) určen pro OCI obraz %s, očekáváno %s" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5093,366 +5173,424 @@ msgstr "Stahují se dodatečná data: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Stahují se soubory: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Název nemůže být prázdný" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Název nemůže být delší než 255 znaků" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Název nemůže začínat tečkou" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Název nemůže začínat %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Název nemůže končit tečkou" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Pouze poslední část názvu může obsahovat -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Část názvu nemůže začínat %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Název nemůže obsahovat %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "Názvy musí obsahovat alespoň dvě tečky" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "Architektura nemůže být prázdná" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "Architektura nemůže obsahovat %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Větev nemůže být prázdná" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Větev nemůže začínat %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Větev nemůže obsahovat %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "Ref je příliš dlouhý" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "Neplatný název vzdáleného repozitáře" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s není aplikace nebo prostředí" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Špatný počet součástí v %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "Neplatný název %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "Neplatná architektura: %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Neplatný název %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "Neplatná architektura: %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "Neplatná větev: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "Špatný počet součástí v částečném refu %s" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr " vývojová platforma" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr " platforma" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr " základ aplikace" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" -msgstr " ladící symboly" +msgstr " ladicí symboly" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr " zdrojový kód" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " překlady" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr " dokumentace" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "Neplatné id %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Neplatný název vzdáleného repozitáře: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "Neurčen žádný url" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "Ověřování pomocí GPG musí být povoleno, pokud je nastaveno ID kolekce" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Selhalo otevření souboru s informacemi o aplikaci" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Žádné zdroje dodatečných dat" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Selhalo vytvoření synchronizační roury" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "Neplatný %s: Chybí skupina „%s“" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Selhala synchronizace s dbus proxy" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "Neplatný %s: Chybí klíč „%s“" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Neplatný klíč gpg" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Chyba během kopírování 64x64 ikony pro součást %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Chyba během kopírování 128x128 ikony pro součást %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s je end-of-life, ignoruje se pro appstream" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Žádná appstream data pro %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Metadata ve hlavičce a aplikaci jsou nekonzistentní" -#: common/flatpak-run.c:2207 +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "Uživatelské sezení systemd není dostupné, cgroups nejsou dostupné" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "Selhala alokace id instance" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Selhalo otevření souboru flatpak-info: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Selhalo otevření souboru bwrapinfo.json: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "Selhala inicializace seccomp" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Selhalo přidání architektury do seccomp filtru: %s" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Selhalo přidání multiarch architektury do seccomp filtru: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, c-format msgid "Failed to block syscall %d: %s" msgstr "Selhalo blokování systémového volání %d: %s" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, c-format msgid "Failed to export bpf: %s" msgstr "Selhalo exportování bpf: %s" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "Selhalo otevření „%s“" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ldconfig selhal, návratová hodnota %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "Nelze otevřít vygenerovaný ld.so.cache" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" "Spouštění aplikace %s není povoleno bezpečnostní politikou, kterou nastavil " "váš administrátor" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" +"Příkaz „flatpak run“ není určen ke spuštění jako „sudo flatpak run“. Místo " +"toho použijte `sudo -i` nebo `su -l` a ​​vyvolejte „flatpak run“ z nového " +"shellu." -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "Selhala migrace z %s: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "Selhala migrace starého adresáře dat aplikace %s na nový název %s: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Selhalo vytváření symlinku během migrace %s: %s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Selhalo otevření souboru s informacemi o aplikaci" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Selhalo vytvoření synchronizační roury" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Selhala synchronizace s dbus proxy" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Varování: Problém při hledání souvisejících refů: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "Aplikace %s vyžaduje prostředí %s, které nebylo nalezeno" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "Aplikace %s vyžaduje prostředí %s, které není nainstalováno" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "Nelze odinstalovat %s, který je vyžadován %s" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Vzdálený repozitář %s je zakázán, ignoruje se aktualizace %s" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s je již nainstalováno" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s je již nainstalováno ze vzdáleného repozitáře %s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "Neplatný .flatpakref: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "Chyba během aktualizace vzdálených metadat pro „%s“: %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " "installed: %s" msgstr "" +"Varování: Chyba načtení vzdáleného repozitáře není považována za závažnou, " +"protože %s je již nainstalováno: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "Nenainstalován žádný autentikátor pro vzdálený repozitář „%s“" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "Selhalo získání tokenů pro ref: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "Selhalo získání tokenů pro ref" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" msgstr "libovolný vzdálený repozitář" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "Flatpakrepo URL %s není soubor, HTTP nebo HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "" -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "Neplatné .flatpakrepo: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "Transakce již běží" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." @@ -5460,16 +5598,16 @@ msgstr "" "Odmítnuta operace na uživatelské instalaci jako root! Toto může vést k " "nesprávným vlastnictvím souborů a chybám s oprávněními." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Přerušeno uživatelem" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "Přeskakuje se %s z důvodu předchozí chyby" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "Přerušeno z důvodu selhání (%s)" @@ -5477,176 +5615,152 @@ msgstr "Přerušeno z důvodu selhání (%s)" #: common/flatpak-uri.c:118 #, no-c-format msgid "Invalid %-encoding in URI" -msgstr "" +msgstr "Neplatné %-kódování v URI" #: common/flatpak-uri.c:135 msgid "Illegal character in URI" -msgstr "" +msgstr "Neplatný znak v URI" #: common/flatpak-uri.c:169 msgid "Non-UTF-8 characters in URI" -msgstr "" +msgstr "Znaky jiné než UTF-8 v URI" #: common/flatpak-uri.c:275 #, c-format msgid "Invalid IPv6 address ‘%.*s’ in URI" -msgstr "" +msgstr "Neplatná adresa IPv6 „%.*s“ v URI" #: common/flatpak-uri.c:330 #, c-format msgid "Illegal encoded IP address ‘%.*s’ in URI" -msgstr "" +msgstr "Neplatně kódovaná IP adresa „%.*s“ v URI" #: common/flatpak-uri.c:342 #, c-format msgid "Illegal internationalized hostname ‘%.*s’ in URI" -msgstr "" +msgstr "Neplatný internacionalizovaný název hostitele „%.*s“ v URI" #: common/flatpak-uri.c:374 common/flatpak-uri.c:386 #, c-format msgid "Could not parse port ‘%.*s’ in URI" -msgstr "" +msgstr "Port „%.*s“ v URI nelze zpracovat" #: common/flatpak-uri.c:393 #, c-format msgid "Port ‘%.*s’ in URI is out of range" -msgstr "" +msgstr "Port „%.*s“ v URI je mimo rozsah" #: common/flatpak-uri.c:910 msgid "URI is not absolute, and no base URI was provided" -msgstr "" +msgstr "URI není absolutní a nebyl poskytnut žádný základní URI" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "Neplatné id %s: %s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" +msgid "Invalid USB subclass" msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "na řádku %d" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "Neočekávané slovo „%s“ na řádku %d" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "Neplatný %s: Chybí skupina „%s“" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "Neplatný %s: Chybí klíč „%s“" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Neplatný klíč gpg" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Žádné zdroje dodatečných dat" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Chyba během kopírování 64x64 ikony pro součást %s: %s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Chyba během kopírování 128x128 ikony pro součást %s: %s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s je end-of-life, ignoruje se pro appstream" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Žádná appstream data pro %s: %s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" msgstr "" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgid "Invalid glob character '%c'" msgstr "" -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "Metadata ve hlavičce a aplikaci jsou nekonzistentní" - -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "Neplatná konfigurace OCI obrazu" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" +msgid "Trailing text on line %d" msgstr "" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "Neurčen žádný ref pro OCI obraz %s" +msgid "on line %d" +msgstr "na řádku %d" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "Špatný ref (%s) určen pro OCI obraz %s, očekáváno %s" +msgid "Unexpected word '%s' on line %d" +msgstr "Neočekávané slovo „%s“ na řádku %d" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "Neplatný require-flatpak argument %s" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s vyžaduje novější verzi flatpaku (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "Prázdný řetězec není číslo" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "Není vzdálený repozitář oci, chybí summary.xa.oci-repository" @@ -5659,41 +5773,45 @@ msgstr "Není vzdálený repozitář OCI" msgid "Invalid token" msgstr "Neplatný token" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "Nenalezena podpora portálů" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Zamítnout" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Aktualizovat" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "Aktualizovat %s?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "Tato aplikace se chce sama aktualizovat." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "Přístup k aktualizacím můžete kdykoliv změnit v nastavení soukromí." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "Aktualizace aplikace nepovolena" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" "Aktualizace sebe sama není podporována, nová verze vyžaduje nové oprávnění" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "Aktualizace byla neočekávaně ukončena" @@ -5915,6 +6033,30 @@ msgstr "" "K instalaci softwaru, který je omezen bezpečnostní politikou rodičovské " "kontroly je vyžadováno ověření" +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "Nalezeny podobné refy pro „%s“ ve vzdáleném repozitáři „%s“ (%s).\n" +#~ "Použít tento vzdálený repozitář?" + +#, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "Žádný záznam pro %s v cache shrnutí vzdáleného repozitáře „%s“ " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Selhala odinstalace %s pro rebase na %s: " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Selhala odinstalace %s pro rebase na %s: %s\n" + +#, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Selhalo otevření adresáře %s" + #~ msgid "install" #~ msgstr "instalace" @@ -6038,7 +6180,7 @@ msgstr "" #~ msgstr "0" #~ msgid "Print OSTree debug information during command processing" -#~ msgstr "Vypsat ladící informace OSTree během zpracovávání příkazu" +#~ msgstr "Vypsat ladicí informace OSTree během zpracovávání příkazu" #~ msgid "Architecture" #~ msgstr "Architektura" diff --git a/po/da.gmo b/po/da.gmo deleted file mode 100644 index 7000024044aea05fb58f96f4966a72aa0afc00aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 101035 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

A6er;P?{6d=hB*zT*QY?`|4b;oycjC~ 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̥MP!pO_!1bju{E1CZOatUqdRx2w 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 diff --git a/po/da.po b/po/da.po index ae79259..052077c 100644 --- a/po/da.po +++ b/po/da.po @@ -42,7 +42,7 @@ msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" "PO-Revision-Date: 2021-05-21 18:36+0200\n" "Last-Translator: scootergrisen\n" "Language-Team: Danish\n" @@ -52,162 +52,162 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Eksportér runtime i stedet for program" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Arkitektur som bundet er til" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARKITEKTUR" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Url til depot" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Url til flatpakrepo-fil for runtime" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Tilføj GPG-nøgle fra FIL (- for stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "FIL" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "GPG-nøgle-id til at underskrive OCI-aftrykket med" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "NØGLE-ID" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "NØGLE-ID" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "GPG-hjemmemappe som skal bruges til at lede efter nøgleringe" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "HJEMMEMAPPE" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "OSTree-indsendelse til at oprette et delta-bundt fra" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "INDSEND" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Eksportér oci-aftryk i stedet for flatpak-bundt" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" msgstr "" "PLACERING FILNAVN NAVN [GREN] - Opret et enkeltfils bundt fra et lokalt depot" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "PLACERING, FILNAVN og NAVN skal angives" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "For mange argumenter" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "'%s' er ikke et gyldigt depot" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "'%s' er ikke et gyldigt depot: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "'%s' er ikke et gyldigt navn: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "'%s' er ikke et gyldigt grennavn: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -242,7 +242,7 @@ msgstr "MAPPE" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Hvor der skal ledes efter tilpasset sdk-mappe (standard er 'usr')" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Brug alternativ fil til metadataene" @@ -262,104 +262,105 @@ msgstr "Log buskald for session" msgid "Log system bus calls" msgstr "Log buskald for system" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "MAPPE [KOMMANDO [ARGUMENT …]] - Byg i mappe" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "MAPPE skal angives" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "Byggemappen %s er ikke initieret, brug flatpak build-init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "metadata er ugyldig, ikke program eller runtime" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "Intet udvidelsespunkt matcher %s i %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Manglende '=' i bindingsmonteringstilvalget '%s'" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Kan ikke starte program" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Mappe for kildedepot" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "KILDEDEPOT" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Reference for kildedepot" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "KILDEREFERENCE" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Emne på én linje" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "EMNE" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Fuld beskrivelse" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "KROP" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Opdater appstream-grenen" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Opdater appstream-grenen" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Opdater ikke opsummeringen" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "GPG-nøgle-id til at underskrive indsendelsen med" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "Mærk bygning som end-of-life" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "ÅRSAG" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -367,370 +368,375 @@ msgstr "" "Mærk referencer som matcher GAMLEID-præfikset som end-of-life, så den " "erstattes med det angivne NYEID" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "GAMLEID=NYEID" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "Indstil typen af token som bruges for at installere indsendelsen" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "VÆR" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "" "Tilsidesæt tidsstemplet på indsendelsen (NOW for at bruge det nuværende " "tidspunkt)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "TIDSSTEMPEL" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "Generer ikke et opsummeringsindeks" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" "DESTINATIONSDEPOT [DESTINATIONSREFERENCE …] - Foretag en ny indsendelse fra " "eksisterende indsendelser" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "DESTINATIONSDEPOT skal angives" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "Hvis --src-repo ikke angives, så skal præcist én destinationsreference " "angives" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" "Hvis --src-ref angives, så skal præcist én destinationsreference angives" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "Enten --src-repo eller --src-ref skal angives" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "Ugyldigt argumentformat brugt i --end-of-life-rebase=GAMLEID=NYEID" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "Ugyldigt navn %s i --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "Kunne ikke fortolke '%s'" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "Kan ikke indsende fra delvis kildeindsendelse" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: ingen ændring\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Arkitektur som skal eksporteres (skal være kompatibel med værten)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Indsend-runtime (/usr), ikke /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Brug alternativ mappe til filerne" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "UNDERMAPPE" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Filer som skal ekskluderes" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "MØNSTER" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Ekskluderede filer som skal medtages" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "Mærk bygning som end-of-life, så den erstattes med det angivne id" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Tilsidesæt tidsstemplet på indsendelsen" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "Samlings-id" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "ADVARSEL: Fejl ved kørsel af desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "ADVARSEL: Fejl ved læsning fra desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "ADVARSEL: Kunne ikke validere skrivebordsfilen %s: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "ADVARSEL: Kan ikke finde Exec-nøgle i %s: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "ADVARSEL: Binær ikke fundet for Exec-linje i %s: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "ADVARSEL: Ikon matcher ikke programid i %s: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" "ADVARSEL: Ikon refereres i skrivebordsfilen, men blev ikke eksporteret: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Ugyldig uri-type %s, der understøttes kun http/https" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "Kan ikke finde grundnavn i %s, angiv venligst et navn eksplicit" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "Skråstreger er ikke tilladt i navn til ekstra-data" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Ugyldigt format for sha256-checksum: '%s'" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Der understøttes ikke nulstørrelse for ekstra-data" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "PLACERING MAPPE [GREN] - Opret et depot fra en byggemappe" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "PLACERING og MAPPE skal angives" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "‘%s’ er ikke et gyldigt samlings-id: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Der er ikke angivet noget navn i metadataene" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Indsend: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Metadata i alt: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Metadata skrevet: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Indhold i alt: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Indhold skrevet: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Indhold skrevet i bytes:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Kommando som skal indstilles" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "KOMMANDO" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Flatpak-version som kræves" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "STOR.LILLE.MIKRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Behandl ikke eksporter" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Information for ekstra-data" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Tilføj information om udvidelsespunkt" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NAVN=VARIABEL[=VÆRDI]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Fjern information om udvidelsespunkt" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NAVN" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Indstil prioritet for udvidelse (kun til udvidelser)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "VÆRDI" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Skift sdk'et som bruges af programmet" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Skift runtimen som bruges af programmet" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "RUNTIME" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Indstil tilvalg for generisk metadata" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GRUPPE=NØGLE[=VÆRDI]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Nedarv ikke tilladelser fra runtime" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "Eksporterer ikke %s, forkert udvidelse\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "Eksporterer ikke %s, eksportfilnavnet er ikke tilladt\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "Eksporterer %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Fandt mere end en eksekverbar\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "Bruger %s som kommando\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Fandt ingen eksekverbar\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Ugyldigt --require-version-argument: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "For få elementer i --extra-data-argumentet %s" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -739,7 +745,7 @@ msgstr "" "For få elementer i --metadata-argumentet %s, formatet skal være " "GRUPPE=NØGLE[=VÆRDI]]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -749,62 +755,63 @@ msgstr "" "For få elementer i --extension-argumentet %s, formatet skal være " "NAVN=VARIABEL[=VÆRDI]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "Ugyldigt udvidelsesnavn %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "MAPPE - Færdiggør en byggemappe" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Byggemappen %s er ikke initieret" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Byggemappen %s er allerede færdiggjort" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Gennemgå venligst de eksporterede filer og metadataene\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Tilsidesæt referencen som bruges til det importerede bundt" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REFERENCE" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Importér oci-aftryk i stedet for flatpak-bundt" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Referencen '%s' blev ikke fundet i registeret" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "Flere aftryk i registeret, angiv en reference med --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "Importerer %s (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "PLACERING FILNAVN - Importér et filbundt ind i et lokalt depot" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "PLACERING og FILNAVN skal angives" @@ -917,88 +924,88 @@ msgstr "'%s' er ikke et gyldigt programnavn: %s" msgid "Build directory %s already initialized" msgstr "Byggemappen %s er allerede initieret" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Arkitektur som skal installeres for" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Led efter runtime med det angivne navn" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "PLACERING [ID [GREN]] - Underskriv et program eller runtime" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "PLACERING skal angives" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Ingen gpg-nøgle-id'er angivet" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Omdiriger depotet til en ny URL" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Et godt navn som skal bruges til depotet" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "TITEL" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "En kommentar på én linje til depotet" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "KOMMENTAR" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "En beskrivelse på et helt afsnit til depotet" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "BESKRIVELSE" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "URL til et websted til depotet" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "URL til et ikon til depotet" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Standardgren som skal bruges til depotet" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "GREN" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "SAMLINGS-ID" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" @@ -1006,120 +1013,123 @@ msgstr "" "Permanent udsendelse af samlings-id til klientens konfigurationer af " "eksterne, kun til understøttelse af sideindlæsning" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" "Permanent udsendelse af samlings-id til klientens konfigurationer af eksterne" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Navn på godkender til depotet" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "Automatisk installation af godkender til depotet" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "Brug ikke automatisk installation af godkender til depotet" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Tilvalg for godkender" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "NØGLE=VÆRDI" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Importér ny standard GPG offentlig nøgle fra FIL" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "GPG-nøgle-id som opsummeringen skal underskrives med" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Generer deltafiler" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Opdater ikke appstream-grenen" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "Maks. parallelle jobs når der oprettes deltaer (standard: ANTALCPU'er)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "ANTAL-JOBS" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "Opret ikke deltaer som matcher referencer" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Beskær ubrugte objekter" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "Beskær, men fjern ikke noget" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" "Gennemgå kun DYBDE forældre for hver indsendelse (standard: -1=uendeligt)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "DYBDE" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Genererer delta: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Genererer delta: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Kunne ikke generere deltaen %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Kunne ikke generere deltaen %s (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "PLACERING - Opdater depot-metadata" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Opdaterer appstream-gren\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Opdaterer opsummering\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Samlet objekter: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Ingen objekter som ikke kan nås\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "Slettede %u objekter, %s frigivet\n" @@ -1191,25 +1201,25 @@ msgstr "Kan kun bruge én af --list, --get, --set eller --unset" msgid "Must specify one of --list, --get, --set or --unset" msgstr "Skal angive én af --list, --get, --set eller --unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Led efter program med det angivne navn" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Arkitektur som skal kopieres" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "DESTINATION" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "Tillad delvise indsendelser i det oprettede depot" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " @@ -1218,13 +1228,13 @@ msgstr "" "Advarsel: Relateret reference ‘%s’ er delvist installeret. Brug --allow-" "partial for at undertrykke meddelelsen.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" "Advarsel: Udelader den relateret reference ‘%s’ da den ikke er installeret.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1233,12 +1243,12 @@ msgstr "" "Advarsel: Udelader den relateret reference ‘%s’ da dens eksterne ‘%s’ ikke " "har indstillet et samlings-id.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "Advarsel: Udelader relaterede reference ‘%s’ da den er extra-data.\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1247,35 +1257,35 @@ msgstr "" "Eksternen ‘%s’ har ikke indstillet et samlings-id, som kræves til P2P-" "distribution af ‘%s’." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" "Advarsel: Udelader referencen ‘%s’ (runtime af ‘%s’) da den er extra-data.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" "MONTERINGSSTI [REFERENCE …] - Kopiér programmer eller runtimes til flytbart " "medie" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "MONTERINGSSTI og REFERENCE skal angives" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" "Referencen ‘%s’ blev fundet i flere installationer: %s. Du kan angive en." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" "Referencer skal alle være i den samme installation (findes i %s og %s)." -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " @@ -1284,18 +1294,18 @@ msgstr "" "Advarsel: Referencen ‘%s’ er delvist installeret. Brug --allow-partial for " "at undertrykke meddelelsen.\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" "Installerede reference ‘%s’ er extra-data og kan ikke distribueres offline" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "Advarsel: Kunne ikke opdatere depot-metadata for eksternen ‘%s’: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1303,7 +1313,7 @@ msgstr "" "‘%s’: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1312,7 +1322,7 @@ msgstr "" "‘%s’: %s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1386,19 +1396,20 @@ msgstr "FIL - Hent information om en eksporteret fil" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Ikke eksporteret\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Den information der skal vises" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "FELT, …" @@ -1417,7 +1428,7 @@ msgid "Show the document path" msgstr "Vis dokumentstien" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Oprindelse" @@ -1431,7 +1442,7 @@ msgid "Show applications with permission" msgstr "Vis programmer med tilladelse" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Tilladelser" @@ -1558,12 +1569,12 @@ msgid "Show the kind of change" msgstr "Vis ændringens type" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Reference" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Vis referencen" @@ -1572,24 +1583,24 @@ msgid "Show the application/runtime ID" msgstr "Vis program-/runtime-id'et" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Arkitektur" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Vis arkitekturen" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Gren" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Vis grenen" @@ -1601,7 +1612,7 @@ msgstr "Installation" msgid "Show the affected installation" msgstr "Vis den berørte installation" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Ekstern" @@ -1610,7 +1621,7 @@ msgid "Show the remote" msgstr "Vis eksternen" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Indsendelse" @@ -1630,7 +1641,7 @@ msgstr "Vis den forrige indsendelse" msgid "Show the remote URL" msgstr "Vis eksterne-URL" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Bruger" @@ -1647,7 +1658,7 @@ msgid "Show the tool that was used" msgstr "Vis værktøjet som blev brugt" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Version" @@ -1675,10 +1686,12 @@ msgid " - Show history" msgstr " - Vis historik" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "Kunne ikke fortolke --since-tilvalget" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "Kunne ikke fortolke --until-tilvalget" @@ -1694,11 +1707,11 @@ msgstr "Vis systembrede installationer" msgid "Show specific system-wide installations" msgstr "Vis bestemte systembrede installationer" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Vis reference" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Vis indsendelse" @@ -1710,15 +1723,15 @@ msgstr "Vis oprindelse" msgid "Show size" msgstr "Vis størrelse" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Vis metadata" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Vis runtime" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Vis sdk" @@ -1730,8 +1743,8 @@ msgstr "Vis tilladelser" msgid "Query file access" msgstr "Forespørg filadgang" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1749,7 +1762,7 @@ msgstr "Vis placering" msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "NAVN [GREN] - Hent information om et installeret program eller runtime" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "NAVN skal angives" @@ -1758,85 +1771,87 @@ msgstr "NAVN skal angives" msgid "ref not present in origin" msgstr "reference findes ikke i oprindelse" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Advarsel: Indsendelsen har ikke nogen flatpak-metadata\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Reference:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Arkitektur:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Gren:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Version:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Licens:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Samling:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Installation:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Installeret:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Runtime:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Dato:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Emne:" @@ -1849,15 +1864,15 @@ msgid "Latest commit:" msgstr "Seneste indsendelse:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Indsendelse:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Forælder:" @@ -1866,14 +1881,14 @@ msgid "Alt-id:" msgstr "Alt-id:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "End-of-life:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "End-of-life-rebase:" @@ -1882,146 +1897,147 @@ msgid "Subdirectories:" msgstr "Undermapper:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Udvidelse:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Oprindelse:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Understier:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "vedligeholdes ikke" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "ukendt" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Pull ikke, installer kun fra lokalt mellemlager" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Udsend ikke, download kun til lokalt mellemlager" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Installer ikke relaterede referencer" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Verificer/installer ikke runtime-afhængigheder" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "Fastgør ikke automatisk eksplicitte installationer" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Brug ikke statiske deltaer" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Antag at PLACERING er et enkeltfils .flatpak-bundt" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Antag at PLACERING er en .flatpakref-programbeskrivelse" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "Tjek bundt-underskrifter med GPG-nøgle fra FIL (- for stdin)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Installer kun denne understi" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Svar automatisk ja til alle spørgsmål" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Afinstaller først hvis den allerede er installeret" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "Producer minimalt output og stil ikke spørgsmål" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Opdateringsinstallation er allerede installeret" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "Brug dette lokale depot til sideindlæsninger" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Bundt-filnavn skal angives" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Eksterne bundter understøttes ikke" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Filnavn eller uri skal angives" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "" "[PLACERING/EKSTERNE] [REFERENCE …] - Installer programmer eller runtimes" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "Der skal angives mindst én REFERENCE" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Leder efter match …\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, fuzzy, c-format msgid "No remote refs found for ‘%s’" msgstr "Fandt ingen eksterne referencer som ligner ‘%s’" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Ugyldig gren %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Intet matcher %s i lokalt depot for eksternen %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Intet matcher %s i eksternen %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Springer over: %s\n" @@ -2059,51 +2075,51 @@ msgstr "Vis installerede programmer" msgid "Arch to show" msgstr "Arkitektur som skal vises" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Vis alle referencer (inklusive lokale/fejlretning)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "Vis alle programmer med RUNTIME" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Navn" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Vis navnet" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Beskrivelse" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Vis beskrivelsen" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "Program-id" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Vis program-id'et" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Vis versionen" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Runtime" @@ -2111,7 +2127,7 @@ msgstr "Runtime" msgid "Show the used runtime" msgstr "Vis den brugte runtime" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Vis oprindelseseksternen" @@ -2123,7 +2139,7 @@ msgstr "Vis installationen" msgid "Active commit" msgstr "Aktive indsendelse" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Vis den aktive indsendelse" @@ -2135,35 +2151,35 @@ msgstr "Seneste indsendelse" msgid "Show the latest commit" msgstr "Vis den seneste indsendelse" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Installeret størrelse" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Vis den installeret størrelse" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Tilvalg" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Vis tilvalg" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, fuzzy, c-format msgid "Unable to load details of %s: %s" -msgstr "Kan ikke indlæse opsummering fra eksternen %s: %s" +msgstr "Kan ikke oprette filen %s" -#: app/flatpak-builtins-list.c:189 -#, c-format +#: app/flatpak-builtins-list.c:188 +#, fuzzy, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Kan ikke oprette filen %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - Vis installerede programmer og/eller runtimes" @@ -2175,7 +2191,7 @@ msgstr "Arkitektur som skal gøres til den nuværende for" msgid "APP BRANCH - Make branch of application current" msgstr "PROGRAM GREN - Gør gren af program til den nuværende" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "PROGRAM skal angives" @@ -2200,10 +2216,12 @@ msgstr "" "mønstre" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "Ingen maskerede mønstre\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Maskerede mønstre:\n" @@ -2219,26 +2237,26 @@ msgstr "Vis eksisterende tilsidesættelser" msgid "[APP] - Override settings [for application]" msgstr "[APP] - Tilsidesættelsesindstillinger [til program]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABEL] [ID] - Vis tilladelser" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Tabel" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Objekt" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "Program" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Data" @@ -2296,10 +2314,12 @@ msgstr "" "[MØNSTER …] - deaktivér automatisk fjernelse af runtimes der matcher mønstre" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "Ingen fastgjorte mønstre\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "Fastgjorte mønstre:\n" @@ -2375,124 +2395,124 @@ msgstr "Vis om programmet er i baggrunden" msgid " - Enumerate running sandboxes" msgstr " - Oplist kørende sandkasser" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Foretag intet hvis den leverede eksterne findes" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "PLACERING angiver en konfigurationsfil, ikke depotplaceringen" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Deaktivér GPG-verifikation" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Mærk eksternen som oplist ikke" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Mærk eksternen som brug ikke for afhængigheder" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "Indstil prioritet (standard er 1, højere er mere prioriteret)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORITET" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "Det navngivet subset som skal bruges til eksternen" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "SUBSET" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Et godt navn som skal bruges til eksternen" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "En kommentar på én linje til eksternen" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "En beskrivelse på et helt afsnit til eksternen" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "URL til et websted til eksternen" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "URL til et ikon til eksternen" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Standardgren som skal bruges til eksternen" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Importér GPG-nøgle fra FIL (- for stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Indstil sti til lokal filterFIL" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Deaktivér eksternen" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Navn på godkender" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Automatisk installation af godkender" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "Brug ikke automatisk installation af godkender" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "Følg ikke den omdirigering som er indstillet i opsummeringsfilen" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "Kan ikke indlæse uri'en %s: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Kan ikke indlæse filen %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NAVN PLACERING - Tilføj et eksternt depot" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "Der kræves GPG-verifikation hvis samlingerne aktiveres" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "Eksternen %s findes allerede" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Ugyldigt godkendernavn %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "Advarsel: Kunne ikke opdatere ekstra-metadata for '%s': %s\n" @@ -2519,61 +2539,61 @@ msgstr "Fjern dem?" msgid "Can't remove remote '%s' with installed refs" msgstr "Kan ikke fjerne eksternen '%s' med installerede referencer" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "Indsendelse som skal vises information for" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Vis log" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Vis forælder" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Brug lokale mellemlagre selv hvis de er gamle" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "Vist kun referencer som er tilgængelige som sideindlæsninger" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " EKSTERNE REFERENCE - Vis information om et program eller runtime i en " "ekstern" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "EKSTERNE og REFERENCE skal angives" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Download:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "Historik:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Indsendelse:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Emne:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Dato:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Advarsel: Indsendelsen %s har ikke nogen flatpak-metadata\n" @@ -2602,7 +2622,7 @@ msgstr "Vis URL'en" msgid "Show the collection ID" msgstr "Vis samlings-id'et" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "Subset" @@ -2658,39 +2678,39 @@ msgstr "Vis ikon" msgid " - List remote repositories" msgstr " - Vis de eksterne depoter" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Vis arkitekturer og grene" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Vis kun runtimes" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Vis kun programmer" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Vis kun dem der findes opdateringer til" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Begræns til denne arkitektur (* for alle)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Vis runtimen" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Downloadstørrelse" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Vis downloadstørrelsen" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr " [EKSTERNE eller URI] - Vis tilgængelige runtimes og programmer" @@ -2819,226 +2839,233 @@ msgstr "Fejl ved geninstallation af %s: %s\n" msgid "- Repair a flatpak installation" msgstr "- Reparer en flatpak-installation" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Fjerner ikke-udsendt reference %s …\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Springer over ikke-udsendt reference %s …\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d/%d] Verificerer %s …\n" # scootergrisen: find ud af hvad "Dry run: " skal oversættes til -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "Dry run: " -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "Sletter referencen %s pga. manglende objekter\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "Sletter referencen %s pga. ugyldige objekter\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "Sletter referencen %s pga. %d\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "Tjekker eksterne ...\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "Eksternen %s for referencen %s mangler\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "Eksternen %s for referencen %s er deaktiveret\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "Beskærer objekter\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "Sletter .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "Geninstallerer referencer\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "Geninstallerer fjernede referencer\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "Ved fjernelse af appstream for %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "Ved udsendelse af appstream for %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Depottilstand: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "Indekserede opsummeringer: %s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "sand" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "falsk" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "Underopsummeringer: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "Mellemlagerets version: %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "Indekserede deltaer: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Titel: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Kommentar: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Beskrivelse: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Hjemmeside: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Ikon: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "Samlings-id: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Standardgren: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "Omdirigerings-URL: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "Udsend samlings-id: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Godkendernavn: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "Godkenderinstallation: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "Hash for GPG-nøgle: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "%zd opsummeringsgrene\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Installeret" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Download" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "Subsets" # scootergrisen: find ud af hvad "Digest" skal oversættes til -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "Digest" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "Historiklængde" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Udskriv generel information om depotet" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Vis grenene i depotet" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Udskriv metadata for en gren" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Vis indsendelser for en gren" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "Udskriv information om depotets subsets" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "Begræns information til subsets med dette præfiks" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "PLACERING - Vedligeholdelse af depot" @@ -3132,11 +3159,11 @@ msgstr "Brug STI i stedet for programmets /app" msgid "Use PATH instead of the runtime's /usr" msgstr "Brug STI i stedet for runtimens /usr" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "PROGRAM [ARGUMENT …] - Kør et program" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "runtime/%s/%s/%s er ikke installeret" @@ -3153,15 +3180,15 @@ msgstr "Eksterne" msgid "Show the remotes" msgstr "Vis eksternerne" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "TEKST - Søg efter tekst i eksterne programmer/-runtimes" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "TEKST skal angives" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Fandt ingen match" @@ -3242,6 +3269,7 @@ msgstr "" "flatpak-pin(1):\n" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Der er ikke noget ubrugt at afinstallere\n" @@ -3266,6 +3294,7 @@ msgid "Warning: %s is not installed\n" msgstr "Advarsel: %s er ikke installeret\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "" @@ -3306,6 +3335,7 @@ msgid "With --commit, only one REF may be specified" msgstr "Med --commit må der kun angives mindst én REFERENCE" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Leder efter opdateringer …\n" @@ -3315,27 +3345,28 @@ msgid "Unable to update %s: %s\n" msgstr "Kan ikke opdatere %s: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Intet at foretage.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "Eksternen ‘%s’ blev fundet i flere installationer:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Hvad vil du bruge (0 for at afbryde)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "Ingen eksterne valgt til at løse ‘%s’ som findes i flere installationer" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3344,13 +3375,13 @@ msgstr "" "Eksternen \"%s\" blev ikke fundet\n" "Tip: Brug flatpak remote-add for at tilføje en eksterne" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Eksternen \"%s\" blev fundet i %s-installationen" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3359,139 +3390,130 @@ msgstr "" "Fandt referencen ‘%s’ i eksternen ‘%s’ (%s).\n" "Brug referencen?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "Der er ikke valgt nogen reference til at løse match for ‘%s’" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "Lignende referencer fundet for ‘%s’ i eksternen ‘%s’ (%s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "Fandt installerede reference ‘%s’ (%s). Er det korrekt?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "Allesammen" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "Lignende installerede referencer fundet for ‘%s’:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"Fandt lignende reference(r) for ‘%s’ i eksternen ‘%s’ (%s).\n" -"Brug eksternen?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "Fandt eksterne med referencer som ligner ‘%s’:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "Der er ikke valgt nogen eksterne til at løse match for ‘%s’" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "Fandt eksterne med referencer som ligner ‘%s’:" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "Opdaterer appstream-data for brugereksternen %s" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Opdaterer appstream-data for eksternen %s" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Fejl ved opdatering" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "Eksternen \"%s\" blev ikke fundet" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Flertydigt suffiks: '%s'." #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "Mulige værdier er :s[tart], :m[iddle], :e[nd] eller :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Ugyldigt suffiks: '%s'." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Flertydig kolonne: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Ukendt kolonne: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Tilgængelige kolonner:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Vis alle kolonner" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Vis tilgængelige kolonner" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" "Tilføj :s[tart], :m[iddle], :e[nd] eller :f[ull] for at skifte brug af " "ellipse" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "Krævede runtime for %s (%s) blev fundet i eksternen %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Vil du installere den?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "Krævede runtime til %s (%s) blev fundet i eksterne:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Hvad vil du installere (0 for at afbryde)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, fuzzy, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Konfigurerer %s som ny eksterne '%s'" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3503,7 +3525,7 @@ msgstr "" "Skal eksternen beholdes til fremtidige installationer?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3514,128 +3536,128 @@ msgstr "" " %s\n" "Konfigurer det som ny eksterne '%s'" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Installerer …" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Installerer %d/%d …" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Opdaterer …" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Opdaterer %d/%d …" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Afinstallerer …" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Afinstallerer %d/%d …" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Info: %s blev sprunget over" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, fuzzy, c-format msgid "Warning: %s%s%s already installed" msgstr "%s er allerede installeret" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, fuzzy, c-format msgid "Error: %s%s%s already installed" msgstr "%s er allerede installeret" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, fuzzy, c-format msgid "Warning: %s%s%s not installed" msgstr "Advarsel: %s er ikke installeret\n" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, fuzzy, c-format msgid "Error: %s%s%s not installed" msgstr "%s/%s/%s er ikke installeret" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, fuzzy, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "%s har brug for en nyere flatpak-version" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, fuzzy, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "%s har brug for en nyere flatpak-version" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 #, fuzzy msgid "Warning: Not enough disk space to complete this operation" msgstr "Der er ikke nok ledig diskplads til at gennemføre handlingen" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 #, fuzzy msgid "Error: Not enough disk space to complete this operation" msgstr "Der er ikke nok ledig diskplads til at gennemføre handlingen" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, fuzzy, c-format msgid "Warning: %s" msgstr "Advarsel: " -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, fuzzy, c-format msgid "Error: %s" msgstr "Fejl:" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, fuzzy, c-format msgid "Failed to install %s%s%s: " msgstr "Kunne ikke rebase %s til %s: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, fuzzy, c-format msgid "Failed to update %s%s%s: " msgstr "Kunne ikke %s %s: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, fuzzy, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Kunne ikke rebase %s til %s: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, fuzzy, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Kunne ikke rebase %s til %s: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "Der kræves godkendelse til eksternen '%s'\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Åbn browser?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "Der kræves login til eksternen %s (realm %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Adgangskode" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, fuzzy, c-format msgid "" "\n" @@ -3643,7 +3665,7 @@ msgid "" "%s%s%s branch %s%s%s\n" msgstr "Info: (fastgjort) %s//%s er end-of-life, til fordel for %s\n" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, fuzzy, c-format msgid "" "\n" @@ -3651,7 +3673,7 @@ msgid "" "%s%s%s\n" msgstr "Info: %s//%s er end-of-life, til fordel for %s\n" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, fuzzy, c-format msgid "" "\n" @@ -3660,113 +3682,109 @@ msgid "" msgstr "Info: %s//%s er end-of-life, til fordel for %s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, fuzzy, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Info (fastgjort): %s//%s er end-of-life, med årsagen:\n" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, fuzzy, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Info: %s//%s er end-of-life, med årsagen:\n" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, fuzzy, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Info: %s//%s er end-of-life, med årsagen:\n" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, fuzzy, c-format msgid "Info: applications using this extension:\n" msgstr "Programmer som bruger denne runtime:\n" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, fuzzy, c-format msgid "Info: applications using this runtime:\n" msgstr "Programmer som bruger denne runtime:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "Opdaterer til rebased version\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "Kunne ikke rebase %s til %s: " -#: app/flatpak-cli-transaction.c:1009 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Kunne ikke rebase %s til %s: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, fuzzy, c-format msgid "New %s%s%s permissions:" msgstr "Nye tilladelser for %s:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, fuzzy, c-format msgid "%s%s%s permissions:" msgstr "Tilladelser for %s:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Advarsel: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Ha" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "delvist" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Fortsæt med ændringerne til brugerinstallationen?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Fortsæt med ændringerne til systeminstallationen?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Fortsæt med ændringerne til %s?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Ændringerne blev gennemført." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Afinstallationen blev gennemført." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Installationen blev gennemført." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Opdateringerne blev gennemført." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Der opstod en eller flere fejl" @@ -4075,34 +4093,34 @@ msgstr "" "miljøvariablen, så programmer som er installeret af Flatpak vises måske ikke " "på dit skrivebord før sessionen genstartes." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" "Flere installationer angivet til en kommando der virker på en installation" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "Se '%s --help'" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "'%s' er ikke en flatpak-kommando. Mente du '%s%s'?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "'%s' er ikke en flatpak-kommando" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Der er ikke angivet nogen kommando" @@ -4165,16 +4183,16 @@ msgstr "%s Kunne ikke %s %s: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Fejl ved geninstallation af %s: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s er allerede installeret" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s er ikke installeret" @@ -4203,59 +4221,55 @@ msgstr "Info: %s er end-of-life, med årsagen: %s\n" msgid "Failed to rebase %s to %s: %s\n" msgstr "Kunne ikke rebase %s til %s: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Kunne ikke rebase %s til %s: %s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "Ingen godkender konfigureret for eksternen `%s`" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Ukendt delingstype %s, gyldige typer er: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Ukendt politiktype %s, gyldige typer er: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Ugyldigt dbus-navn %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Ukendt sokkeltype %s, gyldige typer er: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Ukendt enhedstype %s, gyldige typer er: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Ukendt funktionalitetstype %s, gyldige typer er: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "Filsystemsplaceringen \"%s\" indeholder \"..\"" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" "--filesystem=/ er ikke tilgængelig, brug --filesystem=vært for et lignende " "resultat" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4264,185 +4278,219 @@ msgstr "" "Ukendt filsystemplacering %s, gyldige placeringer er: vært, vært-" "styresystem, vært-osv., xdg-*[/ …], ~/mappe, /mappe" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Ugyldigt miljøformat %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "Miljøvariabelnavn må ikke indeholde '=': %s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "--add-policy-argumenter skal være i formatet UNDERSYSTEM.NØGLE=VÆRDI" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "--add-policy-værdier må ikke begynde med \"!\"" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" "--remove-policy-argumenter skal være i formatet UNDERSYSTEM.NØGLE=VÆRDI" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "--remove-policy må ikke begynde med \"!\"" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Del med vært" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "DEL" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Stop deling med vært" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Eksponer sokkel til program" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "SOKKEL" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Eksponer ikke sokkel til program" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Eksponer enhed til program" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "ENHED" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Eksponer ikke enhed til program" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Tillad funktionalitet" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "FUNKTIONALITET" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Tillad ikke funktionalitet" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "Eksponer filsystem til program (:ro for skrivebeskyttet)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "FILSYSTEM[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Eksponer ikke filsystem til program" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "FILSYSTEM" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Indstil miljøvariabel" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VARIABEL=VÆRDI" # scootergrisen: ved ikke hvad FD er # scootergrisen: "Læs miljøvariabler i formatet env -0 fra ..." -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "Læs miljøvariabler i formatet env -0 fra FD" # scootergrisen: ved ikke hvad FD er -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "FD" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "Fjern variabel fra miljø" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "VAR" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Giv program tilladelse til eget navn på sessionsbussen" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "DBUS_NAVN" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Giv program tilladelse til at snakke med navn på sessionsbussen" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "Giv ikke program tilladelse til at snakke med navn på sessionsbussen" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Giv program tilladelse til eget navn på systembussen" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Giv program tilladelse til at snakke med navn på systembussen" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "Giv ikke program tilladelse til at snakke med navn på systembussen" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Giv program tilladelse til eget navn på systembussen" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Tilføj tilvalg for generisk politik" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "UNDERSYSTEM.NØGLE=VÆRDI" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Fjern tilvalg for generisk politik" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "Vedvarende understi for hjemmemappe" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "FILNAVN" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Vedvarende understi for hjemmemappe" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Kræv ikke en kørende session (ingen cgroups-oprettelse)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4451,429 +4499,426 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, fuzzy, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "Kan ikke oprette midlertidig mappe i %s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "Konfigurerede samlings-id ‘%s’ ikke i opsummeringsfil" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Kan ikke indlæse opsummering fra eksternen %s: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "Ingen sådan reference '%s' i eksternen %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 -#, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 +#, fuzzy, c-format +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "" "Ingen post for %s i mellemlager til opsummerings-flatpak for eksternen '%s' " -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "" "Ingen opsummering eller Flatpak-mellemlager tilgængelig for eksternen %s" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "Ingen post for %s i mellemlager til opsummering for eksternen '%s' " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Manglende xa.data i opsummering for eksternen %s" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Uunderstøttet opsummeringsversion %d for eksternen %s" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "Eksternt OCI-indeks har ikke nogen register-uri" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Kunne ikke finde referencen %s i eksternen %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "Aftrykket er ikke et manifest" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" "Indsendelse har ikke nogen anmodet reference ‘%s’ i metadata for " "referencebinding" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "Konfigurerede samlings-id ‘%s’ ikke i metadata for binding" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "Kunne ikke finde seneste checksum for referencen %s i eksternen %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, fuzzy, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" "Ingen post for %s i mellemlager til opsummerings-flatpak-sparse for " "eksternen " -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "Indsendelsesmetadata for %s matcher ikke ventede metadata" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "Kan ikke oprette forbindelse til systembus" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "Brugerinstallation" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "System (%s) -installation" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Ingen tilsidesættelser fundet for %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "%s (indsendelsen %s) er ikke installeret" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "Fejl ved fortolkning af systemets flatpakrepo-fil til %s: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Ved åbning af depotet %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "Konfigurationsnøglen %s er ikke indstillet" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "Ingen nuværende %s mønster matcher %s" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "Ingen appstream-indsendelse som skal udsendes" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "Kan ikke pull fra ubetroet eksterne som ikke er gpg-verificeret" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" "Ekstra-data understøttes ikke for lokale systeminstallationer som ikke er " "gpg-verificeret" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Ugyldig checksum for ekstra-data-uri'en %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Tomt navn for ekstra-data-uri'en %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Uunderstøttet ekstra-data-uri %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Kunne ikke indlæse lokal extra-data %s: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Forkert størrelse for extra-data %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "Ved download af %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Forkert størrelse for ekstra-data %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Ugyldig checksum for ekstra-data %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s indsendelsen %s er allerede installeret" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "Ved pulling af %s fra eksternen %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "Fandt GPG-underskrifter, men ingen af dem i betroet nøglering" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "Indsendelse til ‘%s’ har ikke nogen referencebinding" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "" "Indsendelse til ‘%s’ er ikke indenfor ventede afgrænsningsreferencer: %s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "Kun programmer kan gøres nuværende" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Ikke nok hukommelse" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Kunne ikke låse fra eksporteret fil" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Fejl ved læsning af mimetype-xml-fil" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Ugyldig mimetype-xml-fil" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "D-Bus-tjenestefilen '%s' har forkert navn" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "Ugyldigt Exec-argument %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "Ved hentning af løsrevet metadata: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "Ekstra-data mangler i løsrevet metadata" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "Ved oprettelse af ekstra-mappe: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Ugyldig checksum for ekstra-data" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Forkert størrelse for ekstra-data" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "Ved skrivning af ekstra-data-filen '%s': " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "Ekstra-data %s mangler i løsrevet metadata" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "apply_extra-script mislykkedes, afslutningsstatus %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" "Installation af %s er ikke tilladt af politikken som er indstillet af din " "administrator" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "Ved forsøg på løsning af referencen %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s er ikke tilgængelig" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Kan ikke oprette udsendelsesmappe" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Kunne ikke læse indsendelsen %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "Ved forsøg på checkout af %s i %s: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "Ved forsøg på checkout af metadata-understi: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "Ved forsøg på checkout af understien ‘%s’: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Ved forsøg på fjernelse af eksisterende ekstra-mappe: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Ved forsøg på anvendelse af ekstra-data: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Ugyldig indsend-reference %s: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "Udsendt reference %s matcher ikke indsendelse (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "Udsendt reference %s gren matcher ikke indsendelse (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s grenen %s er allerede installeret" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "Kunne ikke afmontere filsystemet revokefs-fuse på %s: " -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Versionen af %s er allerede installeret" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "Kan ikke skifte eksterne under installation af bundt" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "Kan ikke opdatere en bestemt indsendelse uden root-tilladelser" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "Kan ikke fjerne %s, da den behøves af: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s grenen %s er ikke installeret" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "%s indsendelsen %s er ikke installeret" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "Beskæring af depot mislykkedes: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "Kunne ikke indlæse filteret '%s'" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "Kunne ikke fortolke filteret '%s'" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "Kunne ikke skrive opsummeringsmellemlager: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "Ingen oci-opsummering mellemlagret for eksternen '%s'" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "Ingen mellemlagret opsummering for eksternen '%s'" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "Ugyldig checksum for indekseret opsummering %s for eksternen '%s'" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " @@ -4882,244 +4927,273 @@ msgstr "" "Visning af eksterne for %s er ikke tilgængelig; serveren har ikke nogen " "opsummeringsfil. Tjek at URL'en som blev givet til remote-add er gyldig." -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "Ugyldig checksum for indekseret opsummering %s for eksternen '%s'" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "Flere grene tilgængelige for %s, du skal angive en af: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Intet matcher %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Kan ikke finde referencen %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Fejl ved søgning efter eksternen %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Fejl ved søgning i lokalt depot: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s er ikke installeret" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Kunne ikke finde installationen %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "Ugyldigt filformat, ingen %s gruppe" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Ugyldig version %s, understøtter kun 1" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "Ugyldigt filformat, ingen %s angivet" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "Ugyldigt filformat, gpg-nøglen er ugyldig" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "Samlings-id'et kræver levering af GPG-nøgle" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Runtimen %s, grenen %s er allerede installeret" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Programmet %s, grenen %s er allerede installeret" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" "Kan ikke fjerne eksternen '%s' med installerede reference %s (som det " "mindste)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Ugyldigt tegn '/' i navn for eksterne: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "Der er ikke angivet nogen konfiguration for eksternen %s" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Springer over sletning af spejlreference (%s, %s) …\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, fuzzy, c-format msgid "Unable to open path \"%s\": %s" msgstr "Kan ikke opdatere %s: %s\n" -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, fuzzy, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "Kan ikke oprette filen %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, fuzzy, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "Kan ikke opdatere symbolsk link %s/%s" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "Tom streng er ikke et tal" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "“%s” er ikke et tal uden fortegn" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "Tallet “%s” er uden for afgrænsningerne [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "Referencen %s er ikke installeret" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "Programmet %s er ikke installeret" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "Eksternen '%s' findes allerede" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "Som anmodet, blev %s kun pulled, men ikke installeret" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "Kan ikke oprette mappen %s" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "Kan ikke låse %s" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "Kan ikke åbne mappen %s" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "Kan ikke oprette midlertidig mappe i %s" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "Kan ikke oprette filen %s" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Kan ikke opdatere symbolsk link %s/%s" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "Kun Bearer-godkendelse understøttes" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "Kun realm i godkendelsesanmodning" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "Ugyldig realm i godkendelsesanmodning" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "Godkendelse mislykkedes: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Godkendelse mislykkedes" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "Uventet svarstatus %d ved anmodning af token: %s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "Ugyldigt svar fra godkendelsesanmodning" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "Ugyldigt deltafilformat" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "Ingen gpg-nøgle fundet med id'et %s (hjemmemappe: %s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, fuzzy, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Kan ikke opslå nøgle-id'et %s: %d)" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "Fejl ved underskrivning af indsendelse: %d" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Ugyldig konfiguration for OCI-aftryk" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Forkert lag-checksum, ventede %s, var %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "Ingen reference angivet for OCI-aftrykket %s" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Forkert reference (%s) angivet for OCI-aftrykket %s, ventede %s" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5140,317 +5214,370 @@ msgstr "Downloader ekstra-data: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Downloader filer: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Navnet må ikke være tomt" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Navnet må ikke være længere end 255 tegn" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Navnet må ikke begynde med et punktum" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Navnet må ikke begynde med %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Navnet må ikke slutte med et punktum" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Kun det sidste navnesegment må indeholde -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Navnesegmentet må ikke begynde med %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Navnet må ikke indeholde %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "Navne skal indeholde mindst 2 punktummer" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "Arkitektur må ikke være tom" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "Arkitektur må ikke indeholde %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Grenen må ikke være tom" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Grenen må ikke begynde med %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Grenen må ikke indeholde %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "Reference for lang" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "Ugyldig navn for eksterne" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s er ikke et program eller runtime" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Forkert antal komponenter i %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "Ugyldigt navn %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "Ugyldig arkitektur: %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Ugyldigt navn %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "Ugyldig arkitektur: %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "Ugyldig gren: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "Forkert antal komponenter i delvis reference %s" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr " udviklingsplatform" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr " platform" # scootergrisen: " programgrund" # scootergrisen: " programbase" # scootergrisen: måske noget med grundlæggende -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr " programbase" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr " fejlretningssymboler" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr " kildekode" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " oversættelser" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr " dokumentationer" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "Ugyldigt id %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Dårligt navn for eksterne: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "Ingen url angivet" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "GPG-verifikation skal være aktiveret når et samlings-id indstilles" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Kunne ikke åbne programinfo-fil" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Ingen ekstra-data-kilder" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Kan ikke oprette synkroniseringsledning" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "Ugyldig %s: Mangler gruppen ‘%s’" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Kunne ikke synkronisere med dbus-proxy" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "Ugyldig %s: Mangler nøglen ‘%s’" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Ugyldig gpg-nøgle" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Fejl ved kopiering af 64x64-ikon for komponenten %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Fejl ved kopiering af 128x128-ikon for komponenten %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s er end-of-life, ignorerer for appstream" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Ingen appstream-data for %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Ugyldig bundt, ingen reference i metadata" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "Samlingen ‘%s’ af bundt matcher ikke samlingen ‘%s’ af ekstern" -#: common/flatpak-run.c:2207 +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Metadata i header og program er uoverensstemmende" + +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "Ingen systemd-brugersession tilgængelig, cgroups er ikke tilgængelig" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "Kan ikke allokere instans-id" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Kunne ikke åbne flatpak-info-filen: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Kunne ikke åbne bwrapinfo.json-filen: %s" # scootergrisen: tjek oversættelsen af "instance id fd" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "Kunne ikke skrive instans-id fd: %s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "Initiering af seccomp mislykkedes" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, fuzzy, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Kunne ikke tilføje arkitektur til seccomp-filter" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, fuzzy, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Kunne ikke tilføje multiarch-arkitektur til seccomp-filter" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, fuzzy, c-format msgid "Failed to block syscall %d: %s" msgstr "Kunne ikke blokere syskaldet %d" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, fuzzy, c-format msgid "Failed to export bpf: %s" msgstr "Kunne ikke eksportere bpf" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "Kunne ikke åbne ‘%s’" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ldconfig mislykkedes, afslutningsstatus %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "Kan ikke åbne genererede ld.so.cache" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" "Kørsel af %s er ikke tilladt af politikken som er indstillet af din " "administrator" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "Kunne ikke migrere fra %s: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" "Kunne ikke migrere den gamle programdatamappe %s til det nye navn %s: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Kunne ikke oprette symlink under migrering af %s: %s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Kunne ikke åbne programinfo-fil" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Kan ikke oprette synkroniseringsledning" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Kunne ikke synkronisere med dbus-proxy" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Advarsel: Problem ved søgning efter relaterede referencer: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "Programmet %s kræver runtimen %s som ikke blev fundet" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "Programmet %s kræver runtimen %s som ikke er installeret" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "Kan ikke afinstallere %s som behøves af %s" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Eksternen %s er deaktiveret, ignorerer opdatering af %s" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s er allerede installeret" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s er allerede installeret fra eksternen %s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "Ugyldig .flatpakref: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "Fejl ved opdatering af metadata af eksterne for '%s': %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " @@ -5459,55 +5586,55 @@ msgstr "" "Advarsel: Behandler fejl ved fetch af eksterne som ikke-fatale eftersom %s " "allerede er installeret: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "Ingen godkender installeret for eksternen '%s'" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "Kunne ikke hente tokens for reference: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "Kunne ikke hente tokens for reference" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 #, fuzzy msgid "any remote" msgstr "Ekstern" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "Flatpakrepo-URL'en %s er ikke file, HTTP eller HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "Kan ikke indlæse afhængig fil %s: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "Ugyldig .flatpakrepo: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "Transaktionen er allerede udført" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." @@ -5515,16 +5642,16 @@ msgstr "" "Nægter er operere på en brugerinstallation som root! Det kan lede til fejl " "om ukorrekt filejerskab og -tilladelse." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Afbrudt af bruger" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "Springer over %s pga. tidligere fejl" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "Afbrudt pga. fejl (%s)" @@ -5571,137 +5698,113 @@ msgstr "" msgid "URI is not absolute, and no base URI was provided" msgstr "" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "Glob kan ikke matche programmer" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" +msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "Tom glob" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "For mange argumenter i glob" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "Ugyldigt id %s: %s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" -msgstr "Ugyldigt glob-tegn '%c'" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" -msgstr "Manglende glob på linje %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" -msgstr "Efterstillet tekst på linje %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "på linje %d" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "Uventet ord '%s' på linje %d" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "Ugyldig %s: Mangler gruppen ‘%s’" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "Ugyldig %s: Mangler nøglen ‘%s’" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Ugyldig gpg-nøgle" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Ingen ekstra-data-kilder" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Fejl ved kopiering af 64x64-ikon for komponenten %s: %s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Fejl ved kopiering af 128x128-ikon for komponenten %s: %s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s er end-of-life, ignorerer for appstream" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "Glob kan ikke matche programmer" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Ingen appstream-data for %s: %s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Tom glob" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "Ugyldig bundt, ingen reference i metadata" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "For mange argumenter i glob" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "Samlingen ‘%s’ af bundt matcher ikke samlingen ‘%s’ af ekstern" - -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "Metadata i header og program er uoverensstemmende" +msgid "Invalid glob character '%c'" +msgstr "Ugyldigt glob-tegn '%c'" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "Ugyldig konfiguration for OCI-aftryk" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "Manglende glob på linje %d" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "Forkert lag-checksum, ventede %s, var %s" +msgid "Trailing text on line %d" +msgstr "Efterstillet tekst på linje %d" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "Ingen reference angivet for OCI-aftrykket %s" +msgid "on line %d" +msgstr "på linje %d" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "Forkert reference (%s) angivet for OCI-aftrykket %s, ventede %s" +msgid "Unexpected word '%s' on line %d" +msgstr "Uventet ord '%s' på linje %d" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "Ugyldigt require-flatpak-argument %s" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s har brug for en nyere flatpak-version (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "Tom streng er ikke et tal" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "“%s” er ikke et tal uden fortegn" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "Tallet “%s” er uden for afgrænsningerne [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "Ikke en oci-eksterne — manglende summary.xa.oci-repository" @@ -5714,41 +5817,45 @@ msgstr "Ikke en OCI-eksterne" msgid "Invalid token" msgstr "Ugyldig token" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "Fandt ingen understøttelse af portal" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Nægt" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Opdater" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "Opdater %s?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "Programmet vil gerne opdatere sig selv." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" "Opdateringsadgang kan ændres når som helst fra privatlivsindstillingerne." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "Programopdatering ikke tilladt" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "Selvopdatering understøttes ikke – ny version kræver nye tilladelser" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "Opdatering sluttede uventet" @@ -5970,6 +6077,30 @@ msgstr "" "Der kræves godkendelse for at installere software som er begrænset af din " "politik for forælderstyringer" +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "Fandt lignende reference(r) for ‘%s’ i eksternen ‘%s’ (%s).\n" +#~ "Brug eksternen?" + +#, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "Ingen post for %s i mellemlager til opsummering for eksternen '%s' " + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Kunne ikke rebase %s til %s: " + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Kunne ikke rebase %s til %s: %s\n" + +#, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Kan ikke åbne mappen %s" + #~ msgid "install" #~ msgstr "installer" diff --git a/po/de.gmo b/po/de.gmo deleted file mode 100644 index e11ce1e0794ead8b067c33a7e18fd21dc9bde154..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 72168 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 diff --git a/po/de.po b/po/de.po index 03c18c2..510ee54 100644 --- a/po/de.po +++ b/po/de.po @@ -7,120 +7,121 @@ # Christian Kirbach , 2017, 2021. # Philipp Kiemle , 2021. # Ettore Atalan , 2022. +# Philipp Trulson , 2023. # msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" -"PO-Revision-Date: 2022-08-14 23:52+0200\n" -"Last-Translator: Ettore Atalan \n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2023-11-23 23:33+0100\n" +"Last-Translator: Philipp Trulson \n" "Language-Team: German \n" "Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 3.1.1\n" +"X-Generator: Poedit 3.4.1\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Laufzeitumgebung anstelle der Anwendung exportieren" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Architektur für die gebündelt wird" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARCH" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Adresse für Quelle" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "ADRESSE" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Adresse der flatpakrepo-Datei der Laufzeit" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "GPG-Schlüssel aus DATEI hinzufügen (- für stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "DATEI" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "GPG-Schlüsselkennung zum Unterschreiben des OCI-Abbilds" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "SCHLÜSSELKENNUNG" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "SCHLÜSSELKENNUNG" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "GPG-Basisordner für die Suche nach Schlüsselbünden" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "BASISORDNER" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "COMMIT" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "In ein OCI-Abbild anstelle eines Flatpak-Bündels exportieren" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -128,58 +129,58 @@ msgstr "" "ORT DATEINAME NAME [ZWEIG] - Ein einzelnes Dateibündel aus lokaler Quelle " "erstellen" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "ORT, DATEINAME und NAME müssen angegeben werden" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Zu viele Argumente" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "»%s« ist keine gültige Quelle" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "»%s« ist keine gültige Quelle: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "»%s« ist kein gültiger Name: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "»%s« ist kein gültiger Zweig-Name: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -214,7 +215,7 @@ msgstr "VERZ" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Legt fest, wo der eigene sdk-Ordner gesucht wird (Standard ist »usr«)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Alternative Datei für diese Metadaten verwenden" @@ -234,477 +235,483 @@ msgstr "Sitzungsbus-Aufrufe protokollieren" msgid "Log system bus calls" msgstr "Systembus-Aufrufe protokollieren" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "ORDNER [BEFEHL [Argumente …]] - In Ordner erstellen" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "ORDNER muss angegeben werden" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "" "Erstellungsordner %s ist nicht initialisiert. Verwenden Sie flatpak build-" "init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "Metadaten sind ungültig. Es ist keine Anwendung oder Laufzeit" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "Kein Erweiterungspunkt entspricht %s in %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Fehlendes »=« in Bind-Mount-Option »%s«" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Anwendung kann nicht gestartet werden" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Quellenordner" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "QUELL-REPO" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Quellenreferenz" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "QUELL-REF" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Einzeiliger Betreff" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "BETREFF" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Vollständige Beschreibung" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "TEXTKÖRPER" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Appstream-Zweig aktualisieren" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Appstream-Zweig aktualisieren" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Die Zusammenfassung nicht aktualisieren" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "GPG-Schlüsselkennung zum Unterschreiben des Commits" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "GRUND" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "WERT" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "" "Zeitstempel des Commits überschreiben (»NOW« bedeutete aktuelle Uhrzeit)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "ZEITSTEMPEL" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "Keinen Index der Zusammenfassung erstellen" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" "ZIEL-REPO [ZIEL-REF]... - Einen neuen Commit auf Basis eines vorhandenen " "Commits ausführen" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "ZIEL-REPO muss angegeben werden" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "Wenn --src-repo nicht angegeben ist, so muss genau eine Zielreferenz " "angegeben werden" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" "Wenn --src-ref nicht angegeben ist, so muss genau eine Zielreferenz " "angegeben werden" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "Es muss entweder »--src-repo« oder »--src-ref« angegeben werden" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: keine Änderung\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Zu exportierende Architektur (muss kompatibel mit dem Rechner sein)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Commit von Laufzeitumgebung (/usr), nicht /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Alternativen Ordner für die Dateien verwenden" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "UNTERVERZ" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Auszuschließende Dateien" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "MUSTER" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Einzuschließende ausgeschlossene Dateien" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "KENNUNG" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Zeitstempel des Commits überschreiben" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "Sammlungskennung" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "WARNUNG: Kontrollprüfung der desktop-Datei %s ist gescheitert: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "WARNUNG: Exec-Schlüssel in %s nicht gefunden: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "WARNUNG: Binärdatei für Exec-Zeile in %s nicht gefunden: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "WARNUNG: Symbol passt nicht zur Anwendungskennung in %s: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" "WARNING: Symbol in desktop-Datei referenziert, aber nicht exportiert: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Ungültiger URI-Typ %s, nur http/https werden unterstützt" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "" "Basisname konnte in %s nicht gefunden werden, bitte geben Sie einen Namen " "explizit an" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "Schrägstriche sind nicht im zusätzlichen Datennamen erlaubt" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Ungültiges Format der sha256-Prüfsumme: »%s«" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Größe 0 der Extradaten wird nicht unterstützt" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "ORT ORDNER [ZWEIG] - Quelle aus Erstellungsordner erzeugen" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "ORT und ORDNER müssen angegeben werden" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "»%s« ist keine gültige Sammlungskennung: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "In den Metadaten ist kein Name angegeben" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Commit: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Metadaten insgesamt: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Metadaten geschrieben: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Inhalt insgesamt: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Inhalt geschrieben: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Festzulegender Befehl" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "BEFEHL" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Benötigte Flatpak-Version" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "HAUPT.NEBEN.MIKRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Exporte nicht verarbeiten" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Zusätzliche Dateninformation" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Information zu Erweiterungspunkt hinzufügen" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NAME=VARIABLE[=WERT]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Information zum Erweiterungspunkt entfernen" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NAME" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Priorität der Erweiterung festlegen (nur für Erweiterungen)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "WERT" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Das für die Anwendung verwendete Sdk ändern" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Die für die Anwendung verwendete Laufzeitumgebung ändern" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "LAUFZEITUMGEBUNG" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Allgemeine Metadaten-Einstellungen festlegen" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GRUPPE=SCHLÜSSEL[=WERT]]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Berechtigungen nicht von der Laufzeitumgebung vererben" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "%s wird nicht exportiert, falsche Erweiterung\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "%s wird nicht exportiert, nicht zulässiger Export-Dateiname\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "%s wird exportiert\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Mehr als eine ausführbare Datei gefunden\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "%s als Befehl verwenden\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Keine ausführbare Datei gefunden\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Ungültiges Argument --require-version: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "Zu wenige Elemente im Argument %s von --extra-data" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -713,7 +720,7 @@ msgstr "" "Zu wenige Elemente im Argument %s von --metadata. Das Format ist " "GRUPPE=SCHLÜSSEL[=WERT]]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -723,64 +730,65 @@ msgstr "" "Zu wenige Elemente für den Parameter %s von --extension. Das Format ist " "NAME=VAR[=WERT]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "Ungültiger Erweiterungsname %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "ORDNER - einen Erstellungsordner abschließen" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Erstellungsordner %s ist nicht initialisiert" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Erstellungsordner %s wurde bereits finalisiert" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Bitte überprüfen Sie die exportierten Dateien und die Metadaten\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Referenz für das importierte Bündel ersetzen" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REF" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "OCI-Abbild anstelle eines Flatpak-Bündels importieren" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Referenz »%s« wurde in der Registrierungsdatenbank nicht gefunden" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "" "Mehrere Abbilder in der Registrierungsdatenbank, geben Sie eine Referenz mit " "--ref an" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "»%s« (%s) wird importiert\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "ORT DATEINAME - Ein Dateibündel in eine lokale Quelle importieren" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "ORT und DATEINAME müssen angegeben werden" @@ -893,207 +901,210 @@ msgstr "»%s« ist kein gültiger Anwendungsname: %s" msgid "Build directory %s already initialized" msgstr "Erstellungsordner %s ist bereits initialisiert" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Architektur, für die installiert wird" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Nach Laufzeitumgebung unter dem angegebenen Namen suchen" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "QUELLE [NAME [ZWEIG]] - Eine Anwendung oder Laufzeitumgebung signieren" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "ORT muss angegeben werden" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Keine gpg-Schlüsselkennungen angegeben" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Diese Quelle zu einer neuen Adresse umleiten" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Ein passender Name für diese Quelle" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "TITEL" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "Eine einzeilige Beschreibung für dieses Depot" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "KOMMENTAR" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "Ein vollständiger Absatz als Beschreibung für diese Quelle" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "BESCHREIBUNG" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "Eine Adresse für die Internetseite für diese Quelle" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "Eine Adresse für ein Symbol für diese Quelle" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Vorgabezweig für diese Quelle" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "ZWEIG" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "SAMMLUNGSKENNUNG" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Name des Authentifikators für dieses Quelle" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "Authentifikator für diese Quelle automatisch installieren" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "Authentifikator für diese Quelle nicht automatisch installieren" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Authentifikator-Option" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "SCHLÜSSEL=WERT" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Neuen öffentlichen GPG-Vorgabeschlüssel aus DATEI importieren" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "GPG-Schlüsselkennung zum Unterschreiben der Zusammenfassung" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Differenzdateien erzeugen" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Appstream-Zweig nicht aktualisieren" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "Keine Deltas erstellen, die mit Referenzen übereinstimmen" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Ungenutzte Objekte abschneiden" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "Abschneiden, aber nicht wirklich etwas entfernen" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" "Nur übergeordnete Ebenen der angegebenen TIEFE für jeden Commit durchqueren " "(Standard: -1=unendlich)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "TIEFE" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Delta wird erstellt: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Delta wird erstellt: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Erstellung des Delta %s (%.10s) fehlgeschlagen: " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Erstellung des Delta %s (%.10s-%.10s) fehlgeschlagen: " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "ORT - Metadaten der Quelle aktualisieren" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Appstream-Zweig wird aktualisiert\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Zusammenfassung wird aktualisiert\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Objekte gesamt: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Keine unerreichbaren Objekte\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "%u Objekte gelöscht, %s freigemacht\n" @@ -1166,112 +1177,112 @@ msgstr "" msgid "Must specify one of --list, --get, --set or --unset" msgstr "Sie müssen eines von »--list«, »--get«, »--set« oder »--unset« angeben" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Nach einer Anwendung mit dem angegebenen Namen suchen" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 #, fuzzy msgid "Arch to copy" msgstr "Anzuzeigende Architektur" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "ZIEL" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " "suppress this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " "collection ID set.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " "distribution of ‘%s’." msgstr "" -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "EINHÄNGEPFAD und REF muss angegeben werden" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " "this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" "Warnung: Quellen-Metadaten für Gegenstelle »%s« konnten nicht aktualisiert " "werden: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" msgstr "" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1345,19 +1356,20 @@ msgstr "DATEI - Informationen über die exportierte Datei erhalten" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Nicht exportiert\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Welche Informationen angezeigt werden sollen" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "FELD,…" @@ -1376,7 +1388,7 @@ msgid "Show the document path" msgstr "Den Dokumentpfad anzeigen" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Ursprung" @@ -1390,7 +1402,7 @@ msgid "Show applications with permission" msgstr "Anwendungen mit Berechtigung anzeigen" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Berechtigungen" @@ -1518,12 +1530,12 @@ msgid "Show the kind of change" msgstr "Art der Änderung anzeigen" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Referenz" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 #, fuzzy msgid "Show the ref" msgstr "Referenz anzeigen" @@ -1533,24 +1545,24 @@ msgid "Show the application/runtime ID" msgstr "Anwendung-/Laufzeitkennung anzeigen" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Architektur" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Architektur anzeigen" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Zweig" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Zweig anzeigen" @@ -1562,7 +1574,7 @@ msgstr "Installation" msgid "Show the affected installation" msgstr "Betroffene Installationen anzeigen" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Gegenstelle" @@ -1571,7 +1583,7 @@ msgid "Show the remote" msgstr "Gegenstelle anzeigen" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Commit" @@ -1591,7 +1603,7 @@ msgstr "Vorherigen Commit anzeigen" msgid "Show the remote URL" msgstr "URL der Gegenstelle anzeigen" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Benutzer" @@ -1608,7 +1620,7 @@ msgid "Show the tool that was used" msgstr "Verwendetes Werkzeug anzeigen" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Version" @@ -1636,10 +1648,12 @@ msgid " - Show history" msgstr " - Verlauf anzeigen" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "" @@ -1655,11 +1669,11 @@ msgstr "Systemweite Installationen anzeigen" msgid "Show specific system-wide installations" msgstr "Spezifische systemweite Installationen anzeigen" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Referenz anzeigen" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Commit anzeigen" @@ -1671,15 +1685,15 @@ msgstr "Ursprung anzeigen" msgid "Show size" msgstr "Größe anzeigen" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Metadaten anzeigen" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Laufzeitumgebung anzeigen" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "sdk anzeigen" @@ -1691,8 +1705,8 @@ msgstr "Berechtigungen anzeigen" msgid "Query file access" msgstr "Dateizugriff abfragen" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1712,7 +1726,7 @@ msgstr "" "NAME [ZWEIG] - Informationen über eine installierte Anwendung oder " "Laufzeitumgebung erhalten" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "NAME muss angegeben werden" @@ -1721,85 +1735,87 @@ msgstr "NAME muss angegeben werden" msgid "ref not present in origin" msgstr "Referenz ist im Ursprung nicht vorhanden" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Warnung: Commit hat keine Flatpak-Metadaten\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "Kennung:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Ref:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Architektur:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Zweig:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Version:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Lizenz:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Sammlung:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Installation:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Installiert:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Laufzeitumgebung:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Datum:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Betreff:" @@ -1812,15 +1828,15 @@ msgid "Latest commit:" msgstr "Letzter Commit:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Commit:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "" @@ -1829,14 +1845,14 @@ msgid "Alt-id:" msgstr "" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "Ende des Lebenszyklus:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "" @@ -1845,151 +1861,152 @@ msgid "Subdirectories:" msgstr "Unterverzeichnisse:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Erweiterung:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Ursprung:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Unterpfade:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "nicht gewartet" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "unbekannt" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Keinen »Pull« ausführen, Installation nur aus lokalem Zwischenspeicher" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Nicht bereitstellen, nur in lokalen Zwischenspeicher herunterladen" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Zugehörige Referenzen nicht installieren" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Laufzeitabhängigkeiten nicht prüfen/installieren" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Keine statischen Deltas verwenden" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" "Das SDK für die Erstellung der angegebenen Referenzen zusätzlich installieren" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" "Die Debug-Informationen für die angegebenen Referenzen und ihre " "Abhängigkeiten zusätzlich installieren" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "ORT als .flatpak Einzelbündel-Datei ansehen" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "ORT als .flatpakref-Anwendungsbeschreibung ansehen" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "" "Bündel-Signaturen anhand des GPG-Schlüssels aus DATEI prüfen (- für " "Standardeingabe)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Nur diesen Unterpfad installieren" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Automatisch alle Fragen mit ja beantworten" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Zuerst deinstallieren sofern bereits installiert" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "minimale Ausgabe produzieren und keine Fragen stellen" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Installation aktualisieren sofern bereits installiert" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Name der Bündel-Datei muss angegeben werden" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Entfernte Bündel werden nicht unterstützt" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Dateiname oder URI muss angegeben werden" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "" "ORT/GEGENSTELLE [REF…] - Anwendungen oder Laufzeitumgebungen installieren" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "Mindestens eine REF muss angegeben werden" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Suchen nach Übereinstimmungen …\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, fuzzy, c-format msgid "No remote refs found for ‘%s’" msgstr "Keine Ersetzungen für %s gefunden" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Ungültiger Zweig %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, fuzzy, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Fehler beim Suchen der lokalen Quelle: %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Kein Treffer für %s in Gegenstelle %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Wird übersprungen: %s\n" @@ -2027,51 +2044,51 @@ msgstr "Installierte Anwendungen auflisten" msgid "Arch to show" msgstr "Anzuzeigende Architektur" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Alle Referenzen auflisten (einschließlich lokale und Debug-Referenzen)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "Alle Anwendungen auflisten, die die LAUFZEITUMGEBUNG verwenden" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Name" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Name anzeigen" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Beschreibung" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Beschreibung anzeigen" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "Anwendungskennung" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Anwendungskennung anzeigen" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Version anzeigen" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Laufzeit" @@ -2079,7 +2096,7 @@ msgstr "Laufzeit" msgid "Show the used runtime" msgstr "Verwendete Laufzeitumgebung anzeigen" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "" @@ -2091,7 +2108,7 @@ msgstr "Insatallation anzeigen" msgid "Active commit" msgstr "Aktiver Commit" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Aktiven Commit anzeigen" @@ -2103,37 +2120,37 @@ msgstr "Letzter Commit" msgid "Show the latest commit" msgstr "Letzten Commit anzeigen" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Installierte Größe" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Installierte Größe anzeigen" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Optionen" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Optionen anzeigen" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, fuzzy, c-format msgid "Unable to load details of %s: %s" msgstr "" "Zusätzliche Metadaten aus Zusammenfassung der entfernten Quelle für %s " "werden aktualisiert\n" -#: app/flatpak-builtins-list.c:189 -#, c-format +#: app/flatpak-builtins-list.c:188 +#, fuzzy, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Datei %s kann nicht erstellt werden" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - Installierte Anwendungen und/oder Laufzeiten auflisten" @@ -2145,7 +2162,7 @@ msgstr "Architektur als aktuell festlegen für" msgid "APP BRANCH - Make branch of application current" msgstr "ANWENDUNG ZWEIG - Zweig der Anwendung aktuell setzen" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "ANWENDUNG muss angegeben werden" @@ -2170,10 +2187,12 @@ msgstr "" "deaktivieren" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "Keine maskierten Muster\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Maskierte Muster:\n" @@ -2189,26 +2208,26 @@ msgstr "" msgid "[APP] - Override settings [for application]" msgstr "[ANWENDUNG] - Einstellungen für ANWENDUNG überschreiben" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABELLE] [KENNUNG] - Berechtigungen auflisten" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Tabelle" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Objekt" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "Anwendung" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Daten" @@ -2270,10 +2289,12 @@ msgstr "" "entsprechen, deaktivieren" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "" @@ -2349,129 +2370,129 @@ msgstr "Anzeigen, ob die Anwendung im Hintergrund läuft" msgid " - Enumerate running sandboxes" msgstr " - Laufende Sandboxen nummerieren" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Nichts unternehmen, wenn die Gegenstelle existiert" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "ORT legt eine Konfigurationsdatei fest, nicht den Quellort" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "GPG-Überprüfung deaktivieren" # Bedeutung aus flatpak-remote-add.xml # Mark the remote as not enumerated. This means the remote will not be used to list applications, for instance in graphical installation tools. -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Gegenstelle als »nicht berücksichtigen« markieren" # Bedeutung aus flatpak-remote-add.xml # Mark the remote as not enumerated. This means the remote will not be used to list applications, for instance in graphical installation tools. -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Gegenstelle als »Nicht für Abhängigkeiten verwenden« markieren" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "Priorität festlegen (Standard 1, mehr bedeutet höhere Priorität)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORITÄT" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "" "Die benannte Teilmenge, die für diese Gegenstelle verwendet werden soll" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "TEILMENGE" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Ein schöner Name, der für diese Gegenstelle verwendet werden soll " -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "Eine einzeilige Beschreibung für diese Gegenstelle" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "Ein vollständiger Absatz als Beschreibung für diese Gegenstelle" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "URL für eine Webseite für diese Gegenstelle" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "URL für ein Symbol für diese Gegenstelle" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Zu verwendender Vorgabe-Zweig für diese Gegenstelle" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "GPG-Schlüssel aus DATEI importieren (- für stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Gegenstelle deaktivieren" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Name des Authentifikators" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Authentifikator automatisch installieren" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "Authentifikator nicht automatisch installieren" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NAME ORT - Eine Gegenstelle hinzufügen" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "GPG-Überprüfung ist erforderlich, wenn Sammlungen aktiviert sind" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "Gegenstelle %s existiert bereits" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Ungültiger Authentifikator-Name %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "" @@ -2500,59 +2521,59 @@ msgstr "" msgid "Can't remove remote '%s' with installed refs" msgstr "" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Protokoll anzeigen" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "GEGENSTELLE und REFERENZ muss angegeben werden" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Herunterladen" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "Verlauf:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Commit:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Betreff:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Datum:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "" @@ -2581,7 +2602,7 @@ msgstr "URL anzeigen" msgid "Show the collection ID" msgstr "Sammlungskennung anzeigen" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "Teilmenge" @@ -2638,39 +2659,39 @@ msgstr "Symbol anzeigen" msgid " - List remote repositories" msgstr " - Quellen der Gegenstelle auflisten" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Architekturen und Zweige zeigen" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Nur Laufzeitumgebungen anzeigen" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Nur Anwendungen anzeigen" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Nur Anwendungen anzeigen, die aktualisiert werden können" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Auf diese Architektur begrenzen (* für alle)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Die Laufzeitumgebung anzeigen" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Heruntergeladene Größe" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Heruntergeladene Größe anzeigen" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr "" " [GEGENSTELLE oder ADRESSE] - Verfügbare Laufzeitumgebungen und Anwendungen " @@ -2806,225 +2827,232 @@ msgstr "Fehler bei der Neuinstallation von %s: %s\n" msgid "- Repair a flatpak installation" msgstr "- Reparatur einer Flatpak-Installation" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d/%d] Wird verifiziert %s …\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "Trockenlauf:" -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "Gegenstellen werden überprüft ...\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "" -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "" -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "wahr" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "falsch" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "" -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "Indexierte Deltas: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Titel: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Kommentar: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Beschreibung: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Webseite: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Symbol: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "Sammlungskennung: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Standardzweig: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "URL-Weiterleitung: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Authentifikator-Name: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Installiert" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Herunterladen" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "Teilmengen" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "Prüfsumme" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "Verkaufslänge" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Allgemeine Informationen über die Quelle ausgeben" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Zweige in dieser Quelle auflisten" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Metadaten für einen Zweig ausgeben" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Commits für einen Zweig anzeigen" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 #, fuzzy msgid "Print information about the repo subsets" msgstr "Allgemeine Informationen über die Quelle ausgeben" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "ORT - Wartung der Quelle" @@ -3116,11 +3144,11 @@ msgstr "" msgid "Use PATH instead of the runtime's /usr" msgstr "" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "ANWENDUNG [ARGUMENT…] - Eine Anwendung ausführen" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "Laufzeit/%s/%s/%s ist nicht installiert" @@ -3137,15 +3165,15 @@ msgstr "Gegenstellen" msgid "Show the remotes" msgstr "Gegenstellen anzeigen" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "TEXT muss angegeben werden" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Keine Übereinstimmung gefunden" @@ -3223,6 +3251,7 @@ msgid "" msgstr "" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "" @@ -3247,6 +3276,7 @@ msgid "Warning: %s is not installed\n" msgstr "Warnung: %s ist nicht installiert\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "" @@ -3290,6 +3320,7 @@ msgid "With --commit, only one REF may be specified" msgstr "FERNE QUELLE und REFERENZ muss angegeben werden" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Suche nach Aktualisierungen …\n" @@ -3299,175 +3330,169 @@ msgid "Unable to update %s: %s\n" msgstr "" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Nichts zu tun.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 #, fuzzy msgid "Which do you want to use (0 to abort)?" msgstr "Was wollen Sie installieren (0 zum Abbrechen)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" "Hint: Use flatpak remote-add to add a remote" msgstr "" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, fuzzy, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Benutzerinstallationen bearbeiten" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" "Use this ref?" msgstr "" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" +msgid "Remotes found with refs similar to ‘%s’:" msgstr "" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "Appstream-Daten für Benutzer-Gegenstelle %s werden aktualisiert" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Appstream-Daten für Gegenstelle %s werden aktualisiert" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Fehler beim Aktualisieren" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "" #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "" -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Mehrdeutige Spalte: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Unbekannte Spalte: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Verfügbare Spalten:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Alle Spalten anzeigen" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Verfügbare Spalten anzeigen" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Möchten Sie es installieren?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Was wollen Sie installieren (0 zum Abbrechen)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, fuzzy, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "%s wird als neue ferne Quelle »%s« eingerichtet" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, fuzzy, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3478,7 +3503,7 @@ msgstr "" "Wollen Sie weitere Anwendungen von dort installieren?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, fuzzy, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3489,128 +3514,128 @@ msgstr "" " %s\n" "Richten Sie diese als neue entfernte Quelle »%s« ein" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Wird installiert …" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" -msgstr "%d wird installiert/%d …" +msgstr "Installiere %d/%d …" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Wird aktualisiert …" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" -msgstr "%d wird aktualisiert/%d …" +msgstr "Aktualisiere %d/%d …" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Wird deinstalliert …" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" -msgstr "%d wird deinstalliert/%d …" +msgstr "Deinstalliere %d/%d …" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Info: %s wurde übersprungen" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, fuzzy, c-format msgid "Warning: %s%s%s already installed" msgstr "%s bereits installiert" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, fuzzy, c-format msgid "Error: %s%s%s already installed" msgstr "%s bereits installiert" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, fuzzy, c-format msgid "Warning: %s%s%s not installed" msgstr "Warnung: %s ist nicht installiert\n" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, fuzzy, c-format msgid "Error: %s%s%s not installed" msgstr "%s/%s/%s nicht installiert" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, fuzzy, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "%s benötigt eine neuere Flatpak-Version" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, fuzzy, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "%s benötigt eine neuere Flatpak-Version" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 #, fuzzy msgid "Warning: Not enough disk space to complete this operation" msgstr "Nicht genügend Festplattenplatz, um diesen Vorgang abzuschließen" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 #, fuzzy msgid "Error: Not enough disk space to complete this operation" msgstr "Nicht genügend Festplattenplatz, um diesen Vorgang abzuschließen" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, fuzzy, c-format msgid "Warning: %s" msgstr "Warnung: " -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, fuzzy, c-format msgid "Error: %s" msgstr "Fehler:" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, fuzzy, c-format msgid "Failed to install %s%s%s: " msgstr "Commit %s konnte nicht gelesen werden: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, fuzzy, c-format msgid "Failed to update %s%s%s: " msgstr "Commit %s konnte nicht gelesen werden: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, fuzzy, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Erstellung des Delta %s (%.10s-%.10s) fehlgeschlagen: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, fuzzy, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Commit %s konnte nicht gelesen werden: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Browser öffnen?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Passwort" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, c-format msgid "" "\n" @@ -3618,7 +3643,7 @@ msgid "" "%s%s%s branch %s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, c-format msgid "" "\n" @@ -3626,7 +3651,7 @@ msgid "" "%s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, c-format msgid "" "\n" @@ -3635,113 +3660,109 @@ msgid "" msgstr "" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, fuzzy, c-format msgid "Info: applications using this extension:\n" msgstr "Anwendungen, die diese Laufzeitumgebung verwenden:\n" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, fuzzy, c-format msgid "Info: applications using this runtime:\n" msgstr "Anwendungen, die diese Laufzeitumgebung verwenden:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "Ersetzen?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "" -#: app/flatpak-cli-transaction.c:1009 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "" - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, c-format msgid "New %s%s%s permissions:" msgstr "Neue %s%s%s Berechtigungen:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, c-format msgid "%s%s%s permissions:" msgstr "%s%s%s Berechtigungen:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Warnung: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "teilweise" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Mit diesen Änderungen an der Benutzerinstallation fortfahren?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Mit diesen Änderungen an der Systeminstallation fortfahren?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Mit diesen Änderungen an %s fortfahren?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Änderungen abgeschlossen." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Deinstallation abgeschlossen." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Installation abgeschlossen." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Aktualisierungen abgeschlossen." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Es gab einen oder mehrere Fehler" @@ -4048,33 +4069,33 @@ msgid "" "not appear on your desktop until the session is restarted." msgstr "" -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "»%s« ist kein Flatpak-Befehl. Meinten Sie »%s%s«?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Kein Befehl angegeben" @@ -4137,16 +4158,16 @@ msgstr "Warnung: %s %s fehlgeschlagen: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Fehler: %s %s ist fehlgeschlagen: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s bereits installiert" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s ist nicht installiert" @@ -4175,57 +4196,53 @@ msgstr "" msgid "Failed to rebase %s to %s: %s\n" msgstr "" -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Unbekannter Freigabetyp %s, zulässige Typen sind: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Unbekannter Regeltyp %s, zulässige Typen sind: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Ungültiger dbus-Name %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Unbekannter Socket-Typ %s, zulässige Typen sind: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Unbekannter Gerätetyp %s, zulässige Typen sind: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Unbekannter Funktionstyp %s, zulässige Typen sind: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, fuzzy, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4234,189 +4251,224 @@ msgstr "" "Unbekannter Dateisystem-Ort %s, zulässige Orte sind: host, home, xdg-" "*[/...], ~/Ordner, /Ordner" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Ungültiges Umgebungsformat: %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Mit Rechner teilen" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "FREIGABE" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Freigabe für Rechner aufheben" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Socket für die Anwendung sichtbar machen" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "SOCKET" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Socket vor der Anwendung verbergen" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Gerät für die Anwendung sichtbar machen" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "GERÄT" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Gerät vor der Anwendung verbergen" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Funktion erlauben" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "FUNKTION" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Funktion nicht erlauben" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "" "Das Dateisystem für die Anwendung sichtbar machen (:ro für schreibgeschützt)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "DATEISYSTEM[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Das Dateisystem vor der Anwendung verbergen" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "DATEISYSTEM" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Umgebungsvariable festlegen" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VAR=WERT" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "FD" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "Variable aus der Umgebung entfernen" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "VAR" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "" "Der Anwendung erlauben, einen Namen auf dem Sitzungsbus zu beanspruchen" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "DBUS_NAME" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Der Anwendung erlauben, mit Namen auf dem Sitzungsbus zu kommunizieren" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 #, fuzzy msgid "Don't allow app to talk to name on the session bus" msgstr "Der Anwendung erlauben, mit Namen auf dem Sitzungsbus zu kommunizieren" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "" "Der Anwendung erlauben, einen Namen auf dem Sitzungsbus zu beanspruchen" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Der Anwendung erlauben, mit Namen auf dem Systembus zu kommunizieren" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 #, fuzzy msgid "Don't allow app to talk to name on the system bus" msgstr "Der Anwendung erlauben, mit Namen auf dem Systembus zu kommunizieren" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "" +"Der Anwendung erlauben, einen Namen auf dem Sitzungsbus zu beanspruchen" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Allgemeine Richtlinien-Einstellungen hinzufügen" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "SUBSYSTEM.SCHLÜSSEL=WERT" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Allgemeine Richtlinien-Einstellungen entfernen" -#: common/flatpak-context.c:1549 -#, fuzzy -msgid "Persist home directory subpath" -msgstr "Basisordner beständig machen" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "DATEINAME" +#: common/flatpak-context.c:1696 +#, fuzzy +msgid "Persist home directory subpath" +msgstr "Basisordner beständig machen" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "" "Laufende Sitzung als nicht erforderlich festlegen (keine Erstellung von " "cgroups)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4425,680 +4477,704 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, fuzzy, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "Bereitstellungsordner konnte nicht erstellt werden" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, fuzzy, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Während des Holens von %s von der entfernten Quelle %s: " -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, fuzzy, c-format msgid "No such ref '%s' in remote %s" msgstr "%s konnte nicht in entfernter Quelle %s gefunden werden" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 #, fuzzy, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "" "Kein Eintrag für %s in Zusammenfassung des entfernten Flatpak-" "Zwischenspeichers" -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, fuzzy, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "Kein Flatpak-Zwischenspeicher in Zusammenfassung entfernter Quelle" -#: common/flatpak-dir.c:921 -#, fuzzy, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "" -"Kein Eintrag für %s in Zusammenfassung des entfernten Flatpak-" -"Zwischenspeichers" - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, fuzzy, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Kein Flatpak-Zwischenspeicher in Zusammenfassung entfernter Quelle" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, fuzzy, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Kein Flatpak-Zwischenspeicher in Zusammenfassung entfernter Quelle" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, fuzzy, c-format msgid "Couldn't find ref %s in remote %s" msgstr "%s konnte nicht in entfernter Quelle %s gefunden werden" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "Abbild ist kein Manifest" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, fuzzy, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "%s konnte nicht in entfernter Quelle %s gefunden werden" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, fuzzy, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" "Kein Eintrag für %s in Zusammenfassung des entfernten Flatpak-" "Zwischenspeichers" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 #, fuzzy msgid "Unable to connect to system bus" msgstr "" "Der Anwendung erlauben, einen Namen auf dem Sitzungsbus zu beanspruchen" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "Benutzerinstallation" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "Systeminstallation (%s)" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Keine Ersetzungen für %s gefunden" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "%s (Commit %s) nicht installiert" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, fuzzy, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "Fehler beim Aktualisieren der Metadaten für »%s«: %s\n" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Während des Öffnens der Quelle %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "Der Konfigurationsschlüssel %s ist nicht festgelegt" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, fuzzy, c-format msgid "No current %s pattern matching %s" msgstr "Zugehörige Referenzen nicht aktualisieren" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 #, fuzzy msgid "No appstream commit to deploy" msgstr "Bereitzustellender Commit" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, fuzzy, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Ungültige Prüfsumme für Extradaten %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Leerer Name für die Adresse %s der Extradaten" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Nicht unterstützte Adresse %s der Extradaten" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Zusätzliche lokale Daten %s konnten nicht gelesen werden: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Falsche Größe für Extradaten %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "Während des Herunterladens von %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Falsche Größe für Extradaten %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Ungültige Prüfsumme für Extradaten %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s-Commit %s wurde bereits installiert" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "Während des Holens von %s von der Gegenstelle %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 #, fuzzy msgid "Only applications can be made current" msgstr "Eine Anwendung oder Laufzeitumgebung signieren" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Nicht genug Speicher" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Lesen aus der exportierten Datei fehlgeschlagen" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Fehler beim Lesen der MIME-Typen-XML-Datei" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Ungültige MIME-Typen-XML-Datei" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, fuzzy, c-format msgid "Invalid Exec argument %s" msgstr "Ungültiges Umgebungsformat: %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "Während des Versuchs, abgekoppelte Metadaten zu holen: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 #, fuzzy msgid "Extra data missing in detached metadata" msgstr "Während des Versuchs, abgekoppelte Metadaten zu holen: " -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "Beim Anlegen von extradir: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Ungültige Prüfsumme für zusätzliche Daten" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Falsche Größe für zusätzliche Daten" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "Fehler beim Schreiben der zusätzlichen Datendatei: »%s«: " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, fuzzy, c-format msgid "Extra data %s missing in detached metadata" msgstr "Während des Versuchs, abgekoppelte Metadaten zu holen: " -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "Skript apply_extra ist fehlgeschlagen, Exit-Status %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "Während des Auflösens der Referenz %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s ist nicht verfügbar" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Bereitstellungsordner konnte nicht erstellt werden" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Commit %s konnte nicht gelesen werden: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "Während des Versuchs, eine Arbeitskopie von %s nach %s zu erstellen: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "" "Während des Versuchs, eine Arbeitskopie des Metadaten-Unterordners zu " "erstellen: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, fuzzy, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "Während des Versuchs, eine Arbeitskopie von %s nach %s zu erstellen: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Während des Versuchs, den bestehenden Extraordner zu entfernen: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Während des Versuchs, zusätzliche Daten anzuwenden: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Ungültige Commit-Referenz %s: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "Bereitgestellte Referenz %s entspricht nicht dem Commit (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "" "Bereitgestellte Referenz des Zweigs %s entspricht nicht dem Commit (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s Zweig %s wurde bereits installiert" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "" -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Diese Version von %s ist bereits installiert" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s Zweig %s ist nicht installiert" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "%s Commit %s nicht installiert" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, fuzzy, c-format msgid "Failed to load filter '%s'" msgstr "Commit %s konnte nicht gelesen werden: " -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, fuzzy, c-format msgid "Failed to parse filter '%s'" msgstr "Commit %s konnte nicht gelesen werden: " -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 #, fuzzy msgid "Failed to write summary cache: " msgstr "Commit %s konnte nicht gelesen werden: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, fuzzy, c-format msgid "No oci summary cached for remote '%s'" msgstr "Kein Flatpak-Zwischenspeicher in Zusammenfassung entfernter Quelle" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, fuzzy, c-format msgid "No cached summary for remote '%s'" msgstr "Kein Flatpak-Zwischenspeicher in Zusammenfassung entfernter Quelle" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "Ungültige Prüfsumme für Extradaten %s" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " "URL passed to remote-add was valid." msgstr "" -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "Ungültige Prüfsumme für Extradaten %s" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "" -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Kein Treffer für %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Referenz %s%s%s%s%s kann nicht gefunden werden" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Fehler bei der Suche nach der Gegenstelle %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Fehler beim Suchen der lokalen Quelle: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s nicht installiert" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Installation %s konnte nicht gefunden werden" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, fuzzy, c-format msgid "Invalid file format, no %s group" msgstr "Ungültiges Umgebungsformat: %s" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, fuzzy, c-format msgid "Invalid version %s, only 1 supported" msgstr "Ungültiger URI-Typ %s, nur http/https werden unterstützt" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, fuzzy, c-format msgid "Invalid file format, no %s specified" msgstr "Ungültiges Umgebungsformat: %s" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 #, fuzzy msgid "Invalid file format, gpg key invalid" msgstr "Ungültiges Umgebungsformat: %s" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Laufzeitumgebung %s, Zweig %s ist bereits installiert" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Anwendung %s, Zweig %s ist bereits installiert" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, fuzzy, c-format msgid "Invalid character '/' in remote name: %s" msgstr "%s konnte nicht in entfernter Quelle %s gefunden werden" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "Keine Konfiguration für Gegenstelle %s angegeben" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, fuzzy, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Ungültige bereitgestellte Referenz %s: " -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, fuzzy, c-format msgid "Unable to open path \"%s\": %s" msgstr "Verzeichnis %s kann nicht geöffnet werden" -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, fuzzy, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "Datei %s kann nicht erstellt werden" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, fuzzy, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "Während des Holens von %s von der entfernten Quelle %s: " -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "Leere Zeichenkette ist keine Zahl" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "»%s« ist keine vorzeichenlose Zahl" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "Zahl »%s« ist außerhalb des zulässigen Bereichs [%s, %s]" + +#: common/flatpak-installation.c:835 #, fuzzy, c-format msgid "Ref %s not installed" msgstr "%s ist nicht installiert" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "Anwendung »%s« nicht installiert" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, fuzzy, c-format msgid "Remote '%s' already exists" msgstr "Entfernt gelegene Quelle %s existiert bereits" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "Wie gewünscht, wurde »%s« nur heruntergeladen und nicht installiert" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "Verzeichnis %s kann nicht erstellt werden" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "%s kann nicht gesperrt werden" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "Verzeichnis %s kann nicht geöffnet werden" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, fuzzy, c-format msgid "Unable to create temporary directory in %s" msgstr "Bereitstellungsordner konnte nicht erstellt werden" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "Datei %s kann nicht erstellt werden" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, fuzzy, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Während des Holens von %s von der entfernten Quelle %s: " -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 #, fuzzy msgid "Only realm in authentication request" msgstr "Ungültiger Dbus-Name %s\n" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 #, fuzzy msgid "Invalid realm in authentication request" msgstr "Ungültiger Dbus-Name %s\n" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "Autorisierung fehlgeschlagen: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Legitimierung gescheitert" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 #, fuzzy msgid "Invalid authentication request response" msgstr "Ungültiger Dbus-Name %s\n" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 #, fuzzy msgid "Invalid delta file format" msgstr "Ungültiges Umgebungsformat: %s" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, fuzzy, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Während des Holens von %s von der entfernten Quelle %s: " -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, fuzzy, c-format msgid "Error signing commit: %d" msgstr "Fehler bei der Suche nach dem entfernten %s: %s" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "" + #: common/flatpak-progress.c:236 #, fuzzy, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5119,383 +5195,437 @@ msgstr "Zusätzliche Daten werden heruntergeladen: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Dateien werden heruntergeladen: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Name darf nicht leer sein" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Name darf nicht länger als 255 Zeichen sein" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Name darf nicht mit einem Punkt beginnen" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Name darf nicht mit %c beginnen" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Name darf nicht mit einem Punkt enden" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Nur das letzte Namenssegment darf - enthalten" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Namenssegment darf nicht mit %c beginnen" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Name darf %c nicht enthalten" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "Name muss mindestens 2 Punkte enthalten" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "Architektur darf nicht leer sein" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "Architektur darf %c nicht enthalten" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Zweig darf nicht leer sein" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Zweig darf nicht mit %c beginnen" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Zweig darf %c nicht enthalten" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "Ungültiger Gegenstellenname" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s ist keine Anwendung oder Laufzeitumgebung" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Falsche Anzahl an Komponenten in %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "Ungültiger Name %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "Ungültige Architektur: %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Ungültiger Name %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "Ungültige Architektur: %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "Ungültiger Zweig: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr " Entwicklungsplattform" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr " Plattform" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr "Anwendungsbasis" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr " Fehlersuchsymbole" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr " Quellcode" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " Übersetzungen" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr " Dokumentation" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "Ungültige Kennung %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Falscher Gegenstellenname: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "Keine URL angegeben" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 #, fuzzy msgid "GPG verification must be enabled when a collection ID is set" msgstr "GPG-Überprüfung ist erforderlich, wenn Sammlungen aktiviert sind" -#: common/flatpak-run.c:1241 +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Keine zusätzlichen Datenquellen" + +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "" + +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Ungültiger GPG-Schlüssel" + +#: common/flatpak-repo-utils.c:3237 +#, fuzzy, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Fehler bei der Suche nach dem entfernten %s: %s" + +#: common/flatpak-repo-utils.c:3243 +#, fuzzy, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Fehler bei der Suche nach dem entfernten %s: %s" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "" + +#: common/flatpak-repo-utils.c:3417 +#, fuzzy, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Fehler beim Aktualisieren der Metadaten für »%s«: %s\n" + +#: common/flatpak-repo-utils.c:3764 #, fuzzy -msgid "Failed to open app info file" -msgstr "Öffnen der Informationsdatei der Anwendung fehlgeschlagen: %s" +msgid "Invalid bundle, no ref in metadata" +msgstr "Ungültige Prüfsumme für zusätzliche Daten" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "»Sync-Pipe« konnte nicht erstellt werden" +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Abgleich mit Dbus-Proxy ist fehlgeschlagen" +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "" -#: common/flatpak-run.c:2207 +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, fuzzy, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Öffnen der temporären flatpak-Informationsdatei fehlgeschlagen: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, fuzzy, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Öffnen der temporären flatpak-Informationsdatei fehlgeschlagen: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, fuzzy, c-format msgid "Failed to write to instance id fd: %s" msgstr "Commit %s konnte nicht gelesen werden: " -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, fuzzy, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Zusätzliche lokale Daten %s konnten nicht gelesen werden: %s" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, fuzzy, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Zusätzliche lokale Daten %s konnten nicht gelesen werden: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, fuzzy, c-format msgid "Failed to block syscall %d: %s" msgstr "Fehler: %s %s ist fehlgeschlagen: %s\n" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, fuzzy, c-format msgid "Failed to export bpf: %s" msgstr "Lesen aus der exportierten Datei fehlgeschlagen" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, fuzzy, c-format msgid "Failed to open ‘%s’" msgstr "Öffnen der temporären flatpak-Informationsdatei fehlgeschlagen: %s" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ldconfig ist fehlgeschlagen, Exit-Status %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 #, fuzzy msgid "Can't open generated ld.so.cache" msgstr "Namensraum %s konnte nicht geöffnet werden: %s" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, fuzzy, c-format msgid "Failed to migrate from %s: %s" msgstr "Commit %s konnte nicht gelesen werden: " -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, fuzzy, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Commit %s konnte nicht gelesen werden: " -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +#, fuzzy +msgid "Failed to open app info file" +msgstr "Öffnen der Informationsdatei der Anwendung fehlgeschlagen: %s" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "»Sync-Pipe« konnte nicht erstellt werden" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Abgleich mit Dbus-Proxy ist fehlgeschlagen" + +#: common/flatpak-transaction.c:2210 #, fuzzy, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Warnung: Problem bei der Suche nach zugehörigen Referenzen: %s\n" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, fuzzy, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "Anwendung %s Zweig %s ist nicht installiert" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, fuzzy, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "Anwendung %s Zweig %s ist nicht installiert" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Gegenstelle %s ist deaktiviert. Aktualisierung %s wird ignoriert" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s wurde bereits installiert" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s wurde bereits von der Gegenstelle %s installiert" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, fuzzy, c-format msgid "Invalid .flatpakref: %s" msgstr "Ungültige Commit-Referenz %s: " -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, fuzzy, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "Fehler beim Aktualisieren der Metadaten für »%s«: %s\n" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " "installed: %s" msgstr "" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, fuzzy, c-format msgid "No authenticator installed for remote '%s'" msgstr "Legitimierung wird benötigt, um Software zu aktualisieren" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, fuzzy, c-format msgid "Failed to get tokens for ref: %s" msgstr "Temporäre Datei konnte nicht geöffnet werden: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 #, fuzzy msgid "Failed to get tokens for ref" msgstr "Temporäre Datei konnte nicht geöffnet werden: %s" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" msgstr "jede Gegenstelle" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, fuzzy, c-format msgid "Can't load dependent file %s: " msgstr "Namensraum %s konnte nicht geöffnet werden: %s" -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "Transaktion bereits ausgeführt" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." msgstr "" -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Vom Benutzer abgebrochen" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "" @@ -5542,139 +5672,114 @@ msgstr "" msgid "URI is not absolute, and no base URI was provided" msgstr "" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" msgstr "" -#: common/flatpak-utils.c:906 -#, fuzzy -msgid "Too many segments in glob" -msgstr "Zu viele Argumente" - -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:111 #, fuzzy, c-format -msgid "Invalid glob character '%c'" -msgstr "Ungültige Prozesskennung %s" +msgid "Invalid USB class" +msgstr "Ungültige Kennung %s: %s" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:125 #, c-format -msgid "Missing glob on line %d" +msgid "Invalid USB subclass" msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Trailing text on line %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "on line %d" -msgstr "in Zeile %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:205 #, c-format -msgid "Unexpected word '%s' on line %d" +msgid "USB device queries must be in the form TYPE:DATA" msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:225 #, c-format -msgid "Invalid %s: Missing group ‘%s’" +msgid "Unknown USB query rule %s" msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing key ‘%s’" +msgid "Empty USB query" msgstr "" -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Ungültiger GPG-Schlüssel" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Keine zusätzlichen Datenquellen" - -#: common/flatpak-utils.c:5431 -#, fuzzy, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Fehler bei der Suche nach dem entfernten %s: %s" - -#: common/flatpak-utils.c:5437 -#, fuzzy, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Fehler bei der Suche nach dem entfernten %s: %s" - -#: common/flatpak-utils.c:5684 +#: common/flatpak-usb.c:274 #, c-format -msgid "%s is end-of-life, ignoring for appstream" +msgid "Multiple USB query rules of the same type is not supported" msgstr "" -#: common/flatpak-utils.c:5719 -#, fuzzy, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Fehler beim Aktualisieren der Metadaten für »%s«: %s\n" - -#: common/flatpak-utils.c:6689 -#, fuzzy -msgid "Invalid bundle, no ref in metadata" -msgstr "Ungültige Prüfsumme für zusätzliche Daten" +#: common/flatpak-usb.c:283 +#, c-format +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:6791 +#: common/flatpak-usb.c:291 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgid "USB queries with 'dev' must also specify vendors" msgstr "" -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" msgstr "" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" +#: common/flatpak-utils.c:693 +msgid "Empty glob" msgstr "" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:712 +#, fuzzy +msgid "Too many segments in glob" +msgstr "Zu viele Argumente" + +#: common/flatpak-utils.c:733 +#, fuzzy, c-format +msgid "Invalid glob character '%c'" +msgstr "Ungültige Prozesskennung %s" + +#: common/flatpak-utils.c:787 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" +msgid "Missing glob on line %d" msgstr "" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:791 #, c-format -msgid "No ref specified for OCI image %s" +msgid "Trailing text on line %d" msgstr "" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:795 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgid "on line %d" +msgstr "in Zeile %d" + +#: common/flatpak-utils.c:817 +#, c-format +msgid "Unexpected word '%s' on line %d" msgstr "" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s verlangt eine neuere Version von flatpak (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "Leere Zeichenkette ist keine Zahl" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "»%s« ist keine vorzeichenlose Zahl" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "Zahl »%s« ist außerhalb des zulässigen Bereichs [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "" @@ -5687,44 +5792,48 @@ msgstr "Keine OCI-Gegenstelle" msgid "Invalid token" msgstr "Ungültiges Token" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Ablehnen" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Aktualisieren" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "%s aktualisieren?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "Die Anwendung möchte sich selbst aktualisieren." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" "Der Aktualisierungszugang kann jederzeit in den Datenschutzeinstellungen " "geändert werden." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "Anwendungsaktualisierung nicht erlaubt" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" "Selbstaktualisierung nicht unterstützt, neue Version erfordert neue " "Berechtigungen" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "Aktualisierung unerwartet beendet" @@ -5950,6 +6059,16 @@ msgstr "" "Legitimierung wird benötigt, um Software zu installieren, welche durch die " "Kindersicherung gesperrt ist" +#, fuzzy, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "" +#~ "Kein Eintrag für %s in Zusammenfassung des entfernten Flatpak-" +#~ "Zwischenspeichers" + +#, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Verzeichnis %s kann nicht geöffnet werden" + #~ msgid "install" #~ msgstr "installieren" diff --git a/po/en@boldquot.header b/po/en@boldquot.header deleted file mode 100644 index fedb6a0..0000000 --- a/po/en@boldquot.header +++ /dev/null @@ -1,25 +0,0 @@ -# All this catalog "translates" are quotation characters. -# The msgids must be ASCII and therefore cannot contain real quotation -# characters, only substitutes like grave accent (0x60), apostrophe (0x27) -# and double quote (0x22). These substitutes look strange; see -# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html -# -# This catalog translates grave accent (0x60) and apostrophe (0x27) to -# left single quotation mark (U+2018) and right single quotation mark (U+2019). -# It also translates pairs of apostrophe (0x27) to -# left single quotation mark (U+2018) and right single quotation mark (U+2019) -# and pairs of quotation mark (0x22) to -# left double quotation mark (U+201C) and right double quotation mark (U+201D). -# -# When output to an UTF-8 terminal, the quotation characters appear perfectly. -# When output to an ISO-8859-1 terminal, the single quotation marks are -# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to -# grave/acute accent (by libiconv), and the double quotation marks are -# transliterated to 0x22. -# When output to an ASCII terminal, the single quotation marks are -# transliterated to apostrophes, and the double quotation marks are -# transliterated to 0x22. -# -# This catalog furthermore displays the text between the quotation marks in -# bold face, assuming the VT100/XTerm escape sequences. -# diff --git a/po/en@quot.header b/po/en@quot.header deleted file mode 100644 index a9647fc..0000000 --- a/po/en@quot.header +++ /dev/null @@ -1,22 +0,0 @@ -# All this catalog "translates" are quotation characters. -# The msgids must be ASCII and therefore cannot contain real quotation -# characters, only substitutes like grave accent (0x60), apostrophe (0x27) -# and double quote (0x22). These substitutes look strange; see -# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html -# -# This catalog translates grave accent (0x60) and apostrophe (0x27) to -# left single quotation mark (U+2018) and right single quotation mark (U+2019). -# It also translates pairs of apostrophe (0x27) to -# left single quotation mark (U+2018) and right single quotation mark (U+2019) -# and pairs of quotation mark (0x22) to -# left double quotation mark (U+201C) and right double quotation mark (U+201D). -# -# When output to an UTF-8 terminal, the quotation characters appear perfectly. -# When output to an ISO-8859-1 terminal, the single quotation marks are -# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to -# grave/acute accent (by libiconv), and the double quotation marks are -# transliterated to 0x22. -# When output to an ASCII terminal, the single quotation marks are -# transliterated to apostrophes, and the double quotation marks are -# transliterated to 0x22. -# diff --git a/po/en_GB.gmo b/po/en_GB.gmo deleted file mode 100644 index 045daeaa658e4f9cc83b402aae05c337fb80b2b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 79288 zcmeIbcVJcJ9shq21dM=)xNvY(Mi>cG#VA66Fk~c#ASzM}$xXPBFe>xltYvKOzCs6J@220_GQ0Y*-C0^A+m3zeRKa_Y?v za`A&?RWJ{ZffZ2cvmR~>e-1Z?cR|JXemDfa4awG^=VF^LTf)AmcY=!d2&ni?f|5TB zDqoIv<|o4)P+tglguj4_{~w^z^8={(eFK$#Lk_m_ngO-K-n7uogvF?T1NVhrK*^6g z%<8X%a_0g#1wILjV8K$WKM6{mgd^d3Q1N&aDxNPv)uTT_#p@ks{*BY$>Ib$QYzLLD zqv0Sp11kNOL8X5qR6e&tm9q<>;`0bBf$u`4&){V?KgL1XUkGKt+A#?gp4Cw4v<{Ad zH$kQ6OHldo4%`KP0(XXe54YuLB-|DC45;wdz#ZX{a65Po+zH+UL-<=b4*ne~|97gk z<#{Ajc`t$cz{8>H)rC;y^9jdSpvvjrq2f7Uxefn(sPbP02g7wx@joB#2XBC?5AQ>z z!)H+W^gUGhDXIyAxo|2}yib7&-}#Q$LZ#c?Q0egyRJuI{<^Jh!T9i9M(!IR-Ucn91Ieh-zed)3=|PzhB| z&xCUCW+;E|fJ5QEa0Gl4sy_5yVdZy*>Sy+b(w_xY&XzdyHaHyh*^UoDm9KZ9%F%aF z^=xd?#%Bpsy4FKe4xsAU`B3S3J5>7q1}grq!b130sPOk&83g0u2q^atg9_Kr;BN2= zI1>IEO8yh5{3%#v)gz$NYlc&=g38z9q1yLL;2!W7a0GlA%KvT+HXlbq#rJS1e@}#} zZx=(w`#z{}yZ{xiFQCd*ZKD3iTAnRZ!`39#r|i9TveCq4I09)z+ONsQAr= zDi4Q1g|o@2FM^W44J!VBg37n|oc@2|R;Y)kZ9eS{r=wm5mG4)=Uhqk%^n4zwKD-W< zk8eYT>pQ4)8J)4|I2S74mP7fw3d)}~Q1Lk)j)B)h)u&gX;{QEVc^cJX)2$pT94n#H z?F_g-ycNp-kDd9Jtu}qfL#6j(sC-RBm5-l7`FoAy@1W#9gerf%)>yd_Q1K{ptcA+Q zW1-}(g#F>;uqS*8DqL?sx%Um60JmFf+x-LJT+}~-viB@h{=5wp?|$oSxF$lydokP^ z9trn^r^3DAV^04YI1qK;HtX;1Q1+%mm6uwm@E!$a|5B*%y$BVrf5Kw8^$|8-r$Xh^ zY{vtk%G056Gq?hFhpV8%n}W)ZbD+w>15oAS5jYz@1?R(oN80pX4kdpCRJbpP%ICYG z%H=z70POoioBknGKJ5obz-3VOPJ${gmqNw&X=vgDcSODQk8J*oa-0wQp`U_-;8Acp zcmY&>zRjs0go^KrQ1N&N%HD@i<@Ou64eWW8)gJ^UKLRS<_J&IDsc;u~I8^wLf+4&d zD*lhc?cv|y4zSygu>%LeZQ&9qd#hm~JR1&%4?6ufpxg=8TX%*-rOOm3`&Cfw%Ssr+ z)1cJ1LAm!wxD)&isvZtH+Lp7CQ0ccHR6BhTRD6$uO6N17+`k*D-25KO-EUw|7#?Hm z;c%#YodI`)%~0j#OsH~kFPsXy9UBCT;54XmeLht9o`v%NE2#Y1?I*UL?+1%e9|@K2 z*F)vcJ+L?Y4crwz1NVR*L&bBzaW=h*;qIsx!69%RRQxW1lDi$s-XEay=QF5!y2bHU ze-M=1{!r;~C{(&PL%DYxRQPXzvj2kPKcMPy_Y-Wqw}p~F2r9jgglZ?waq8c}eNq1f zE{20owBcS0hoZg^?hGG>h42ly5A1o8jn7nQ$^le9tc0?6E>yT4fU@@@RJr;VPKLYu z)V32#;C$3)z+vz$I0E)O*^Y(DjZkA9`F&U{QiyO-{5f61*h2Y?0Bep*9aB9 zpTOSmLMZ!JLgmMGP~m$3O75>v{(J*fUv@av=JPlhqOO37-)g9Ocb?;2Q2Fx$lzV@J zd%~@MX7y)5<-=i6{u~Vz&-0-Cc?2r|UxSL*KcM{Sdz#I+39tzDd?@oH;aGSHoC}|Z zk{@)sEvHkV!dDKJevNPvyc{ZDUW5JNKjB!|{R~@fCc?g`XToAw1yzoZg-^n3;1h85 znYR7h=PWxvoClS^N5ie)A3$nw*OcRd!arQ_JqrwItf)yRzs!d1yJrj0aXt^geo6} z=UV$kusiBKp~}xbPJbGd+yQVZEQgBU>2N%}7?!|iUNQZ|I1?)U z9)?QqKSTM~{d}9>eW3EU814nD;6!*blzR`uf$$Tkbn9_}&F5|5IMhXOYq$(<0arU7 z36(y_LB;bF7{b$`((iV-BfQV?1t@nuf(q~VQ1%92X#L*GX3r1zrVP z;JZ-$?;#giHo!rse+(6#3*ol#a<~J$2daH|7OMPz2}8K!#nxU4RC!ngm7f_X^YdX7 zybspF!b@y6a4b*U|9qa0^L`I~?tJi+N-2m7FY-043LW&d;7 z4{r5y>))rummc-r$X7E1tnMR^bdCW%iuQX*F)v!k#I0v z4^`hUgK9T!g9`scP~m$UDt*6(N|)hR*nFA}Rer0X?4RrOuYoGRzlMs}AK`BB11R_U zTxsJo6e`{KgQ|CPpz?1KRQr;Ga_1tb^u7sh4+f~-R0Z{Q63{_8x zpvv9eQ2F-*xC=bh>E8$?|GeX$p~CSoRQmV6+UD2xP~jR074Cze!d>H-f(plxQ1Lwl zDj#lvO80x9>^@o*2+a~)Gq_RoTf_hnG>_dun~OHldq zv17rtHh+gfrQb}bbUO^negl-fW1;ftBFEdD`QwhSL)rfvN`8y$to&|J>b;=cTL6`g z38&6L<@Zma+M6q(!haW3I39&cm*=6cQ0Z_g zlsh*;h3i46eEy>|{~W4b4Yhw|rsD0>e>#s3AUaDE7t4qM!2)4wkqih2xGd$b6u z+_yrxdx6ux7pi}G1x|vW!x3=w?Y0~p1m(|4D0hy9ec_d`2;T10Z$Xv2kKhp4?G79N zVX!~yNl@i#j#Dp#TcK`-1K@h7aGV8|kGDXj*K1DQ>le11O@K200aSVYDcl-f1C@UF z!jbSLD1W=%Y2^k$*(-+f_fV*EvJxtNkA@20MNsj*9m@SDq4N1XD1Z9hWf{UgsK-Nv zdkR!~9}4CFdN={z2xadrsC@biZVCI{ZS4<&A?o2!={6h6zeXtc&Vj0T_dER;pxpTe zsyys)k9B_+I1u$1sB%67s-7GGd%-Hl!=UO>EgTOUq5QiH?gf7f$HDL6SUB!pn-9yO z>cweL?mi8bp0B_{*yBEHzX(>Ku7xW1cflz#|D|0|o&oDnp9EEYK7|Y6uJ_w?Ps53* zPlm(b!%*q@zEcl)z~bWIL~;@hW{EU^zPJ=_xY zfTwNx?FuKN9s<>V9|F}5o(dfeYfiuSb5^|%9EpBCR6Ndvisv=3C%h3VUUxY2r=0#Ze`SuJP z0KbKEVgHwHybps4-wMaIQ0aC&RC@dj%HNBi+`j_K-?yN``#szq_J76ND}+kVu~6aI z4@zz(R5%yI?O+lrJnP{=cotOpUgy+LK;`%Aa0cxDs$GYh?RXSaIk*!Jhc83Pe-GvF zu-9z;7z-7iy`akFG}s%?f{IrKRDE6yWq%2r2akb!!DpcIwdbE~J=h%%LcJWyy&plf zW5+<{>xoe1>K3>Sd<9DWL#X`k^}5yH9;%#;f-;{26^~lSQ{axM?}RExPeawS;0+s} zQBdi+H#Fq{?tpp)RC*o_mA>af#s7M!@^lxJe{aI^@GB_yN55&q^#iDSl!o%}Y$*9( z!Cm2NPW=^BdJTNbn(qshuLr?xVIx#KeJoUZTnpv@b8t`iHB@}Z{@MC_Fx(k+15~_E zf(pl#Q1N;ks+_$E<=(%c@-ckdmh%x%`Mx*Y1(w2{;4&zGkAzB(tDxlWfu?@I0@TmI z5WWT#j&Gp++uudz_&cNSE>9s*TA8lmd%5m4!KEtK4E;8^$yR6D!HU#xl(9E>^% zm98hjA@C}waQ_Y}zVAcT%ivwxFKy+xFI4)}!`3zSVGl z_+u#lA9Ch@fP8KJDPR z8|;hzNVplC1iQn1p~5=_4uc7(a&QXV0-gb9!;9d2_%2lXkN?EV9{?5Z)o>I%9*%@} zK-JebpwjX?=m~eg0$Hm$^{s-UgLF zC&1qDT&QyJbExn>1QpMBpwjC*sQeiEl@0f7sQ5KP$sG-4?-IB@d<6D~uR8q?pyc{} zZPQ^S9Ef@yow?N&Gfz67Vh;Cmb1sZil)fj!_EQ1$Ly$9tjj@ikZiHw(I%dN&zvi@FLb-&R7| z&p?HL9aQ*Efs(rm%Acp;4)AYqSJx`Ev$T{@(xeq^HR7a{4G>Dc@e4}2fb}R^>W-5s{Pv&DtuF+;(s7i zIbH?j?&(nJe>0p0pMpxqep_@S?X}gCSPqqb zr$eRpZBXU)1*rUf9V&mngL}ateQdfffpYJ3sPgwKsC0V~Dxd!f$H8x*@^?(%Zl=E} zb({;8K8v8@c^C}g;ZX5B8Y=xya=a4Cod==9`wW!5PoVt&9IC$b?$^!i>kfxXrxct5 zTVM;k6ApkQwzAw04nkcH6`qw)^<*_vzMcSw!ONi1;|UnTzeCw8=x@uzP^kQz4rRUq zHo=o%9sCbed0)1*jo;~TH0txA;`umKKD`B1&c1QnVSx2_PZ*-V7|MJdRKI?X)4u}B z{$sEod<)9IkD>Bu@HRGH3mj`+_syUR~A5}cYi4R+e66>cKU@*e+*Q6xi?gP z&V|bV3aI+t4AoDrhYJ7Cpu%@MRQf&%l`daG)!S{hv*mXjl>Is={WVbK_iU(mT@81G zzl3t{b*T7!0hR83wzu_eN2vT83e~<$fpTXRR5|(~RDC!T%D)?+-1#Mx+;dRwy#p1G zPoTzS-$IqUUOU+QD~1Z^QYif+q2#Y{ybUTG4?(5>D^U6MK2*5AhVp0FjyBvA9H&5q zV=h#D4};2wqoC6L1SoqKIsNOP!go6y4)2GmcYlFOr_Bc0aT`@@bXhdS`x)<4sWZAA^#A6-xdyr|!A4 zb#GUwbllUar$fc#P^k7M0~P+`pz`lbsC2mkD&6jOe8TC!0_ER_jy-m<`LQ!pJV!x= zYZg>GEQNCChfwxTh05ovo%v%>_39ls3HII9=F?0VqFwcb?<5Q10IY$HJGO z+N)lJt^2z}si#8OTLP8utDy3?1u7kmf~vRYL6xJ6pz`4fsQUOOl>A@d=I|q@|G88D z2QEbaJ6H-U!)|7rdp1-%_5xIU^C>(D?y;K<-_20v>nSLIK8JGuKT!SjcToAW#qQnA z{?<-#H0qVG9G(YF`G@l7Yp8VHeh;hO6DoZwq3X?QD1T0dvUfUE{I7(v{{U1vyb4uM z-hk>CzlSQXLxsC2##D*qmXBjA6b%F(c))}In6`GrvVnSn*{Xs5mv zO8!AO1U?59|9?Z3pWef4x!Ms*Jq9XYr$WW20xBFeQ2BTiRC?Xu)GtGov+l#Kc`;OZ zJrv5HHBjkyB9z=UQ2smzCHD@LyWc_iJF?K0lM<-(JrJtguYyX~qoM3w2$j!wL;3Tj z23I1WAo zRWG}Zw)rp~?vHvIRDHS>Dm|}*h44iv``^L}II+l<`{UpgnZp@yV6h!<90FB-9)_xa zA48@4v@ve{2Gx(84watwIQ2VF`L)GZ+n??MRo`bqmHVYo<>1FoeTn0*p!(mpq0+U- zI2-$h2`9tu6K(uUq3T})l)tAyjZf}&`VT_Ymp5PmEZEcL`?gTw z+Xc$My`BC+Q04CjQ0}dQN}qFJH`xBS6wOwy(#@D##00w0=(KW8;hN2LIA&+T7jfV& zWc9lfwc_M|qfzUp`0mHO!l&OFr$3wfyJLPVb^2B49p>D;3B6;Ht954obn-ujS313i zxL4Wkh5GN@lZC<0QSZa`Gu&xJt=}N-=R0?QW3__4G5dqllhz{V=6LjWardR@AA$Nr z)XySM6J>tyIZ81M^QW9UyE$GBUq$8^%wOT^dR2S!L>Kn94?KU?s9Jb z2sh5)`XRF4pm!nn&tm=ut{YKP4TA(`XQNNoW`1w;_doVF_z+IydLQ!}k^6!3b6?bV zbN>dcaZwsgXfP4KO=lYiW`(O<`13t`kh?6_g$)Oc|hZ}Ej{hsSr(%|=>nE7$QdiQb9uqwF5$tJm9;rw08 z{WA2QbY{*<@QzdOk9jxl8x22@s8>15*K&U}_v$~&Fk|Xq zevfg#9hZJrV|Oa|!{BtTkGWrk+*RD`H<#;&Tt_?k_1tfX*`JV6|2o9UeUJJ8Z-@KW zG1IRJdoQ8ZZx+{y+|PAxEj7B#eXw@|dS77n4%eIL{{fzfUK`iZnE#k-PxLQ=b+CtX zV-&pCxg&gly=tyH^tV7=4|`yT|G}wTFLRxYUL`U&b6?Hne`g?c5cMeKuy-)(2at*X-aUw03<@y#q{chv_EX-cu(ytfnf!Pf7Z?IayXXrhK-cjg%&iy3xH*@x7tq6Vn z8n}Mz^!uXMz_pm`8HDzCGBxlw$h>82@XQkGV^CLcoy+~r$S&l%pG#xt0qC(T5G+T% zIad?+cfyU!npgPW zV$|Cpe>>L&Tp46nqW2sEg{VK`ehPZk+@Hh!6X<^l&qqDgIr16iKS#YQ{4Zu{?)QM_ zz@^at=DVAJcn!y`kh>MR%~4lz|D@9|!o8m8f5Fv)-cPv><$g0{uH(9d`@eCm<6gfB z7QuO_x5nKhs;M%zi}49 z*U0^t`$=$yGrJY`a`#RwNMWwueq2o7gV#_W#B~7IPtbcDK9Bw(65_WNYX4)H9!$n> z{r(iwAMfjE)Jg6ih9ltL(c6vt0q`i)Nw^j2 z3Ap(k_xo{w71w{c?n15K>0Hkudn+f<$5_eyMx)0YCsE@_omt0?S{SLh!VP`1% zCvtx#m;Y^xem`VRb#D9u{t~@02z-dXev7%5qj!OmnFD{%rS*WHIT^`?T>prvrPqc% z{XXDY!?g$3P^Wje<7C`=AA5VE-iiC&kvV{CBKKFLUyA-c-0Rny>vZntI=j-lhx_%& zt>*qp%+BW;h~6DscT0fZV2j`+^cHd7fc(X<1lj+>zrr`U)^Qz<`g+U{=ROUa;Ry7! z-f%SPV%#_cz5TiLTZCREdiov8wGZk?G5d`(zXZLr(YuK2uUucFewyn+F8%h!ZW+7_+RMUXhZKmT-B)0jG1@i{-@Y4!ou&kKOY|E%y&ihIIhz%zW}`@n6+^=acz#? zJg#fGuR`V(uD>C3uH?8@Vy0gS_pfu^X_dk6;ZITjglh*b{RSg@DAzJBmL<$@Ebi$y z9sU~@pkD@4&fQ(OpMu$C=&yx8;JTP=4eF~gYvg(vwSG^bx17uWM*17LCHg-{t{lD& z{}Pisj{B8Pb`S1{aeo8;S2%b7iux26p6%ck&hA<0Uyu44xSUJB?YU0D{08j4$F&Xj zPjkJG{tjGEIJ*}+j)dL0E_d!D67=K#a`+SMkK=xUla<+K=)H`3G1oV!U*p;dnO~v* z2zn=Q9UpT`cKUPOi1`%w3(N|+{{*>|4Ea66^(gAm=-&=cGrIQAL*QWSgk1eGFU5Q} z?$1U4EAIacze9gtsNXNR?%?{F6#NdeFl(;5{S;aMdykt}QD4UO6!(|mu700#9g5q% zxr#8Wm1bg!-tWnfERQ996kLi zxlZN25DtPB(&Tp@vI}4a*%jy?i#qdo1>v;TWJ7IO-Q3)etf_8ErkXNn&aZB&u1|!u zZB5mU$(pb^k#0<8GP#Cz$%aH&T~m|D#B8J!jj5JIm`*gOGRc-yI+@4>VNqDt)Y_Ox zSIeZesVUi1A7-kXYL}t)hOiP$-%CuBBG$c%5G9l(;QfbMzBpYL5UHGtYMQUxh z0(VmBwji9IYHUollmy`n`~)sOIbKBZl~*x;D$C}VSCxg8Witu5aW>ghmr6I9#0jgH zr&?RE5l^u&8%|;oRug@tLJ%%&UA{6=qi`&7t|Gapa?Voka`l?(WJC3G64J-h1STgp zhGxRT8WW#zXl6v%l!_%)fMIn*I#FHQmQ6otE>BlC)vUn6#*CAhjxI*Nb#6Ip+#xKu z)@g7$(+}&?sYaJn1XQ7Rfr&*wmb7sJpKQ`=N+fFWHf$iP(_tNGu3iux3SdQ+=W!7(O&JJgiM6Y{E9AQmev- zL6`d*mNE6d zrL8$(+!`IWW(Z?*^JrfbmGp^qEr}+Rj-7d<7C?S<8ioye9<>i`o!ZSBmxMu4Sea<9 zPNqpfpSi9cn;IDu6;;>P7B#1+&uw9Kx}KJ%sU;IOw$i37PpCq+tVo2a!QsM1(-t1G zu&Qi+@!YaQCLdHfZ&6vUb&{`@jH{_`8r~Ap9Hm>rwaJzh;qJTbj-aabn#BJbuX0`3 zkZ+}7U28)_QFC>=x;|aqyn@o0sYxfB)j}&WM2bvz4b7$syGFS!C=HvEH8$hJmXyi* zj&5#9B<518DN)prY*MLiRMK}6x($hBU8<-EN-HYDX_ci5rq8B@oL^0?aYZ>*m($?Z zw5HQ|W#pHXR?b>9zidI(JL|7e!&=!&6KvXNW9-X8ra4iQtVtYH!$_N|G_^$BaRJqA8J9ziul{%9JW&(msZ!l+h{#r40=snV_mf7q})N4SHOR zRDe=zn@lSbQaB}&VNjrgy1X^B5y7@hOQNx(93z2Ma#*d%Mjh=`xV^)5iRzZtw8Gs| zl&mES8kZ;QTT`vn_EbY_W0Pr2vznRKy1L}Ll2GklaZsuhAgXjX*`C!ky3wG*OXT*7 z*4pS?dmTGT#1dp)NoI*!ou#A0lEx*;+S-PMZWBwIYL}`#E~#5WtFTllW4oI$(a?}= z&LoepZ6U7sVU0rL??aXMbj=F$N0yhjHsQ2NTclN!YNlO4Naik1IRcHUj;`Y67-SOF zvKDtN!)PpWtd#+u8QNuanrk%{jN72j7-KR9$C51!o5(GNC9$rVnkC_|&{yUaDH?a$ zn`WZT=!truws19VH&t-7vT1E~hH}%;7B-V$(p%23tzFJ!GV~SUyz=R#RddQ0X!KDX z7W+OXL(kukC^Dm5n_PIZ0SoCwZW9%2uY=N-upv=RkZB0bz|zMf)+n`7Zy4&@F}T8_ z_$1S`D9Y?qQyrz11j(f8TGm!`lhX&5{;#&9wnPK;4cqo*!TbC_ire;WNFiCZf_&Ow zKpRuF$vQgmFk@?P6iQ0w1}#QKEF4luMr_QVtoSBIs?`?QjuV0Z&3 z-)!gZTI~%--&%+VCZ+jG4f83IvnjKdk#QRX8&x9oLQ_-BbgtA7rCl?aDJcl1mCraN zu-&jjG@8m5*lE>Fn(S;Z8tP3mvyQ;RjiMNWB^sMs+H!R%&@I&r&4$+G>c_@hStBZd zng{D_NnmHJwbYFo&GuB=eS2D$Y+|H*1fBc_gpy6kmSoprwvqT>MC{nvHyq0~ur87( zCJ@XZ%yg7NeMVuo4X+zHcapBt%jeB2o2~|_h*o=g`TY5%3oIGp81)>$@Wixk8nmlX zp=&N;6qacj4eJvI8rG2CMMbSm+{zAvTGws3oU3h3Yl7pt1K&)0Ns>6Sl}@E1Czx;2 zde)ZL65pQQg^xA2s@Byt(Lubs)*ogSmh7GmFnN)F2bgwqT!U8Qg~G&K)v*4DBl7eej zB$3XBnIS3DQ5#~{UQ%&s%k99sM*TI5GG;=hH54U7eApdKHxp4bxMMCK$^z zwr#H>6HJGliJT+)w0_O$)S6^1O;V0sSBSIDy|e!Op_zBqU!bb&>Z2ABn$T(qY0OD$ z2CClkxU|jPnDZsvn^go29Z18t(zFD2qGq(IY(6N;9ivAktzh`XnnpCHG9@hXlqO9j zPSXuFA5pg^Z?WvNt#C|hCOu-b8Fr1SR<>DlLS-9|n1)7-rmHifLMv$F!8#rViwf_@ zK-oLyZf2n^GV&_~5@F?{C7jmQlE{RM)5#W;a?fg4rI<6|Y^!nBNO~Ek*~+4*dIHm8 z#m8Evkf*#c^K)8YRY~0Tny&OS{YqCyiDUX+RS=1(B{nXTDw!4zd|JdE(aM*`!z$v8P@N-cWJytS$}GvsYuj*F`|@SlQ?m-ECCfSqvq+U<)PORY zmq)g!{frw}+Nv>2EV7bd7G6W^XdTvEwZ>-g@@iFCYDr=postR((!q?PY0S5n9k0>q zgYn+9W-4uK(!h+`EC9%laN&%(VdbI)RdcvsVn;n%MwkwN?@x_3TDgJ0Xio1RcbKwBBfreH=gV|EqPvDtx%omWN%ww6-^8LUN`TDftZ2@W(j zRJYL@P|8_`Nl`9Hl%!n&@?Dyfww0W+mkQfbtxUaXcnO!EI3`=j&6JuvrXJZfqfS?C zV(UhmY9+hS6Sv`)d#qlKZJ=rs4J|Y^CSP36E7S^_?T|*>QFSfrS!TpZENn{IQJ@vo zf&{gtHep&ZMAWtA7^!7*Q`pXoGpU+YjLmb5l1(cZK;{gH>`2pfrp^POrs;$leKYX$ zF)-^h)lF?~i0`$@D{axaWt5oiI%bAu_b$0S*^q2$qp8%&cSA!Y!)Vtfi1*gCIUQ3( z<6<#LKrJaDVfIZCQF(LvrXIG9 z@k!|iNq){#qm`H$uHZ#CAxnF7h)%mCx>M=3;|n#KY82R-$}u%%5QEw=Luo{F&HR83 z6mj;|(Jl0;7HPsfS>X-r7CD^9X=%WOw zNKXn)OJyUPmujS)Er?{ZUoJ(s{dRTCG!vAitF<~97OSybqwc6IohH&+LY4lw@srkZ zg-Loo)2Y%jH#1A8S@g5lTnl?mT({T6jf-orDfeB|;uah@HLbqg;=(ZY)@ zsIGFjf=x*^fj54uEoE1rE<7SZdgZtn%q%OdT2xsU%$!p;Z^mc_-Q3NSl6^VOulQnP zS|Xe38E-g?zP#hgFe`KkW6KpoFTJSAYSZ*|bgbi`T>&stA>G)`YvYo=T|&k$4Q6tP z1YZ;^_7&}@6UE9@YntUyQzNq?ZYY##Yh=@Ql~!?BX=_Zf$!w-+uKmc$`}Hu}nNbxv zF;P5jY-R*&a~qc`>QuJHhs{oUH8gG)O26KxM%&D;vtAh^o7V~DZILU2?Od=?V!)tN zCLLnsO;b$sseLva(F{$oBmp&_H9cAf>t>};_LT3oMa>4#7%pGSuDwi)S7y`;kjm`> zXvAC-!E&*4r!%3>Gt$`i%L1{iuuBqn*h$)1GxdT+MRX-h!rk6)HuP~3oxNh)*KQAI zMbygpiN2C1=D9I)GgDtz)!)P|t9N!O+`)D`Gd28KtC_Z@8oOXutFbC0+jVU*S=u0l4ew1R(qw2T(n%FV!sK_tb{n#yX%VXk$;=Assc9Y6_?vdeR^MP|?m;7! z7dK7~X0ijXX_(pcq+)7q#b=Z`Z&V!4!9yM3s7Y~PwUZ;6UAxJ(T(F4rbMy2% zZ!?o@*xHqp9VM9T?MlRrv$HZfKEc}23RRi{V=K0@ zTc=#``@U?E*iF;WuiLv&8(Z-ya?aK(U1N6M&o&eLt`sJAoNI$wmF0^nCUcHxi9JZP zG?=AR6?SKYVZR-Fcul31nGGnYz6B-7)=FoluH}@Bwz}>9ubCE^M91S`mJXP>DT-Xz za!c$0N3MCyK)FME&v3M^HI4mr*S1W3j#35e%2XIqk&Qt=!y9co0m>#_ ztIItvsdFEhRY^|M)MDN5;u`0yt!h@9lPzYtsrj0QgQ`LVATHnKl5fmS`hTrQGQ3d# zV#X11Co+i|&HKVSGdhc#tf8Hb+4Czrb8Lsv_2FXNFkK2Al9^C=r5Zi!zprwUq%&&g zg(<#X#+GFT)$WuzSB*AR&i7*3JG&+k8ALKB=e69R(X%tQr9lP3gdAmLsEva;Zc&y3 zlbx2UPif}3EAz!J%`=IHx|nH6IA7<}DSBoJDeC$<6;ZF@`^HE>r#sE|o#qqf?3$nN zsDMRc{&)~ozYG0lQ(_|v-W4_4jLcQs)QQs8#0s=qvY1>xZ^oP%lNXdNR(t1?#w{wl zA!wv)N`SW3%;0`}}t);m8> z*Uq8sn%(?9I$L9gKOJHpg(PyoY)W<(8ntgK{Hg)YRTrwRU0uRh+`DC-I?%=p+MQ$3PU|w8R63k;anj=!W(eVW`%FM3JzI)+FGu&odWCX_Svg`O9J-_d1Gc@Pw zciawgR>sG~%>OjIqV#(E^d3wCn18cMDa$7R5@Tu;%UkQ6H{QDKooVDq9inF+8L%!P zqLT||MJtxxJcJIgP&o4coys~)yoCW6Z^vd#JemSQJiYiL0X6vypzkxqp zgH1DJ%mzY7lqqdy8^Mf7wai={cR+crC($~VXmcPScQ#U8tL8c|CQ5?nqz0>GJjJ8d zRI!qgKgaEo7&~d5jxvt|=8UzwHW{so!uckuWdo=DYO^V7)`xXI%D8F@yGcnUpFB6i z92)inC+tJU>#>p0#vHX{Bjc`Iazh&2AnNSmCj7>Y^|~_=jlPr$?7L+;liHvYShkDL zIlFfAtJkTwqGd=lu(G+_bz*iKlQ_F==R!BxDhU@Xnm@f_5zn2?cPr#!>_AeamvbU1 z(xn=$VErvYai?sk$lHYtT7wMj3z;1FvGDN8X55#3D#R`2*%ehUWkxS7QJQCX7<13J zhp_2)sn0F+x*D@~*1pV7>3}|m_RPdMu`W^5YUfpE<)t8)&k2(xlZtE;kbT@yIiL}P z&I_2bZL6!DW2YEfXKkBp6?c-Uo*1UvM!U+blj0O2Tktf1uZ!8TZJcR7W0QH4^@@x; zAGd-b`Px)^m1?4ihHL+9A2VOikY%UuZK{ecb8V~7vu6zrc)C%s)+QAlE9s-^4{I8K zaal)qt(@-E&yYw(MRsAwta9ht-^6pjCUo9U)d-ats_rVrU4hwJFnwlGIKv;|>E`v=STaQ_% z{jz1SS_^5(RBhald9QzpFxOVhAlF_dQE#53v*C@2Is5L}Mjw`_7>#$n6Jm2F#U3m) zW!;Wy>=~C_Q?q$uYoq251v2%uBkDq}X8R>bR|uF~LO)5o^h#$~I6K^E6Oy=Wg;%0jbmr`aUOH$04(i{oa^B6eo(n>z4 zHLKy_CQX5)%A^`t;>`vmyQuG_v%yh{XP4S-+BlE@7bi`{?r6a;n7Cu#=J<`tght=W z$6HR51(^nx=7}UNS!yl)COH<%DO19-8oyq?W0Bm`_h@aZhvEX0#8UF>Be3 z(yG#BObQng-!(~&>zY=I#muCVh)&tGI@yU)wjsw6pIwa{DwKD0LOeF8UY8+&Mq`;( zTG6*Vjy53n5mM5QdZ0!$QCqCU=_D%V86daP{{NYHm;;r*YMbgxK_SPpTFR65Q+v}` z#LIVQmO7eK9&1y@rYIOs>^MWkG&&%Mp*f7j+UUi465$fDg2$J_B`S?W zGfRW`LS^~FD$eA_x*2!EfF*Pte~T|w1m)&U3Jyfi9LZHnT&%9gn);(8S#9>{r`w5p zIXf_BoSLz3)(Fb=h^H%PwxVI8!fQ=vff&G(rZ7g-_m=mGVd0RYvZPAjH5 z4Bm<1@&t`+B4*0OO6y;V&>U2EOIG$VJ2f3XQL-cdqH&Yi>StrQg@;y6;O$(pUD%t0 zaxl2znIe(9rjwOZRZ?>r&0M6BG%Hjz$!;Sda#e=rbt^5^ z>|D655e)};GGtSP!omgRi%od^1XHe!2s9bipQ^IT1%aNUsi>S&UOA`gkf6e>@|8gH ztb+HFt}#QCWltS;7+NAx!|DBKp@7`+)sBWpk<`Ke zjZ1YBr%kbD1_1FNT;2paWYI8cJ)y*S%<|vbboPd1fQv z&NYgaWu*(t7X-{8xy-wZx?VN%%as0s7c=)}N)!zvgUW7p7qV`MK|fA)t~HuwfTy8=9R!=9o}J$t<7mJc8FxO? zG~GmaNGIzE#d4=af82~oQ)=SsM+oW`;>95>jJ(pgh%&$o!8l?k`$Wx-;`GQZvFuQu zw3el(8g~n;%-J5=WZEEeFpsrfd(y||Cg-`SQ!A1z-rx;GLvsugSD6^3(iwT`J2eG5 zO%$?PDs0kG`a3DBWey`pMjFT?VaD^j56$duvcSa9>nfJ+k* z;ASWq+RiE_rb!23Q4TX&@Rk%Z<1gB|5+i|M{|+01l!R(M_ZQAJyL zwCCu(x7{1DbYtA8q4NR_tS2dI3M64Q15^J%{JxBT(=>hF13#}*bu132o99W@W>L`T z_%m7=bXB+|p;r=_S5TM%j7folg zCb`pg^&8$ysmF>h2Z(j^bvC^c=jzP#+Tg1&iK&5>dm0!V#Hy~K1#pfj!W`A8}+`YlW ztzh|Lrt_}xR?k(H|IGp~6R>YCQUj4q5#^=kZCd2Z)m@X)OUTRy>SSKQ?8Cn13Vb>?loU0v9ljS(8w>r5U3JplrZj$z_qL@A^I-(g= zMz4SJGf|_39do{gk)?n2Al(qMQP1ZF>(bPq)suE%qc87qR?Kut1vqjWxxH zT*{0|+W=%RHxDPXio7Dx&^#P9CBvL+W)Z`vat6@GA@=MQV*7S9S?FxGZ|p`(4D973 z%^)x=GzSJ0p2(0@Ho4;Kb~J2t$BJd9;i~+!lU=H?=3v^^H8!)3`_c2b(Y)%hUI!QH zbXY>sL-r;Bdi4k1aTJ4ds(P|tFA74s*fhXuy9`s)Yc&}CnD=lRN3`B* zj&vH8o{6$Ta>f)m*M!o{D$%op;;dNiY$)1R*mUvcRM(EV2B5}t9abzlWMG2qORP2H z)FjJMR0{fF^_a=DFJY$WtNvL*qs-PsWrxvf(fY2Axll&kMzR^8WY->zueN%4x9lo_ zF=(c6`x28aeoio^VbYf1L?zY+i>}PymLFue#ND|rybe= zg)%xC5RX=*srESQaP%~Ewj9Wb&XX)#nLClz11E70d4#|`C}&pzvOfA3TEyBz`DnHb zqD-K}VP(uUWLdi$D_E1Xul38ern2q3k*sJ`6=ZB1#JHiU9yz5br_nT)+*lzBl&e5F zvGjWF^U>?K&#;zci*HEfM@uTzz!*mx)yyxo^pFjtS%}D~w6b9)rnS8C(H^&GpSn3U z&dA2I($(PT7@oDwBuFnPl;0aZLAKD%7_#NSOeE|~MB{?&Ji?21AwU6hnG)GC56>{_ z(fMx0jwzda@k5mBW&)j+=xP-2ov`Z|3(dYEzA=1fjU$MwO(8MOp4KGoYcu?U7(*5k zKUnCDmG*WZYR*pI(`xssGfcaD z>VbDn$98r|B>(PdZp?BZTK43WnSR8xJkYb;RXp0Q=PK-o(#@2JL3T80I+PZoVP!im z9hp^g{oyH%`4vIcoGM0eRfkmYM{5Z|73qVEzC$wEXWsZ_PG7iUOqa?WucRQvxL~?} zbqE!JgrNNEp#>K>vz^+Bn{L9aC#D<-_>%N>MN zD&oJ6C6GY1wLJ2W;;GMgLT8E#XrT0VB9kI^63jx_szkFr5mwh~UbY!86D-6McnzcV z#~d}`Je-Ewc8Lm8;^_-8s}MHgekmu4VNj*HRF!Gc%wJpMs#1*o$Vz`KITLst4xwm7 zZ1$Ep_3SH6B#B3(RT5bs=UBFh6;bhrK%(;>T{`C<81+8mUKf7*ao)*HL$(WvY{TSzp(NTA%9L)RZt1GS@5Tu6^mBlEE0eLnS6z%?leaX~1a~Wc}tg zIm7#~s?y9JOxHo$YoXJh3&Wr(qj8iLKci(s9r~hIP&cWCFtubnVUt+S5l?&0&MghA zGu^O+KWd$oVu^^7ZQShCm5%0FH|z@~XrP(dsiwF}rx6IRvs)Ay<3STcK+Qhgwu0VS z95ZLF1Iy;o)8=F|afqy%7kH`BHXDpI)+(8HHldSgMwcxonmbB=Tg;+)f;n1F)QXm? z@b1ZgtQYq14{c`5w%ahYvIQ96haJRnkge9X53y`p!~&aHc2`Ou9jUaR^zM7*nOUSY&peo=;v8q(dxWx2L~Kady-z!OdSXMe zJW@hqx@n^BeL))zFRg((g6wvvsW^I0bWxM_EW09tj(?Ct;}RzIX0y({s%4RVaDwfN zC=a_VAx@NWf_aTy;O%-169`+py_xkeYF*8et~#cuMra+ux#Ok0+EtYH+MPTB=NxGF z0G!vgBOwj=+*x#Ipm1o=V;CbUeVsmPK~1d z)Tp)S%z;SCjO;rR?JW77SQI;2aqaI#;d2Ht9SwcWdv1LM3?x*or9nM@%W}UT?%KnK$~n13 z3(!tZx~>z+ZuT1~8iGVas@a@likc>D+jU5DvMjq-fd}f)DW~+A6j0>c(vda@T+G~D z4#Tu0SfGrZLq^Ax1v8M9B#YPufn8|j0IT~T#X)72=2c4v*<=kIOM=Cvl?&!9m{k%^ z;{jy$g`+X3iCh`yuWes#dLlc_imcezvYH;t2->IS$mDi%W#&ajTHjYlP1STqv&@^& zi%g3~huFC__fD@(v5|eNgLhJkmF5hX$*&F})05gJ%I18OLPw>cFIO$>T-Xep^?pht zljFL78N5Fc;-XWX)@~Gs&lmf<>1GK65Bx5m-}mt?P(cS-z09(S(XD$wM5lrqe^aQ2 z`Rzj0#hXKI({1aTS+ejmYzixT170P^_T|b6uzQPWYr9tbe{gaG&Y9}%qaW)Ba)K1I zU(VvUX)I&!V~b?jxUZ>hrOt7b*-fyb&WUqvQHE`*BRW->n_3&)lZ|`h4!h7&WZ#1k z3$}g2GYS+326kCBe z16S6TG0;SfX4!mkNX4Os#}XJ@vW%;yGW3Vgm=~wQ;XGbHd_>lg*+(^^or~#J&$XSu z-m!439OR%q^VoFhxwo;z+|?=rMb=1k6GJ}48{Y%pjXfS0+Fh2@U6*bplUL{`K+ zJFQb*nnCLnP|T}Nq@oJt4mxhgMJEzfqE2K@WOOvnorG|s!B|#g!{E=O)3C+^seM~T z*IA_?n~vDbMC2on*VqFyb}_Ebym_{(9fC+){dreHQCX%0JJ%&nF>BZ1E;cU}=0&C$ z_-E9$66YpN8vJWDNA=3Se%PLXWjP}|b8l~=(H-j{ZiynYszfm>YuQ183T*sDevZ%1 zN3D{ZwlSM}U7KVBnrqF!0xRfn3`)cQ&NR)rBRld~V!nr@hl9;Co4!kQgDIKHEIR$k zG()+~VPHj1<=cI;WNENOTgOX`t4n2Pezp0EV9ul@SmGZN8e0#71noqt^gs~K&zTWLF19@un5wzVCcE7wb%*toP4qGh^ICYz)X>_% zG}I+QL#>TTS7K4kbmyAwlgqL2#bOe~X6S6_>3bA`N|45MtYx#NU{2)QJ&wSQF74On z_-n+X?k{MyvtVeRgl8p?6&c^}``)tJO>=X0k4%>mKkqI7nfI}HWZx;`-p@&QrwsrJ)7mN%ZsTyW8A9abw38%)`4Pvlhhw zOP@(Nlu-Qp9I5Z*Sru8&V;hP&{FL@wkHg_dIzD*0gP|%JB8k{P#RH z)uchA-RLl;4A9IPtM+G`6^%!_u+o`+yWx^tb_4Y;n!uQVKO7@V`R{r1)V6KneVc7} zj?Id)X|c^7PI%ui(`tslN%zw|*?q4xX zH50MecNt3KA92u_%WQOc!RX~Ix!?U{aU=gd&;Q|jo*CAQI4D_~od?D5b-bvQ#l7f* zn*McA`R{q=zvr3%o+q0$oA!mx_&Tb6(lY)D%?*5y)h(F&8ULpF<`#eD>84qT2j>6J z-}BUw$7yDGo89tbqL7`;*w?&vA!a8v|BFced!FX>zTGoqg@e@<&C7URGXFhK^XmKj z_dM%(O3$qu=v0ZeFY@2>)W;;Fw-rR|uWTl`;hA7W9V^8J`h5eMK zIXGwE9PZvE7#&5+f6tRo8O9#PjNQAm&415RM+CBa{&boCyNNo$y_Sas%m=&q#Gzi| z=w2~pUNFTI!1_8i^_SwvdorwqJwW1KU>-fe#@cA?Y@ZX=jyJ7>KNV~aZR8r6bA@(g z%bw}THO~FUn)N^bJ8$F!*4P7vqEmID#v#n36aBg-iNjP_dN9pCV%u> zNw3ub9UjYn&y!Qx9Zq1zzs0Flx$HA2+N{*+K;GJ$|DI>;lZN^4c}AZ$^}WME`JF_M?*d?|H`Fa}a%Xvy%@JMoH%%faHW$v{z`3vzkW=^WXDiqbvVC&lpNd!G64dCo86`DS+tCwg6WcFQmSJx}*BP>wR?zvrnJI%)$h+Vjo6*NX4$nKzy1 zzvtOTiQx?*`R{q^xr_YwJoDf4^shI|f6vo>m$co-JN2p3c3OH>UHj8Fxh-!OmZFw9 zGUpg#{(GK!Ne&;$)*^%H#q;0u%zw|5X|jJRGygqL^9INSJvN`&&^xW%M@ZcZTXS9` z7#A_0a>{?t(|oI#2Os{g`JN|RmF9$f{(GM0J-qax`R{r1jE?;RA}_gTTg}b`{ns4w z-}7{n;{5kKc_ARn1kHR@$i99ysMK3f-7B~A-}B6W&olalvA#fRz7m@Mo~Qk;Xa0Mh z|L5QHS#~(>wnAoxTnBYBwNkubuy%XY>uy=p}0A>sHy5Aknuu?H7!E3g&!;BmX^5`<>3% zJHPVZ^K>7=%zw{Q-&o0h#VXNany=WWB&XZY=H$QU>E3p(^W)Lsn)tajKb^PlGK{`@ zxv8Jx^k2J)zC0BF(B`H(lK-A({(GL$*SyWU&)jE1^WXE-*WL5q^Gw_2fsSALWKlo= ZJ\n" "Language-Team: English - United Kingdom \n" @@ -18,104 +18,104 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Gtranslator 3.32.1\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Export runtime instead of app" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Arch to bundle for" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARCH" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Url for repo" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Url for runtime flatpakrepo file" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Add GPG key from FILE (- for stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "FILE" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "GPG Key ID to sign the OCI image with" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "KEY-ID" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "KEY-ID" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "GPG Homedir to use when looking for keyrings" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "HOMEDIR" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "OSTree commit to create a delta bundle from" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "COMMIT" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Export oci image instead of flatpak bundle" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -123,58 +123,58 @@ msgstr "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "LOCATION, FILENAME and NAME must be specified" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Too many arguments" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "'%s' is not a valid repository" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "'%s' is not a valid repository: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "'%s' is not a valid name: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "'%s' is not a valid branch name: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -209,7 +209,7 @@ msgstr "DIR" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Where to look for custom sdk dir (defaults to 'usr')" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Use alternative file for the metadata" @@ -229,104 +229,105 @@ msgstr "Log session bus calls" msgid "Log system bus calls" msgstr "Log system bus calls" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "DIRECTORY must be specified" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "Build directory %s not initialised, use flatpak build-init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "metadata invalid, not application or runtime" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "No extension point matching %s in %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Missing '=' in bind mount option '%s'" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Unable to start app" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Source repo dir" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "SRC-REPO" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Source repo ref" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "SRC-REF" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "One line subject" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "SUBJECT" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Full description" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "BODY" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Update the appstream branch" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Update the appstream branch" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Don't update the summary" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "GPG Key ID to sign the commit with" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "Mark build as end-of-life" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "REASON" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -334,369 +335,374 @@ msgstr "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "OLDID=NEWID" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 #, fuzzy msgid "VAL" msgstr "VALUE" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "Override the timestamp of the commit (NOW for current time)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "TIMESTAMP" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 #, fuzzy msgid "Don't generate a summary index" msgstr "Don't update the summary" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "DST-REPO [DST-REF…] - Make a new commit from existing commits" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "DST-REPO must be specified" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "If --src-repo is not specified, exactly one destination ref must be specified" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" "If --src-ref is specified, exactly one destination ref must be specified" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 #, fuzzy msgid "Either --src-repo or --src-ref must be specified" msgstr "Either --src-repo or --src-ref must be specified." -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "Invalid name %s in --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "Could not parse '%s'" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 #, fuzzy msgid "Can't commit from partial source commit" msgstr "Can't commit from partial source commit." -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: no change\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Architecture to export for (must be host compatible)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Commit runtime (/usr), not /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Use alternative directory for the files" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "SUBDIR" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Files to exclude" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "PATTERN" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Excluded files to include" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "Mark build as end-of-life, to be replaced with the given ID" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Override the timestamp of the commit" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "Collection ID" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "WARNING: Error running desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "WARNING: Error reading from desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "WARNING: Failed to validate desktop file %s: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "WARNING: Can't find Exec key in %s: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "WARNING: Binary not found for Exec line in %s: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "WARNING: Icon not matching app id in %s: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "WARNING: Icon referenced in desktop file but not exported: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Invalid uri type %s, only http/https supported" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "Unable to find basename in %s, specify a name explicitly" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "No slashes allowed in extra data name" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Invalid format for sha256 checksum: '%s'" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Extra data sizes of zero not supported" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "LOCATION and DIRECTORY must be specified" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "‘%s’ is not a valid collection ID: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "No name specified in the metadata" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Commit: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Metadata Total: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Metadata Written: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Content Total: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Content Written: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Content Bytes Written:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Command to set" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "COMMAND" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Flatpak version to require" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "MAJOR.MINOR.MICRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Don't process exports" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Extra data info" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Add extension point info" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NAME=VARIABLE[=VALUE]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Remove extension point info" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NAME" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Set extension priority (only for extensions)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "VALUE" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Change the sdk used for the app" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Change the runtime used for the app" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "RUNTIME" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Set generic metadata option" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GROUP=KEY[=VALUE]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Don't inherit permissions from runtime" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "Not exporting %s, wrong extension\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "Not exporting %s, non-allowed export filename\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "Exporting %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "More than one executable found\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "Using %s as command\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "No executable found\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Invalid --require-version argument: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "Too few elements in --extra-data argument %s" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -705,7 +711,7 @@ msgstr "" "Too few elements in --metadata argument %s, format should be " "GROUP=KEY[=VALUE]]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -715,62 +721,63 @@ msgstr "" "Too few elements in --extension argument %s, format should be " "NAME=VAR[=VALUE]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, fuzzy, c-format msgid "Invalid extension name %s" msgstr "Invalid dbus name %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "DIRECTORY - Finalise a build directory" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Build directory %s not initialised" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Build directory %s already finalised" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Please review the exported files and the metadata\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Override the ref used for the imported bundle" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REF" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Import oci image instead of flatpak bundle" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Ref '%s' not found in registry" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "Multiple images in registry, specify a ref with --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "Importing %s (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "LOCATION FILENAME - Import a file bundle into a local repository" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "LOCATION and FILENAME must be specified" @@ -882,211 +889,214 @@ msgstr "'%s' is not a valid application name: %s" msgid "Build directory %s already initialized" msgstr "Build directory %s already initialised" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Arch to install for" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Look for runtime with the specified name" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "LOCATION [ID [BRANCH]] - Sign an application or runtime" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "LOCATION must be specified" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "No gpg key ids specified" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Redirect this repo to a new URL" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "A nice name to use for this repository" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "TITLE" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "A one-line comment for this repository" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "COMMENT" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "A full-paragraph description for this repository" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "DESCRIPTION" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "URL for a website for this repository" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "URL for an icon for this repository" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Default branch to use for this repository" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "BRANCH" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "COLLECTION-ID" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 #, fuzzy msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" msgstr "Permanently deploy collection ID to client remote configurations" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "Permanently deploy collection ID to client remote configurations" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 #, fuzzy msgid "Name of authenticator for this repository" msgstr "URL for an icon for this repository" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 #, fuzzy msgid "Autoinstall authenticator for this repository" msgstr "URL for an icon for this repository" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 #, fuzzy msgid "Don't autoinstall authenticator for this repository" msgstr "Default branch to use for this repository" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 #, fuzzy msgid "Authenticator option" msgstr "Show options" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 #, fuzzy msgid "KEY=VALUE" msgstr "VALUE" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Import new default GPG public key from FILE" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "GPG Key ID to sign the summary with" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Generate delta files" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Don't update the appstream branch" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "Max parallel jobs when creating deltas (default: NUMCPUs)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "NUM-JOBS" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "Don't create deltas matching refs" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Prune unused objects" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "Only traverse DEPTH parents for each commit (default: -1=infinite)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "DEPTH" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Generating delta: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Generating delta: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Failed to generate delta %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Failed to generate delta %s (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "LOCATION - Update repository metadata" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Updating appstream branch\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Updating summary\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Total objects: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "No unreachable objects\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "Deleted %u objects, %s freed\n" @@ -1158,37 +1168,37 @@ msgstr "Can only use one of --list, --get, --set or --unset" msgid "Must specify one of --list, --get, --set or --unset" msgstr "Must specify one of --list, --get, --set or --unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Look for app with the specified name" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Arch to copy" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "DEST" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, fuzzy, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " "suppress this message.\n" msgstr "Warning: Omitting related ref ‘%s’ because it is not installed.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "Warning: Omitting related ref ‘%s’ because it is not installed.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1197,12 +1207,12 @@ msgstr "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " "collection ID set.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, fuzzy, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "Warning: Omitting related ref ‘%s’ because it is not installed.\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1211,54 +1221,54 @@ msgstr "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " "distribution of ‘%s’." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, fuzzy, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "Warning: Omitting related ref ‘%s’ because it is not installed.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "MOUNT-PATH and REF must be specified" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "Ref ‘%s’ found in multiple installations: %s. You must specify one." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "Refs must all be in the same installation (found in %s and %s)." -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " "this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1266,7 +1276,7 @@ msgstr "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" @@ -1339,19 +1349,20 @@ msgstr "FILE - Get information about an exported file" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Not exported\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "What information to show" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "FIELD,…" @@ -1370,7 +1381,7 @@ msgid "Show the document path" msgstr "Show the document path" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Origin" @@ -1384,7 +1395,7 @@ msgid "Show applications with permission" msgstr "Show applications with permission" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Permissions" @@ -1511,12 +1522,12 @@ msgid "Show the kind of change" msgstr "Show the kind of change" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Ref" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Show the ref" @@ -1525,24 +1536,24 @@ msgid "Show the application/runtime ID" msgstr "Show the application/runtime ID" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Arch" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Show the architecture" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Branch" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Show the branch" @@ -1554,7 +1565,7 @@ msgstr "Installation" msgid "Show the affected installation" msgstr "Show the affected installation" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Remote" @@ -1563,7 +1574,7 @@ msgid "Show the remote" msgstr "Show the remote" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Commit" @@ -1583,7 +1594,7 @@ msgstr "Show the previous commit" msgid "Show the remote URL" msgstr "Show the remote URL" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "User" @@ -1600,7 +1611,7 @@ msgid "Show the tool that was used" msgstr "Show the tool that was used" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Version" @@ -1628,10 +1639,12 @@ msgid " - Show history" msgstr " - Show history" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "Failed to parse the --since option" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "Failed to parse the --until option" @@ -1647,11 +1660,11 @@ msgstr "Show system-wide installations" msgid "Show specific system-wide installations" msgstr "Show specific system-wide installations" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Show ref" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Show commit" @@ -1663,15 +1676,15 @@ msgstr "Show origin" msgid "Show size" msgstr "Show size" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Show metadata" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Show runtime" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Show sdk" @@ -1683,8 +1696,8 @@ msgstr "Show permissions" msgid "Query file access" msgstr "Query file access" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1702,7 +1715,7 @@ msgstr "Show location" msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "NAME [BRANCH] - Get info about an installed app or runtime" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "NAME must be specified" @@ -1711,85 +1724,87 @@ msgstr "NAME must be specified" msgid "ref not present in origin" msgstr "ref not present in origin" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Warning: Commit has no flatpak metadata\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Ref:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Arch:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Branch:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Version:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "License:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Collection:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Installation:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Installed:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Runtime:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Date:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Subject:" @@ -1802,15 +1817,15 @@ msgid "Latest commit:" msgstr "Latest commit:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Commit:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Parent:" @@ -1819,14 +1834,14 @@ msgid "Alt-id:" msgstr "Alt-id:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "End-of-life:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "End-of-life-rebase:" @@ -1835,146 +1850,147 @@ msgid "Subdirectories:" msgstr "Subdirectories:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Extension:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Origin:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Subpaths:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "unmaintained" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "unknown" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Don't pull, only install from local cache" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Don't deploy, only download to local cache" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Don't install related refs" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Don't verify/install runtime dependencies" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Don't use static deltas" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Assume LOCATION is a .flatpak single-file bundle" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Assume LOCATION is a .flatpakref application description" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "Check bundle signatures with GPG key from FILE (- for stdin)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Only install this subpath" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Automatically answer yes for all questions" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Uninstall first if already installed" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "Produce minimal output and don't ask questions" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 #, fuzzy msgid "Update install if already installed" msgstr "Uninstall first if already installed" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Bundle filename must be specified" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Remote bundles are not supported" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Filename or uri must be specified" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "At least one REF must be specified" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Looking for matches…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, fuzzy, c-format msgid "No remote refs found for ‘%s’" msgstr "No remote refs found similar to ‘%s’" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Invalid branch %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Nothing matches %s in local repository for remote %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Nothing matches %s in remote %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Skipping: %s\n" @@ -2012,51 +2028,51 @@ msgstr "List installed applications" msgid "Arch to show" msgstr "Arch to show" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "List all refs (including locale/debug)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "List all applications using RUNTIME" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Name" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Show the name" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Description" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Show the description" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "Application ID" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Show the application ID" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Show the version" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Runtime" @@ -2064,7 +2080,7 @@ msgstr "Runtime" msgid "Show the used runtime" msgstr "Show the used runtime" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Show the origin remote" @@ -2076,7 +2092,7 @@ msgstr "Show the installation" msgid "Active commit" msgstr "Active commit" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Show the active commit" @@ -2088,35 +2104,35 @@ msgstr "Latest commit" msgid "Show the latest commit" msgstr "Show the latest commit" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Installed size" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Show the installed size" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Options" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Show options" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, fuzzy, c-format msgid "Unable to load details of %s: %s" msgstr "Unable to load metadata from remote %s: %s" -#: app/flatpak-builtins-list.c:189 -#, c-format +#: app/flatpak-builtins-list.c:188 +#, fuzzy, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Unable to create sync pipe" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - List installed apps and/or runtimes" @@ -2128,7 +2144,7 @@ msgstr "Arch to make current for" msgid "APP BRANCH - Make branch of application current" msgstr "APP BRANCH - Make branch of application current" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "APP must be specified" @@ -2152,10 +2168,12 @@ msgid "" msgstr "" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "" @@ -2171,26 +2189,26 @@ msgstr "Show existing overrides" msgid "[APP] - Override settings [for application]" msgstr "[APP] - Override settings [for application]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABLE] [ID] - List permissions" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Table" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Object" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "App" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Data" @@ -2250,10 +2268,12 @@ msgid "[PATTERN…] - disable automatic removal of runtimes matching patterns" msgstr "" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "" @@ -2332,127 +2352,127 @@ msgstr "Show when the change happened" msgid " - Enumerate running sandboxes" msgstr " - Enumerate running sandboxes" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Do nothing if the provided remote exists" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "LOCATION specifies a configuration file, not the repo location" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Disable GPG verification" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Mark the remote as don't enumerate" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Mark the remote as don't use for deps" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "Set priority (default 1, higher is more prioritised)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORITY" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 #, fuzzy msgid "The named subset to use for this remote" msgstr "A nice name to use for this remote" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "A nice name to use for this remote" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "A one-line comment for this remote" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "A full-paragraph description for this remote" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "URL for a website for this remote" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "URL for an icon for this remote" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Default branch to use for this remote" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Import GPG key from FILE (- for stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Set path to local filter FILE" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Disable the remote" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 #, fuzzy msgid "Autoinstall authenticator" msgstr "Invalid dbus name %s" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 #, fuzzy msgid "Don't autoinstall authenticator" msgstr "Don't uninstall related refs" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "Can't load uri %s: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Can't load file %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NAME LOCATION - Add a remote repository" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "GPG verification is required if collections are enabled" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "Remote %s already exists" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, fuzzy, c-format msgid "Invalid authenticator name %s" msgstr "Invalid dbus name %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "Warning: Could not update extra metadata for '%s': %s\n" @@ -2479,60 +2499,60 @@ msgstr "Remove them?" msgid "Can't remove remote '%s' with installed refs" msgstr "Can't remove remote '%s' with installed refs" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "Commit to show info for" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Display log" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Show parent" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Use local caches even if they are stale" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " REMOTE REF - Show information about an application or runtime in a remote" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "REMOTE and REF must be specified" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Download:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "History:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Commit:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Subject:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Date:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Warning: Commit %s has no flatpak metadata\n" @@ -2561,7 +2581,7 @@ msgstr "Show the URL" msgid "Show the collection ID" msgstr "Show the collection ID" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "" @@ -2618,39 +2638,39 @@ msgstr "Show icon" msgid " - List remote repositories" msgstr " - List remote repositories" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Show arches and branches" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Show only runtimes" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Show only apps" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Show only those where updates are available" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Limit to this arch (* for all)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Show the runtime" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Download size" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Show the download size" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr " [REMOTE or URI] - Show available runtimes and applications" @@ -2782,226 +2802,233 @@ msgstr "Error reinstalling %s: %s\n" msgid "- Repair a flatpak installation" msgstr "- Repair a flatpak installation" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Removing non-deployed ref %s…\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Skipping non-deployed ref %s…\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, fuzzy, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "Verifying %s…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "" -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "Deleting ref %s due to missing objects\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "Deleting ref %s due to invalid objects\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "Deleting ref %s due to %d\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "Remote %s for ref %s is missing\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "Remote %s for ref %s is disabled\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "Pruning objects\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "Erasing .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "Reinstalling refs\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "Reinstalling removed refs\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "While removing appstream for %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "While deploying appstream for %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Repo mode: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "" -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Title: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Comment: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Description: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Homepage: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Icon: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "Collection ID: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Default branch: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "Redirect URL: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "Deploy collection ID: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, fuzzy, c-format msgid "Authenticator name: %s\n" msgstr "Invalid dbus name %s" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, fuzzy, c-format msgid "Authenticator install: %s\n" msgstr "Show options" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "GPG key hash: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, fuzzy, c-format msgid "%zd summary branches\n" msgstr "%zd branches\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Installed" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Download" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 #, fuzzy msgid "History length" msgstr "History:" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Print general information about the repository" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "List the branches in the repository" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Print metadata for a branch" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Show commits for a branch" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 #, fuzzy msgid "Print information about the repo subsets" msgstr "Print general information about the repository" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "LOCATION - Repository maintenance" @@ -3094,11 +3121,11 @@ msgstr "" msgid "Use PATH instead of the runtime's /usr" msgstr "" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "APP [ARGUMENT…] - Run an app" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "runtime/%s/%s/%s not installed" @@ -3115,15 +3142,15 @@ msgstr "Remotes" msgid "Show the remotes" msgstr "Show the remotes" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "TEXT - Search remote apps/runtimes for text" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "TEXT must be specified" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "No matches found" @@ -3203,6 +3230,7 @@ msgid "" msgstr "" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Nothing unused to uninstall\n" @@ -3227,6 +3255,7 @@ msgid "Warning: %s is not installed\n" msgstr "%s branch %s is not installed" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "" @@ -3268,6 +3297,7 @@ msgid "With --commit, only one REF may be specified" msgstr "At least one REF must be specified" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Looking for updates…\n" @@ -3277,40 +3307,41 @@ msgid "Unable to update %s: %s\n" msgstr "Unable to update %s: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Nothing to do.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "Remote ‘%s’ found in multiple installations:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Which do you want to use (0 to abort)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "No remote chosen to resolve ‘%s’ which exists in multiple installations" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" "Hint: Use flatpak remote-add to add a remote" msgstr "" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, fuzzy, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Remote ‘%s’ found in multiple installations:" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3319,137 +3350,128 @@ msgstr "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" "Use this ref?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "No ref chosen to resolve matches for ‘%s’" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "Found installed ref ‘%s’ (%s). Is this correct?" -#: app/flatpak-builtins-utils.c:521 -msgid "All of the above" -msgstr "All of the above" - #: app/flatpak-builtins-utils.c:522 #, c-format -msgid "Similar installed refs found for ‘%s’:" -msgstr "Similar installed refs found for ‘%s’:" - -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 -#, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" +msgid "All of the above" +msgstr "All of the above" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:523 #, c-format -msgid "No remote chosen to resolve matches for ‘%s’" -msgstr "No remote chosen to resolve matches for ‘%s’" +msgid "Similar installed refs found for ‘%s’:" +msgstr "Similar installed refs found for ‘%s’:" -#: app/flatpak-builtins-utils.c:593 +#: app/flatpak-builtins-utils.c:581 #, c-format msgid "Remotes found with refs similar to ‘%s’:" msgstr "Remotes found with refs similar to ‘%s’:" -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:584 +#, c-format +msgid "No remote chosen to resolve matches for ‘%s’" +msgstr "No remote chosen to resolve matches for ‘%s’" + +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "Updating appstream data for user remote %s" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Updating appstream data for remote %s" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Error updating" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "Remote \"%s\" not found" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Ambiguous suffix: '%s'." #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Invalid suffix: '%s'." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Ambiguous column: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Unknown column: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Available columns:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Show all columns" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Show available columns" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsisation" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "Required runtime for %s (%s) found in remote %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Do you want to install it?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "Required runtime for %s (%s) found in remotes:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Which do you want to install (0 to abort)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, fuzzy, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Configuring %s as new remote '%s'" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3461,7 +3483,7 @@ msgstr "" "Should the remote be kept for future installations?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3472,128 +3494,128 @@ msgstr "" " %s\n" "Configure this as new remote '%s'" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Installing…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Installing %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Updating…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Updating %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Uninstalling…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Uninstalling %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Info: %s was skipped" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, fuzzy, c-format msgid "Warning: %s%s%s already installed" msgstr "%s already installed" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, fuzzy, c-format msgid "Error: %s%s%s already installed" msgstr "%s already installed" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, fuzzy, c-format msgid "Warning: %s%s%s not installed" msgstr "%s branch %s is not installed" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, fuzzy, c-format msgid "Error: %s%s%s not installed" msgstr "%s/%s/%s not installed" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, fuzzy, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "%s needs a later flatpak version" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, fuzzy, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "%s needs a later flatpak version" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 #, fuzzy msgid "Warning: Not enough disk space to complete this operation" msgstr "Not enough disk space to complete this operation" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 #, fuzzy msgid "Error: Not enough disk space to complete this operation" msgstr "Not enough disk space to complete this operation" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, fuzzy, c-format msgid "Warning: %s" msgstr "Warning: " -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, fuzzy, c-format msgid "Error: %s" msgstr "Error:" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, fuzzy, c-format msgid "Failed to install %s%s%s: " msgstr "Failed to rebase %s to %s: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, fuzzy, c-format msgid "Failed to update %s%s%s: " msgstr "Failed to %s %s: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, fuzzy, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Failed to rebase %s to %s: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, fuzzy, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Failed to rebase %s to %s: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, fuzzy, c-format msgid "Authentication required for remote '%s'\n" msgstr "Authentication is required to update remote info" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, fuzzy, c-format msgid "" "\n" @@ -3601,7 +3623,7 @@ msgid "" "%s%s%s branch %s%s%s\n" msgstr "Info: %s is end-of-life, in preference of %s\n" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, fuzzy, c-format msgid "" "\n" @@ -3609,7 +3631,7 @@ msgid "" "%s%s%s\n" msgstr "Info: %s is end-of-life, in preference of %s\n" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, fuzzy, c-format msgid "" "\n" @@ -3618,117 +3640,113 @@ msgid "" msgstr "Info: %s is end-of-life, in preference of %s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, fuzzy, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Info: %s is end-of-life, with reason: %s\n" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, fuzzy, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Info: %s is end-of-life, with reason: %s\n" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, fuzzy, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Info: %s is end-of-life, with reason: %s\n" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, fuzzy, c-format msgid "Info: applications using this extension:\n" msgstr "" "\n" " Finding applications and runtimes" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, fuzzy, c-format msgid "Info: applications using this runtime:\n" msgstr "" "\n" " Finding applications and runtimes" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "Updating to rebased version\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "Failed to rebase %s to %s: " -#: app/flatpak-cli-transaction.c:1009 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Failed to rebase %s to %s: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, fuzzy, c-format msgid "New %s%s%s permissions:" msgstr "New %s permissions:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, fuzzy, c-format msgid "%s%s%s permissions:" msgstr "%s permissions:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Warning: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Op" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "partial" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Proceed with these changes to the user installation?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Proceed with these changes to the system installation?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Proceed with these changes to the %s?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Changes complete." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Uninstall complete." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Installation complete." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Updates complete." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "There were one or more errors" @@ -4040,34 +4058,34 @@ msgstr "" "XDG_DATA_DIRS environment variable, so applications installed by Flatpak may " "not appear on your desktop until the session is restarted." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" "Multiple installations specified for a command that works on one installation" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "See '%s --help'" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, fuzzy, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "'%s' is not a flatpak command. Did you mean '%s'?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "'%s' is not a flatpak command" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "No command specified" @@ -4130,16 +4148,16 @@ msgstr "%s Failed to %s %s: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Error reinstalling %s: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s already installed" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s not installed" @@ -4168,57 +4186,53 @@ msgstr "Info: %s is end-of-life, with reason: %s\n" msgid "Failed to rebase %s to %s: %s\n" msgstr "Failed to rebase %s to %s: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Failed to rebase %s to %s: %s\n" - #: common/flatpak-auth.c:58 #, fuzzy, c-format msgid "No authenticator configured for remote `%s`" msgstr "Authentication is required to update remote info" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Unknown share type %s, valid types are: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Unknown policy type %s, valid types are: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Invalid dbus name %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Unknown socket type %s, valid types are: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Unknown device type %s, valid types are: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Unknown feature type %s, valid types are: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, fuzzy, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4227,184 +4241,218 @@ msgstr "" "Unknown filesystem location %s, valid locations are: host, home, xdg-*[/…], " "~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Invalid env format %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "--add-policy values can't start with \"!\"" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "--remove-policy values can't start with \"!\"" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Share with host" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "SHARE" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Unshare with host" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Expose socket to app" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "SOCKET" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Don't expose socket to app" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Expose device to app" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "DEVICE" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Don't expose device to app" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Allow feature" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "FEATURE" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Don't allow feature" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "Expose filesystem to app (:ro for read-only)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "FILESYSTEM[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Don't expose filesystem to app" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "FILESYSTEM" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Set environment variable" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VAR=VALUE" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 #, fuzzy msgid "Remove variable from environment" msgstr "Remove item from permission store" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 #, fuzzy msgid "VAR" msgstr "VALUE" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Allow app to own name on the session bus" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "DBUS_NAME" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Allow app to talk to name on the session bus" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "Don't allow app to talk to name on the session bus" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Allow app to own name on the system bus" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Allow app to talk to name on the system bus" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "Don't allow app to talk to name on the system bus" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Allow app to own name on the system bus" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Add generic policy option" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "SUBSYSTEM.KEY=VALUE" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Remove generic policy option" -#: common/flatpak-context.c:1549 -#, fuzzy -msgid "Persist home directory subpath" -msgstr "Persist home directory" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "FILENAME" +#: common/flatpak-context.c:1696 +#, fuzzy +msgid "Persist home directory subpath" +msgstr "Persist home directory" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Don't require a running session (no cgroups creation)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4413,421 +4461,418 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, fuzzy, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "Can't create deploy directory" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Unable to load summary from remote %s: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "No such ref '%s' in remote %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 -#, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 +#, fuzzy, c-format +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "No entry for %s in remote '%s' summary flatpak cache " -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "No summary or Flatpak cache available for remote %s" -#: common/flatpak-dir.c:921 -#, fuzzy, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "No entry for %s in remote '%s' summary flatpak cache " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, fuzzy, c-format msgid "Missing xa.data in summary for remote %s" msgstr "No oci summary cached for remote '%s'" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, fuzzy, c-format msgid "Unsupported summary version %d for remote %s" msgstr "No summary cached for remote '%s'" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "Remote OCI index has no registry uri" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, fuzzy, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Couldn't find latest checksum for ref %s in remote %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "Image is not a manifest" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "Commit has no requested ref ‘%s’ in ref binding metadata" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, fuzzy, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "Commit has no requested ref ‘%s’ in ref binding metadata" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "Couldn't find latest checksum for ref %s in remote %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, fuzzy, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "No entry for %s in remote summary flatpak sparse cache " -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "Unable to connect to system bus" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "User installation" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "System (%s) installation" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "No overrides found for %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "%s (commit %s) not installed" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "Error parsing system flatpakrepo file for %s: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "While opening repository %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "The config key %s is not set" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, fuzzy, c-format msgid "No current %s pattern matching %s" msgstr "Don't create deltas matching refs" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "No appstream commit to deploy" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "Can't pull from untrusted non-gpg verified remote" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "Extra data not supported for non-gpg-verified local system installs" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Invalid checksum for extra data uri %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Empty name for extra data uri %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Unsupported extra data uri %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Failed to load local extra-data %s: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Wrong size for extra-data %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "While downloading %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Wrong size for extra data %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Invalid checksum for extra data %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s commit %s already installed" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "While pulling %s from remote %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "GPG signatures found, but none are in trusted keyring" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, fuzzy, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "Commit has no requested ref ‘%s’ in ref binding metadata" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 #, fuzzy msgid "Only applications can be made current" msgstr "" "\n" " Finding applications and runtimes" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Not enough memory" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Failed to read from exported file" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Error reading mimetype xml file" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Invalid mimetype xml file" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "D-Bus service file '%s' has wrong name" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, fuzzy, c-format msgid "Invalid Exec argument %s" msgstr "Invalid require-flatpak argument %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "While getting detached metadata: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "Extra data missing in detached metadata" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "While creating extradir: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Invalid checksum for extra data" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Wrong size for extra data" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "While writing extra data file '%s': " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "Extra data %s missing in detached metadata" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "apply_extra script failed, exit status %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "While trying to resolve ref %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s is not available" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Can't create deploy directory" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Failed to read commit %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "While trying to checkout %s into %s: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "While trying to checkout metadata subpath: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "While trying to checkout subpath ‘%s’: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "While trying to remove existing extra dir: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "While trying to apply extra data: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Invalid commit ref %s: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "Deployed ref %s does not match commit (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "Deployed ref %s branch does not match commit (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s branch %s already installed" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "" -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "This version of %s is already installed" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "Can't change remote during bundle install" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "Can't update to a specific commit without root permissions" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "Can't remove %s, it is needed for: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s branch %s is not installed" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "%s commit %s not installed" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "Pruning repo failed: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "Failed to load filter '%s'" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "Failed to parse filter '%s'" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "Failed to write summary cache: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "No oci summary cached for remote '%s'" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, fuzzy, c-format msgid "No cached summary for remote '%s'" msgstr "No oci summary cached for remote '%s'" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "Invalid checksum for extra data %s" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " @@ -4836,246 +4881,275 @@ msgstr "" "Remote listing for %s not available; server has no summary file. Check the " "URL passed to remote-add was valid." -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "Invalid checksum for extra data %s" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "Multiple branches available for %s, you must specify one of: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Nothing matches %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Can't find ref %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Error searching remote %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Error searching local repository: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s not installed" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Could not find installation %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "Invalid file format, no %s group" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Invalid version %s, only 1 supported" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "Invalid file format, no %s specified" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "Invalid file format, gpg key invalid" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "Collection ID requires GPG key to be provided" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Runtime %s, branch %s is already installed" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "App %s, branch %s is already installed" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "Can't remove remote '%s' with installed ref %s (at least)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Invalid character '/' in remote name: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "No configuration for remote %s specified" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, fuzzy, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Skipping non-deployed ref %s…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, fuzzy, c-format msgid "Unable to open path \"%s\": %s" msgstr "Unable to update %s: %s\n" -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, fuzzy, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "Unable to create sync pipe" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, fuzzy, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "Unable to update %s: %s\n" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "Empty string is not a number" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "“%s” is not an unsigned number" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "Number “%s” is out of bounds [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "Ref %s not installed" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "App %s not installed" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "Remote '%s' already exists" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "As requested, %s was only pulled, but not installed" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, fuzzy, c-format msgid "Unable to create directory %s" msgstr "Unable to create sync pipe" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, fuzzy, c-format msgid "Unable to lock %s" msgstr "Unable to lookup key ID %s: %d)" -#: common/flatpak-instance.c:581 -#, fuzzy, c-format -msgid "Unable to open directory %s" -msgstr "Unable to connect to system bus" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, fuzzy, c-format msgid "Unable to create temporary directory in %s" msgstr "Can't create deploy directory" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, fuzzy, c-format msgid "Unable to create file %s" msgstr "Unable to create sync pipe" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, fuzzy, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Unable to update %s: %s\n" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 #, fuzzy msgid "Only realm in authentication request" msgstr "Invalid dbus name %s" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 #, fuzzy msgid "Invalid realm in authentication request" msgstr "Invalid dbus name %s" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, fuzzy, c-format msgid "Authorization failed: %s" msgstr "Invalid dbus name %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 #, fuzzy msgid "Invalid authentication request response" msgstr "Invalid dbus name %s" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 #, fuzzy msgid "Invalid delta file format" msgstr "Invalid env format %s" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "No gpg key found with ID %s (homedir: %s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, fuzzy, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Unable to lookup key ID %s: %d)" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "Error signing commit: %d" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Wrong layer checksum, expected %s, was %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "No ref specified for OCI image %s" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Wrong ref (%s) specified for OCI image %s, expected %s" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5096,316 +5170,369 @@ msgstr "Downloading extra data: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Downloading files: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Name can't be empty" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Name can't be longer than 255 characters" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Name can't start with a period" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Name can't start with %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Name can't end with a period" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Only last name segment can contain -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Name segment can't start with %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Name can't contain %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "Names must contain at least 2 periods" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 #, fuzzy msgid "Arch can't be empty" msgstr "Branch can't be empty" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, fuzzy, c-format msgid "Arch can't contain %c" msgstr "Branch can't contain %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Branch can't be empty" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Branch can't start with %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Branch can't contain %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 #, fuzzy msgid "Invalid remote name" msgstr "Bad remote name: %s" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s is not application or runtime" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Wrong number of components in %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, fuzzy, c-format msgid "Invalid name %.*s: %s" msgstr "Invalid name %s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, fuzzy, c-format msgid "Invalid arch: %.*s: %s" msgstr "Invalid branch %s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Invalid name %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, fuzzy, c-format msgid "Invalid arch: %s: %s" msgstr "Invalid branch %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, fuzzy, c-format msgid "Invalid branch: %s: %s" msgstr "Invalid branch %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, fuzzy, c-format msgid "Wrong number of components in partial ref %s" msgstr "Wrong number of components in runtime %s" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 #, fuzzy msgid " development platform" msgstr "Use development runtime" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr "" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 #, fuzzy msgid " application base" msgstr "Application" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr "" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr "" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 #, fuzzy msgid " translations" msgstr "Installation" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr "" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "Invalid id %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Bad remote name: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "No url specified" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 #, fuzzy msgid "GPG verification must be enabled when a collection ID is set" msgstr "GPG verification is required if collections are enabled" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Failed to open app info file" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "No extra data sources" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Unable to create sync pipe" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "Invalid %s: Missing group ‘%s’" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Failed to sync with dbus proxy" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "Invalid %s: Missing key ‘%s’" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Invalid gpg key" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Error copying 64x64 icon for component %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Error copying 128x128 icon for component %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, fuzzy, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s is end-of-life, ignoring\n" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "No appstream data for %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Invalid bundle, no ref in metadata" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Metadata in header and app are inconsistent" -#: common/flatpak-run.c:2207 +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "No systemd user session available, cgroups not available" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "Unable to allocate instance id" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Failed to open flatpak-info file: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Failed to open bwrapinfo.json file: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, fuzzy, c-format msgid "Failed to write to instance id fd: %s" msgstr "Failed to write summary cache: " -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "Initialise seccomp failed" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, fuzzy, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Failed to add architecture to seccomp filter" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, fuzzy, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Failed to add multiarch architecture to seccomp filter" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, fuzzy, c-format msgid "Failed to block syscall %d: %s" msgstr "Failed to block syscall %d" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, fuzzy, c-format msgid "Failed to export bpf: %s" msgstr "Failed to export bpf" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "Failed to open ‘%s’" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ldconfig failed, exit status %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "Can't open generated ld.so.cache" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "Failed to migrate from %s: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "Failed to migrate old app data directory %s to new name %s: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Failed to create symlink while migrating %s: %s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Failed to open app info file" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Unable to create sync pipe" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Failed to sync with dbus proxy" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Warning: Problem looking for related refs: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "The application %s requires the runtime %s which was not found" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "The application %s requires the runtime %s which is not installed" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "Can't uninstall %s which is needed by %s" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Remote %s disabled, ignoring %s update" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s is already installed" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s is already installed from remote %s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "Invalid .flatpakref: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "Error updating remote metadata for '%s': %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " @@ -5414,56 +5541,56 @@ msgstr "" "Warning: Treating remote fetch error as non-fatal since %s is already " "installed: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, fuzzy, c-format msgid "No authenticator installed for remote '%s'" msgstr "Authentication is required to update remote info" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, fuzzy, c-format msgid "Failed to get tokens for ref: %s" msgstr "Failed to determine parts from ref: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 #, fuzzy msgid "Failed to get tokens for ref" msgstr "Failed to determine parts from ref: %s" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 #, fuzzy msgid "any remote" msgstr "Remote" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, fuzzy, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "Flatpakrepo URL %s not HTTP or HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "Can't load dependent file %s: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "Invalid .flatpakrepo: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "Transaction already executed" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." @@ -5471,16 +5598,16 @@ msgstr "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Aborted by user" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "Skipping %s due to previous error" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, fuzzy, c-format msgid "Aborted due to failure (%s)" msgstr "Aborted due to failure (%s)" @@ -5527,137 +5654,113 @@ msgstr "" msgid "URI is not absolute, and no base URI was provided" msgstr "" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "Empty glob" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "Too many segments in glob" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "Invalid id %s: %s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" -msgstr "Invalid glob character '%c'" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" -msgstr "Missing glob on line %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" -msgstr "Trailing text on line %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "on line %d" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "Unexpected word '%s' on line %d" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "Invalid %s: Missing group ‘%s’" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "Invalid %s: Missing key ‘%s’" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Invalid gpg key" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "No extra data sources" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Error copying 64x64 icon for component %s: %s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Error copying 128x128 icon for component %s: %s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, fuzzy, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s is end-of-life, ignoring\n" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "No appstream data for %s: %s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Empty glob" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "Invalid bundle, no ref in metadata" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "Too many segments in glob" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" - -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "Metadata in header and app are inconsistent" +msgid "Invalid glob character '%c'" +msgstr "Invalid glob character '%c'" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "Missing glob on line %d" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "Wrong layer checksum, expected %s, was %s" +msgid "Trailing text on line %d" +msgstr "Trailing text on line %d" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "No ref specified for OCI image %s" +msgid "on line %d" +msgstr "on line %d" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "Wrong ref (%s) specified for OCI image %s, expected %s" +msgid "Unexpected word '%s' on line %d" +msgstr "Unexpected word '%s' on line %d" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "Invalid require-flatpak argument %s" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s needs a later flatpak version (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "Empty string is not a number" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "“%s” is not an unsigned number" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "Number “%s” is out of bounds [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "" @@ -5671,43 +5774,45 @@ msgstr "" msgid "Invalid token" msgstr "Invalid gpg key" -#: portal/flatpak-portal.c:2264 -#, fuzzy +#: portal/flatpak-portal.c:2337 +#, fuzzy, c-format msgid "No portal support found" msgstr "No summary found" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 #, fuzzy msgid "Update" msgstr "update" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, fuzzy, c-format msgid "Update %s?" msgstr "Updating %s\n" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "" -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 -#, fuzzy +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, fuzzy, c-format msgid "Update ended unexpectedly" msgstr "Update signed runtime" @@ -5928,6 +6033,30 @@ msgid "" "parental controls policy" msgstr "Authentication is required to install software from $(path)" +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" + +#, fuzzy, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "No entry for %s in remote '%s' summary flatpak cache " + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Failed to rebase %s to %s: " + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Failed to rebase %s to %s: %s\n" + +#, fuzzy, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Unable to connect to system bus" + #~ msgid "install" #~ msgstr "install" diff --git a/po/es.gmo b/po/es.gmo deleted file mode 100644 index a4aeb4a2fa2a286cb16933819491fef8bd479845..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 82298 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 I5{?)D1A~xzJ^%m! diff --git a/po/es.po b/po/es.po index af02579..ad05de7 100644 --- a/po/es.po +++ b/po/es.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" -"PO-Revision-Date: 2021-09-05 14:48+0200\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2023-02-12 21:33+0100\n" "Last-Translator: Rodrigo Lledó Milanca \n" "Language-Team: Spanish - Spain \n" "Language: es\n" @@ -18,107 +18,107 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 3.0\n" +"X-Generator: Poedit 3.2.2\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Exportar la rutina en tiempo de ejecución en lugar de la aplicación" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Arquitectura para la que empaquetar" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARQUITECTURA" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Url del repositorio" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Url del archivo flatpakrepo la rutina en tiempo de ejecución" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Añadir clave GPG desde ARCHIVO (- para stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "ARCHIVO" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "ID de la clave GPG con la que firmar la imagen OCI" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "ID-CLAVE" - -# "Llaveros" is the literal translate of keyrings, but in spanish don't mean exactly the same in software slang. A more correct translation would be "repositorios de claves" that means "key repositories". #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "ID-CLAVE" + +# "Llaveros" is the literal translate of keyrings, but in spanish don't mean exactly the same in software slang. A more correct translation would be "repositorios de claves" that means "key repositories". +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "Carpeta de inicio de GPG que usar al buscar depósitos de claves" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "CARPETA_DE_INICIO" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "Commit de OSTree desde el que crear un paquete de diferencias" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "COMMIT" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Exportar una imagen oci en lugar de un paquete flatpak" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -126,58 +126,58 @@ msgstr "" "UBICACIÓN NOMBRE_ARCHIVO NOMBRE [RAMA] - Crear un paquete único desde un " "repositorio local" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "Se deben especificar UBICACIÓN, NOMBRE_ARCHIVO y NOMBRE" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Demasiados argumentos" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "«%s» no es un repositorio válido" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "«%s» no es un repositorio válido: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "«%s» no es un nombre válido: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "«%s» no es un nombre de rama válido: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -213,7 +213,7 @@ msgstr "CARPETA" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Donde buscar la carpeta personalizada de SDK (predeterminado: «usr»)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Usar un archivo alternativo para los metadatos" @@ -233,106 +233,107 @@ msgstr "Llamadas al bus de registro de sesión" msgid "Log system bus calls" msgstr "Llamadas al bus de registro de sistema" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "CARPETA [COMANDO [ARGUMENTO…]] - Compilar en la carpeta" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "Se debe especificar la CARPETA" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "" "La carpeta de compilación %s no está inicializada, use el comando flatpak " "build-init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "metadatos no válidos, sin aplicación o «runtime»" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "No hay un punto de extensión que coincida con %s en %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Falta un «=» en las opciones del punto de montaje «%s»" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "No se pudo iniciar la aplicación" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Carpeta del repositorio de código fuente" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "SRC-REPO" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Referencia del repositorio de código fuente" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "SRC-REF" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Tema en una línea" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "TEMA" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Descripción completa" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "CUERPO" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Actualizar la rama de appstream" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Actualizar la rama de appstream" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "No actualizar el resumen" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "ID de la clave GPG con la que firmar el«commit»" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "Marcar la versión como fin de ciclo" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "RAZÓN" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -340,378 +341,383 @@ msgstr "" "Hacer que las referencias que coinciden con el prefijo OLDID como fin de " "ciclo se reemplacen con el NEWID dado" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "OLDID=NEWID" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "Establecer el tipo de testigo necesario para instalar este «commit»" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "VAL" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "Sobrescribir la marca de tiempo del «commit» (NOW para la hora actual)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "MARCA_DE_TIEMPO" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "No generar un índice de resumen" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" "REPO-DEST [REF-DEST…] - Realiza un «commit» nuevo basado en en los «commit» " "existentes" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "Se debe especificar REPO-DEST" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "Si no se especifica --src-repo, se debe especificar exactamente una " "referencia de destino" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" "Si se especifica --src-ref, se debe especificar exactamente una referencia " "de destino" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "Se debe especificar --src-repo o -src-ref" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" "Formato de argumento no válido usado en --end-of-life-" "rebase=IDANTERIOR=IDNUEVO" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "Nombre %s no válido en --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "No se pudo analizar «%s»" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "" "No se puede hacer un «commit» a partir de otro «commit» de fuente parcial" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: sin cambios\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Arquitectura en la que exportar (debe ser compatible con el anfitrión)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "«Runtime» del «commit» (/usr), no /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Usar un carpeta alternativa para estos archivos" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "SUBCARPETA" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Archivos que excluir" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "PATRÓN" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Archivos excluidos que incluir" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "Marcar la versión como fin de ciclo para reemplazarla con el ID dado" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Sobrescribir la marca en tiempo del «commit»" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "ID de la colección" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "ADVERTENCIA: error al ejecutar desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "ADVERTENCIA: error al leer de desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "ADVERTENCIA: error al validar el archivo desktop %s: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "ADVERTENCIA: no se puede encontrar la clave Exec en %s: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "ADVERTENCIA: no se encontró el binario de la línea Exec en %s: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "" "ADVERTENCIA: el icono no coincide con el ID de la aplicación en %s: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" "ADVERTENCIA: icono referenciado en el archivo desktop pero no exportado: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Tipo de URI %s no válido, solo se soporta http/https" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "" "No se puede encontrar el nombre de base en %s, especifique un nombre " "explícitamente" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "No se permiten barras en el nombre de los datos adicionales" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Formato no válido de la suma de verificación sha256: «%s»" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Los datos adicionales no pueden tener tamaño 0" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "" "UBICACIÓN CARPETA [RAMA] - Crea un repositorio desde una carpeta de " "compilación" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "Se debe especificar UBICACIÓN y CARPETA" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "«%s» no es un ID de colección válido: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "No se ha especificado un nombre en los metadatos" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Commit: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Metadatos totales: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Metadatos escritos: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Contenido total: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Contenido escrito: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Bytes de contenido escritos:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Comando que establecer" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "COMANDO" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Versión de Flatpak requerida" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "MAYOR.MENOR.MICRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "No procesar las exportaciones" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Información de datos adicionales" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Añadir información del punto de extensión" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NOMBRE=VARIABLE[=VALOR]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Quitar la información del punto de extensión" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NOMBRE" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Establecer la prioridad de la extensión (sólo para extensiones)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "VALOR" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Cambiar el SDK usado por la aplicación" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Cambiar la rutina en tiempo de ejecución usado por la aplicación" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "RUNTIME" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Establecer la opción de metadatos genéricos" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GRUPO=CLAVE[=VALOR]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "No heredar permisos de la rutina en tiempo de ejecución" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "No se está exportando %s, extensión incorrecta\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "" "No se está exportando %s, nombre de archivo de exportación no permitido\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "Exportando %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Se ha encontrado más de un ejecutable\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "Usar %s como comando\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "No se ha encontrado ningún ejecutable\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Argumento %s de --require-version no válido" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "No hay suficientes elementos en el argumento --extra-data %s" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -720,7 +726,7 @@ msgstr "" "No hay suficientes elementos en el argumento de --metadata %s, el formato " "debe ser GRUPO=CLAVE[=VALOR]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -730,63 +736,64 @@ msgstr "" "No hay suficientes elementos en el argumento de --extension %s, el formato " "debe ser NOMBRE=VARIABLE[=VALOR]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "Nombre de extensión %s no válido" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "CARPETA - Finalizar un carpeta de compilación" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "La carpeta de compilación %s no está inicializada" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "La carpeta de compilación %s ya estaba finalizada" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Revise los archivos exportados y los metadatos\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Sobrescribir la referencia usada en el paquete importado" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REFERENCIA" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Importar la imagen OCI en lugar del paquete flatpak" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "La referencia «%s» no está en el registro" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "" "Hay múltiples imágenes en el registro, especifique una referencia con --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "Importando %s: (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "UBICACIÓN NOMBRE_ARCHIVO - Importa un paquete al repositorio local" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "Se debe especificar UBICACIÓN y NOMBRE_ARCHIVO" @@ -865,14 +872,14 @@ msgid "Re-initialize the sdk/var" msgstr "Reinicializar el sdk/variable" #: app/flatpak-builtins-build-init.c:118 -#, fuzzy, c-format +#, c-format msgid "Requested extension %s/%s/%s is only partially installed" -msgstr "La extensión %s requerida solo está instalada parcialmente" +msgstr "La extensión %s/%s/%s requerida solo está instalada parcialmente" #: app/flatpak-builtins-build-init.c:147 -#, fuzzy, c-format +#, c-format msgid "Requested extension %s/%s/%s not installed" -msgstr "La extensión %s requerida no está instalada" +msgstr "La extensión %s/%s/%s requerida no está instalada" #: app/flatpak-builtins-build-init.c:207 msgid "" @@ -902,88 +909,88 @@ msgstr "«%s» no es un nombre de aplicación valido: %s" msgid "Build directory %s already initialized" msgstr "La carpeta de compilación %s ya está inicializada" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Arquitectura en la que instalar" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Buscar un «runtime» con el nombre especificado" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "UBICACIÓN [ID [RAMA]] - Firma una aplicación o «runtime»" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "Se debe especificar la UBICACIÓN" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "No se han especificado los ids de las claves GPG" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Redirige este repositorio a una nueva URL" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Un buen nombre para usar en este repositorio" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "TÍTULO" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "Un comentario de una línea para este repositorio" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "COMENTARIO" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "Una descripción completa de este repositorio" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "DESCRIPCIÓN" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "URL del sitio web de este repositorio" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "URL del icono de este repositorio" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Rama predeterminada que usar en este repositorio" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "RAMA" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "ID-COLECCIÓN" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" @@ -991,124 +998,127 @@ msgstr "" "Desplegar de forma permanente el ID de colección en las configuraciones " "remotas del cliente, solo para soporte de USB" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" "Desplegar de forma permanente el ID de colección en las configuraciones " "remotas del cliente" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Nombre del autenticador para este repositorio" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "Instalar automáticamente el autenticador para este repositorio" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "No instalar automáticamente el autenticador para este repositorio" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Opción del autenticador" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "CLAVE=VALOR" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Importar una nueva clave pública GPG predeterminada desde un ARCHIVO" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "ID de la clave GPG con la que firmar el resumen" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Generar archivos de diferencias" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "No actualizar la rama de «appstream»" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" "Número máximo de trabajos en paralelo al crear diferencias (predeterminado: " "NUMCPUs)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "NUM_TRABAJOS" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "No crear diferencias que coincidan con las referencias" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Eliminar objetos no usados" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "Podar pero sin quitar nada" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" "Solo recorrer padres de PROFUNDIDAD para cada «commit» (predeterminado: " "-1=infinitos)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "PROFUNDIDAD" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Generando diferencia: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Generando diferencia: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Falló al generar la diferencia %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Fallo al generar la diferencia %s (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "UBICACIÓN - actualizar los metadatos del repositorio" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Actualizando rama de «appstream»\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Actualizando resumen\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Objetos totales: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "No hay objetos inaccesibles\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "%u objetos eliminados, %s liberados\n" @@ -1180,25 +1190,25 @@ msgstr "Sólo se puede usar uno de estos: --list, --get, --set o --unset" msgid "Must specify one of --list, --get, --set or --unset" msgstr "Debe especificar uno de estos: --list, --get, --set o --unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Buscar una aplicación con el nombre especifico" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Arquitectura que copiar" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "DEST" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "Permitir «commit»s parciales en el repositorio creado" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " @@ -1207,14 +1217,14 @@ msgstr "" "Advertencia: la referencia «%s» relacionada está parcialmente instalada. Use " "--allow-partial para eliminar este mensaje.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" "Advertencia: omitiendo la referencia «%s» relacionada porque no está " "instalada.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1223,14 +1233,14 @@ msgstr "" "Advertencia: omitiendo la referencia «%s» relacionada porque su «%s» remota " "no tiene establecido un ID de colección.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" "Advertencia: omitiendo la referencia «%s» relacionada porque son datos " "adicionales.\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1239,38 +1249,38 @@ msgstr "" "La rama «%s» remota no tiene establecido un ID de colección, necesario para " "la distribución P2P de «%s»." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" "Advertencia: omitiendo la referencia «%s» (tiempo de ejecución de «%s») " "porque son datos adicionales.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" "PUNTO_DE_MONTAJE [REFERENCIA…] - copiar aplicaciones o rutinas en tiempo de " "ejecución en medios extraíbles" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "Se debe especificar PUNTO_DE_MONTAJE y REFERENCIA" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" "Se encontró la referencia «%s» en varias instalaciones: %s. Debe especificar " "una." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" "Las referencias deben estar todas en la misma instalación (encontrada en %s " "y %s)" -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " @@ -1279,21 +1289,21 @@ msgstr "" "Advertencia: la referencia «%s» está parcialmente instalada. Use --allow-" "partial para eliminar este mensaje.\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" "La referencia instalada «%s» es un dato adicional y no se puede distribuir " "sin conexión" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" "Advertencia: no se pudieron actualizar los metadatos del repositorio «%s»: " "%s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1301,7 +1311,7 @@ msgstr "" "repositorio remoto «%s», arquitectura «%s»: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1310,7 +1320,7 @@ msgstr "" "repositorio remoto «%s», arquitectura «%s»: %s, %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1386,19 +1396,20 @@ msgstr "ARCHIVO - Obtiene información sobre un archivo exportado" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "No exportado\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Qué información mostrar" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "CAMPO,…" @@ -1417,7 +1428,7 @@ msgid "Show the document path" msgstr "Mostrar la ruta del documento" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Origen" @@ -1431,7 +1442,7 @@ msgid "Show applications with permission" msgstr "Mostrar aplicaciones con permisos" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Permisos" @@ -1445,9 +1456,8 @@ msgid "[APPID] - List exported files" msgstr "[ID_APLICACIÓN] - Obtiene una lista de los archivos exportados" #: app/flatpak-builtins-document-unexport.c:43 -#, fuzzy msgid "Specify the document ID" -msgstr "Mostrar el ID del documento" +msgstr "Especifique el ID del documento" #: app/flatpak-builtins-document-unexport.c:58 msgid "FILE - Unexport a file to apps" @@ -1562,12 +1572,12 @@ msgid "Show the kind of change" msgstr "Mostrar el tipo de cambio" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Referencia" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Mostrar la referencia" @@ -1576,24 +1586,24 @@ msgid "Show the application/runtime ID" msgstr "Mostrar el ID de aplicación/rutina en tiempo de ejecución" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Arquitectura" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Mostrar la arquitectura" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Rama" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Mostrar la rama" @@ -1605,7 +1615,7 @@ msgstr "Instalación" msgid "Show the affected installation" msgstr "Mostrar la instalación afectada" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Remoto" @@ -1614,7 +1624,7 @@ msgid "Show the remote" msgstr "Mostrar los repositorios remotos" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Commit" @@ -1634,7 +1644,7 @@ msgstr "Mostrar el «commit» anterior" msgid "Show the remote URL" msgstr "Mostrar el URL del repositorio remoto" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Usuario" @@ -1651,7 +1661,7 @@ msgid "Show the tool that was used" msgstr "Mostrar la herramienta que se ha usado" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Versión" @@ -1679,10 +1689,12 @@ msgid " - Show history" msgstr " - Mostrar histórico" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "Falló al analizar la opción --since" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "Falló al analizar la opción --until" @@ -1698,11 +1710,11 @@ msgstr "Mostrar instalaciones del sistema" msgid "Show specific system-wide installations" msgstr "Mostrar instalaciones especificas del sistema" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Mostrar referencia" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Mostrar «commit»" @@ -1714,15 +1726,15 @@ msgstr "Mostrar origen" msgid "Show size" msgstr "Mostrar tamaño" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Mostrar metadatos" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Mostrar rutina en tiempo de ejecución" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Mostrar sdk" @@ -1734,8 +1746,8 @@ msgstr "Mostrar permisos" msgid "Query file access" msgstr "Consultar el acceso a archivos" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1755,7 +1767,7 @@ msgstr "" "NOMBRE [RAMA] - Obtener información sobre una aplicación y/o rutina en " "tiempo de ejecución instalada" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "Se debe especificar el NOMBRE" @@ -1764,85 +1776,87 @@ msgstr "Se debe especificar el NOMBRE" msgid "ref not present in origin" msgstr "referencia no presente en el origen" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Advertencia: el «commir» no tiene metadatos de flatpak\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Referencia:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Arquitectura:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Rama:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Versión:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Licencia:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Colección:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Instalación:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Instalada:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" -msgstr "Runtime:" +msgstr "Tiempo de ejecución:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Fecha:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Asunto:" @@ -1855,15 +1869,15 @@ msgid "Latest commit:" msgstr "Ultimo «commit»:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Commit:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Padre:" @@ -1872,14 +1886,14 @@ msgid "Alt-id:" msgstr "ID-alternativo:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "Fin del ciclo de vida:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "Rebasar ciclo de vida:" @@ -1888,150 +1902,153 @@ msgid "Subdirectories:" msgstr "Subcarpetas:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Extensión:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Origen:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Subcarpetas:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "sin mantenimiento" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "desconocido" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "No actualizar, solo instalar del caché local" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "No desplegar, solo descargar al caché local" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "No instalar referencias relacionadas" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "" "No verificar/instalar las dependencias de la rutina en tiempo de ejecución" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "No fijar automáticamente la instalaciones explícitas" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "No usar diferencias estáticas" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" -msgstr "" +msgstr "Además, instalar el SDK utilizado para construir las referencias dadas" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" +"Además, instalar la información de depuración para las referencias dadas y " +"sus dependencias" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Asumir que UBICACIÓN es un paquete .flatpak de un solo archivo" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Asumir que UBICACIÓN es una descripción de aplicación .flatpakref" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "" "Comprobar las firmas del paquete con las claves GPG del ARCHIVO (- para " "stdin)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Solo instalar esta subruta" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Responder si automáticamente a todas las preguntas" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Desinstalar primero si ya está instalado" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "Producir una salida mínima y no hacer preguntas" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Actualizar la instalación si ya está instalado" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "Usar este repositorio local para instalaciones desde USB" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Se debe especificar el nombre de archivo del paquete" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Los paquetes remotos no están soportados" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Se debe especificar el nombre de archivo o el uri" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "" "[UBICACIÓN/REMOTO] [REFERENCIA…] - Instala aplicaciones o rutinas en tiempo " "de ejecución" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "Se debe especificar al menos una REFERENCIA" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Buscando coincidencias…\n" -#: app/flatpak-builtins-install.c:456 -#, fuzzy, c-format +#: app/flatpak-builtins-install.c:457 +#, c-format msgid "No remote refs found for ‘%s’" -msgstr "No se encontraron referencias similares a «%s»" +msgstr "No se encontraron referencias remotas para «%s»" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Rama «%s» no válida: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Nada coincide con %s en el repositorio local de la rama remota %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Nada coincide con %s en la rama remota %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Saltando: %s\n" @@ -2069,51 +2086,51 @@ msgstr "Listar las aplicaciones instaladas" msgid "Arch to show" msgstr "Arquitectura que mostrar" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Listar todas las referencias (incluyendo región/depuración)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "Listar todas las aplicaciones que usan RUNTIME" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Nombre" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Mostrar el nombre" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Descripción" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Mostrar la descripción" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "ID de aplicación" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Mostrar ID de aplicación" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Mostrar la versión" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Runtime" @@ -2121,7 +2138,7 @@ msgstr "Runtime" msgid "Show the used runtime" msgstr "Mostrar la rutina en tiempo de ejecución usada" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Mostrar la rama remota de origen" @@ -2133,7 +2150,7 @@ msgstr "Mostrar la instalación" msgid "Active commit" msgstr "«Commit» activo" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Mostrar el «commit» activo" @@ -2145,36 +2162,36 @@ msgstr "Último «commit»" msgid "Show the latest commit" msgstr "Mostrar el último «commit»" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Tamaño de la instalación" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Mostrar el tamaño de la instalación" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Opciones" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Mostrar las opciones" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, fuzzy, c-format msgid "Unable to load details of %s: %s" msgstr "" "Actualizando los metadatos adicionales desde el resumen remoto para %s\n" -#: app/flatpak-builtins-list.c:189 -#, c-format +#: app/flatpak-builtins-list.c:188 +#, fuzzy, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "No se puede obtener el tipo de archivo de «%s»: %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr "" " - Listar las aplicaciones y/o rutinas en tiempo de ejecución instaladas" @@ -2187,7 +2204,7 @@ msgstr "Arquitectura que hacer actual" msgid "APP BRANCH - Make branch of application current" msgstr "APLICACIÓN RAMA - Establece la rama de la aplicación que usar" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "Se debe especificar APLICACIÓN" @@ -2212,10 +2229,12 @@ msgstr "" "coincidan con los patrones" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "No hay patrones enmascarados\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Patrones enmascarados:\n" @@ -2231,26 +2250,26 @@ msgstr "Mostrar los reemplazos existentes" msgid "[APP] - Override settings [for application]" msgstr "[APLICACIÓN] - Reemplazar configuraciones [de aplicación]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABLA] [ID] - Listar permisos" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Tabla" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Objeto" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "Aplicación" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Datos" @@ -2309,10 +2328,12 @@ msgstr "" "ejecución que coincidan con los patrones" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "Patrones sin fijar\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "Patrones fijados:\n" @@ -2388,127 +2409,127 @@ msgstr "Mostrar si la aplicación está en segundo plano" msgid " - Enumerate running sandboxes" msgstr " - Enumerar los entornos aislados en ejecución" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "No hacer nada si el repositorio remoto dado ya existe" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "" "UBICACIÓN establece un archivo de configuración, no la ubicación del " "repositorio" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Desactivar la verificación GPG" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Establecer el remoto como «no enumerar»" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Establecer el remoto como «no usar para las dependencias»" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "" "Establecer prioridad (1 predeterminado, mayor prioridad cuanto más alto)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORIDAD" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "El subconjunto nombrado que usar para este remoto" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "SUBCONJUNTO" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Un buen nombre que usar en este repositorio remoto" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "Un comentario de una línea para este repositorio remoto" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "Una descripción completa de este repositorio remoto" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "URL del sitio web de este repositorio remoto" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "URL del icono de este repositorio remoto" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Rama predeterminada que usar en este repositorio remoto" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Importar la clave GPG desde un ARCHIVO (- para stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Establecer la ruta al ARCHIVO de filtro local" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Desactivar el repositorio remoto" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Nombre del autenticador" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Instalar el autenticador automáticamente" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "No instalar el autenticador automáticamente" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "No seguir la redirección establecida en el archivo de resumen" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "No se puede cargar el uri %s: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "No se puede cargar el archivo %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NOMBRE UBICACIÓN - Añadir un repositorio remoto" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "La verificación GPG es obligatoria si las colecciones están activadas" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "El repositorio remoto %s ya existe" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Nombre de autenticador %s no válido" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "" @@ -2540,61 +2561,61 @@ msgstr "" "No se puede eliminar el repositorio remoto «%s» con las referencias " "instaladas" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "«Commit» para el que mostrar información" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Mostrar registro" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Mostrar padre" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Usar cachés locales incluso si están obsoletos" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "Solo listar referencias disponibles como instalación local por USB" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " REMOTO REF - Muestra información sobre una aplicación o rutina en tiempo de " "ejecución en un repositorio remoto" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "Se debe especificar REMOTO y REFERENCIA" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Descarga:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "Histórico:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Commit:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Asunto:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Fecha:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Advertencia: el «commit» %s no tiene metadatos flatpak\n" @@ -2623,7 +2644,7 @@ msgstr "Mostrar la URL" msgid "Show the collection ID" msgstr "Mostrar la ID de colección" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "Subconjunto" @@ -2679,39 +2700,39 @@ msgstr "Mostrar icono" msgid " - List remote repositories" msgstr " - Mostrar lista de repositorios remotos" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Mostrar arquitecturas y ramas" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Mostrar solo rutinas en tiempo de ejecución" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Mostrar solo aplicaciones" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Mostrar solo los que tienen actualizaciones disponibles" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Limitar a esta arquitectura (* para mostrar todas)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Mostrar la rutina en tiempo de ejecución" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Tamaño de la descarga" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Mostrar el tamaño de la descarga" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr "" " [REMOTO o URI] - Mostrar rutinas en tiempo de ejecución y aplicaciones " @@ -2811,24 +2832,24 @@ msgid "Can't load object %s: %s\n" msgstr "No se puede cargar el objeto %s: %s\n" #: app/flatpak-builtins-repair.c:228 -#, fuzzy, c-format +#, c-format msgid "Commit invalid %s: %s\n" -msgstr "Objeto no válido %s.%s\n" +msgstr "Confirmación no válida %s: %s\n" #: app/flatpak-builtins-repair.c:231 -#, fuzzy, c-format +#, c-format msgid "Deleting invalid commit %s: %s\n" -msgstr "PID %s no válido" +msgstr "Eliminando confirmación no válida %s: %s\n" #: app/flatpak-builtins-repair.c:261 #, c-format msgid "Commit should be marked partial: %s\n" -msgstr "" +msgstr "La confirmación debe marcarse como parcial: %s\n" #: app/flatpak-builtins-repair.c:264 #, c-format msgid "Marking commit as partial: %s\n" -msgstr "" +msgstr "Marcando confirmación como parcial: %s\n" #: app/flatpak-builtins-repair.c:293 #, c-format @@ -2844,225 +2865,231 @@ msgstr "Error al reinstalar %s: %s\n" msgid "- Repair a flatpak installation" msgstr "- Reparar una instalación de flatpak" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Quitando la ref no implementada %s…\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Saltando la ref no implementada %s…\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d/%d] Verificando %s…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "Ejecución en seco: " -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "Eliminando la ref %s debido a que faltan objetos\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "Eliminando la ref %s debido a objetos no válidos\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "Eliminando la ref %s debido a %d\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "Comprobando remotos...\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "Falta el remoto %s de la ref %s\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "El remoto %s para la ref %s está desactivado\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "Podando objetos\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "Eliminando .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "Reinstalando referencias\n" -#: app/flatpak-builtins-repair.c:515 -#, fuzzy +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" -msgstr "No instalar referencias relacionadas" +msgstr "Reinstalando referencias eliminadas\n" -#: app/flatpak-builtins-repair.c:540 -#, fuzzy, c-format +#: app/flatpak-builtins-repair.c:550 +#, c-format msgid "While removing appstream for %s: " -msgstr "Mientras se abría el repositorio %s: " +msgstr "Al eliminar appstream para %s: " -#: app/flatpak-builtins-repair.c:547 -#, fuzzy, c-format +#: app/flatpak-builtins-repair.c:557 +#, c-format msgid "While deploying appstream for %s: " -msgstr "Mientras se abría el repositorio %s: " +msgstr "Al desplegar appstream para %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Modo repo: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "Resúmenes indexados : %s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "cierto" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "falso" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "Subresúmenes: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "Versión de caché: %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "Deltas indexadas: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Título: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Comentario: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Descripción: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Página principal: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Icono: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "ID de colección: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Rama predeterminada: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "Redireccionar URL: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "Implementar ID de colección: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Nombre del autenticador: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "Instalación del autenticador: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "Hash de clave GPG: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "Ramas de resumen %zd\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Instalada" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Descarga" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "Subconjuntos" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "Resumen" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "Longitud de histórico" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Imprime información general acerca del repositorio" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Mostrar una lista de las ramas en el repositorio" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Imprime los metadatos de una rama" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Mostrar los commits de una rama" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "Imprime información acerca de los subconjuntos del repo" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "Limitar información a los subconjuntos con este prefijo" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "UBICACIÓN - Mantenimiento del repositorio" @@ -3158,11 +3185,11 @@ msgstr "Usar RUTA en lugar de /app de la aplicación" msgid "Use PATH instead of the runtime's /usr" msgstr "Usar RUTA en lugar de /usr del ejecutable" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "APL [ARGUMENTO…] - Ejecuta una aplicación" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "runtime/%s/%s/%s no instalado" @@ -3179,15 +3206,15 @@ msgstr "Remotos" msgid "Show the remotes" msgstr "Mostrar los remotos" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "TEXTO - Buscar aplicaciones o ejecutables para el texto" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "Se debe especificar TEXTO" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Ninguna coincidencia" @@ -3227,22 +3254,21 @@ msgstr "¿Eliminar los datos de %s?" #: app/flatpak-builtins-uninstall.c:220 #, c-format msgid "Info: applications using the extension %s%s%s branch %s%s%s:\n" -msgstr "" +msgstr "Info: aplicaciones que usan la extensión %s%s%s rama %s%s%s:\n" #: app/flatpak-builtins-uninstall.c:223 -#, fuzzy, c-format +#, c-format msgid "Info: applications using the runtime %s%s%s branch %s%s%s:\n" -msgstr "Firmar una aplicación o «runtime»" +msgstr "" +"Info: aplicaciones que usan el tiempo de ejecución %s%s%s rama %s%s%s:\n" #: app/flatpak-builtins-uninstall.c:238 -#, fuzzy msgid "Really remove?" -msgstr "Remoto" +msgstr "¿Realmente quiere eliminar?" #: app/flatpak-builtins-uninstall.c:255 -#, fuzzy msgid "[REF…] - Uninstall applications or runtimes" -msgstr "[REFERENCIA ...] - Actualiza aplicaciones y tiempos de ejecución" +msgstr "[REF…] - Desinstalar aplicaciones o tiempos de ejecución" #: app/flatpak-builtins-uninstall.c:264 msgid "Must specify at least one REF, --unused, --all or --delete-data" @@ -3268,23 +3294,24 @@ msgstr "" "Consulte flatpak-pin(1):\n" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Nada sin usar que desinstalar\n" #: app/flatpak-builtins-uninstall.c:444 -#, fuzzy, c-format +#, c-format msgid "No installed refs found for ‘%s’" -msgstr "Se encontraron refs similares instaladas para «%s»:" +msgstr "No se encontraron refs instaladas para «%s»" #: app/flatpak-builtins-uninstall.c:447 #, c-format msgid " with arch ‘%s’" -msgstr "" +msgstr " con arquitectura «%s»" #: app/flatpak-builtins-uninstall.c:449 #, c-format msgid " with branch ‘%s’" -msgstr "" +msgstr " con rama «%s»" #: app/flatpak-builtins-uninstall.c:456 #, c-format @@ -3292,8 +3319,9 @@ msgid "Warning: %s is not installed\n" msgstr "Advertencia: %s no está instalada\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" -msgstr "" +msgstr "Ninguna de las referencias especificadas está instalada" #: app/flatpak-builtins-update.c:56 msgid "Arch to update for" @@ -3324,16 +3352,15 @@ msgid "Only update this subpath" msgstr "Solo actualizar este subcarpeta" #: app/flatpak-builtins-update.c:90 -#, fuzzy msgid "[REF…] - Update applications or runtimes" -msgstr "[REFERENCIA ...] - Actualiza aplicaciones y tiempos de ejecución" +msgstr "[REF…] - Actualiza aplicaciones o tiempos de ejecución" #: app/flatpak-builtins-update.c:121 -#, fuzzy msgid "With --commit, only one REF may be specified" -msgstr "Se debe especificar REMOTO y REFERENCIA" +msgstr "Con --commit, solo se puede especificar un REF" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Buscando actualizaciones…\n" @@ -3343,27 +3370,28 @@ msgid "Unable to update %s: %s\n" msgstr "No se puede actualizar %s: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Nada que hacer.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "Se encontró el remoto «%s» en varias instalaciones:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "¿Cuál quiere usar (0 para abortar)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "No se eligió un remoto para resolver «%s» que existe en varias instalaciones" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3372,13 +3400,13 @@ msgstr "" "No se encontró el remoto «%s»\n" "Pista: Use flatpak remote-add para añadir un remoto" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "El remoto «%s» no se encontró en la instalación %s" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3387,419 +3415,417 @@ msgstr "" "Se encontró la ref. «%s» en el remoto «%s» (%s).\n" "¿Usar esta ref.?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "No se eligió una ref. para resolver las coincidencias de «%s»" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "Se encontraron refs. similares de «%s» en el remoto «%s» (%s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "Se encontró la ref «%s» instalada (%s). ¿Es correcto?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "Todo lo anterior" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "Se encontraron refs similares instaladas para «%s»:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"Se encontraron ref(s) similares instaladas para «%s» en el remoto «%s» " -"(%s).\n" -"¿Usar este remoto?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "Se encontraron remotos con refs similares a «%s»:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "No se eligió un remoto para resolver las coincidencias de «%s»" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "Se encontraron remotos con refs similares a «%s»:" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "Actualizando datos de appstream para el remoto de usuario %s" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Actualizando appstream para el repositorio remoto %s" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Error al actualizar" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "El remoto «%s» no se encontró" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Sufijo ambiguo: «%s»." #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "Los valores posibles son :s[tart], :m[iddle], :e[nd] o :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Sufijo no válido: «%s»." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Columna ambigua: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Columna desconocida: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Columnas disponibles:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Mostrar todas las columnas" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Mostrar columnas disponibles" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" "Adjuntar :s[tart], :m[iddle], :e[nd] o :f[ull] para cambiar la elipsización" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 +#, c-format msgid "Required runtime for %s (%s) found in remote %s\n" -msgstr "" -"Se requiere un tiempo de ejecución para %s (%s) que no está instalado, " -"buscando...\n" +msgstr "Tiempo de ejecución requerido para %s (%s) encontrado en remoto %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "¿Quiere instalarlo?" -#: app/flatpak-cli-transaction.c:107 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:110 +#, c-format msgid "Required runtime for %s (%s) found in remotes:" -msgstr "" -"Se requiere un tiempo de ejecución para %s (%s) que no está instalado, " -"buscando...\n" +msgstr "Tiempo de ejecución requerido para %s (%s) encontrado en remotos:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "¿Cual quieres instalar (0 para abortar)?" -#: app/flatpak-cli-transaction.c:129 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:132 +#, c-format msgid "Configuring %s as new remote '%s'\n" -msgstr "Configurando %s como un nuevo repositorio remoto «%s»" +msgstr "Configurando %s como un nuevo remoto «%s»\n" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:139 +#, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " "applications.\n" "Should the remote be kept for future installations?" msgstr "" -"El repositorio remoto «%s», en la UBICACIÓN %s contiene aplicaciones " +"El remoto «%s», referido como «%s» en la ubicación %s contiene aplicaciones " "adicionales.\n" -"¿Quieres instalar otras aplicaciones desde aquí?" +"¿Se debe guardar el remoto para futuras instalaciones?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:147 +#, c-format msgid "" "The application %s depends on runtimes from:\n" " %s\n" "Configure this as new remote '%s'" msgstr "" -"Esta aplicación depende de los tiempos de ejecución de:\n" +"La aplicación %s depende de los tiempos de ejecución de:\n" " %s\n" -"Configura esto como un nuevo repositorio remoto «%s»" +"Configure esto como un nuevo remoto «%s»" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Instalando…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Instalando %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Actualizando…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Actualizando %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Desinstalando…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Desinstalando %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Info: se saltó %s" -#: app/flatpak-cli-transaction.c:512 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:516 +#, c-format msgid "Warning: %s%s%s already installed" -msgstr "%s ya está instalado" +msgstr "Aviso: %s%s%s ya está instalado" -#: app/flatpak-cli-transaction.c:515 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:519 +#, c-format msgid "Error: %s%s%s already installed" -msgstr "%s ya está instalado" +msgstr "Error: %s%s%s ya está instalado" -#: app/flatpak-cli-transaction.c:521 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:525 +#, c-format msgid "Warning: %s%s%s not installed" -msgstr "Advertencia: %s no está instalada\n" +msgstr "Advertencia: %s%s%s no está instalado" -#: app/flatpak-cli-transaction.c:524 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:528 +#, c-format msgid "Error: %s%s%s not installed" -msgstr "%s/%s/%s no instalado" +msgstr "Error: %s%s%s no instalado" -#: app/flatpak-cli-transaction.c:530 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:534 +#, c-format msgid "Warning: %s%s%s needs a later flatpak version" -msgstr "%s necesita una versión de flatpak superior (%s)" +msgstr "Aviso: %s%s%s necesita una versión de flatpak superior" -#: app/flatpak-cli-transaction.c:533 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:537 +#, c-format msgid "Error: %s%s%s needs a later flatpak version" -msgstr "%s necesita una versión de flatpak superior (%s)" +msgstr "Error: %s%s%s necesita una versión de flatpak superior" -#: app/flatpak-cli-transaction.c:539 -#, fuzzy +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" -msgstr "No hay espacio de disco suficiente para completar esta operación" +msgstr "" +"Aviso: No hay espacio de disco suficiente para completar esta operación" -#: app/flatpak-cli-transaction.c:541 -#, fuzzy +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" -msgstr "No hay espacio de disco suficiente para completar esta operación" +msgstr "" +"Error: No hay espacio de disco suficiente para completar esta operación" -#: app/flatpak-cli-transaction.c:546 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:550 +#, c-format msgid "Warning: %s" -msgstr "Advertencia: " +msgstr "Advertencia: %s" -#: app/flatpak-cli-transaction.c:548 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:552 +#, c-format msgid "Error: %s" -msgstr "Error:" +msgstr "Error: %s" -#: app/flatpak-cli-transaction.c:563 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:567 +#, c-format msgid "Failed to install %s%s%s: " -msgstr "Error: Fallo al %s %s: %s\n" +msgstr "Fallo al instalar %s%s%s: " -#: app/flatpak-cli-transaction.c:570 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:574 +#, c-format msgid "Failed to update %s%s%s: " -msgstr "Error: Fallo al %s %s: %s\n" +msgstr "Fallo al actualizar %s%s%s: " -#: app/flatpak-cli-transaction.c:577 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:581 +#, c-format msgid "Failed to install bundle %s%s%s: " -msgstr "Error: Fallo al %s %s: %s\n" +msgstr "Fallo al instalar el paquete %s%s%s: " -#: app/flatpak-cli-transaction.c:584 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:588 +#, c-format msgid "Failed to uninstall %s%s%s: " -msgstr "Error: Fallo al %s %s: %s\n" +msgstr "Fallo al desinstalar %s%s%s: " -#: app/flatpak-cli-transaction.c:626 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:630 +#, c-format msgid "Authentication required for remote '%s'\n" -msgstr "La autentificación es obligatoria para actualizar un programa" +msgstr "Se necesita autenticación para el remoto «%s»\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "¿Abrir el navegador?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "El inicio de sesión requiere el remoto %s (ámbito %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Contraseña" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:747 +#, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, in favor of " "%s%s%s branch %s%s%s\n" -msgstr "Info: (el fijado) %s//%s terminó su vida útil, en favor de %s\n" +msgstr "" +"\n" +"Info: el tiempo de ejecución (fijado) %s%s%s rama %s%s%s terminó su vida " +"útil, en favor de %s%s%s rama %s%s%s\n" -#: app/flatpak-cli-transaction.c:749 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:753 +#, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, in favor of %s%s%s branch " "%s%s%s\n" -msgstr "Info: %s//%s terminó su vida útil, en favor de %s\n" +msgstr "" +"\n" +"Info: el tiempo de ejecución %s%s%s rama %s%s%s terminó su vida útil, en " +"favor de %s%s%s rama %s%s%s\n" -#: app/flatpak-cli-transaction.c:752 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:756 +#, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, in favor of %s%s%s branch " "%s%s%s\n" -msgstr "Info: %s//%s terminó su vida útil, en favor de %s\n" +msgstr "" +"\n" +"Info: la aplicación %s%s%s rama %s%s%s terminó su vida útil, en favor de " +"%s%s%s rama %s%s%s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:768 +#, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" -msgstr "Info: (el fijado) %s//%s terminó su vida útil, con motivo:\n" +msgstr "" +"\n" +"Info: el tiempo de ejecución (fijado) %s%s%s rama %s%s%s terminó su vida " +"útil, con motivo:\n" -#: app/flatpak-cli-transaction.c:770 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:774 +#, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" -msgstr "Info: %s//%s terminó su vida útil, con motivo:\n" +msgstr "" +"\n" +"Info: el tiempo de ejecución %s%s%s rama %s%s%s terminó su vida útil, con " +"motivo:\n" -#: app/flatpak-cli-transaction.c:773 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:777 +#, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" -msgstr "Info: %s//%s terminó su vida útil, con motivo:\n" +msgstr "" +"\n" +"Info: la aplicación %s%s%s rama %s%s%s terminó su vida útil, con motivo:\n" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" -msgstr "Firmar una aplicación o «runtime»" +msgstr "Info: aplicaciones que usan esta extensión:\n" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" -msgstr "Firmar una aplicación o «runtime»" +msgstr "Info: aplicaciones que usan este tiempo de ejecución:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" -msgstr "" +msgstr "¿Reemplazar?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 -#, fuzzy +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" -msgstr "Actualizando rama de appstream\n" +msgstr "Actualizando a la versión rebasada\n" -#: app/flatpak-cli-transaction.c:995 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:999 +#, c-format msgid "Failed to rebase %s to %s: " -msgstr "Error: Fallo al %s %s: %s\n" - -#: app/flatpak-cli-transaction.c:1009 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Error: Fallo al %s %s: %s\n" +msgstr "Fallo al rebasar %s a %s: " -#: app/flatpak-cli-transaction.c:1222 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:1265 +#, c-format msgid "New %s%s%s permissions:" -msgstr "%s permisos nuevos:" +msgstr "Permisos nuevos de %s%s%s:" -#: app/flatpak-cli-transaction.c:1224 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:1267 +#, c-format msgid "%s%s%s permissions:" -msgstr "%s permisos:" +msgstr "Permisos de %s%s%s:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Advertencia: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Op" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "parcial" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "¿Proceder con estos cambios en la instalación del usuario?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "¿Proceder con estos cambios en la instalación del sistema?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "¿Proceder con estos cambios en la instalación de %s?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Cambios completados." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Desinstalación completada." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Instalación completada." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Actualizaciones completadas." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Hubo uno o más errores" @@ -3950,9 +3976,8 @@ msgid "Show app permissions" msgstr "Mostrar permisos de la aplicación" #: app/flatpak-main.c:121 -#, fuzzy msgid "Reset app permissions" -msgstr "Mostrar extensiones" +msgstr "Restablecer los permisos de la aplicación" #. translators: please keep the leading newline and space #: app/flatpak-main.c:124 @@ -3985,10 +4010,8 @@ msgstr "" "Obtener una lista de los contenidos de un repositorio remoto configurado" #: app/flatpak-main.c:131 -#, fuzzy msgid "Show information about a remote app or runtime" -msgstr "" -"Mostrar información de las aplicaciones o tiempos de ejecución instalados" +msgstr "Mostrar información sobre una aplicación o ejecutable remoto" #. translators: please keep the leading newline and space #: app/flatpak-main.c:134 @@ -4016,9 +4039,9 @@ msgid "Export a build dir to a repository" msgstr "Exportar un carpeta de compilación a un repositorio" #: app/flatpak-main.c:139 -#, fuzzy msgid "Create a bundle file from a ref in a local repository" -msgstr "Crear un paquete desde un carpeta de compilación" +msgstr "" +"Crear un archivo de paquete desde una referencia en un repositorio local" #: app/flatpak-main.c:140 msgid "Import a bundle file" @@ -4037,19 +4060,16 @@ msgid "Create new commit based on existing ref" msgstr "Crear un nuevo«commit» basado un en una referencia existente" #: app/flatpak-main.c:144 -#, fuzzy msgid "Show information about a repo" -msgstr "Imprimir información acerca de un repositorio" +msgstr "Mostrar información sobre un repositorio" #: app/flatpak-main.c:161 -#, fuzzy msgid "Show debug information, -vv for more detail" -msgstr "Imprimir información de depuración durante el procesado del comando" +msgstr "Mostrar información de depuración, -vv para más detalles" #: app/flatpak-main.c:162 -#, fuzzy msgid "Show OSTree debug information" -msgstr "Mostrar información adicional" +msgstr "Mostrar información de depuración de OSTree" #: app/flatpak-main.c:168 msgid "Print version information and exit" @@ -4068,9 +4088,8 @@ msgid "Print active gl drivers and exit" msgstr "Imprimir los drivers gl activos y salir" #: app/flatpak-main.c:172 -#, fuzzy msgid "Print paths for system installations and exit" -msgstr "Imprimir la información de la versión y salir" +msgstr "Imprimir las rutas de las instalaciones del sistema y salir" #: app/flatpak-main.c:173 msgid "Print the updated environment needed to run flatpaks" @@ -4081,21 +4100,17 @@ msgid "Only include the system installation with --print-updated-env" msgstr "Incluir solo la instalación del sistema con --print-updated-env" #: app/flatpak-main.c:179 -#, fuzzy msgid "Work on the user installation" -msgstr "" -"Trabajar con instalaciones de\n" -" usuario" +msgstr "Trabajar en la instalación del usuario" #: app/flatpak-main.c:180 -#, fuzzy msgid "Work on the system-wide installation (default)" -msgstr "Trabajar con ins" +msgstr "Trabajar en la instalación para todo el sistema (predeterminado)" #: app/flatpak-main.c:181 -#, fuzzy msgid "Work on a non-default system-wide installation" -msgstr "Trabajar con instalaciones especificas del sistema" +msgstr "" +"Trabajar en una instalación para todo el sistema que no es la predeterminada" #: app/flatpak-main.c:211 msgid "Builtin Commands:" @@ -4125,35 +4140,38 @@ msgstr "" "que las aplicaciones instaladas por Flatpak no aparezcan en su escritorio " "hasta que se reinicie la sesión." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" +"Negándose a operar bajo sudo con --user. Omita sudo para operar en la " +"instalación del usuario, o use un shell raíz para operar en la instalación " +"del usuario raíz." -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" "Varias instalaciones especificadas para un comando que funcionan en una " "instalación" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "Consulte «%s --help»" -#: app/flatpak-main.c:697 -#, fuzzy, c-format +#: app/flatpak-main.c:699 +#, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" -msgstr "«%s» no es un nombre de aplicación valido: %s" +msgstr "«%s» no es un comando de flatpak. ¿Quiso decir «%s%s»?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "«%s» no es un comando de flatpak" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Comando no especificado" @@ -4177,63 +4195,63 @@ msgid "Uninstalling %s\n" msgstr "Desinstalando %s\n" #: app/flatpak-quiet-transaction.c:107 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to install %s: %s\n" -msgstr "Aviso: Fallo al %s %s: %s\n" +msgstr "Aviso: Fallo al instalar %s: %s\n" #: app/flatpak-quiet-transaction.c:110 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to install %s: %s\n" -msgstr "Error: Fallo al %s %s: %s\n" +msgstr "Error: Fallo al instalar %s: %s\n" #: app/flatpak-quiet-transaction.c:116 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to update %s: %s\n" -msgstr "Aviso: Fallo al %s %s: %s\n" +msgstr "Aviso: Fallo al actualizar %s: %s\n" #: app/flatpak-quiet-transaction.c:119 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to update %s: %s\n" -msgstr "Error: Fallo al %s %s: %s\n" +msgstr "Error: Fallo al actualizar %s: %s\n" #: app/flatpak-quiet-transaction.c:125 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to install bundle %s: %s\n" -msgstr "Aviso: Fallo al %s %s: %s\n" +msgstr "Aviso: Fallo al instalar el paquete %s: %s\n" #: app/flatpak-quiet-transaction.c:128 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to install bundle %s: %s\n" -msgstr "Error: Fallo al %s %s: %s\n" +msgstr "Error: Fallo al instalar el paquete %s: %s\n" #: app/flatpak-quiet-transaction.c:134 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to uninstall %s: %s\n" -msgstr "Aviso: Fallo al %s %s: %s\n" +msgstr "Aviso: Fallo al desinstalar %s: %s\n" #: app/flatpak-quiet-transaction.c:137 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to uninstall %s: %s\n" -msgstr "Error: Fallo al %s %s: %s\n" +msgstr "Error: Fallo al desinstalar %s: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s ya está instalado" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s no está instalado" #: app/flatpak-quiet-transaction.c:170 -#, fuzzy, c-format +#, c-format msgid "%s needs a later flatpak version" -msgstr "%s necesita una versión de flatpak superior (%s)" +msgstr "%s necesita una versión de flatpak superior" #: app/flatpak-quiet-transaction.c:172 msgid "Not enough disk space to complete this operation" @@ -4250,1566 +4268,1665 @@ msgid "Info: %s is end-of-life, with reason: %s\n" msgstr "Info: %s terminó su vida útil, con motivo: %s\n" #: app/flatpak-quiet-transaction.c:251 -#, fuzzy, c-format +#, c-format msgid "Failed to rebase %s to %s: %s\n" -msgstr "Error: Fallo al %s %s: %s\n" - -#: app/flatpak-quiet-transaction.c:264 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Error: Fallo al %s %s: %s\n" +msgstr "Fallo al rebasar %s a %s: %s\n" #: common/flatpak-auth.c:58 -#, fuzzy, c-format +#, c-format msgid "No authenticator configured for remote `%s`" -msgstr "La autentificación es obligatoria para actualizar un programa" +msgstr "No se configuró un autenticador para el remoto «%s»" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Tipo de recurso compartido %s no válido, los tipos válidos son: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Tipo de póliza %s no válida, los tipos válidos son: %s" -#: common/flatpak-context.c:265 -#, fuzzy, c-format +#: common/flatpak-context.c:279 +#, c-format msgid "Invalid dbus name %s" -msgstr "Nombre dbus no válido: %s\n" +msgstr "El nombre de dbus %s no es válido" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Tipo de socket desconocido %s, los tipos válidos son: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Tipo de dispositivo desconocido %s, los tipos válidos son: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Tipo de característica desconocido %s, los tipos válidos son: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "La ubicación de archivos del sistema «%s» contiene «..»" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" "--filesystem=/ no está disponible, use --filesystem=host para obtener un " "resultado similar" -#: common/flatpak-context.c:952 -#, fuzzy, c-format +#: common/flatpak-context.c:1036 +#, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" "etc, home, xdg-*[/…], ~/dir, /dir" msgstr "" -"Ruta desconocida en el sistema de archivos %s, algunas rutas válidas son: " -"host, home, xdg-*[/...], ~/dir, /dir" +"Ubicación desconocida del sistema de archivos %s, las rutas válidas son: " +"host, host-os, host-etc, home, xdg-*[/…], ~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Formato de entorno no válido %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "El nombre de la variable de entorno no debe contener «=»: %s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" +"Los argumentos de --add-policy deben tener el formato SUBSYSTEM.KEY=VALOR" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" -msgstr "" +msgstr "Los valores de --add-policy no pueden comenzar con «!»" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" +"Los argumentos de --remove-policy deben tener el formato SUBSYSTEM.KEY=VALOR" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" -msgstr "" +msgstr "Los valores de --remove-policy no pueden comenzar con «!»" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Compartir con el huesped" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "COMPARTIR" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Dejar de compartir con el huesped" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Exponer socket a la aplicación" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "SOCKET" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "No exponer socket a la aplicación" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Exponer dispositivo a la aplicación" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "DISPOSITIVO" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "No exponer dispositivo a la aplicación" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Permitir característica" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "CARACTERÍSTICA" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "No permitir característica" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "" "Exponer los archivos del sistema a la aplicación (:ro solo en modo lectura)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "SISTEMA_ARCHIVOS[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "No exponer los archivos del sistema a la aplicación" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "SISTEMA_ARCHIVOS" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Establecer variable de entorno" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VARIABLE=VALOR" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" -msgstr "" +msgstr "Leer variables de entorno en formato env -0 desde FD" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "FD" -#: common/flatpak-context.c:1540 -#, fuzzy +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" -msgstr "Revocar permiso de escritura de la aplicación" +msgstr "Eliminar la variable del entorno" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "VAR" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Permitir que la aplicación tenga nombre propio en el bus de sesión" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "NOMBRE_DBUS" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Permitir a la aplicación hablar con un nombre en el bus de sesión" -#: common/flatpak-context.c:1543 -#, fuzzy +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" -msgstr "Permitir a la aplicación hablar con un nombre en el bus de sesión" +msgstr "No permitir que la aplicación hable con el nombre en el bus de sesión" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Permitir que la aplicación tenga nombre propio en el bus de sistema" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Permitir a la aplicación hablar con un nombre en el bus de sistema" -#: common/flatpak-context.c:1546 -#, fuzzy +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" -msgstr "Permitir a la aplicación hablar con un nombre en el bus de sistema" +msgstr "" +"No permitir que la aplicación hable con el nombre en el bus del sistema" + +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Permitir que la aplicación tenga nombre propio en el bus de sistema" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Añadir opción de póliza genérica" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "SUBSISTEMA.CLAVE=VALOR" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Eliminar opción de póliza genérica" -#: common/flatpak-context.c:1549 -#, fuzzy -msgid "Persist home directory subpath" -msgstr "Carpeta de inicio con persistencia" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "NOMBRE_ARCHIVO" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Subruta de la carpeta de inicio con persistencia" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "No requerir una sesión en ejecución (no se crearán cgroups)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" -msgstr "" +msgstr "No se reemplaza «%s» con tmpfs: %s" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" -msgstr "" +msgstr "No se comparte «%s» con el sandbox: %s" #. Even if the error is one that we would normally silence, like #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" -msgstr "" +msgstr "No se permite el acceso a la carpeta de inicio: %s" -#: common/flatpak-context.c:2828 -#, fuzzy, c-format +#: common/flatpak-context.c:3150 +#, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" -msgstr "No se puede crear el carpeta de despliegue" +msgstr "" +"No se puede proporcionar una carpeta de inicio temporal en el espacio " +"aislado: %s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" -msgstr "" +msgstr "El ID de colección configurado «%s» no está en el archivo de resumen" -#: common/flatpak-dir.c:537 -#, fuzzy, c-format +#: common/flatpak-dir.c:563 +#, c-format msgid "Unable to load summary from remote %s: %s" -msgstr "Mientras se está cargando %s desde el repositorio remoto %s: " +msgstr "No se puede cargar el resumen del remoto %s: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 -#, fuzzy, c-format +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 +#, c-format msgid "No such ref '%s' in remote %s" -msgstr "No se puede encontrar %s en el repositorio remoto %s" +msgstr "No se encontró la ref. «%s» en el remoto %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 #, fuzzy, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " -msgstr "Ninguna entrada para %s en el caché de flatpak del repositorio remoto " +msgid "No entry for %s in remote %s summary flatpak cache" +msgstr "" +"No hay entrada para %s en la caché de Flatpak de resumen del remoto «%s» " -#: common/flatpak-dir.c:898 -#, fuzzy, c-format +#: common/flatpak-dir.c:924 +#, c-format msgid "No summary or Flatpak cache available for remote %s" -msgstr "No hay un caché de flatpak en el repositorio remoto" +msgstr "No hay resumen o caché de Flatpak disponible para el remoto %s" -#: common/flatpak-dir.c:921 -#, fuzzy, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "Ninguna entrada para %s en el caché de flatpak del repositorio remoto " - -#: common/flatpak-dir.c:926 -#, fuzzy, c-format +#: common/flatpak-dir.c:952 +#, c-format msgid "Missing xa.data in summary for remote %s" -msgstr "No hay un caché de flatpak en el repositorio remoto" +msgstr "Falta xa.data en el resumen para el remoto %s" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 -#, fuzzy, c-format +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 +#, c-format msgid "Unsupported summary version %d for remote %s" -msgstr "No hay un caché de flatpak en el repositorio remoto" +msgstr "Versión resumida no admitida %d para el remoto %s" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" -msgstr "" +msgstr "El índice OCI remoto no tiene registro uri" -#: common/flatpak-dir.c:1088 -#, fuzzy, c-format +#: common/flatpak-dir.c:1114 +#, c-format msgid "Couldn't find ref %s in remote %s" -msgstr "No se puede encontrar %s en el repositorio remoto %s" +msgstr "No se puede la ref %s en el remoto %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "La imagen no es un manifiesto" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" +"La confirmación no tiene la referencia solicitada «%s» en los metadatos de " +"enlace de referencia" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" -msgstr "" +msgstr "El ID de colección configurado «%s» no está en los metadatos de enlace" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" "No se pudo encontrar la última suma de comprobación de la referencia %s en " "el repositorio remoto %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 -#, fuzzy, c-format +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 +#, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" -msgstr "Ninguna entrada para %s en el caché de flatpak del repositorio remoto " +msgstr "" +"No hay entrada para %s en el resumen de caché escasa de flatpak en el remoto " +"%s" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "" +"Los metadatos de la confirmación para %s no coinciden con los metadatos " +"esperados" -#: common/flatpak-dir.c:2172 -#, fuzzy +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" -msgstr "Permitir que la aplicación tenga nombre propio en el bus de sistema" +msgstr "No se puede conectar con el bus del sistema" -#: common/flatpak-dir.c:2767 -#, fuzzy +#: common/flatpak-dir.c:2830 msgid "User installation" -msgstr "Mostrar instalaciones del usuario" +msgstr "Instalación del usuario" -#: common/flatpak-dir.c:2774 -#, fuzzy, c-format +#: common/flatpak-dir.c:2837 +#, c-format msgid "System (%s) installation" -msgstr "Mostrar instalaciones del usuario" +msgstr "Instalación del sistema (%s)" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "No se han encontrado anulaciones para %s" -#: common/flatpak-dir.c:2973 -#, fuzzy, c-format +#: common/flatpak-dir.c:3036 +#, c-format msgid "%s (commit %s) not installed" -msgstr "%s %s no instalado" +msgstr "%s (confirmación %s) no instalada" -#: common/flatpak-dir.c:3975 -#, fuzzy, c-format +#: common/flatpak-dir.c:4059 +#, c-format msgid "Error parsing system flatpakrepo file for %s: %s" -msgstr "Error al actualizar los metados adicionales para «%s»: %s\n" +msgstr "Error al actualizar los metados adicionales para «%s»: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Mientras se abría el repositorio %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "La clave de configuración %s no está establecida" -#: common/flatpak-dir.c:4444 -#, fuzzy, c-format +#: common/flatpak-dir.c:4528 +#, c-format msgid "No current %s pattern matching %s" -msgstr "No actualizar referencias relacionadas" +msgstr "Ningún patrón %s actual coincide con %s" -#: common/flatpak-dir.c:4666 -#, fuzzy +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" -msgstr "Commit a desplegar" +msgstr "No hay una confirmación de appstream que implementar" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" +"No se puede extraer desde un remoto verificado no gpg que no es de confianza" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" +"No se admiten datos adicionales para instalaciones de sistemas locales no " +"verificadas por gpg" -#: common/flatpak-dir.c:5662 -#, fuzzy, c-format +#: common/flatpak-dir.c:5806 +#, c-format msgid "Invalid checksum for extra data uri %s" -msgstr "Suma de verificación no válida en los datos adicionales %s" +msgstr "Suma de verificación no válida en los datos adicionales de uri %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Nombre vacío para los datos adicionales de la uri %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Uri de datos adicionales no soportada %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Fallo al cargar los datos adicionales locales %s: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Tamaño incorrecto en los datos adicionales %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "Mientras se descargan %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Tamaño incorrecto en los datos adicionales %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Suma de verificación no válida en los datos adicionales %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s «commit» %s ya está instalado" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "Mientras se está cargando %s desde el repositorio remoto %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "" "Se encontraron firmas GPG, pero ninguna está en un llavero de confianza" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" -msgstr "" +msgstr "La confirmación de «%s» no tiene enlace de referencia" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "" +"La confirmación de «%s» no está en las referencias enlazadas esperadas: %s" -#: common/flatpak-dir.c:6456 -#, fuzzy +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" -msgstr "Firmar una aplicación o «runtime»" +msgstr "Solo las aplicaciones pueden actualizarse" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "No hay suficiente memoria" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Fallo al leer desde un archivo exportado" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Error al leer un archivo de tipo mime XML" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Archivo de tipo mime XML no válido" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" -msgstr "" +msgstr "El archivo de servicio D-Bus «%s» tiene un nombre incorrecto" -#: common/flatpak-dir.c:7604 -#, fuzzy, c-format +#: common/flatpak-dir.c:7759 +#, c-format msgid "Invalid Exec argument %s" -msgstr "Formato de entorno no válido %s" +msgstr "Argumento de Exec no válido %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "Al obtener metadatos individuales: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 -#, fuzzy +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" -msgstr "Al obtener metadatos individuales: " +msgstr "Faltan datos adicionales en los metadatos separados" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "Al crear carpetas adicionales: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Firma de verificación incorrecta para los datos adicionales" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Tamaño incorrecto para los datos adicionales" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "Al escribir el archivo de datos adicionales «%s»: " -#: common/flatpak-dir.c:8159 -#, fuzzy, c-format +#: common/flatpak-dir.c:8315 +#, c-format msgid "Extra data %s missing in detached metadata" -msgstr "Al obtener metadatos individuales: " +msgstr "Faltan los datos adicionales %s en los metadatos separados" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "Ha fallado el script apply_extra, código de error %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" -msgstr "" +msgstr "La política establecida por su administrador no permite instalar %s" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "Mientras se intentan resolver las referencias %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s no está disponible" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "No se puede crear el carpeta de despliegue" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Error al leer el«commit» %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "Al intentar revisar %s en %s: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "Al intentar revisar el subcarpeta de metadatos: " -#: common/flatpak-dir.c:8719 -#, fuzzy, c-format +#: common/flatpak-dir.c:8897 +#, c-format msgid "While trying to checkout subpath ‘%s’: " -msgstr "Al intentar revisar %s en %s: " +msgstr "Al intentar revisar la subruta «%s»: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Al intentar eliminar la carpeta extra existente: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Al intentar aplicar datos adicionales: " -#: common/flatpak-dir.c:8767 -#, fuzzy, c-format +#: common/flatpak-dir.c:8945 +#, c-format msgid "Invalid commit ref %s: " -msgstr "PID %s no válido" +msgstr "Referencia de confirmación %s no válida: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "La referencias desplegadas %s no coinciden con el«commit» (%s)" -#: common/flatpak-dir.c:8781 -#, fuzzy, c-format +#: common/flatpak-dir.c:8959 +#, c-format msgid "Deployed ref %s branch does not match commit (%s)" -msgstr "La referencias desplegadas %s no coinciden con el«commit» (%s)" +msgstr "" +"La rama de referencia %s implementada no coincide con la confirmación (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s rama %s ya se encuentra instalada" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " -msgstr "" +msgstr "No se pudo desmontar el sistema de archivos revokefs-fuse en %s: " -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Esta versión de %s ya está instalada" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "" "No se puede cambiar el repositorio remoto durante la instalación de un " "paquete" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "" +"No se puede actualizar a una confirmación específica sin permisos de root" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" -msgstr "" +msgstr "No se puede eliminar %s, es necesario para: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s rama %s no está instalada" -#: common/flatpak-dir.c:11041 -#, fuzzy, c-format +#: common/flatpak-dir.c:11208 +#, c-format msgid "%s commit %s not installed" -msgstr "%s %s no instalado" +msgstr "Confirmación %s %s no instalada" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" -msgstr "" +msgstr "Error al podar el repositorio: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 -#, fuzzy, c-format +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 +#, c-format msgid "Failed to load filter '%s'" -msgstr "Error al leer el«commit» %s: " +msgstr "Fallo al cargar el filtro «%s»" -#: common/flatpak-dir.c:11557 -#, fuzzy, c-format +#: common/flatpak-dir.c:11724 +#, c-format msgid "Failed to parse filter '%s'" -msgstr "Error al leer el«commit» %s: " +msgstr "Fallo al analizar el filtro «%s»" -#: common/flatpak-dir.c:11839 -#, fuzzy +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " -msgstr "Fallo al crear un archivo temporal" +msgstr "Error al escribir la caché de resumen: " -#: common/flatpak-dir.c:11858 -#, fuzzy, c-format +#: common/flatpak-dir.c:12025 +#, c-format msgid "No oci summary cached for remote '%s'" -msgstr "No hay un caché de flatpak en el repositorio remoto" +msgstr "No se almacenó en caché ningún resumen de oci para el remoto «%s»" -#: common/flatpak-dir.c:12083 -#, fuzzy, c-format +#: common/flatpak-dir.c:12250 +#, c-format msgid "No cached summary for remote '%s'" -msgstr "No hay un caché de flatpak en el repositorio remoto" +msgstr "No se almacenó en caché ningún resumen para el remoto «%s»" -#: common/flatpak-dir.c:12124 -#, fuzzy, c-format +#: common/flatpak-dir.c:12291 +#, c-format msgid "Invalid checksum for indexed summary %s read from %s" -msgstr "Suma de verificación no válida en los datos adicionales %s" +msgstr "Suma de comprobación no válida para el resumen indexado %s leído de %s" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " "URL passed to remote-add was valid." msgstr "" +"Lista remota para %s no disponible. El servidor no tiene un archivo de " +"resumen. Verifique que la URL pasada a remote-add sea válida." -#: common/flatpak-dir.c:12574 -#, fuzzy, c-format +#: common/flatpak-dir.c:12741 +#, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" -msgstr "Suma de verificación no válida en los datos adicionales %s" +msgstr "" +"Suma de verificación no válida del resumen indexado %s para el remoto «%s»" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " -msgstr "" +msgstr "Múltiples ramas disponibles para %s, debe especificar una de estas: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Ninguna coincidencia %s" -#: common/flatpak-dir.c:13371 -#, fuzzy, c-format +#: common/flatpak-dir.c:13538 +#, c-format msgid "Can't find ref %s%s%s%s%s" -msgstr "No se ha encontrado %s%s%s%s%s en el repositorio remoto %s" +msgstr "No se puede encontrar la referencia %s%s%s%s%s" -#: common/flatpak-dir.c:13414 -#, fuzzy, c-format +#: common/flatpak-dir.c:13581 +#, c-format msgid "Error searching remote %s: %s" -msgstr "Error: Fallo al %s %s: %s\n" +msgstr "Error al buscar el remoto %s: %s" -#: common/flatpak-dir.c:13511 -#, fuzzy, c-format +#: common/flatpak-dir.c:13678 +#, c-format msgid "Error searching local repository: %s" -msgstr "Mantener referencia en el repositorio local" +msgstr "Error al buscar en el repositorio local: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s no instalado" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "No se pudo encontrar la instalación %s" -#: common/flatpak-dir.c:14395 -#, fuzzy, c-format +#: common/flatpak-dir.c:14563 +#, c-format msgid "Invalid file format, no %s group" -msgstr "Formato de entorno no válido %s" +msgstr "Formato de archivo no válido, no hay grupo %s" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 -#, fuzzy, c-format +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 +#, c-format msgid "Invalid version %s, only 1 supported" -msgstr "Tipo de enlace %s no válido, solo se soportan http/https" +msgstr "Versión no válida %s, solo se admite 1" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 -#, fuzzy, c-format +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 +#, c-format msgid "Invalid file format, no %s specified" -msgstr "Formato de entorno no válido %s" +msgstr "Formato de archivo no válido, no se especificó %s" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 -#, fuzzy +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" -msgstr "Formato de entorno no válido %s" +msgstr "Formato de archivo no válido, clave gpg no válida" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" -msgstr "" +msgstr "El ID de la colección requiere que se proporcione la clave GPG" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "El tiempo de ejecución %s, rama %s ya se encuentra instalado" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "La aplicación %s, rama %s ya se encuentra instalada" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" +"No se puede eliminar el remoto «%s» con la referencia %s instalada (al menos)" -#: common/flatpak-dir.c:14835 -#, fuzzy, c-format +#: common/flatpak-dir.c:15002 +#, c-format msgid "Invalid character '/' in remote name: %s" -msgstr "No se puede encontrar %s en el repositorio remoto %s" +msgstr "Carácter «/» no válido en el nombre remoto: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" -msgstr "" +msgstr "No se especificó ninguna configuración para el remoto %s" -#: common/flatpak-dir.c:16488 -#, fuzzy, c-format +#: common/flatpak-dir.c:16505 +#, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" -msgstr "PID %s no válido" +msgstr "Saltándose la eliminación de la referencia espejo (%s, %s)…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" -msgstr "" +msgstr "Se requiere una ruta absoluta" -#: common/flatpak-exports.c:923 -#, fuzzy, c-format +#: common/flatpak-exports.c:933 +#, c-format msgid "Unable to open path \"%s\": %s" -msgstr "No se puede actualizar %s: %s\n" +msgstr "No se puede abrir la ruta «%s»: %s" -#: common/flatpak-exports.c:930 -#, fuzzy, c-format +#: common/flatpak-exports.c:940 +#, c-format msgid "Unable to get file type of \"%s\": %s" -msgstr "Ha sido imposible crear una tubería sincronizada" +msgstr "No se puede obtener el tipo de archivo de «%s»: %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" -msgstr "" +msgstr "El archivo «%s» tiene un tipo no soportado 0o%o" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" +"No se pudo obtener la información del sistema de archivos para «%s»: %s" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" -msgstr "" +msgstr "Ignorando el bloqueo de ruta autofs «%s»" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" -msgstr "" +msgstr "La ruta «%s» está reservada por Flatpak" -#: common/flatpak-exports.c:1051 -#, fuzzy, c-format +#: common/flatpak-exports.c:1061 +#, c-format msgid "Unable to resolve symbolic link \"%s\": %s" -msgstr "Mientras se está cargando %s desde el repositorio remoto %s: " +msgstr "No se puede resolver el enlace simbólico «%s»: %s" -#: common/flatpak-installation.c:831 -#, fuzzy, c-format +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "La cadena vacía no es un número" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "«%s» no es un número sin signo" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "El número «%s» está fuera de los límites [%s, %s]" + +#: common/flatpak-installation.c:835 +#, c-format msgid "Ref %s not installed" -msgstr "%s no está instalado" +msgstr "Referencia %s no instalada" -#: common/flatpak-installation.c:872 -#, fuzzy, c-format +#: common/flatpak-installation.c:876 +#, c-format msgid "App %s not installed" -msgstr "%s no está instalado" +msgstr "Aplicación %s no instalada" -#: common/flatpak-installation.c:1393 -#, fuzzy, c-format +#: common/flatpak-installation.c:1396 +#, c-format msgid "Remote '%s' already exists" -msgstr "El repositorio remoto %s ya existe" +msgstr "El remoto «%s» ya existe" -#: common/flatpak-installation.c:1944 -#, fuzzy, c-format +#: common/flatpak-installation.c:1947 +#, c-format msgid "As requested, %s was only pulled, but not installed" -msgstr "La extensión %s requerida solo está instalada parcialmente" +msgstr "Según lo solicitado, %s solo se extrajo, pero no se instaló" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 -#, fuzzy, c-format +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 +#, c-format msgid "Unable to create directory %s" -msgstr "Ha sido imposible crear una tubería sincronizada" +msgstr "No se puede crear la carpeta %s" -#: common/flatpak-instance.c:529 -#, fuzzy, c-format +#: common/flatpak-instance.c:554 +#, c-format msgid "Unable to lock %s" -msgstr "Ha sido imposible crear una tubería sincronizada" - -#: common/flatpak-instance.c:581 -#, fuzzy, c-format -msgid "Unable to open directory %s" -msgstr "Permitir que la aplicación tenga nombre propio en el bus de sistema" +msgstr "No se puede bloquear %s" -#: common/flatpak-instance.c:607 -#, fuzzy, c-format +#: common/flatpak-instance.c:627 +#, c-format msgid "Unable to create temporary directory in %s" -msgstr "No se puede crear el carpeta de despliegue" +msgstr "No se puede crear una carpeta temporal en %s" -#: common/flatpak-instance.c:619 -#, fuzzy, c-format +#: common/flatpak-instance.c:639 +#, c-format msgid "Unable to create file %s" -msgstr "Ha sido imposible crear una tubería sincronizada" +msgstr "No se puede crear el archivo %s" -#: common/flatpak-instance.c:626 -#, fuzzy, c-format +#: common/flatpak-instance.c:646 +#, c-format msgid "Unable to update symbolic link %s/%s" -msgstr "Mientras se está cargando %s desde el repositorio remoto %s: " +msgstr "No se puede actualizar el enlace simbólico %s/%s" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" -msgstr "" +msgstr "Solo se admite la autenticación de portador" -#: common/flatpak-oci-registry.c:1004 -#, fuzzy +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" -msgstr "Nombre dbus no válido: %s\n" +msgstr "Nombre dbus no válido: %s" -#: common/flatpak-oci-registry.c:1011 -#, fuzzy +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" -msgstr "Nombre dbus no válido: %s\n" +msgstr "Nombre dbus no válido: %s" -#: common/flatpak-oci-registry.c:1080 -#, fuzzy, c-format +#: common/flatpak-oci-registry.c:1097 +#, c-format msgid "Authorization failed: %s" -msgstr "Nombre dbus no válido: %s\n" +msgstr "Nombre dbus no válido: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" -msgstr "" +msgstr "Autorización fallida" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" -msgstr "" +msgstr "Estado de respuesta inesperado %d al solicitar el token: %s" -#: common/flatpak-oci-registry.c:1097 -#, fuzzy +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" -msgstr "Nombre dbus no válido: %s\n" +msgstr "Nombre dbus no válido: %s" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 -#, fuzzy +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" -msgstr "Formato de entorno no válido %s" +msgstr "Formato de archivo delta no válido" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" -msgstr "" +msgstr "No se encontró ninguna clave gpg con ID %s (homedir: %s)" -#: common/flatpak-oci-registry.c:2476 -#, fuzzy, c-format +#: common/flatpak-oci-registry.c:2493 +#, c-format msgid "Unable to lookup key ID %s: %d" -msgstr "No se puede actualizar %s: %s\n" +msgstr "No se puede buscar el ID de clave %s: %d" -#: common/flatpak-oci-registry.c:2484 -#, fuzzy, c-format +#: common/flatpak-oci-registry.c:2501 +#, c-format msgid "Error signing commit: %d" -msgstr "Error: Fallo al %s %s: %s\n" +msgstr "Error al firmar la confirmación: %d" -#: common/flatpak-progress.c:236 -#, fuzzy, c-format -msgid "Downloading metadata: %u/(estimating) %s" -msgstr "Descargando %s" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Configuración de imagen OCI no válida" -#: common/flatpak-progress.c:260 -#, fuzzy, c-format -msgid "Downloading: %s/%s" -msgstr "Descargando %s" +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Suma de comprobación de capa incorrecta, se esperaba %s, se obtuvo %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "No se especificó ninguna referencia para la imagen OCI %s" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Ref incorrecta (%s) especificada para la imagen OCI %s, se esperaba %s" + +#: common/flatpak-progress.c:236 +#, c-format +msgid "Downloading metadata: %u/(estimating) %s" +msgstr "Descargando metadatos: %u/(estimando) %s" + +#: common/flatpak-progress.c:260 +#, c-format +msgid "Downloading: %s/%s" +msgstr "Descargando: %s/%s" #: common/flatpak-progress.c:280 -#, fuzzy, c-format +#, c-format msgid "Downloading extra data: %s/%s" -msgstr "Descargando %s" +msgstr "Descargando datos adicionales: %s/%s" #: common/flatpak-progress.c:285 -#, fuzzy, c-format +#, c-format msgid "Downloading files: %d/%d %s" -msgstr "Descargando %s" +msgstr "Descargando archivos: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" -msgstr "" +msgstr "El nombre no puede estar vacío" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" -msgstr "" +msgstr "El nombre no puede tener más de 255 caracteres" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" -msgstr "" +msgstr "El nombre no puede comenzar con un punto" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" -msgstr "" +msgstr "El nombre no puede comenzar con %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" -msgstr "" +msgstr "El nombre no puede terminar con un punto" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" -msgstr "" +msgstr "Solo el segmento de apellido puede contener -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" -msgstr "" +msgstr "El segmento de nombre no puede comenzar con %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" -msgstr "" +msgstr "El nombre no puede contener %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" -msgstr "" +msgstr "Los nombres deben contener al menos 2 puntos" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" -msgstr "" +msgstr "La arquitectura no puede estar vacía" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" -msgstr "" +msgstr "La arquitectura no puede contener %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" -msgstr "" +msgstr "La rama no puede estar vacía" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" -msgstr "" +msgstr "La rama no puede empezar con %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" -msgstr "" +msgstr "La rama no puede contener %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" -msgstr "" +msgstr "Referencia demasiado larga" -#: common/flatpak-ref-utils.c:624 -#, fuzzy +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" -msgstr "Sin remoto %s" +msgstr "Nombre de remoto no válido" -#: common/flatpak-ref-utils.c:638 -#, fuzzy, c-format +#: common/flatpak-ref-utils.c:641 +#, c-format msgid "%s is not application or runtime" -msgstr "Firmar una aplicación o «runtime»" +msgstr "%s no es una aplicación o tiempo de ejecución" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 -#, fuzzy, c-format +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 +#, c-format msgid "Wrong number of components in %s" -msgstr "Demasiados argumentos" +msgstr "Número incorrecto de componentes en %s" -#: common/flatpak-ref-utils.c:653 -#, fuzzy, c-format +#: common/flatpak-ref-utils.c:656 +#, c-format msgid "Invalid name %.*s: %s" -msgstr "Nombre dbus no válido: %s\n" +msgstr "Nombre %.*s no válido: %s" -#: common/flatpak-ref-utils.c:670 -#, fuzzy, c-format +#: common/flatpak-ref-utils.c:673 +#, c-format msgid "Invalid arch: %.*s: %s" -msgstr "Rama «%s» no válida: %s" +msgstr "Arquitectura no válida: %.*s: %s" -#: common/flatpak-ref-utils.c:813 -#, fuzzy, c-format +#: common/flatpak-ref-utils.c:816 +#, c-format msgid "Invalid name %s: %s" -msgstr "Nombre dbus no válido: %s\n" +msgstr "Nombre %s no válido: %s" -#: common/flatpak-ref-utils.c:831 -#, fuzzy, c-format +#: common/flatpak-ref-utils.c:834 +#, c-format msgid "Invalid arch: %s: %s" -msgstr "Rama «%s» no válida: %s" +msgstr "Arquitectura no válida: %s: %s" -#: common/flatpak-ref-utils.c:850 -#, fuzzy, c-format +#: common/flatpak-ref-utils.c:853 +#, c-format msgid "Invalid branch: %s: %s" -msgstr "Rama «%s» no válida: %s" +msgstr "Rama no válida: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 -#, fuzzy, c-format +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 +#, c-format msgid "Wrong number of components in partial ref %s" -msgstr "Demasiados argumentos" +msgstr "Número erróneo de componentes en la referencia parcial %s" -#: common/flatpak-ref-utils.c:1295 -#, fuzzy +#: common/flatpak-ref-utils.c:1298 msgid " development platform" -msgstr "Usar tiempo de ejecución de desarrollo" +msgstr " plataforma de desarrollo" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" -msgstr "" +msgstr " plataforma" -#: common/flatpak-ref-utils.c:1299 -#, fuzzy +#: common/flatpak-ref-utils.c:1302 msgid " application base" -msgstr "Aplicación" +msgstr " base de aplicación" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" -msgstr "" +msgstr " símbolos de depuración" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" -msgstr "" +msgstr " código fuente" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " traducciones" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" -msgstr "" +msgstr " docs" -#: common/flatpak-ref-utils.c:1575 -#, fuzzy, c-format +#: common/flatpak-ref-utils.c:1578 +#, c-format msgid "Invalid id %s: %s" -msgstr "PID %s no válido" +msgstr "Id %s no válido: %s" -#: common/flatpak-remote.c:1215 -#, fuzzy, c-format +#: common/flatpak-remote.c:1216 +#, c-format msgid "Bad remote name: %s" -msgstr "Sin remoto %s" +msgstr "Nombre de remoto defectuoso: %s" -#: common/flatpak-remote.c:1219 -#, fuzzy +#: common/flatpak-remote.c:1220 msgid "No url specified" -msgstr "Comando no especificado" +msgstr "No se ha especificado una url" -#: common/flatpak-remote.c:1265 -#, fuzzy +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "" -"La verificación GPG es obligatoria si las colecciones están habilitadas" +"La verificación GPG debe estar activada cuando se establece una ID de " +"colección" -#: common/flatpak-run.c:1241 -#, fuzzy -msgid "Failed to open app info file" -msgstr "Fallo al abrir el archivo de información de una aplicación: %s" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Sin orígenes de datos adicionales" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Ha sido imposible crear una tubería sincronizada" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "%s no válido: falta el grupo «%s»" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Fallo al sincronizar con el proxy de dbus" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "%s no válido: falta la clave «%s»" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Clave GPG no válida" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Error al copiar el ícono de 64x64 para el componente %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Error al copiar el ícono de 128x128 para el componente %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "" +"%s está al final de su vida útil, ignorando en el flujo de aplicaciones" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "No hay datos de appstream para %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Paquete no válido, sin referencia en los metadatos" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "" +"La colección «%s» del paquete no coincide con la colección «%s» del remoto" -#: common/flatpak-run.c:2207 +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Los metadatos en el encabezado y la aplicación son inconsistentes" + +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "" +"No hay sesión de usuario de systemd disponible, cgroups no está disponible" -#: common/flatpak-run.c:2700 -#, fuzzy +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" -msgstr "Ha sido imposible crear una tubería sincronizada" +msgstr "No se puede asignar el id de instancia" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 -#, fuzzy, c-format +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 +#, c-format msgid "Failed to open flatpak-info file: %s" -msgstr "Fallo al abrir un archivo temporal de flatpak-info: %s" +msgstr "Fallo al abrir el archivo flatpak-info: %s" -#: common/flatpak-run.c:2875 -#, fuzzy, c-format +#: common/flatpak-run.c:1557 +#, c-format msgid "Failed to open bwrapinfo.json file: %s" -msgstr "Fallo al abrir un archivo temporal de flatpak-info: %s" +msgstr "Fallo al abrir el archivo bwrapinfo.json: %s" -#: common/flatpak-run.c:2900 -#, fuzzy, c-format +#: common/flatpak-run.c:1582 +#, c-format msgid "Failed to write to instance id fd: %s" -msgstr "Fallo al crear un archivo temporal" +msgstr "No se pudo escribir en el ID de instancia fd: %s" -#: common/flatpak-run.c:3290 -#, fuzzy +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" -msgstr "Inicializar aplicaciones desde la aplicación nombrada" +msgstr "Error al inicializar seccomp" -#: common/flatpak-run.c:3329 -#, fuzzy, c-format +#: common/flatpak-run.c:2016 +#, c-format msgid "Failed to add architecture to seccomp filter: %s" -msgstr "Fallo al escribir un archivo temporal" +msgstr "Error al agregar arquitectura al filtro seccomp: %s" -#: common/flatpak-run.c:3337 -#, fuzzy, c-format +#: common/flatpak-run.c:2024 +#, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" -msgstr "Fallo al escribir un archivo temporal" +msgstr "No se pudo agregar la arquitectura multiarch al filtro seccomp: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 -#, fuzzy, c-format +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 +#, c-format msgid "Failed to block syscall %d: %s" -msgstr "Error: Fallo al %s %s: %s\n" +msgstr "No se pudo bloquear la llamada al sistema %d: %s" -#: common/flatpak-run.c:3424 -#, fuzzy, c-format +#: common/flatpak-run.c:2128 +#, c-format msgid "Failed to export bpf: %s" -msgstr "Fallo al leer desde un archivo exportado" +msgstr "Fallo al exportar bpf: %s" -#: common/flatpak-run.c:3675 -#, fuzzy, c-format +#: common/flatpak-run.c:2427 +#, c-format msgid "Failed to open ‘%s’" -msgstr "Fallo al abrir un archivo temporal de flatpak-info: %s" +msgstr "Fallo al abrir «%s»" -#: common/flatpak-run.c:3961 -#, fuzzy, c-format +#: common/flatpak-run.c:2714 +#, c-format msgid "ldconfig failed, exit status %d" -msgstr "Ha fallado el script apply_extra, código de error %d" +msgstr "ldconfig falló, estado de salida %d" -#: common/flatpak-run.c:3968 -#, fuzzy +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" -msgstr "No se puede abrir el espacio de nombres %s: %s" +msgstr "No se puede abrir el ld.so.cache generado" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" -msgstr "" +msgstr "La política establecida por su administrador no permite ejecutar %s" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" +"«flatpak run» no está diseñado para ejecutarse como «sudo flatpak run». Use " +"«sudo -i» o «su -l» en su lugar e invoque «flatpak run» desde dentro del " +"nuevo shell." -#: common/flatpak-run.c:4376 -#, fuzzy, c-format +#: common/flatpak-run.c:3141 +#, c-format msgid "Failed to migrate from %s: %s" -msgstr "Error al leer el«commit» %s: " +msgstr "Fallo al migrar desde %s: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" +"Error al migrar la carpeta de datos de la aplicación anterior %s al nuevo " +"nombre %s: %s" -#: common/flatpak-run.c:4406 -#, fuzzy, c-format +#: common/flatpak-run.c:3171 +#, c-format msgid "Failed to create symlink while migrating %s: %s" -msgstr "Error al leer el«commit» %s: " +msgstr "Fallo al crear el enlace simbólico durante la migración de %s: %s" -#: common/flatpak-transaction.c:2209 -#, fuzzy, c-format +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Fallo al abrir el archivo de información de la aplicación" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Ha sido imposible crear una tubería sincronizada" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Fallo al sincronizar con el proxy de dbus" + +#: common/flatpak-transaction.c:2210 +#, c-format msgid "Warning: Problem looking for related refs: %s" -msgstr "Aviso: Problema al buscar referencias relacionadas: %s\n" +msgstr "Aviso: Problema al buscar referencias relacionadas: %s" -#: common/flatpak-transaction.c:2434 -#, fuzzy, c-format +#: common/flatpak-transaction.c:2428 +#, c-format msgid "The application %s requires the runtime %s which was not found" -msgstr "La aplicación %s rama %s no está instalada" +msgstr "La aplicación %s requiere el tiempo de ejecución %s que no se encontró" -#: common/flatpak-transaction.c:2450 -#, fuzzy, c-format +#: common/flatpak-transaction.c:2444 +#, c-format msgid "The application %s requires the runtime %s which is not installed" -msgstr "La aplicación %s rama %s no está instalada" +msgstr "" +"La aplicación %s requiere el tiempo de ejecución %s que no está instalado" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" -msgstr "" +msgstr "No se puede desinstalar %s que %s necesita" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "" "El repositorio remoto %s está deshabilitado, ignorando la actualización %s" -#: common/flatpak-transaction.c:2711 -#, fuzzy, c-format +#: common/flatpak-transaction.c:2706 +#, c-format msgid "%s is already installed" -msgstr "%s«commit» %s ya está instalado" +msgstr "%s ya está instalado" -#: common/flatpak-transaction.c:2714 -#, fuzzy, c-format +#: common/flatpak-transaction.c:2709 +#, c-format msgid "%s is already installed from remote %s" -msgstr "%s«commit» %s ya está instalado" +msgstr "%s ya fue instalado desde el remoto %s" -#: common/flatpak-transaction.c:2911 -#, fuzzy, c-format +#: common/flatpak-transaction.c:3020 +#, c-format msgid "Invalid .flatpakref: %s" -msgstr "PID %s no válido" +msgstr ".flatpakref no válido: %s" -#: common/flatpak-transaction.c:3026 -#, fuzzy, c-format +#: common/flatpak-transaction.c:3135 +#, c-format msgid "Error updating remote metadata for '%s': %s" -msgstr "Error al actualizar los metados adicionales para «%s»: %s\n" +msgstr "Error al actualizar los metadatos del remoto para «%s»: %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " "installed: %s" msgstr "" +"Advertencia: Tratando el error de recuperación remota como no fatal ya que " +"%s ya está instalado: %s" -#: common/flatpak-transaction.c:3839 -#, fuzzy, c-format +#: common/flatpak-transaction.c:3950 +#, c-format msgid "No authenticator installed for remote '%s'" -msgstr "La autentificación es obligatoria para actualizar un programa" +msgstr "No se ha instalado un autenticador para el remoto «%s»" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 -#, fuzzy, c-format +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 +#, c-format msgid "Failed to get tokens for ref: %s" -msgstr "Fallo al abrir un archivo temporal: %s" +msgstr "Fallo al obtener identificadores para la referencia: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 -#, fuzzy +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" -msgstr "Fallo al abrir un archivo temporal: %s" +msgstr "Fallo al obtener identificadores para la referencia" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" -msgstr "" +msgstr "Ref %s de %s coincide con más de una operación de transacción" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 -#, fuzzy +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" -msgstr "Remoto" +msgstr "cualquier remoto" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" +"No se encontró ninguna operación de transacción para la referencia %s de %s" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" -msgstr "" +msgstr "Flatpakrepo URL %s no archivo, HTTP o HTTPS" -#: common/flatpak-transaction.c:4348 -#, fuzzy, c-format +#: common/flatpak-transaction.c:4460 +#, c-format msgid "Can't load dependent file %s: " -msgstr "No se puede abrir el espacio de nombres %s: %s" +msgstr "No se puede cargar el archivo dependiente %s: " -#: common/flatpak-transaction.c:4356 -#, fuzzy, c-format +#: common/flatpak-transaction.c:4468 +#, c-format msgid "Invalid .flatpakrepo: %s" -msgstr "PID %s no válido" +msgstr ".flatpakrepo no válido: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" -msgstr "" +msgstr "La transacción ya se ejecutó" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." msgstr "" +"¡Negándose a operar en una instalación de usuario como root! Esto puede dar " +"lugar a una propiedad incorrecta del archivo y errores de permiso." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" -msgstr "" +msgstr "Abortado por el usuario" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" -msgstr "" +msgstr "Saltando %s debido al error anterior" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" -msgstr "" +msgstr "Abortado debido a fallo (%s)" #: common/flatpak-uri.c:118 -#, fuzzy, no-c-format +#, no-c-format msgid "Invalid %-encoding in URI" -msgstr "Nombre de extensión %s no válido" +msgstr "%-encoding no válido en URI" #: common/flatpak-uri.c:135 msgid "Illegal character in URI" -msgstr "" +msgstr "Carácter ilegal en URI" #: common/flatpak-uri.c:169 msgid "Non-UTF-8 characters in URI" -msgstr "" +msgstr "Caracteres no UTF-8 en URI" #: common/flatpak-uri.c:275 #, c-format msgid "Invalid IPv6 address ‘%.*s’ in URI" -msgstr "" +msgstr "Dirección IPv6 no válida «%.*s» en URI" #: common/flatpak-uri.c:330 #, c-format msgid "Illegal encoded IP address ‘%.*s’ in URI" -msgstr "" +msgstr "Dirección IP codificada ilegal «%.*s» en URI" #: common/flatpak-uri.c:342 #, c-format msgid "Illegal internationalized hostname ‘%.*s’ in URI" -msgstr "" +msgstr "Nombre de host internacionalizado ilegal «%.*s» en URI" #: common/flatpak-uri.c:374 common/flatpak-uri.c:386 -#, fuzzy, c-format +#, c-format msgid "Could not parse port ‘%.*s’ in URI" -msgstr "No se pudo analizar «%s»" +msgstr "No se pudo analizar el puerto «%.*s» en URI" #: common/flatpak-uri.c:393 #, c-format msgid "Port ‘%.*s’ in URI is out of range" -msgstr "" +msgstr "El puerto «%.*s» en URI está fuera de rango" #: common/flatpak-uri.c:910 msgid "URI is not absolute, and no base URI was provided" -msgstr "" +msgstr "El URI no es absoluto y no se proporcionó ningún URI base" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" msgstr "" -#: common/flatpak-utils.c:906 -#, fuzzy -msgid "Too many segments in glob" -msgstr "Demasiados argumentos" - -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:111 #, fuzzy, c-format -msgid "Invalid glob character '%c'" -msgstr "PID %s no válido" +msgid "Invalid USB class" +msgstr "Id %s no válido: %s" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:125 #, c-format -msgid "Missing glob on line %d" +msgid "Invalid USB subclass" msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Trailing text on line %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "on line %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:205 #, c-format -msgid "Unexpected word '%s' on line %d" +msgid "USB device queries must be in the form TYPE:DATA" msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:225 #, c-format -msgid "Invalid %s: Missing group ‘%s’" +msgid "Unknown USB query rule %s" msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing key ‘%s’" +msgid "Empty USB query" msgstr "" -#: common/flatpak-utils.c:2375 -#, fuzzy -msgid "Invalid gpg key" -msgstr "PID %s no válido" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Sin orígenes de datos adicionales" - -#: common/flatpak-utils.c:5431 -#, fuzzy, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Error: Fallo al %s %s: %s\n" - -#: common/flatpak-utils.c:5437 -#, fuzzy, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Error: Fallo al %s %s: %s\n" - -#: common/flatpak-utils.c:5684 +#: common/flatpak-usb.c:274 #, c-format -msgid "%s is end-of-life, ignoring for appstream" +msgid "Multiple USB query rules of the same type is not supported" msgstr "" -#: common/flatpak-utils.c:5719 -#, fuzzy, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Actualizando appstream para el repositorio remoto %s\n" - -#: common/flatpak-utils.c:6689 -#, fuzzy -msgid "Invalid bundle, no ref in metadata" -msgstr "Firma de verificación incorrecta para los datos adicionales" - -#: common/flatpak-utils.c:6791 +#: common/flatpak-usb.c:283 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgid "'all' must not contain extra query rules" msgstr "" -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" +#: common/flatpak-usb.c:291 +#, c-format +msgid "USB queries with 'dev' must also specify vendors" msgstr "" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "El glob no puede coincidir con las aplicaciones" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 -#, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Glob vacío" + +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "Demasiados argumentos en el glob" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:733 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "" +msgid "Invalid glob character '%c'" +msgstr "Caracter de glob «%c» no válido" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:787 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "" +msgid "Missing glob on line %d" +msgstr "Falta un glob en la línea %d" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:791 #, c-format -msgid "Invalid require-flatpak argument %s" -msgstr "" +msgid "Trailing text on line %d" +msgstr "Texto final en la línea %d" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:795 #, c-format -msgid "%s needs a later flatpak version (%s)" -msgstr "%s necesita una versión de flatpak superior (%s)" +msgid "on line %d" +msgstr "en la línea %d" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "" +#: common/flatpak-utils.c:817 +#, c-format +msgid "Unexpected word '%s' on line %d" +msgstr "Palabra «%s» inesperada en la línea %d" -#: common/flatpak-utils.c:8401 +#: common/flatpak-utils.c:1980 #, c-format -msgid "“%s” is not an unsigned number" -msgstr "" +msgid "Invalid require-flatpak argument %s" +msgstr "Argumento de require-flatpak no válido %s" -#: common/flatpak-utils.c:8411 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "" +msgid "%s needs a later flatpak version (%s)" +msgstr "%s necesita una versión de flatpak superior (%s)" #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" -msgstr "" +msgstr "No es un oci remoto, falta summary.xa.oci-repository" #: oci-authenticator/flatpak-oci-authenticator.c:477 msgid "Not a OCI remote" -msgstr "" +msgstr "No es un remoto OCI" #: oci-authenticator/flatpak-oci-authenticator.c:488 -#, fuzzy msgid "Invalid token" -msgstr "PID %s no válido" +msgstr "Token no válido" -#: portal/flatpak-portal.c:2264 -#, fuzzy +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" -msgstr "Ninguna coincidencia %s" +msgstr "No se encontró soporte de portal" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Denegar" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Actualizar" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "¿Actualizar %s?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." -msgstr "" +msgstr "La aplicación necesita actualizarse." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" +"El acceso a la actualización se puede cambiar desde la configuración de " +"privacidad." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" -msgstr "" +msgstr "No se permite actualizar la aplicación" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" +"No se permite la actualización automática, la versión nueva requiere nuevos " +"permisos" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 -#, fuzzy +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" -msgstr "Actualizar tiempo de ejecución firmado" +msgstr "La actualización finalizó inesperadamente" #. SECURITY: #. - Normal users need admin authentication to install software @@ -5822,9 +5939,8 @@ msgstr "Instalar aplicación firmada" #: system-helper/org.freedesktop.Flatpak.policy.in:24 #: system-helper/org.freedesktop.Flatpak.policy.in:42 -#, fuzzy msgid "Authentication is required to install software" -msgstr "La autentificación es obligatoria para actualizar un programa" +msgstr "Se requiere autenticación para instalar el software" #. SECURITY: #. - Normal users need admin authentication to install software @@ -5868,9 +5984,8 @@ msgid "Update remote metadata" msgstr "Actualizar metadatos remotos" #: system-helper/org.freedesktop.Flatpak.policy.in:95 -#, fuzzy msgid "Authentication is required to update remote info" -msgstr "La autentificación es obligatoria para actualizar un programa" +msgstr "Se requiere autenticación para actualizar la información remota" #. SECURITY: #. - Normal users do not need authentication to modify the @@ -5878,15 +5993,12 @@ msgstr "La autentificación es obligatoria para actualizar un programa" #. - Note that we install polkit rules that allow local users #. in the wheel group to modify repos without authenticating. #: system-helper/org.freedesktop.Flatpak.policy.in:111 -#, fuzzy msgid "Update system repository" -msgstr "Actualizar el archivo de resumen en un repositorio" +msgstr "Actualizar el repositorio del sistema" #: system-helper/org.freedesktop.Flatpak.policy.in:112 -#, fuzzy msgid "Authentication is required to modify a system repository" -msgstr "" -"La autentificación es obligatoria para actualizar la información remota" +msgstr "Se requiere autenticación para modificar un repositorio del sistema" #. SECURITY: #. - Normal users need admin authentication to install software @@ -5896,9 +6008,8 @@ msgid "Install bundle" msgstr "Instalar paquete" #: system-helper/org.freedesktop.Flatpak.policy.in:127 -#, fuzzy msgid "Authentication is required to install software from $(path)" -msgstr "La autentificación es obligatoria para instalar un programa" +msgstr "Se requiere autenticación para instalar software desde $(path)" #. SECURITY: #. - Normal users need admin authentication to uninstall software @@ -5910,9 +6021,8 @@ msgid "Uninstall runtime" msgstr "Desinstalar tiempo de ejecución" #: system-helper/org.freedesktop.Flatpak.policy.in:145 -#, fuzzy msgid "Authentication is required to uninstall software" -msgstr "La autentificación es obligatoria para desinstalar un programa" +msgstr "Se requiere autenticación para desinstalar el software" #. SECURITY: #. - Normal users need admin authentication to uninstall software @@ -5924,9 +6034,8 @@ msgid "Uninstall app" msgstr "Desinstalar aplicación" #: system-helper/org.freedesktop.Flatpak.policy.in:162 -#, fuzzy msgid "Authentication is required to uninstall $(ref)" -msgstr "La autentificación es obligatoria para desinstalar un programa" +msgstr "Se requiere autenticación para desinstalar $(ref)" #. SECURITY: #. - Normal users need admin authentication to configure system-wide @@ -5936,10 +6045,8 @@ msgid "Configure Remote" msgstr "Configurar Repositorio Remoto" #: system-helper/org.freedesktop.Flatpak.policy.in:178 -#, fuzzy msgid "Authentication is required to configure software repositories" -msgstr "" -"La autentificación es obligatoria para configurar repositorio de software" +msgstr "Se requiere autenticación para configurar repositorios de software" #. SECURITY: #. - Normal users need admin authentication to configure the system-wide @@ -5949,10 +6056,8 @@ msgid "Configure" msgstr "Configurar" #: system-helper/org.freedesktop.Flatpak.policy.in:193 -#, fuzzy msgid "Authentication is required to configure software installation" -msgstr "" -"La autentificación es obligatoria para configurar repositorio de software" +msgstr "Se requiere autenticación para configurar la instalación del software" #. SECURITY: #. - Normal users do not require admin authentication to update @@ -5965,10 +6070,9 @@ msgid "Update appstream" msgstr "Actualizar appstream" #: system-helper/org.freedesktop.Flatpak.policy.in:211 -#, fuzzy msgid "Authentication is required to update information about software" msgstr "" -"La autentificación es obligatoria para actualizar la información remota" +"Se requiere autenticación para actualizar la información sobre el software" #. SECURITY: #. - Normal users do not require admin authentication to update @@ -5977,14 +6081,12 @@ msgstr "" #. - Changing this to anything other than 'yes' will break unattended #. updates. #: system-helper/org.freedesktop.Flatpak.policy.in:228 -#, fuzzy msgid "Update metadata" -msgstr "Actualizar metadatos remotos" +msgstr "Actualizar metadatos" #: system-helper/org.freedesktop.Flatpak.policy.in:229 -#, fuzzy msgid "Authentication is required to update metadata" -msgstr "La autentificación es obligatoria para actualizar un programa" +msgstr "La autentificación es obligatoria para actualizar los metadatos" #. SECURITY: #. - Authorisation to actually install software is controlled by @@ -6035,14 +6137,40 @@ msgstr "La autentificación es obligatoria para actualizar un programa" #. all users’ parental controls policies to true. #: system-helper/org.freedesktop.Flatpak.policy.in:287 msgid "Override parental controls" -msgstr "" +msgstr "Desactivar control parental" #: system-helper/org.freedesktop.Flatpak.policy.in:288 -#, fuzzy msgid "" "Authentication is required to install software which is restricted by your " "parental controls policy" -msgstr "La autentificación es obligatoria para instalar un programa" +msgstr "" +"La autentificación es obligatoria para instalar un programa que está " +"restringido por su política de control parental" + +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "Se encontraron ref(s) similares instaladas para «%s» en el remoto «%s» " +#~ "(%s).\n" +#~ "¿Usar este remoto?" + +#, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "No hay entrada para %s en la caché de resumen del remoto «%s» " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Fallo al desinstalar %s para rebasar a %s: " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Fallo al desinstalar %s para rebasar a %s: %s\n" + +#, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "No se puede abrir la carpeta %s" #~ msgid "install" #~ msgstr "instalar" diff --git a/po/fr.gmo b/po/fr.gmo deleted file mode 100644 index 6ef321a90582f5712b71f69a192cfc1e059befde..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2735 zcmai!OKclO7{>=_p$%<;@-78^q79*sZIZUAm1z;Fy=|<Q6fRBKOG0FRnf^F~w=z$-B&x2osC&0TP+q(y1tJt$! zi2dL`@Gp;5D!dvc2!Xr@>#r3GgrQ2Dp2#5EsBM$a(()JO_Rc zJ`Vl~a-4gyiTCdZ*^eXO0q_#Yaa;p=-z^Yf7JGql!{6ifWckJRIJZb;aTeE!8%kZ| znC&55MShEXQ^?N zb~Nc&_7v&FIweC&yVQ-O%j9ageYDi%iPQ16g)++on-}cRd>X4z8@8KUMYsAYp(ssP zb-q&lq*6LnDuCJ(Bt(UIc(ylM&n+?BKZ;7k^+g`mU7Mj($px#_8 z!d;we_*DG7bE!4ASe<{DJgOQcokH0xtZ>w*$v6X?C<%8uGNR3#j!!+gd8|yr;n8t! z9jz#`nd<1SR-tIfRYjq)PAAgoG{H$SOp|C`G?xRT6m`-#){djE*FXoE7cXf@mjP0U1TaS#4(_2NNqN@gYUqL`4$W_sv0Bk+NPqS41t^$o~?G zh{DG-s+*C>GRo7J2`z`KV#%a8RmXYt(0fZ6i+C#I%EuCy!A!JpqH$is_H^i7%6rxe z(hBvR%WP$Ox`#65E2j|jbm_sE+S**%iKV93Qfr#e_G*ZyLZ@d=&w8`7-kBLXJzJTX z^=4k1nVDFCIWNFFvv4{!6`GeuQ%fe2rYYzve@#crt140sNxy(FaA;)9Ki)LjsysWD zDE9_VN_si2vll2CS7|<9M&rdojo?5R$=U23wxb9t1i9&|i`K1)^z|k3;KYY{46z&XV(o&v4 zT4LOxQdQJYW3~v({cFR#t2=#-!WC*%D$M<>wjOh1(%ztL3&O!hHu%PkPWZnCrP9;` zzZ$e#zL>k2=C}=T9ydH1Y!vd7NrN|2ov-^X7N0E5x2cbIxLUbUH255^q-WAR!wJ0V zUz7;5(bQ0hSd(N&x2zN--l4{~d%OXwr|^Oz4P`3a6D@?Vj7v4# z!G}$gL`6jqa4vT`!u`Qnsj*y`NW$R`UJ5#o9ejszncwCS$8QCctNb43q6i*3wj~Hw zGr6WZuzqLBZw1YI%O`v+Hy0QE1)Sj3e6PANxKn7*LVbCtZi~%Etv$*s22={1KUBEE z225ZgEkGz@!;m-7bJNm@6f)$m6hx4dvhyM~GX9 zDoKh58xTbl5rzsW3~^0{H+(c4NgifKuV;%!iuSnXoA+l}c|3lnST%7|qTKPLc|S+= Is!+^-0IT)%1poj5 diff --git a/po/fr.po b/po/fr.po index 3f8d515..23f0380 100644 --- a/po/fr.po +++ b/po/fr.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" "PO-Revision-Date: 2021-11-30 21:01-0500\n" "Last-Translator: Hari Rana / TheEvilSkeleton \n" "Language-Team: \n" @@ -17,106 +17,106 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 3.0\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Exporter le runtime au lieu de l'appli" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Architecture à regrouper pour" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARCHITECTURE" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Url du dépôt" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Url du runtime du fichier flatpakrepo" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Ajouter une clé GPG par FICHIER (- pour stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "FICHIER" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "ID de clé GPG pour signer l'image OCI avec" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "ID-DE-CLÉ" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "ID-DE-CLÉ" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "" "Répertoire personnel GPG à utiliser lors de la recherche de trousseaux de " "clés" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "RÉPERTOIRE PERSONNEL" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "OSTree commit pour créer une liasse delta à partir de" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "COMMIT" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Exporter l'image oci au lieu d'une liasse flatpak" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -124,58 +124,58 @@ msgstr "" "LOCALISATION NOMDUFICHIER NOM [BRANCHE] - Créer une liasse simple à partir " "d'un dépôt locale" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "LOCALISATION, NOMDUFICHIER et NOM doivent êtres spécifiés" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Trop d'arguments" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "`%s` n'est pas un dépôt valide" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "`%s` n'est pas un dépôt valide: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "'%s' n'est pas un nom valide: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "'%s' n'est pas un nom de branche valide: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -210,7 +210,7 @@ msgstr "" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "" @@ -230,472 +230,478 @@ msgstr "" msgid "Log system bus calls" msgstr "" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 -msgid "SUBJECT" -msgstr "" - #: app/flatpak-builtins-build-commit-from.c:64 #: app/flatpak-builtins-build-export.c:60 -msgid "Full description" +msgid "SUBJECT" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 -msgid "BODY" +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 +msgid "Full description" msgstr "" #: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" +#: app/flatpak-builtins-build-export.c:61 +msgid "BODY" msgstr "" #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 -msgid "Don't update the summary" +msgid "Update the appstream branch" msgstr "" #: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 +msgid "Don't update the summary" +msgstr "" + +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " "GROUP=KEY[=VALUE]]" msgstr "" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -703,62 +709,63 @@ msgid "" "NAME=VAR[=VALUE]" msgstr "" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "" @@ -869,205 +876,208 @@ msgstr "" msgid "Build directory %s already initialized" msgstr "" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "" -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "" -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "" @@ -1139,109 +1149,109 @@ msgstr "" msgid "Must specify one of --list, --get, --set or --unset" msgstr "" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " "suppress this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " "collection ID set.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " "distribution of ‘%s’." msgstr "" -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " "this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" msgstr "" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1314,19 +1324,20 @@ msgstr "" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "" @@ -1345,7 +1356,7 @@ msgid "Show the document path" msgstr "" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "" @@ -1359,7 +1370,7 @@ msgid "Show applications with permission" msgstr "" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "" @@ -1483,12 +1494,12 @@ msgid "Show the kind of change" msgstr "" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "" @@ -1497,24 +1508,24 @@ msgid "Show the application/runtime ID" msgstr "" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "" @@ -1526,7 +1537,7 @@ msgstr "" msgid "Show the affected installation" msgstr "" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "" @@ -1535,7 +1546,7 @@ msgid "Show the remote" msgstr "" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "" @@ -1555,7 +1566,7 @@ msgstr "" msgid "Show the remote URL" msgstr "" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "" @@ -1572,7 +1583,7 @@ msgid "Show the tool that was used" msgstr "" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "" @@ -1600,10 +1611,12 @@ msgid " - Show history" msgstr "" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "" @@ -1619,11 +1632,11 @@ msgstr "" msgid "Show specific system-wide installations" msgstr "" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "" @@ -1635,15 +1648,15 @@ msgstr "" msgid "Show size" msgstr "" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "" @@ -1655,8 +1668,8 @@ msgstr "" msgid "Query file access" msgstr "" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1674,7 +1687,7 @@ msgstr "" msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "" @@ -1683,85 +1696,87 @@ msgstr "" msgid "ref not present in origin" msgstr "" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "" @@ -1774,15 +1789,15 @@ msgid "Latest commit:" msgstr "" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "" @@ -1791,14 +1806,14 @@ msgid "Alt-id:" msgstr "" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "" @@ -1807,145 +1822,146 @@ msgid "Subdirectories:" msgstr "" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, c-format msgid "No remote refs found for ‘%s’" msgstr "" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "" @@ -1983,51 +1999,51 @@ msgstr "" msgid "Arch to show" msgstr "" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "" @@ -2035,7 +2051,7 @@ msgstr "" msgid "Show the used runtime" msgstr "" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "" @@ -2047,7 +2063,7 @@ msgstr "" msgid "Active commit" msgstr "" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "" @@ -2059,35 +2075,35 @@ msgstr "" msgid "Show the latest commit" msgstr "" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, c-format msgid "Unable to load details of %s: %s" msgstr "" -#: app/flatpak-builtins-list.c:189 +#: app/flatpak-builtins-list.c:188 #, c-format msgid "Unable to inspect current version of %s: %s" msgstr "" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr "" @@ -2099,7 +2115,7 @@ msgstr "" msgid "APP BRANCH - Make branch of application current" msgstr "" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "" @@ -2122,10 +2138,12 @@ msgid "" msgstr "" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "" @@ -2141,26 +2159,26 @@ msgstr "" msgid "[APP] - Override settings [for application]" msgstr "" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "" @@ -2217,10 +2235,12 @@ msgid "[PATTERN…] - disable automatic removal of runtimes matching patterns" msgstr "" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "" @@ -2296,124 +2316,124 @@ msgstr "" msgid " - Enumerate running sandboxes" msgstr "" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "" @@ -2440,59 +2460,59 @@ msgstr "" msgid "Can't remove remote '%s' with installed refs" msgstr "" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr "" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr "" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr "" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "" @@ -2521,7 +2541,7 @@ msgstr "" msgid "Show the collection ID" msgstr "" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "" @@ -2577,39 +2597,39 @@ msgstr "" msgid " - List remote repositories" msgstr "" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr "" @@ -2738,224 +2758,231 @@ msgstr "" msgid "- Repair a flatpak installation" msgstr "" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "" -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "" -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "" -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "" -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "" @@ -3047,11 +3074,11 @@ msgstr "" msgid "Use PATH instead of the runtime's /usr" msgstr "" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "" @@ -3068,15 +3095,15 @@ msgstr "" msgid "Show the remotes" msgstr "" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "" @@ -3152,6 +3179,7 @@ msgid "" msgstr "" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "" @@ -3176,6 +3204,7 @@ msgid "Warning: %s is not installed\n" msgstr "" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "" @@ -3216,6 +3245,7 @@ msgid "With --commit, only one REF may be specified" msgstr "" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "" @@ -3225,174 +3255,168 @@ msgid "Unable to update %s: %s\n" msgstr "" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" "Hint: Use flatpak remote-add to add a remote" msgstr "" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" "Use this ref?" msgstr "" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" +msgid "Remotes found with refs similar to ‘%s’:" msgstr "" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "" #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "" -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3401,7 +3425,7 @@ msgid "" msgstr "" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3409,126 +3433,126 @@ msgid "" "Configure this as new remote '%s'" msgstr "" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, c-format msgid "Warning: %s%s%s already installed" msgstr "" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, c-format msgid "Error: %s%s%s already installed" msgstr "" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, c-format msgid "Warning: %s%s%s not installed" msgstr "" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, c-format msgid "Error: %s%s%s not installed" msgstr "" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" msgstr "" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" msgstr "" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, c-format msgid "Warning: %s" msgstr "" -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, c-format msgid "Error: %s" msgstr "" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, c-format msgid "Failed to install %s%s%s: " msgstr "" -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, c-format msgid "Failed to update %s%s%s: " msgstr "" -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, c-format msgid "Failed to install bundle %s%s%s: " msgstr "" -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, c-format msgid "Failed to uninstall %s%s%s: " msgstr "" -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, c-format msgid "" "\n" @@ -3536,7 +3560,7 @@ msgid "" "%s%s%s branch %s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, c-format msgid "" "\n" @@ -3544,7 +3568,7 @@ msgid "" "%s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, c-format msgid "" "\n" @@ -3553,111 +3577,109 @@ msgid "" msgstr "" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:947 +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" msgstr "" -#: app/flatpak-cli-transaction.c:949 +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" msgstr "" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "" -#: app/flatpak-cli-transaction.c:1009 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "" - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, c-format msgid "New %s%s%s permissions:" msgstr "" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, c-format msgid "%s%s%s permissions:" msgstr "" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "" #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "" -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "" -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "" -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "" #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "" @@ -3948,33 +3970,33 @@ msgid "" "not appear on your desktop until the session is restarted." msgstr "" -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "" @@ -4037,16 +4059,16 @@ msgstr "" msgid "Error: Failed to uninstall %s: %s\n" msgstr "" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "" @@ -4075,238 +4097,267 @@ msgstr "" msgid "Failed to rebase %s to %s: %s\n" msgstr "" -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" "etc, home, xdg-*[/…], ~/dir, /dir" msgstr "" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +msgid "Allow app to own name on the a11y bus" +msgstr "" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4315,660 +4366,686 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 #, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "" -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "" - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "" -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "" -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "" -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "" -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "" -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "" -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "" -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "" -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "" -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "" -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "" -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "" -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "" -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "" -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "" -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "" -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " "URL passed to remote-add was valid." msgstr "" -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "" -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, c-format msgid "Unable to open path \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, c-format msgid "Unable to lookup key ID %s: %d" msgstr "" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -4989,379 +5066,432 @@ msgstr "" msgid "Downloading files: %d/%d %s" msgstr "" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr "" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr "" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr "" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr "" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr "" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr "" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr "" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" msgstr "" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" msgstr "" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" msgstr "" -#: common/flatpak-run.c:2207 +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "" + +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, c-format msgid "Failed to block syscall %d: %s" msgstr "" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, c-format msgid "Failed to export bpf: %s" msgstr "" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " "installed: %s" msgstr "" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" msgstr "" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "" -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." msgstr "" -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "" @@ -5408,135 +5538,111 @@ msgstr "" msgid "URI is not absolute, and no base URI was provided" msgstr "" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "" - -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "" - -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "" - -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:83 #, c-format -msgid "Invalid glob character '%c'" +msgid "USB device query 'all' must not have data" msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:102 #, c-format -msgid "Missing glob on line %d" +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:111 #, c-format -msgid "Trailing text on line %d" +msgid "Invalid USB class" msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:125 #, c-format -msgid "on line %d" +msgid "Invalid USB subclass" msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Unexpected word '%s' on line %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Invalid %s: Missing group ‘%s’" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:205 #, c-format -msgid "Invalid %s: Missing key ‘%s’" +msgid "USB device queries must be in the form TYPE:DATA" msgstr "" -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "" - -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:225 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" +msgid "Unknown USB query rule %s" msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:248 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" +msgid "Empty USB query" msgstr "" -#: common/flatpak-utils.c:5684 +#: common/flatpak-usb.c:274 #, c-format -msgid "%s is end-of-life, ignoring for appstream" +msgid "Multiple USB query rules of the same type is not supported" msgstr "" -#: common/flatpak-utils.c:5719 +#: common/flatpak-usb.c:283 #, c-format -msgid "No appstream data for %s: %s\n" -msgstr "" - -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" +msgid "'all' must not contain extra query rules" msgstr "" -#: common/flatpak-utils.c:6791 +#: common/flatpak-usb.c:291 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgid "USB queries with 'dev' must also specify vendors" msgstr "" -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" msgstr "" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" +#: common/flatpak-utils.c:693 +msgid "Empty glob" msgstr "" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 -#, c-format -msgid "Wrong layer checksum, expected %s, was %s" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" msgstr "" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:733 #, c-format -msgid "No ref specified for OCI image %s" +msgid "Invalid glob character '%c'" msgstr "" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:787 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgid "Missing glob on line %d" msgstr "" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:791 #, c-format -msgid "Invalid require-flatpak argument %s" +msgid "Trailing text on line %d" msgstr "" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:795 #, c-format -msgid "%s needs a later flatpak version (%s)" +msgid "on line %d" msgstr "" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" +#: common/flatpak-utils.c:817 +#, c-format +msgid "Unexpected word '%s' on line %d" msgstr "" -#: common/flatpak-utils.c:8401 +#: common/flatpak-utils.c:1980 #, c-format -msgid "“%s” is not an unsigned number" +msgid "Invalid require-flatpak argument %s" msgstr "" -#: common/flatpak-utils.c:8411 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format -msgid "Number “%s” is out of bounds [%s, %s]" +msgid "%s needs a later flatpak version (%s)" msgstr "" #: oci-authenticator/flatpak-oci-authenticator.c:291 @@ -5551,40 +5657,44 @@ msgstr "" msgid "Invalid token" msgstr "" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "" -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "" diff --git a/po/gl.gmo b/po/gl.gmo deleted file mode 100644 index afc97c274b4993eb8aefffb374da13cfd8d308e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42023 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 a!jX#aS8_r3CJ?O(DKz~aV<^W|hyM$q0;Adh diff --git a/po/gl.po b/po/gl.po index 1828c6d..203dabc 100644 --- a/po/gl.po +++ b/po/gl.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" "PO-Revision-Date: 2019-12-28 11:56+0100\n" "Last-Translator: Fran Diéguez \n" "Language-Team: Galician \n" @@ -18,105 +18,105 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 2.2.4\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Exportar o runtime no lugar da aplicación" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Arquitectura para empaquetar" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARQUITECTURA" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Url para o repo" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Url para o ficheiro flatpakrepo do runtime" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Engadir chave GPG desde FICHEIRO (- para stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "FICHEIRO" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "ID de chave GPG coa que asinar a imaxe OCI" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "ID-CHAVE" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "ID-CHAVE" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "" "Directorio de orixe dos ficheiros GPG para usar ao buscar por aneis de chaves" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "DIRECTORIO_DE_INICIO" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "REMISIÓN" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Exportar imaxe oci no lugar dun paquete flatpak" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -124,58 +124,58 @@ msgstr "" "LOCALIZACION NOMEFICHEIRO NOME [RAME] - Crear un paquete de ficheiro único " "desde un repositorio local" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "Debe especificar a LOCALIZACION, NOMEFICHEIRO e o NOME" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Demasiados argumento" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "«%s» non é un repositorio válido" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, fuzzy, c-format msgid "'%s' is not a valid repository: " msgstr "«%s» non é un repositorio válido" -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "«%s» non é un nome válido: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "«%s» non é un nome válido para unha rama: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, fuzzy, c-format msgid "'%s' is not a valid filename" @@ -210,7 +210,7 @@ msgstr "DIR" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Onde buscar o directorio personalizado de SDK (por omisión «usr»)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Usar o ficheiro alternativo para os metadatos" @@ -230,485 +230,491 @@ msgstr "Rexistrar chamadas ao bus de sesión" msgid "Log system bus calls" msgstr "Rexistrar chamadas ao bus de sistema" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 #, fuzzy msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "DIRECTORIO [ORDE [argumentos...]] - Construír no directorio" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "Debe especificar o DIRECTORIO" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "Directorio de construción %s non iniciado, usar flatpak build-init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "metadatos non válidos, sen aplicación ou runtime" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "Non hai ningún punto de extensión que coincida con %s en %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Falta o «=» na opción «%s» de punto de montaxe" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Non foi posíbel iniciar a aplicación" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Directorio do repositorio de orixe" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "SRC-REPO" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Referencia do repositorio orixe" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "SRC-REF" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Suxeito nunha liña" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "RESUMO" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Descrición completa" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "CORPO" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Actualizar a rama de appstream" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Actualizar a rama de appstream" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Non actualizar o resumo" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "ID da chave GPG coa que asinar a remisión" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 #, fuzzy msgid "VAL" msgstr "VAR=VALOR" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 #, fuzzy msgid "Override the timestamp of the commit (NOW for current time)" msgstr "Sobrescribir a marca de tempo da remisión" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 #, fuzzy msgid "TIMESTAMP" msgstr "ISO-8601-TIMESTAMP" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 #, fuzzy msgid "Don't generate a summary index" msgstr "Non actualizar o resumo" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 #, fuzzy msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" "REPO-DST [REF-DST]... - Facer unha nova remisión baseada na(s) remisión(s) " "existente(s)" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "Debe especificar o DST-REPO" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "Se --src-repo non se especifica, debe especificar exactamente unha " "referencia de destino" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" "Se --src-ref non está especificado, debe especificar exactamente unha " "referencia de destino" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 #, fuzzy msgid "Either --src-repo or --src-ref must be specified" msgstr "Debe especificar --src-repo ou --src-ref." -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 #, fuzzy msgid "Can't commit from partial source commit" msgstr "Non é posíbel remitir a partir dotra remisión parcial." -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Arquitectura á que exportar (debe ser compatíbel co anfitrión)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Runtime de remisión (/usr), non /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Usar un directorio alternativo para os ficheiros" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "SUBDIR" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Ficheiros a excluír" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "PATRON" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Ficheiros excluídos a incluír" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Sobrescribir a marca de tempo da remisión" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "ID de colección" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Tipo de uri non válido %s, só se admite http/https" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "" "Non é posíbel atopar o nome base en %s, especifique un nome de forma " "explícita" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "Non se permiten as barras no nome de datos adicionais" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Formato non válido para a suma de verificación sha256: «%s»" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Tamaños de datos adicionais de cero non admitidos" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "" "LOCALIZACION DIRECTORIO [RAMA] - Crea un repositorio desde o directorio de " "construción" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "Debe especificar a LOCALIZACION OU DIRECTORIO" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "«%s» non é un ID de colección válido: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Non se especificou un nome nos metadatos" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Remisión: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Orde a estabelecer" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "ORDE" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Versión de Flatpak a requirir" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "MAIOR.MENOR.MICRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Non procesar exportados" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Información de datos adicionais" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Engadir información de punto de extensión" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NOME=VARIABEL[=VALOR]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 #, fuzzy msgid "Remove extension point info" msgstr "Engadir información de punto de extensión" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NOME" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 #, fuzzy msgid "VALUE" msgstr "VAR=VALOR" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Cambiar o sdk usado para a aplicación" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Cambiar o «runtime» usado pola aplicación" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "RUNTIME" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Estabelecer opción de metadatos xenérica" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GRUPO=CHAVE[=VALOR]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "Demasiados poucos elementos no argumento --extra-data %s" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -717,7 +723,7 @@ msgstr "" "Demasiados poucos elementos no argumento --metadata %s, o formato debería " "ser GRUPO=CHAVE[=VALOR]]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -727,64 +733,65 @@ msgstr "" "Demasiados poucos elementos no argumento --extension %s, o formato debería " "ser NOME=VAR[=VALOR]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, fuzzy, c-format msgid "Invalid extension name %s" msgstr "Nome de autenticador %s non válido" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "DIRECTORIO - Finalizar un cartafol de construción" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Directorio de construción %s non inicializado" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Directorio de construción %s xa finalizado" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Por favor revise os ficheiros exportados e o metadato\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Sobrescribir a referencia usada para o paquete importado" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REF" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Importar imaxe oci no lugar de paquete flatpak" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Referencia «%s» non atopada no rexistro" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "Imaxes múltiples no rexistro, especifique unha referencia con --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, fuzzy, c-format msgid "Importing %s (%s)\n" msgstr "Actualizando: %s desde %s\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "" "LOCALIZACION NOMEFICHEIRO - Importar un ficheiro empaquetado no repositorio " "local" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "Debe especificar a LOCALIZACION e o NOMEFICHEIRO" @@ -900,93 +907,93 @@ msgstr "«%s» non é un nome de aplicación válido: %s" msgid "Build directory %s already initialized" msgstr "Directorio de construción %s xa inicializado" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Arquitectura para a que instalar" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Buscar un «runtime» cun nome específico" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "LOCALIZACION [ID [RAMA]] - Asina unha aplicación ou runtime" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "Debe especificar a LOCALIZACION" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Non se especificou ningún id de chave de gpg" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Redireccionar este repositorio a unha URL nova" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Un nome bonito a usar para este repositorio" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "TÍTULO" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 #, fuzzy msgid "A one-line comment for this repository" msgstr "Un nome bonito a usar para este repositorio" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 #, fuzzy msgid "COMMENT" msgstr "REMISIÓN" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 #, fuzzy msgid "A full-paragraph description for this repository" msgstr "Rama por omisión a usar para este repositorio" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 #, fuzzy msgid "URL for a website for this repository" msgstr "Un nome bonito a usar para este repositorio" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 #, fuzzy msgid "URL for an icon for this repository" msgstr "Un nome bonito a usar para este repositorio" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Rama por omisión a usar para este repositorio" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "RAMA" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "ID-COLECTIÓN" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 #, fuzzy msgid "" "Permanently deploy collection ID to client remote configurations, only for " @@ -995,129 +1002,132 @@ msgstr "" "ID da colección a desplegar de forma permanente ás configuracións do remoto " "cliente" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" "ID da colección a desplegar de forma permanente ás configuracións do remoto " "cliente" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 #, fuzzy msgid "Name of authenticator for this repository" msgstr "Un nome bonito a usar para este repositorio" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 #, fuzzy msgid "Autoinstall authenticator for this repository" msgstr "Un nome bonito a usar para este repositorio" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 #, fuzzy msgid "Don't autoinstall authenticator for this repository" msgstr "Rama por omisión a usar para este repositorio" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 #, fuzzy msgid "Authenticator option" msgstr "Mostrar as opcións de axuda" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 #, fuzzy msgid "KEY=VALUE" msgstr "VAR=VALOR" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Importa nova chave pública GPG por omisión desde o FICHEIRO" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "ID da chave GPG coa que asinar a descrición" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Xerar ficheiros delta" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 #, fuzzy msgid "Don't update the appstream branch" msgstr "Actualizar a rama de appstream" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 #, fuzzy msgid "Don't create deltas matching refs" msgstr "Non actualiar as referencias relacionadas" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Limpar obxectos non usados" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" "So atravesar os pais de PROFUNDIDADE para cada remisión (por omisión: " "-1=infinito)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "PROFUNDIDADE" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Xerando delta: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Xerando delta: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Produciuse un fallo ao xerar o delta %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Produciuse un fallo ao xerar o delta %s (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "LOCALIZACION - Actualizar os metadatos do repositorio" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Actualizando a rama de appstream\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Actualizando resumo\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Total de obxectos: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Non hai obxectos alcanzábeis\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "%u obxectos eliminados, %s liberados\n" @@ -1195,107 +1205,107 @@ msgstr "" msgid "Must specify one of --list, --get, --set or --unset" msgstr "" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Buscar unha aplicación dun nome específico" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 #, fuzzy msgid "Arch to copy" msgstr "Arquitectura a mostrar" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 #, fuzzy msgid "DEST" msgstr "DEST=ORIX" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " "suppress this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " "collection ID set.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " "distribution of ‘%s’." msgstr "" -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 #, fuzzy msgid "MOUNT-PATH and REF must be specified" msgstr "Debe especificar REMOTO e REF" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " "this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, fuzzy, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" "Aviso: Non se puideron actualizar os metadatos adicionais para «%s»: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, fuzzy, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" "Aviso: Non se puideron actualizar os metadatos adicionais para «%s»: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, fuzzy, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1303,7 +1313,7 @@ msgstr "" "Aviso: Non se puideron actualizar os metadatos adicionais para «%s»: %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, fuzzy, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "Actualizando appstream para o remoto %s\n" @@ -1376,12 +1386,13 @@ msgstr "FICHEIRO - Obter información sobre un ficheiro exportado" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Non exportado\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 #, fuzzy msgid "What information to show" @@ -1389,7 +1400,7 @@ msgstr "Imprimir información sobre un repositorio" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "" @@ -1410,7 +1421,7 @@ msgid "Show the document path" msgstr "Mostrar só os runtimes" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Orixe" @@ -1426,7 +1437,7 @@ msgid "Show applications with permission" msgstr "Mostrar extensións" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 #, fuzzy msgid "Permissions" @@ -1559,12 +1570,12 @@ msgid "Show the kind of change" msgstr "" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Referencia" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 #, fuzzy msgid "Show the ref" msgstr "Mostrar referencia" @@ -1575,24 +1586,24 @@ msgid "Show the application/runtime ID" msgstr "ID de colección" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Arquitectura" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Rama" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 #, fuzzy msgid "Show the branch" msgstr "Mostrar só os runtimes" @@ -1607,7 +1618,7 @@ msgstr "Instalado" msgid "Show the affected installation" msgstr "Mostrar instalacións do usuario" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 #, fuzzy msgid "Remote" msgstr "Sen remoto %s" @@ -1618,7 +1629,7 @@ msgid "Show the remote" msgstr "Mostrar remotos desactivados" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Remisión" @@ -1641,7 +1652,7 @@ msgstr "Mostrar só os runtimes" msgid "Show the remote URL" msgstr "Mostrar só os runtimes" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "" @@ -1659,7 +1670,7 @@ msgid "Show the tool that was used" msgstr "" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "" @@ -1688,11 +1699,12 @@ msgid " - Show history" msgstr "" #: app/flatpak-builtins-history.c:488 -#, fuzzy +#, fuzzy, c-format msgid "Failed to parse the --since option" msgstr "Non foi posíbel crear a tubería de sincronización" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "" @@ -1708,11 +1720,11 @@ msgstr "Mostrar instalacións do sistema" msgid "Show specific system-wide installations" msgstr "Mostrar instalacións específicas do sistema" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Mostrar referencia" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Mostrar remisión" @@ -1724,16 +1736,16 @@ msgstr "Mostrar orixe" msgid "Show size" msgstr "Mostrar tamaño" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Mostrar metadatos" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 #, fuzzy msgid "Show runtime" msgstr "Mostrar só os runtimes" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 #, fuzzy msgid "Show sdk" msgstr "Mostrar tamaño" @@ -1747,8 +1759,8 @@ msgstr "Mostrar extensións" msgid "Query file access" msgstr "" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1768,7 +1780,7 @@ msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "" "NOME [RAMA] - Obtén información sobre a aplicación ou runtime instalado" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "Debe especificar o NOME" @@ -1777,86 +1789,88 @@ msgstr "Debe especificar o NOME" msgid "ref not present in origin" msgstr "referencia non presente no orixe" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Referencia:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Arquitectura:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Rama:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 #, fuzzy msgid "Version:" msgstr "Extensión:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Colección" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Instalación:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Instalado:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Runtime:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "" @@ -1869,15 +1883,15 @@ msgid "Latest commit:" msgstr "Última remisión:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Remisión:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "" @@ -1886,14 +1900,14 @@ msgid "Alt-id:" msgstr "Alt-id:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "" @@ -1903,151 +1917,151 @@ msgid "Subdirectories:" msgstr "Subdirectorios da instalación:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Extensión:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Orixe:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Subdirectorios:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Non facer «pull», só instar desde a caché local" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "No despregar, só descargar á caché local" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Non instalar referencias relacionadas" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Non verificar/instalar as dependencias de runtime" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Non usar deltas estáticos" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Asume que LOCALIZACION é un paquete .flatpak dun só ficheiro." -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Asume que LOCALIZACION é uha descrición de aplicación .flatpakref" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "" "Comproba as sinaturas do paquete coa chave GPG dese o FICHEIRO (- para stdin)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Só instalar esta subruta" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Responder si automaticamente para todas as preguntas" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 #, fuzzy msgid "Uninstall first if already installed" msgstr "%s remisión %s xa instalado" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 #, fuzzy msgid "Update install if already installed" msgstr "%s remisión %s xa instalado" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Debe especificar o nome de ficheiro do paquete" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Non se admiten os paquetes remotos" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Debe especificar o nome de ficheiro ou uri" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 #, fuzzy msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "LOCALIZACION/REMOTO [REF...] - Instalar aplicacións ou runtimes" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 #, fuzzy msgid "At least one REF must be specified" msgstr "Debe especificar REMOTO e REF" -#: app/flatpak-builtins-install.c:335 -#, fuzzy +#: app/flatpak-builtins-install.c:336 +#, fuzzy, c-format msgid "Looking for matches…\n" msgstr "Non hai actualizacións.\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, fuzzy, c-format msgid "No remote refs found for ‘%s’" msgstr "Non se atopou ningunha sobrescritura para %s" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, fuzzy, c-format msgid "Invalid branch %s: %s" msgstr "«%s» non é un nome válido para unha rama: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, fuzzy, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Produciuse un erro ao buscar no repositorio local: %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, fuzzy, c-format msgid "Nothing matches %s in remote %s" msgstr "Nada coincide con %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, fuzzy, c-format msgid "Skipping: %s\n" msgstr "Instalando: %s\n" @@ -2086,57 +2100,57 @@ msgstr "Mostrar as aplicacións instaladas" msgid "Arch to show" msgstr "Arquitectura a mostrar" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Mostrar todas as referencias (incluíndo as locais/depuración)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "Mostrar as aplicacións instaladas" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Nome" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 #, fuzzy msgid "Show the name" msgstr "Mostrar só os runtimes" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 #, fuzzy msgid "Description" msgstr "Descrición completa" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 #, fuzzy msgid "Show the description" msgstr "ID de colección" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 #, fuzzy msgid "Application ID" msgstr "ID de colección" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 #, fuzzy msgid "Show the application ID" msgstr "ID de colección" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 #, fuzzy msgid "Show the version" msgstr "ID de colección" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Runtime" @@ -2145,7 +2159,7 @@ msgstr "Runtime" msgid "Show the used runtime" msgstr "Mostrar só os runtimes" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 #, fuzzy msgid "Show the origin remote" msgstr "Mostrar orixe" @@ -2159,7 +2173,7 @@ msgstr "Mostrar instalacións do usuario" msgid "Active commit" msgstr "Remisión activa" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 #, fuzzy msgid "Show the active commit" msgstr "Mostrar só os runtimes" @@ -2173,37 +2187,37 @@ msgstr "Última remisión" msgid "Show the latest commit" msgstr "Mostrar só os runtimes" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Tamaño instalado" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 #, fuzzy msgid "Show the installed size" msgstr "Tamaño instalado" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Opcións" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 #, fuzzy msgid "Show options" msgstr "Mostrar as opcións de axuda" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, fuzzy, c-format msgid "Unable to load details of %s: %s" msgstr "Actualizando os metadatos adicionais desde o resumo remoto para %s\n" -#: app/flatpak-builtins-list.c:189 -#, c-format +#: app/flatpak-builtins-list.c:188 +#, fuzzy, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Non foi posíbel crear a tubería de sincronización" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - Lista as aplicacións instaladas ou runtimes" @@ -2215,7 +2229,7 @@ msgstr "Arquitectura que facer a actual" msgid "APP BRANCH - Make branch of application current" msgstr "APP RAMA - Facer actual a rama da aplicación" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "Debe especificar o APP" @@ -2239,10 +2253,12 @@ msgid "" msgstr "" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "" @@ -2258,26 +2274,26 @@ msgstr "" msgid "[APP] - Override settings [for application]" msgstr "APP - Sobrescribir as configuracións da aplicación" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "" @@ -2338,10 +2354,12 @@ msgid "[PATTERN…] - disable automatic removal of runtimes matching patterns" msgstr "" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "" @@ -2429,133 +2447,133 @@ msgstr "Mostrar só os runtimes" msgid " - Enumerate running sandboxes" msgstr "" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Non facer nada se o fornecedor remoto existe" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "" "LOCATION especifica o ficheiro de configuracion, non unha localización de " "repositorio" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Desactivar a comprobación GPG" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Marcar o reomoto como non enumerado" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Estabelecer o remoto como non usado para as dependencias" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "" "Estabelecer prioridade (1 por omisión, máis prioridade canto máis alto)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORIDADE" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 #, fuzzy msgid "The named subset to use for this remote" msgstr "Un nome bonito para usar neste repositorio remoto" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Un nome bonito para usar neste repositorio remoto" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 #, fuzzy msgid "A one-line comment for this remote" msgstr "Un nome bonito para usar neste repositorio remoto" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 #, fuzzy msgid "A full-paragraph description for this remote" msgstr "Rama por omisión que usar neste repositorio remoto" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 #, fuzzy msgid "URL for a website for this remote" msgstr "Un nome bonito para usar neste repositorio remoto" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 #, fuzzy msgid "URL for an icon for this remote" msgstr "Rama por omisión que usar neste repositorio remoto" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Rama por omisión que usar neste repositorio remoto" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Importar a chave GPG desde o FICHEIRO (- para stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Desactivar o repositorio remoto" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Autoinstalar autenticador" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 #, fuzzy msgid "Don't autoinstall authenticator" msgstr "Non desinstalar as referencias relacionadas" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Non é posíbel cargar o ficheiro %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NOME LOCALIZACION - Engade un novo repositorio remoto" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "A comprobación GPG é obrigatoria se as coleccións están activadas" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "O repositorio remoto %s xa existe" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Nome de autenticador %s non válido" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "" @@ -2583,63 +2601,63 @@ msgstr "" msgid "Can't remove remote '%s' with installed refs" msgstr "" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 #, fuzzy msgid "Show parent" msgstr "Mostrar referencia" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "Debe especificar REMOTO e REF" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 #, fuzzy msgid "Download:" msgstr "Descargar" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 #, fuzzy msgid "History:" msgstr "Mostrar remisión" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 #, fuzzy msgid " Commit:" msgstr "Remisión:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr "" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr "" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "" @@ -2671,7 +2689,7 @@ msgstr "Mostrar referencia" msgid "Show the collection ID" msgstr "ID de colección" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "" @@ -2735,41 +2753,41 @@ msgstr "Mostrar as opcións de axuda" msgid " - List remote repositories" msgstr " - Lista os repositorios remotos" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Mostrar arquitecturas e ramas" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Mostrar só os runtimes" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Mostrar só as aplicacións" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Mostrar só aqueles para os que haxa actualizacións" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Limitar a esta arquitectura (* para todas)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 #, fuzzy msgid "Show the runtime" msgstr "Mostrar só os runtimes" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Tamaño de descarga" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 #, fuzzy msgid "Show the download size" msgstr "Tamaño de descarga" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 #, fuzzy msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr " REMOTO - Mostrar os runtimes e aplicacións dispoñíbeis" @@ -2904,231 +2922,234 @@ msgstr "Instalando: %s\n" msgid "- Repair a flatpak installation" msgstr "Mostrar instalacións do usuario" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, fuzzy, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Referencia %s despregada non válida: " -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, fuzzy, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Referencia %s despregada non válida: " -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "" -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "" -#: app/flatpak-builtins-repair.c:480 -#, fuzzy +#: app/flatpak-builtins-repair.c:490 +#, fuzzy, c-format msgid "Pruning objects\n" msgstr "Limpar obxectos non usados" -#: app/flatpak-builtins-repair.c:488 -#, fuzzy +#: app/flatpak-builtins-repair.c:498 +#, fuzzy, c-format msgid "Erasing .removed\n" msgstr "Non instalar referencias relacionadas" -#: app/flatpak-builtins-repair.c:513 -#, fuzzy +#: app/flatpak-builtins-repair.c:523 +#, fuzzy, c-format msgid "Reinstalling refs\n" msgstr "Non instalar referencias relacionadas" -#: app/flatpak-builtins-repair.c:515 -#, fuzzy +#: app/flatpak-builtins-repair.c:525 +#, fuzzy, c-format msgid "Reinstalling removed refs\n" msgstr "Non instalar referencias relacionadas" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, fuzzy, c-format msgid "While removing appstream for %s: " msgstr "Ao abrir o repositorio %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, fuzzy, c-format msgid "While deploying appstream for %s: " msgstr "Ao abrir o repositorio %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "" -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, fuzzy, c-format msgid "Title: %s\n" msgstr "Título" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, fuzzy, c-format msgid "Comment: %s\n" msgstr "Remisión:" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, fuzzy, c-format msgid "Description: %s\n" msgstr "Descrición completa" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, fuzzy, c-format msgid "Icon: %s\n" msgstr "Remisión:" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, fuzzy, c-format msgid "Collection ID: %s\n" msgstr "ID de colección" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, fuzzy, c-format msgid "Deploy collection ID: %s\n" msgstr "ID de colección" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, fuzzy, c-format msgid "Authenticator name: %s\n" msgstr "Nome de dbus %s non válido\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, fuzzy, c-format msgid "Authenticator install: %s\n" msgstr "Mostrar as opcións de axuda" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Instalado" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Descargar" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 #, fuzzy msgid "History length" msgstr "Mostrar remisión" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Imprimir a información xeral sobre o repositorio" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Mostra as ramas no repositorio" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Imprime os metadatos para unha rama" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 #, fuzzy msgid "Show commits for a branch" msgstr "Mostrar arquitecturas e ramas" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 #, fuzzy msgid "Print information about the repo subsets" msgstr "Imprimir a información xeral sobre o repositorio" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "LOCALIZACION - Mantemento do repositorio" @@ -3225,12 +3246,12 @@ msgstr "" msgid "Use PATH instead of the runtime's /usr" msgstr "" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 #, fuzzy msgid "APP [ARGUMENT…] - Run an app" msgstr "APP [argumentos...] - Executa unha aplicación" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, fuzzy, c-format msgid "runtime/%s/%s/%s not installed" msgstr "%s %s non está instalado" @@ -3250,16 +3271,16 @@ msgstr "Sen remoto %s" msgid "Show the remotes" msgstr "Mostrar remotos desactivados" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 #, fuzzy msgid "TEXT must be specified" msgstr "Debe especificar o NOME" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 #, fuzzy msgid "No matches found" msgstr "Nada coincide con %s" @@ -3342,7 +3363,7 @@ msgid "" msgstr "" #: app/flatpak-builtins-uninstall.c:370 -#, fuzzy +#, fuzzy, c-format msgid "Nothing unused to uninstall\n" msgstr "Arquitectura a desinstalar" @@ -3367,6 +3388,7 @@ msgid "Warning: %s is not installed\n" msgstr "%s rama %s non está instalado" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "" @@ -3409,7 +3431,7 @@ msgid "With --commit, only one REF may be specified" msgstr "Debe especificar REMOTO e REF" #: app/flatpak-builtins-update.c:162 -#, fuzzy +#, fuzzy, c-format msgid "Looking for updates…\n" msgstr "Non hai actualizacións.\n" @@ -3419,181 +3441,174 @@ msgid "Unable to update %s: %s\n" msgstr "Ao obter %s desde o remoto %s: " #: app/flatpak-builtins-update.c:274 -#, fuzzy +#, fuzzy, c-format msgid "Nothing to do.\n" msgstr "Nada coincide con %s" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 #, fuzzy msgid "Which do you want to use (0 to abort)?" msgstr "Cal desexa instalar (0 para abortar)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" "Hint: Use flatpak remote-add to add a remote" msgstr "" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, fuzzy, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Traballar nas instalacións de usuario" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" "Use this ref?" msgstr "" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" +msgid "Remotes found with refs similar to ‘%s’:" msgstr "" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, fuzzy, c-format msgid "Updating appstream data for user remote %s" msgstr "Actualizando appstream para o remoto %s\n" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, fuzzy, c-format msgid "Updating appstream data for remote %s" msgstr "Actualizando appstream para o remoto %s\n" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 #, fuzzy msgid "Error updating" msgstr "" "Produciuse un erro ao actualizar os metadatos adicionais para «%s»: %s\n" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "" #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, fuzzy, c-format msgid "Invalid suffix: '%s'." msgstr "PID %s non válido" -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, fuzzy, c-format msgid "Unknown column: %s" msgstr "Orde descoñecida «%s»" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 #, fuzzy msgid "Show all columns" msgstr "Mostrar as opcións de axuda" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 #, fuzzy msgid "Show available columns" msgstr "Mostrar remotos desactivados" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, fuzzy, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "O runtime requirido para %s (%s) non instalado, buscando…\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 #, fuzzy msgid "Do you want to install it?" msgstr "Cal desexa instalar (0 para abortar)?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, fuzzy, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "O runtime requirido para %s (%s) non instalado, buscando…\n" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Cal desexa instalar (0 para abortar)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, fuzzy, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Configurar %s como un novo remoto «%s»" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3605,7 +3620,7 @@ msgstr "" "Desexa instalar outras aplicacións desde aquí?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3616,128 +3631,128 @@ msgstr "" " %s\n" "Configure esta como o novo remoto «%s»" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 #, fuzzy msgid "Installing…" msgstr "Instalado" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, fuzzy, c-format msgid "Installing %d/%d…" msgstr "Instalando: %s\n" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, fuzzy, c-format msgid "Updating %d/%d…" msgstr "Actualizando: %s desde %s\n" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 #, fuzzy msgid "Uninstalling…" msgstr "Instalando: %s\n" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, fuzzy, c-format msgid "Uninstalling %d/%d…" msgstr "Instalando: %s\n" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, fuzzy, c-format msgid "Warning: %s%s%s already installed" msgstr "%s remisión %s xa instalado" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, fuzzy, c-format msgid "Error: %s%s%s already installed" msgstr "%s remisión %s xa instalado" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, fuzzy, c-format msgid "Warning: %s%s%s not installed" msgstr "%s rama %s non está instalado" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, fuzzy, c-format msgid "Error: %s%s%s not installed" msgstr "%s %s non está instalado" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, fuzzy, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "%s precisa unha versión de flatpak posterior (%s)" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, fuzzy, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "%s precisa unha versión de flatpak posterior (%s)" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" msgstr "" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" msgstr "" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, c-format msgid "Warning: %s" msgstr "" -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, fuzzy, c-format msgid "Error: %s" msgstr "erro:" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, fuzzy, c-format msgid "Failed to install %s%s%s: " msgstr "Erro: fallou o %s %s: %s\n" -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, fuzzy, c-format msgid "Failed to update %s%s%s: " msgstr "Erro: fallou o %s %s: %s\n" -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, fuzzy, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Erro: fallou o %s %s: %s\n" -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, fuzzy, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Erro: fallou o %s %s: %s\n" -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, fuzzy, c-format msgid "Authentication required for remote '%s'\n" msgstr "Requírese autenticación para actualizar software" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, c-format msgid "" "\n" @@ -3745,7 +3760,7 @@ msgid "" "%s%s%s branch %s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, c-format msgid "" "\n" @@ -3753,7 +3768,7 @@ msgid "" "%s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, c-format msgid "" "\n" @@ -3762,120 +3777,115 @@ msgid "" msgstr "" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, fuzzy, c-format msgid "Info: applications using this extension:\n" msgstr "" "\n" "Buscando aplicacións e «runtimes»" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, fuzzy, c-format msgid "Info: applications using this runtime:\n" msgstr "" "\n" "Buscando aplicacións e «runtimes»" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 -#, fuzzy +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, fuzzy, c-format msgid "Updating to rebased version\n" msgstr "Actualizando a rama de appstream\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, fuzzy, c-format msgid "Failed to rebase %s to %s: " msgstr "Erro: fallou o %s %s: %s\n" -#: app/flatpak-cli-transaction.c:1009 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Erro: fallou o %s %s: %s\n" - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, fuzzy, c-format msgid "New %s%s%s permissions:" msgstr "Mostrar extensións" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, fuzzy, c-format msgid "%s%s%s permissions:" msgstr "Mostrar extensións" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "" #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 #, fuzzy msgid "Proceed with these changes to the user installation?" msgstr "Mostrar instalacións do usuario" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 #, fuzzy msgid "Proceed with these changes to the system installation?" msgstr "Mostrar instalacións do usuario" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, fuzzy, c-format msgid "Proceed with these changes to the %s?" msgstr "Mostrar instalacións do usuario" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "" -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Desinstalación completada." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Instalación completada." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Actualización completada." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "" @@ -4197,33 +4207,33 @@ msgid "" "not appear on your desktop until the session is restarted." msgstr "" -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "«%s» non é unha orde de flatpak. Quixo dicir «%s%s»?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Non se especificou ningunha orde" @@ -4286,16 +4296,16 @@ msgstr "Erro: fallou o %s %s: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Instalando: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, fuzzy, c-format msgid "%s already installed" msgstr "%s remisión %s xa instalado" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s non instalado" @@ -4324,57 +4334,53 @@ msgstr "" msgid "Failed to rebase %s to %s: %s\n" msgstr "Erro: fallou o %s %s: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Erro: fallou o %s %s: %s\n" - #: common/flatpak-auth.c:58 #, fuzzy, c-format msgid "No authenticator configured for remote `%s`" msgstr "Requírese autenticación para actualizar software" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Tipo de compartido %s descoñecido, os tipos validos son: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Tipo de normativa %s descoñecida, os tipos válidos son: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Nome de dbus %s non " -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Tipo de socket %s descoñecido, os tipos validos son: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Tipo de dispositivo %s descoñecido, os tipos válidos son: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Tipo de característica %s descoñecida, os tipos validos son: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, fuzzy, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4383,184 +4389,218 @@ msgstr "" "Localización de sistema de ficheiros %s descoñecido, as localizacións " "válidas son: hos, home, xdg-*[/...], ~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Formato de env %s non válido" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Compartir co anfitrión" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "COMPARTIR" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Deixar de compartir co anfitrión" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Expoñer o socket á aplicación" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "SOCKET" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Non expoñer o socket á aplicación" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Expoñer o dispositivo á aplicación" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "DISPOSITIVO" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Non expoñer o dispositivo á aplicación" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Permitir característica" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "CARACTERÍSTICA" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "No permitir característica" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "Expoñer o sistema de ficheiros á aplicación (:ro para só lectura)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "SISTEMA_FICHEIROS[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Non expoñer o sistema de ficheiros á aplicación" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "SISTEMA_FICHEIROS" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Estabelecer variábel de ambiente" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VAR=VALOR" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 #, fuzzy msgid "Remove variable from environment" msgstr "Revogarlle os permisos de escritura á aplicación" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 #, fuzzy msgid "VAR" msgstr "VAR=VALOR" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Permitir que a aplicación teña un nome propio no bus de sesión" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "NOME_DBUS" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Permitir á aplicación falar cun nome no bus de sesión" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "Permitir á aplicación falar cun nome no bus de sesión" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Permitir á aplicación posuír un nome propio no bus do sistema" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Permitir á aplicación falar cun nome no bus de sistema" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "Permitir á aplicación falar cun nome no bus de sistema" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Permitir á aplicación posuír un nome propio no bus do sistema" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Engadir unha opción de normativa xenérica" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "SUBSISTEMA.CHAVE=VALOR" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Eliminar opción de normativa xenérica" -#: common/flatpak-context.c:1549 -#, fuzzy -msgid "Persist home directory subpath" -msgstr "Persistir o directorio persoal" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "NOME_FICHEIRO" +#: common/flatpak-context.c:1696 +#, fuzzy +msgid "Persist home directory subpath" +msgstr "Persistir o directorio persoal" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Non requirir unha sesión en execución (sen creación de cgroups)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4569,673 +4609,699 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, fuzzy, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "Non é posíbel crear o directorio de despregue" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, fuzzy, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Ao obter %s desde o remoto %s: " -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, fuzzy, c-format msgid "No such ref '%s' in remote %s" msgstr "Non é posíbel atopar %s no remoto %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 #, fuzzy, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "Non hai ningunha entrada para %s na caché de flatpak do resumo remoto " -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, fuzzy, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "Non hai caché de flatpak na descrición do remoto" -#: common/flatpak-dir.c:921 -#, fuzzy, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "Non hai ningunha entrada para %s na caché de flatpak do resumo remoto " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, fuzzy, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Non hai caché de flatpak na descrición do remoto" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, fuzzy, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Non hai caché de flatpak na descrición do remoto" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, fuzzy, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Non é posíbel atopar %s no remoto %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, fuzzy, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "Non é posíbel atopar %s no remoto %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, fuzzy, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "Non hai ningunha entrada para %s na caché de flatpak do resumo remoto " -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "Non foi posíbel conectarse ao bus do sistema" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 #, fuzzy msgid "User installation" msgstr "Mostrar instalacións do usuario" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, fuzzy, c-format msgid "System (%s) installation" msgstr "Mostrar instalacións do usuario" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Non se atopou ningunha sobrescritura para %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, fuzzy, c-format msgid "%s (commit %s) not installed" msgstr "%s %s non está instalado" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, fuzzy, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "" "Produciuse un erro ao actualizar os metadatos adicionais para «%s»: %s\n" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Ao abrir o repositorio %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, fuzzy, c-format msgid "No current %s pattern matching %s" msgstr "Non actualiar as referencias relacionadas" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 #, fuzzy msgid "No appstream commit to deploy" msgstr "Remisión a despregar" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, fuzzy, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Suma de verificación non válida para os datos adicinais %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Nome baleiro para o uri de datos adicinais %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "URI de datos adicinais %s non admitido" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Produciuse un fallo ao cargar os datos adicinais locais %s: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Tamaño dos datos adicinais incorrecto %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "Ao descargar %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Tamaño dos datos adicinais %s incorrecto" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Suma de verificación non válida para os datos adicinais %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s remisión %s xa instalado" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "Ao obter %s desde o remoto %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 #, fuzzy msgid "Only applications can be made current" msgstr "" "\n" "Buscando aplicacións e «runtimes»" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Non hai momoria dabondo" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Produciuse un fallo ao ler o ficheiro exportado" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Produciuse un erro ao ler o ficheiro xml de mimetype" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Ficheiro xml de mimetype non válido" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, fuzzy, c-format msgid "Invalid Exec argument %s" msgstr "Formato de env %s non válido" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "Mentres se obtiñan os metadatos desanexados: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 #, fuzzy msgid "Extra data missing in detached metadata" msgstr "Mentres se obtiñan os metadatos desanexados: " -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "Ao crear o directorio adicional: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Suma de verificación non válida para os datos adicinais" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Tamaño dos datos adicinais incorrecto" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "Ao escribir o ficheiro de datos adicionais «%s»: " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, fuzzy, c-format msgid "Extra data %s missing in detached metadata" msgstr "Mentres se obtiñan os metadatos desanexados: " -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "apply_extra script failed, estado de saída %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "Ao tentar resolver a referencia %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s non está dispoñíbel" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Non é posíbel crear o directorio de despregue" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Produciuse un fallo ao ler a remisión %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "Ao tentar obter %s en %s: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "Ao tentar obter a subruta de metadatos: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, fuzzy, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "Ao tentar obter %s en %s: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Ao tentar eliminar o directorio adicinal existente: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Ao tentar aplicar os datos adicionais: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Referencia de remisión %s non válida: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "A referencia %s despregada non coincide coa remisión (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "A rama %s da referencia despregada non coincide coa remisión (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s rama %s xa instalado" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "" -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Esta versión de %s xa está instalada" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "Non é posíbel cambiar o remoto durante a instalación dun paquete" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s rama %s non está instalado" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, fuzzy, c-format msgid "%s commit %s not installed" msgstr "%s %s non está instalado" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, fuzzy, c-format msgid "Failed to load filter '%s'" msgstr "Produciuse un fallo ao ler a remisión %s: " -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, fuzzy, c-format msgid "Failed to parse filter '%s'" msgstr "Produciuse un fallo ao ler a remisión %s: " -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 #, fuzzy msgid "Failed to write summary cache: " msgstr "Produciuse un fallo ao crear o ficheiro temporal" -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, fuzzy, c-format msgid "No oci summary cached for remote '%s'" msgstr "Non hai caché de flatpak na descrición do remoto" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, fuzzy, c-format msgid "No cached summary for remote '%s'" msgstr "Non hai caché de flatpak na descrición do remoto" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "Suma de verificación non válida para os datos adicinais %s" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " "URL passed to remote-add was valid." msgstr "" -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "Suma de verificación non válida para os datos adicinais %s" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "" -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Nada coincide con %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Non se puido atopar a referencia %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Produciuse un erro ao buscar o remoto %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Produciuse un erro ao buscar no repositorio local: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, fuzzy, c-format msgid "%s/%s/%s not installed" msgstr "%s %s non está instalado" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Non foi posíbel atopar a instalación %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, fuzzy, c-format msgid "Invalid file format, no %s group" msgstr "Formato de env %s non válido" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, fuzzy, c-format msgid "Invalid version %s, only 1 supported" msgstr "Tipo de uri non válido %s, só se admite http/https" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, fuzzy, c-format msgid "Invalid file format, no %s specified" msgstr "Formato de env %s non válido" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 #, fuzzy msgid "Invalid file format, gpg key invalid" msgstr "Formato de env %s non válido" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Runtime %s, rama %s xa está instalado" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Aplicación %s, rama %s xa está instalado" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, fuzzy, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Non é posíbel atopar %s no remoto %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, fuzzy, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Referencia %s despregada non válida: " -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, fuzzy, c-format msgid "Unable to open path \"%s\": %s" msgstr "Ao obter %s desde o remoto %s: " -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, fuzzy, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "Non foi posíbel crear a tubería de sincronización" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, fuzzy, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "Ao obter %s desde o remoto %s: " -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "" + +#: common/flatpak-installation.c:835 #, fuzzy, c-format msgid "Ref %s not installed" msgstr "%s non instalado" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, fuzzy, c-format msgid "App %s not installed" msgstr "%s non instalado" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, fuzzy, c-format msgid "Remote '%s' already exists" msgstr "O repositorio remoto %s xa existe" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, fuzzy, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "A extensión %s solicitada só está instalada parcialmente" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, fuzzy, c-format msgid "Unable to create directory %s" msgstr "Non foi posíbel crear a tubería de sincronización" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, fuzzy, c-format msgid "Unable to lock %s" msgstr "Non foi posíbel crear a tubería de sincronización" -#: common/flatpak-instance.c:581 -#, fuzzy, c-format -msgid "Unable to open directory %s" -msgstr "Non foi posíbel conectarse ao bus do sistema" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, fuzzy, c-format msgid "Unable to create temporary directory in %s" msgstr "Non é posíbel crear o directorio de despregue" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, fuzzy, c-format msgid "Unable to create file %s" msgstr "Non foi posíbel crear a tubería de sincronización" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, fuzzy, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Ao obter %s desde o remoto %s: " -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 #, fuzzy msgid "Only realm in authentication request" msgstr "Nome de autenticador %s non válido" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 #, fuzzy msgid "Invalid realm in authentication request" msgstr "Nome de autenticador %s non válido" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, fuzzy, c-format msgid "Authorization failed: %s" msgstr "Nome de dbus %s non válido\n" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 #, fuzzy msgid "Invalid authentication request response" msgstr "Nome de autenticador %s non válido" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 #, fuzzy msgid "Invalid delta file format" msgstr "Formato de env %s non válido" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, fuzzy, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Ao obter %s desde o remoto %s: " -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, fuzzy, c-format msgid "Error signing commit: %d" msgstr "Produciuse un erro ao buscar o remoto %s: %s" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "" + #: common/flatpak-progress.c:236 #, fuzzy, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5256,390 +5322,445 @@ msgstr "Non hai orixes de datos adicionais" msgid "Downloading files: %d/%d %s" msgstr "Ao descargar %s: " -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 #, fuzzy msgid "Invalid remote name" msgstr "Sen remoto %s" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s non é unha aplicación ou runtime" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, fuzzy, c-format msgid "Wrong number of components in %s" msgstr "Demasiados argumento" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, fuzzy, c-format msgid "Invalid name %.*s: %s" msgstr "Nome de dbus %s non válido\n" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, fuzzy, c-format msgid "Invalid arch: %.*s: %s" msgstr "«%s» non é un nome válido para unha rama: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, fuzzy, c-format msgid "Invalid name %s: %s" msgstr "Nome de dbus %s non válido\n" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, fuzzy, c-format msgid "Invalid arch: %s: %s" msgstr "«%s» non é un nome válido para unha rama: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, fuzzy, c-format msgid "Invalid branch: %s: %s" msgstr "«%s» non é un nome válido para unha rama: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, fuzzy, c-format msgid "Wrong number of components in partial ref %s" msgstr "Demasiados argumento" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 #, fuzzy msgid " development platform" msgstr "Usar runtime de desenvolvemento" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr "" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 #, fuzzy msgid " application base" msgstr "ID de colección" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr "" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr "" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 #, fuzzy msgid " translations" msgstr "Instalado" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr "" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, fuzzy, c-format msgid "Invalid id %s: %s" msgstr "PID %s non válido" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, fuzzy, c-format msgid "Bad remote name: %s" msgstr "Sen remoto %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 #, fuzzy msgid "No url specified" msgstr "Non se especificou ningunha orde" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 #, fuzzy msgid "GPG verification must be enabled when a collection ID is set" msgstr "A comprobación GPG é obrigatoria se as coleccións están activadas" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Produciuse un fallo ao abrir o ficheiro de información de aplicación" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Non hai orixes de datos adicionais" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Non foi posíbel crear a tubería de sincronización" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Procuciuse un fallo ao sincronizarse co proxi de dbus" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "" + +#: common/flatpak-repo-utils.c:2901 +#, fuzzy +msgid "Invalid gpg key" +msgstr "PID %s non válido" + +#: common/flatpak-repo-utils.c:3237 +#, fuzzy, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Produciuse un erro ao buscar o remoto %s: %s" + +#: common/flatpak-repo-utils.c:3243 +#, fuzzy, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Produciuse un erro ao buscar o remoto %s: %s" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "" + +#: common/flatpak-repo-utils.c:3417 +#, fuzzy, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Actualizando appstream para o remoto %s\n" + +#: common/flatpak-repo-utils.c:3764 +#, fuzzy +msgid "Invalid bundle, no ref in metadata" +msgstr "Suma de verificación non válida para os datos adicinais" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "" -#: common/flatpak-run.c:2207 +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 #, fuzzy msgid "Unable to allocate instance id" msgstr "Non foi posíbel crear a tubería de sincronización" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, fuzzy, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Produciuse un fallo ao abrir o ficheiro temporal flatpak-info: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, fuzzy, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Produciuse un fallo ao abrir o ficheiro temporal flatpak-info: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, fuzzy, c-format msgid "Failed to write to instance id fd: %s" msgstr "Produciuse un fallo ao crear o ficheiro temporal" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, fuzzy, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Produciuse un fallo ao escribir no ficheiro temporal" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, fuzzy, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Produciuse un fallo ao escribir no ficheiro temporal" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, fuzzy, c-format msgid "Failed to block syscall %d: %s" msgstr "Erro: fallou o %s %s: %s\n" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, fuzzy, c-format msgid "Failed to export bpf: %s" msgstr "Produciuse un fallo ao ler o ficheiro exportado" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, fuzzy, c-format msgid "Failed to open ‘%s’" msgstr "Produciuse un fallo ao abrir o ficheiro temporal flatpak-info: %s" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, fuzzy, c-format msgid "ldconfig failed, exit status %d" msgstr "apply_extra script failed, estado de saída %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 #, fuzzy msgid "Can't open generated ld.so.cache" msgstr "Non é posíbel abrir o espazo de nomes %s: %s" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, fuzzy, c-format msgid "Failed to migrate from %s: %s" msgstr "Produciuse un fallo ao ler a remisión %s: " -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, fuzzy, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Produciuse un fallo ao ler a remisión %s: " -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Produciuse un fallo ao abrir o ficheiro de información de aplicación" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Non foi posíbel crear a tubería de sincronización" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Procuciuse un fallo ao sincronizarse co proxi de dbus" + +#: common/flatpak-transaction.c:2210 #, fuzzy, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Aviso: Problema ao buscar por referencias relacionadas: %s\n" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "A aplicación %s require o runtime %s que non está instalado" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "A aplicación %s require o runtime %s que non está instalado" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Remoto %s descactivado, ignorando a actualización %s" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, fuzzy, c-format msgid "%s is already installed" msgstr "%s remisión %s xa instalado" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, fuzzy, c-format msgid "%s is already installed from remote %s" msgstr "%s remisión %s xa instalado" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, fuzzy, c-format msgid "Invalid .flatpakref: %s" msgstr "Referencia de remisión %s non válida: " -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, fuzzy, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "" "Produciuse un erro ao actualizar os metadatos adicionais para «%s»: %s\n" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " "installed: %s" msgstr "" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, fuzzy, c-format msgid "No authenticator installed for remote '%s'" msgstr "Requírese autenticación para actualizar software" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, fuzzy, c-format msgid "Failed to get tokens for ref: %s" msgstr "Produciuse un fallo ao abrir o ficheiro temporal: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 #, fuzzy msgid "Failed to get tokens for ref" msgstr "Produciuse un fallo ao abrir o ficheiro temporal: %s" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 #, fuzzy msgid "any remote" msgstr "Sen remoto %s" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, fuzzy, c-format msgid "Can't load dependent file %s: " msgstr "Non é posíbel abrir o espazo de nomes %s: %s" -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, fuzzy, c-format msgid "Invalid .flatpakrepo: %s" msgstr "PID %s non válido" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." msgstr "" -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "" @@ -5686,139 +5807,113 @@ msgstr "" msgid "URI is not absolute, and no base URI was provided" msgstr "" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" msgstr "" -#: common/flatpak-utils.c:906 -#, fuzzy -msgid "Too many segments in glob" -msgstr "Demasiados argumento" - -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:111 #, fuzzy, c-format -msgid "Invalid glob character '%c'" +msgid "Invalid USB class" msgstr "PID %s non válido" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:125 #, c-format -msgid "Missing glob on line %d" +msgid "Invalid USB subclass" msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Trailing text on line %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "on line %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:205 #, c-format -msgid "Unexpected word '%s' on line %d" +msgid "USB device queries must be in the form TYPE:DATA" msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:225 #, c-format -msgid "Invalid %s: Missing group ‘%s’" +msgid "Unknown USB query rule %s" msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing key ‘%s’" +msgid "Empty USB query" msgstr "" -#: common/flatpak-utils.c:2375 -#, fuzzy -msgid "Invalid gpg key" -msgstr "PID %s non válido" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Non hai orixes de datos adicionais" - -#: common/flatpak-utils.c:5431 -#, fuzzy, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Produciuse un erro ao buscar o remoto %s: %s" - -#: common/flatpak-utils.c:5437 -#, fuzzy, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Produciuse un erro ao buscar o remoto %s: %s" - -#: common/flatpak-utils.c:5684 +#: common/flatpak-usb.c:274 #, c-format -msgid "%s is end-of-life, ignoring for appstream" +msgid "Multiple USB query rules of the same type is not supported" msgstr "" -#: common/flatpak-utils.c:5719 -#, fuzzy, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Actualizando appstream para o remoto %s\n" - -#: common/flatpak-utils.c:6689 -#, fuzzy -msgid "Invalid bundle, no ref in metadata" -msgstr "Suma de verificación non válida para os datos adicinais" - -#: common/flatpak-utils.c:6791 +#: common/flatpak-usb.c:283 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgid "'all' must not contain extra query rules" msgstr "" -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" +#: common/flatpak-usb.c:291 +#, c-format +msgid "USB queries with 'dev' must also specify vendors" msgstr "" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" msgstr "" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 -#, c-format -msgid "Wrong layer checksum, expected %s, was %s" +#: common/flatpak-utils.c:693 +msgid "Empty glob" msgstr "" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:712 +#, fuzzy +msgid "Too many segments in glob" +msgstr "Demasiados argumento" + +#: common/flatpak-utils.c:733 +#, fuzzy, c-format +msgid "Invalid glob character '%c'" +msgstr "PID %s non válido" + +#: common/flatpak-utils.c:787 #, c-format -msgid "No ref specified for OCI image %s" +msgid "Missing glob on line %d" msgstr "" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgid "Trailing text on line %d" msgstr "" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:795 #, c-format -msgid "Invalid require-flatpak argument %s" +msgid "on line %d" msgstr "" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:817 #, c-format -msgid "%s needs a later flatpak version (%s)" -msgstr "%s precisa unha versión de flatpak posterior (%s)" - -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" +msgid "Unexpected word '%s' on line %d" msgstr "" -#: common/flatpak-utils.c:8401 +#: common/flatpak-utils.c:1980 #, c-format -msgid "“%s” is not an unsigned number" +msgid "Invalid require-flatpak argument %s" msgstr "" -#: common/flatpak-utils.c:8411 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "" +msgid "%s needs a later flatpak version (%s)" +msgstr "%s precisa unha versión de flatpak posterior (%s)" #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" @@ -5833,43 +5928,45 @@ msgstr "" msgid "Invalid token" msgstr "PID %s non válido" -#: portal/flatpak-portal.c:2264 -#, fuzzy +#: portal/flatpak-portal.c:2337 +#, fuzzy, c-format msgid "No portal support found" msgstr "Nada coincide con %s" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 #, fuzzy msgid "Update" msgstr "actualizar" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, fuzzy, c-format msgid "Update %s?" msgstr "Actualizando resumo\n" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "" -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 -#, fuzzy +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, fuzzy, c-format msgid "Update ended unexpectedly" msgstr "Actualizar runtime asinado" @@ -6103,6 +6200,23 @@ msgid "" "parental controls policy" msgstr "Requírese autenticación para instalar software" +#, fuzzy, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "" +#~ "Non hai ningunha entrada para %s na caché de flatpak do resumo remoto " + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Erro: fallou o %s %s: %s\n" + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Erro: fallou o %s %s: %s\n" + +#, fuzzy, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Non foi posíbel conectarse ao bus do sistema" + #~ msgid "install" #~ msgstr "instalar" diff --git a/po/hi.gmo b/po/hi.gmo deleted file mode 100644 index 2abff4ef1171dd63d1e139de62bc4c5dcd09aa00..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 152964 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 diff --git a/po/hi.po b/po/hi.po index 52f4751..3d9f162 100644 --- a/po/hi.po +++ b/po/hi.po @@ -1,191 +1,192 @@ -# Hindi translation for flatpak. -# Copyright (C) 2021 THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the flatpak package. +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. # Dmitry , 2021. +# Scrambled777 , 2024. # msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" -"PO-Revision-Date: 2021-09-11 01:37+0700\n" -"Last-Translator: Dmitry \n" -"Language-Team: Hindi - Hindi \n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2024-06-08 20:21+0530\n" +"Last-Translator: Scrambled777 \n" +"Language-Team: Hindi \n" "Language: hi\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n==0 || n==1);\n" -"X-Generator: Poedit 2.2.4\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Generator: Gtranslator 46.1\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "ऐप के बजाय रनटाइम निर्यात करें" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" -msgstr "के लिए एक बंडल के लिए वास्तुकला" +msgstr "बंडल करने हेतु आर्किटेक्चर" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" -msgstr "वास्तुकला" +msgstr "आर्किटेक्चर" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "रेपो के लिए URL" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" -msgstr "रनटाइम फ्लैटपाक्रेपो फ़ाइल के लिए URL" +msgstr "रनटाइम flatpakrepo फाइल के लिए URL" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" -msgstr "फ़ाइल से GPG कुंजी जोड़ें (के लिये stdin)" +msgstr "फाइल से GPG कुंजी जोड़ें (- stdin के लिए)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" -msgstr "फ़ाइल" +msgstr "फाइल" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" -msgstr "OCI छवि पर हस्ताक्षर करने के लिए GPG प्रमुख पहचानकर्ता" - -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "KEY-ID" +msgstr "OCI छवि पर हस्ताक्षर करने के लिए GPG कुंजी ID" -# "Llaveros" is the literal translate of keyrings, but in spanish don't mean exactly the same in software slang. A more correct translation would be "repositorios de claves" that means "key repositories". #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "कुंजी-ID" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" -msgstr "चाबी खोजने के लिए GPG Homedir" +msgstr "कीरिंग की तलाश करते समय GPG गृह-निर्देशिका का प्रयोग करें" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" -msgstr "घरेलू निर्देशिका" +msgstr "गृह-निर्देशिका" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" -msgstr "OSTree एक डेल्टा बंडल बनाने के लिए प्रतिबद्ध है" +msgstr "डेल्टा बंडल बनाने के लिए OSTree कमिट" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" -msgstr "कमेटी" +msgstr "कमिट" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" -msgstr "फ्लैटपैक बंडल के बजाय oci छवि निर्यात करें" +msgstr "Flatpak बंडल के बजाय oci छवि निर्यात करें" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" -msgstr "स्थान का नाम नाम [शाखा] - स्थानीय रिपॉजिटरी से एकल फ़ाइल बिंदी बनाएँ" +msgstr "स्थान फाइलनाम नाम [शाखा] - स्थानीय भंडार से एकल फाइल बंडल बनाएं" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" -msgstr "स्थान, फ़ाइल नाम और नाम निर्दिष्ट किया जाना चाहिए" +msgstr "स्थान, फाइलनाम और नाम अवश्य निर्दिष्ट किया जाना चाहिए" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" -msgstr "बहुत ज़्यादा बहस" +msgstr "बहुत ज्यादा तर्क" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" -msgstr "'%s' एक वैध भंडार नहीं है" +msgstr "'%s' मान्य रिपोजिटरी नहीं है" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " -msgstr "'%s' एक मान्य भंडार नहीं है: " +msgstr "'%s' मान्य रिपोजिटरी नहीं है: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "'%s' मान्य नाम नहीं है: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "'%s' मान्य शाखा नाम नहीं है: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" -msgstr "'%s' वैध फ़ाइल नाम नहीं है" +msgstr "'%s' मान्य फाइल नाम नहीं है" #: app/flatpak-builtins-build.c:49 msgid "Use Platform runtime rather than Sdk" -msgstr "Sdk के बजाय प्लेटफ़ॉर्म रनटाइम का उपयोग करें" +msgstr "SDK के बजाय प्लेटफ़ॉर्म रनटाइम का प्रयोग करें" #: app/flatpak-builtins-build.c:50 msgid "Make destination readonly" -msgstr "गंतव्य केवल पढ़ने के लिए बनाओ" +msgstr "गंतव्य को केवल-पढ़ने योग्य बनाएं" #: app/flatpak-builtins-build.c:51 msgid "Add bind mount" @@ -197,7 +198,7 @@ msgstr "DEST=SRC" #: app/flatpak-builtins-build.c:52 msgid "Start build in this directory" -msgstr "इस निर्देशिका में निर्माण शुरू करें" +msgstr "इस निर्देशिका में निर्माण प्रारंभ करें" #: app/flatpak-builtins-build.c:52 app/flatpak-builtins-build.c:53 #: app/flatpak-builtins-build-init.c:64 app/flatpak-builtins-run.c:68 @@ -206,19 +207,19 @@ msgstr "निर्देशिका" #: app/flatpak-builtins-build.c:53 msgid "Where to look for custom sdk dir (defaults to 'usr')" -msgstr "जहां कस्टम sdk dir के लिए देखने के लिए" +msgstr "तदनुकूल SDK निर्देशिका कहां देखें (तयशुदा 'usr' है)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" -msgstr "मेटाडेटा के लिए वैकल्पिक फ़ाइल का उपयोग करें" +msgstr "मेटाडेटा के लिए वैकल्पिक फाइल का प्रयोग करें" #: app/flatpak-builtins-build.c:55 app/flatpak-builtins-run.c:85 msgid "Kill processes when the parent process dies" -msgstr "पैरेंट प्रक्रिया के मर जाने पर प्रक्रियाओं को मार डालें" +msgstr "जब प्रधान प्रक्रिया समाप्त हो जाए तो प्रक्रियाओं को समाप्त कर दें" #: app/flatpak-builtins-build.c:56 msgid "Export application homedir directory to build" -msgstr "निर्यात घर निर्देशिका बनाने के लिए निर्यात" +msgstr "निर्माण के लिए अनुप्रयोग गृह-निर्देशिका निर्यात करें" #: app/flatpak-builtins-build.c:57 app/flatpak-builtins-run.c:73 msgid "Log session bus calls" @@ -226,547 +227,554 @@ msgstr "सत्र बस कॉल लॉग करें" #: app/flatpak-builtins-build.c:58 app/flatpak-builtins-run.c:74 msgid "Log system bus calls" -msgstr "सत्र बस कॉल लॉग करें" +msgstr "सिस्टम बस कॉल लॉग करें" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" -msgstr "निर्देशिका [कमांड [तर्क…]] - निर्देशिका में बनाएँ" +msgstr "निर्देशिका [कमांड [तर्क…]] - निर्देशिका में बनाएं" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" -msgstr "निर्देश निर्दिष्ट किया जाना चाहिए" +msgstr "निर्देशिका निर्दिष्ट होनी चाहिए" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" -msgstr "निर्देशिका बनाएँ %s आरंभीकृत नहीं, फ्लैटपैक बिल्ड-इनिट का उपयोग करें" +msgstr "निर्माण निर्देशिका %s प्रारंभ नहीं हुई, flatpak build-init का प्रयोग करें" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" -msgstr "मेटाडेटा अमान्य, एप्लिकेशन या रनटाइम नहीं" +msgstr "मेटाडेटा अमान्य है, अनुप्रयोग या रनटाइम नहीं" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" -msgstr "कोई विस्तार बिंदु मिलान नहीं %s में %s" +msgstr "%2$s में %1$s से मेल खाने वाला कोई विस्तार बिंदु नहीं" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" -msgstr "बाइंड माउंट विकल्प में '=' गुम '%s'" +msgstr "बाइंड माउंट विकल्प '%s' में '=' गुम है" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" -msgstr "ऐप शुरू करने में असमर्थ" +msgstr "ऐप प्रारंभ करने में असमर्थ" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "स्रोत रेपो निर्देशिका" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "SRC-REPO" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" -msgstr "स्रोत रेपो रेफ" +msgstr "स्रोत रेपो निर्देशिका" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "SRC-REF" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" -msgstr "एक पंक्ति का विषय" +msgstr "एक पंक्ति विषय" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "विषय" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "पूर्ण विवरण" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 -msgid "BODY" -msgstr "सामग्री" - #: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "अपस्ट्रीम ब्रांच को अपडेट करें" +#: app/flatpak-builtins-build-export.c:61 +msgid "BODY" +msgstr "मुख्यभाग" #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 -msgid "Don't update the summary" -msgstr "नहीं है सारांश को अपडेट करें" +msgid "Update the appstream branch" +msgstr "एपस्ट्रीम शाखा को अद्यतन करें" #: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 +msgid "Don't update the summary" +msgstr "सारांश को अद्यतन न करें" + +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" -msgstr "GPG कुंजी ID के साथ कमिट करना" +msgstr "कमिट पर हस्ताक्षर करने हेतु GPG कुंजी ID" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" -msgstr "विधानसभा को पूर्ण रूप से चिह्नित करें" +msgstr "निर्माण को जीवन-समाप्ति के रूप में चिह्नित करें" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "कारण" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" msgstr "" -"मार्क, OLDID उपसर्ग को अंत-जीवन के रूप में मिलान करता है, जिसे दिए गए NEWID के साथ " -"प्रतिस्थापित किया जाना है" +"OLDID उपसर्ग से मेल खाने वाले संदर्भ को जीवन के अंत के रूप में चिह्नित करें, जिसे दिए गए " +"NEWID से प्रतिस्थापित किया जाना है" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "OLDID=NEWID" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" -msgstr "इस कमेट को स्थापित करने के लिए आवश्यक प्रकार का टोकन सेट करें" +msgstr "इस कमिट को स्थापित करने के लिए आवश्यक टोकन का प्रकार निर्धारित करें" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" -msgstr "VAL" +msgstr "मान" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" -msgstr "कमिटमेंट के टाइमस्टैम्प को ओवरराइड करें (अब वर्तमान समय के लिए)" +msgstr "कमिट के समय-चिह्न को अध्यारोहण करें (अभी वर्तमान समय के लिए)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" -msgstr "टाइमस्टैम्प" +msgstr "समय-चिह्न" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" -msgstr "एक सारांश सूचकांक उत्पन्न न करें" +msgstr "सारांश सूचकांक उत्पन्न न करें" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" -msgstr "DST-REPO [DST-REF…] - मौजूदा कमिट्स से एक नई प्रतिबद्धता बनाएं" +msgstr "DST-REPO [DST-REF…] - मौजूदा कमिट से एक नया कमिट बनाएं" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" -msgstr "DST-REPO निर्दिष्ट किया जाना चाहिए" +msgstr "DST-REPO निर्दिष्ट होना चाहिए" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" -"यदि --src-repo निर्दिष्ट नहीं है, तो ठीक एक गंतव्य रेफरी निर्दिष्ट किया जाना चाहिए" +"यदि --src-repo निर्दिष्ट नहीं है, तो बिल्कुल एक गंतव्य संदर्भ निर्दिष्ट किया जाना चाहिए" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" -msgstr "यदि --src-ref निर्दिष्ट है, तो ठीक एक गंतव्य रेफरी निर्दिष्ट होना चाहिए" +msgstr "यदि --src-ref निर्दिष्ट है, तो बिल्कुल एक गंतव्य संदर्भ निर्दिष्ट किया जाना चाहिए" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" -msgstr "या तो --src-repo या --src-ref निर्दिष्ट होना चाहिए" +msgstr "या तो --src-repo या --src-ref निर्दिष्ट किया जाना चाहिए" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" -msgstr "उपयोग का अमान्य तर्क प्रारूप --end-of-life-rebase=OLDID=NEWID" +msgstr "प्रयोग का अमान्य तर्क प्रारूप --end-of-life-rebase=OLDID=NEWID" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" -msgstr "अमान्य नाम %s में --end-of-life-rebase" +msgstr "--end-of-life-rebase में अमान्य नाम %s" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" -msgstr "पार्स नहीं कर सका '%s'" +msgstr "'%s' का विश्लेषण नहीं किया जा सका" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" -msgstr "आंशिक स्रोत से प्रतिबद्ध नहीं कर सकते" +msgstr "आंशिक स्रोत कमिट से कमिट नहीं किया जा सकता" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" -msgstr "%s: कोई परिवर्तन नहीं होता है\n" +msgstr "%s: कोई परिवर्तन नहीं\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" -msgstr "के लिए निर्यात करने के लिए वास्तुकला (मेजबान संगत होना चाहिए)" +msgstr "निर्यात के लिए आर्किटेक्चर (होस्ट संगत होना चाहिए)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" -msgstr "प्रतिबद्ध रनटाइम (/usr), नहीं /app" +msgstr "रनटाइम (/usr) कमिट करें, /app नहीं" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" -msgstr "फ़ाइलों के लिए वैकल्पिक निर्देशिका का उपयोग करें" +msgstr "फाइलों के लिए वैकल्पिक निर्देशिका का प्रयोग करें" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "उपनिर्देशिका" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" -msgstr "बाहर करने के लिए फाइलें" +msgstr "बहिष्कृत करने के लिए फाइलें" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" -msgstr "पैटर्न" +msgstr "प्रतिमान" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" -msgstr "शामिल करने के लिए फ़ाइलों को छोड़कर" +msgstr "शामिल करने के लिए बहिष्कृत फाइलें" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" -msgstr "दिए गए आईडी से प्रतिस्थापित करने के लिए, जीवन के अंत के रूप में मार्क का निर्माण करें" +msgstr "निर्माण को जीवन-समाप्ति के रूप में चिह्नित करें, जिसे दी गई ID से बदला जाएगा" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" -msgstr "आईडी" +msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" -msgstr "कमिट के टाइमस्टैम्प को ओवरराइड करें" +msgstr "कमिट के समय-चिह्न को अध्यारोहण करें" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" -msgstr "आईडी का संग्रह" +msgstr "संग्रह ID" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" -msgstr "चेतावनी: डेस्कटॉप-फ़ाइल चलाने में त्रुटि: %s\n" +msgstr "चेतावनी: desktop-file-validate चलाने में त्रुटि: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" -msgstr "चेतावनी: डेस्कटॉप-फ़ाइल-मान्य से पढ़ने में त्रुटि: %s\n" +msgstr "चेतावनी: desktop-file-validate से पढ़ने में त्रुटि: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" -msgstr "चेतावनी: डेस्कटॉप फ़ाइल को मान्य करने में विफल %s: %s\n" +msgstr "चेतावनी: डेस्कटॉप फाइल %s को सत्यापित करने में विफल: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" -msgstr "चेतावनी: में महत्वपूर्ण कुंजी नहीं मिल सकती है %s: %s\n" +msgstr "चेतावनी: %s में निष्पादन कुंजी नहीं मिल सकी: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" -msgstr "चेतावनी: एक्सिस लाइन के लिए बाइनरी नहीं मिला %s: %s\n" +msgstr "चेतावनी: %s में निष्पादन पंक्ति के लिए बाइनरी नहीं मिली: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" -msgstr "चेतावनी: चिह्न आईडी मिलान आईडी में नहीं %s: %s\n" +msgstr "चेतावनी: %s में आइकन ऐप ID से मेल नहीं खा रहा है: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" -msgstr "चेतावनी: आइकन डेस्कटॉप फ़ाइल में संदर्भित है लेकिन निर्यात नहीं किया गया है: %s\n" +msgstr "चेतावनी: आइकन डेस्कटॉप फाइल में संदर्भित है लेकिन निर्यात नहीं किया गया है: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" -msgstr "अमान्य uri प्रकार %s, केवल http / https समर्थित है" +msgstr "अमान्य URI प्रकार %s, केवल http/https समर्थित है" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" -msgstr "में बेसनेम खोजने में असमर्थ %s, स्पष्ट रूप से एक नाम निर्दिष्ट करें" +msgstr "%s में बेसनाम ढूंढने में असमर्थ, स्पष्ट रूप से एक नाम निर्दिष्ट करें" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" -msgstr "अतिरिक्त डेटा नाम में कोई स्लैश की अनुमति नहीं है" +msgstr "अतिरिक्त डेटा नाम में कोई कटौती की अनुमति नहीं है" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" -msgstr "Sha256 चेकसम के लिए अमान्य प्रारूप: '%s'" +msgstr "SHA256 चेकसम के लिए अमान्य प्रारूप: '%s'" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" -msgstr "अतिरिक्त शून्य डेटा आकार समर्थित नहीं हैं" +msgstr "शून्य के अतिरिक्त डेटा आकार समर्थित नहीं हैं" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" -msgstr "स्थान निर्देशिका [शाखा] - एक निर्माण निर्देशिका से एक भंडार बनाएँ" +msgstr "स्थान निर्देशिका [शाखा] - एक निर्माण निर्देशिका से एक रिपॉजिटरी बनाएं" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" -msgstr "स्थान और निर्देशिका निर्दिष्ट की जानी चाहिए" +msgstr "स्थान और निर्देशिका निर्दिष्ट होनी चाहिए" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" -msgstr "‘%s’ एक मान्य संग्रह आईडी नहीं है: %s" +msgstr "‘%s’ मान्य संग्रह ID नहीं है: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" -msgstr "मेटाडेटा में निर्दिष्ट कोई नाम नहीं" +msgstr "मेटाडेटा में कोई नाम निर्दिष्ट नहीं है" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" -msgstr "ठीक कर: %s\n" +msgstr "कमिट: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" -msgstr "मेटाडेटा कुल: %u\n" +msgstr "कुल मेटाडेटा: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" -msgstr "मेटाडाटा लिखित: %u\n" +msgstr "लिखित मेटाडेटा: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "कुल सामग्री: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "लिखित सामग्री: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" -msgstr "लिखित सामग्री:" +msgstr "लिखित सामग्री बाइट्स:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" -msgstr "सेट करने के लिए कमान" +msgstr "निर्धारित करने हेतु कमांड" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "कमांड" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" -msgstr "आवश्यकता के लिए फ्लैटपैक संस्करण" +msgstr "आवश्यकता Flatpak संस्करण" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" -msgstr "मेजर.मिनोर.माइक्रो" +msgstr "प्रमुख.मामूली.सूक्ष्म" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" -msgstr "निर्यात की प्रक्रिया न करें" +msgstr "निर्यात संसाधित न करें" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "अतिरिक्त डेटा जानकारी" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" -msgstr "विस्तार बिंदु जानकारी जोड़ें" +msgstr "एक्सटेंशन बिंदु जानकारी जोड़ें" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "नाम=चर[=मान]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" -msgstr "विस्तार बिंदु जानकारी निकालें" +msgstr "एक्सटेंशन बिंदु जानकारी हटाएं" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "नाम" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" -msgstr "एक्सटेंशन प्राथमिकता सेट करें (केवल एक्सटेंशन के लिए)" +msgstr "एक्सटेंशन की प्राथमिकता निर्धारित करें (केवल एक्सटेंशन के लिए)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" -msgstr "मूल्य" +msgstr "मान" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" -msgstr "एप्लिकेशन के लिए उपयोग किए जाने वाले एसडीके को बदलें" +msgstr "ऐप के लिए प्रयुक्त SDK बदलें" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" -msgstr "एसडीके" +msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" -msgstr "ऐप के लिए उपयोग किए जाने वाले रनटाइम को बदलें" +msgstr "ऐप के लिए प्रयोग किए गए रनटाइम को बदलें" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" -msgstr "क्रम पर्यावरण" +msgstr "रनटाइम" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" -msgstr "सामान्य मेटाडेटा विकल्प सेट करें" +msgstr "सामान्य मेटाडेटा विकल्प निर्धारित करें" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" -msgstr "ग्रुप=कुंजी[=मूल्य]" +msgstr "समूह=कुंजी[=मान]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" -msgstr "रनटाइम से इनहेरिट न करें" +msgstr "रनटाइम से अनुमतियां प्राप्त न करें" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" -msgstr "निर्यात नहीं हो रहा है %s, गलत विस्तार\n" +msgstr "%s निर्यात नहीं हो रहा, गलत एक्सटेंशन\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" -msgstr "निर्यात नहीं हो रहा है %s, गैर-अनुमत निर्यात फ़ाइल नाम\n" +msgstr "%s निर्यात नहीं किया जा रहा, गैर-अनुमत निर्यात फाइल नाम\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" -msgstr "निर्यात %s\n" +msgstr "%s निर्यात किया जा रहा है\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" -msgstr "एक से अधिक निष्पादन योग्य पाए गए\n" +msgstr "एक से अधिक निष्पादनयोग्य मिले\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" -msgstr "का उपयोग कर %s कमांड के रूप में\n" +msgstr "कमांड के रूप में %s का प्रयोग करना\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" -msgstr "कोई निष्पादन योग्य नहीं मिला\n" +msgstr "कोई निष्पादन-योग्य नहीं मिला\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "अमान्य --require-version तर्क: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" -msgstr "--extra-data तर्क में बहुत कम तत्व %s" +msgstr "--extra-data तर्क %s में बहुत कम तत्व" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " "GROUP=KEY[=VALUE]]" -msgstr "में बहुत कम तत्व --metadata बहस %s, प्रारूप GROUP=KEY[=VALUE] होना चाहिए]" +msgstr "--metadata तर्क %s में बहुत कम तत्व, प्रारूप समूह=कुंजी[=मान]] होना चाहिए" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" "Too few elements in --extension argument %s, format should be " "NAME=VAR[=VALUE]" -msgstr "में बहुत कम तत्व --extension बहस %s, प्रारूप NAME=VAR[=VALUE] होना चाहिए" +msgstr "--extension तर्क %s में बहुत कम तत्व, प्रारूप नाम=परिवर्तनीय[=मान] होना चाहिए" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "अमान्य एक्सटेंशन नाम %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "निर्देशिका - एक निर्माण निर्देशिका को अंतिम रूप दें" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" -msgstr "निर्देशिका बनाएँ %s नहीं आरंभीकृत" +msgstr "निर्माण निर्देशिका %s प्रारंभ नहीं हुई" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" -msgstr "निर्देशिका बनाएँ %s पहले से ही अंतिम रूप दिया गया" +msgstr "निर्माण निर्देशिका %s को पहले ही अंतिम रूप दिया जा चुका है" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" -msgstr "कृपया निर्यात की गई फ़ाइलों और मेटाडेटा की समीक्षा करें\n" +msgstr "कृपया निर्यात की गई फाइलों और मेटाडेटा की समीक्षा करें\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" -msgstr "आयातित बंडल के लिए प्रयुक्त रेफरी को ओवरराइड करें" +msgstr "आयातित बंडल के लिए प्रयुक्त संदर्भ को अध्यारोहण करें" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" -msgstr "रेफरी" +msgstr "संदर्भ" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" -msgstr "फ्लैटपैक बंडल के बजाय oci छवि आयात करें" +msgstr "Flatpak बंडल के बजाय OCI छवि आयात करें" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" -msgstr "रेफरी '%s' रजिस्ट्री में नहीं मिला" +msgstr "संदर्भ '%s' रजिस्ट्री में नहीं मिला" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" -msgstr "रजिस्ट्री में कई चित्र, के साथ एक संदर्भ निर्दिष्ट करें --ref" +msgstr "रजिस्ट्री में एकाधिक छवियां, --ref के साथ एक संदर्भ निर्दिष्ट करें" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" -msgstr "आयात करना %s (%s)\n" +msgstr "%s आयात किया जा रहा है (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" -msgstr "स्थान फ़ाइल नाम - एक स्थानीय भंडार में एक फ़ाइल बंडल आयात करें" +msgstr "स्थान फाइलनाम - फाइल बंडल को स्थानीय रिपॉजिटरी में आयात करें" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" -msgstr "स्थान और फ़ाइल नाम निर्दिष्ट किया जाना चाहिए" +msgstr "स्थान और फाइलनाम निर्दिष्ट होना चाहिए" #: app/flatpak-builtins-build-init.c:53 app/flatpak-builtins-info.c:55 #: app/flatpak-builtins-run.c:66 msgid "Arch to use" -msgstr "उपयोग करने के लिए वास्तुकला" +msgstr "प्रयोग करने के लिए आर्किटेक्चर" #: app/flatpak-builtins-build-init.c:54 msgid "Initialize var from named runtime" @@ -774,11 +782,11 @@ msgstr "नामित रनटाइम से var प्रारंभ क #: app/flatpak-builtins-build-init.c:55 msgid "Initialize apps from named app" -msgstr "नामित ऐप से ऐप को प्रारंभ करें" +msgstr "नामित ऐप से ऐप्स प्रारंभ करें" #: app/flatpak-builtins-build-init.c:55 msgid "APP" -msgstr "एपीपी" +msgstr "ऐप" #: app/flatpak-builtins-build-init.c:56 msgid "Specify version for --base" @@ -790,27 +798,27 @@ msgstr "संस्करण" #: app/flatpak-builtins-build-init.c:57 msgid "Include this base extension" -msgstr "इस आधार विस्तार को शामिल करें" +msgstr "इस आधार एक्सटेंशन को शामिल करें" #: app/flatpak-builtins-build-init.c:57 app/flatpak-builtins-build-init.c:62 msgid "EXTENSION" -msgstr "विस्तार स" +msgstr "एक्सटेंशन" #: app/flatpak-builtins-build-init.c:58 msgid "Extension tag to use if building extension" -msgstr "एक्सटेंशन टैग यदि बिल्डिंग एक्सटेंशन का उपयोग करने के लिए" +msgstr "एक्सटेंशन बनाते समय प्रयोग के लिए एक्सटेंशन टैग" #: app/flatpak-builtins-build-init.c:58 msgid "EXTENSION_TAG" -msgstr "विस्तार टैग" +msgstr "एक्सटेंशन_टैग" #: app/flatpak-builtins-build-init.c:59 msgid "Initialize /usr with a writable copy of the sdk" -msgstr "Sdk की एक लेखन योग्य प्रतिलिपि के साथ प्रारंभ /usr करें" +msgstr "SDK की एक लिखने योग्य प्रति के साथ /usr प्रारंभ करें" #: app/flatpak-builtins-build-init.c:60 msgid "Specify the build type (app, runtime, extension)" -msgstr "बिल्ड प्रकार (ऐप, रनटाइम, एक्सटेंशन) निर्दिष्ट करें" +msgstr "निर्माण प्रकार निर्दिष्ट करें (ऐप, रनटाइम, एक्सटेंशन)" #: app/flatpak-builtins-build-init.c:60 msgid "TYPE" @@ -818,7 +826,7 @@ msgstr "प्रकार" #: app/flatpak-builtins-build-init.c:61 msgid "Add a tag" -msgstr "एक टैग जोड़ना" +msgstr "टैग जोड़ें" #: app/flatpak-builtins-build-init.c:61 msgid "TAG" @@ -826,289 +834,292 @@ msgstr "टैग" #: app/flatpak-builtins-build-init.c:62 msgid "Include this sdk extension in /usr" -msgstr "इस sdk /usr में एक्सटेंशन शामिल करें" +msgstr "इस SDK एक्सटेंशन को /usr में शामिल करें" #: app/flatpak-builtins-build-init.c:64 msgid "Where to store sdk (defaults to 'usr')" -msgstr "जहाँ sdk को स्टोर करना है ('usr' के लिए डिफॉल्ट)" +msgstr "SDK को कहां संग्रहित करें (तयशुदा रूप से 'usr')" #: app/flatpak-builtins-build-init.c:65 msgid "Re-initialize the sdk/var" -msgstr "sdk/var को पुनः आरंभ करें" +msgstr "SDK/var को पुनः प्रारंभ करें" #: app/flatpak-builtins-build-init.c:118 -#, fuzzy, c-format +#, c-format msgid "Requested extension %s/%s/%s is only partially installed" -msgstr "विस्तार का अनुरोध किया %s केवल आंशिक रूप से स्थापित है" +msgstr "अनुरोधित एक्सटेंशन %s/%s/%s केवल आंशिक रूप से स्थापित है" #: app/flatpak-builtins-build-init.c:147 -#, fuzzy, c-format +#, c-format msgid "Requested extension %s/%s/%s not installed" -msgstr "विस्तार का अनुरोध किया %s स्थापित नहीं है" +msgstr "अनुरोधित एक्सटेंशन %s/%s/%s स्थापित नहीं है" #: app/flatpak-builtins-build-init.c:207 msgid "" "DIRECTORY APPNAME SDK RUNTIME [BRANCH] - Initialize a directory for building" -msgstr "डायरेक्टरी ऐपनाम एसडीके रनटाइम [ब्रांच] - इमारत के लिए एक निर्देशिका शुरू करें" +msgstr "निर्देशिका ऐपनाम SDK रनटाइम [शाखा] - निर्माण के लिए एक निर्देशिका प्रारंभ करें" #: app/flatpak-builtins-build-init.c:214 msgid "RUNTIME must be specified" -msgstr "रनटाइम निर्दिष्ट किया जाना चाहिए" +msgstr "रनटाइम निर्दिष्ट होना चाहिए" #: app/flatpak-builtins-build-init.c:235 #, c-format msgid "'%s' is not a valid build type name, use app, runtime or extension" -msgstr "" -"'%s' एक मान्य बिल्ड प्रकार का नाम नहीं है, एप्लिकेशन, रनटाइम या एक्सटेंशन का उपयोग करें" +msgstr "'%s' मान्य बिल्ड प्रकार का नाम नहीं है, ऐप, रनटाइम या एक्सटेंशन का प्रयोग करें" #: app/flatpak-builtins-build-init.c:241 app/flatpak-builtins-override.c:79 #, c-format msgid "'%s' is not a valid application name: %s" -msgstr "'%s' मान्य एप्लिकेशन नाम नहीं है: %s" +msgstr "'%s' मान्य अनुप्रयोग नाम नहीं है: %s" #: app/flatpak-builtins-build-init.c:295 #, c-format msgid "Build directory %s already initialized" -msgstr "निर्देशिका बनाएँ %s पहले से ही आरंभिक" +msgstr "बिल्ड निर्देशिका %s पहले ही प्रारंभ हो चुकी है" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" -msgstr "स्थापित करने के लिए वास्तुकला" +msgstr "स्थापित करने हेतु आर्किटेक्चर" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" -msgstr "निर्दिष्ट नाम के साथ रन समय देखें" +msgstr "निर्दिष्ट नाम के साथ रनटाइम देखें" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" -msgstr "स्थान [आईडी [शाखा]] - एक आवेदन या रनटाइम पर हस्ताक्षर करें" +msgstr "स्थान [ID [शाखा]] - एक आवेदन या रनटाइम पर हस्ताक्षर करें" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "स्थान निर्दिष्ट किया जाना चाहिए" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" -msgstr "कोई gpg कुंजी आईडी निर्दिष्ट नहीं है" +msgstr "कोई gpg कुंजी ID निर्दिष्ट नहीं है" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "इस रेपो को एक नए URL पर पुनर्निर्देशित करें" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" -msgstr "इस भंडार के लिए उपयोग करने के लिए एक अच्छा नाम है" +msgstr "इस रिपॉजिटरी के लिए प्रयोग करने के लिए एक अच्छा नाम" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" -msgstr "टाइटिल" +msgstr "शीर्षक" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" -msgstr "इस रिपॉजिटरी के लिए एक-लाइन टिप्पणी" +msgstr "इस रिपॉजिटरी के लिए एक पंक्ति की टिप्पणी" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "टिप्पणी" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" -msgstr "इस रिपॉजिटरी के लिए एक पूर्ण-पैरा विवरण" +msgstr "इस रिपॉजिटरी के लिए एक पूर्ण-अनुच्छेद विवरण" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "विवरण" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" -msgstr "इस भंडार के लिए वेबसाइट यूआरएल" +msgstr "इस रिपॉजिटरी के लिए वेबसाइट का URL" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" -msgstr "इस रिपॉजिटरी के लिए एक आइकन के लिए URL" +msgstr "इस रिपॉजिटरी के लिए आइकन के लिए URL" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" -msgstr "इस भंडार के लिए उपयोग करने के लिए डिफ़ॉल्ट शाखा" +msgstr "इस रिपॉजिटरी के लिए प्रयोग करने के लिए तयशुदा शाखा" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "शाखा" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" -msgstr "संकलन-आईडी" +msgstr "संग्रह-ID" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" msgstr "" -"क्लाइंट आईडी को केवल दूरस्थ सहायता के लिए संग्रह ID को स्थायी रूप से परिनियोजित करें" +"केवल साइडलोड समर्थन के लिए, क्लाइंट रिमोट विन्यास में संग्रह ID को स्थायी रूप से " +"परिनियोजित करें" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" -msgstr "क्लाइंट दूरस्थ कॉन्फ़िगरेशन के लिए संग्रह ID को स्थायी रूप से परिनियोजित करें" +msgstr "क्लाइंट रिमोट विन्यास में संग्रह ID को स्थायी रूप से परिनियोजित करें" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" -msgstr "इस भंडार के लिए प्रमाणक का नाम" +msgstr "इस रिपॉजिटरी के लिए प्रमाणक का नाम" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" -msgstr "ऑटो इस रिपॉजिटरी के लिए प्रमाणक स्थापित करें" +msgstr "इस रिपॉजिटरी के लिए प्रमाणक को स्वतः स्थापित करें" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" -msgstr "इस रिपॉजिटरी के लिए ऑटोनॉस्टॉल ऑथेंटाइटर न करें" +msgstr "इस रिपॉजिटरी के लिए प्रमाणक को स्वतः स्थापित न करें" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" -msgstr "ऑथेंटिकेटर ऑप्शन" +msgstr "प्रमाणक विकल्प" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" -msgstr "कुंजी=मूल्य" +msgstr "कुंजी=मान" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" -msgstr "फ़ाइल से नई डिफ़ॉल्ट GPG सार्वजनिक कुंजी आयात करें" +msgstr "फाइल से नई तयशुदा GPG सार्वजनिक कुंजी आयात करें" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" -msgstr "GPG कुंजी आईडी के साथ सारांश पर हस्ताक्षर करने के लिए" +msgstr "सारांश पर हस्ताक्षर करने के लिए GPG कुंजी ID" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" -msgstr "डेल्टा फ़ाइलों को जनरेट करें" +msgstr "डेल्टा फाइलें उत्पन्न करें" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" -msgstr "अपस्ट्रीम शाखा को अपडेट न करें" +msgstr "ऐपस्ट्रीम शाखा को अद्यतन न करें" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" -msgstr "डेल्टास बनाते समय अधिकतम समानांतर नौकरियां (डिफ़ॉल्ट: NUMCPUs)" +msgstr "डेल्टा बनाते समय अधिकतम समानांतर नौकरियां (तयशुदा: NUMCPUs)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" -msgstr "नौकरियों की संख्या" +msgstr "NUM-JOBS" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" -msgstr "मेल खाते लिंक का डेल्टा न बनाएं" +msgstr "डेल्टा मिलान संदर्भ न बनाएं" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" -msgstr "वस्तुओं को सुपरसीड करना" +msgstr "अप्रयुक्त वस्तुओं को छाँटें" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" -msgstr "" +msgstr "छँटाई करें लेकिन वास्तव में कुछ भी न हटाएं" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" -msgstr "प्रत्येक प्रतिबद्ध के लिए केवल गहराई वाले माता-पिता (डिफ़ॉल्ट: -1 = अनंत)" +msgstr "प्रत्येक कमिट के लिए केवल प्रधान गहराई को पार करें (तयशुदा: -1=अनंत)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "गहराई" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" -msgstr "डेल्टा पीढ़ी: %s (%.10s)\n" +msgstr "डेल्टा उत्पन्न किया जा रहा है: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" -msgstr "डेल्टा पीढ़ी: %s (%.10s-%.10s)\n" +msgstr "डेल्टा उत्पन्न किया जा रहा है: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " -msgstr "डेल्टा उत्पन्न करने में विफल %s (%.10s): " +msgstr "डेल्टा %s (%.10s) उत्पन्न करने में विफल: " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " -msgstr "डेल्टा उत्पन्न करने में विफल %s (%.10s-%.10s): " +msgstr "डेल्टा %s (%.10s-%.10s) उत्पन्न करने में विफल: " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" -msgstr "स्थान - अद्यतन भंडार मेटाडेटा" +msgstr "स्थान - रिपॉजिटरी मेटाडेटा अद्यतन करें" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" -msgstr "अपस्ट्रीम शाखा को अपडेट करना\n" +msgstr "ऐपस्ट्रीम शाखा को अद्यतन किया जा रहा है\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" -msgstr "सारांश अपडेट कर रहा है\n" +msgstr "सारांश अद्यतन किया जा रहा है\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "कुल वस्तुएं: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" -msgstr "कोई अगम्य वस्तु नहीं\n" +msgstr "कोई पहुंच योग्य वस्तु नहीं\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" -msgstr "हटाए गए %u वस्तुएं, %s मुक्त किए गए\n" +msgstr "%u वस्तुएं हटाये गये, %s मुक्त किये गये\n" #: app/flatpak-builtins-config.c:41 msgid "List configuration keys and values" -msgstr "कॉन्फ़िगरेशन कुंजियों और मूल्यों की सूची बनाएं" +msgstr "विन्यास कुंजियां और मान सूचीबद्ध करें" #: app/flatpak-builtins-config.c:42 msgid "Get configuration for KEY" -msgstr "कुंजी के लिए कॉन्फ़िगरेशन प्राप्त करें" +msgstr "कुंजी के लिए विन्यास प्राप्त करें" #: app/flatpak-builtins-config.c:43 msgid "Set configuration for KEY to VALUE" -msgstr "के लिए कुंजी विन्यास सेट करें VALUE" +msgstr "कुंजी के लिए विन्यास को मान पर निर्धारित करें" #: app/flatpak-builtins-config.c:44 msgid "Unset configuration for KEY" -msgstr "कुंजी के लिए कोई कॉन्फ़िगरेशन से नहीं" +msgstr "कुंजी के लिए विन्यास अनिर्धारित करें" #: app/flatpak-builtins-config.c:149 #, c-format msgid "'%s' does not look like a language/locale code" -msgstr "'%s' भाषा/लोकेल कोड की तरह नहीं दिखता है" +msgstr "'%s' भाषा/लोकेल कोड जैसा नहीं दिखता" #: app/flatpak-builtins-config.c:172 #, c-format msgid "'%s' does not look like a language code" -msgstr "'%s' भाषा कोड की तरह नहीं दिखता है" +msgstr "'%s' भाषा कोड जैसा नहीं दिखता" #: app/flatpak-builtins-config.c:226 #, c-format msgid "Unknown configure key '%s'" -msgstr "अज्ञात कॉन्फ़िगर कुंजी '%s'" +msgstr "अज्ञात विन्यास कुंजी '%s'" #: app/flatpak-builtins-config.c:248 msgid "Too many arguments for --list" -msgstr "के लिए बहुत सारे तर्क --list" +msgstr "--list के लिए बहुत सारे तर्क" #: app/flatpak-builtins-config.c:278 app/flatpak-builtins-config.c:326 msgid "You must specify KEY" @@ -1116,151 +1127,153 @@ msgstr "आपको कुंजी निर्दिष्ट करनी #: app/flatpak-builtins-config.c:280 msgid "Too many arguments for --get" -msgstr "के लिए बहुत सारे तर्क --get" +msgstr "--get के लिए बहुत सारे तर्क" #: app/flatpak-builtins-config.c:302 msgid "You must specify KEY and VALUE" -msgstr "आपको कुंजी और मूल्य निर्दिष्ट करना होगा" +msgstr "आपको कुंजी और मान निर्दिष्ट करना होगा" #: app/flatpak-builtins-config.c:304 msgid "Too many arguments for --set" -msgstr "के लिए बहुत सारे तर्क --set" +msgstr "--set के लिए बहुत सारे तर्क" #: app/flatpak-builtins-config.c:328 msgid "Too many arguments for --unset" -msgstr "के लिए बहुत सारे तर्क --unset" +msgstr "--unset के लिए बहुत सारे तर्क" #: app/flatpak-builtins-config.c:347 msgid "[KEY [VALUE]] - Manage configuration" -msgstr "[KEY [VALUE]] - कॉन्फ़िगरेशन प्रबंधित करें" +msgstr "[कुंजी [मान]] - विन्यास प्रबंधित करें" #: app/flatpak-builtins-config.c:358 msgid "Can only use one of --list, --get, --set or --unset" -msgstr "में से केवल एक का उपयोग किया जा सकता है --list, --get, --set या --unset" +msgstr "केवल --list, --get, --set या --unset में से किसी एक का प्रयोग कर सकते हैं" #: app/flatpak-builtins-config.c:372 msgid "Must specify one of --list, --get, --set or --unset" -msgstr "विकल्पों में से एक बनाना होगा --list, --get, --set या --unset" +msgstr "--list, --get, --set या --unset में से एक निर्दिष्ट करना होगा" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" -msgstr "निर्दिष्ट नाम के साथ एक आवेदन खोजें" +msgstr "निर्दिष्ट नाम वाला ऐप खोजें" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "कॉपी करने के लिए आर्किटेक्चर" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" -msgstr "DEST" +msgstr "गंतव्य" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" -msgstr "बनाए गए रेपो पर आंशिक कमिट्स की अनुमति दें" +msgstr "निर्मित रेपो में आंशिक कमिट की अनुमति दें" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " "suppress this message.\n" msgstr "" -"चेतावनी: लिंक किया गया लिंक ‘%s’ आंशिक रूप से स्थापित है। इस संदेश को दबाने के लिए, --" -"Allow-Partial का उपयोग करें।\n" +"चेतावनी: संबंधित संदर्भ ‘%s’ आंशिक रूप से स्थापित है। इस संदेश को दबाने के लिए --allow-" +"partial का प्रयोग करें।\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" -msgstr "चेतावनी: संबंधित रेफरी की ओर से ‘%s’ क्योंकि यह स्थापित नहीं है।\n" +msgstr "चेतावनी: संबंधित संदर्भ ‘%s’ को छोड़ दिया गया है क्योंकि यह स्थापित नहीं है।\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " "collection ID set.\n" msgstr "" -"चेतावनी: संबंधित रेफरी की ओर से ‘%s’ क्योंकि इसका रिमोट है ‘%s’ एक संग्रह आईडी सेट नहीं " -"है।\n" +"चेतावनी: संबंधित संदर्भ ‘%s’ को छोड़ा जा रहा है क्योंकि इसके रिमोट ‘%s’ में संग्रह ID " +"निर्धारित नहीं है।\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" -msgstr "चेतावनी: संबंधित रेफरी '%s' को छोड़ना क्योंकि यह अतिरिक्त डेटा है।\n" +msgstr "चेतावनी: संबंधित संदर्भ ‘%s’ को छोड़ दिया गया है क्योंकि यह अतिरिक्त डेटा है।\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " "distribution of ‘%s’." -msgstr "रिमोट ‘%s’ का संग्रह ID सेट नहीं है, जो कि P2P वितरण के लिए आवश्यक है ‘%s’." +msgstr "" +"रिमोट ‘%s’ में संग्रह ID निर्धारित नहीं है, जो ‘%s’ के P2P वितरण के लिए आवश्यक है।" -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" -msgstr "चेतावनी: रेफरी '%s' ('%s' का रनटाइम) को छोड़ना क्योंकि यह अतिरिक्त डेटा है।\n" +msgstr "" +"चेतावनी: संदर्भ ‘%s’ (‘%s’ का रनटाइम) को छोड़ा जा रहा है क्योंकि यह अतिरिक्त डेटा है।\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" -msgstr "" -"माउंट-पैच [रेफ…] - हटाने योग्य मीडिया पर एप्लिकेशन या रनटाइम्स की प्रतिलिपि बनाएँ" +msgstr "माउंट-पथ [संदर्भ…] - ऐप्स या रनटाइम को हटाने योग्य मीडिया पर कॉपी करें" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" -msgstr "माउंट-पैच और रेफ को निर्दिष्ट किया जाना चाहिए" +msgstr "माउंट-पाथ और संदर्भ निर्दिष्ट किया जाना चाहिए" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." -msgstr "रेफरी ‘%s’ कई प्रतिष्ठानों में पाया गया: %s. आपको एक निर्दिष्ट करना होगा।" +msgstr "संदर्भ ‘%s’ कई स्थापनाओं में पाया गया: %s। आपको एक निर्दिष्ट करना होगा।" -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." -msgstr "सभी को एक ही इंस्टालेशन में पाया जाना चाहिए %s तथा %s)." +msgstr "सभी संदर्भ एक ही स्थापना में होने चाहिए (%s और %s में पाए जाते हैं)।" -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " "this message.\n" msgstr "" -"चेतावनी: संदर्भ '%s' आंशिक रूप से संस्थापित है। इस संदेश को दबाने के लिए --allow-partial " +"चेतावनी: संदर्भ ‘%s’ आंशिक रूप से स्थापित है। इस संदेश को दबाने के लिए --allow-partial " "का प्रयोग करें।\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" -msgstr "स्थापित रेफरी '%s' अतिरिक्त डेटा है, और ऑफ़लाइन वितरित नहीं किया जा सकता" +msgstr "स्थापित रेफरी ‘%s’ अतिरिक्त डेटा है, और इसे ऑफ़लाइन वितरित नहीं किया जा सकता है" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" -msgstr "चेतावनी: दूरस्थ के लिए रेपो मेटाडेटा अद्यतन नहीं कर सका ‘%s’: %s\n" +msgstr "चेतावनी: रिमोट ‘%s’ के लिए रेपो मेटाडेटा अद्यतन नहीं किया जा सका: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" -"चेतावनी: रिमोट के लिए अपस्ट्रीम डेटा को अपडेट नहीं किया जा सका ‘%s’ वास्तुकला ‘%s’: " +"चेतावनी: रिमोट ‘%s’ आर्किटेक्चर ‘%s’ के लिए ऐपस्ट्रीम डेटा अद्यतित नहीं किया जा सका: " "%s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" -msgstr "चेतावनी: दूरस्थ के लिए स्रोत डेटा नहीं मिल सका ‘%s’ वास्तुकला ‘%s’: %s; %s\n" +msgstr "" +"चेतावनी: रिमोट ‘%s’ आर्किटेक्चर ‘%s’ के लिए ऐपस्ट्रीम डेटा नहीं मिल सका: %s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" -msgstr "रिमोट के लिए appstream2 डेटा नहीं मिल सका ‘%s’ वास्तुकला ‘%s’: %s\n" +msgstr "रिमोट ‘%s’ आर्किटेक्चर ‘%s’ के लिए ऐपस्ट्रीम2 डेटा नहीं मिल सका: %s\n" #: app/flatpak-builtins-document-export.c:62 msgid "Create a unique document reference" -msgstr "एक अद्वितीय दस्तावेज़ संदर्भ बनाएँ" +msgstr "एक अद्वितीय दस्तावेज़ संदर्भ बनाएं" #: app/flatpak-builtins-document-export.c:63 msgid "Make the document transient for the current session" @@ -1268,39 +1281,39 @@ msgstr "वर्तमान सत्र के लिए दस्ताव #: app/flatpak-builtins-document-export.c:64 msgid "Don't require the file to exist already" -msgstr "फ़ाइल को पहले से मौजूद होने की आवश्यकता नहीं है" +msgstr "फाइल का पहले से मौजूद होना ज़रूरी नहीं है" #: app/flatpak-builtins-document-export.c:65 msgid "Give the app read permissions" -msgstr "एप्लिकेशन को पढ़ अनुमति प्रदान करें" +msgstr "ऐप को पढ़ने की अनुमति दें" #: app/flatpak-builtins-document-export.c:66 msgid "Give the app write permissions" -msgstr "एप्लिकेशन को रिकॉर्ड करने दें" +msgstr "ऐप को लिखने की अनुमति दें" #: app/flatpak-builtins-document-export.c:67 msgid "Give the app delete permissions" -msgstr "एप्लिकेशन को हटाने में सक्षम हो जाएगा। इसके लिए अनुमति दें" +msgstr "ऐप को मिटाने की अनुमति दें" #: app/flatpak-builtins-document-export.c:68 msgid "Give the app permissions to grant further permissions" -msgstr "एप्लिकेशन को अतिरिक्त अनुमतियों तक पहुंचने की अनुमति दें" +msgstr "आगे की अनुमति देने के लिए ऐप को अनुमति दें" #: app/flatpak-builtins-document-export.c:69 msgid "Revoke read permissions of the app" -msgstr "एप्लिकेशन के लिए पढ़ने की अनुमति रद्द करें" +msgstr "ऐप की पढ़ने की अनुमति रद्द करें" #: app/flatpak-builtins-document-export.c:70 msgid "Revoke write permissions of the app" -msgstr "एक आवेदन के लिए राइट राइट अनुमति रद्द करें" +msgstr "ऐप की लिखने की अनुमति रद्द करें" #: app/flatpak-builtins-document-export.c:71 msgid "Revoke delete permissions of the app" -msgstr "किसी ऐप को अनइंस्टॉल करने की अनुमति रद्द करें" +msgstr "ऐप की मिटाने की अनुमतियां रद्द करें" #: app/flatpak-builtins-document-export.c:72 msgid "Revoke the permission to grant further permissions" -msgstr "अतिरिक्त अनुमति देने की अनुमति वापस ले लें" +msgstr "आगे की अनुमति देने के लिए अनुमति रद्द करें" #: app/flatpak-builtins-document-export.c:73 msgid "Add permissions for this app" @@ -1308,44 +1321,45 @@ msgstr "इस ऐप के लिए अनुमतियां जोड़ #: app/flatpak-builtins-document-export.c:73 msgid "APPID" -msgstr "एपीपीआईडी" +msgstr "APPID" #: app/flatpak-builtins-document-export.c:100 msgid "FILE - Export a file to apps" -msgstr "फ़ाइल - क्षुधा करने के लिए एक फ़ाइल निर्यात" +msgstr "फाइल - ऐप्स पर फाइल निर्यात करें" #: app/flatpak-builtins-document-export.c:109 #: app/flatpak-builtins-document-info.c:72 #: app/flatpak-builtins-document-unexport.c:67 msgid "FILE must be specified" -msgstr "फ़ाइल निर्दिष्ट होनी चाहिए" +msgstr "फाइल निर्दिष्ट होनी चाहिए" #: app/flatpak-builtins-document-info.c:63 msgid "FILE - Get information about an exported file" -msgstr "फ़ाइल - एक निर्यात की गई फ़ाइल के बारे में जानकारी प्राप्त करें" +msgstr "फाइल - निर्यात की गई फाइल के बारे में जानकारी प्राप्त करें" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" -msgstr "निर्यात नहीं किया गया\n" +msgstr "निर्यात नहीं हुआ\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" -msgstr "क्या जानकारी दिखाना है" +msgstr "क्या जानकारी दिखानी है" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" -msgstr "खेत,…" +msgstr "क्षेत्र,…" #: app/flatpak-builtins-document-list.c:47 msgid "Show the document ID" -msgstr "दस्तावेज़ आईडी दिखाएं" +msgstr "दस्तावेज़ ID दिखाएं" #: app/flatpak-builtins-document-list.c:48 msgid "Path" @@ -1357,115 +1371,115 @@ msgid "Show the document path" msgstr "दस्तावेज़ पथ दिखाएं" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "मूल" #: app/flatpak-builtins-document-list.c:50 app/flatpak-builtins-history.c:60 #: app/flatpak-builtins-ps.c:50 msgid "Application" -msgstr "आवेदन" +msgstr "अनुप्रयोग" #: app/flatpak-builtins-document-list.c:50 msgid "Show applications with permission" -msgstr "अनुमति के साथ आवेदन दिखाएं" +msgstr "अनुमति के साथ अनुप्रयोग दिखाएं" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" -msgstr "अनुमतियाँ" +msgstr "अनुमतियां" #: app/flatpak-builtins-document-list.c:51 msgid "Show permissions for applications" -msgstr "आवेदनों के लिए अनुमति दिखाएं" +msgstr "अनुप्रयोगों के लिए अनुमतियां दिखाएं" #: app/flatpak-builtins-document-list.c:171 msgid "[APPID] - List exported files" -msgstr "[APPID] - निर्यात की गई फ़ाइलों की सूची" +msgstr "[APPID] - निर्यात की गई फाइलों की सूची" #: app/flatpak-builtins-document-unexport.c:43 -#, fuzzy msgid "Specify the document ID" -msgstr "दस्तावेज़ आईडी दिखाएं" +msgstr "दस्तावेज़ ID निर्दिष्ट करें" #: app/flatpak-builtins-document-unexport.c:58 msgid "FILE - Unexport a file to apps" -msgstr "अनुप्रयोगों के लिए फ़ाइलों का निर्यात रद्द करना" +msgstr "फाइल - किसी फाइल को ऐप्स पर अनएक्सपोर्ट करें" #: app/flatpak-builtins-enter.c:88 msgid "INSTANCE COMMAND [ARGUMENT…] - Run a command inside a running sandbox" -msgstr "इंस्टेंस कमांड [तर्क ...] - रनिंग सैंडबॉक्स में एक कमांड चलाता है।" +msgstr "इंस्टैंस कमांड [तर्क…] - चल रहे सैंडबॉक्स के अंदर एक कमांड चलाएं" #: app/flatpak-builtins-enter.c:111 msgid "INSTANCE and COMMAND must be specified" -msgstr "INSTANCE और COMMAND को निर्दिष्ट करना होगा" +msgstr "इंस्टैंस और कमांड निर्दिष्ट होना चाहिए" #: app/flatpak-builtins-enter.c:138 #, c-format msgid "%s is neither a pid nor an application or instance ID" -msgstr "%s न तो एक पीआईडी है और न ही एक आवेदन या उदाहरण आईडी है" +msgstr "%s न तो कोई PID है और न ही कोई अनुप्रयोग या इंस्टैंस ID है" #: app/flatpak-builtins-enter.c:144 msgid "entering not supported (need unprivileged user namespaces, or sudo -E)" -msgstr "इनपुट समर्थित नहीं है" +msgstr "" +"प्रवेश समर्थित नहीं है (विशेषाधिकार प्राप्त उपयोक्ता नामस्थान या sudo -E की आवश्यकता है)" #: app/flatpak-builtins-enter.c:145 #, c-format msgid "No such pid %s" -msgstr "ऐसा कोई pid नहीं %s" +msgstr "ऐसा कोई pid %s नहीं" #: app/flatpak-builtins-enter.c:158 msgid "Can't read cwd" -msgstr "cwd नहीं पढ़ सकते" +msgstr "cwd नहीं पढ़ सके" #: app/flatpak-builtins-enter.c:163 msgid "Can't read root" -msgstr "root नहीं पढ़ सकता" +msgstr "रूट नहीं पढ़ सके" #: app/flatpak-builtins-enter.c:191 #, c-format msgid "Invalid %s namespace for pid %d" -msgstr "अमान्य %s pid के लिए नाम स्थान %d" +msgstr "pid %2$d के लिए अमान्य %1$s नामस्थान" #: app/flatpak-builtins-enter.c:202 #, c-format msgid "Invalid %s namespace for self" -msgstr "अमान्य %s अपने लिए नाम स्थान" +msgstr "स्वयं के लिए अमान्य %s नामस्थान" #: app/flatpak-builtins-enter.c:216 #, c-format msgid "Can't open %s namespace: %s" -msgstr "खोल नहीं सकता %s नेमस्पेस %s" +msgstr "%s नामस्थान नहीं खोल सके: %s" #: app/flatpak-builtins-enter.c:226 msgid "entering not supported (need unprivileged user namespaces)" -msgstr "प्रवेश नहीं किया गया (बिना नाम वाले उपयोगकर्ता नामस्थान की आवश्यकता है)" +msgstr "प्रवेश समर्थित नहीं है (अविशेषाधिकार प्राप्त उपयोक्ता नामस्थान की आवश्यकता है)" #: app/flatpak-builtins-enter.c:227 #, c-format msgid "Can't enter %s namespace: %s" -msgstr "दर्ज नहीं कर सकते %s नेमस्पेस: %s" +msgstr "%s नामस्थान दर्ज नहीं कर सकते: %s" #: app/flatpak-builtins-enter.c:234 msgid "Can't chdir" -msgstr "Chdir नहीं कर सकता" +msgstr "chdir नहीं कर सकते" #: app/flatpak-builtins-enter.c:237 msgid "Can't chroot" -msgstr "chroot नहीं सकते" +msgstr "chroot नहीं कर सकते" #: app/flatpak-builtins-enter.c:240 msgid "Can't switch gid" -msgstr "gid स्विच नहीं कर सकते" +msgstr "GID नहीं बदल सकते" #: app/flatpak-builtins-enter.c:243 msgid "Can't switch uid" -msgstr "uid स्विच नहीं कर सकते" +msgstr "UID नहीं बदल सकते" #: app/flatpak-builtins-history.c:49 msgid "Only show changes after TIME" -msgstr "समय के बाद ही बदलाव दिखा" +msgstr "परिवर्तन केवल समय के बाद दिखाएं" #: app/flatpak-builtins-history.c:49 app/flatpak-builtins-history.c:50 msgid "TIME" @@ -1473,11 +1487,11 @@ msgstr "समय" #: app/flatpak-builtins-history.c:50 msgid "Only show changes before TIME" -msgstr "केवल समय से पहले परिवर्तन दिखाते हैं" +msgstr "केवल समय से पहले परिवर्तन दिखाएं" #: app/flatpak-builtins-history.c:51 msgid "Show newest entries first" -msgstr "पहले नई प्रविष्टियाँ दिखाएँ" +msgstr "नवीनतम प्रविष्टियां पहले दिखाएं" #: app/flatpak-builtins-history.c:57 msgid "Time" @@ -1485,51 +1499,51 @@ msgstr "समय" #: app/flatpak-builtins-history.c:57 msgid "Show when the change happened" -msgstr "जब बदलाव हुआ तब दिखाएं" +msgstr "दिखाएं कि परिवर्तन कब हुआ" #: app/flatpak-builtins-history.c:58 msgid "Change" -msgstr "संपादित करें" +msgstr "बदलें" #: app/flatpak-builtins-history.c:58 msgid "Show the kind of change" -msgstr "जिस तरह का बदलाव दिखा" +msgstr "परिवर्तन किस प्रकार का है यह दिखाइये" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" -msgstr "लिंक" +msgstr "संदर्भ" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" -msgstr "लिंक दिखाओ" +msgstr "संदर्भ दिखाएं" #: app/flatpak-builtins-history.c:60 msgid "Show the application/runtime ID" -msgstr "एप्लिकेशन / रनटाइम आईडी दिखाएं" +msgstr "अनुप्रयोग/रनटाइम ID दिखाएं" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" -msgstr "वास्तुकला" +msgstr "आर्किटेक्चर" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" -msgstr "वास्तुकला दिखाएं" +msgstr "आर्किटेक्चर दिखाएं" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" -msgstr "डाली" +msgstr "शाखा" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" -msgstr "शाखा दिखाओ" +msgstr "शाखा दिखाएं" #: app/flatpak-builtins-history.c:63 app/flatpak-builtins-list.c:65 msgid "Installation" @@ -1539,64 +1553,64 @@ msgstr "स्थापना" msgid "Show the affected installation" msgstr "प्रभावित स्थापना दिखाएं" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "रिमोट" #: app/flatpak-builtins-history.c:64 msgid "Show the remote" -msgstr "निकालें दिखाओ" +msgstr "रिमोट दिखाएं" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" -msgstr "निर्धारण" +msgstr "कमिट" #: app/flatpak-builtins-history.c:65 msgid "Show the current commit" -msgstr "वर्तमान कमिटमेंट दिखाएं" +msgstr "वर्तमान कमिट दिखाएं" #: app/flatpak-builtins-history.c:66 msgid "Old Commit" -msgstr "पुरानी कमिट" +msgstr "पुराने कमिट" #: app/flatpak-builtins-history.c:66 msgid "Show the previous commit" -msgstr "दिखाएँ पिछले प्रतिबद्ध" +msgstr "पिछले कमिट दिखाएं" #: app/flatpak-builtins-history.c:67 msgid "Show the remote URL" -msgstr "दूरस्थ URL दिखाएं" +msgstr "रिमोट URl दिखाएं" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" -msgstr "उपयोगकर्ता" +msgstr "उपयोक्ता" #: app/flatpak-builtins-history.c:68 msgid "Show the user doing the change" -msgstr "उपयोगकर्ता बदलाव देखें" +msgstr "उपयोक्ता को परिवर्तन करते हुए दिखाएं" #: app/flatpak-builtins-history.c:69 msgid "Tool" -msgstr "उपकरण" +msgstr "टूल" #: app/flatpak-builtins-history.c:69 msgid "Show the tool that was used" -msgstr "प्रयुक्त उपकरण दिखाएं" +msgstr "वह उपकरण दिखाएं जिसका प्रयोग किया गया था" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "संस्करण" #: app/flatpak-builtins-history.c:70 msgid "Show the Flatpak version" -msgstr "flatpak संस्करण दिखाएं" +msgstr "फ़्लैटपैक संस्करण दिखाएं" #: app/flatpak-builtins-history.c:89 #, c-format msgid "Failed to get journal data (%s): %s" -msgstr "जर्नल डेटा प्राप्त करने में विफल (%s): %s" +msgstr "Failed to get journal data (%s): %s" #: app/flatpak-builtins-history.c:144 #, c-format @@ -1606,59 +1620,61 @@ msgstr "जर्नल खोलने में विफल: %s" #: app/flatpak-builtins-history.c:151 #, c-format msgid "Failed to add match to journal: %s" -msgstr "पत्रिका में मेल जोड़ने में विफल: %s" +msgstr "जर्नल में मिलान जोड़ने में विफल: %s" #: app/flatpak-builtins-history.c:469 msgid " - Show history" msgstr " - इतिहास दिखाएं" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" -msgstr "--since options पार्स करने में विफल" +msgstr "--since विकल्प का विश्लेषण करने में विफल" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" -msgstr "--until विकल्प को पार्स करने में विफल" +msgstr "--until विकल्प का विश्लेषण करने में विफल" #: app/flatpak-builtins-info.c:56 msgid "Show user installations" -msgstr "उपयोगकर्ता स्थापना दिखाएं" +msgstr "उपयोक्ता स्थापनाएं दिखाएं" #: app/flatpak-builtins-info.c:57 msgid "Show system-wide installations" -msgstr "सिस्टम-वाइड इंस्टॉलेशन दिखाएं" +msgstr "सिस्टम-व्यापी स्थापनाएं दिखाएं" #: app/flatpak-builtins-info.c:58 msgid "Show specific system-wide installations" -msgstr "विशिष्ट सिस्टम-वाइड इंस्टॉलेशन दिखाएं" +msgstr "विशिष्ट सिस्टम-व्यापी संस्थापन दिखाएं" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" -msgstr "रेफरी दिखाओ" +msgstr "संदर्भ दिखाएं" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" -msgstr "कमिट शो है" +msgstr "कमिट दिखाएं" #: app/flatpak-builtins-info.c:61 msgid "Show origin" -msgstr "मूल दिखाएँ" +msgstr "मूल दिखाएं" #: app/flatpak-builtins-info.c:62 msgid "Show size" -msgstr "आकार दिखाओ" +msgstr "आकार दिखाएं" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "मेटाडेटा दिखाएं" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "रनटाइम दिखाएं" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" -msgstr "एसडीके दिखाओ" +msgstr "SDK दिखाएं" #: app/flatpak-builtins-info.c:66 msgid "Show permissions" @@ -1666,10 +1682,10 @@ msgstr "अनुमतियां दिखाएं" #: app/flatpak-builtins-info.c:67 msgid "Query file access" -msgstr "क्वेरी फ़ाइल एक्सेस" +msgstr "फाइल पहुंच क्वेरी करें" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1685,283 +1701,286 @@ msgstr "स्थान दिखाएं" #: app/flatpak-builtins-info.c:116 msgid "NAME [BRANCH] - Get info about an installed app or runtime" -msgstr "नाम [शाखा] - एक स्थापित एप्लिकेशन या रनटाइम के बारे में जानकारी प्राप्त करें" +msgstr "नाम [शाखा] - स्थापित ऐप या रनटाइम के बारे में जानकारी प्राप्त करें" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" -msgstr "नाम निर्दिष्ट किया जाना चाहिए" +msgstr "नाम निर्दिष्ट होना चाहिए" #: app/flatpak-builtins-info.c:196 msgid "ref not present in origin" -msgstr "मूल में लिंक गायब है" +msgstr "संदर्भ मूल में मौजूद नहीं है" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" -msgstr "चेतावनी: कमिट में कोई फ्लैटपैक मेटाडेटा नहीं है\n" +msgstr "चेतावनी: कमिट के पास कोई फ़्लैटपैक मेटाडेटा नहीं है\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" -msgstr "आईडी:" +msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" -msgstr "रेफरी:" +msgstr "संदर्भ:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" -msgstr "वास्तुकला" +msgstr "आर्किटेक्चर:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" -msgstr "डाली:" +msgstr "शाखा:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "संस्करण:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "लाइसेंस:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "संग्रह:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "स्थापना:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" -msgstr "सफलतापूर्वक स्थापित किया गया:" +msgstr "स्थापित:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "रनटाइम:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" -msgstr "Sdk:" +msgstr "SDK:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" -msgstr "दिनांक:" +msgstr "तारीख:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "विषय:" #: app/flatpak-builtins-info.c:240 app/flatpak-builtins-info.c:295 msgid "Active commit:" -msgstr "सक्रिय प्रतिबद्ध:" +msgstr "सक्रिय कमिट:" #: app/flatpak-builtins-info.c:241 app/flatpak-builtins-info.c:298 msgid "Latest commit:" -msgstr "नवीनतम कमिट श:" +msgstr "नवीनतम कमिट:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" -msgstr "कमिट श:" +msgstr "कमिट:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" -msgstr "जनक:" +msgstr "प्रधान:" #: app/flatpak-builtins-info.c:248 app/flatpak-builtins-info.c:321 msgid "Alt-id:" -msgstr "वैकल्पिक पहचानकर्ता:" +msgstr "वैकल्पिक-ID:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" -msgstr "जीवन का अंत:" +msgstr "जीवन-समाप्ति:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" -msgstr "अंत के जीवन रिबेस:" +msgstr "जीवन-समाप्ति-पुनःआधार:" #: app/flatpak-builtins-info.c:254 app/flatpak-builtins-info.c:317 msgid "Subdirectories:" -msgstr "उपनिर्देशिकाएँ:" +msgstr "उप-निर्देशिकाएं:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "एक्सटेंशन:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "मूल:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" -msgstr "विषय पथ:" +msgstr "उपपथ:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" -msgstr "संयुक्त राष्ट्र बनाए रखा" +msgstr "अनुरक्षणहीन" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" -msgstr "अनजान" +msgstr "अज्ञात" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" -msgstr "पुल न करें, केवल स्थानीय कैश से इंस्टॉल करें" +msgstr "खींचें नहीं, केवल स्थानीय कैशे से स्थापित करें" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" -msgstr "तैनात न करें, केवल स्थानीय कैश में डाउनलोड करें" +msgstr "परिनियोजन न करें, केवल स्थानीय कैशे में डाउनलोड करें" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" -msgstr "लिंक किए गए लिंक स्थापित मत" +msgstr "संबंधित संदर्भ स्थापित न करें" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" -msgstr "रनटाइम निर्भरता की जांच / स्थापित न करें" +msgstr "रनटाइम निर्भरताओं को सत्यापित/स्थापित न करें" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" -msgstr "स्वचालित रूप से स्पष्ट इंस्टॉल पिन न करें" +msgstr "स्पष्ट स्थापना को स्वचालित रूप से पिन न करें" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" -msgstr "स्थिर डेल्टा का उपयोग न करें" +msgstr "स्थैतिक डेल्टा का प्रयोग न करें" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" -msgstr "" +msgstr "इसके अतिरिक्त दिए गए संदर्भ को बनाने के लिए प्रयोग किए गए SDK को स्थापित करें" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" -msgstr "" +msgstr "इसके अतिरिक्त दिए गए संदर्भ और उनकी निर्भरता के लिए डिबग जानकारी स्थापित करें" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" -msgstr "मान लें कि एक .flatpak एकल-फ़ाइल बंडल है" +msgstr "मान लें कि स्थान एक .flatpak एकल-फाइल बंडल है" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" -msgstr "मान लें कि एक .flatpakref एप्लिकेशन विवरण है" +msgstr "मान लें कि स्थान एक .flatpakref अनुप्रयोग विवरण है" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" -msgstr "फ़ाइल से GPG कुंजी के साथ बंडल हस्ताक्षर जांचें (- स्टडिन के लिए)" +msgstr "फाइल से GPG कुंजी के साथ बंडल हस्ताक्षर जांचें (- stdin के लिए)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" -msgstr "केवल इस सब-पाथ स्थापित करें" +msgstr "केवल यह उपपथ स्थापित करें" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" -msgstr "सभी प्रश्नों के लिए स्वचालित रूप से उत्तर हां" +msgstr "सभी प्रश्नों के लिए स्वचालित रूप से हाँ में उत्तर दें" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" -msgstr "पहले से स्थापित होने पर पहले अनइंस्टॉल करें" +msgstr "यदि पहले से स्थापित है तो पहले अस्थापित करें" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" -msgstr "न्यूनतम उत्पादन करें और सवाल न पूछें" +msgstr "न्यूनतम आउटपुट दें और प्रश्न न पूछें" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" -msgstr "अगर पहले से इंस्टॉल है तो अपडेट इंस्टॉल करें" +msgstr "यदि पहले से स्थापित है तो स्थापना को अद्यतन करें" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" -msgstr "साइडलोड के लिए इस स्थानीय रेपो का उपयोग करें" +msgstr "साइडलोड के लिए इस स्थानीय रेपो का प्रयोग करें" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" -msgstr "बंडल फ़ाइल नाम निर्दिष्ट किया जाना चाहिए" +msgstr "बंडल फाइल नाम निर्दिष्ट होना चाहिए" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" -msgstr "दूरस्थ बंडलों का समर्थन नहीं किया जाता है" +msgstr "रिमोट बंडल समर्थित नहीं हैं" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" -msgstr "फ़ाइलनाम या uri निर्दिष्ट किया जाना चाहिए" +msgstr "फाइलनाम या URI निर्दिष्ट किया जाना चाहिए" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" -msgstr "[स्थान/रिमोट] [आरईएफ…] - एप्लिकेशन या रनटाइम इंस्टॉल करें" +msgstr "[स्थान/रिमोट] [संदर्भ…] - अनुप्रयोग या रनटाइम स्थापित करें" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" -msgstr "कम से कम एक आरईएफ निर्दिष्ट किया जाना चाहिए" +msgstr "कम से कम एक संदर्भ निर्दिष्ट होना चाहिए" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" -msgstr "मैचों की तलाश...\n" +msgstr "मिलान खोज रहे हैं…\n" -#: app/flatpak-builtins-install.c:456 -#, fuzzy, c-format +#: app/flatpak-builtins-install.c:457 +#, c-format msgid "No remote refs found for ‘%s’" -msgstr "कोई दूरस्थ रेफरी के समान नहीं मिला ‘%s’" +msgstr "‘%s’ के लिए कोई रिमोट संदर्भ नहीं मिला" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "अमान्य शाखा %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" -msgstr "कुछ भी मेल नहीं खाता %s रिमोट के लिए स्थानीय भंडार में %s" +msgstr "रिमोट %2$s के लिए स्थानीय रिपॉजिटरी में %1$s से कुछ भी मेल नहीं खाता" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" -msgstr "कुछ भी मेल नहीं खाता %s रिमोट में %s" +msgstr "रिमोट %2$s में %1$s से कुछ भी मेल नहीं खाता" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" -msgstr "लंघन: %s\n" +msgstr "छोड़ा जा रहा है: %s\n" #: app/flatpak-builtins-kill.c:68 #, c-format @@ -1970,7 +1989,7 @@ msgstr "%s नहीं चल रहा है" #: app/flatpak-builtins-kill.c:82 msgid "INSTANCE - Stop a running application" -msgstr "इंस्टेंस - एक चल रहे एप्लिकेशन को रोकें" +msgstr "इंस्टैंस - किसी चालू अनुप्रयोग को रोकें" #: app/flatpak-builtins-kill.c:90 app/flatpak-builtins-ps.c:254 msgid "Extra arguments given" @@ -1978,7 +1997,7 @@ msgstr "अतिरिक्त तर्क दिए गए" #: app/flatpak-builtins-kill.c:96 msgid "Must specify the app to kill" -msgstr "मारने के लिए एप्लिकेशन निर्दिष्ट करना चाहिए" +msgstr "खत्म हेतु ऐप निर्दिष्ट करना होगा" #: app/flatpak-builtins-list.c:46 msgid "Show extra information" @@ -1986,61 +2005,61 @@ msgstr "अतिरिक्त जानकारी दिखाएं" #: app/flatpak-builtins-list.c:47 msgid "List installed runtimes" -msgstr "सूची स्थापित रनटाइम्स" +msgstr "स्थापित रनटाइम की सूची बनाएं" #: app/flatpak-builtins-list.c:48 msgid "List installed applications" -msgstr "स्थापित अनुप्रयोगों की सूची दें" +msgstr "स्थापित अनुप्रयोगों की सूची बनाएं" #: app/flatpak-builtins-list.c:49 msgid "Arch to show" -msgstr "दिखाने के लिए वास्तुकला" +msgstr "दिखाने के लिए आर्किटेक्चर" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" -msgstr "(भाषा / डिबग सहित) सभी refs सूची" +msgstr "सभी संदर्भों की सूची बनाएं (लोकेल/डीबग सहित)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" -msgstr "रनटाइम का उपयोग करके सभी एप्लिकेशन को सूचीबद्ध करें" +msgstr "रनटाइम का प्रयोग करने वाले सभी अनुप्रयोग सूचीबद्ध करें" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "नाम" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" -msgstr "नाम दिखाओ" +msgstr "नाम दिखायें" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "विवरण" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "विवरण दिखाएं" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" -msgstr "आवेदन पहचान पत्र" +msgstr "अनुप्रयोग ID" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" -msgstr "एप्लिकेशन आईडी दिखाएं" +msgstr "अनुप्रयोग ID दिखाएं" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" -msgstr "वर्जन दिखाओ" +msgstr "संस्करण दिखाएं" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "रनटाइम" @@ -2048,9 +2067,9 @@ msgstr "रनटाइम" msgid "Show the used runtime" msgstr "प्रयुक्त रनटाइम दिखाएं" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" -msgstr "मूल दूरस्थ दिखाएं" +msgstr "मूल रिमोट दिखाएं" #: app/flatpak-builtins-list.c:65 msgid "Show the installation" @@ -2058,129 +2077,131 @@ msgstr "स्थापना दिखाएं" #: app/flatpak-builtins-list.c:67 msgid "Active commit" -msgstr "सक्रिय प्रतिबद्ध" +msgstr "सक्रिय कमिट" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" -msgstr "दिखाएँ सक्रिय प्रतिबद्ध" +msgstr "सक्रिय कमिट दिखाएं" #: app/flatpak-builtins-list.c:68 msgid "Latest commit" -msgstr "अंतिम फिक्सेशन" +msgstr "नवीनतम कमिट" #: app/flatpak-builtins-list.c:68 msgid "Show the latest commit" -msgstr "दिखाएँ नवीनतम प्रतिबद्ध" +msgstr "नवीनतम कमिट दिखाएं" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "स्थापित आकार" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "स्थापित आकार दिखाएं" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "विकल्प" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "विकल्प दिखाएं" -#: app/flatpak-builtins-list.c:179 -#, fuzzy, c-format +#: app/flatpak-builtins-list.c:178 +#, c-format msgid "Unable to load details of %s: %s" -msgstr "रिमोट से मेटाडेटा लोड करने में असमर्थ %s: %s" +msgstr "%s का विवरण लोड करने में असमर्थ: %s" -#: app/flatpak-builtins-list.c:189 +#: app/flatpak-builtins-list.c:188 #, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "%s के वर्तमान संस्करण का निरीक्षण करने में असमर्थ: %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" -msgstr " - इंस्टॉल किए गए ऐप्स और/या रनटाइम की सूची दें" +msgstr " - स्थापित ऐप्स और/या रनटाइम की सूची बनाएं" #: app/flatpak-builtins-make-current.c:38 msgid "Arch to make current for" -msgstr "पुरालेख के लिए वर्तमान बनाने के लिए" +msgstr "वर्तमान बनाने के लिए आर्किटेक्चर" #: app/flatpak-builtins-make-current.c:58 msgid "APP BRANCH - Make branch of application current" -msgstr "एपीपी शाखा - आवेदन की वर्तमान शाखा बनाओ" +msgstr "ऐप शाखा - आवेदन की शाखा को चालू बनाएं" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" -msgstr "एपीपी निर्दिष्ट किया जाना चाहिए" +msgstr "ऐप निर्दिष्ट होना चाहिए" #: app/flatpak-builtins-make-current.c:84 msgid "BRANCH must be specified" -msgstr "शाखा निर्दिष्ट किया जाना चाहिए" +msgstr "शाखा निर्दिष्ट होनी चाहिए" #: app/flatpak-builtins-make-current.c:97 #, c-format msgid "App %s branch %s is not installed" -msgstr "ऐप %s डाली %s स्थापित नहीं किया गया" +msgstr "ऐप %s शाखा %s स्थापित नहीं है" #: app/flatpak-builtins-mask.c:42 msgid "Remove matching masks" -msgstr "मिलान मास्क निकालें" +msgstr "मैचिंग मास्क हटाएं" #: app/flatpak-builtins-mask.c:54 msgid "" "[PATTERN…] - disable updates and automatic installation matching patterns" -msgstr "[पैटर्न…] - अद्यतन और स्वत: स्थापना से मेल खाते पैटर्न को अक्षम करें" +msgstr "[प्रतिमान…] - अद्यतन और स्वचालित स्थापना मिलान प्रतिमान अक्षम करें" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" -msgstr "कोई नकाबपोश पैटर्न नहीं\n" +msgstr "कोई मास्क प्रतिमान नहीं\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" -msgstr "नकाबपोश पैटर्न:\n" +msgstr "मास्क प्रतिमान:\n" #: app/flatpak-builtins-override.c:42 msgid "Remove existing overrides" -msgstr "मौजूदा ओवरराइड को हटा दें" +msgstr "मौजूदा अध्यारोहण हटाएं" #: app/flatpak-builtins-override.c:43 msgid "Show existing overrides" -msgstr "मौजूदा ओवरराइड दिखाओ" +msgstr "मौजूदा अध्यारोहण दिखाएं" #: app/flatpak-builtins-override.c:59 msgid "[APP] - Override settings [for application]" -msgstr "[एपीपी] - ओवरराइड सेटिंग्स [आवेदन के लिए]" +msgstr "[ऐप] - अध्यारोहण सेटिंग्स [अनुप्रयोग के लिए]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" -msgstr "[टेबल] [आईडी] - सूची अनुमतियाँ" +msgstr "[तालिका] [ID] - अनुमतियां सूचीबद्ध करें" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "तालिका" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "वस्तु" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "ऐप" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "डेटा" #: app/flatpak-builtins-permission-remove.c:120 msgid "TABLE ID [APP_ID] - Remove item from permission store" -msgstr "टेबल आईडी [APP_ID] - अनुमति स्टोर से आइटम निकालें" +msgstr "टेबल ID [ऐप_ID] - अनुमति स्टोर से वस्तु हटाएं" #: app/flatpak-builtins-permission-remove.c:129 #: app/flatpak-builtins-permission-set.c:120 @@ -2193,7 +2214,7 @@ msgstr "सभी अनुमतियां रीसेट करें" #: app/flatpak-builtins-permission-reset.c:137 msgid "APP_ID - Reset permissions for an app" -msgstr "APP_ID - किसी ऐप के लिए अनुमतियाँ रीसेट करें" +msgstr "ऐप_ID - ऐप के लिए अनुमतियां रीसेट करें" #: app/flatpak-builtins-permission-reset.c:146 #: app/flatpak-builtins-permission-show.c:121 @@ -2202,7 +2223,7 @@ msgstr "तर्कों की गलत संख्या" #: app/flatpak-builtins-permission-set.c:42 msgid "Associate DATA with the entry" -msgstr "एक रिकॉर्ड के साथ सहयोगी डेटा" +msgstr "प्रविष्टि के साथ डेटा संबद्ध करें" #: app/flatpak-builtins-permission-set.c:42 msgid "DATA" @@ -2210,40 +2231,42 @@ msgstr "डेटा" #: app/flatpak-builtins-permission-set.c:111 msgid "TABLE ID APP_ID [PERMISSION...] - Set permissions" -msgstr "TABLE ID APP_ID [PERMISSION...] - परमिशन सेट करें" +msgstr "तालिका ID ऐप_ID [अनुमति...] - अनुमतियां निर्धारित करें" #: app/flatpak-builtins-permission-set.c:132 #, c-format msgid "Failed to parse '%s' as GVariant: " -msgstr "पार्स करने में विफल '%s' GVariant के रूप में: " +msgstr "'%s' को GVariant के रूप में विश्लेषण करने में विफल: " #: app/flatpak-builtins-permission-show.c:112 msgid "APP_ID - Show permissions for an app" -msgstr "APP_ID - किसी ऐप के लिए अनुमतियां दिखाएं" +msgstr "ऐप_ID - किसी ऐप के लिए अनुमतियां दिखाएं" #: app/flatpak-builtins-pin.c:44 msgid "Remove matching pins" -msgstr "पिंस मिलान निकालें" +msgstr "मेल खाते पिन हटाएं" #: app/flatpak-builtins-pin.c:56 msgid "[PATTERN…] - disable automatic removal of runtimes matching patterns" -msgstr "[पैटर्न…] - runtimes मिलान पैटर्न के स्वचालित हटाने को अक्षम करें" +msgstr "[प्रतिमान…] - रनटाइम मिलान प्रतिमान का स्वचालित निष्कासन अक्षम करें" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" -msgstr "कोई पिन किए गए पैटर्न नहीं\n" +msgstr "कोई पिन किया गया प्रतिमान नहीं\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" -msgstr "पिन किए गए पैटर्न:\n" +msgstr "पिन किये गये प्रतिमान:\n" #: app/flatpak-builtins-ps.c:47 msgid "Instance" -msgstr "वृत्ति" +msgstr "इंस्टैंस" #: app/flatpak-builtins-ps.c:47 msgid "Show the instance ID" -msgstr "उदाहरण आईडी दिखाएं" +msgstr "इंस्टैंस ID दिखाएं" #: app/flatpak-builtins-ps.c:48 app/flatpak-builtins-run.c:86 msgid "PID" @@ -2251,31 +2274,31 @@ msgstr "PID" #: app/flatpak-builtins-ps.c:48 msgid "Show the PID of the wrapper process" -msgstr "आवरण प्रक्रिया की पीआईडी दिखाएं" +msgstr "रैपर प्रक्रिया की PID दिखाएं" #: app/flatpak-builtins-ps.c:49 msgid "Child-PID" -msgstr "बाल-पीआईडी" +msgstr "उप-PID" #: app/flatpak-builtins-ps.c:49 msgid "Show the PID of the sandbox process" -msgstr "सैंडबॉक्स प्रक्रिया का पीआईडी दिखाएं" +msgstr "सैंडबॉक्स प्रक्रिया की PID दिखाएं" #: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-search.c:46 msgid "Show the application branch" -msgstr "एप्लिकेशन ब्रांच दिखाएं" +msgstr "अनुप्रयोग शाखा दिखाएं" #: app/flatpak-builtins-ps.c:53 msgid "Show the application commit" -msgstr "आवेदन को कमिट करें" +msgstr "अनुप्रयोग कमिट दिखाएं" #: app/flatpak-builtins-ps.c:54 msgid "Show the runtime ID" -msgstr "रनटाइम आईडी दिखाएं" +msgstr "रनटाइम ID दिखाएं" #: app/flatpak-builtins-ps.c:55 msgid "R.-Branch" -msgstr "आर।-शाखा" +msgstr "R.-Branch" #: app/flatpak-builtins-ps.c:55 msgid "Show the runtime branch" @@ -2283,11 +2306,11 @@ msgstr "रनटाइम शाखा दिखाएं" #: app/flatpak-builtins-ps.c:56 msgid "R.-Commit" -msgstr "आर।- कमिट" +msgstr "R.-Commit" #: app/flatpak-builtins-ps.c:56 msgid "Show the runtime commit" -msgstr "रनटाइम कमिटमेंट दिखाएं" +msgstr "रनटाइम कमिट दिखाएं" #: app/flatpak-builtins-ps.c:57 msgid "Active" @@ -2295,7 +2318,7 @@ msgstr "सक्रिय" #: app/flatpak-builtins-ps.c:57 msgid "Show whether the app is active" -msgstr "यदि ऐप सक्रिय है तो दिखाएं" +msgstr "दिखाएं कि क्या ऐप सक्रिय है" #: app/flatpak-builtins-ps.c:58 msgid "Background" @@ -2303,220 +2326,220 @@ msgstr "पृष्ठभूमि" #: app/flatpak-builtins-ps.c:58 msgid "Show whether the app is background" -msgstr "दिखाओ कि क्या ऐप बैकग्राउंड है" +msgstr "दिखाएं कि क्या ऐप पृष्ठभूमि में है" #: app/flatpak-builtins-ps.c:244 msgid " - Enumerate running sandboxes" -msgstr " - सैंडबॉक्स चलाने वाली सूची" +msgstr " - चल रहे सैंडबॉक्स की गणना करें" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" -msgstr "यदि उपलब्ध रिमोट मौजूद है तो कुछ भी न करें" +msgstr "यदि दिया गया रिमोट मौजूद है तो कुछ न करें" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" -msgstr "स्थान कॉन्फ़िगरेशन फ़ाइल निर्दिष्ट करता है, न कि रेपो स्थान" +msgstr "स्थान एक विन्यास फाइल निर्दिष्ट करता है, रेपो स्थान नहीं" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "GPG सत्यापन अक्षम करें" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" -msgstr "रिमोट को चिन्हित न करें" +msgstr "रिमोट को गणना न करें के रूप में चिह्नित करें" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" -msgstr "रिमोट को चिह्नित करें क्योंकि डीईपीएस के लिए उपयोग न करें" +msgstr "रिमोट को निर्भरता के लिए प्रयोग न करें के रूप में चिह्नित करें" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" -msgstr "प्राथमिकता निर्धारित करें (डिफ़ॉल्ट 1, प्राथमिकता जितनी अधिक होगी)" +msgstr "प्राथमिकता निर्धारित करें (तयशुदा 1, उच्चतर को अधिक प्राथमिकता दी जाती है)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "प्राथमिकता" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" -msgstr "इस रिमोट कंट्रोल का उपयोग करने के लिए नामित नाम" +msgstr "इस रिमोट के लिए प्रयोग करने के लिए नामित उपसमुच्चय" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" -msgstr "सबसेट" +msgstr "उपसमुच्चय" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" -msgstr "इस रिमोट के लिए उपयोग करने के लिए एक अच्छा नाम है" +msgstr "इस रिमोट के लिए प्रयोग करने के लिए एक अच्छा नाम" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" -msgstr "इस रिमोट के लिए एक-लाइन टिप्पणी" +msgstr "इस रिमोट के लिए एक पंक्ति की टिप्पणी" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" -msgstr "इस रिमोट कंट्रोल का पूरा विवरण" +msgstr "इस रिमोट के लिए एक पूर्ण-अनुच्छेद विवरण" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" -msgstr "इस रिमोट के लिए एक वेबसाइट के लिए URL" +msgstr "इस रिमोट के लिए एक वेबसाइट का URL" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" -msgstr "इस रिमोट के लिए एक आइकन के लिए URL" +msgstr "इस रिमोट के लिए एक आइकन का URL" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" -msgstr "इस रिमोट का उपयोग करने के लिए डिफ़ॉल्ट शाखा" +msgstr "इस रिमोट के लिए प्रयोग की जाने वाली तयशुदा शाखा" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" -msgstr "फ़ाइल से आयात GPG कुंजी (- स्टड के लिए)" +msgstr "फाइल से GPG कुंजी आयात करें (- stdin हेतु)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" -msgstr "स्थानीय फ़िल्टर फ़ाइल पर पथ सेट करें" +msgstr "स्थानीय फिल्टर फाइल पर पथ निर्धारित करें" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" -msgstr "दूरस्थ अक्षम करें" +msgstr "रिमोट अक्षम करें" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "प्रमाणक का नाम" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" -msgstr "ऑटोनस्टॉल प्रमाणक" +msgstr "प्रमाणक स्वतः स्थापित करें" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" -msgstr "स्वप्रमाणित प्रमाणक न करें" +msgstr "प्रमाणक को स्वतः स्थापित न करें" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" -msgstr "सारांश फ़ाइल में अनुप्रेषित सेट का पालन न करें" +msgstr "सारांश फाइल में रीडायरेक्ट निर्धारित का अनुसरण न करें" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" -msgstr "uri लोड नहीं कर सकता %s: %s\n" +msgstr "URI %s लोड नहीं कर सकता: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" -msgstr "फ़ाइल लोड नहीं कर सकता %s: %s\n" +msgstr "फाइल %s लोड नहीं कर सकता: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" -msgstr "स्थान का नाम - एक दूरस्थ भंडार जोड़ें" +msgstr "नाम स्थान - एक रिमोट रिपॉजिटरी जोड़ें" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "यदि संग्रह सक्षम हैं तो GPG सत्यापन आवश्यक है" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" -msgstr "रिमोट %s पहले से ही मौजूद है" +msgstr "रिमोट %s पहले से मौजूद है" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "अमान्य प्रमाणक नाम %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" -msgstr "चेतावनी: के लिए अतिरिक्त मेटाडेटा अद्यतन नहीं किया जा सका '%s': %s\n" +msgstr "चेतावनी: '%s' के लिए अतिरिक्त मेटाडेटा अद्यतन नहीं किया जा सका: %s\n" #: app/flatpak-builtins-remote-delete.c:39 msgid "Remove remote even if in use" -msgstr "भले ही उपयोग में रिमोट को हटा दें" +msgstr "यदि प्रयोग में है तो भी रिमोट हटा दें" #: app/flatpak-builtins-remote-delete.c:53 msgid "NAME - Delete a remote repository" -msgstr "नाम - एक दूरस्थ रिपॉजिटरी हटाएं" +msgstr "नाम - एक रिमोट रिपॉजिटरी मिटाएं" #: app/flatpak-builtins-remote-delete.c:100 #, c-format msgid "The following refs are installed from remote '%s':" -msgstr "दूरस्थ से निम्नलिखित रेफरी स्थापित किए गए हैं '%s':" +msgstr "निम्नलिखित संदर्भ रिमोट '%s' से स्थापित किए गए हैं:" #: app/flatpak-builtins-remote-delete.c:101 msgid "Remove them?" -msgstr "उन्हें हटा दो?" +msgstr "उन्हें हटाएं?" #: app/flatpak-builtins-remote-delete.c:103 #, c-format msgid "Can't remove remote '%s' with installed refs" -msgstr "रिमोट नहीं निकाल सकते '%s' स्थापित रेफरी के साथ" +msgstr "स्थापित संदर्भ के साथ रिमोट '%s' को नहीं हटाया जा सकता" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" -msgstr "के लिए जानकारी दिखाने के लिए प्रतिबद्ध है" +msgstr "कमिट जिसके लिए जानकारी दिखानी है" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" -msgstr "प्रवेश देखें" +msgstr "लॉग प्रदर्शित करें" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" -msgstr "माता - पिता को दिखाओ" +msgstr "प्रधान दिखाएं" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" -msgstr "यदि वे बासी हैं तो भी स्थानीय कैश का उपयोग करें" +msgstr "स्थानीय कैशे का प्रयोग करें, भले ही वे पुराने हों" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" -msgstr "अप्रकाशित के रूप में उपलब्ध लिंक की केवल सूची" +msgstr "साइडलोड के रूप में केवल सूची संदर्भ उपलब्ध हैं" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" -msgstr " रिमोट आरईएफ - रिमोट में किसी एप्लिकेशन या रनटाइम के बारे में जानकारी दिखाएं" +msgstr " रिमोट संदर्भ - रिमोट में किसी अनुप्रयोग या रनटाइम के बारे में जानकारी दिखाएं" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" -msgstr "रिमोट और आरईएफ निर्दिष्ट किया जाना चाहिए" +msgstr "रिमोट और संदर्भ निर्दिष्ट होना चाहिए" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "डाउनलोड:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "इतिहास:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " कमिट:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " विषय:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " तारीख:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" -msgstr "चेतावनी: प्रतिबद्ध %s चेतावनी: प्रतिबद्ध कोई फ्लैट पैकेज मेटाडाटा है\n" +msgstr "चेतावनी: कमिट %s में कोई फ़्लैटपैक मेटाडेटा नहीं है\n" #: app/flatpak-builtins-remote-list.c:42 msgid "Show remote details" -msgstr "दूरस्थ विवरण दिखाएं" +msgstr "रिमोट विवरण दिखाएं" #: app/flatpak-builtins-remote-list.c:43 msgid "Show disabled remotes" -msgstr "अक्षम किए गए उपाय दिखाएं" +msgstr "अक्षम रिमोट दिखाएं" #: app/flatpak-builtins-remote-list.c:50 msgid "Title" @@ -2532,23 +2555,23 @@ msgstr "URL दिखाएं" #: app/flatpak-builtins-remote-list.c:52 msgid "Show the collection ID" -msgstr "संग्रह आईडी दिखाएं" +msgstr "संग्रह ID दिखाएं" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" -msgstr "सबसेट" +msgstr "उपसमुच्चय" #: app/flatpak-builtins-remote-list.c:53 msgid "Show the subset" -msgstr "सबसेट दिखाएं" +msgstr "उपसमुच्चय दिखाएं" #: app/flatpak-builtins-remote-list.c:54 msgid "Filter" -msgstr "फ़िल्टर" +msgstr "फिल्टर" #: app/flatpak-builtins-remote-list.c:54 msgid "Show filter file" -msgstr "फ़िल्टर नाम दिखाएं" +msgstr "फिल्टर फाइल दिखाएं" #: app/flatpak-builtins-remote-list.c:55 msgid "Priority" @@ -2572,15 +2595,15 @@ msgstr "विवरण दिखाएं" #: app/flatpak-builtins-remote-list.c:59 msgid "Homepage" -msgstr "होम पेज" +msgstr "मुखपृष्ठ" #: app/flatpak-builtins-remote-list.c:59 msgid "Show homepage" -msgstr "होम पेज दिखाएं" +msgstr "मुखपृष्ठ दिखाएं" #: app/flatpak-builtins-remote-list.c:60 msgid "Icon" -msgstr "चित्र" +msgstr "आइकन" #: app/flatpak-builtins-remote-list.c:60 msgid "Show icon" @@ -2588,43 +2611,43 @@ msgstr "आइकन दिखाएं" #: app/flatpak-builtins-remote-list.c:229 msgid " - List remote repositories" -msgstr " - दूरस्थ रिपोजिटरी की सूची" +msgstr " - रिमोट रिपॉजिटरी की सूची बनाएं" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" -msgstr "वास्तुकला और शाखा दिखाएं" +msgstr "आर्किटेक्चर और शाखाएं दिखाएं" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "केवल रनटाइम दिखाएं" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "केवल ऐप्स दिखाएं" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" -msgstr "दिखाएँ केवल उन जहां अद्यतन उपलब्ध नहीं है" +msgstr "केवल वही दिखाएं जहां अद्यतन उपलब्ध हैं" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" -msgstr "इस मेहराब तक सीमित करें (* सभी के लिए)" +msgstr "इस आर्किटेक्चर तक सीमित (* सभी के लिए)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" -msgstr "लीड समय दिखाएं" +msgstr "रनटाइम दिखाएं" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" -msgstr "डाउनलोड का आकार" +msgstr "डाउनलोड आकार" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" -msgstr "अपलोड आकार दिखाएं" +msgstr "डाउनलोड आकार दिखाएं" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" -msgstr " [रिमोट या यूआरआई] - उपलब्ध रनटाइम और एप्लिकेशन दिखाएं" +msgstr " [रिमोट या URI] - उपलब्ध रनटाइम और अनुप्रयोग दिखाएं" #: app/flatpak-builtins-remote-modify.c:66 msgid "Enable GPG verification" @@ -2632,19 +2655,19 @@ msgstr "GPG सत्यापन सक्षम करें" #: app/flatpak-builtins-remote-modify.c:67 msgid "Mark the remote as enumerate" -msgstr "रिमोट को एन्यूमरेट के रूप में चिह्नित करें" +msgstr "रिमोट को एन्युमरेट के रूप में चिह्नित करें" #: app/flatpak-builtins-remote-modify.c:68 msgid "Mark the remote as used for dependencies" -msgstr "निर्भरता के लिए उपयोग किए जाने वाले रिमोट को चिह्नित करें" +msgstr "रिमोट को निर्भरता के लिए प्रयुक्त के रूप में चिह्नित करें" #: app/flatpak-builtins-remote-modify.c:69 msgid "Set a new url" -msgstr "नया URL सेट करें" +msgstr "नया URL निर्धारित करें" #: app/flatpak-builtins-remote-modify.c:70 msgid "Set a new subset to use" -msgstr "उपयोग करने के लिए एक नया सबसेट स्थापित करें" +msgstr "प्रयोग के लिए एक नया उपसमुच्चय निर्धारित करें" #: app/flatpak-builtins-remote-modify.c:71 msgid "Enable the remote" @@ -2652,377 +2675,384 @@ msgstr "रिमोट सक्षम करें" #: app/flatpak-builtins-remote-modify.c:72 msgid "Update extra metadata from the summary file" -msgstr "सारांश फ़ाइल से अतिरिक्त मेटाडेटा अद्यतन करें" +msgstr "सारांश फाइल से अतिरिक्त मेटाडेटा अद्यतन करें" #: app/flatpak-builtins-remote-modify.c:89 msgid "Disable local filter" -msgstr "स्थानीय फ़िल्टर अक्षम करें" +msgstr "स्थानीय फिल्टर अक्षम करें" #: app/flatpak-builtins-remote-modify.c:93 msgid "Authenticator options" -msgstr "प्रामाणिक पैरामीटर" +msgstr "प्रमाणक विकल्प" #: app/flatpak-builtins-remote-modify.c:96 msgid "Follow the redirect set in the summary file" -msgstr "धुरी फ़ाइल में दिए गए पुनर्निर्देशन का पालन करें" +msgstr "सारांश फाइल में रीडायरेक्ट निर्धारित का पालन करें" #: app/flatpak-builtins-remote-modify.c:298 msgid "NAME - Modify a remote repository" -msgstr "नाम - एक रिमोट रिपॉजिटरी को संशोधित करें" +msgstr "नाम - रिमोट रिपोजिटरी को संशोधित करें" #: app/flatpak-builtins-remote-modify.c:308 msgid "Remote NAME must be specified" -msgstr "दूरस्थ नाम निर्दिष्ट किया जाना चाहिए" +msgstr "रिमोट नाम निर्दिष्ट किया जाना चाहिए" #: app/flatpak-builtins-remote-modify.c:319 #, c-format msgid "Updating extra metadata from remote summary for %s\n" -msgstr "के लिए दूरस्थ सारांश से अतिरिक्त मेटाडेटा अद्यतन करना %s\n" +msgstr "%s के लिए रिमोट सारांश से अतिरिक्त मेटाडेटा अद्यतन किया जा रहा है\n" #: app/flatpak-builtins-remote-modify.c:322 #, c-format msgid "Error updating extra metadata for '%s': %s\n" -msgstr "के लिए अतिरिक्त मेटाडेटा अपडेट करने में त्रुटि '%s': %s\n" +msgstr "'%s' के लिए अतिरिक्त मेटाडेटा अद्यतन करने में त्रुटि: %s\n" #: app/flatpak-builtins-remote-modify.c:323 #, c-format msgid "Could not update extra metadata for %s" -msgstr "के लिए अतिरिक्त मेटाडेटा अद्यतन करने में विफल %s" +msgstr "%s के लिए अतिरिक्त मेटाडेटा अद्यतन नहीं किया जा सका" #: app/flatpak-builtins-repair.c:43 msgid "Don't make any changes" -msgstr "किसी भी परिवर्तन न करें" +msgstr "कोई बदलाव न करें" #: app/flatpak-builtins-repair.c:44 msgid "Reinstall all refs" -msgstr "सभीलिंक पुन स्थापित करें" +msgstr "सभी संदर्भ पुनः स्थापित करें" #: app/flatpak-builtins-repair.c:68 #, c-format msgid "Object missing: %s.%s\n" -msgstr "लापता वस्तु: %s.%s\n" +msgstr "वस्तु अनुपलब्ध: %s.%s\n" #: app/flatpak-builtins-repair.c:76 #, c-format msgid "Object invalid: %s.%s\n" -msgstr "अमान्य वस्तु: %s.%s\n" +msgstr "वस्तु अमान्य: %s.%s\n" #: app/flatpak-builtins-repair.c:81 #, c-format msgid "%s, deleting object\n" -msgstr "%s, एक वस्तु को हटाने\n" +msgstr "%s, वस्तु मिटाई जा रही है\n" #: app/flatpak-builtins-repair.c:146 #, c-format msgid "Can't load object %s: %s\n" -msgstr "ऑब्जेक्ट लोड नहीं कर सकता %s: %s\n" +msgstr "वस्तु %s लोड नहीं किया जा सका: %s\n" #: app/flatpak-builtins-repair.c:228 -#, fuzzy, c-format +#, c-format msgid "Commit invalid %s: %s\n" -msgstr "अमान्य वस्तु: %s.%s\n" +msgstr "अमान्य कमिट %s: %s\n" #: app/flatpak-builtins-repair.c:231 -#, fuzzy, c-format +#, c-format msgid "Deleting invalid commit %s: %s\n" -msgstr "अमान्य प्रतिबद्ध संदर्भ %s: " +msgstr "अमान्य कमिट %s को हटाया जा रहा है: %s\n" #: app/flatpak-builtins-repair.c:261 #, c-format msgid "Commit should be marked partial: %s\n" -msgstr "" +msgstr "कमिट को आंशिक चिह्नित किया जाना चाहिए: %s\n" #: app/flatpak-builtins-repair.c:264 #, c-format msgid "Marking commit as partial: %s\n" -msgstr "" +msgstr "कमिट को आंशिक के रूप में चिह्नित जा रहा है: %s\n" #: app/flatpak-builtins-repair.c:293 #, c-format msgid "Problems loading data for %s: %s\n" -msgstr "के लिए डेटा लोड करने में समस्याएं %s: %s\n" +msgstr "%s के लिए डेटा लोड करने में समस्याएं: %s\n" #: app/flatpak-builtins-repair.c:306 #, c-format msgid "Error reinstalling %s: %s\n" -msgstr "पुनः स्थापित करने में त्रुटि %s: %s\n" +msgstr "%s को पुनः स्थापित करने में त्रुटि: %s\n" #: app/flatpak-builtins-repair.c:327 msgid "- Repair a flatpak installation" -msgstr "- एक flatpak इंस्टॉलेशन सुधारें" +msgstr "- फ़्लैटपैक स्थापना की मरम्मत करें" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" -msgstr "गैर-तैनात ref को निकाल रहा है %s…\n" +msgstr "गैर-परिनियोजित संदर्भ %s को हटाया जा रहा है…\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" -msgstr "एक अविकसित लिंक लंघन %s…\n" +msgstr "गैर-परिनियोजित संदर्भ %s को छोड़ा जा रहा है…\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" -msgstr "[%d/%d] सत्यापित किया जा रहा है %s…\n" +msgstr "[%d/%d] %s का सत्यापन हो रहा है…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " -msgstr "सूखा रन: " +msgstr "पूर्वाभ्यास: " -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" -msgstr "निकाला जा रहा है ref %s गायब वस्तुओं के कारण\n" +msgstr "गुम वस्तुओं के कारण संदर्भ %s को हटाया जा रहा है\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" -msgstr "रेफरी को हटाना %s अमान्य वस्तुओं के कारण\n" +msgstr "अमान्य वस्तुओं के कारण संदर्भ %s को हटाया जा रहा है\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" -msgstr "रेफरी को हटाना %s की वजह से %d\n" +msgstr "%2$d के कारण संदर्भ %1$s को हटाया जा रहा है\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" -msgstr "रिमोट की जाँच हो रही है ...\n" +msgstr "रिमोट की जांच हो रही है...\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" -msgstr "रिमोट %s रेफ करने के लिए %s लापता है\n" +msgstr "संदर्भ %2$s के लिए रिमोट %1$s गायब है\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" -msgstr "रिमोट %s रेफ के लिए %s अक्षम है\n" +msgstr "संदर्भ %2$s के लिए रिमोट %1$s अक्षम है\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" -msgstr "प्रूनिंग ऑब्जेक्ट्स\n" +msgstr "वस्तुओं की छँटाई की जा रही है\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" -msgstr "मिटना\n" +msgstr ".removed मिटाया जा रहा है\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" -msgstr "लिंक की स्थापना\n" +msgstr "संदर्भ को पुनः स्थापित किया जा रहा है\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" -msgstr "हटाए गए refs को पुनर्स्थापित करना\n" +msgstr "हटाए गए संदर्भ को पुनः स्थापित किया जा रहा है\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " -msgstr "जब के लिए एक आवेदन स्ट्रीम हटाने %s: " +msgstr "%s के लिए ऐपस्ट्रीम हटाते समय: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " -msgstr "जब के लिए appstream की तैनाती %s: " +msgstr "%s के लिए ऐपस्ट्रीम परिनियोजित करते समय: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "रेपो मोड: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "अनुक्रमित सारांश: %s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" -msgstr "यथार्थ" +msgstr "अनुक्रमित सारांश: %s" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" -msgstr "असत्य" +msgstr "गलत" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " -msgstr "अतिरिक्त जानकारी: " +msgstr "उपसंक्षेप: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" -msgstr "कैश संस्करण: %d\n" +msgstr "कैशे संस्करण: %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" -msgstr "अनुक्रमित डेल्टास: %s\n" +msgstr "अनुक्रमित डेल्टा: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "शीर्षक: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "टिप्पणी: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "विवरण: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" -msgstr "होम पेज: %s\n" +msgstr "मुखपृष्ठ: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" -msgstr "चित्र: %s\n" +msgstr "आइकन: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" -msgstr "संग्रह आईडी: %s\n" +msgstr "संग्रह ID: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" -msgstr "डिफ़ॉल्ट शाखा: %s\n" +msgstr "तयशुदा शाखा: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" -msgstr "रीडायरेक्ट URL: %s\n" +msgstr "पुनर्निर्देशन URL: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" -msgstr "संग्रह आईडी तैनात करें: %s\n" +msgstr "परिनियोजन संग्रह ID: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" -msgstr "प्रमाणक नाम: %s\n" +msgstr "प्रमाणक का नाम: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "प्रमाणक स्थापित करें: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "GPG कुंजी हैश: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" -msgstr "%zd सारांश शाखाएँ\n" +msgstr "%zd सारांश शाखाएं\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" -msgstr "इंस्टॉल" +msgstr "स्थापित" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "डाउनलोड" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" -msgstr "ग्राहकी" +msgstr "उपसमुच्चय" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" -msgstr "पाचन" +msgstr "डाइजेस्ट" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" -msgstr "इतिहास की लंबाई" +msgstr "इतिहास लंबाई" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "रिपॉजिटरी के बारे में सामान्य जानकारी प्रिंट करें" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" -msgstr "भंडार में शाखाओं की सूची बनाएं" +msgstr "रिपॉजिटरी में शाखाओं की सूची बनाएं" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" -msgstr "एक शाखा के लिए मेटाडेटा प्रिंट करें" +msgstr "किसी शाखा के लिए मेटाडेटा प्रिंट करें" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" -msgstr "शाखा के लिए कमिट दिखाएं" +msgstr "किसी शाखा के लिए कमिट दिखाएं" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" -msgstr "रेपो के सबसेट के बारे में जानकारी प्रिंट करें" +msgstr "रेपो उपसमुच्चय के बारे में जानकारी प्रिंट करें" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" -msgstr "इस उपसर्ग के साथ सबसेट की जानकारी सीमित करें" +msgstr "इस उपसर्ग के साथ जानकारी को उपसमुच्चय तक सीमित करें" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "स्थान - रिपॉजिटरी रखरखाव" #: app/flatpak-builtins-run.c:67 msgid "Command to run" -msgstr "चलाने की आज्ञा" +msgstr "चलाने की कमांड" #: app/flatpak-builtins-run.c:68 msgid "Directory to run the command in" -msgstr "में कमांड चलाने के लिए डायरेक्टरी" +msgstr "कमांड चलाने के लिए निर्देशिका" #: app/flatpak-builtins-run.c:69 msgid "Branch to use" -msgstr "उपयोग करने के लिए शाखा" +msgstr "प्रयोग हेतु शाखा" #: app/flatpak-builtins-run.c:70 msgid "Use development runtime" -msgstr "विकास पर्यावरण का उपयोग करें" +msgstr "डेवलपमेंट रनटाइम का प्रयोग करें" #: app/flatpak-builtins-run.c:71 msgid "Runtime to use" -msgstr "उपयोग करने के लिए लीड समय" +msgstr "प्रयोग करने के लिए रनटाइम" #: app/flatpak-builtins-run.c:72 msgid "Runtime version to use" -msgstr "उपयोग करने के लिए रनटाइम संस्करण" +msgstr "प्रयोग करने के लिए रनटाइम संस्करण" #: app/flatpak-builtins-run.c:75 msgid "Log accessibility bus calls" -msgstr "उपलब्धता बस कॉल लॉग" +msgstr "अभिगम्यता बस कॉल लॉग करें" #: app/flatpak-builtins-run.c:76 msgid "Don't proxy accessibility bus calls" -msgstr "उपलब्धता बस पर कॉल के लिए प्रॉक्सी का उपयोग न करें" +msgstr "अभिगम्यता बस कॉल को प्रॉक्सी न करें" #: app/flatpak-builtins-run.c:77 msgid "Proxy accessibility bus calls (default except when sandboxed)" -msgstr "उपलब्ध बस के माध्यम से कॉल के लिए प्रॉक्सी का उपयोग न करें" +msgstr "प्रॉक्सी अभिगम्यता बस कॉल (सैंडबॉक्स किए जाने को छोड़कर तयशुदा)" #: app/flatpak-builtins-run.c:78 msgid "Don't proxy session bus calls" -msgstr "प्रॉक्सी नहीं सत्र बस कॉल करो" +msgstr "प्रॉक्सी सत्र बस कॉल न करें" #: app/flatpak-builtins-run.c:79 msgid "Proxy session bus calls (default except when sandboxed)" -msgstr "बस प्रॉक्सी सत्र कॉल (पृथक छोड़कर डिफ़ॉल्ट)" +msgstr "प्रॉक्सी सत्र बस कॉल (सैंडबॉक्स किए जाने को छोड़कर तयशुदा)" #: app/flatpak-builtins-run.c:80 msgid "Don't start portals" -msgstr "पोर्टल लॉन्च न करें" +msgstr "पोर्टल प्रारंभ न करें" #: app/flatpak-builtins-run.c:81 msgid "Enable file forwarding" -msgstr "फ़ाइल अग्रेषण सक्षम करें" +msgstr "फाइल अग्रेषण सक्षम करें" #: app/flatpak-builtins-run.c:82 msgid "Run specified commit" @@ -3030,48 +3060,48 @@ msgstr "निर्दिष्ट कमिट चलाएं" #: app/flatpak-builtins-run.c:83 msgid "Use specified runtime commit" -msgstr "निर्दिष्ट रनटाइम कमिट का उपयोग करें" +msgstr "निर्दिष्ट रनटाइम कमिट का प्रयोग करें" #: app/flatpak-builtins-run.c:84 msgid "Run completely sandboxed" -msgstr "पूरी तरह से सैंडबॉक्सेड चलाएं" +msgstr "पूरी तरह से सैंडबॉक्स करके चलाएं" #: app/flatpak-builtins-run.c:86 msgid "Use PID as parent pid for sharing namespaces" -msgstr "उपयोग पीआईडी अभिभावक के रूप में नाम स्थान साझा करने के लिए pid" +msgstr "नेमस्पेस साझा करने के लिए PID को प्रधान PID के रूप में प्रयोग करें" #: app/flatpak-builtins-run.c:87 msgid "Make processes visible in parent namespace" -msgstr "पैरेंट नेमस्पेस में दिखाई देने वाली प्रक्रियाएं करें" +msgstr "प्रक्रियाओं को प्रधान नेमस्पेस में दृश्यमान बनाएं" #: app/flatpak-builtins-run.c:88 msgid "Share process ID namespace with parent" -msgstr "एक माता-पिता के साथ एक प्रक्रिया आईडी नाम स्थान साझा करना" +msgstr "प्रधान के साथ प्रक्रिया ID नेमस्पेस साझा करें" #: app/flatpak-builtins-run.c:89 msgid "Write the instance ID to the given file descriptor" -msgstr "निर्दिष्ट फ़ाइल विवरणक के लिए उदाहरण आईडी लिखें" +msgstr "दिए गए फाइल डिस्क्रिप्टर पर इंस्टेंस ID लिखें" #: app/flatpak-builtins-run.c:90 msgid "Use PATH instead of the app's /app" -msgstr "" +msgstr "ऐप के /app के बजाय पथ का प्रयोग करें" #: app/flatpak-builtins-run.c:91 msgid "Use PATH instead of the runtime's /usr" -msgstr "" +msgstr "रनटाइम के /usr के बजाय पथ का प्रयोग करें" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" -msgstr "एपीपी [तर्क…] - एक ऐप चलाएं" +msgstr "ऐप [तर्क…] - एक ऐप चलाएं" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "रनटाइम/%s/%s/%s स्थापित नहीं है" #: app/flatpak-builtins-search.c:36 msgid "Arch to search for" -msgstr "खोज के लिए पुरालेख" +msgstr "खोजने के लिए आर्किटेक्चर" #: app/flatpak-builtins-search.c:47 msgid "Remotes" @@ -3079,84 +3109,82 @@ msgstr "रिमोट" #: app/flatpak-builtins-search.c:47 msgid "Show the remotes" -msgstr "रिमोट दिखाएँ" +msgstr "रिमोट दिखाएं" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" -msgstr "पाठ - दूरस्थ अनुप्रयोगों / रनटाइम में पाठ खोजें।" +msgstr "पाठ - पाठ के लिए रिमोट ऐप्स/रनटाइम खोजें" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "पाठ निर्दिष्ट किया जाना चाहिए" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "कोई मेल नहीं मिले" #: app/flatpak-builtins-uninstall.c:54 msgid "Arch to uninstall" -msgstr "स्थापना रद्द करने के लिए वास्तुकला" +msgstr "स्थापना रद्द करने के लिए आर्किटेक्चर" #: app/flatpak-builtins-uninstall.c:55 msgid "Keep ref in local repository" -msgstr "स्थानीय रेपो में लिंक सहेजें" +msgstr "संदर्भ को स्थानीय रिपॉजिटरी में रखें" #: app/flatpak-builtins-uninstall.c:56 msgid "Don't uninstall related refs" -msgstr "लिंक किए गए लिंक को न निकालें" +msgstr "संबंधित संदर्भ को अस्थापित न करें" #: app/flatpak-builtins-uninstall.c:57 msgid "Remove files even if running" -msgstr "यदि चल रहा है तो भी फाइलें निकालें" +msgstr "चल रहे होने पर भी फाइलें हटाएं" #: app/flatpak-builtins-uninstall.c:60 msgid "Uninstall all" -msgstr "सभी की स्थापना रद्द करें" +msgstr "सभी अस्थापित करें" #: app/flatpak-builtins-uninstall.c:61 msgid "Uninstall unused" -msgstr "अप्रयुक्त को अनइंस्टॉल करें" +msgstr "अप्रयुक्त अस्थापित करें" #: app/flatpak-builtins-uninstall.c:62 msgid "Delete app data" -msgstr "एप्लिकेशन डेटा हटाएं" +msgstr "ऐप डेटा मिटाएं" #: app/flatpak-builtins-uninstall.c:141 #, c-format msgid "Delete data for %s?" -msgstr "के लिए डेटा हटाएं %s?" +msgstr "%s के लिए डेटा मिटाएं?" #: app/flatpak-builtins-uninstall.c:220 #, c-format msgid "Info: applications using the extension %s%s%s branch %s%s%s:\n" -msgstr "" +msgstr "जानकारी: एक्सटेंशन %s%s%s शाखा %s%s%s का प्रयोग करने वाले अनुप्रयोग:\n" #: app/flatpak-builtins-uninstall.c:223 -#, fuzzy, c-format +#, c-format msgid "Info: applications using the runtime %s%s%s branch %s%s%s:\n" -msgstr "इस रनटाइम का उपयोग करने वाले अनुप्रयोग:\n" +msgstr "जानकारी: रनटाइम %s%s%s शाखा %s%s%s का प्रयोग करने वाले अनुप्रयोग:\n" #: app/flatpak-builtins-uninstall.c:238 -#, fuzzy msgid "Really remove?" -msgstr "रिमोट" +msgstr "वास्तव में हटाएं?" #: app/flatpak-builtins-uninstall.c:255 -#, fuzzy msgid "[REF…] - Uninstall applications or runtimes" -msgstr "[रेफरी…] - एप्लिकेशन या रनटाइम्स अपडेट करें" +msgstr "[संदर्भ…] - अनुप्रयोग या रनटाइम अस्थापित करें" #: app/flatpak-builtins-uninstall.c:264 msgid "Must specify at least one REF, --unused, --all or --delete-data" -msgstr "कम से कम एक REF, --unused, --all या --delete-data निर्दिष्ट करना चाहिए" +msgstr "कम से कम एक संदर्भ, --unused, --all या --delete-data निर्दिष्ट करना होगा" #: app/flatpak-builtins-uninstall.c:267 msgid "Must not specify REFs when using --all" -msgstr "--All का उपयोग करते समय REFs निर्दिष्ट नहीं करना चाहिए" +msgstr "--all का प्रयोग करते समय संदर्भ निर्दिष्ट नहीं करना चाहिए" #: app/flatpak-builtins-uninstall.c:270 msgid "Must not specify REFs when using --unused" -msgstr "--unused का उपयोग करते समय आरईएफ निर्दिष्ट नहीं करना चाहिए" +msgstr "--unused का प्रयोग करते समय संदर्भ निर्दिष्ट नहीं करना चाहिए" #: app/flatpak-builtins-uninstall.c:336 #, c-format @@ -3166,630 +3194,634 @@ msgid "" "flatpak-pin(1):\n" msgstr "" "\n" -"संस्थापन '%s' में ये रनटाइम पिन किए गए हैं और इन्हें हटाया नहीं जाएगा; देखें flatpak-" -"pin(1):\n" +"स्थापना '%s' में ये रनटाइम पिन किए गए हैं और इन्हें हटाया नहीं जाएगा; flatpak-pin(1) " +"देखें:\n" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" -msgstr "स्थापना रद्द करने के लिए अप्रयुक्त कुछ भी नहीं\n" +msgstr "अस्थापित करने के लिए कुछ भी अप्रयुक्त नहीं\n" #: app/flatpak-builtins-uninstall.c:444 -#, fuzzy, c-format +#, c-format msgid "No installed refs found for ‘%s’" -msgstr "इसी तरह के स्थापित refs के लिए मिला ‘%s’:" +msgstr "‘%s’ के लिए कोई स्थापित संदर्भ नहीं मिला" #: app/flatpak-builtins-uninstall.c:447 #, c-format msgid " with arch ‘%s’" -msgstr "" +msgstr " आर्किटेक्चर ‘%s’ के साथ" #: app/flatpak-builtins-uninstall.c:449 #, c-format msgid " with branch ‘%s’" -msgstr "" +msgstr " शाखा ‘%s’ के साथ" #: app/flatpak-builtins-uninstall.c:456 #, c-format msgid "Warning: %s is not installed\n" -msgstr "चेतावनी: %s स्थापित नहीं किया गया\n" +msgstr "चेतावनी: %s स्थापित नहीं है\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" -msgstr "" +msgstr "निर्दिष्ट संदर्भ में से कोई भी स्थापित नहीं है" #: app/flatpak-builtins-update.c:56 msgid "Arch to update for" -msgstr "उन्नयन के लिए वास्तुकला" +msgstr "अद्यतन करने के लिए आर्किटेक्चर" #: app/flatpak-builtins-update.c:57 msgid "Commit to deploy" -msgstr "तैनात करने के लिए प्रतिबद्ध" +msgstr "परिनियोजन करने के लिए कमिट" #: app/flatpak-builtins-update.c:58 msgid "Remove old files even if running" -msgstr "पुरानी फाइल को हटा दें भले ही चल रहा हो" +msgstr "पुरानी फाइलें चल रही हों तो भी हटाएं" #: app/flatpak-builtins-update.c:59 msgid "Don't pull, only update from local cache" -msgstr "पुल न करें, केवल स्थानीय कैश से अपडेट करें" +msgstr "खींचें नहीं, केवल स्थानीय कैशे से अद्यतन करें" #: app/flatpak-builtins-update.c:61 msgid "Don't update related refs" -msgstr "संबंधित लिंक अपडेट न करें" +msgstr "संबंधित संदर्भ अद्यतन न करें" #: app/flatpak-builtins-update.c:66 msgid "Update appstream for remote" -msgstr "दूरदराज के लिए अद्यतन appstream" +msgstr "रिमोट के लिए ऐपस्ट्रीम अद्यतन करें" #: app/flatpak-builtins-update.c:67 msgid "Only update this subpath" -msgstr "केवल इस उपपथ को अपडेट करें" +msgstr "केवल इस उपपथ को अद्यतन करें" #: app/flatpak-builtins-update.c:90 msgid "[REF…] - Update applications or runtimes" -msgstr "[रेफरी…] - एप्लिकेशन या रनटाइम्स अपडेट करें" +msgstr "[संदर्भ…] - अनुप्रयोग या रनटाइम अद्यतन करें" #: app/flatpak-builtins-update.c:121 msgid "With --commit, only one REF may be specified" -msgstr "--Commit के साथ, केवल एक REF निर्दिष्ट किया जा सकता है" +msgstr "--commit के साथ, केवल एक संदर्भ निर्दिष्ट किया जा सकता है" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" -msgstr "अद्यतनों की तलाश...\n" +msgstr "अद्यतन खोज रहे हैं…\n" #: app/flatpak-builtins-update.c:215 #, c-format msgid "Unable to update %s: %s\n" -msgstr "अपडेट करने में असमर्थ %s: %s\n" +msgstr "%s को अद्यतन करने में असमर्थ: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" -msgstr "कुछ भी नहीं करना।\n" +msgstr "कुछ करने को नहीं है।\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" -msgstr "रिमोट ‘%s’ कई प्रतिष्ठानों में पाया गया:" +msgstr "रिमोट ‘%s’ एकाधिक स्थापनाओं में पाया गया:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" -msgstr "आप क्या उपयोग करना चाहते हैं? (0 - रुकावट के लिए)" +msgstr "आप किसका प्रयोग करना चाहते हैं (निरस्त करने के लिए 0)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" -msgstr "कोई रिमोट नहीं चुना गया ‘%s’ जो कई प्रतिष्ठानों में मौजूद है" +msgstr "एकाधिक स्थापना में मौजूद ‘%s’ को हल करने के लिए कोई रिमोट नहीं चुना गया" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" "Hint: Use flatpak remote-add to add a remote" msgstr "" -"रिमोट \"%s\" पता नहीं चला\n" -"संकेत: रिमोट जोड़ने के लिए flatpak रिमोट-ऐड का उपयोग करें" +"रिमोट \"%s\" नहीं मिला\n" +"संकेत: रिमोट जोड़ने के लिए flatpak remote-add का प्रयोग करें" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" -msgstr "रिमोट \"%s\" पता नहीं चला में %s स्थापना" +msgstr "%2$s स्थापना में रिमोट \"%1$s\" नहीं मिला" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" "Use this ref?" msgstr "" -"आरईएफ ने पाया ‘%s’ रिमोट में ‘%s’ (%s).\n" -"इस रेफ का उपयोग करें?" +"रिमोट ‘%2$s’ (%3$s) में संदर्भ ‘%1$s’ मिला।\n" +"इस संदर्भ का प्रयोग करें?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" -msgstr "के लिए मैचों को हल करने के लिए कोई रेफरी नहीं चुना गया ‘%s’" +msgstr "‘%s’ के मिलान को हल करने के लिए कोई संदर्भ नहीं चुना गया" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" -msgstr "इसी तरह के refs के लिए मिला ‘%s’ रिमोट में ‘%s’ (%s):" +msgstr "रिमोट ‘%2$s’ (%3$s) में ‘%1$s’ के लिए समान संदर्भ पाए गए:" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" -msgstr "स्थापित ref ‘%s’ (%s). क्या यह सही है?" +msgstr "स्थापित संदर्भ ‘%s’ (%s) मिला। क्या यह सही है?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" -msgstr "ऊपर के सभी" +msgstr "उपरोक्त सभी" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" -msgstr "इसी तरह के स्थापित refs के लिए मिला ‘%s’:" +msgstr "‘%s’ के लिए समान स्थापित संदर्भ मिले:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"पाया समान रेफरी (रों) ‘%s’ रिमोट में ‘%s’ (%s).\n" -"इस रिमोट का उपयोग करें?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "‘%s’ के समान संदर्भ वाले रिमोट मिले:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" -msgstr "मैचों के समाधान के लिए कोई रिमोट नहीं चुना गया ‘%s’" - -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "लिंक के समान पाए गए उपाय ‘%s’:" +msgstr "‘%s’ के मिलान को हल करने के लिए कोई रिमोट नहीं चुना गया" -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" -msgstr "उपयोगकर्ता दूरस्थ के लिए अद्यतन कर रहा है appstream डेटा %s" +msgstr "उपयोक्ता रिमोट %s के लिए ऐपस्ट्रीम डेटा अद्यतन कर रहा है" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" -msgstr "दूरदराज के लिए अद्यतन कर रहा है appstream डेटा %s" +msgstr "रिमोट %s के लिए ऐपस्ट्रीम डेटा अद्यतन कर रहा है" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" -msgstr "अपडेट करने में त्रुटि हुई" +msgstr "अद्यतन करने में त्रुटि" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" -msgstr "रिमोट \"%s\" पता नहीं चला" +msgstr "रिमोट \"%s\" नहीं मिला" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." -msgstr "प्रत्यय अस्पष्ट है: '%s'." +msgstr "अस्पष्ट प्रत्यय: '%s'।" #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" -msgstr "संभावित मान हैं: s[tart], m[iddle],: e[nd] या: f[ull]" +msgstr "संभावित मान हैं :s[tart], :m[iddle], :e[nd] or :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." -msgstr "अमान्य प्रत्यय: '%s'." +msgstr "अमान्य प्रत्यय: '%s'।" -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" -msgstr "स्तंभ अस्पष्ट है: %s" +msgstr "अस्पष्ट कॉलम: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" -msgstr "अज्ञात स्तंभ: %s" +msgstr "अज्ञात कॉलम: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "उपलब्ध कॉलम:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "सभी कॉलम दिखाएं" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "उपलब्ध कॉलम दिखाएं" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" -msgstr "परिशिष्ट: s[tart]: m[iddle], e[nd] या: f[ull] दीर्घवृत्ताकार बदलने के लिए" +msgstr "दीर्घवृत्त आकार बदलने के लिए :s[tart], :m[iddle], :e[nd] या :f[ull] जोड़ें" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" -msgstr "के लिए आवश्यक रनटाइम %s (%s) रिमोट में मिला %s\n" +msgstr "%s (%s) के लिए आवश्यक रनटाइम रिमोट %s में मिला\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "क्या आप इसे स्थापित करना चाहते हैं?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" -msgstr "के लिए आवश्यक रनटाइम %s (%s) रिमोट में पाया:" +msgstr "रिमोट में %s (%s) के लिए आवश्यक रनटाइम पाया गया:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" -msgstr "आप क्या स्थापित करना चाहते हैं? (0 रद्द करने के लिए)" +msgstr "आप किसे स्थापित करना चाहते हैं (निरस्त करने के लिए 0)?" -#: app/flatpak-cli-transaction.c:129 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:132 +#, c-format msgid "Configuring %s as new remote '%s'\n" -msgstr "विन्यास कर रहा है %s एक नए रिमोट की तरह '%s'" +msgstr "%s को नए रिमोट '%s' के रूप में विन्यस्त किया जा रहा है\n" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " "applications.\n" "Should the remote be kept for future installations?" msgstr "" -"दूरस्थ '%s', द्वारा संदर्भित '%s' जगह में %s अतिरिक्त एप्लिकेशन शामिल हैं।\n" -"क्या भविष्य के प्रतिष्ठानों के लिए रिमोट रखा जाना चाहिए?" +"रिमोट '%1$s', जिसे स्थान %3$s पर '%2$s' द्वारा संदर्भित किया जाता है, में अतिरिक्त " +"अनुप्रयोग शामिल हैं।\n" +"क्या भविष्य में स्थापना के लिए रिमोट रखा जाना चाहिए?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" " %s\n" "Configure this as new remote '%s'" msgstr "" -"आवेदन %s से runtimes पर निर्भर करता है:\n" +"अनुप्रयोग %s निम्न रनटाइम पर निर्भर करता है:\n" " %s\n" -"नए रिमोट के रूप में इस विन्यस्त करें '%s'" +"इसे नए रिमोट '%s' के रूप में विन्यस्त करें" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" -msgstr "स्थापित कर रहा है..." +msgstr "स्थापित किया जा रहा है…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" -msgstr "स्थापित कर रहा है %d/%d…" +msgstr "%d/%d स्थापित किया जा रहा है…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" -msgstr "अपडेट हो रहा है ..." +msgstr "अद्यतन किया जा रहा है…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" -msgstr "अद्यतन कर रहा है %d/%d…" +msgstr "%d/%d अद्यतन किया जा रहा है…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" -msgstr "स्थापना रद्द कर रहा है ..." +msgstr "अस्थापित किया जा रहा है…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" -msgstr "स्थापना रद्द करना %d/%d…" +msgstr "%d/%d अस्थापित किया जा रहा है…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" -msgstr "जानकारी: %s छूट गया था" +msgstr "जानकारी: %s को छोड़ दिया गया" -#: app/flatpak-cli-transaction.c:512 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:516 +#, c-format msgid "Warning: %s%s%s already installed" -msgstr "%s पहले से स्थापित" +msgstr "चेतावनी: %s%s%s पहले से ही स्थापित है" -#: app/flatpak-cli-transaction.c:515 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:519 +#, c-format msgid "Error: %s%s%s already installed" -msgstr "%s पहले से स्थापित" +msgstr "त्रुटि: %s%s%s पहले से ही स्थापित है" -#: app/flatpak-cli-transaction.c:521 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:525 +#, c-format msgid "Warning: %s%s%s not installed" -msgstr "चेतावनी: %s स्थापित नहीं किया गया\n" +msgstr "चेतावनी: %s%s%s स्थापित नहीं है" -#: app/flatpak-cli-transaction.c:524 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:528 +#, c-format msgid "Error: %s%s%s not installed" -msgstr "%s/%s/%s स्थापित नहीं है" +msgstr "त्रुटि: %s%s%s स्थापित नहीं है" -#: app/flatpak-cli-transaction.c:530 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:534 +#, c-format msgid "Warning: %s%s%s needs a later flatpak version" -msgstr "%s Flatpak के बाद के संस्करण की आवश्यकता है" +msgstr "चेतावनी: %s%s%s को बाद के फ़्लैटपैक संस्करण की आवश्यकता है" -#: app/flatpak-cli-transaction.c:533 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:537 +#, c-format msgid "Error: %s%s%s needs a later flatpak version" -msgstr "%s Flatpak के बाद के संस्करण की आवश्यकता है" +msgstr "त्रुटि: %s%s%s को बाद के फ़्लैटपैक संस्करण की आवश्यकता है" -#: app/flatpak-cli-transaction.c:539 -#, fuzzy +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" -msgstr "इस ऑपरेशन को पूरा करने के लिए अपर्याप्त डिस्क स्थान" +msgstr "चेतावनी: इस ऑपरेशन को पूरा करने के लिए पर्याप्त डिस्क स्थान नहीं है" -#: app/flatpak-cli-transaction.c:541 -#, fuzzy +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" -msgstr "इस ऑपरेशन को पूरा करने के लिए अपर्याप्त डिस्क स्थान" +msgstr "त्रुटि: इस ऑपरेशन को पूरा करने के लिए पर्याप्त डिस्क स्थान नहीं है" -#: app/flatpak-cli-transaction.c:546 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:550 +#, c-format msgid "Warning: %s" -msgstr "चेतावनी: " +msgstr "चेतावनी: %s" -#: app/flatpak-cli-transaction.c:548 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:552 +#, c-format msgid "Error: %s" -msgstr "त्रुटि:" +msgstr "त्रुटि: %s" -#: app/flatpak-cli-transaction.c:563 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:567 +#, c-format msgid "Failed to install %s%s%s: " -msgstr "रीबेस करने में विफल %s को %s: " +msgstr "%s%s%s स्थापित करने में विफल: " -#: app/flatpak-cli-transaction.c:570 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:574 +#, c-format msgid "Failed to update %s%s%s: " -msgstr "करने में विफल %s %s: " +msgstr "%s%s%s को अद्यतन करने में विफल: " -#: app/flatpak-cli-transaction.c:577 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:581 +#, c-format msgid "Failed to install bundle %s%s%s: " -msgstr "रीबेस करने में विफल %s को %s: " +msgstr "बंडल %s%s%s स्थापित करने में विफल: " -#: app/flatpak-cli-transaction.c:584 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:588 +#, c-format msgid "Failed to uninstall %s%s%s: " -msgstr "रीबेस करने में विफल %s को %s: " +msgstr "%s%s%s को अस्थापित करने में विफल: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" -msgstr "रिमोट के लिए प्रमाणीकरण आवश्यक है '%s'\n" +msgstr "रिमोट '%s' के लिए प्रमाणीकरण आवश्यक\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" -msgstr "खुला ब्राउज़र?" +msgstr "ब्राउज़र खोलें?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" -msgstr "लॉगिन आवश्यक रिमोट %s (दायरे %s)\n" +msgstr "लॉगिन आवश्यक रिमोट %s (रियल्म %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "पासवर्ड" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:747 +#, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, in favor of " "%s%s%s branch %s%s%s\n" -msgstr "जानकारी: (पिन किए गए) %s//%s जीवन का अंत है, के पक्ष में %s\n" +msgstr "" +"\n" +"जानकारी: (पिन किया गया) रनटाइम %s%s%s शाखा %s%s%s का जीवन समाप्त हो गया है, " +"%s%s%s शाखा %s%s%s के पक्ष में\n" -#: app/flatpak-cli-transaction.c:749 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:753 +#, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, in favor of %s%s%s branch " "%s%s%s\n" -msgstr "जानकारी: %s//%s जीवन के अंत के पक्ष में है %s\n" +msgstr "" +"\n" +"जानकारी: रनटाइम %s%s%s शाखा %s%s%s का जीवन समाप्त हो गया है, %s%s%s शाखा " +"%s%s%s के पक्ष में\n" -#: app/flatpak-cli-transaction.c:752 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:756 +#, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, in favor of %s%s%s branch " "%s%s%s\n" -msgstr "जानकारी: %s//%s जीवन के अंत के पक्ष में है %s\n" +msgstr "" +"\n" +"जानकारी: ऐप %s%s%s शाखा %s%s%s का जीवन समाप्त हो गया है, %s%s%s शाखा %s%s%s के " +"पक्ष में\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:768 +#, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" -msgstr "जानकारी: (पिन किए गए) %s//%s कारण के साथ जीवन का अंत है:\n" +msgstr "" +"\n" +"जानकारी: (पिन किया गया) रनटाइम %s%s%s शाखा %s%s%s का जीवन समाप्त हो गया है, " +"इसके कारण:\n" -#: app/flatpak-cli-transaction.c:770 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:774 +#, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" -msgstr "जानकारी: %s//%s कारण के साथ जीवन का अंत है:\n" +msgstr "" +"\n" +"जानकारी: रनटाइम %s%s%s शाखा %s%s%s का जीवन समाप्त हो गया है, इसके कारण:\n" -#: app/flatpak-cli-transaction.c:773 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:777 +#, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" -msgstr "जानकारी: %s//%s कारण के साथ जीवन का अंत है:\n" +msgstr "" +"\n" +"जानकारी: ऐप %s%s%s शाखा %s%s%s का जीवन समाप्त हो गया है, इसके कारण:\n" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" -msgstr "इस रनटाइम का उपयोग करने वाले अनुप्रयोग:\n" +msgstr "जानकारी: इस एक्सटेंशन का प्रयोग करने वाले अनुप्रयोग:\n" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" -msgstr "इस रनटाइम का उपयोग करने वाले अनुप्रयोग:\n" +msgstr "सूचना: इस रनटाइम का प्रयोग करने वाले अनुप्रयोग:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" -msgstr "" +msgstr "प्रतिस्थापित करें?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" -msgstr "अद्यतन संस्करण में अपग्रेड करें\n" +msgstr "पुनः आधारित संस्करण में अद्यतन किया जा रहा है\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " -msgstr "रीबेस करने में विफल %s को %s: " - -#: app/flatpak-cli-transaction.c:1009 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "रीबेस करने में विफल %s को %s: " +msgstr "%1$s को %2$s पर पुनः आधार बनाने में विफल: " -#: app/flatpak-cli-transaction.c:1222 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:1265 +#, c-format msgid "New %s%s%s permissions:" -msgstr "नया %s अनुमतियाँ:" +msgstr "नई %s%s%s अनुमतियां:" -#: app/flatpak-cli-transaction.c:1224 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:1267 +#, c-format msgid "%s%s%s permissions:" -msgstr "%s अनुमतियाँ:" +msgstr "%s%s%s अनुमतियां:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "चेतावनी: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" -msgstr "पर" +msgstr "अभि." #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "आंशिक" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" -msgstr "उपयोगकर्ता स्थापना के लिए इन परिवर्तनों के साथ आगे बढ़ें?" +msgstr "उपयोक्ता स्थापना में इन परिवर्तनों के साथ आगे बढ़ें?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" -msgstr "सिस्टम स्थापना के लिए इन परिवर्तनों के साथ आगे बढ़ें?" +msgstr "सिस्टम स्थापना में इन परिवर्तनों के साथ आगे बढ़ें?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" -msgstr "इन बदलावों को करते रहें %s?" +msgstr "%s में इन परिवर्तनों के साथ आगे बढ़ें?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "परिवर्तन पूर्ण।" -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." -msgstr "हटाने पूरा हो गया है।" +msgstr "अस्थापना पूर्ण।" -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "स्थापना पूर्ण।" -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." -msgstr "अद्यतन पूर्ण है।" +msgstr "अद्यतन पूर्ण।" #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" -msgstr "एक या अधिक त्रुटियां हुई हैं" +msgstr "एक या अधिक त्रुटियां थीं" #. translators: please keep the leading space #: app/flatpak-main.c:76 msgid " Manage installed applications and runtimes" -msgstr " इंस्टॉल किए गए एप्लिकेशन और रनटाइम को प्रबंधित करना" +msgstr " स्थापित अनुप्रयोग और रनटाइम को प्रबंधित करें" #: app/flatpak-main.c:77 msgid "Install an application or runtime" -msgstr "ऐप या रनटाइम इंस्टॉल करें" +msgstr "कोई अनुप्रयोग या रनटाइम स्थापित करें" #: app/flatpak-main.c:78 msgid "Update an installed application or runtime" -msgstr "इंस्टॉल किए गए ऐप या रनटाइम को अपडेट करें" +msgstr "स्थापित अनुप्रयोग या रनटाइम को अद्यतित करें" #: app/flatpak-main.c:81 msgid "Uninstall an installed application or runtime" -msgstr "इंस्टॉल किए गए एप्लिकेशन या रनटाइम को अनइंस्टॉल करें" +msgstr "स्थापित अनुप्रयोग या रनटाइम को अस्थापित करें" #: app/flatpak-main.c:84 msgid "Mask out updates and automatic installation" -msgstr "अद्यतन और स्वचालित स्थापना छिपाएँ" +msgstr "अद्यतनों और स्वचालित स्थापना को छिपाएं" #: app/flatpak-main.c:85 msgid "Pin a runtime to prevent automatic removal" -msgstr "स्वचालित विलोपन को रोकने के लिए रनटाइम को पिन करें" +msgstr "स्वत: निष्कासन को रोकने के लिए रनटाइम पिन करें" #: app/flatpak-main.c:86 msgid "List installed apps and/or runtimes" -msgstr "इंस्टॉल किए गए एप्लिकेशन और / या रनटाइम की सूची" +msgstr "स्थापित ऐप्स और/या रनटाइम की सूची बनाएं" #: app/flatpak-main.c:87 msgid "Show info for installed app or runtime" -msgstr "इंस्टॉल किए गए ऐप या रनटाइम के लिए जानकारी दिखाएं" +msgstr "स्थापित ऐप या रनटाइम की जानकारी दिखाएं" #: app/flatpak-main.c:88 msgid "Show history" -msgstr "इतिहास दिखाओ" +msgstr "इतिहास दिखाएं" #: app/flatpak-main.c:89 msgid "Configure flatpak" -msgstr "flatpak कॉन्फ़िगर करें" +msgstr "फ़्लैटपैक विन्यस्त करें" #: app/flatpak-main.c:90 msgid "Repair flatpak installation" -msgstr "flatpak स्थापना की मरम्मत" +msgstr "फ़्लैटपैक स्थापना की मरम्मत करें" #: app/flatpak-main.c:91 msgid "Put applications or runtimes onto removable media" -msgstr "एप्लिकेशन या रनटाइम को हटाने योग्य मीडिया पर रखें" +msgstr "अनुप्रयोग या रनटाइम को हटाने योग्य मीडिया पर रखें" #. translators: please keep the leading newline and space #: app/flatpak-main.c:94 -#, fuzzy msgid "" "\n" " Find applications and runtimes" msgstr "" "\n" -" एप्लिकेशन और रनटाइम्स ढूंढना" +" अनुप्रयोग और रनटाइम खोजें" #: app/flatpak-main.c:95 msgid "Search for remote apps/runtimes" -msgstr "दूरस्थ अनुप्रयोग / रनटाइम ढूँढना" +msgstr "रिमोट ऐप्स/रनटाइम खोजें" #. translators: please keep the leading newline and space #: app/flatpak-main.c:98 -#, fuzzy msgid "" "\n" " Manage running applications" msgstr "" "\n" -" चल रहे अनुप्रयोग" +" चल रहे अनुप्रयोग प्रबंधित करें" #: app/flatpak-main.c:99 msgid "Run an application" -msgstr "एप्लिकेशन लॉन्च करें" +msgstr "एक अनुप्रयोग चलाएं" #: app/flatpak-main.c:100 msgid "Override permissions for an application" -msgstr "एप्लिकेशन अनुमतियां ओवरराइड करें" +msgstr "किसी अनुप्रयोग के लिए अनुमतियां अध्यारोहण करें" #: app/flatpak-main.c:101 msgid "Specify default version to run" -msgstr "चलाने के लिए डिफ़ॉल्ट संस्करण निर्दिष्ट करें" +msgstr "चलाने हेतु तयशुदा संस्करण निर्दिष्ट करें" #: app/flatpak-main.c:102 msgid "Enter the namespace of a running application" -msgstr "किसी चल रहे एप्लिकेशन का नाम स्थान दर्ज करें" +msgstr "चल रहे अनुप्रयोग का नामस्थान दर्ज करें" #: app/flatpak-main.c:103 msgid "Enumerate running applications" -msgstr "अनुप्रयोगों को चलाने की गणना" +msgstr "चल रहे अनुप्रयोगों की गणना करें" #: app/flatpak-main.c:104 msgid "Stop a running application" -msgstr "चल रहा अनुप्रयोग बंद करो" +msgstr "चल रहे अनुप्रयोग को रोकें" #. translators: please keep the leading newline and space #: app/flatpak-main.c:107 @@ -3798,23 +3830,23 @@ msgid "" " Manage file access" msgstr "" "\n" -" फ़ाइल एक्सेस प्रबंधित करें" +" फाइल पहुंच प्रबंधित करें" #: app/flatpak-main.c:108 msgid "List exported files" -msgstr "निर्यात की गई फ़ाइलों की सूची बनाएं" +msgstr "निर्यातित फाइलों की सूची बनाएं" #: app/flatpak-main.c:109 msgid "Grant an application access to a specific file" -msgstr "एक विशिष्ट फ़ाइल के लिए एक आवेदन का उपयोग अनुदान" +msgstr "किसी अनुप्रयोग को किसी विशिष्ट फाइल तक पहुंच प्रदान करें" #: app/flatpak-main.c:110 msgid "Revoke access to a specific file" -msgstr "किसी विशिष्ट फ़ाइल तक पहुंच रद्द करें" +msgstr "किसी विशिष्ट फाइल तक पहुंच रद्द करें" #: app/flatpak-main.c:111 msgid "Show information about a specific file" -msgstr "किसी विशिष्ट फ़ाइल के बारे में जानकारी दिखाएं" +msgstr "किसी विशिष्ट फाइल के बारे में जानकारी दिखाएं" #. translators: please keep the leading newline and space #: app/flatpak-main.c:115 @@ -3823,27 +3855,27 @@ msgid "" " Manage dynamic permissions" msgstr "" "\n" -" गतिशील अनुमतियाँ प्रबंधित करें" +" गतिशील अनुमतियां प्रबंधित करें" #: app/flatpak-main.c:116 msgid "List permissions" -msgstr "सूची की अनुमति" +msgstr "अनुमतियां सूचीबद्ध करें" #: app/flatpak-main.c:117 msgid "Remove item from permission store" -msgstr "अनुमति स्टोर से आइटम निकालें" +msgstr "अनुमति स्टोर से वस्तु हटाएं" #: app/flatpak-main.c:119 msgid "Set permissions" -msgstr "अनुमतियाँ सेट करें" +msgstr "अनुमतियां निर्धारित करें" #: app/flatpak-main.c:120 msgid "Show app permissions" -msgstr "एप्लिकेशन अनुमतियां दिखाएं" +msgstr "ऐप अनुमतियां दिखाएं" #: app/flatpak-main.c:121 msgid "Reset app permissions" -msgstr "एप्लिकेशन अनुमतियां रीसेट करें" +msgstr "ऐप अनुमतियां रीसेट करें" #. translators: please keep the leading newline and space #: app/flatpak-main.c:124 @@ -3852,27 +3884,27 @@ msgid "" " Manage remote repositories" msgstr "" "\n" -" दूरस्थ रिपोजिटरी का प्रबंधन" +" रिमोट रिपॉजिटरी प्रबंधित करें" #: app/flatpak-main.c:125 msgid "List all configured remotes" -msgstr "सभी कॉन्फ़िगर किए गए रिमोट को सूचीबद्ध करें" +msgstr "सभी विन्यस्त रिमोट की सूची बनाएं" #: app/flatpak-main.c:126 msgid "Add a new remote repository (by URL)" -msgstr "नया दूरस्थ रिपॉजिटरी जोड़ें (url द्वारा)" +msgstr "एक नया रिमोट रिपॉजिटरी जोड़ें (URL द्वारा)" #: app/flatpak-main.c:127 msgid "Modify properties of a configured remote" -msgstr "कॉन्फ़िगर किए गए रिमोट के गुणों को संशोधित करें" +msgstr "विन्यस्त रिमोट के गुणों को संशोधित करें" #: app/flatpak-main.c:128 msgid "Delete a configured remote" -msgstr "एक कॉन्फ़िगर किया गया रिमोट हटाएं" +msgstr "विन्यस्त किया गया रिमोट हटाएं" #: app/flatpak-main.c:130 msgid "List contents of a configured remote" -msgstr "कॉन्फ़िगर किए गए रिमोट की सामग्री की सूची बनाएं" +msgstr "कॉन्फिगर रिमोट की अंतर्वस्तु की सूची बनाएं" #: app/flatpak-main.c:131 msgid "Show information about a remote app or runtime" @@ -3885,99 +3917,99 @@ msgid "" " Build applications" msgstr "" "\n" -" अनुप्रयोगों का निर्माण" +" अनुप्रयोग बनाएं" #: app/flatpak-main.c:135 msgid "Initialize a directory for building" -msgstr "निर्माण के लिए एक निर्देशिका पर हस्ताक्षर करें" +msgstr "निर्माण के लिए एक निर्देशिका प्रारंभ करें" #: app/flatpak-main.c:136 msgid "Run a build command inside the build dir" -msgstr "बिल्ड डायरेक्टरी में बिल्ड कमांड को रन करें" +msgstr "निर्माण निर्देशिका के अंदर एक निर्माण कमांड चलाएं" #: app/flatpak-main.c:137 msgid "Finish a build dir for export" -msgstr "निर्यात के लिए बिल्ड डायर समाप्त करें" +msgstr "निर्यात के लिए निर्माण निर्देशिका समाप्त करें" #: app/flatpak-main.c:138 msgid "Export a build dir to a repository" -msgstr "रिपॉजिटरी में बिल्ड डायरेक्टरी को एक्सपोर्ट करना" +msgstr "निर्माण निर्देशिका को रिपोजिटरी में निर्यात करें" #: app/flatpak-main.c:139 msgid "Create a bundle file from a ref in a local repository" -msgstr "एक स्थानीय भंडार में ref से एक बंडल फ़ाइल बनाएँ" +msgstr "स्थानीय रिपॉजिटरी में संदर्भ से एक बंडल फाइल बनाएं" #: app/flatpak-main.c:140 msgid "Import a bundle file" -msgstr "एक बंडल फ़ाइल आयात करें" +msgstr "बंडल फाइल आयात करें" #: app/flatpak-main.c:141 msgid "Sign an application or runtime" -msgstr "किसी एप्लिकेशन या रनटाइम पर हस्ताक्षर करें" +msgstr "अनुप्रयोग या रनटाइम पर हस्ताक्षर करें" #: app/flatpak-main.c:142 msgid "Update the summary file in a repository" -msgstr "एक भंडार में सारांश फ़ाइल अपडेट करें" +msgstr "सारांश फाइल को रिपॉजिटरी में अद्यतन करें" #: app/flatpak-main.c:143 msgid "Create new commit based on existing ref" -msgstr "मौजूदा लिंक के आधार पर एक नई कमिट बनाएं" +msgstr "मौजूदा संदर्भ के आधार पर नई कमिट बनाएं" #: app/flatpak-main.c:144 msgid "Show information about a repo" -msgstr "एक रेपो के बारे में जानकारी दिखाएँ" +msgstr "रेपो के बारे में जानकारी दिखाएं" #: app/flatpak-main.c:161 msgid "Show debug information, -vv for more detail" -msgstr "डीबग जानकारी दिखाएँ, -vv अधिक विवरण के लिए" +msgstr "अधिक विवरण के लिए डिबग जानकारी, -vv दिखाएं" #: app/flatpak-main.c:162 msgid "Show OSTree debug information" -msgstr "OSTree डिबग जानकारी दिखाएं" +msgstr "OSTree डीबग जानकारी दिखाएं" #: app/flatpak-main.c:168 msgid "Print version information and exit" -msgstr "संस्करण की जानकारी प्रिंट करें और बाहर निकलें" +msgstr "संस्करण जानकारी प्रिंट करें और बाहर निकलें" #: app/flatpak-main.c:169 msgid "Print default arch and exit" -msgstr "प्रिंट डिफ़ॉल्ट संग्रह और बाहर निकलें" +msgstr "तयशुदा आर्किटेक्चर प्रिंट करें और बाहर निकलें" #: app/flatpak-main.c:170 msgid "Print supported arches and exit" -msgstr "समर्थित मेहराब और निकास प्रिंट करें" +msgstr "समर्थित आर्किटेक्चर प्रिंट करें और बाहर निकलें" #: app/flatpak-main.c:171 msgid "Print active gl drivers and exit" -msgstr "प्रिंट सक्रिय जीएल ड्राइवरों और बाहर निकलें" +msgstr "सक्रिय gl ड्राइवर प्रिंट करें और बाहर निकलें" #: app/flatpak-main.c:172 msgid "Print paths for system installations and exit" -msgstr "सिस्टम स्थापना और निकास के लिए प्रिंट पथ" +msgstr "सिस्टम स्थापना के लिए पथ प्रिंट करें और बाहर निकलें" #: app/flatpak-main.c:173 msgid "Print the updated environment needed to run flatpaks" -msgstr "flatpaks चलाने के लिए आवश्यक अद्यतन परिवेश को प्रिंट करें" +msgstr "Flatpak चलाने के लिए आवश्यक अद्यतन वातावरण प्रिंट करें" #: app/flatpak-main.c:174 msgid "Only include the system installation with --print-updated-env" -msgstr "केवल --print-updated-env के साथ सिस्टम इंस्टालेशन को शामिल करें" +msgstr "सिस्टम स्थापना को केवल --print-updated-env के साथ शामिल करें" #: app/flatpak-main.c:179 msgid "Work on the user installation" -msgstr "उपयोगकर्ता स्थापना पर काम करें" +msgstr "उपयोक्ता स्थापना पर कार्य करें" #: app/flatpak-main.c:180 msgid "Work on the system-wide installation (default)" -msgstr "सिस्टम-वाइड इंस्टॉलेशन (डिफ़ॉल्ट) पर काम करें" +msgstr "सिस्टम-व्यापी स्थापना पर कार्य करें (तयशुदा)" #: app/flatpak-main.c:181 msgid "Work on a non-default system-wide installation" -msgstr "एक गैर-डिफ़ॉल्ट सिस्टम-वाइड इंस्टॉलेशन पर काम करें" +msgstr "गैर-तयशुदा सिस्टम-व्यापी स्थापना पर कार्य करें" #: app/flatpak-main.c:211 msgid "Builtin Commands:" -msgstr "एम्बेडेड आज्ञा देता है" +msgstr "अंतर्निहित कमांड:" #: app/flatpak-main.c:297 #, c-format @@ -3986,9 +4018,9 @@ msgid "" "XDG_DATA_DIRS environment variable, so applications installed by Flatpak may " "not appear on your desktop until the session is restarted." msgstr "" -"ध्यान दें कि निर्देशिका %s XDG_DATA_DIRS पर्यावरण चर द्वारा निर्धारित खोज पथ में नहीं " -"हैं, इसलिए सत्र प्रारंभ होने तक Flatpak द्वारा स्थापित एप्लिकेशन आपके डेस्कटॉप पर दिखाई " -"नहीं दे सकते हैं।" +"ध्यान दें कि निर्देशिका %s XDG_DATA_DIRS वातावरण चर द्वारा निर्धारित खोज पथ में नहीं " +"हैं, इसलिए Flatpak द्वारा स्थापित किए गए अनुप्रयोग सत्र पुनरारंभ होने तक आपके डेस्कटॉप पर " +"दिखाई नहीं दे सकते हैं।" #: app/flatpak-main.c:311 #, c-format @@ -3997,39 +4029,41 @@ msgid "" "XDG_DATA_DIRS environment variable, so applications installed by Flatpak may " "not appear on your desktop until the session is restarted." msgstr "" -"ध्यान दें कि निर्देशिका %s XDG_DATA_DIRS पर्यावरण चर द्वारा निर्धारित खोज पथ में नहीं " -"है, इसलिए सत्र प्रारंभ होने तक Flatpak द्वारा स्थापित एप्लिकेशन आपके डेस्कटॉप पर दिखाई " -"नहीं दे सकते हैं।" +"ध्यान दें कि निर्देशिका %s XDG_DATA_DIRS वातावरण चर द्वारा निर्धारित खोज पथ में नहीं " +"है, इसलिए Flatpak द्वारा स्थापित किए गए अनुप्रयोग सत्र पुनरारंभ होने तक आपके डेस्कटॉप पर " +"दिखाई नहीं दे सकते हैं।" -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" +"--user के साथ sudo के अंतर्गत कार्य करने से इंकार करना। उपयोक्ता स्थापना पर काम करने के " +"लिए sudo को छोड़ दें, या रूट उपयोक्ता के स्थापना पर काम करने के लिए रूट शेल का प्रयोग करें।" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" -msgstr "एक इंस्टालेशन पर काम करने वाले कमांड के लिए निर्दिष्ट कई इंस्टॉलेशन" +msgstr "एक कमांड के लिए एकाधिक स्थापना निर्दिष्ट हैं जो एक स्थापना पर काम करता है" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" -msgstr "ले देख '%s --help'" +msgstr "'%s --help' देखें" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" -msgstr "'%s' एक flatpak कमांड नहीं है। क्या आपका मतलब है '%s%s'?" +msgstr "'%s' एक flatpak कमांड नहीं है। क्या आपका मतलब '%s%s' था?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" -msgstr "'%s' एक flatpak कमांड नहीं है" +msgstr "'%s' flatpak कमांड नहीं है" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" -msgstr "कोई कमांड निर्दिष्ट" +msgstr "कोई कमांड निर्दिष्ट नहीं" #: app/flatpak-main.c:976 msgid "error:" @@ -4038,68 +4072,68 @@ msgstr "त्रुटि:" #: app/flatpak-quiet-transaction.c:77 #, c-format msgid "Installing %s\n" -msgstr "स्थापना %s\n" +msgstr "%s स्थापित किया जा रहा है\n" #: app/flatpak-quiet-transaction.c:81 #, c-format msgid "Updating %s\n" -msgstr "अद्यतन कर रहा है %s\n" +msgstr "%s को अद्यतित किया जा रहा है\n" #: app/flatpak-quiet-transaction.c:85 #, c-format msgid "Uninstalling %s\n" -msgstr "स्थापना रद्द करना %s\n" +msgstr "%s को अस्थापित किया जा रहा है\n" #: app/flatpak-quiet-transaction.c:107 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to install %s: %s\n" -msgstr "चेतावनी: करने में विफल %s %s: %s\n" +msgstr "चेतावनी: %s स्थापित करने में विफल: %s\n" #: app/flatpak-quiet-transaction.c:110 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to install %s: %s\n" -msgstr "त्रुटि: करने में विफल %s %s: %s\n" +msgstr "त्रुटि: %s स्थापित करने में विफल: %s\n" #: app/flatpak-quiet-transaction.c:116 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to update %s: %s\n" -msgstr "चेतावनी: करने में विफल %s %s: %s\n" +msgstr "चेतावनी: %s को अद्यतन करने में विफल: %s\n" #: app/flatpak-quiet-transaction.c:119 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to update %s: %s\n" -msgstr "त्रुटि: करने में विफल %s %s: %s\n" +msgstr "त्रुटि: %s को अद्यतन करने में विफल: %s\n" #: app/flatpak-quiet-transaction.c:125 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to install bundle %s: %s\n" -msgstr "चेतावनी: करने में विफल %s %s: %s\n" +msgstr "चेतावनी: बंडल %s स्थापित करने में विफल: %s\n" #: app/flatpak-quiet-transaction.c:128 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to install bundle %s: %s\n" -msgstr "त्रुटि: करने में विफल %s %s: %s\n" +msgstr "त्रुटि: बंडल %s स्थापित करने में विफल: %s\n" #: app/flatpak-quiet-transaction.c:134 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to uninstall %s: %s\n" -msgstr "चेतावनी: करने में विफल %s %s: %s\n" +msgstr "चेतावनी: %s को अस्थापित करने में विफल: %s\n" #: app/flatpak-quiet-transaction.c:137 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to uninstall %s: %s\n" -msgstr "त्रुटि: करने में विफल %s %s: %s\n" +msgstr "त्रुटि: %s को अस्थापित करने में विफल: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" -msgstr "%s पहले से स्थापित" +msgstr "%s पहले से ही स्थापित है" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s स्थापित नहीं है" @@ -4107,1549 +4141,1639 @@ msgstr "%s स्थापित नहीं है" #: app/flatpak-quiet-transaction.c:170 #, c-format msgid "%s needs a later flatpak version" -msgstr "%s Flatpak के बाद के संस्करण की आवश्यकता है" +msgstr "%s को बाद के flatpak संस्करण की आवश्यकता है" #: app/flatpak-quiet-transaction.c:172 msgid "Not enough disk space to complete this operation" -msgstr "इस ऑपरेशन को पूरा करने के लिए अपर्याप्त डिस्क स्थान" +msgstr "इस अभियान को पूरा करने के लिए पर्याप्त डिस्क स्थान नहीं है" #: app/flatpak-quiet-transaction.c:239 #, c-format msgid "Info: %s is end-of-life, in favor of %s\n" -msgstr "जानकारी: %s जीवन का अंत, पक्ष में %s\n" +msgstr "जानकारी: %s जीवन समाप्ति पर है, %s के पक्ष में\n" #: app/flatpak-quiet-transaction.c:241 #, c-format msgid "Info: %s is end-of-life, with reason: %s\n" -msgstr "जानकारी: %s यह जीवन का अंत है, कारणों से: %s\n" +msgstr "जानकारी: %s जीवन समाप्ति पर है, इसका कारण: %s\n" #: app/flatpak-quiet-transaction.c:251 #, c-format msgid "Failed to rebase %s to %s: %s\n" -msgstr "रीबेस करने में विफल %s पर %s: %s\n" - -#: app/flatpak-quiet-transaction.c:264 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "रीबेस करने में विफल %s पर %s: %s\n" +msgstr "%1$s को %2$s पर पुनः आधार बनाने में विफल: %3$s\n" #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" -msgstr "प्रमाणीकरणकर्ता रिमोट के लिए कॉन्फ़िगर नहीं किया गया है `%s`" +msgstr "रिमोट `%s` के लिए कोई प्रमाणक विन्यस्त नहीं किया गया" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" -msgstr "अज्ञात शेयर प्रकार %s, मान्य प्रकार हैं: %s" +msgstr "अज्ञात साझा प्रकार %s, मान्य प्रकार हैं: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "अज्ञात नीति प्रकार %s, मान्य प्रकार हैं: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" -msgstr "अमान्य dbus नाम %s" +msgstr "अमान्य डी-बस नाम %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "अज्ञात सॉकेट प्रकार %s, मान्य प्रकार हैं: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "अज्ञात डिवाइस प्रकार %s, मान्य प्रकार हैं: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" -msgstr "अज्ञात सुविधा प्रकार %s, मान्य प्रकार हैं: %s" +msgstr "अज्ञात विशेषता प्रकार %s, मान्य प्रकार हैं: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" -msgstr "फाइलसिस्टम स्थान \"%s\" शामिल \"..\"" +msgstr "फाइलप्रणाली स्थान \"%s\" में \"..\" शामिल है" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" -"--filesystem=/ उपलब्ध नहीं है, समान परिणाम के लिए --filesystem = होस्ट का उपयोग करें" +"--filesystem=/ उपलब्ध नहीं है, समान परिणाम के लिए --filesystem=host का प्रयोग करें" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" "etc, home, xdg-*[/…], ~/dir, /dir" msgstr "" -"अज्ञात फ़ाइल सिस्टम स्थान %s, मान्य स्थान हैं: होस्ट, होस्ट-ओएस, होस्ट-आदि, घर, xdg-" +"अज्ञात फाइलप्रणाली स्थान %s, मान्य स्थान हैं: host, host-os, host-etc, home, xdg-" "*[/…], ~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" -msgstr "अमान्य env प्रारूप %s" +msgstr "अमान्य वातावरण प्रारूप %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" -msgstr "पर्यावरण पर नाम में नहीं होना चाहिए '=': %s" +msgstr "वातावरण चर नाम में '=' नहीं होना चाहिए: %s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" -msgstr "--add-policy तर्क SUBSYSTEM.KEY=VALUE के रूप में होना चाहिए" +msgstr "--add-policy तर्क SUBSYSTEM.KEY=VALUE के रूप में होने चाहिए" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" -msgstr "--add-policy मान इसके साथ शुरू नहीं हो सकते \"!\"" +msgstr "--add-policy मान \"!\" से प्रारंभ नहीं हो सकते" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" -msgstr "--remove-policy तर्क SUBSYSTEM.KEY=VALUE . रूप में होने चाहिए" +msgstr "--remove-policy तर्क SUBSYSTEM.KEY=VALUE के रूप में होने चाहिए" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" -msgstr "--remove-policy मान से प्रारंभ नहीं हो सकते" +msgstr "--remove-policy मान \"!\" से प्रारंभ नहीं हो सकते" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" -msgstr "मेजबान के साथ साझा करें" +msgstr "होस्ट के साथ साझा करें" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" -msgstr "शेयर" +msgstr "साझा करें" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" -msgstr "होस्ट के साथ अनशेयर करें" +msgstr "होस्ट के साथ साझाकरण रद्द करें" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" -msgstr "ऐप को सॉकेट एक्सपोज़ करें" +msgstr "सॉकेट को ऐप के संपर्क में लाएं" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "सॉकेट" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" -msgstr "एप्लिकेशन को सॉकेट उजागर न करें" +msgstr "सॉकेट को ऐप के संपर्क में लाएं" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" -msgstr "एप्लिकेशन को उपकरण दिखाएं" +msgstr "डिवाइस को ऐप के संपर्क में लाएं" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" -msgstr "डिवाइस" +msgstr "उपकरण" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" -msgstr "डिवाइस को ऐप में उजागर न करें" +msgstr "डिवाइस को ऐप के संपर्क में न लाएं" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" -msgstr "सुविधा की अनुमति दें" +msgstr "विशेषता को अनुमति दें" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" -msgstr "सुविधा" +msgstr "विशेषता" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" -msgstr "सुविधा की अनुमति न दें" +msgstr "विशेषता को अनुमति न दें" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" -msgstr "एप्लिकेशन के लिए फाइल सिस्टम को उजागर करें (:केवल पढ़ने के लिए ro)" +msgstr "फाइलप्रणाली को ऐप में उजागर करें (: केवल पढ़ने के लिए ro)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" -msgstr "फाइल सिस्टम[:ro]" +msgstr "फाइलप्रणाली[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" -msgstr "एप्लिकेशन के लिए फ़ाइल सिस्टम को उजागर न करें" +msgstr "ऐप के सामने फाइलप्रणाली को उजागर न करें" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" -msgstr "फाइल सिस्टम" +msgstr "फाइलप्रणाली" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" -msgstr "पर्यावरण चर सेट करें" +msgstr "वातावरण चर निर्धारित करें" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" -msgstr "VAR=VALUE" +msgstr "चर=मान" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" -msgstr "एफडी से पर्यावरण चर env -0 प्रारूप में पढ़ें" +msgstr "FD से env -0 प्रारूप में वातावरण चर पढ़ें" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "FD" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" -msgstr "पर्यावरण से चर निकालें" +msgstr "वातावरण से चर हटाएं" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" -msgstr "VAR" +msgstr "चर" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" -msgstr "सत्र बस में ऐप को स्वयं के नाम की अनुमति दें" +msgstr "ऐप को सत्र बस में अपना नाम रखने की अनुमति दें" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" -msgstr "DBUS_नाम" +msgstr "DBUS_NAME" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" -msgstr "सत्र बस में नाम करने के लिए बात करने के लिए एप्लिकेशन की अनुमति दें" +msgstr "ऐप को सत्र बस में नाम से बात करने की अनुमति दें" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" -msgstr "सत्र बस में नाम पर बात करने के लिए एप्लिकेशन को अनुमति न दें" +msgstr "ऐप को सत्र बस में नाम से बात करने की अनुमति न दें" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" -msgstr "एप्लिकेशन को सिस्टम बस पर स्वयं के नाम की अनुमति दें" +msgstr "ऐप को सिस्टम बस पर अपना नाम रखने की अनुमति दें" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" -msgstr "एप्लिकेशन को सिस्टम बस में नाम से बात करने की अनुमति दें" +msgstr "ऐप को सिस्टम बस पर नाम से बात करने की अनुमति दें" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" -msgstr "सिस्टम बस में नाम से बात करने से आवेदन को रोकें" +msgstr "ऐप को सिस्टम बस पर नाम से बात करने की अनुमति न दें" + +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "ऐप को सिस्टम बस पर अपना नाम रखने की अनुमति दें" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1690 msgid "Add generic policy option" -msgstr "जेनेरिक पॉलिसी विकल्प जोड़ें" +msgstr "सामान्य नीति विकल्प जोड़ें" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "SUBSYSTEM.KEY=VALUE" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" -msgstr "जेनेरिक पॉलिसी का विकल्प निकालें" +msgstr "सामान्य नीति विकल्प हटाएं" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "उप निर्देशिका को घर निर्देशिका में सहेजें" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" -msgstr "फ़ाइल का नाम" +msgstr "फाइलनाम" + +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "गृह निर्देशिका उपपथ जारी रखें" #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" -msgstr "वर्तमान सत्र (कोई [cgroups] निर्माण) की आवश्यकता नहीं है" +msgstr "किसी चालू सत्र की आवश्यकता नहीं है (कोई cgroups निर्माण नहीं)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" -msgstr "" +msgstr "\"%s\" को tmpfs से प्रतिस्थापित नहीं किया जा रहा है: %s" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" -msgstr "" +msgstr "सैंडबॉक्स के साथ \"%s\" साझा नहीं किया जा रहा: %s" #. Even if the error is one that we would normally silence, like #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" -msgstr "" +msgstr "गृह निर्देशिका तक पहुंच की अनुमति नहीं: %s" -#: common/flatpak-context.c:2828 -#, fuzzy, c-format +#: common/flatpak-context.c:3150 +#, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" -msgstr "परिनियोजन निर्देशिका बनाने में असमर्थ" +msgstr "सैंडबॉक्स में अस्थायी गृह निर्देशिका प्रदान करने में असमर्थ: %s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" -msgstr "कॉन्फ़िगर किया गया संग्रह आईडी ‘%s’ सारांश फ़ाइल में नहीं" +msgstr "विन्यस्त संग्रह ID ‘%s’ सारांश फाइल में नहीं है" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" -msgstr "रिमोट से सारांश लोड करने में असमर्थ %s: %s" +msgstr "रिमोट %s से सारांश लोड करने में असमर्थ: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" -msgstr "ऐसी कोई कड़ी नहीं '%s' रिमोट में %s" +msgstr "रिमोट %2$s में ऐसा कोई संदर्भ '%1$s' नहीं है" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 #, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " -msgstr "के लिए कोई प्रविष्टि नहीं %s रिमोट में '%s' सारांश flatpak कैश " +msgid "No entry for %s in remote %s summary flatpak cache" +msgstr "रिमोट %2$s सारांश flatpak कैशे में %1$s के लिए कोई प्रविष्टि नहीं" -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" -msgstr "रिमोट के लिए कोई सारांश या flatpak कैश उपलब्ध नहीं है %s" +msgstr "रिमोट %s के लिए कोई सारांश या Flatpak कैशे उपलब्ध नहीं है" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "के लिए कोई प्रविष्टि नहीं %s रिमोट में '%s' सारांश कैश " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" -msgstr "दूरस्थ के लिए सारांश में xa.data गुम %s" +msgstr "रिमोट %s के सारांश में xa.data गुम है" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" -msgstr "असमर्थित सारांश संस्करण %d रिमोट के लिए %s" +msgstr "रिमोट %2$s के लिए असमर्थित सारांश संस्करण %1$d" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" -msgstr "रिमोट ओसीआई सूचकांक कोई रजिस्ट्री यूआरआई है" +msgstr "रिमोट OCI सूचकांक में कोई रजिस्ट्री URI नहीं है" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" -msgstr "लिंक नहीं मिला %s रिमोट में %s" +msgstr "रिमोट %2$s में संदर्भ %1$s नहीं मिल सका" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" -msgstr "छवि एक प्रकट नहीं है" +msgstr "छवि मैनिफेस्ट नहीं है" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" -msgstr "प्रतिबद्ध के पास अनुरोधित लिंक नहीं है ‘%s’ रेफरी बाध्यकारी मेटाडाटा में" +msgstr "संदर्भ बाइंडिंग मेटाडेटा में कमिट ने संदर्भ ‘%s’ का कोई अनुरोध नहीं किया है" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" -msgstr "कॉन्फ़िगर किया गया संग्रह आईडी ‘%s’ मेटाडेटा को बाध्य करने में नहीं" +msgstr "विन्यस्त संग्रह ID ‘%s’ बाइंडिंग मेटाडेटा में नहीं है" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" -msgstr "रेफरी के लिए नवीनतम चेकसम नहीं मिला %s रिमोट में %s" +msgstr "रिमोट %2$s में संदर्भ %1$s के लिए नवीनतम चेकसम नहीं मिल सका" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 -#, fuzzy, c-format +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 +#, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" -msgstr "के लिए कोई प्रविष्टि नहीं %s दूरस्थ सारांश में flatpak विरल कैश " +msgstr "रिमोट %2$s सारांश flatpak स्पार्स कैशे में %1$s के लिए कोई प्रविष्टि नहीं" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" -msgstr "के लिए मेटा डेटा कमिट %s अपेक्षित मेटाडेटा से मेल नहीं खाता है" +msgstr "%s के लिए कमिट मेटाडेटा अपेक्षित मेटाडेटा से मेल नहीं खा रहा है" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" -msgstr "सिस्टम बस से कनेक्ट करने में असमर्थ" +msgstr "सिस्टम बस से जुड़ने में असमर्थ" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" -msgstr "उपयोगकर्ता स्थापना" +msgstr "उपयोक्ता स्थापना" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" -msgstr "प्रणाली (%s) स्थापना" +msgstr "सिस्टम (%s) स्थापना" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" -msgstr "कोई ओवरराइड नहीं मिला %s" +msgstr "%s के लिए कोई अध्यारोहण नहीं मिला" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" -msgstr "%s (प्रतिबद्ध %s) स्थापित नहीं है" +msgstr "%s (कमिट %s) स्थापित नहीं है" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" -msgstr "पार्स करने में त्रुटि प्रणाली के लिए [flatpakrepo] फ़ाइल %s: %s" +msgstr "%s के लिए सिस्टम flatpakrepo फाइल का विश्लेषण करने में त्रुटि: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " -msgstr "रिपॉजिटरी खोलते समय %s: " +msgstr "रिपॉजिटरी %s खोलते समय: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" -msgstr "विन्यास कुंजी %s सेट नहीं है" +msgstr "विन्यास कुंजी %s निर्धारित नहीं है" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" -msgstr "कोई करंट नहीं %s पैटर्न मिलान %s" +msgstr "%2$s से मेल खाता कोई वर्तमान %1$s प्रतिमान नहीं" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" -msgstr "कोई appstream को तैनात करने के लिए प्रतिबद्ध" +msgstr "परिनियोजन के लिए कोई ऐपस्ट्रीम कमिट नहीं है" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" -msgstr "अविश्वसनीय गैर- gpg सत्यापित रिमोट से नहीं खींच सकते" +msgstr "अविश्वसनीय गैर-जीपीजी सत्यापित रिमोट से नहीं खींच सकते" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" -msgstr "गैर-gpg-सत्यापित स्थानीय सिस्टम इंस्टॉल किए जाने के लिए समर्थित नहीं अतिरिक्त डेटा" +msgstr "गैर-जीपीजी-सत्यापित स्थानीय सिस्टम स्थापना के लिए अतिरिक्त डेटा समर्थित नहीं है" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" -msgstr "अतिरिक्त डेटा uri के लिए अमान्य चेकसम %s" +msgstr "अतिरिक्त डेटा URI %s के लिए अमान्य चेकसम" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" -msgstr "अतिरिक्त डेटा uri के लिए खाली नाम %s" +msgstr "अतिरिक्त डेटा URI %s के लिए खाली नाम" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" -msgstr "असमर्थित अतिरिक्त डेटा uri %s" +msgstr "असमर्थित अतिरिक्त डेटा URI %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" -msgstr "स्थानीय अतिरिक्त डेटा लोड करने में विफल %s: %s" +msgstr "स्थानीय अतिरिक्त डेटा %s लोड करने में विफल: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" -msgstr "अतिरिक्त डेटा के लिए गलत आकार %s" +msgstr "अतिरिक्त डेटा %s के लिए गलत आकार" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " -msgstr "डाउनलोड करते समय %s: " +msgstr "%s डाउनलोड करते समय: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" -msgstr "अतिरिक्त डेटा के लिए गलत आकार %s" +msgstr "अतिरिक्त डेटा %s के लिए गलत आकार" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" -msgstr "अतिरिक्त डेटा के लिए अमान्य चेकसम %s" +msgstr "अतिरिक्त डेटा %s के लिए अमान्य चेकसम" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" -msgstr "%s प्रतिबद्ध है %s पहले से स्थापित" +msgstr "%1$s कमिट %2$s पहले से ही स्थापित है" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " -msgstr "खींचते समय %s रिमोट से %s: " +msgstr "रिमोट %2$s से %1$s खींचते समय: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" -msgstr "GPG हस्ताक्षर पाए गए, लेकिन कोई भी विश्वसनीय कीरिंग में नहीं हैं" +msgstr "GPG हस्ताक्षर मिले, लेकिन विश्वसनीय कीरिंग में कोई भी नहीं है" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" -msgstr "के लिए प्रतिबद्ध ‘%s’ [REF] के लिए कोई बाध्यकारी नहीं है" +msgstr "‘%s’ के लिए प्रतिबद्धता में कोई संदर्भ बंधन नहीं है" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" -msgstr "के लिए प्रतिबद्ध है ‘%s’ में बंधे की उम्मीद नहीं है कड़ियाँ: %s" +msgstr "‘%s’ के लिए कमिट अपेक्षित बाध्य संदर्भ में नहीं है: %s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" -msgstr "केवल ऐप्स ही अपडेट किए जा सकते हैं" +msgstr "केवल अनुप्रयोगों को वर्तमान बनाया जा सकता है" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" -msgstr "पर्याप्त स्मृति नहीं" +msgstr "पर्याप्त मेमोरी नहीं" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" -msgstr "निर्यात की गई फ़ाइल से पढ़ने में विफल" +msgstr "निर्यात की गई फाइल से पढ़ने में विफल" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" -msgstr "Mimetype xml फ़ाइल पढ़ने में त्रुटि" +msgstr "माइमटाइप xml फाइल पढ़ने में त्रुटि" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" -msgstr "अमान्य mimetype xml फ़ाइल" +msgstr "अमान्य माइमटाइप xml फाइल" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" -msgstr "[D-Bus] सेवा फ़ाइल '%s' गलत नाम है" +msgstr "डी-बस सेवा फाइल '%s' का नाम गलत है" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "अमान्य निष्पादन तर्क %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " -msgstr "अलग होने के दौरान मेटाडेटा: " +msgstr "पृथक मेटाडेटा प्राप्त करते समय: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" -msgstr "अतिरिक्त मेटाडेटा में अनुपलब्ध डेटा" +msgstr "पृथक मेटाडेटा में अतिरिक्त डेटा गायब है" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " -msgstr "extradir बनाते समय: " +msgstr "अतिरिक्त निर्देशिका बनाते समय: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "अतिरिक्त डेटा के लिए अमान्य चेकसम" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "अतिरिक्त डेटा के लिए गलत आकार" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " -msgstr "अतिरिक्त डेटा फ़ाइल लिखते समय '%s': " +msgstr "अतिरिक्त डेटा फाइल '%s' लिखते समय: " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" -msgstr "अतिरिक्त डेटा %s अलग मेटाडाटा में लापता" +msgstr "पृथक मेटाडेटा में अतिरिक्त डेटा %s गायब है" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" -msgstr "apply_extra स्क्रिप्ट विफल, स्थिति से बाहर निकलें %d" +msgstr "apply_extra स्क्रिप्ट विफल, निकास स्थिति %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" -msgstr "इंस्टॉल %s आपके व्यवस्थापक द्वारा निर्धारित नीति द्वारा अनुमति नहीं है" +msgstr "आपके प्रशासक द्वारा निर्धारित नीति के अनुसार %s स्थापित करने की अनुमति नहीं है" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " -msgstr "जब अनुमति देने के लिए कोशिश कर रहा ref %s: " +msgstr "संदर्भ %s को हल करने का प्रयास करते समय: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s उपलब्ध नहीं है" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" -msgstr "परिनियोजन निर्देशिका बनाने में असमर्थ" +msgstr "परिनियोजन निर्देशिका नहीं बना सके" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " -msgstr "प्रतिबद्ध पढ़ने में विफल %s: " +msgstr "कमिट %s को पढ़ने में विफल: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " -msgstr "जब एक आदेश देने की कोशिश की जा रही है %s में %s: " +msgstr "%1$s को %2$s में चेकआउट करने का प्रयास करते समय: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " -msgstr "मेटाडेटा उपपथ की जांच करने की कोशिश करते हुए: " +msgstr "मेटाडेटा उपपथ को चेकआउट करने का प्रयास करते समय: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " -msgstr "सब-पाथ चेकआउट करने की कोशिश में ‘%s’: " +msgstr "उपपथ ‘%s’ को चेकआउट करने का प्रयास करते समय: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " -msgstr "मौजूदा अतिरिक्त निर्देशिका को निकालने का प्रयास करते समय: " +msgstr "मौजूदा अतिरिक्त निर्देशिका को हटाने की कोशिश करते समय: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " -msgstr "अतिरिक्त डेटा को लागू करने का प्रयास करते समय: " +msgstr "अतिरिक्त डेटा लागू करने का प्रयास करते समय: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " -msgstr "अमान्य प्रतिबद्ध संदर्भ %s: " +msgstr "अमान्य कमिट संदर्भ %s: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" -msgstr "विस्तृ लिंक %s कमिट से मेल नहीं खाता (%s)" +msgstr "परिनियोजित संदर्भ %s कमिट (%s) से मेल नहीं खाता" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" -msgstr "तैनात ref %s शाखा प्रतिबद्ध से मेल नहीं खाती (%s)" +msgstr "परिनियोजित संदर्भ %s शाखा कमिट (%s) से मेल नहीं खाती" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" -msgstr "%s डाली %s पहले से स्थापित" +msgstr "%1$s शाखा %2$s पहले से ही स्थापित है" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " -msgstr "सकता है पर नहीं अनमाउंट revokefs-फ्यूज फाइल सिस्टम %s: " +msgstr "%s पर revokefs-fuse फाइलप्रणाली को अनमाउंट नहीं किया जा सका: " -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" -msgstr "का यह संस्करण %s पहले से ही स्थापित किया गया है" +msgstr "%s का यह संस्करण पहले से ही स्थापित है" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" -msgstr "पैकेज की स्थापना के दौरान रिमोट को बदल नहीं सकते" +msgstr "बंडल स्थापना के दौरान रिमोट नहीं बदला जा सकता" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" -msgstr "रूट विशेषाधिकार के बिना विशिष्ट प्रतिबंध में अपग्रेड करने में असमर्थ" +msgstr "रूट अनुमतियों के बिना किसी विशिष्ट कमिट में अद्यतन नहीं किया जा सकता" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" -msgstr "निकाल नहीं सकते %s, यह आवश्यक है: %s" +msgstr "%s को हटाया नहीं जा सकता, इसकी आवश्यकता है: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" -msgstr "%s डाली %s स्थापित नहीं किया गया" +msgstr "%1$s शाखा %2$s स्थापित नहीं है" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" -msgstr "%s प्रतिबद्ध है %s स्थापित नहीं है" +msgstr "%1$s कमिट %2$s स्थापित नहीं है" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" -msgstr "प्रूनिंग रेपो विफल: %s" +msgstr "रेपो छंटाई विफल: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" -msgstr "फ़िल्टर लोड करने में विफल '%s'" +msgstr "'%s' फिल्टर लोड करने में विफल" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" -msgstr "फ़िल्टर पार्स करने में विफल '%s'" +msgstr "'%s' फिल्टर का विश्लेषण करने में विफल" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " -msgstr "सारांश कैश लिखने में विफल: " +msgstr "सारांश कैशे लिखने में विफल: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" -msgstr "रिमोट के लिए कैश नहीं oci सारांश '%s'" +msgstr "रिमोट '%s' के लिए कोई oci सारांश कैशे नहीं किया गया" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" -msgstr "रिमोट के लिए कोई कैश्ड सारांश नहीं '%s'" +msgstr "रिमोट '%s' के लिए कोई कैश्ड सारांश नहीं" -#: common/flatpak-dir.c:12124 -#, fuzzy, c-format +#: common/flatpak-dir.c:12291 +#, c-format msgid "Invalid checksum for indexed summary %s read from %s" -msgstr "अनुक्रमित सारांश के लिए अमान्य चेकसम %s रिमोट के लिये '%s'" +msgstr "%2$s से पढ़े गए अनुक्रमित सारांश %1$s के लिए अमान्य चेकसम" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " "URL passed to remote-add was valid." msgstr "" -"के लिए दूरस्थ सूची %s उपलब्ध नहीं है; सर्वर में कोई सारांश फ़ाइल नहीं है। रिमोट-ऐड में पास " -"किया गया URL मान्य था।" +"%s के लिए रिमोट सूची उपलब्ध नहीं है; सर्वर में कोई सारांश फाइल नहीं है। जांचें कि remote-" +"add को दिया गया URL मान्य था।" -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" -msgstr "अनुक्रमित सारांश के लिए अमान्य चेकसम %s रिमोट के लिये '%s'" +msgstr "रिमोट '%2$s' के लिए अनुक्रमित सारांश %1$s के लिए अमान्य चेकसम" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " -msgstr "के लिए कई शाखाएँ उपलब्ध हैं %s, आपको एक निर्दिष्ट करना होगा: " +msgstr "%s के लिए एकाधिक शाखाएं उपलब्ध हैं, आपको इनमें से एक निर्दिष्ट करना होगा: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" -msgstr "कुछ भी मेल नहीं खाता %s" +msgstr "%s से कुछ भी मेल नहीं खाता" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" -msgstr "रेफरी नहीं मिल रहा %s%s%s%s%s" +msgstr "संदर्भ %s%s%s%s%s नहीं मिल सका" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" -msgstr "रिमोट खोजने में त्रुटि %s: %s" +msgstr "रिमोट %s को खोजने में त्रुटि: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" -msgstr "स्थानीय रिपॉजिटरी खोजने में त्रुटि: %s" +msgstr "स्थानीय रिपोजिटरी खोजने में त्रुटिः %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s स्थापित नहीं है" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" -msgstr "स्थापना नहीं मिल सकी %s" +msgstr "स्थापना %s नहीं मिल सकी" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" -msgstr "अमान्य फ़ाइल प्रारूप, नहीं %s समूह" +msgstr "अमान्य फाइल प्रारूप, कोई %s समूह नहीं" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "अमान्य संस्करण %s, केवल 1 समर्थित" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" -msgstr "अमान्य फ़ाइल प्रारूप, नहीं %s निर्दिष्ट" +msgstr "अमान्य फाइल प्रारूप, कोई %s निर्दिष्ट नहीं" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" -msgstr "अमान्य फ़ाइल प्रारूप, gpg कुंजी अमान्य है" +msgstr "अमान्य फाइल प्रारूप, gpg कुंजी अमान्य" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" -msgstr "संग्रह आईडी के लिए GPG कुंजी प्रदान करनी होगी" +msgstr "संग्रह ID के लिए GPG कुंजी प्रदान करना आवश्यक है" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" -msgstr "रनटाइम %s, डाली %s पहले से ही स्थापित किया गया है" +msgstr "रनटाइम %s, शाखा %s पहले से ही स्थापित है" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" -msgstr "ऐप %s, डाली %s पहले से स्थापित है" +msgstr "ऐप %s, शाखा %s पहले से ही स्थापित है" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" -msgstr "रिमोट नहीं निकाल सकते '%s' स्थापित रेफरी के साथ %s (कम से कम)" +msgstr "स्थापित संदर्भ %2$s के साथ रिमोट '%1$s' को नहीं हटाया जा सकता (कम से कम)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" -msgstr "दूरस्थ नाम में अमान्य वर्ण '/': %s" +msgstr "रिमोट नाम में अमान्य वर्ण '/': %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" -msgstr "रिमोट के लिए कोई कॉन्फ़िगरेशन नहीं %s संकेत दिया" +msgstr "रिमोट %s के लिए कोई विन्यास निर्दिष्ट नहीं है" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" -msgstr "आईना रेफरी को स्किप करना (%s, %s)…\n" +msgstr "मिरर संदर्भ का विलोपन छोड़ा जा रहा है (%s, %s)…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" -msgstr "" +msgstr "एक पूर्ण पथ की आवश्यकता है" -#: common/flatpak-exports.c:923 -#, fuzzy, c-format +#: common/flatpak-exports.c:933 +#, c-format msgid "Unable to open path \"%s\": %s" -msgstr "अपडेट करने में असमर्थ %s: %s\n" +msgstr "पथ \"%s\" खोलने में असमर्थ: %s" -#: common/flatpak-exports.c:930 -#, fuzzy, c-format +#: common/flatpak-exports.c:940 +#, c-format msgid "Unable to get file type of \"%s\": %s" -msgstr "सिंक पाइप बनाने में असमर्थ" +msgstr "\"%s\" का फाइल प्रकार प्राप्त करने में असमर्थ: %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" -msgstr "" +msgstr "फाइल \"%s\" में असमर्थित प्रकार 0o%o है" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" -msgstr "" +msgstr "\"%s\" के लिए फाइलप्रणाली जानकारी प्राप्त करने में असमर्थ: %s" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" -msgstr "" +msgstr "अवरुद्ध autofs पथ \"%s\" को अनदेखा किया जा रहा है" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" -msgstr "" +msgstr "पथ \"%s\" Flatpak द्वारा आरक्षित है" -#: common/flatpak-exports.c:1051 -#, fuzzy, c-format +#: common/flatpak-exports.c:1061 +#, c-format msgid "Unable to resolve symbolic link \"%s\": %s" -msgstr "अपडेट करने में असमर्थ %s: %s\n" +msgstr "प्रतीकात्मक लिंक \"%s\" का समाधान करने में असमर्थ: %s" + +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "ख़ाली स्ट्रिंग एक संख्या नहीं है" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "“%s” एक अहस्ताक्षरित संख्या नहीं है" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "संख्या “%s” सीमा से बाहर है [%s, %s]" -#: common/flatpak-installation.c:831 +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "संदर्भ %s स्थापित नहीं है" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" -msgstr "ऐप %s स्थापित नहीं है" +msgstr "ऐप %s स्थापित नहीं हुआ" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" -msgstr "रिमोट '%s' पहले से ही मौजूद है" +msgstr "रिमोट '%s' पहले से मौजूद है" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" -msgstr "के रूप में अनुरोध किया, %s केवल खींचा गया था, लेकिन स्थापित नहीं किया गया था" +msgstr "जैसा कि अनुरोध किया गया था, %s को केवल खींचा गया, लेकिन स्थापित नहीं किया गया" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 -#, fuzzy, c-format +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 +#, c-format msgid "Unable to create directory %s" -msgstr "सिंक पाइप बनाने में असमर्थ" +msgstr "निर्देशिका %s बनाने में असमर्थ" -#: common/flatpak-instance.c:529 -#, fuzzy, c-format +#: common/flatpak-instance.c:554 +#, c-format msgid "Unable to lock %s" -msgstr "कुंजी आईडी नहीं मिल रही है %s: %d)" +msgstr "%s को लॉक करने में असमर्थ" -#: common/flatpak-instance.c:581 -#, fuzzy, c-format -msgid "Unable to open directory %s" -msgstr "सिस्टम बस से कनेक्ट करने में असमर्थ" - -#: common/flatpak-instance.c:607 -#, fuzzy, c-format +#: common/flatpak-instance.c:627 +#, c-format msgid "Unable to create temporary directory in %s" -msgstr "परिनियोजन निर्देशिका बनाने में असमर्थ" +msgstr "%s में अस्थायी निर्देशिका बनाने में असमर्थ" -#: common/flatpak-instance.c:619 -#, fuzzy, c-format +#: common/flatpak-instance.c:639 +#, c-format msgid "Unable to create file %s" -msgstr "सिंक पाइप बनाने में असमर्थ" +msgstr "फाइल %s बनाने में असमर्थ" -#: common/flatpak-instance.c:626 -#, fuzzy, c-format +#: common/flatpak-instance.c:646 +#, c-format msgid "Unable to update symbolic link %s/%s" -msgstr "अपडेट करने में असमर्थ %s: %s\n" +msgstr "प्रतीकात्मक लिंक %s/%s को अद्यतन करने में असमर्थ" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" -msgstr "केवल बियरर प्रमाणीकरण समर्थित है" +msgstr "केवल बियरर प्रमाणीकरण समर्थित" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" -msgstr "प्रमाणीकरण अनुरोध में केवल दायरे" +msgstr "प्रमाणीकरण अनुरोध में केवल रियल्म" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" -msgstr "प्रमाणीकरण अनुरोध में अमान्य दायरे" +msgstr "प्रमाणीकरण अनुरोध में अमान्य रियल्म" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" -msgstr "प्रमाणीकरण विफल: %s" +msgstr "अधिकृतीकरण विफल: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" -msgstr "प्रमाणीकरण विफल" +msgstr "अधिकृतीकरण विफल" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" -msgstr "अनपेक्षित प्रतिसाद स्थिति %d जब एक टोकन का अनुरोध: %s" +msgstr "टोकन का अनुरोध करते समय अप्रत्याशित प्रतिक्रिया स्थिति %d: %s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "अमान्य प्रमाणीकरण अनुरोध प्रतिक्रिया" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" -msgstr "अमान्य डेल्टा फ़ाइल स्वरूप" +msgstr "अमान्य डेल्टा फाइल प्रारूप" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" -msgstr "आईडी के साथ कोई gpg कुंजी नहीं मिली %s (घरेलू निर्देशिका: %s)" +msgstr "ID %s के साथ कोई gpg कुंजी नहीं मिली (गृह-निर्देशिका: %s)" -#: common/flatpak-oci-registry.c:2476 -#, fuzzy, c-format +#: common/flatpak-oci-registry.c:2493 +#, c-format msgid "Unable to lookup key ID %s: %d" -msgstr "कुंजी आईडी नहीं मिल रही है %s: %d)" +msgstr "कुंजी ID %s देखने में असमर्थ: %d" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" -msgstr "कमिट पर हस्ताक्षर त्रुटि: %d" +msgstr "कमिट पर हस्ताक्षर करने में त्रुटि: %d" + +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "अमान्य OCI छवि विन्यास" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "गलत परत चेकसम, अपेक्षित %s, %s था" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "OCI छवि %s के लिए कोई संदर्भ निर्दिष्ट नहीं है" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "OCI छवि %s के लिए संदर्भ रेफरी (%s) निर्दिष्ट, अपेक्षित %s" #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" -msgstr "तत्व आंकड़े डाउन लोड हो रहे हैं: %u/(गिनती) %s" +msgstr "मेटाडेटा डाउनलोड हो रहा है: %u/(estimating) %s" #: common/flatpak-progress.c:260 #, c-format msgid "Downloading: %s/%s" -msgstr "डाउनलोडिंग: %s/%s" +msgstr "डाउनलोड हो रहा है: %s/%s" #: common/flatpak-progress.c:280 #, c-format msgid "Downloading extra data: %s/%s" -msgstr "अतिरिक्त डेटा डाउनलोड करना: %s/%s" +msgstr "अतिरिक्त डेटा डाउनलोड हो रहा है: %s/%s" #: common/flatpak-progress.c:285 #, c-format msgid "Downloading files: %d/%d %s" -msgstr "डाउनलोडिंग फाइलें: %d/%d %s" +msgstr "फाइलें डाउनलोड हो रही हैं: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "नाम खाली नहीं हो सकता" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" -msgstr "नाम 255 वर्णों से अधिक लंबा नहीं हो सकता है" +msgstr "नाम 255 अक्षरों से अधिक लंबा नहीं हो सकता" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" -msgstr "नाम एक अवधि के साथ शुरू नहीं हो सकता" +msgstr "नाम किसी पूर्णविराम से प्रारंभ नहीं हो सकता" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" -msgstr "नाम से शुरू नहीं हो सकता %c" +msgstr "नाम %c से प्रारंभ नहीं हो सकता" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" -msgstr "नाम एक अवधि के साथ समाप्त नहीं हो सकता" +msgstr "नाम किसी पूर्णविराम के साथ समाप्त नहीं हो सकता" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" -msgstr "अनुभाग में केवल एक उपनाम हो सकता है -" +msgstr "केवल अंतिम नाम खंड में शामिल हो सकते हैं -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" -msgstr "नाम खंड के साथ शुरू नहीं हो सकता %c" +msgstr "नाम खंड %c से प्रारंभ नहीं हो सकता" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" -msgstr "नाम नहीं हो सकता %c" +msgstr "नाम में %c नहीं हो सकता" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" -msgstr "नाम कम से कम 2 अवधि शामिल होना चाहिए" +msgstr "नाम में कम से कम 2 पूर्णविराम अवश्य होने चाहिए" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" -msgstr "वास्तुकला खाली नहीं हो सकती" +msgstr "आर्किटेक्चर खाली नहीं हो सकता" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" -msgstr "यह वास्तुकला में नहीं हो सकता %c" +msgstr "आर्किटेक्चर में %c नहीं हो सकता" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "शाखा खाली नहीं हो सकती" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" -msgstr "शाखा एक के साथ शुरू नहीं हो सकता %c" +msgstr "शाखा %c से प्रारंभ नहीं हो सकती" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" -msgstr "शाखा में नहीं हो सकता %c" +msgstr "शाखा में %c नहीं हो सकता" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" -msgstr "लिंक बहुत लंबा है" +msgstr "संदर्भ बहुत लंबा है" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" -msgstr "अमान्य दूरस्थ नाम" +msgstr "अमान्य रिमोट नाम" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" -msgstr "%s कोई ऐप या रनटाइम नहीं" +msgstr "%s अनुप्रयोग या रनटाइम नहीं है" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" -msgstr "में घटकों की गलत संख्या %s" +msgstr "%s में घटकों की गलत संख्या" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "अमान्य नाम %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" -msgstr "अमान्य मेहराब: %.*s: %s" +msgstr "अमान्य आर्किटेक्चर: %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "अमान्य नाम %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" -msgstr "अमान्य मेहराब: %s: %s" +msgstr "अमान्य आर्किटेक्चर: %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "अमान्य शाखा: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" -msgstr "आंशिक रेफरी में घटकों की गलत संख्या %s" +msgstr "आंशिक संदर्भ %s में घटकों की गलत संख्या" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" -msgstr " विकास मंच" +msgstr " विकास प्लेटफ़ॉर्म" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" -msgstr " मंच" +msgstr " प्लेटफ़ॉर्म" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" -msgstr " आवेदन आधार" +msgstr " अनुप्रयोग आधार" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" -msgstr " डिबग प्रतीकों" +msgstr " डिबग प्रतीक" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" -msgstr " सोर्सकोड" +msgstr " स्रोतकोड" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " अनुवाद" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" -msgstr " डॉक्स" +msgstr " दस्तावेज़" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" -msgstr "अमान्य पहचान पत्र %s: %s" +msgstr "अमान्य ID %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" -msgstr "खराब दूरस्थ नाम: %s" +msgstr "खराब रिमोट नाम: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" -msgstr "कोई url निर्दिष्ट नहीं है" +msgstr "कोई URL निर्दिष्ट नहीं" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" -msgstr "यदि संग्रह ID सेट है, तो GPG सत्यापन सक्षम होना चाहिए" +msgstr "संग्रह ID निर्धारित होने पर GPG सत्यापन सक्षम होना चाहिए" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "एप्लिकेशन जानकारी फ़ाइल खोलने में विफल" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "कोई अतिरिक्त डेटा स्रोत नहीं" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "सिंक पाइप बनाने में असमर्थ" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "अमान्य %s: गुम समूह ‘%s’" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "dbus प्रॉक्सी के साथ सिंक करने में विफल" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "अमान्य %s: गुम कुंजी ‘%s’" -#: common/flatpak-run.c:2207 +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "अमान्य gpg कुंजी" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "घटक %s के लिए 64x64 आइकन कॉपी करने में त्रुटि: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "घटक %s के लिए 128x128 आइकन कॉपी करने में त्रुटि: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s जीवन का अंत है, ऐपस्ट्रीम को अनदेखा कर रहा है" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "%s के लिए कोई ऐपस्ट्रीम डेटा नहीं: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "अमान्य बंडल, मेटाडेटा में कोई संदर्भ नहीं" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "बंडल का संग्रह ‘%s’ रिमोट के संग्रह ‘%s’ से मेल नहीं खाता" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "शीर्षलेख और ऐप में मेटाडेटा असंगत हैं" + +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" -msgstr "कोई systemd उपयोगकर्ता सत्र उपलब्ध नहीं है, cgroups उपलब्ध नहीं है" +msgstr "कोई systemd उपयोक्ता सत्र उपलब्ध नहीं है, cgroups उपलब्ध नहीं है" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" -msgstr "उदाहरण आईडी आवंटित करने में असमर्थ" +msgstr "इंस्टैंस ID आवंटित करने में असमर्थ" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" -msgstr "Flatpak-info फ़ाइल खोलने में विफल: %s" +msgstr "flatpak-info फाइल खोलने में विफल: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" -msgstr "bwrapinfo.json फ़ाइल खोलने में विफल: %s" +msgstr "bwrapinfo.json फाइल खोलने में विफल: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" -msgstr "आईडी fd लिखने में विफल: %s" +msgstr "इंस्टैंस ID fd पर लिखने में विफल: %s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" -msgstr "प्रारंभिक seccomp विफल रहा" +msgstr "seccomp को प्रारंभ करना विफल रहा" -#: common/flatpak-run.c:3329 -#, fuzzy, c-format +#: common/flatpak-run.c:2016 +#, c-format msgid "Failed to add architecture to seccomp filter: %s" -msgstr "Seccomp फ़िल्टर में आर्किटेक्चर जोड़ने में विफल" +msgstr "seccomp फिल्टर में आर्किटेक्चर जोड़ने में विफल: %s" -#: common/flatpak-run.c:3337 -#, fuzzy, c-format +#: common/flatpak-run.c:2024 +#, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" -msgstr "Seccomp फ़िल्टर में मल्टीकार आर्किटेक्चर जोड़ने में विफल" +msgstr "seccomp फिल्टर में बहुआर्क आर्किटेक्चर जोड़ने में विफल: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 -#, fuzzy, c-format +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 +#, c-format msgid "Failed to block syscall %d: %s" -msgstr "Syscall को ब्लॉक करने में विफल %d" +msgstr "syscall %d को अवरुद्ध करने में विफल: %s" -#: common/flatpak-run.c:3424 -#, fuzzy, c-format +#: common/flatpak-run.c:2128 +#, c-format msgid "Failed to export bpf: %s" -msgstr "bpf निर्यात करने में विफल" +msgstr "bpf निर्यात करने में विफल: %s" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" -msgstr "खोलने में असफल हुआ ‘%s’" +msgstr "‘%s’ खोलने में विफल" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" -msgstr "ldconfig विफल, स्थिति से बाहर निकलें %d" +msgstr "ldconfig विफल, निकास स्थिति %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" -msgstr "जेनरेट नहीं किया जा सकता ld.so.cache" +msgstr "उत्पन्न ld.so.cache नहीं खोल सके" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" -msgstr "रनिंग %s आपके व्यवस्थापक द्वारा नीति सेट द्वारा अनुमति नहीं" +msgstr "आपके प्रशासक द्वारा निर्धारित नीति के अनुसार %s चलाने की अनुमति नहीं है" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" +"\"flatpak run\" को `sudo flatpak run` के रूप में चलाने का इरादा नहीं है। इसके बजाय " +"`sudo -i` या `su -l` का प्रयोग करें और नए शेल के अंदर से \"flatpak run\" शुरू करें।" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" -msgstr "से विस्थापित होने में विफल %s: %s" +msgstr "%s से प्रवासित होने में विफल: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" -msgstr "" -"पुराने एप्लिकेशन डेटा निर्देशिका को स्थानांतरित करने में विफल %s नए नाम के लिए %s: %s" +msgstr "पुराने ऐप डेटा निर्देशिका %s को नए नाम %s में प्रवासित करने में विफल: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" -msgstr "प्रवास के दौरान प्रतीकात्मक लिंक बनाने में विफल %s: %s" +msgstr "%s प्रवासित करते समय सिम्लिंक बनाने में विफल: %s" + +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "ऐप जानकारी फाइल खोलने में विफल" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "समन्वयन पाइप बनाने में असमर्थ" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Dbus प्रॉक्सी के साथ समन्वयित करने में विफल" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" -msgstr "चेतावनी: संबंधित लिंक खोजने में समस्या: %s" +msgstr "चेतावनी: संबंधित संदर्भ ढूंढने में समस्या आ रही है: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" -msgstr "यह एप %s रनटाइम की आवश्यकता है %s जो नहीं मिला" +msgstr "अनुप्रयोग %s को रनटाइम %s की आवश्यकता है जो नहीं मिला" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" -msgstr "एप %s रनटाइम की आवश्यकता है %s जो स्थापित नहीं है" +msgstr "अनुप्रयोग %s को रनटाइम %s की आवश्यकता है जो स्थापित नहीं है" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" -msgstr "स्थापना रद्द नहीं कर सकते %s क्या आवश्यक है %s" +msgstr "%s को अस्थापित नहीं किया जा सकता जिसकी %s को आवश्यकता है" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" -msgstr "रिमोट %s विकलांग, उपेक्षित %s अपडेट करें" +msgstr "रिमोट %s अक्षम, %s अद्यतन को अनदेखा कर रहा है" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" -msgstr "%s पहले से ही स्थापित किया गया है" +msgstr "%s पहले से ही स्थापित है" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" -msgstr "%s पहले से ही दूरस्थ से स्थापित है %s" +msgstr "%s पहले से ही रिमोट %s से स्थापित है" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "अमान्य .flatpakref: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" -msgstr "के लिए दूरस्थ मेटाडेटा अद्यतन करने में त्रुटि '%s': %s" +msgstr "'%s' के लिए रिमोट मेटाडेटा अद्यतन करने में त्रुटि: %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " "installed: %s" msgstr "" -"चेतावनी: तब से गैर-घातक के रूप में दूरस्थ लाने में त्रुटि का इलाज %s पहले से स्थापित है: %s" +"Warning: Treating remote fetch error as non-fatal since %s is already " +"installed: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" -msgstr "रिमोट के लिए कोई प्रमाणिक स्थापित नहीं किया गया '%s'" +msgstr "संदर्भ '%s' के लिए कोई प्रमाणक स्थापित नहीं" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" -msgstr "लिंक के लिए टोकन प्राप्त करने में विफल: %s" +msgstr "संदर्भ के लिए टोकन प्राप्त करने में विफल: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" -msgstr "लिंक के लिए टोकन प्राप्त करने में विफल" +msgstr "रेफरी के लिए टोकन प्राप्त करने में विफल" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" -msgstr "" +msgstr "%2$s से संदर्भ %1$s एक से अधिक लेन-देन अभियान से मेल खाता है" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 -#, fuzzy +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" -msgstr "रिमोट" +msgstr "कोई रिमोट" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" -msgstr "" +msgstr "%2$s से रेफरी %1$s के लिए कोई लेनदेन संचालन नहीं मिला" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" -msgstr "FlatpakRepo यूआरएल %s फ़ाइल नहीं, HTTP या HTTPS" +msgstr "Flatpakrepo URL %s फाइल नहीं, HTTP या HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " -msgstr "निर्भर फ़ाइल लोड नहीं की जा सकती %s: " +msgstr "आश्रित फाइल %s लोड नहीं किया जा सकता: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "अमान्य .flatpakrepo: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" -msgstr "लेन-देन पहले ही पूरा हो चुका है" +msgstr "लेनदेन पहले ही निष्पादित हो चुका" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." msgstr "" -"रूट के रूप में उपयोगकर्ता संस्थापन पर काम करने से इंकार करना! इससे गलत फ़ाइल स्वामित्व और " -"अनुमति त्रुटियां हो सकती हैं।" +"उपयोक्ता स्थापना को रूट के रूप में संचालित करने से इंकार करना! इससे गलत फाइल स्वामित्व और " +"अनुमति संबंधी त्रुटियां हो सकती हैं।" -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" -msgstr "उपयोगकर्ता द्वारा रद्द" +msgstr "उपयोक्ता द्वारा निरस्त" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" -msgstr "लंघन %s पिछली त्रुटि के कारण है" +msgstr "पिछली त्रुटि के कारण %s को छोड़ा जा रहा है" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" -msgstr "विफलता के कारण बाधित (%s)" +msgstr "विफलता के कारण निरस्त (%s)" #: common/flatpak-uri.c:118 -#, fuzzy, no-c-format +#, no-c-format msgid "Invalid %-encoding in URI" -msgstr "अमान्य एक्सटेंशन नाम %s" +msgstr "URI में अमान्य %-एन्कोडिंग" #: common/flatpak-uri.c:135 msgid "Illegal character in URI" -msgstr "" +msgstr "URI में अमान्य वर्ण" #: common/flatpak-uri.c:169 msgid "Non-UTF-8 characters in URI" -msgstr "" +msgstr "URI में गैर-UTF-8 वर्ण" #: common/flatpak-uri.c:275 #, c-format msgid "Invalid IPv6 address ‘%.*s’ in URI" -msgstr "" +msgstr "URI में अमान्य IPv6 पता ‘%.*s’" #: common/flatpak-uri.c:330 #, c-format msgid "Illegal encoded IP address ‘%.*s’ in URI" -msgstr "" +msgstr "URI में अमान्य एन्कोडेड IP पता ‘%.*s’" #: common/flatpak-uri.c:342 #, c-format msgid "Illegal internationalized hostname ‘%.*s’ in URI" -msgstr "" +msgstr "URI में अमान्य अंतर्राष्ट्रीयकृत होस्टनाम ‘%.*s’" #: common/flatpak-uri.c:374 common/flatpak-uri.c:386 -#, fuzzy, c-format +#, c-format msgid "Could not parse port ‘%.*s’ in URI" -msgstr "पार्स नहीं कर सका '%s'" +msgstr "URI में पोर्ट ‘%.*s’ का विश्लेषण नहीं किया जा सका" #: common/flatpak-uri.c:393 #, c-format msgid "Port ‘%.*s’ in URI is out of range" -msgstr "" +msgstr "URI में पोर्ट ‘%.*s’ सीमा से बाहर है" #: common/flatpak-uri.c:910 msgid "URI is not absolute, and no base URI was provided" -msgstr "" +msgstr "URI पूर्ण नहीं है, और कोई आधार URI प्रदान नहीं किया गया" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "Glob अनुप्रयोगों से मेल नहीं खा सकता है" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" +msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "खाली glob" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "बहुत सारे सेगमेंट glob में" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "अमान्य ID %s: %s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" -msgstr "अमान्य glob चरित्र '%c'" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" -msgstr "लापता glob लाइन पर %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" -msgstr "लाइन पर पाठ अनुगामी %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "रेख पर %d" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "अनपेक्षित शब्द '%s' रेख पर %d" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "अमान्य %s: गुम समूह ‘%s’" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "अमान्य %s: गुम कुंजी ‘%s’" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "अमान्य gpg कुंजी" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "कोई अतिरिक्त डेटा स्रोत नहीं" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "घटक के लिए 64x64 आइकन कॉपी करने में त्रुटि %s: %s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "घटक के लिए 128x128 आइकन कॉपी करने में त्रुटि %s: %s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s जीवन का अंत है, appstream के लिए अनदेखी" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "ग्लोब ऐप्स का मिलान नहीं कर सका" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "के लिए कोई appstream डेटा नहीं %s: %s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "खाली ग्लोब" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "अमान्य पैकेज, मेटाडेटा में कोई लिंक नहीं" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "ग्लोब में बहुत सारे खंड" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "संग्रह ‘%s’ बंडल का संग्रह से मेल नहीं खाता ‘%s’ दूरस्थ के" - -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "हेडर और ऐप में मेटाडेटा असंगत हैं" +msgid "Invalid glob character '%c'" +msgstr "अमान्य ग्लोब वर्ण '%c'" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "अमान्य OCI छवि विन्यास" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "पंक्ति %d पर ग्लोब गुम है" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "गलत परत चेकसम, अपेक्षित %s, था %s" +msgid "Trailing text on line %d" +msgstr "पंक्ति %d पर अनुगामी पाठ" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "रेफरी ओसीआई छवि के लिए निर्दिष्ट नहीं है %s" +msgid "on line %d" +msgstr "पंक्ति %d पर" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "गलत रेफ (%s) ओसीआई छवि के लिए निर्दिष्ट %s, अपेक्षित %s" +msgid "Unexpected word '%s' on line %d" +msgstr "लाइन %2$d पर अप्रत्याशित शब्द '%1$s'" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "अमान्य require-flatpak तर्क %s" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" -msgstr "%s बाद के संस्करण की आवश्यकता है flatpak (%s)" - -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "खाली स्ट्रिंग एक संख्या नहीं है" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "“%s” एक अहस्ताक्षरित संख्या नहीं है" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "नंबर “%s” चलता ही जाए [%s, %s]" +msgstr "%s को बाद के flatpak संस्करण की आवश्यकता है (%s)" #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" -msgstr "नहीं एक ओसीआई दूरस्थ, लापता summary.xa.oci-भंडार" +msgstr "OCI रिमोट नहीं है, summary.xa.oci-repository गायब है" #: oci-authenticator/flatpak-oci-authenticator.c:477 msgid "Not a OCI remote" -msgstr "रिमोट OCI नहीं" +msgstr "OCI रिमोट नहीं" #: oci-authenticator/flatpak-oci-authenticator.c:488 msgid "Invalid token" msgstr "अमान्य टोकन" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "कोई पोर्टल समर्थन नहीं मिला" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" -msgstr "मना" +msgstr "अस्वीकारें" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" -msgstr "अपडेट" +msgstr "अद्यतन" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" -msgstr "अपडेट %s?" +msgstr "%s अद्यतन करें?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." -msgstr "एप्लिकेशन खुद को अपडेट करना चाहता है।" +msgstr "अनुप्रयोग स्वयं को अद्यतन करना चाहता है।" -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." -msgstr "किसी भी समय गोपनीयता सेटिंग्स से अपडेट एक्सेस को बदला जा सकता है।" +msgstr "अद्यतन पहुंच को गोपनीयता सेटिंग्स से किसी भी समय बदला जा सकता है।" -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" -msgstr "एप्लिकेशन अपडेट की अनुमति नहीं है" +msgstr "अनुप्रयोग अद्यतन की अनुमति नहीं है" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" -msgstr "स्व अद्यतन समर्थित नहीं है, नए संस्करण के लिए नई अनुमतियों की आवश्यकता है" +msgstr "स्वयं अद्यतन समर्थित नहीं है, नए संस्करण के लिए नई अनुमतियों की आवश्यकता है" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" -msgstr "अपडेट अप्रत्याशित रूप से समाप्त हो गया" +msgstr "अद्यतन अप्रत्याशित रूप से समाप्त हो गया" #. SECURITY: #. - Normal users need admin authentication to install software @@ -5658,12 +5782,12 @@ msgstr "अपडेट अप्रत्याशित रूप से स #. in the wheel group to install without authenticating. #: system-helper/org.freedesktop.Flatpak.policy.in:23 msgid "Install signed application" -msgstr "हस्ताक्षरित एप्लिकेशन इंस्टॉल करें" +msgstr "हस्ताक्षरित अनुप्रयोग स्थापित करें" #: system-helper/org.freedesktop.Flatpak.policy.in:24 #: system-helper/org.freedesktop.Flatpak.policy.in:42 msgid "Authentication is required to install software" -msgstr "सॉफ़्टवेयर स्थापित करने के लिए प्रमाणीकरण आवश्यक है" +msgstr "सॉफ्टवेयर स्थापित करने के लिए प्रमाणीकरण आवश्यक है" #. SECURITY: #. - Normal users need admin authentication to install software @@ -5682,12 +5806,12 @@ msgstr "हस्ताक्षरित रनटाइम स्थापि #. updates. #: system-helper/org.freedesktop.Flatpak.policy.in:60 msgid "Update signed application" -msgstr "हस्ताक्षरित एप्लिकेशन को अपडेट करें" +msgstr "हस्ताक्षरित आवेदन अद्यतन करें" #: system-helper/org.freedesktop.Flatpak.policy.in:61 #: system-helper/org.freedesktop.Flatpak.policy.in:80 msgid "Authentication is required to update software" -msgstr "सॉफ़्टवेयर को अद्यतन करने के लिए प्रमाणीकरण आवश्यक है" +msgstr "सॉफ्टवेयर अद्यतन करने के लिए प्रमाणीकरण आवश्यक है" #. SECURITY: #. - Normal users do not require admin authentication to update a @@ -5697,18 +5821,18 @@ msgstr "सॉफ़्टवेयर को अद्यतन करने #. updates. #: system-helper/org.freedesktop.Flatpak.policy.in:79 msgid "Update signed runtime" -msgstr "हस्ताक्षरित रनटाइम अपडेट करें" +msgstr "हस्ताक्षरित रनटाइम अद्यतन करें" #. SECURITY: #. - Normal users do not need authentication to update metadata #. from signed repositories. #: system-helper/org.freedesktop.Flatpak.policy.in:94 msgid "Update remote metadata" -msgstr "दूरस्थ मेटाडेटा अद्यतन करें" +msgstr "रिमोट मेटाडेटा अद्यतन करें" #: system-helper/org.freedesktop.Flatpak.policy.in:95 msgid "Authentication is required to update remote info" -msgstr "दूरस्थ जानकारी को अद्यतन करने के लिए प्रमाणीकरण आवश्यक है" +msgstr "रिमोट जानकारी को अद्यतन करने के लिए प्रमाणीकरण आवश्यक है" #. SECURITY: #. - Normal users do not need authentication to modify the @@ -5717,7 +5841,7 @@ msgstr "दूरस्थ जानकारी को अद्यतन क #. in the wheel group to modify repos without authenticating. #: system-helper/org.freedesktop.Flatpak.policy.in:111 msgid "Update system repository" -msgstr "सिस्टम रिपॉजिटरी को अपडेट करें" +msgstr "सिस्टम रिपोजिटरी को अद्यतन करें" #: system-helper/org.freedesktop.Flatpak.policy.in:112 msgid "Authentication is required to modify a system repository" @@ -5732,7 +5856,7 @@ msgstr "बंडल स्थापित करें" #: system-helper/org.freedesktop.Flatpak.policy.in:127 msgid "Authentication is required to install software from $(path)" -msgstr "से सॉफ़्टवेयर स्थापित करने के लिए प्रमाणीकरण आवश्यक $ (पथ)" +msgstr "$(पथ) से सॉफ्टवेयर स्थापित करने के लिए प्रमाणीकरण आवश्यक है" #. SECURITY: #. - Normal users need admin authentication to uninstall software @@ -5741,11 +5865,11 @@ msgstr "से सॉफ़्टवेयर स्थापित करने #. in the wheel group to uninstall without authenticating. #: system-helper/org.freedesktop.Flatpak.policy.in:144 msgid "Uninstall runtime" -msgstr "रनटाइम निकालें" +msgstr "रनटाइम अस्थापित करें" #: system-helper/org.freedesktop.Flatpak.policy.in:145 msgid "Authentication is required to uninstall software" -msgstr "सॉफ़्टवेयर की स्थापना रद्द करने के लिए प्रमाणीकरण आवश्यक है" +msgstr "सॉफ्टवेयर अस्थापित करने के लिए प्रमाणीकरण आवश्यक है" #. SECURITY: #. - Normal users need admin authentication to uninstall software @@ -5754,33 +5878,33 @@ msgstr "सॉफ़्टवेयर की स्थापना रद्द #. in the wheel group to uninstall without authenticating. #: system-helper/org.freedesktop.Flatpak.policy.in:161 msgid "Uninstall app" -msgstr "ऐप अनइंस्टॉल करें" +msgstr "ऐप अस्थापित करें" #: system-helper/org.freedesktop.Flatpak.policy.in:162 msgid "Authentication is required to uninstall $(ref)" -msgstr "स्थापना रद्द करने के लिए प्रमाणीकरण आवश्यक है $(ref)" +msgstr "$(ref) को अस्थापित करने के लिए प्रमाणीकरण आवश्यक है" #. SECURITY: #. - Normal users need admin authentication to configure system-wide #. software repositories. #: system-helper/org.freedesktop.Flatpak.policy.in:177 msgid "Configure Remote" -msgstr "रिमोट को कॉन्फ़िगर करें" +msgstr "रिमोट विन्यस्त करें" #: system-helper/org.freedesktop.Flatpak.policy.in:178 msgid "Authentication is required to configure software repositories" -msgstr "सॉफ़्टवेयर रिपॉजिटरी को कॉन्फ़िगर करने के लिए प्रमाणीकरण आवश्यक है" +msgstr "सॉफ्टवेयर रिपॉजिटरी को विन्यस्त करने के लिए प्रमाणीकरण आवश्यक है" #. SECURITY: #. - Normal users need admin authentication to configure the system-wide #. Flatpak installation. #: system-helper/org.freedesktop.Flatpak.policy.in:192 msgid "Configure" -msgstr "कॉन्फ़िगर करें" +msgstr "विन्यस्त करें" #: system-helper/org.freedesktop.Flatpak.policy.in:193 msgid "Authentication is required to configure software installation" -msgstr "सॉफ़्टवेयर इंस्टॉलेशन को कॉन्फ़िगर करने के लिए प्रमाणीकरण आवश्यक है" +msgstr "सॉफ्टवेयर स्थापना को विन्यस्त करने के लिए प्रमाणीकरण आवश्यक है" #. SECURITY: #. - Normal users do not require admin authentication to update @@ -5790,11 +5914,11 @@ msgstr "सॉफ़्टवेयर इंस्टॉलेशन को क #. updates. #: system-helper/org.freedesktop.Flatpak.policy.in:210 msgid "Update appstream" -msgstr "appstream अपडेट" +msgstr "ऐपस्ट्रीम अद्यतन करें" #: system-helper/org.freedesktop.Flatpak.policy.in:211 msgid "Authentication is required to update information about software" -msgstr "सॉफ़्टवेयर के बारे में जानकारी अपडेट करने के लिए प्रमाणीकरण आवश्यक है" +msgstr "सॉफ्टवेयर के बारे में जानकारी अद्यतन करने के लिए प्रमाणीकरण आवश्यक है" #. SECURITY: #. - Normal users do not require admin authentication to update @@ -5808,7 +5932,7 @@ msgstr "मेटाडेटा अद्यतन करें" #: system-helper/org.freedesktop.Flatpak.policy.in:229 msgid "Authentication is required to update metadata" -msgstr "मेटाडेटा अद्यतन करने के लिए प्रमाणीकरण आवश्यक है" +msgstr "मेटाडेटा को अद्यतन करने के लिए प्रमाणीकरण आवश्यक है" #. SECURITY: #. - Authorisation to actually install software is controlled by @@ -5859,259 +5983,20 @@ msgstr "मेटाडेटा अद्यतन करने के लि #. all users’ parental controls policies to true. #: system-helper/org.freedesktop.Flatpak.policy.in:287 msgid "Override parental controls" -msgstr "माता-पिता का नियंत्रण रद्द करें" +msgstr "अभिभावकीय नियंत्रण को अध्यारोहण करें" #: system-helper/org.freedesktop.Flatpak.policy.in:288 msgid "" "Authentication is required to install software which is restricted by your " "parental controls policy" msgstr "" -"सॉफ़्टवेयर को स्थापित करने के लिए प्रमाणीकरण की आवश्यकता होती है जो आपकी पैतृक नियंत्रण " -"नीति द्वारा प्रतिबंधित है" - -#~ msgid "install" -#~ msgstr "इंस्टॉल" - -#~ msgid "update" -#~ msgstr "अपडेट करें" - -#~ msgid "install bundle" -#~ msgstr "पैकेज स्थापित करे" - -#~ msgid "uninstall" -#~ msgstr "स्थापना रद्द करें" - -#~ msgid "(internal error, please report)" -#~ msgstr "(आंतरिक त्रुटि, कृपया रिपोर्ट करें)" - -#~ msgid "Warning:" -#~ msgstr "चेतावनी:" - -#, fuzzy -#~ msgid "runtime" -#~ msgstr "रनटाइम" - -#, fuzzy -#~ msgid "app" -#~ msgstr "ऐप" - -#, c-format -#~ msgid "%s Failed to %s %s: %s\n" -#~ msgstr "%s करने में विफल %s %s: %s\n" - -#~ msgid "[REF…] - Uninstall an application" -#~ msgstr "[रेफरी…] - आवेदन निकालें।" +"सॉफ्टवेयर स्थापित करने के लिए प्रमाणीकरण आवश्यक है जो आपकी अभिभावकीय नियंत्रण नीति " +"द्वारा प्रतिबंधित है" #, c-format -#~ msgid "Replace it with %s?" -#~ msgstr "से बदलें %s?" - -#~ msgid "\"flatpak run\" is not intended to be ran with sudo" -#~ msgstr "\"flatpak run\" सूडो के साथ चलाने का इरादा नहीं है" - -#~ msgid "Invalid deployed ref %s: " -#~ msgstr "अमान्य परिनियोजित रेफरी %s:" - -#~ msgid "Deployed ref %s kind does not match commit (%s)" -#~ msgstr "परिनियोजित रेफरी %s प्रकार प्रतिबद्ध से मेल नहीं खाता (%s)" - -#~ msgid "Deployed ref %s name does not match commit (%s)" -#~ msgstr "परिनियोजित रेफरी %s नाम प्रतिबद्ध से मेल नहीं खाता (%s)" - -#~ msgid "Deployed ref %s arch does not match commit (%s)" -#~ msgstr "परिनियोजित रेफरी %s आर्क कमिट से मेल नहीं खाता (%s)" - -#~ msgid "Failed to determine parts from ref: %s" -#~ msgstr "रेफरी से भागों का निर्धारण करने में विफल: %s" - -#~ msgid "Invalid arch %s" -#~ msgstr "गलत वास्तुकला %s" - -#~ msgid "Related ref '%s' is only partially installed" -#~ msgstr "संबंधित रेफरी '%s' केवल आंशिक रूप से स्थापित है" - -#~ msgid "Ref '%s' is only partially installed" -#~ msgstr "संदर्भ '%s' केवल आंशिक रूप से संस्थापित है" - -#~ msgid "No such ref (%s, %s) in remote %s" -#~ msgstr "रिमोट %s . में ऐसा कोई रेफरी (%s, %s) नहीं है %s" - -#~ msgid "No flatpak cache in remote '%s' summary" -#~ msgstr "रिमोट '% s' सारांश में कोई फ्लैटपैक कैश नहीं है" - -#~ msgid "No such ref (%s, %s) in remote %s or elsewhere" -#~ msgstr "दूरस्थ %s या अन्यत्र में ऐसा कोई रेफरी (%s, %s) नहीं है" - -#~ msgid "No summary found" -#~ msgstr "कोई सारांश नहीं मिला" - -#~ msgid "Deployed metadata does not match commit" -#~ msgstr "मेटाडेटा प्रतिबद्ध से मेल नहीं खाता" - -#~ msgid "No repo metadata cached for remote '%s'" -#~ msgstr "रिमोट के लिए कोई रेपो मेटाडेटा कैश नहीं किया गया '%s'" - -#~ msgid "No metadata branch for OCI" -#~ msgstr "OCI के लिए कोई मेटाडेटा शाखा नहीं" - -#~ msgid "Invalid group: %d" -#~ msgstr "अमान्य समूह:: %d" - -#~ msgid "Warning: Can't find %s metadata for dependencies: %s" -#~ msgstr "चेतावनी: निर्भरता के लिए %s मेटाडेटा नहीं ढूँढ सकता: %s" - -#~ msgid "Not running as root, may be unable to enter namespace" -#~ msgstr "रूट के रूप में नहीं चल रहा है, नाम स्थान में प्रवेश करने में असमर्थ हो सकता है" - -#~ msgid "Default system installation" -#~ msgstr "डिफ़ॉल्ट सिस्टम स्थापना" - -#~ msgid "No url specified in flatpakrepo file" -#~ msgstr "नहीं url flatpakrepo फ़ाइल में निर्दिष्ट है" - -#~ msgid "%s branch already installed" -#~ msgstr "%s शाखा पहले से ही स्थापित है" - -#~ msgid "%s branch %s not installed" -#~ msgstr "%s शाखा %s स्थापित नहीं है" - -#~ msgid "Installed size:" -#~ msgstr "स्थापित आकार:" - -#~ msgid "Print OSTree debug information during command processing" -#~ msgstr "कमांड प्रोसेसिंग के दौरान OSTree डिबग जानकारी प्रिंट करें" - -#~ msgid "Show help options" -#~ msgstr "सहायता विकल्प दिखाएं" - -#~ msgid "Architecture" -#~ msgstr "आर्किटेक्चर" - -#~ msgid "Location:" -#~ msgstr "स्थान:" - -#~ msgid "Download size:" -#~ msgstr "डाउनलोड आकार:" - -#~ msgid "Installing for user: %s from %s\n" -#~ msgstr "उपयोक्ता के लिए संस्थापन से: %s\n" - -#~ msgid "Installing: %s from %s\n" -#~ msgstr "संस्थापन: %s से %s\n" - -#~ msgid "Updating for user: %s from %s\n" -#~ msgstr "उपयोक्ता के लिए अद्यतन कर रहा है: %s से %s\n" - -#~ msgid "Updating: %s from %s\n" -#~ msgstr "अपडेट हो रहा है: %s से %s\n" - -#~ msgid "Installing for user: %s from bundle %s\n" -#~ msgstr "उपयोक्ता के लिए संस्थापन: %s बंडल से\n" - -#~ msgid "Installing: %s from bundle %s\n" -#~ msgstr "संस्थापन: %s बंडल से %s\n" - -#~ msgid "Uninstalling for user: %s\n" -#~ msgstr "उपयोगकर्ता के लिए अनइंस्टॉल करना: %s\n" - -#~ msgid "No updates.\n" -#~ msgstr "कोई अपडेट नहीं।\n" - -#~ msgid "Now at %s.\n" -#~ msgstr "अब में %s.\n" - -#~ msgid "new file access" -#~ msgstr "नई फ़ाइल एक्सेस" - -#~ msgid "file access" -#~ msgstr "फ़ाइल का उपयोग" - -#~ msgid "new system dbus access" -#~ msgstr "नई प्रणाली dbus पहुँच" - -#~ msgid "system dbus access" -#~ msgstr "सिस्टम dbus एक्सेस" - -#~ msgid "Installing in %s:\n" -#~ msgstr "में स्थापना %s\n" - -#~ msgid "Invalid .flatpakref" -#~ msgstr "अमान्य .flatpakref" - -#~ msgid "Authentication is required to install $(ref) from $(origin)" -#~ msgstr "$(origin) से $(ref) स्थापित करने के लिए प्रमाणीकरण आवश्यक है" - -#~ msgid "Authentication is required to update $(ref) from $(origin)" -#~ msgstr "$(origin) से $(ref) को अपडेट करने के लिए प्रमाणीकरण आवश्यक है" - -#~ msgid "Authentication is required to update the remote $(remote)" -#~ msgstr "रिमोट $(रिमोट) को अपडेट करने के लिए प्रमाणीकरण की आवश्यकता है" - -#~ msgid "Authentication is required to modify the remote $(remote)" -#~ msgstr "दूरस्थ $(रिमोट) को संशोधित करने के लिए प्रमाणीकरण आवश्यक है" - -#~ msgid "Authentication is required to configure the remote $(remote)" -#~ msgstr "दूरस्थ $ (दूरस्थ) को कॉन्फ़िगर करने के लिए प्रमाणीकरण आवश्यक है" - -#~ msgid "Runtime Branch" -#~ msgstr "रनटाइम शाखा" - -#~ msgid "Runtime Commit" -#~ msgstr "रनटाइम कमिट" - -#~ msgid "Unknown command '%s'" -#~ msgstr "अज्ञात आदेश '%s'" - -#~ msgid "Migrating %s to %s\n" -#~ msgstr "माइग्रेट करना %s से %s\n" - -#~ msgid "Error during migration: %s\n" -#~ msgstr "माइग्रेशन के दौरान त्रुटि: %s\n" - -#~ msgid "Redirect collection ID: %s\n" -#~ msgstr "पुनर्निर्देशित संग्रह आईडी: %s\n" - -#~ msgid "Invalid sha256 for extra data uri %s" -#~ msgstr "अतिरिक्त डेटा के लिए अमान्य sha256 uri %s" - -#~ msgid "Invalid sha256 for extra data" -#~ msgstr "अतिरिक्त डेटा के लिए अमान्य sha256" - -#~ msgid "Add OCI registry" -#~ msgstr "OCI रजिस्ट्री जोड़ें" - -#~ msgid "Found in remote %s\n" -#~ msgstr "रिमोट में मिला %s\n" - -#~ msgid "Found in remote %s, do you want to install it?" -#~ msgstr "रिमोट %s में मिला, क्या आप इसे इंस्टाल करना चाहते हैं?" - -#~ msgid "Found in several remotes:\n" -#~ msgstr "कई दूरस्थ स् में मिला:\n" - -#~ msgid "The required runtime %s was not found in a configured remote.\n" -#~ msgstr "आवश्यक रनटाइम %s कॉन्फ़िगर किए गए रिमोट में नहीं मिला।\n" - -#~ msgid "%s already installed, skipping\n" -#~ msgstr "%s पहले से स्थापित, लंघन\n" - -#~ msgid "One or more operations failed" -#~ msgstr "एक या अधिक ऑपरेशन विफल" - -#~ msgid "No ref information available in repository" -#~ msgstr "रिपोजिटरी में कोई रेफरी जानकारी उपलब्ध नहीं है" - -#~ msgid "Remote title not set" -#~ msgstr "रिमोट शीर्षक सेट नहीं है" - -#~ msgid "Remote default-branch not set" -#~ msgstr "दूरस्थ डिफ़ॉल्ट-शाखा सेट नहीं है" - -#~ msgid "Search specific system-wide installations" -#~ msgstr "विशिष्ट सिस्टम-व्यापी संस्थापन खोजें" - -#~ msgid "Failed to unlink temporary file" -#~ msgstr "अस्थायी फ़ाइल को अनलिंक करने में विफल" - -#~ msgid "Post-Install %s" -#~ msgstr "पोस्ट-स्थापित करें %s" +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "रिमोट '%2$s' (%3$s) में '%1$s' के लिए समान संदर्भ मिला।\n" +#~ "इस रिमोट का प्रयोग करें?" diff --git a/po/hr.gmo b/po/hr.gmo deleted file mode 100644 index 6029abdee30bfe99ff5e3f4384920c41495ed06d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 105323 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�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\n" "Language-Team: Croatian \n" @@ -19,104 +19,104 @@ msgstr "" "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Generator: Poedit 3.0\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Izvezi okruženje umjesto programa" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Arhitektura za paketiranje za" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARHITEKTURA" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Url za repozitorij" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Url za okruženje datoteke flatpak repozitorija" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Dodaj GPG ključ iz DATOTEKE (- za stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "DATOTEKA" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "ID GPG ključa za potpisivanje OCI slike" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "KLJUČ-ID" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "KLJUČ-ID" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "Početni direktorij GPG-a kad se traže privjesci za ključeve" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "POČETNI-DIREKTORIJ" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "OSTree izmjena za stvaranje paketa delta datoteka" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "IZMJENA" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Izvezi oci sliku umjesto flatpak paket" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -124,58 +124,58 @@ msgstr "" "LOKACIJA IME-DATOTEKE IME [GRANA] – Stvori jedan paket datoteka iz lokalnog " "repozitorija" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "LOKACIJA, IME_DATOTEKE i IME se moraju odrediti" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Previše argumenata" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "„%s” nije ispravan repozitorij" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "„%s” nije ispravan repozitorij: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "„%s” nije ispravno ime: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "„%s” nije ispravno ime grane: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -210,7 +210,7 @@ msgstr "DIR" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Gdje tražiti prilagođeni sdk direktorij (standardno je „usr”)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Koristi alternativne datoteka za metapodatke" @@ -230,104 +230,105 @@ msgstr "Zapiši bus pozive sesije" msgid "Log system bus calls" msgstr "Zapiši bus pozive sustava" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "DIREKTORIJ [NAREDBA [ARGUMENT …]] – Gradi u direktoriju" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "DIREKTORIJ se mora odrediti" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "Direktorij gradnje %s nije inicijaliziran, koristi flatpak build-init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "metapodaci neispravni, nije program ili okruženje" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "Nijedna točka proširenja se ne poklapa s %s u %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "U bind mount opciji „%s” nedostaje znak „=”" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Nije moguće pokrenuti program" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Direktorij repozitorija izvora" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "IZVOR-REPOZITORIJ" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Referenca repozitorija izvora" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "IZVOR-REFERENCA" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Kratki opis predmeta" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "PREDMET" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Potpuni opis" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "TIJELO" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Aktualiziraj appstream granu" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Aktualiziraj appstream granu" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Ne aktualiziraj sažetak" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "ID GPG ključa za potpisivanje izmjene" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "Označi gradnju kao kraj-života" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "RAZLOG" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -335,371 +336,376 @@ msgstr "" "Označi reference koje se poklapaju sa STARI-ID prefiksom kao kraj-života, " "zamijenit će se s datom NOVI-ID oznakom" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "STARI-ID=NOVI-ID" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "Postavi vrstu tokena koja je potrebna za instaliranje ove izmjene" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "VRIJEDNOST" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "Nadjačaj vremensku oznaku izmjene (NOW za trenutačno vrijeme)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "VREMENSKA_OZNAKA" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "Nemoj generirati indeks sažetka" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" "DISTRIBUCIJA-REPOZITORIJ [DISTRIBUCIJA-REPOZITORIJ …] – Izradi novu izmjenu " "iz postojeće izmjene" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "DISTRIBUCIJA-REPOZITORIJ se mora odrediti" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "Ako je --src-ref nije određeno, mora se odrediti samo jedna referenca " "odredišta" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" "Ako je --src-ref određeno, mora se odrediti samo jedna referenca odredišta" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "--src-repo ili --src-ref se moraju odrediti" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" "Neispravni format argument upotrebe --end-of-life-rebase=STARI-ID=NOVI-ID" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "Neispravno ime %s u --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "Nije bilo moguće obraditi „%s”" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "Nije moguće izmijeniti iz djelomične izmjene izvora" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: bez promjene\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Izvozna arhitektura za (mora bit kompatibilna s računalom)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Izmijeni okruženje (/usr), ne /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Koristi alternativni direktorij za datoteke" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "PODDIREKTORIJ" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Datoteke koje treba izuzeti" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "UZORAK" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Izuzete su datoteke koje treba uključiti" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "Označi gradnju kao kraj-života, zamijenit će se s zadatom ID oznakom" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Nadjačaj vremensku oznaku izmjene" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "ID zbirke" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "UPOZORENJE: Greška pri pokretanju desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "UPOZORENJE: Greška pri čitanju desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "UPOZORENJE: Greška u provjeravanju datoteke radne površine %s: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "UPOZORENJE: Nije moguće pronaći Exec ključ u %s: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "UPOZORENJE: Binarna dataoteka nije pronađena za Exec redak u %s: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "UPOZORENJE: Ikona se ne poklapa s id oznakom programa u %s: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" "UPOZORENJE: Ikona je referencirana u datoteci radne površine, ali nije " "izvezena: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Neispravna uri vrsta %s, podržava se samo http/https" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "Nije moguće pronaći onsovno ime u %s, odredi ime nedvosmisleno" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "Kose crte nisu dozvoljene u imenu dodatnih podataka" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Neispravni sha256 kontrolni zbroj: „%s”" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Nula veličina dodatnih podataka nije podržano" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "" "LOKACIJA DIREKTORIJ [GRANA] – Stvori repozitorij iz direktorija gradnje" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "LOKACIJA i DIREKTORIJ se moraju odrediti" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "„%s” nije ispravna ID oznaka zbirke: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Nema određenog imena u metapodacima" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Izmjena: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Metapodataka ukupno: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Metapodataka zapisano: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Sadržaja ukupno: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Sadržaja zapisano: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Zapisani bajtovi sadržaja:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Naredba za postavljanje" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "NAREDBA" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Zatraži Flatpak verziju" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "MAJOR.MINOR.MICRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Nemoj obraditi izvoze" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Informacije o dodatnim podacima" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Dodaj informacije o točki proširenja" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "IME=VARIJABLA[=VRIJEDNOST]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Ukloni informacije o točki proširenja" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "IME" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Postavi prioritet proširenja (samo za proširenja)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "VRIJEDNOST" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Promijeni sdk koji se koristi za program" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Promijeni okruženje koji se koristi za program" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "OKRUŽENJE" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Postavi opću opciju metapodataka" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GRUPA=KLJUČ[=VRIJEDNOST]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Nemoj naslijediti dozvole od okruženja" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "%s se ne izvozi, krivo proširenje\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "%s se ne izvozi, nedozvoljen izvoz imena datoteke\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "Izvoz %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Pronađeno je više od jedne izvršne datoteke\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "Koristi se %s kao naredba\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Nema izvršnih datoteka\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Neispravni --require-version argument: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "Nedovoljno elemenata u --extra-data argumentu %s" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -708,7 +714,7 @@ msgstr "" "Nedovoljno elemenata u --metadata argumentu %s, format mora biti " "GRUPA=KLJUČ[=VRIJEDNOST]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -718,62 +724,63 @@ msgstr "" "Nedovoljno elemenata u --extension argumentu %s, format mora biti " "IME=VARIJABLA[=VRIJEDNOST]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "Neispravno ime proširenja %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "DIREKTORIJ – Završi direktorij gradnje" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Direktorij gradnje %s nije inicijaliziran" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Direktorij gradnje %s već završen" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Pregledaj izvezene datoteke i metapodatke\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Nadjačaj referencu koja se koristi za uvezeni paket" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REFERENCA" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Uvezi oci sliku umjesto flatpak paket" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Referenca „%s” nije pronađena u registru" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "Višestruke slike u registru, odredi referencu pomoću --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "Uvozo se %s (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "LOKACIJA IME-DATOTEKE – Uvezi paket datoteka u lokalni repozitorij" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "LOKACIJA i IME_DATOTEKE se moraju odrediti" @@ -888,88 +895,88 @@ msgstr "„%s” nije ispravno ime programa: %s" msgid "Build directory %s already initialized" msgstr "Direktorij gradnje %s već inicijaliziran" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Arhitektura za instaliranje za" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Pazi na okruženja s određenim imenom" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "LOKACIJA [ID [GRANA]] – Potpiši program ili okruženje" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "LOKACIJA se mora odrediti" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Nema određenih ID oznaka gpg ključeva" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Preusmjeri ovaj repozitorij na novi URL" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Korišteno lijepo ime za ovaj repozitorij" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "NASLOV" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "Kratki komentar za ovaj repozitorij" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "KOMENTAR" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "Komentar u obliku odlomka za ovaj repozitorij" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "OPIS" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "URL za web-stranicu za ovaj repozitorij" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "URL za ikonu za ovaj repozitorij" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Korištena standardna grana za ovaj repozitorij" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "GRANA" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "ZBIRKA-ID" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" @@ -977,123 +984,126 @@ msgstr "" "Trajno implementiraj ID zbirke u konfiguracije klijenta udaljenog " "repozitorija, samo za podršku lokalnog preuzimanja" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" "Trajno implementiraj ID zbirke u konfiguracije klijenta udaljenog " "repozitorija" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Ime autentifikatora za ovaj repozitorij" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "Automatski instaliraj autentifikatora za ovaj repozitorij" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "Nemoj automatski instalirati autentifikatora za ovaj repozitorij" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Opcija autentifikatora" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "KLJUČ=VRIJEDNOST" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Uvezi novi standardan javni GPG ključ iz DATOTEKA" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "ID GPG ključa za potpisivanje sažetka" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Izradi delta datoteke" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Nemoj aktualizirati granu podataka programa" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" "Maksimalni broj paralelnih poslova prilikom stvaranja delta datoteka " "(standardno: NUMCPU)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "BROJ-POSLOVA" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "Nemoj stvoriti delta datoteke koje se poklapaju s refencama" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Odreži neiskorištene predmete" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" "Zaobiđi samo DUBINA nadređenih za svaku izmjenu (standardno: -1 = beskonačno)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "DUBINA" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Izrada delta datoteke: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Izrada delta datoteke: %s (%.10s – %.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Neuspjela izrada delta datoteke %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Neuspjela izrada delta datoteke %s (%.10s – %.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "LOKACIJA – Aktualiziraj metapodatke repozitorija" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Aktualiziranje appstream grane\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Aktualiziranje sažetka\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Ukupno objekata: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Nema objekata koji nisu \n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "Ukloniti %u objekte, %s oslobođeno\n" @@ -1166,25 +1176,25 @@ msgstr "" msgid "Must specify one of --list, --get, --set or --unset" msgstr "Moraš odrediti jednu od sljedećih: --list, --get, --set ili --unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Pazi na programe s određenim imenom" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Arhitektura za kopiranje" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "ODREDIŠTE" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "Dozvoli djelomične izmjene u stvorenom repozitoriju" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " @@ -1193,13 +1203,13 @@ msgstr "" "Upozorenje: Povezana referenca „%s” je djelomično instalirana. Koristi --" "allow-partial za suzbijanje ove poruke.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" "Upozorenje: Zanemaruje se povezana referenca „%s”, jer nije instalirana.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1208,14 +1218,14 @@ msgstr "" "Upozorenje: Zanemaruje se povezana referenca „%s”, jer njen udaljeni " "repozitorij „%s” nema postavljenu ID oznaku zbirke.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" "Upozorenje: Zanemaruje se povezana referenca „%s”, jer se radi o dodatnim " "podacima.\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1224,37 +1234,37 @@ msgstr "" "Udaljeni repozitorij „%s” nema postavljeni ID zbirke, što je potrebno za P2P " "distribuciju za „%s”." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" "Upozorenje: Zanemaruje se referenca „%s” (okruženje od „%s”), jer se radi o " "dodatnim podacima.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" "STAZA-JEDINICE [REFERENCA …] – Kopiraj programe ili okurženja na prijenosne " "medije" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "STAZA-JEDINICE i REFERENCA moraju se odrediti" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" "Referenca „%s” je pronađena u višestrukim instalacijama: %s. Odredi jednu." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" "Sve reference moraju se nalaziti u istoj instalaciji (pronađene su u %s i " "%s)." -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " @@ -1263,21 +1273,21 @@ msgstr "" "Upozorenje: Referenca „%s” je djelomično instalirana. Koristi —allow-partial " "za suzbijanje ove poruke.\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" "Instalirana referenca „%s” su dodatni podaci i ne mogu se distribuirati bez " "postojanja mreže" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" "Upozorenje: Nije bilo moguće aktualizirati metapodatke za udaljeni " "repozitorij „%s”: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1285,7 +1295,7 @@ msgstr "" "repozitorij „%s” arhitektura „%s”: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1294,7 +1304,7 @@ msgstr "" "repozitorij „%s” arhitektura „%s”: %s, %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1369,19 +1379,20 @@ msgstr "DATOTEKA – Dobavi informacije o izvezenoj datoteci" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Nije izvezeno\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Koje informacije treba prikazati" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "POLJE, …" @@ -1400,7 +1411,7 @@ msgid "Show the document path" msgstr "Prikaži stazu dokumenta" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Izvor" @@ -1414,7 +1425,7 @@ msgid "Show applications with permission" msgstr "Prikaži programe s dozvolom" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Dozvole" @@ -1544,12 +1555,12 @@ msgid "Show the kind of change" msgstr "Prikaži vrstu promjene" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Referenca" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Prikaži ref" @@ -1558,24 +1569,24 @@ msgid "Show the application/runtime ID" msgstr "Prikaži ID programa/okruženja" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Arhitektura" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Prikaži arhitekturu" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Grana" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Prikaži granu" @@ -1587,7 +1598,7 @@ msgstr "Instalacija" msgid "Show the affected installation" msgstr "Prikaži pogođenu instalaciju" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Udaljeni repozitorij" @@ -1596,7 +1607,7 @@ msgid "Show the remote" msgstr "Prikaži udaljeni repozitorij" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Izmjena" @@ -1616,7 +1627,7 @@ msgstr "Prikaži prethodnu izmjenu" msgid "Show the remote URL" msgstr "Prikaži URL udaljenog repozitorija" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Korisnik" @@ -1633,7 +1644,7 @@ msgid "Show the tool that was used" msgstr "Prikaži alat koji se koristio" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Verzija" @@ -1661,10 +1672,12 @@ msgid " - Show history" msgstr " – Prikaži kronologiju" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "Neuspjela obrada opcije --since" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "Neuspjela obrada opcije --until" @@ -1680,11 +1693,11 @@ msgstr "Prikaži sustavske instalacije" msgid "Show specific system-wide installations" msgstr "Prikaži određene sustavske instalacije" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Prikaži referencu" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Prikaži izmjenu" @@ -1696,15 +1709,15 @@ msgstr "Prikaži izvor" msgid "Show size" msgstr "Prikaži veličinu" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Prikaži metapodatke" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Prikaži okruženje" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Prikaži sdk" @@ -1716,8 +1729,8 @@ msgstr "Prikaži dozvole" msgid "Query file access" msgstr "Upitaj stanje pristupa datoteka" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1735,7 +1748,7 @@ msgstr "Prikaži lokaciju" msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "IME [GRANA] – Dobij informacije o instaliranom programu ili okruženju" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "IME se mora odrediti" @@ -1744,85 +1757,87 @@ msgstr "IME se mora odrediti" msgid "ref not present in origin" msgstr "reference nema u izvoru" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Upozorenje: Izmjena nema flatpak metapodatke\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Referenca:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Arhitektura:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Grana:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Verzija:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Licenca:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Zbirka:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Instalacija:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Instalirano:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Okruženje:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Datum:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Predmet:" @@ -1835,15 +1850,15 @@ msgid "Latest commit:" msgstr "Zadnja izmjena:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Izmjena:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Nadređeni:" @@ -1852,14 +1867,14 @@ msgid "Alt-id:" msgstr "Alt-id:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "Kraj-života:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "Kraj-života-premještanje:" @@ -1868,148 +1883,149 @@ msgid "Subdirectories:" msgstr "Poddirektoriji:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Proširenje:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Izvor:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Podstaze:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "ne održava se" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "nepoznato" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Nemoj povući, samo instaliraj s lokalne predmemorije" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Nemoj implementirati, samo preuzmi na lokalnu predmemoriju" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Nemoj instalirati povezane reference" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Nemoj provjeritit/instalirati ovisnosti za okruženje" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "Nemoj automatski prikvačiti eksplicitne instalacije" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Nemoj koristiti statičke delta datoteke" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Pretpostavi da je LOKACIJA .flatpak paket s jednom datotekom" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Pretpostavi da je LOKACIJA .flatpakref opis programa" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "Provjeri potpise paketa s GPG ključem iz DATOTEKA (- za stdin)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Instaliraj samo ovu podstazu" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Automatski odgovori s „Da” na sva pitanja" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Najprije deinstaliraj, ako je već instalirano" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "Proizvedi najmanji rezultat i ne postavljaj pitanja" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Aktualiziraj instalaciju, ako je već instalirana" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "Koristi ovaj lokalni repozitorij za lokalno preuzimanje" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Ime datoteke paketa se mora odrediti" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Paketi udaljenih repozitorija nisu pdržani" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Ime datoteke ili uri se moraju odrediti" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "" "[LOKACIJA/UDALJENI-ROPOZITORIJ] [REFERENCA …] – Instaliraj programe ili " "okruženja" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "Mora se odrediti barem jedna REFERENCA" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Traženje poklapanja …\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, fuzzy, c-format msgid "No remote refs found for ‘%s’" msgstr "Nema referenca udaljenog repozitorija koje sliče „%s”" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Neispravna grana %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "" "Ništa se ne poklapa s %s u lokalnom repozitoriju za udaljeni repozitorij %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Ništa se ne poklapa s %s u udaljenom repozitoriju %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Preskakanje: %s\n" @@ -2047,52 +2063,52 @@ msgstr "Izradi popis instaliranih programa" msgid "Arch to show" msgstr "Arhitektura za prikaz" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "" "Izradi popis svih referenca (uključujući lokalizacije/pronalaženje grešaka)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "Izradi popis programa koji koriste OKRUŽENJE" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Ime" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Prikaži ime" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Opis" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Prikaži opis" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "ID programa" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Prikaži ID programa" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Prikaži verziju" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Okruženje" @@ -2100,7 +2116,7 @@ msgstr "Okruženje" msgid "Show the used runtime" msgstr "Prikaži korišteno okruženje" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Prikaži repozitorij izvora" @@ -2112,7 +2128,7 @@ msgstr "Prikaži instalaciju" msgid "Active commit" msgstr "Aktivna izmjena" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Prikaži aktivnu izmjenu" @@ -2124,35 +2140,35 @@ msgstr "Zadnja izmjena" msgid "Show the latest commit" msgstr "Prikaži zadnju izmjenu" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Instalirana veličina" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Prikaži instaliranu veličinu" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Opcije" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Prikaži opcije" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, fuzzy, c-format msgid "Unable to load details of %s: %s" -msgstr "Nije moguće učitati sažetak s udaljenog repozitorija %s: %s" +msgstr "Nije moguće stvoriti datoteku %s" -#: app/flatpak-builtins-list.c:189 -#, c-format +#: app/flatpak-builtins-list.c:188 +#, fuzzy, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Nije moguće stvoriti datoteku %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - Izradi popis programa i/ili okruženja" @@ -2164,7 +2180,7 @@ msgstr "Arhitektura za postaviti kao trenutačnu za" msgid "APP BRANCH - Make branch of application current" msgstr "PROGRAM GRANA – Postavi granu programa kao trenutačnu" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "PROGRAM se mora odrediti" @@ -2189,10 +2205,12 @@ msgstr "" "poklapaju s uzorcima" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "Nema maskiranih uzoraka\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Maskirani uzorci:\n" @@ -2208,26 +2226,26 @@ msgstr "Prikaži postojeća nadjačavanja" msgid "[APP] - Override settings [for application]" msgstr "[PROGRAM] – Postavke nadjačavanja [za program]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABLICA] [ID] – Izradi popis dozvola" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Tablica" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Objekt" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "Program" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Podaci" @@ -2286,10 +2304,12 @@ msgstr "" "uzorcima" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "Nema prikvačenih uzoraka\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "Prikvačeni uzorci:\n" @@ -2365,124 +2385,124 @@ msgstr "Prikaži, je li program pozadina" msgid " - Enumerate running sandboxes" msgstr " - Pobroji pokrenute sandboxe" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Ne radi ništa, ako navedeni udaljeni repozitorij postoji" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "LOKACIJA određuje datoteku konfiguracije, nije lokacija repozitorija" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Deaktiviraj GPG provjeru" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Označi udaljeni repozitorij da ne pobrojava" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Označi udaljeni repozitorij da se ne koristi za ovisnosti" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "Postavi prioritet (standardno je 1, veći broj znači veći prioritet)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORITET" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "Imenovani podskup za ovaj udaljeni repozitorij" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "PODSKUP" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Korišteno lijepo ime za ovaj udaljeni repozitorij" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "Kratki komentar za ovaj udaljeni repozitorij" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "Komentar u obliku odlomka za ovaj udaljeni repozitorij" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "URL za web-stranicu za ovaj udaljeni repozitorij" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "URL za ikonu za ovaj udaljeni repozitorij" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Korištena standardna grana za ovaj udaljeni repozitorij" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Uvezi GPG ključ iz DATOTEKA (- za stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Postavi stazu na lokalnu DATOTEKU filtra" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Deaktiviraj udaljeni repozitorij" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Ime autentifikatora" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Automatski instaliraj autentifikatora" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "Nemoj automatski instalirati autentifikatora" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "Ne prati preusmjeravanje postavljeno u datoteci sažetka" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "Nije moguće učitati uri %s: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Nije moguće učitati datoteku %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "IME LOKACIJE – Dodaj udaljeni repozitorij" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "GPG provjera je potrebna, ako su zbirke aktivirane" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "Udaljeni repozitorij „%s” već postoji" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Neispravno ime autentifikatora %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "" @@ -2511,61 +2531,61 @@ msgid "Can't remove remote '%s' with installed refs" msgstr "" "Nije moguće ukloniti udaljeni repozitorij „%s” s instaliranim referencama" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "Izmijena za prikaz informacija za" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Prikaži log-zapise" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Prikaži nadređeni" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Koristi lokalnu predmemoriju, čak i ako je zastarjela" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "Navedi samo reference koje su dostupne kao lokalna preuzimanja" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " UDALJENI_REPOZITORIJ REFERENCA – Prikaži informacije o programu ili " "okruženju u udaljenom repozitoriju" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "UDALJENI_REPOZITORIJ i REFERENCA se moraju odrediti" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Preuzimanje:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "Kronologija:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Izmjena:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Predmet:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Datum:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Upozorenje: Izmjena %s nema flatpak metapodatke\n" @@ -2594,7 +2614,7 @@ msgstr "Prikaži URL" msgid "Show the collection ID" msgstr "Prikaži ID zbirke" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "Podskup" @@ -2650,39 +2670,39 @@ msgstr "Prikaži ikonu" msgid " - List remote repositories" msgstr " - Izradi popis udaljenih repozitorija" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Prikaži arhitekture i grane" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Prikaži samo programe" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Prikaži samo programe" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Prikaži samo one, za koje postoje aktualiziranja" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Ograniči na ovu arhitekturu (* za sve)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Prikaži okruženje" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Veličina preuzimanja" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Prikaži veličinu preuzimanja" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr "" " [UDALJENI-REPOZITORIJ ili URI] – Prikaži dostupna okruženja i programe" @@ -2813,224 +2833,231 @@ msgstr "Greška pri ponovnom instaliranju %s: %s\n" msgid "- Repair a flatpak installation" msgstr "- Popravi flatpak instalaciju" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Uklanjanje neimplementirane reference %s …\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Preskače se neimplementirana referenca %s …\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d/%d] Potvrđivanje %s…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "Probno pokretanje: " -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "Uklanjanje reference %s zbog nedostajućeg objekta\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "Uklanjanje reference %s zbog neispravnog objekta\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "Uklanjanje reference %s zbog %d\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "Provjeravanje udaljenih repozitorija …\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "Udaljeni repozitorij „%s” za referencu %s nedostaje\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "Udaljeni repozitorij „%s” za referencu %s je deaktiviran\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "Odrezivanje predmeta\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "Brisanje .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "Ponovno instaliranje referenca\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "Ponovno instaliranje uklonjenih referenca\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "Prilikom uklanjanja appstreama za %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "Prilikom implementiranja appstreama za %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Modus repozitorija: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "Indeksirani sažetci: %s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "točno" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "netočno" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "Podsažetci: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "Verzija predmemorije : %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "Indeksirane delta datoteke: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Naslov: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Komentar: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Opis: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Početna web-stranica: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Ikona: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "ID zbirke: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Standardna grana: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "URL preusmjeravanja: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "Implementiraj ID zbirke: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Ime autentifikatora: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "Instalacija autentifikatora: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "Hash GPG ključa: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "%zd grane sažetka\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Instalirano" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Preuzimanje" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "Podskupovi" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "Sažetak poruke" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "Količina kronologije" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Ispiši opće informacije o repozitoriju" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Izradi popis grana u repozitoriju" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Ispiši metapodatke za granu" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Prikaži izmjene za jednu granu" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "Ispiši informacije o podskupovima repozitorija" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "Ograniči informacije na podskupove s ovim prefiksom" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "LOKACIJA – Održavanje repozitorija" @@ -3122,11 +3149,11 @@ msgstr "Koristi STAZU umjesto programi/program" msgid "Use PATH instead of the runtime's /usr" msgstr "Koristi STAZU umjesto okruženje/korisnik" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "PROGRAM [ARGUMENT …] – Pokreni jedan program" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "okruženje/%s/%s/%s nije instalirano" @@ -3143,15 +3170,15 @@ msgstr "Udaljeni repozitoriji" msgid "Show the remotes" msgstr "Prikaži udaljene repozitorije" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "TEKST – Traži tekst u programima/okruženjima udaljenog repozitorija" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "TEKST se mora odrediti" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Nema poklapanja" @@ -3233,6 +3260,7 @@ msgstr "" "flatpak-pin(1):\n" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Ništa neupotrebljenog za deinstalirati\n" @@ -3257,6 +3285,7 @@ msgid "Warning: %s is not installed\n" msgstr "Upozorenje: %s nije instalirano\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "" @@ -3297,6 +3326,7 @@ msgid "With --commit, only one REF may be specified" msgstr "Pomoću --commit može se odrediti samo jedna REFERENCA" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Traženje aktualiziranja …\n" @@ -3306,28 +3336,29 @@ msgid "Unable to update %s: %s\n" msgstr "Nije moguće aktualizirati %s: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Nema se što raditi.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "Udaljeni repozitorij „%s” je pronađen u višestrukim instalacijama:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Koji želiš koristiti (0 za prekid)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "Nije odabran udaljeni repozitorij za rješavanje „%s”, što postoji u više " "instalacija" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3336,13 +3367,13 @@ msgstr "" "Udaljeni repozitorij „%s” nije pronađen\n" "Savjet: Koristi flatpak remote-add za dodavanje udaljeneg repozitorija" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Udaljeni repozitorij „%s” nije pronađen u %s instalaciji" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3351,140 +3382,131 @@ msgstr "" "Pronađena je referenca „%s” u udaljenom repozitoriju „%s” (%s).\n" "Koristiti ovu referencu?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "Nije odabrana referenca za rješavanje poklapanja za „%s”" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "" "Slične reference su pronađene za „%s” u udaljenom repozitoriju „%s” (%s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "Pronađena na instalirana referenca „%s” (%s). Je li to točno?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "Sve gore navedeno" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "Slične instalirane reference su pronađene za „%s”:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"Pronađena je slična referenca „%s” u udaljenom repozitoriju „%s” (%s).\n" -"Koristiti ovaj udaljeni repozitorij?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "Pronađeni udaljeni repozitoriji s referencom koja sliči „%s”:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "Nije odabran udaljeni repozitorij za rješavanje poklapanja za „%s”" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "Pronađeni udaljeni repozitoriji s referencom koja sliči „%s”:" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "Aktualiziranje appstream podatke za korisnički udaljeni repozitorij %s" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Aktualiziranje appstream podatke za udaljeni repozitorij %s" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Greška pri aktualiziranju" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "Udaljeni repozitorij „%s” nije pronađen" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Dvosmislen nastavak: „%s”." #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "Moguće vrijednosti su :s[tart], :m[iddle], :e[nd] ili :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Neispravan datotečni nastavak: „%s”." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Dvosmislen stupac: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Nepoznati stupac: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Dostupni stupci:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Prikaži sve stupce" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Prikaži dostupne stupce" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" "Dodaj :s[tart], :m[iddle], :e[nd] ili :f[ull] za mijenjanje izostavljanja" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "" "Potrebno okruženje za %s (%s) je pronađeno u udaljenom repozitoriju %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Želiš li ga instalirati?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "Potrebno okruženje za %s (%s) je pronađeno u udaljenim repozitorijima:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Koji želiš instalirati (0 za prekid)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, fuzzy, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Konfiguriraj %s kao novi udaljeni repozitorij „%s”" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3496,7 +3518,7 @@ msgstr "" "Treba li se udaljeni repozitorij čuvati za buduće instalacije?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3507,128 +3529,128 @@ msgstr "" " %s\n" "Konfiguriraj ovo kao novi udaljeni repozitorij „%s”" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Instaliranje …" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Instaliranje %d/%d …" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Aktualiziranje …" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Aktualiziranje %d/%d …" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Deinstaliranje …" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Deinstaliranje %d/%d …" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Informacija: %s je preskočeno" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, fuzzy, c-format msgid "Warning: %s%s%s already installed" msgstr "%s već instalirano" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, fuzzy, c-format msgid "Error: %s%s%s already installed" msgstr "%s već instalirano" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, fuzzy, c-format msgid "Warning: %s%s%s not installed" msgstr "Upozorenje: %s nije instalirano\n" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, fuzzy, c-format msgid "Error: %s%s%s not installed" msgstr "%s/%s/%s nije instalirano" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, fuzzy, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "%s treba noviju flatpak verziju" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, fuzzy, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "%s treba noviju flatpak verziju" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 #, fuzzy msgid "Warning: Not enough disk space to complete this operation" msgstr "Nema dovoljno prostora na disku za završavanje ove operacije" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 #, fuzzy msgid "Error: Not enough disk space to complete this operation" msgstr "Nema dovoljno prostora na disku za završavanje ove operacije" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, fuzzy, c-format msgid "Warning: %s" msgstr "Upozorenje: " -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, fuzzy, c-format msgid "Error: %s" msgstr "Greška:" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, fuzzy, c-format msgid "Failed to install %s%s%s: " msgstr "Neuspjelo premještanje %s na %s: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, fuzzy, c-format msgid "Failed to update %s%s%s: " msgstr "Neuspjelo %s %s: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, fuzzy, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Neuspjelo premještanje %s na %s: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, fuzzy, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Neuspjelo premještanje %s na %s: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "Potrebna je autentifikacija za udaljeni repozitorij „%s”\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Otvoriti preglednik?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "Prijava zahtijeva udaljeni repozitorij %s (domena %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Lozinka" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, fuzzy, c-format msgid "" "\n" @@ -3636,7 +3658,7 @@ msgid "" "%s%s%s branch %s%s%s\n" msgstr "Informacija: (prikvačeno) %s//%s je kraj-života, namjesto %s\n" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, fuzzy, c-format msgid "" "\n" @@ -3644,7 +3666,7 @@ msgid "" "%s%s%s\n" msgstr "Informacija: %s//%s je kraj-života, namjesto %s\n" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, fuzzy, c-format msgid "" "\n" @@ -3653,113 +3675,109 @@ msgid "" msgstr "Informacija: %s//%s je kraj-života, namjesto %s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, fuzzy, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Informacija: (prikvačeno) %s//%s je kraj-životaa, s razlogom:\n" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, fuzzy, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Informacija: %s//%s je kraj-života, s razlogom:\n" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, fuzzy, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Informacija: %s//%s je kraj-života, s razlogom:\n" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, fuzzy, c-format msgid "Info: applications using this extension:\n" msgstr "Programi koji koriste ovo okruženje:\n" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, fuzzy, c-format msgid "Info: applications using this runtime:\n" msgstr "Programi koji koriste ovo okruženje:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "Aktualiziranje na premještenu verziju\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "Neuspjelo premještanje %s na %s: " -#: app/flatpak-cli-transaction.c:1009 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Neuspjelo premještanje %s na %s: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, fuzzy, c-format msgid "New %s%s%s permissions:" msgstr "Nove %s dozvole:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, fuzzy, c-format msgid "%s%s%s permissions:" msgstr "%s dozvole:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Upozorenje: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Op" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "djelomično" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Nastaviti s ovim promjenama na instalaciji korisnika?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Nastaviti s ovim promjenama na instalaciji sustava?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Nastaviti s ovim promjenama na %s?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Promjene završene." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Deinstaliranje završeno." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Instaliranje završeno." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Aktualiziranje završeno." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Ustanovljene su neke greške" @@ -4070,34 +4088,34 @@ msgstr "" "programi možda neće pojaviti na radnoj površini, sve dok se sesija ponovo ne " "pokrene." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" "Višestruke instalacije određene za naredbu koja radi na jednoj instalaciji" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "Pogledaj „%s --help”" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "„%s” nije flatpak naredba. Misliš možda na „%s%s”?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "„%s” nije flatpak naredba" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Nijedna naredba nije određena" @@ -4160,16 +4178,16 @@ msgstr "%s Neuspjelo %s %s: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Greška pri ponovnom instaliranju %s: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s već instalirano" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s još nije instalirano" @@ -4198,58 +4216,54 @@ msgstr "Informacija: %s je kraj-života, s razlogom: %s\n" msgid "Failed to rebase %s to %s: %s\n" msgstr "Neuspjelo premještanje %s na %s: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Neuspjelo premještanje %s na %s: %s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "Nijedan autentifikator nije konfiguriran za udaljeni repozitorij „%s”" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Nepoznata vrsta dijeljenja %s, ispravne vrijednosti su: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Nepoznata vrsta pravila %s, ispravne vrijednosti su: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Neispravno dbus ime %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Nepoznata vrsta utičnice %s, ispravne vrijednosti su: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Nepoznata vrsta uređaja %s, ispravne vrijednosti su: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Nepoznata vrsta funkcije %s, ispravne vrijednosti su: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "Nepoznata lokacija „%s” datotečnog sustava sadrži „..”" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" "--filesystem=/ nije dostupno, koristi --filesystem=host za sličan rezultat" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4258,182 +4272,216 @@ msgstr "" "Nepoznata lokacija %s datotečnog sustava, ispravne lokacije su: host, host-" "os, host-etc, home, xdg-*[/…], ~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Neispravan format okruženja %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "Ime varijable okruženja ne smije sadržavati '=': %s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "--add-policy argumenti moraju biti u obliku PODSUSTAV.KLJUČ=VRIJEDNOST" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "--add-policy vrijednosti ne smiju započeti s uskličnikom (!)" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" "--remove-policy argumenti moraju biti u obliku PODSUSTAV.KLJUČ=VRIJEDNOST" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "--remove-policy vrijednosti ne smiju započeti s uskličnikom (!)" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Dijeli s računalom" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "DIJELI" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Prekini dijeliti s računalom" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Omogući programu vidjeti utičnicu" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "UTIČNICA" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Onemogući programu vidjeti utičnicu" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Omogući programu vidjeti uređaj" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "UREĐAJ" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Onemogući programu vidjeti uređaj" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Dozvoli funkciju" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "FUNKCIJA" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Nemoj dozvoliti funkciju" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "Omogući programu vidjeti datotečni sustav (:ro za samo-za-čitanje)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "DATOTEČNI-SUSTAV[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Onemogući programu vidjeti datotečni sustav" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "DATOTEČNI-SUSTAV" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Postavi varijablu okruženja" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VARIJABLA=VRIJEDNOST" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "Čitaj varijable okruženja u env -0 formatu iz FD-a" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "FD" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "Ukloni varijablu iz okruženja" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "VARIJABLA" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Dozvoli programu posjedovati ime na busu sesije" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "DBUS_IME" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Dozvoli programu komunicirati s imenom na busu sesije" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "Nemoj dozvoliti programu komunicirati s imenom na busu sesije" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Dozvoli programu posjedovati ime na busu sustava" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Dozvoli programu komunicirati s imenom na busu sustava" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "Nemoj dozvoliti programu komunicirati s imenom na busu sustava" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Dozvoli programu posjedovati ime na busu sustava" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Dodaj opću opciju pravila" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "PODSUSTAV.KLJUČ=VRIJEDNOST" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Ukloni opću opciju pravila" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "Neka podstaza osnovnog direktorija postane trajna" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "IME-DATOTEKE" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Neka podstaza osnovnog direktorija postane trajna" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Ne zahtijevaj pokrenutu sesiju (cgroups se ne izrađuje)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4442,434 +4490,431 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, fuzzy, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "Nije moguće stvoriti privremeni direktorij u %s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "Kongiurirani ID „%s” zbirke, nije u datoteci sažetka" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Nije moguće učitati sažetak s udaljenog repozitorija %s: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "Nema ovakve reference „%s” u udaljenom repozitoriju %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 -#, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 +#, fuzzy, c-format +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "" "Nema unosa za %s u sažetku flatpak predmemorije udaljenog repozitorija „%s” " -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "Nema sažetka ili Flatpak predmemorije za udaljeni repozitorij „%s”" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "Nema unosa za %s u predmemoriji sažetka udaljenog repozitorija „%s” " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Nedostaje xa.data u sažetku za udaljeni repozitorij „%s”" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Nepodržana verzija %d sažetka za udaljeni repozitorij „%s”" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "OCI indeks udaljenog repozitorija nema uri registra" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Nije moguće pronaći referencu %s u udaljenom repozitoriju %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "Slika nije manifest" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" "Izmjena nema zatraženu referencu „%s” u metapodacima za povezivanje reference" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "Kongiurirani ID „%s” zbirke, nije u metapodacima za povezivanje" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" "Nije moguće pronaći najnoviji kontrolni zbroj za referencu %s u udaljenom " "repozitoriju %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, fuzzy, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" "Nema unosa za %s u sažetku prorijeđene flatpak predmemorije udaljenog " "repozitorija " -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "Metapodaci izmjene za %s ne poklapaju se s očekivanim metapodacima" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "Nije moguće povezati se na bus sustava" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "Korisnička instalacija" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "Instalacija sustava (%s)" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Nema nadjačavanja za %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "%s (izmjena %s) nije instalirano" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "Greška prilikom obrade sustavske datoteke flatpak repozitorija %s: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Prilikom otvaranja repozitorija %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "Konfiguracijski ključ %s nije postavljen" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "Nijedan se trenutačni uzorak %s ne poklapa s %s" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "Nema appstream izmjene za implementiranje" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" "Nije moguće povući s nepouzdanog ne-gpg provjerenog udaljenog repozitorija" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" "Dodatni podaci nisu podržani za ne-gpg provjerene lokalne sustavske " "instalacije" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Neispravan kontrolni zbroj za uri dodatnih podataka %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Prazno ime za uri dodatnih podataka %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "URI nepodržanih dodatnih podataka %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Neuspjelo učitavanje lokalnih extra-data (dodatnih podataka) %s: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Kriva veličina za extra-data %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "Prilikom preuzimanja %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Kriva veličina za dodatne podatke %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Neispravan kontrolni zbroj za dodatne podatke %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s izmjena %s već instalirano" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "Prilikom povlačenja %s s udaljenog repozitorija %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "" "GPG potpisi su pronađeni, ali niti jedan se ne nalazi u pouzdanom privjesku " "za ključeve" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "Izmjena za „%s” nema povezivanje s referencom" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "Izmjena za „%s” nije u očekivanoj povezanoj referenci: %s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "Samo se programi mogu izraditi kao trenutačni" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Nedovoljno memorije" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Neuspjelo čitanje iz izvezene datoteke" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Greška pri čitanju mimetype xml datoteke" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Neispravni mimetype xml datoteke" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "Datoteka „%s” D-Bus usluge ima krivo ime" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "Neispravni Exec argument %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "Prilikom dohvaćanja nespojenih metapodataka: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "Dodatni podaci nedostaju u odspojenim metapodacima" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "Prilikom stvaranja dodatnog direktorija: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Neispravan kontrolni zbroj za dodatne podatke" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Kriva veličina za dodatne podatke" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "Prilikom pisanja datoteke dodatnih podataka „%s”: " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "Dodatni podaci %s nedostaju u odspojenim metapodacima" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "apply_extra skripta neuspjela, stanje izlaza %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" "Instaliranje programa %s nije dozvoljeno na osnovi administratorskih pravila" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "Prilikom pokušaja rješavanja referene %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s nije dostupan" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Nije moguće stvoriti direktorij za implementaciju" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Neuspjelo čitanje izmjene %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "Prilikom pokušaja mijenjanja %s u %s: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "Prilikom pokušaja mijenjanja podstaze metapodataka: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "Prilikom pokušaja mijenjanja podstaze „%s”: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Prilikom pokušaja uklanjanja postojećeg dodatnog direktorija: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Prilikom pokušaja primjenjivanja dodatnih podataka: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Neispravna referenca izmjene %s: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "Implementirana referenca %s ne se poklapa s izmjenom (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "Grana implementirane reference %s ne se poklapa s izmjenom (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s grana %s već instalirano" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "Nije bilo moguće odspojiti datotečni sustav revokefs-fuse na %s: " -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Ova %s verzija je već instalirana" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "" "Nije moguće promijeniti udaljeni repozitorij tijekom instaliranja paketa" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "" "Nije moguće aktualizirati određenu izmjenu bez administratorskih dozvola" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "Nije moguće ukloniti %s, mora postojati za: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s grana %s nije instalirano" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "%s izmjena %s nije instalirano" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "Odrezivanje repozitorija neuspjelo: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "Neuspjelo učitavanje filtra „%s”" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "Neuspjela obrada filtra „%s”" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "Neuspjelo zapisivanje predmemorije sažetka: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "Nema oci sažetka u predmemoriji za udaljeni repozitorij „%s”" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "Nema predmemoriranog sažetka za udaljeni repozitorij „%s”" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "" "Neispravan kontrolni zbroj za indeksirani sažetak %s za udaljeni repozitorij " "„%s”" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " @@ -4878,246 +4923,275 @@ msgstr "" "Popis za %s na udaljenom repozitoriju nije dostupan: poslužitelj nema " "datoteku sažetka. Provjeri ispravnost URL-a za remote-add." -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "" "Neispravan kontrolni zbroj za indeksirani sažetak %s za udaljeni repozitorij " "„%s”" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "Dostupne su višestruke grane za %s, moraš odrediti jednu od: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Ništa se ne poklapa s %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Nije moguće naći referencu %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Greška pri traženju udaljenog repozitorija %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Greška pri traženju lokalnog repozitorija: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s nije instalirano" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Nije bilo moguće naći instalaciju %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "Neispravan datotečni format, nema %s grupe" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Neispravna verzija %s, podržava se samo 1" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "Neispravan datotečni format, %s nije određen" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "Neispravan datotečni format, gpg ključ neispravan" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "ID zbirke zahtijeva GPG ključ" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Okruženje %s, grana %s je već instalirano" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Program %s, grana %s je već instaliran" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" "Nije moguće ukloniti udaljeni repozitorij „%s” s instaliranom referencom %s " "(barem)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Neispravan znak „/” u imenu udaljenog repozitorija: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "Nijedna konfiguracija za udaljeni repozitorij %s nije određena" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Preskače se brisanje reference zrcaljenog repozitorija (%s, %s) …\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, fuzzy, c-format msgid "Unable to open path \"%s\": %s" msgstr "Nije moguće aktualizirati %s: %s\n" -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, fuzzy, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "Nije moguće stvoriti datoteku %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, fuzzy, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "Nije moguće aktualizirati simbolsku poveznicu %s/%s" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "Prazan znakovni niz nije broj" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "„%s” nije nedodijeljeni broj" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "Broj „%s” je izvan granica [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "Referenca „%s” nije instalirana" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "Program %s nije instaliran" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "Udaljeni repozitorij „%s” već postoji" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "Kako je zatraženo, %s je samo povučen, ali nije instaliran" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "Nije moguće stvoriti direktorij %s" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "Nije moguće zaključati %s" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "Nije moguće otvoriti direktorij %s" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "Nije moguće stvoriti privremeni direktorij u %s" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "Nije moguće stvoriti datoteku %s" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Nije moguće aktualizirati simbolsku poveznicu %s/%s" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "Podržava se samo Bearer autentifikacija" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "Samo domena u zahtjevu autentifikacije" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "Neispravna domena u zahtjevu autentifikacije" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "Autorizacija je neuspjela: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Autorizacija je neuspjela" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "Neočekivano stanje odgovora %d prilikom traženjenja tokena: %s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "Neispravan odgovor na zahtjev autentifikacije" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "Neispravan datotečni format delta" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "Nema gpg ključa s ID oznakom %s (početni direktorij: %s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, fuzzy, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Nije moguće pregledati ID ključa %s: %d)" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "Greška pri potpisivanju izmjene: %d" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Neispravna konfiguracija OCI slike" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Krivi kontrolni zbroj sloja, očekivan %s, dobiven %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "Nema određene reference za OCI sliku %s" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Kriva referenca (%s) je određena za OCI sliku %s, očekuje se %s" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5138,318 +5212,372 @@ msgstr "Preuzimanje dodatnih podataka: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Preuzimanje datoteka: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Ime ne može biti prazno" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Ime ne može sadržati više od 255 znakova" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Ime ne može započeti s točkom" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Ime ne može započeti s %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Ime ne može završiti s točkom" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Samo segment prezimena smije sadržati crticu (-)" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Segment imena ne može započeti s %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Ime ne može sadržati %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "Imena moraju sadržati barem dvije točke" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "Arhitektura ne može biti prazna" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "Arhitektura ne može sadržati %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Grana ne može biti prazna" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Grana ne može započeti s %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Grana ne može sadržati %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "Referenca predugačka" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "Neispravno ime udaljenog repozitorija" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s nije program ili okruženje" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Krivi broj komponenata u %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "Neispravno ime %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "Neispravna arhitektura: %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Neispravno ime %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "Neispravna arhitektura: %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "Neispravna grana: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "Krivi broj komponenata u djelomičnoj referenci %s" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr " platforma za razvoj" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr " platforma" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr " osnova programa" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr " ispravljanje simbola" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr " izvorni kod" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " prijevodi" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr " dokumenti" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "Neispravni ID %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Neispravno ime repozitorija: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "Url nije određen" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "GPG provjera mora biti aktivirana, kad se postavlja ID oznaka zbirke" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Neuspjelo otvaranje datoteke s informacijama o programu" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Nema izvora dodatnih dodataka" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Nije moguće stvoriti pipe za sinkronizaciju" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "Neispravno %s: Nedostaje grupa „%s”" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Neuspjela sinkronizacija s dbus proxijem" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "Neispravno %s: Nedostaje ključ „%s”" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Neispravnan gpg ključ" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Greška pri kopiranju ikone 64 × 64 za komponentu %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Greška pri kopiranju ikone 128 × 128 za komponentu %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s je kraj-života, zanemaruje se za appstream" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Nema appstream podataka za %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Neispravan paket, nema reference u metapodacima" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "" +"Zbirka „%s” paketa ne se poklapa sa zbirkom „%s” udaljenog repozitorija" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Metapodaci u zaglavlju i programu su nedosljedni" -#: common/flatpak-run.c:2207 +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "Nema korisničke sesije systemd, cgroups nije dostupno" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "Nije moguće alocirati id instance" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Neuspjelo otvaranje datoteke flatpak-info: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Neuspjelo otvaranje datoteke bwrapinfo.json: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "Neuspjelo zapisivanje ID-u instance fd: %s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "Inicijaliziraj seccomp neuspjelo" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, fuzzy, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Neuspjelo dodavanje arhitekture seccomp filtru" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, fuzzy, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Neuspjelo dodavanje arhitekture višestrukih arhitektura seccomp filtru" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, fuzzy, c-format msgid "Failed to block syscall %d: %s" msgstr "Neuspjelo blokiranje syscall %d" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, fuzzy, c-format msgid "Failed to export bpf: %s" msgstr "Neuspio bdf izvoz" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "Neuspjelo otvaranje „%s”" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ldconfig neuspjelo, stanje izlaza %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "Nije moguće otvoriti generirani ld.so.cache" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" "Pokretanje programa %s nije dozvoljeno na osnovi administratorskih pravila" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 #, fuzzy msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" "„flatpak run” nije namijenjen za pokretanje kao `sudo flatpak run`, umjesto " "toga koristi `sudo -i` ili `su -l` i pozovi „flatpak run” iz nove ljuske" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "Neuspjelo migriranje iz %s: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" "Neuspjelo migriranje starog direktorija za podatke programa %s u novo ime " "%s: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "" "Neuspjelo stvaranje simboličke veze (symlink) prilikom migriranja %s: %s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Neuspjelo otvaranje datoteke s informacijama o programu" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Nije moguće stvoriti pipe za sinkronizaciju" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Neuspjela sinkronizacija s dbus proxijem" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Upozorenje: Problem u treženju povezanih referenca: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "Program %s zahtijeva okruženje %s, koje nije pronađeno" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "Program %s zahtijeva okruženje %s, koje nije instalirano" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "Nije moguće deinstalirati %s, što %s zahtijeva" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Udaljeni repozitorij „%s” deaktiviran, zanemaruje se %s aktualiziranje" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s je već instalirano" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s je već instalirano s udaljenog repozitorija %s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "Neispravni .flatpakref: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "" "Greška pri aktualiziranju metapodataka udaljenog repozitorija za „%s”: %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " @@ -5458,55 +5586,55 @@ msgstr "" "Upozorenje: Obradi greške u preuzimanju izmjena kao nekritične, budući da je " "%s već instaliran: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "Nijedan autentifikator nije instaliran za udaljeni repozitorij „%s”" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "Neuspjelo dobavljanje tokena za referencu: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "Neuspjelo dobavljanje tokena za referencu" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 #, fuzzy msgid "any remote" msgstr "Udaljeni repozitorij" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "URL %s Flatpak repozitorija nije datoteka, HTTP ili HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "Nije moguće učitati ovisnu datoteku %s: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "Neispravni .flatpakrepo: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "Transakcija je već izvršena" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." @@ -5514,16 +5642,16 @@ msgstr "" "Odbija raditi na korisničkoj instalaciji kao administrator! To može dovesti " "do krivih vlasništva nad datotekama i do grešaka u dozvolama." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Prekinuto od korisnika" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "%s se preskače zbog prethodne greške" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "Prekinuto zbog greške (%s)" @@ -5570,138 +5698,113 @@ msgstr "" msgid "URI is not absolute, and no base URI was provided" msgstr "" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "Globalna naredba ne može usporediti aplikacije" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" +msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "Prazna globalna naredba" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "Previše segmenata u globalnoj naredbi" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "Neispravni ID %s: %s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" -msgstr "Neispravan znak „%c” u globalnoj naredbi" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" -msgstr "Nedostaje globalna naredba u %d. retku" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" -msgstr "Dodatni tekst u %d. retku" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "u %d. retku" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "Neočekivana riječ „%s” u %d. retku" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "Neispravno %s: Nedostaje grupa „%s”" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "Neispravno %s: Nedostaje ključ „%s”" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Neispravnan gpg ključ" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Nema izvora dodatnih dodataka" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Greška pri kopiranju ikone 64 × 64 za komponentu %s: %s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Greška pri kopiranju ikone 128 × 128 za komponentu %s: %s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s je kraj-života, zanemaruje se za appstream" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "Globalna naredba ne može usporediti aplikacije" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Nema appstream podataka za %s: %s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Prazna globalna naredba" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "Neispravan paket, nema reference u metapodacima" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "Previše segmenata u globalnoj naredbi" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "" -"Zbirka „%s” paketa ne se poklapa sa zbirkom „%s” udaljenog repozitorija" - -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "Metapodaci u zaglavlju i programu su nedosljedni" +msgid "Invalid glob character '%c'" +msgstr "Neispravan znak „%c” u globalnoj naredbi" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "Neispravna konfiguracija OCI slike" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "Nedostaje globalna naredba u %d. retku" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "Krivi kontrolni zbroj sloja, očekivan %s, dobiven %s" +msgid "Trailing text on line %d" +msgstr "Dodatni tekst u %d. retku" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "Nema određene reference za OCI sliku %s" +msgid "on line %d" +msgstr "u %d. retku" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "Kriva referenca (%s) je određena za OCI sliku %s, očekuje se %s" +msgid "Unexpected word '%s' on line %d" +msgstr "Neočekivana riječ „%s” u %d. retku" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "Neispravni require-flatpak argument %s" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s treba noviju flatpak verziju (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "Prazan znakovni niz nije broj" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "„%s” nije nedodijeljeni broj" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "Broj „%s” je izvan granica [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "Nije udaljeni OCI, nedostaje summary.xa.oci-repository" @@ -5714,42 +5817,46 @@ msgstr "Nije udaljeni OCI" msgid "Invalid token" msgstr "Neispravan token" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "Nema podrške za portal" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Odbij" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Aktualiziraj" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "Aktualizirati %s?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "Program se želi aktualizirati." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" "Pristup aktualiziranju je uvijek moguće promijeniti u postavkama privatnosti." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "Aktualiziranje programa nije dozvoljeno" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" "Samoauktualiziranje nije podržano, za novu verziju su potrebne nove dozvole" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "Aktualiziranje je neočekivano prekinuto" @@ -5972,6 +6079,31 @@ msgstr "" "Potrebna je autentifikacija za instaliranje softvera, koja je ograničena " "tvojim pravilima roditeljskog nadzora" +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "Pronađena je slična referenca „%s” u udaljenom repozitoriju „%s” (%s).\n" +#~ "Koristiti ovaj udaljeni repozitorij?" + +#, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "" +#~ "Nema unosa za %s u predmemoriji sažetka udaljenog repozitorija „%s” " + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Neuspjelo premještanje %s na %s: " + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Neuspjelo premještanje %s na %s: %s\n" + +#, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Nije moguće otvoriti direktorij %s" + #~ msgid "install" #~ msgstr "instaliraj" diff --git a/po/hu.gmo b/po/hu.gmo deleted file mode 100644 index 5beb98fd508ca27af905059bfe5d62522dc98469..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47294 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 diff --git a/po/hu.po b/po/hu.po index 85b4784..d1f0ffd 100644 --- a/po/hu.po +++ b/po/hu.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" "PO-Revision-Date: 2018-03-10 00:00+0100\n" "Last-Translator: Balázs Úr \n" "Language-Team: Hungarian \n" @@ -19,162 +19,162 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Lokalize 2.0\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Futtatókörnyezet exportálása az alkalmazás helyett" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Csomagolás ezen architektúrához" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARCHITEKTÚRA" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "URL a tárolóhoz" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "URL a futtatókörnyezet flatpaktároló fájlhoz" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "GPG kulcs hozzáadása a FÁJLBÓL (- a szabványos bemenethez)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "FÁJL" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "GPG kulcsazonosító az OCI-lemezkép aláírásához" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "KULCSAZONOSÍTÓ" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "KULCSAZONOSÍTÓ" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "A kulcstartók keresésekor használandó GPG saját könyvtár" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "SAJÁTKÖNYVTÁR" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "OSTree kommit egy deltacsomag előállításához ebből:" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "KOMMIT" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Egy OCI-lemezkép exportálása flatpak csomag helyett" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" msgstr "" "HELY FÁJLNÉV NÉV [ÁG] - Egyetlen fájlcsomag létrehozása helyi tárolóból" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "A HELY, FÁJLNÉV és NÉV megadása kötelező" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Túl sok argumentum" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "A(z) „%s” nem érvényes tároló" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, fuzzy, c-format msgid "'%s' is not a valid repository: " msgstr "A(z) „%s” nem érvényes tároló" -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "A(z) „%s” nem érvényes név: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "A(z) „%s” nem érvényes ágnév: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, fuzzy, c-format msgid "'%s' is not a valid filename" @@ -209,7 +209,7 @@ msgstr "KÖNYVTÁR" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Hol keresse az egyéni sdk könyvtárat (alapértelmezetten „usr”)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Alternatív fájl használata a metaadatokhoz" @@ -229,489 +229,495 @@ msgstr "Munkamenetbusz-hívások naplózása" msgid "Log system bus calls" msgstr "Rendszerbusz-hívások naplózása" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 #, fuzzy msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "KÖNYVTÁR [PARANCS [argumentumok…]] - Összeállítás a könyvtárban" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "A KÖNYVTÁR megadása kötelező" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "" "A(z) „%s” összeállítási könyvtár nincs előkészítve, a flatpak összeállítás-" "előkészítő használata" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "a metaadat érvénytelen, nem alkalmazás vagy futtatókörnyezet" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "Nincs %s illeszkedésű kiterjesztéspont ebben: %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Hiányzó „=” a(z) „%s” kötési csatolás kapcsolóban" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Nem indítható el az alkalmazás" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Forrástároló könyvtár" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "FORRÁS-TÁROLÓ" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Forrástároló hivatkozás" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "FORRÁS-HIVATKOZÁS" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Egysoros tárgy" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "TÁRGY" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Teljes leírás" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "TÖRZS" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Az AppStream ág frissítése" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Az AppStream ág frissítése" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Ne frissítse az összegzést" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "GPG kulcsazonosító a kommit aláírásához" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 #, fuzzy msgid "VAL" msgstr "VÁLTOZÓ=ÉRTÉK" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 #, fuzzy msgid "Override the timestamp of the commit (NOW for current time)" msgstr "A kommit időbélyegének felülírása" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 #, fuzzy msgid "TIMESTAMP" msgstr "ISO-8601-IDŐBÉLYEG" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 #, fuzzy msgid "Don't generate a summary index" msgstr "Ne frissítse az összegzést" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 #, fuzzy msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" "CÉL-TÁROLÓ [CÉL-HIVATKOZÁS]… - Új kommit készítése a meglévő kommitok alapján" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "A CÉL-TÁROLÓ megadása kötelező" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "Ha a --src-repo nincs megadva, akkor pontosan egy célhivatkozást kell megadni" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" "Ha a --src-ref meg van adva, akkor pontosan egy célhivatkozást kell megadni" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 #, fuzzy msgid "Either --src-repo or --src-ref must be specified" msgstr "Vagy a --src-repo, vagy a --src-ref megadása kötelező." -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 #, fuzzy msgid "Can't commit from partial source commit" msgstr "Nem lehet kommitolni részleges forráskommitból." -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: nincs változás\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Architektúra az exportáláshoz (a gazdával kompatibilisnek kell lennie)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Futtatókörnyezet kommitolása (/usr), a /app helyett" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Alternatív könyvtár használata a fájlokhoz" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "ALKÖNYVTÁR" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Kizárandó fájlok" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "MINTA" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Felvenni kívánt kizárt fájlok" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 #, fuzzy msgid "ID" msgstr "Azonosító:" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "A kommit időbélyegének felülírása" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "Gyűjteményazonosító" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "FIGYELMEZTETÉS: Hiba a desktop-file-validate futtatásakor: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "" "FIGYELMEZTETÉS: Hiba a desktop-file-validate kimenetének olvasásakor: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "FIGYELMEZTETÉS: Nem sikerült ellenőrizni a(z) %s asztali fájlt: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "FIGYELMEZTETÉS: Nem található itt az Exec kulcs: %s: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "" "FIGYELMEZTETÉS: Nem található itt az Exec sorban megadott bináris: %s: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "" "FIGYELMEZTETÉS: Nem egyezik az itt megadott ikon alkalmazásazonosítóval: %s: " "%s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" "FIGYELMEZTETÉS: Az ikon hivatkozva van az asztali fájlban, de nincs " "exportálva: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Érvénytelen URI-típus (%s), csak a http/https támogatott" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "" "Nem sikerült megtalálni az alapnevet ebben: %s, pontosan adja meg a nevet" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "A perjelek nem engedélyezettek a további adatok névében" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Érvénytelen formátum az sha256 ellenőrzőösszegnél: „%s”" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Nulla méretű további adatméret nem támogatott" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "HELY KÖNYVTÁR [ÁG] - Tároló létrehozása egy összeállítási könyvtárból" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "A HELY és KÖNYVTÁR megadása kötelező" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "A(z) „%s” nem érvényes gyűjteményazonosító: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Nincs név megadva a metaadatokban" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Kommit: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Metaadatok összesen: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Kiírt metaadatok: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Tartalom összesen: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Kiírt tartalom: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Kiírt tartalom bájtokban:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Beállítandó parancs" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "PARANCS" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "A szükséges flatpak-verzió" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "FŐ.KISEBB.APRÓ" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Ne dolgozza fel az exportokat" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "További adatinformációk" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Kiterjesztéspont-információk hozzáadása" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NÉV=VÁLTOZÓ[=ÉRTÉK]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 #, fuzzy msgid "Remove extension point info" msgstr "Kiterjesztéspont-információk hozzáadása" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NÉV" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Kiterjesztés prioritás beállítása (csak kiterjesztésekhez)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 #, fuzzy msgid "VALUE" msgstr "VÁLTOZÓ=ÉRTÉK" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Az alkalmazáshoz használt sdk megváltoztatása" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Az alkalmazáshoz használt futtatókörnyezet megváltoztatása" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "FUTTATÓKÖRNYEZET" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Általános metaadat lehetőség beállítása" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "CSOPORT=KULCS[=ÉRTÉK]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 #, fuzzy msgid "Don't inherit permissions from runtime" msgstr "Az alkalmazás írási jogosultságának visszavonása" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, fuzzy, c-format msgid "Not exporting %s, wrong extension\n" msgstr "A(z) %s nem kerül exportálásra, hibás előtag\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, fuzzy, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "A(z) %s nem kerül exportálásra, hibás előtag\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "%s exportálása\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Több mint egy futtatható állomány található\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "A(z) %s használata parancsként\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Nem található futtatható állomány\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, fuzzy, c-format msgid "Invalid --require-version argument: %s" msgstr "Érvénytelen require-flatpak argumentum: %s\n" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "Túl kevés elem a(z) %s --extra-data argumentumban" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -720,7 +726,7 @@ msgstr "" "Túl kevés elem a(z) %s --metadata argumentumban, a formátumnak " "CSOPORT=KULCS[=ÉRTÉK] alakban kell lennie" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -730,64 +736,65 @@ msgstr "" "Túl kevés elem a(z) %s --extension argumentumban, a formátumnak " "NÉV=VÁLTOZÓ[=ÉRTÉK] alakban kell lennie" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, fuzzy, c-format msgid "Invalid extension name %s" msgstr "Ismeretlen %s D-Bus név\n" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "KÖNYVTÁR - Egy összeállítási könyvtár befejezése" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "A(z) „%s” összeállítási könyvtár nincs előkészítve" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "A(z) „%s” összeállítási könyvtár már be lett fejezve" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Nézze át az exportált fájlokat és a metaadatokat\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Az importált csomaghoz használt hivatkozás felülbírálása" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "HIVATKOZÁS" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Egy OCI-lemezkép importálása flatpak csomag helyett" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "A(z) „%s” hivatkozás nem található a regisztrációs adatbázisban" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "" "Több lemezkép van a regisztrációs adatbázisban, adjon meg egy hivatkozást a " "--ref használatával" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "%s importálása (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "HELY FÁJLNÉV - Egy fájlcsomag importálása egy helyi tárolóba" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "A HELY és FÁJLNÉV megadása kötelező" @@ -904,93 +911,93 @@ msgstr "A(z) „%s” nem érvényes alkalmazásnév: %s" msgid "Build directory %s already initialized" msgstr "A(z) „%s” összeállítási könyvtár már elő van készítve" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Telepítés ezen architektúrára" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "A megadott nevű futtatókörnyezet keresése" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "HELY [AZONOSÍTÓ [ÁG]] - Egy alkalmazás vagy futtatókörnyezet aláírása" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "A HELY megadása kötelező" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Nincsenek megadva GPG kulcsazonosítók" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Ezen tároló átirányítása egy új URL-re" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Egy szép, ehhez a tárolóhoz használandó név" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "CÍM" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 #, fuzzy msgid "A one-line comment for this repository" msgstr "Egy szép, ehhez a tárolóhoz használandó név" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 #, fuzzy msgid "COMMENT" msgstr "KOMMIT" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 #, fuzzy msgid "A full-paragraph description for this repository" msgstr "Ehhez a tárolóhoz használandó alapértelmezett ág" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 #, fuzzy msgid "URL for a website for this repository" msgstr "Egy szép, ehhez a tárolóhoz használandó név" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 #, fuzzy msgid "URL for an icon for this repository" msgstr "Egy szép, ehhez a tárolóhoz használandó név" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Ehhez a tárolóhoz használandó alapértelmezett ág" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "ÁG" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "GYŰJTEMÉNY-AZONOSÍTÓ" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 #, fuzzy msgid "" "Permanently deploy collection ID to client remote configurations, only for " @@ -999,129 +1006,132 @@ msgstr "" "Gyűjteményazonosítók állandó beállítása az ügyfél távoli tároló " "beállításaiban" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" "Gyűjteményazonosítók állandó beállítása az ügyfél távoli tároló " "beállításaiban" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 #, fuzzy msgid "Name of authenticator for this repository" msgstr "Egy szép, ehhez a tárolóhoz használandó név" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 #, fuzzy msgid "Autoinstall authenticator for this repository" msgstr "Egy szép, ehhez a tárolóhoz használandó név" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 #, fuzzy msgid "Don't autoinstall authenticator for this repository" msgstr "Ehhez a tárolóhoz használandó alapértelmezett ág" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 #, fuzzy msgid "Authenticator option" msgstr "Súgólehetőségek megjelenítése" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 #, fuzzy msgid "KEY=VALUE" msgstr "VÁLTOZÓ=ÉRTÉK" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Új alapértelmezett GPG nyilvános kulcs importálása FÁJLBÓL" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "GPG kulcsazonosító az összegzés aláírásához" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Delta fájlok előállítása" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 #, fuzzy msgid "Don't update the appstream branch" msgstr "Az AppStream ág frissítése" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 #, fuzzy msgid "Don't create deltas matching refs" msgstr "Ne frissítse a kapcsolódó hivatkozásokat" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Nem használt objektumok törlése" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" "Csak MÉLYSÉG szülők bejárása az egyes kommitoknál (alapértelmezett: -1 = " "végtelen)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "MÉLYSÉG" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Delta előállítása: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Delta előállítása: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Nem sikerült a(z) %s (%.10s) delta előállítása: " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Nem sikerült a(z) %s (%.10s-%.10s) delta előállítása: " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "HELY - Tároló metaadatainak frissítése" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Az AppStream ág frissítése\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Összegzés frissítése\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Objektumok összesen: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Nincsenek elérhetetlen objektumok\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "%u objektum törölve, %s felszabadítva\n" @@ -1200,113 +1210,113 @@ msgstr "Meg kell adnia a --list, --get, --set vagy --unset egyikét" msgid "Must specify one of --list, --get, --set or --unset" msgstr "Meg kell adnia a --list, --get, --set vagy --unset egyikét" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Alkalmazás keresése a megadott névvel" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 #, fuzzy msgid "Arch to copy" msgstr "Megjelenítendő architektúra" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 #, fuzzy msgid "DEST" msgstr "CÉL=FORRÁS" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " "suppress this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " "collection ID set.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " "distribution of ‘%s’." msgstr "" -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 #, fuzzy msgid "MOUNT-PATH and REF must be specified" msgstr "A TÁVOLI és HIVATKOZÁS megadása kötelező" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, fuzzy, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "A(z) „%s” távoli tároló több telepítésben is megtalálható:\n" -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " "this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, fuzzy, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" "Figyelmeztetése Nem sikerült frissíteni a(z) %s további metaadatait: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, fuzzy, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "Figyelmeztetés: a függőségek nem találhatóak: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, fuzzy, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" msgstr "Figyelmeztetés: a függőségek nem találhatóak: %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, fuzzy, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "Az appstream adatok frissítése a(z) %s távoli tárolóhoz\n" @@ -1380,12 +1390,13 @@ msgstr "FÁJL - Információk lekérése egy exportált fájlról" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Nincs exportálva\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 #, fuzzy msgid "What information to show" @@ -1393,7 +1404,7 @@ msgstr "Információk kiírása egy tárolóról" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "" @@ -1414,7 +1425,7 @@ msgid "Show the document path" msgstr "Csak futtatókörnyezetek megjelenítése" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Eredet" @@ -1430,7 +1441,7 @@ msgid "Show applications with permission" msgstr "Jogosultságok megjelenítése" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 #, fuzzy msgid "Permissions" @@ -1564,12 +1575,12 @@ msgid "Show the kind of change" msgstr "" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Hivatkozás" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 #, fuzzy msgid "Show the ref" msgstr "Hivatkozás megjelenítése" @@ -1580,25 +1591,25 @@ msgid "Show the application/runtime ID" msgstr "Alkalmazásazonosító" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 #, fuzzy msgid "Arch" msgstr "Architektúra:" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Ág" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 #, fuzzy msgid "Show the branch" msgstr "Csak futtatókörnyezetek megjelenítése" @@ -1613,7 +1624,7 @@ msgstr "Telepítve" msgid "Show the affected installation" msgstr "Felhasználói telepítések megjelenítése" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 #, fuzzy msgid "Remote" msgstr "Távoli tárolók" @@ -1624,7 +1635,7 @@ msgid "Show the remote" msgstr "Letiltott távoliak megjelenítése" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Kommit" @@ -1648,7 +1659,7 @@ msgstr "Csak futtatókörnyezetek megjelenítése" msgid "Show the remote URL" msgstr "Csak futtatókörnyezetek megjelenítése" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "" @@ -1666,7 +1677,7 @@ msgid "Show the tool that was used" msgstr "" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Verzió" @@ -1695,11 +1706,12 @@ msgid " - Show history" msgstr "" #: app/flatpak-builtins-history.c:488 -#, fuzzy +#, fuzzy, c-format msgid "Failed to parse the --since option" msgstr "Nem hozható létre szinkronizálási cső" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "" @@ -1715,11 +1727,11 @@ msgstr "Rendszerszintű telepítések megjelenítése" msgid "Show specific system-wide installations" msgstr "Bizonyos rendszerszintű telepítések megjelenítése" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Hivatkozás megjelenítése" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Kommit megjelenítése" @@ -1731,16 +1743,16 @@ msgstr "Eredet megjelenítése" msgid "Show size" msgstr "Méret megjelenítése" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Metaadatok megjelenítése" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 #, fuzzy msgid "Show runtime" msgstr "Csak futtatókörnyezetek megjelenítése" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 #, fuzzy msgid "Show sdk" msgstr "Méret megjelenítése" @@ -1753,8 +1765,8 @@ msgstr "Jogosultságok megjelenítése" msgid "Query file access" msgstr "Fájlhozzáférés lekérése" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1776,7 +1788,7 @@ msgstr "" "NÉV [ÁG] - Információk lekérése a telepített alkalmazásról és/vagy " "futtatókörnyezetről" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "A NÉV megadása kötelező" @@ -1785,89 +1797,91 @@ msgstr "A NÉV megadása kötelező" msgid "ref not present in origin" msgstr "a hivatkozás nincs jelen az eredetben" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Figyelmeztetés: a kommitnak nincs flatpak metaadata\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "Azonosító:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Hivatkozás:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Architektúra:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Ág:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 #, fuzzy msgid "Version:" msgstr "Verzió" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 #, fuzzy msgid "Collection:" msgstr "Gyűjteményazonosító:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 #, fuzzy msgid "Installation:" msgstr "Telepítve" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 #, fuzzy msgid "Installed:" msgstr "Telepítve" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Futtatókörnyezet:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Dátum:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Tárgy:" @@ -1880,15 +1894,15 @@ msgid "Latest commit:" msgstr "Legutolsó kommit:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Kommit:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Szülő:" @@ -1898,14 +1912,14 @@ msgid "Alt-id:" msgstr "alternatív azonosító:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "" @@ -1915,152 +1929,152 @@ msgid "Subdirectories:" msgstr "Telepített alkönyvtárak:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Kiterjesztés:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Eredet:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Alútvonalak:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Ne kérje le, csak telepítse a helyi gyorsítótárból" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Ne telepítse, csak töltse le a helyi gyorsítótárba" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Ne telepítse a kapcsolódó hivatkozásokat" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Ne ellenőrizze/telepítse a futtatókörnyezet függőségeit" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Ne használjon statikus deltákat" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Feltételezzük, hogy a HELY egy .flatpak önálló fájlból álló csomag" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Feltételezzük, hogy a HELY egy .flatpakref alkalmazás-leírás" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "" "Csomag aláírásának ellenőrzése GPG kulccsal a FÁJLBÓL (- a szabványos " "bemenethez)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Csak ezen alútvonal telepítése" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Automatikusan válaszoljon igennel minden kérdésre" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Eltávolítás először, ha már telepítve van" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 #, fuzzy msgid "Update install if already installed" msgstr "Eltávolítás először, ha már telepítve van" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "A csomagfájlnév megadása kötelező" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "A távoli csomagok nem támogatottak" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "A fájlnév vagy URI megadása kötelező" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 #, fuzzy msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "" "HELY/TÁVOLI [HIVATKOZÁS…] - Alkalmazások vagy futtatókörnyezetek telepítése" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 #, fuzzy msgid "At least one REF must be specified" msgstr "A TÁVOLI és HIVATKOZÁS megadása kötelező" -#: app/flatpak-builtins-install.c:335 -#, fuzzy +#: app/flatpak-builtins-install.c:336 +#, fuzzy, c-format msgid "Looking for matches…\n" msgstr "Frissítések keresése…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, fuzzy, c-format msgid "No remote refs found for ‘%s’" msgstr "Nem találhatók felülbírálások ehhez: %s" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, fuzzy, c-format msgid "Invalid branch %s: %s" msgstr "Alapértelmezett ág: %s\n" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, fuzzy, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Hiba a helyi tárolóban keresésnél: %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, fuzzy, c-format msgid "Nothing matches %s in remote %s" msgstr "Semmi sem egyezik: %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, fuzzy, c-format msgid "Skipping: %s\n" msgstr "%s exportálása\n" @@ -2103,58 +2117,58 @@ msgstr "Telepített alkalmazások felsorolása" msgid "Arch to show" msgstr "Megjelenítendő architektúra" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "" "Összes hivatkozás felsorolása (területi beállítás és hibakeresési elemekkel " "együtt)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #, fuzzy msgid "List all applications using RUNTIME" msgstr "Telepített alkalmazások felsorolása" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Név" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 #, fuzzy msgid "Show the name" msgstr "Csak futtatókörnyezetek megjelenítése" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Leírás" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 #, fuzzy msgid "Show the description" msgstr "Alkalmazásazonosító" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "Alkalmazásazonosító" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 #, fuzzy msgid "Show the application ID" msgstr "Alkalmazásazonosító" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 #, fuzzy msgid "Show the version" msgstr "Alkalmazásazonosító" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 #, fuzzy msgid "Runtime" msgstr "Futtatókörnyezet:" @@ -2164,7 +2178,7 @@ msgstr "Futtatókörnyezet:" msgid "Show the used runtime" msgstr "Csak futtatókörnyezetek megjelenítése" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 #, fuzzy msgid "Show the origin remote" msgstr "Eredet megjelenítése" @@ -2178,7 +2192,7 @@ msgstr "Felhasználói telepítések megjelenítése" msgid "Active commit" msgstr "Aktív kommit" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 #, fuzzy msgid "Show the active commit" msgstr "Csak futtatókörnyezetek megjelenítése" @@ -2192,37 +2206,37 @@ msgstr "Legutolsó kommit" msgid "Show the latest commit" msgstr "Csak futtatókörnyezetek megjelenítése" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Telepített méret" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 #, fuzzy msgid "Show the installed size" msgstr "Telepített méret" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Beállítások" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 #, fuzzy msgid "Show options" msgstr "Súgólehetőségek megjelenítése" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, fuzzy, c-format msgid "Unable to load details of %s: %s" msgstr "További metaadatok frissítése a(z) %s távoli összegzéséből\n" -#: app/flatpak-builtins-list.c:189 -#, c-format +#: app/flatpak-builtins-list.c:188 +#, fuzzy, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Nem hozható létre szinkronizálási cső" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - Telepített alkalmazások és/vagy futtatókörnyezetek felsorolása" @@ -2234,7 +2248,7 @@ msgstr "Aktuálissá tétel ezen architektúrára" msgid "APP BRANCH - Make branch of application current" msgstr "ALKALMAZÁS ÁG - Az alkalmazás ágának aktuálissá tétele" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "Az ALKALMAZÁS megadása kötelező" @@ -2258,10 +2272,12 @@ msgid "" msgstr "" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "" @@ -2277,27 +2293,27 @@ msgstr "" msgid "[APP] - Override settings [for application]" msgstr "[ALKALMAZÁS] – Beállítások felülbírálása az alkalmazáshoz" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 #, fuzzy msgid "Object" msgstr "Tárgy:" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "" @@ -2361,10 +2377,12 @@ msgid "[PATTERN…] - disable automatic removal of runtimes matching patterns" msgstr "" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "" @@ -2453,132 +2471,132 @@ msgstr "Csak futtatókörnyezetek megjelenítése" msgid " - Enumerate running sandboxes" msgstr "" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Ne tegyen semmit, ha a megadott távoli létezik" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "A HELY egy beállítófájlt határoz meg, nem a tároló helyét" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "GPG ellenőrzés letiltása" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "A távoli megjelölése nem felsorolandóként" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "A távoli megjelölése függőségekhez nem használtként" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "" "Prioritás beállítása (alapértelmezetten 1, a magasabb nagyobb prioritású)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORITÁS" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 #, fuzzy msgid "The named subset to use for this remote" msgstr "Egy szép, ehhez a távolihoz használandó név" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Egy szép, ehhez a távolihoz használandó név" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 #, fuzzy msgid "A one-line comment for this remote" msgstr "Egy szép, ehhez a távolihoz használandó név" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 #, fuzzy msgid "A full-paragraph description for this remote" msgstr "Ehhez a tárolóhoz használandó alapértelmezett ág" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 #, fuzzy msgid "URL for a website for this remote" msgstr "Egy szép, ehhez a távolihoz használandó név" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 #, fuzzy msgid "URL for an icon for this remote" msgstr "Ehhez a tárolóhoz használandó alapértelmezett ág" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Ehhez a tárolóhoz használandó alapértelmezett ág" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "GPG kulcs importálása a FÁJLBÓL (- a szabványos bemenethez)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "A távoli letiltása" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 #, fuzzy msgid "Autoinstall authenticator" msgstr "Ismeretlen %s D-Bus név\n" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 #, fuzzy msgid "Don't autoinstall authenticator" msgstr "Ne távolítsa el a kapcsolódó hivatkozásokat" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "Nem lehet betölteni a(z) %s URI-t: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Nem lehet betölteni a(z) %s fájlt: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NÉV HELY - Egy távoli tároló hozzáadása" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "GPG ellenőrzés szükséges, ha a gyűjtemények engedélyezettek" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "A távoli %s már létezik" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, fuzzy, c-format msgid "Invalid authenticator name %s" msgstr "Ismeretlen %s D-Bus név\n" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "" @@ -2607,63 +2625,63 @@ msgstr "Távoli tárolók" msgid "Can't remove remote '%s' with installed refs" msgstr "" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "Kommit, amelyhez meg kell jeleníteni az információt" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Napló megjelenítése" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Szülő megjelenítése" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " TÁVOLI HIVATKOZÁS – Információk megjelenítése az alkalmazásról vagy " "futtatókörnyezetről a távoli tárolóban" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "A TÁVOLI és HIVATKOZÁS megadása kötelező" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 #, fuzzy msgid "Download:" msgstr "Letöltés" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 #, fuzzy msgid "History:" msgstr "Előzmények:\n" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Kommit:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Tárgy:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Dátum:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Figyelmeztetés: a(z) %s kommitnak nincs flatpak metaadata\n" @@ -2695,7 +2713,7 @@ msgstr "Hivatkozás megjelenítése" msgid "Show the collection ID" msgstr "Alkalmazásazonosító" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "" @@ -2759,41 +2777,41 @@ msgstr "Súgólehetőségek megjelenítése" msgid " - List remote repositories" msgstr " - Távoli tárolók felsorolása" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Architektúrák és ágak megjelenítése" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Csak futtatókörnyezetek megjelenítése" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Csak alkalmazások megjelenítése" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Csak azok megjelenítése, ahol frissítések érhetők el" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Korlátozás erre az architektúrára (* az összeshez)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 #, fuzzy msgid "Show the runtime" msgstr "Csak futtatókörnyezetek megjelenítése" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Letöltési méret" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 #, fuzzy msgid "Show the download size" msgstr "Letöltési méret" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 #, fuzzy msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr " [TÁVOLI] – Elérhető futtatókörnyezetek és alkalmazások megjelenítése" @@ -2928,231 +2946,234 @@ msgstr "Eltávolítás: %s\n" msgid "- Repair a flatpak installation" msgstr "Felhasználói telepítések megjelenítése" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, fuzzy, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Érvénytelen %s üzembe állított hivatkozás:" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, fuzzy, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Érvénytelen %s üzembe állított hivatkozás:" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "" -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "" -#: app/flatpak-builtins-repair.c:480 -#, fuzzy +#: app/flatpak-builtins-repair.c:490 +#, fuzzy, c-format msgid "Pruning objects\n" msgstr "Nem használt objektumok törlése" -#: app/flatpak-builtins-repair.c:488 -#, fuzzy +#: app/flatpak-builtins-repair.c:498 +#, fuzzy, c-format msgid "Erasing .removed\n" msgstr "Ne telepítse a kapcsolódó hivatkozásokat" -#: app/flatpak-builtins-repair.c:513 -#, fuzzy +#: app/flatpak-builtins-repair.c:523 +#, fuzzy, c-format msgid "Reinstalling refs\n" msgstr "Ne telepítse a kapcsolódó hivatkozásokat" -#: app/flatpak-builtins-repair.c:515 -#, fuzzy +#: app/flatpak-builtins-repair.c:525 +#, fuzzy, c-format msgid "Reinstalling removed refs\n" msgstr "Ne telepítse a kapcsolódó hivatkozásokat" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, fuzzy, c-format msgid "While removing appstream for %s: " msgstr "A(z) %s tároló megnyitása közben: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, fuzzy, c-format msgid "While deploying appstream for %s: " msgstr "A(z) %s tároló megnyitása közben: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "" -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Cím: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, fuzzy, c-format msgid "Comment: %s\n" msgstr "Kommit: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, fuzzy, c-format msgid "Description: %s\n" msgstr "Leírás" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, fuzzy, c-format msgid "Icon: %s\n" msgstr "Kommit: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "Gyűjteményazonosító: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Alapértelmezett ág: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "URL átirányítás: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, fuzzy, c-format msgid "Deploy collection ID: %s\n" msgstr "Gyűjteményazonosító: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, fuzzy, c-format msgid "Authenticator name: %s\n" msgstr "Ismeretlen %s D-Bus név\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, fuzzy, c-format msgid "Authenticator install: %s\n" msgstr "Súgólehetőségek megjelenítése" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "GPG kulcs ujjlenyomat: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, fuzzy, c-format msgid "%zd summary branches\n" msgstr "%zd ág\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Telepítve" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Letöltés" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 #, fuzzy msgid "History length" msgstr "Előzmények:\n" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Általános információk kiírása a tárolóról" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "A tárolóban lévő ágak felsorolása" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Egy ág metaadatainak kiírása" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 #, fuzzy msgid "Show commits for a branch" msgstr "Architektúrák és ágak megjelenítése" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 #, fuzzy msgid "Print information about the repo subsets" msgstr "Általános információk kiírása a tárolóról" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "HELY - Tároló karbantartása" @@ -3249,12 +3270,12 @@ msgstr "" msgid "Use PATH instead of the runtime's /usr" msgstr "" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 #, fuzzy msgid "APP [ARGUMENT…] - Run an app" msgstr "ALKALMAZÁS [argumentumok…] - Alkalmazás futtatása" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, fuzzy, c-format msgid "runtime/%s/%s/%s not installed" msgstr "A(z) %s %s nincs telepítve" @@ -3273,16 +3294,16 @@ msgstr "Távoli tárolók" msgid "Show the remotes" msgstr "Letiltott távoliak megjelenítése" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "" "SZÖVEG – Távoli alkalmazások vagy futtatókörnyezetek keresése a szöveghez" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "A SZÖVEG megadása kötelező" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Nincs találat" @@ -3365,7 +3386,7 @@ msgid "" msgstr "" #: app/flatpak-builtins-uninstall.c:370 -#, fuzzy +#, fuzzy, c-format msgid "Nothing unused to uninstall\n" msgstr "Eltávolítandó architektúra" @@ -3390,6 +3411,7 @@ msgid "Warning: %s is not installed\n" msgstr "A(z) %s %s ág nincs telepítve" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "" @@ -3432,7 +3454,7 @@ msgid "With --commit, only one REF may be specified" msgstr "A TÁVOLI és HIVATKOZÁS megadása kötelező" #: app/flatpak-builtins-update.c:162 -#, fuzzy +#, fuzzy, c-format msgid "Looking for updates…\n" msgstr "Frissítések keresése…\n" @@ -3442,181 +3464,174 @@ msgid "Unable to update %s: %s\n" msgstr "A(z) %s lekérése közben a(z) %s távoliról: " #: app/flatpak-builtins-update.c:274 -#, fuzzy +#, fuzzy, c-format msgid "Nothing to do.\n" msgstr "Semmi sem egyezik: %s" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, fuzzy, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "A(z) „%s” távoli tároló több telepítésben is megtalálható:\n" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Melyiket szeretné használni (0 a megszakításhoz)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "Nem lett távoli tároló kiválasztva a(z) „%s” feloldásához, amely több " "telepítésben is létezik" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" "Hint: Use flatpak remote-add to add a remote" msgstr "" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, fuzzy, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "A(z) „%s” távoli tároló több telepítésben is megtalálható:\n" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" "Use this ref?" msgstr "" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" +msgid "Remotes found with refs similar to ‘%s’:" msgstr "" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, fuzzy, c-format msgid "Updating appstream data for user remote %s" msgstr "Az appstream adatok frissítése a felhasználó %s távoli tárolójához\n" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, fuzzy, c-format msgid "Updating appstream data for remote %s" msgstr "Az appstream adatok frissítése a(z) %s távoli tárolóhoz\n" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 #, fuzzy msgid "Error updating" msgstr "Hiba a frissítéskor: %s\n" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "A(z) „%s” távoli tároló nem található" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "" #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, fuzzy, c-format msgid "Invalid suffix: '%s'." msgstr "Érvénytelen %s pid" -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, fuzzy, c-format msgid "Unknown column: %s" msgstr "Ismeretlen „%s” parancs" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 #, fuzzy msgid "Show all columns" msgstr "Súgólehetőségek megjelenítése" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 #, fuzzy msgid "Show available columns" msgstr "Letiltott távoliak megjelenítése" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, fuzzy, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "A(z) %s (%s) szükséges futtatókörnyezete nincs telepítve, keresés…\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 #, fuzzy msgid "Do you want to install it?" msgstr "Melyiket szeretné telepíteni (0 a megszakításhoz)?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, fuzzy, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "A(z) %s (%s) szükséges futtatókörnyezete nincs telepítve, keresés…\n" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Melyiket szeretné telepíteni (0 a megszakításhoz)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, fuzzy, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "A(z) %s beállítása mint új távoli „%s”" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, fuzzy, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3627,7 +3642,7 @@ msgstr "" "Megmaradjon a távoli tároló a jövőbeli telepítésekhez?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, fuzzy, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3638,128 +3653,128 @@ msgstr "" " %s\n" "Ennek beállítása mint új távoli „%s”" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 #, fuzzy msgid "Installing…" msgstr "Telepítve" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, fuzzy, c-format msgid "Installing %d/%d…" msgstr "Eltávolítás: %s\n" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, fuzzy, c-format msgid "Updating %d/%d…" msgstr "Frissítés: %s innen: %s\n" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 #, fuzzy msgid "Uninstalling…" msgstr "Eltávolítás: %s\n" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, fuzzy, c-format msgid "Uninstalling %d/%d…" msgstr "Eltávolítás: %s\n" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, fuzzy, c-format msgid "Warning: %s%s%s already installed" msgstr "A(z) %s kommit %s már telepítve van" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, fuzzy, c-format msgid "Error: %s%s%s already installed" msgstr "A(z) %s kommit %s már telepítve van" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, fuzzy, c-format msgid "Warning: %s%s%s not installed" msgstr "A(z) %s %s ág nincs telepítve" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, fuzzy, c-format msgid "Error: %s%s%s not installed" msgstr "A(z) %s %s nincs telepítve" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, fuzzy, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "A(z) %s egy későbbi flatpak verziót (%s) igényel" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, fuzzy, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "A(z) %s egy későbbi flatpak verziót (%s) igényel" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" msgstr "" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" msgstr "" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, c-format msgid "Warning: %s" msgstr "" -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, fuzzy, c-format msgid "Error: %s" msgstr "hiba:" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, fuzzy, c-format msgid "Failed to install %s%s%s: " msgstr "Hiba: %s %s sikertelen: %s\n" -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, fuzzy, c-format msgid "Failed to update %s%s%s: " msgstr "Hiba: %s %s sikertelen: %s\n" -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, fuzzy, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Hiba: %s %s sikertelen: %s\n" -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, fuzzy, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Hiba: %s %s sikertelen: %s\n" -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, fuzzy, c-format msgid "Authentication required for remote '%s'\n" msgstr "Hitelesítés szükséges a szoftver frissítéséhez" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, c-format msgid "" "\n" @@ -3767,7 +3782,7 @@ msgid "" "%s%s%s branch %s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, c-format msgid "" "\n" @@ -3775,7 +3790,7 @@ msgid "" "%s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, c-format msgid "" "\n" @@ -3784,123 +3799,118 @@ msgid "" msgstr "" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, fuzzy, c-format msgid "Info: applications using this extension:\n" msgstr "" "\n" "Alkalmazás és futtatókörnyezet keresése" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, fuzzy, c-format msgid "Info: applications using this runtime:\n" msgstr "" "\n" "Alkalmazás és futtatókörnyezet keresése" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 -#, fuzzy +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, fuzzy, c-format msgid "Updating to rebased version\n" msgstr "Az AppStream ág frissítése\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, fuzzy, c-format msgid "Failed to rebase %s to %s: " msgstr "Hiba: %s %s sikertelen: %s\n" -#: app/flatpak-cli-transaction.c:1009 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Hiba: %s %s sikertelen: %s\n" - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, fuzzy, c-format msgid "New %s%s%s permissions:" msgstr "Jogosultságok megjelenítése" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, fuzzy, c-format msgid "%s%s%s permissions:" msgstr "Jogosultságok megjelenítése" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "" #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 #, fuzzy msgid "Proceed with these changes to the user installation?" msgstr "Felhasználói telepítések megjelenítése" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 #, fuzzy msgid "Proceed with these changes to the system installation?" msgstr "Felhasználói telepítések megjelenítése" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, fuzzy, c-format msgid "Proceed with these changes to the %s?" msgstr "Felhasználói telepítések megjelenítése" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "" -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 #, fuzzy msgid "Uninstall complete." msgstr "Alkalmazás eltávolítása" -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 #, fuzzy msgid "Installation complete." msgstr "Telepítve" -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 #, fuzzy msgid "Updates complete." msgstr "Távoli metaadatok frissítése" #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "" @@ -4229,13 +4239,13 @@ msgid "" "not appear on your desktop until the session is restarted." msgstr "" -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 #, fuzzy msgid "" "Multiple installations specified for a command that works on one installation" @@ -4243,22 +4253,22 @@ msgstr "" "Az --installation kapcsoló többször volt használva egy olyan parancsnál, " "amely csak egy telepítésnél működik" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, fuzzy, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "A(z) „%s” nem érvényes alkalmazásnév: %s" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Nincs parancs megadva" @@ -4321,16 +4331,16 @@ msgstr "Figyelmeztetés: %s %s sikertelen: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Hiba: %s %s sikertelen: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, fuzzy, c-format msgid "%s already installed" msgstr "A(z) %s kommit %s már telepítve van" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "A(z) %s nincs telepítve" @@ -4359,57 +4369,53 @@ msgstr "" msgid "Failed to rebase %s to %s: %s\n" msgstr "Hiba: %s %s sikertelen: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Hiba: %s %s sikertelen: %s\n" - #: common/flatpak-auth.c:58 #, fuzzy, c-format msgid "No authenticator configured for remote `%s`" msgstr "Hitelesítés szükséges a szoftver frissítéséhez" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Ismeretlen %s megosztástípus, az érvényes típusok: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Ismeretlen %s házirendtípus, az érvényes típusok: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, fuzzy, c-format msgid "Invalid dbus name %s" msgstr "Ismeretlen %s D-Bus név\n" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Ismeretlen %s foglalattípus, az érvényes típusok: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Ismeretlen %s eszköztípus, az érvényes típusok: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Ismeretlen %s jellemzőtípus, az érvényes típusok: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, fuzzy, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4418,189 +4424,223 @@ msgstr "" "Ismeretlen %s fájlrendszer hely, az érvényes típusok: gép, saját könyvtár, " "xdg-*[/...], ~/könyvtár, /könyvtár" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Érvénytelen %s env formátum" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Megosztás a gazdagéppel" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "MEGOSZTÁS" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Megosztás megszüntetése a gazdagéppel" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Foglalat elérhetővé tétele az alkalmazásnak" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "FOGLALAT" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Ne tegye elérhetővé a foglalatot az alkalmazásnak" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Eszköz elérhetővé tétele az alkalmazásnak" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "ESZKÖZ" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Ne tegye elérhetővé az eszközt az alkalmazásnak" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Jellemző engedélyezése" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "JELLEMZŐ" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Ne engedélyezze a jellemzőt" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "" "Fájlrendszer elérhetővé tétele az alkalmazásnak (:ro a csak olvashatóhoz)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "FÁJLRENDSZER[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Ne tegye elérhetővé a fájlrendszert az alkalmazásnak" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "FÁJLRENDSZER" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Környezeti változó beállítása" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VÁLTOZÓ=ÉRTÉK" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 #, fuzzy msgid "Remove variable from environment" msgstr "Az alkalmazás írási jogosultságának visszavonása" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 #, fuzzy msgid "VAR" msgstr "VÁLTOZÓ=ÉRTÉK" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Név birtoklásának lehetővé tétele az alkalmazásnak a munkamenetbuszon" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "DBUS_NÉV" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "" "A névhez való beszéd lehetővé tétele az alkalmazásnak a munkamenetbuszon" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 #, fuzzy msgid "Don't allow app to talk to name on the session bus" msgstr "" "A névhez való beszéd lehetővé tétele az alkalmazásnak a munkamenetbuszon" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Név birtoklásának lehetővé tétele az alkalmazásnak a rendszerbuszon" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "A névhez való beszéd lehetővé tétele az alkalmazásnak a rendszerbuszon" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 #, fuzzy msgid "Don't allow app to talk to name on the system bus" msgstr "A névhez való beszéd lehetővé tétele az alkalmazásnak a rendszerbuszon" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Név birtoklásának lehetővé tétele az alkalmazásnak a rendszerbuszon" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Általános irányelv-lehetőség hozzáadása" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "ALRENDSZER.KULCS=ÉRTÉK" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Általános irányelv-lehetőség eltávolítása" -#: common/flatpak-context.c:1549 -#, fuzzy -msgid "Persist home directory subpath" -msgstr "Saját könyvtár megőrzése" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "FÁJLNÉV" +#: common/flatpak-context.c:1696 +#, fuzzy +msgid "Persist home directory subpath" +msgstr "Saját könyvtár megőrzése" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Ne követeljen meg egy futó munkamenetet (nincs cgroups létrehozás)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4609,680 +4649,705 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, fuzzy, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "Nem lehet létrehozni a telepítési könyvtárat" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, fuzzy, c-format msgid "Unable to load summary from remote %s: %s" msgstr "A(z) %s lekérése közben a(z) %s távoliról: " -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, fuzzy, c-format msgid "No such ref '%s' in remote %s" msgstr "A(z) %s nem található a(z) %s távoliban" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 #, fuzzy, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "" "Nincs bejegyzés a(z) %s esetén a távoli összegzés flatpak gyorsítótárban " -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, fuzzy, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "Nincs flatpak gyorsítótár a távoli összegzésben" -#: common/flatpak-dir.c:921 -#, fuzzy, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "" -"Nincs bejegyzés a(z) %s esetén a távoli összegzés flatpak gyorsítótárban " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, fuzzy, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Nincs flatpak gyorsítótár a távoli összegzésben" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, fuzzy, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Nincs flatpak gyorsítótár a távoli összegzésben" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "A távoli OCI indexnek nincs regisztrációs URI-ja" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, fuzzy, c-format msgid "Couldn't find ref %s in remote %s" msgstr "" "Nem sikerült megtalálni a legújabb verziót a(z) %s hivatkozáshoz a(z) %s " "távoliból: %s\n" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, fuzzy, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" "Nem sikerült megtalálni a legújabb verziót a(z) %s hivatkozáshoz a(z) %s " "távoliból: %s\n" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, fuzzy, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" "Nincs bejegyzés a(z) %s esetén a távoli összegzés flatpak gyorsítótárban " -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 #, fuzzy msgid "Unable to connect to system bus" msgstr "Név birtoklásának lehetővé tétele az alkalmazásnak a rendszerbuszon" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 #, fuzzy msgid "User installation" msgstr "Felhasználói telepítések megjelenítése" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, fuzzy, c-format msgid "System (%s) installation" msgstr "Felhasználói telepítések megjelenítése" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Nem találhatók felülbírálások ehhez: %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, fuzzy, c-format msgid "%s (commit %s) not installed" msgstr "A(z) %s %s nincs telepítve" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, fuzzy, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "Hiba a(z) „%s” távoli metaadatainak frissítéskor: %s\n" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "A(z) %s tároló megnyitása közben: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, fuzzy, c-format msgid "No current %s pattern matching %s" msgstr "Ne frissítse a kapcsolódó hivatkozásokat" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 #, fuzzy msgid "No appstream commit to deploy" msgstr "Telepítendő kommit" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, fuzzy, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Érvénytelen ellenőrzőösszeg a(z) %s további adatnál" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Üres név a további adat URI-nál: %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Nem támogatott további adat URI: %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Nem sikerült a(z) %s helyi további adat betöltése: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Hibás méret a(z) %s további adatnál" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "A(z) %s letöltése közben: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Hibás méret a(z) %s további adatnál" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Érvénytelen ellenőrzőösszeg a(z) %s további adatnál" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "A(z) %s kommit %s már telepítve van" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "A(z) %s lekérése közben a(z) %s távoliról: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 #, fuzzy msgid "Only applications can be made current" msgstr "" "\n" "Alkalmazás és futtatókörnyezet keresése" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Nincs elég memória" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Nem sikerült olvasni az exportált fájlból" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Hiba a MIME-típus XML-fájl olvasásakor" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Érvénytelen MIME-típus XML-fájl" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, fuzzy, c-format msgid "Invalid Exec argument %s" msgstr "Érvénytelen require-flatpak argumentum: %s\n" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "A különálló metaadatok lekérése közben: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 #, fuzzy msgid "Extra data missing in detached metadata" msgstr "A különálló metaadatok lekérése közben: " -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "A további könyvtár létrehozása közben: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Érvénytelen ellenőrzőösszeg a további adatnál" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Hibás méret a további adatnál" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "A(z) „%s” további adatfájl írása közben: " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, fuzzy, c-format msgid "Extra data %s missing in detached metadata" msgstr "A különálló metaadatok lekérése közben: " -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "Az apply_extra parancsfájl sikertelen, kilépési állapot: %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "A(z) %s hivatkozás feloldására tett kísérlet közben: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "A(z) %s nem érhető el" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Nem lehet létrehozni a telepítési könyvtárat" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Nem sikerült olvasni a(z) %s kommitot: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "A(z) %s -> %s átváltására tett kísérlet közben: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "A metaadatok alútvonalának átváltására tett kísérlet közben: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, fuzzy, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "A(z) %s -> %s átváltására tett kísérlet közben: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "A meglévő további könyvtár eltávolítására tett kísérlet közben: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "A további adatok alkalmazására tett kísérlet közben: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Érvénytelen %s kommithivatkozás: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "Az üzembe állított %s hivatkozás nem egyezik a kommittal (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "Az üzembe állított %s ág nem egyezik a kommittal (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "A(z) %s %s ág már telepítve van" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "" -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "A(z) %s ezen verziója már telepítve van" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "Nem lehet megváltoztatni a távolit csomagtelepítés közben" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "A(z) %s %s ág nincs telepítve" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, fuzzy, c-format msgid "%s commit %s not installed" msgstr "A(z) %s %s nincs telepítve" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "A tároló nyesése meghiúsult: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, fuzzy, c-format msgid "Failed to load filter '%s'" msgstr "Nem sikerült olvasni a(z) %s kommitot: " -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, fuzzy, c-format msgid "Failed to parse filter '%s'" msgstr "Nem sikerült olvasni a(z) %s kommitot: " -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 #, fuzzy msgid "Failed to write summary cache: " msgstr "Nem sikerült olvasni a(z) %s kommitot: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, fuzzy, c-format msgid "No oci summary cached for remote '%s'" msgstr "Nincs flatpak gyorsítótár a távoli összegzésben" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, fuzzy, c-format msgid "No cached summary for remote '%s'" msgstr "Nincs flatpak gyorsítótár a távoli összegzésben" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "Érvénytelen ellenőrzőösszeg a(z) %s további adatnál" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " "URL passed to remote-add was valid." msgstr "" -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "Érvénytelen ellenőrzőösszeg a(z) %s további adatnál" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "Több ág is elérhető ehhez: %s, meg kell adnia az egyiket:" -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Semmi sem egyezik: %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "A(z) %s%s%s%s%s hivatkozás nem található" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Hiba a távoli %s tárolóban keresésnél: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Hiba a helyi tárolóban keresésnél: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, fuzzy, c-format msgid "%s/%s/%s not installed" msgstr "A(z) %s %s nincs telepítve" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Nem található a telepítési %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, fuzzy, c-format msgid "Invalid file format, no %s group" msgstr "Érvénytelen fájlformátum" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Érvénytelen verzió (%s), csak egy támogatott" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, fuzzy, c-format msgid "Invalid file format, no %s specified" msgstr "Érvénytelen fájlformátum" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 #, fuzzy msgid "Invalid file format, gpg key invalid" msgstr "Érvénytelen fájlformátum" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "A(z) %s futtatókörnyezet, %s ág már telepítve van" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "A(z) %s alkalmazás, %s ág már telepítve van" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, fuzzy, c-format msgid "Invalid character '/' in remote name: %s" msgstr "A(z) %s nem található a(z) %s távoliban" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, fuzzy, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Érvénytelen %s üzembe állított hivatkozás:" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, fuzzy, c-format msgid "Unable to open path \"%s\": %s" msgstr "A(z) %s lekérése közben a(z) %s távoliról: " -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, fuzzy, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "Nem hozható létre szinkronizálási cső" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, fuzzy, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "A(z) %s lekérése közben a(z) %s távoliról: " -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "" + +#: common/flatpak-installation.c:835 #, fuzzy, c-format msgid "Ref %s not installed" msgstr "A(z) %s nincs telepítve" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, fuzzy, c-format msgid "App %s not installed" msgstr "A(z) %s nincs telepítve" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, fuzzy, c-format msgid "Remote '%s' already exists" msgstr "A távoli %s már létezik" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, fuzzy, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "A kért %s kiterjesztés csak részlegesen van telepítve" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, fuzzy, c-format msgid "Unable to create directory %s" msgstr "Nem hozható létre szinkronizálási cső" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, fuzzy, c-format msgid "Unable to lock %s" msgstr "Nem hozható létre szinkronizálási cső" -#: common/flatpak-instance.c:581 -#, fuzzy, c-format -msgid "Unable to open directory %s" -msgstr "Név birtoklásának lehetővé tétele az alkalmazásnak a rendszerbuszon" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, fuzzy, c-format msgid "Unable to create temporary directory in %s" msgstr "Nem lehet létrehozni a telepítési könyvtárat" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, fuzzy, c-format msgid "Unable to create file %s" msgstr "Nem hozható létre szinkronizálási cső" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, fuzzy, c-format msgid "Unable to update symbolic link %s/%s" msgstr "A(z) %s lekérése közben a(z) %s távoliról: " -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 #, fuzzy msgid "Only realm in authentication request" msgstr "Ismeretlen %s D-Bus név\n" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 #, fuzzy msgid "Invalid realm in authentication request" msgstr "Ismeretlen %s D-Bus név\n" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, fuzzy, c-format msgid "Authorization failed: %s" msgstr "Ismeretlen %s D-Bus név\n" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 #, fuzzy msgid "Invalid authentication request response" msgstr "Ismeretlen %s D-Bus név\n" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 #, fuzzy msgid "Invalid delta file format" msgstr "Érvénytelen fájlformátum" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, fuzzy, c-format msgid "Unable to lookup key ID %s: %d" msgstr "A(z) %s lekérése közben a(z) %s távoliról: " -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, fuzzy, c-format msgid "Error signing commit: %d" msgstr "Hiba a migráció során: %s\n" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5303,391 +5368,445 @@ msgstr "További adatok letöltése: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Fájlok letöltése: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 #, fuzzy msgid "Invalid remote name" msgstr "A(z) %s nem található a(z) %s távoliban" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, fuzzy, c-format msgid "%s is not application or runtime" msgstr "Alkalmazás vagy futtatókörnyezet aláírása" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, fuzzy, c-format msgid "Wrong number of components in %s" msgstr "Túl sok argumentum" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, fuzzy, c-format msgid "Invalid name %.*s: %s" msgstr "Ismeretlen %s D-Bus név\n" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, fuzzy, c-format msgid "Invalid arch: %.*s: %s" msgstr "Alapértelmezett ág: %s\n" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, fuzzy, c-format msgid "Invalid name %s: %s" msgstr "Ismeretlen %s D-Bus név\n" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, fuzzy, c-format msgid "Invalid arch: %s: %s" msgstr "Alapértelmezett ág: %s\n" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, fuzzy, c-format msgid "Invalid branch: %s: %s" msgstr "Alapértelmezett ág: %s\n" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, fuzzy, c-format msgid "Wrong number of components in partial ref %s" msgstr "Túl sok argumentum" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 #, fuzzy msgid " development platform" msgstr "Fejlesztői futtatókörnyezet használata" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr "" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 #, fuzzy msgid " application base" msgstr "Alkalmazásazonosító" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr "" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr "" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 #, fuzzy msgid " translations" msgstr "Telepítve" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr "" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, fuzzy, c-format msgid "Invalid id %s: %s" msgstr "Érvénytelen %s pid" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, fuzzy, c-format msgid "Bad remote name: %s" msgstr "A(z) %s nem található a(z) %s távoliban" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 #, fuzzy msgid "No url specified" msgstr "Nincs parancs megadva" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 #, fuzzy msgid "GPG verification must be enabled when a collection ID is set" msgstr "GPG ellenőrzés szükséges, ha a gyűjtemények engedélyezettek" -#: common/flatpak-run.c:1241 +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Nincsenek további adatforrások" + +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "" + +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Érvénytelen gpg kulcs" + +#: common/flatpak-repo-utils.c:3237 +#, fuzzy, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Hiba a migráció során: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, fuzzy, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Hiba a migráció során: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "" + +#: common/flatpak-repo-utils.c:3417 +#, fuzzy, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Az appstream adatok frissítése a(z) %s távoli tárolóhoz\n" + +#: common/flatpak-repo-utils.c:3764 #, fuzzy -msgid "Failed to open app info file" -msgstr "Nem sikerült megnyitni az alkalmazás-információs fájlt: %s" +msgid "Invalid bundle, no ref in metadata" +msgstr "Érvénytelen ellenőrzőösszeg a további adatnál" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Nem hozható létre szinkronizálási cső" +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Nem sikerült szinkronizálni a dbus proxyval" +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "" -#: common/flatpak-run.c:2207 +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 #, fuzzy msgid "Unable to allocate instance id" msgstr "Nem hozható létre szinkronizálási cső" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, fuzzy, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Nem sikerült megnyitni a flatpak-információs átmeneti fájlt: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, fuzzy, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Nem sikerült megnyitni a flatpak-információs átmeneti fájlt: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, fuzzy, c-format msgid "Failed to write to instance id fd: %s" msgstr "Nem sikerült olvasni a(z) %s kommitot: " -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 #, fuzzy msgid "Initialize seccomp failed" msgstr "Alkalmazások előkészítése egy elnevezett alkalmazásból" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, fuzzy, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Nem sikerült a(z) %s helyi további adat betöltése: %s" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, fuzzy, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Nem sikerült a(z) %s helyi további adat betöltése: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, fuzzy, c-format msgid "Failed to block syscall %d: %s" msgstr "Hiba: %s %s sikertelen: %s\n" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, fuzzy, c-format msgid "Failed to export bpf: %s" msgstr "Nem sikerült olvasni az exportált fájlból" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, fuzzy, c-format msgid "Failed to open ‘%s’" msgstr "Nem sikerült megnyitni a flatpak-információs átmeneti fájlt: %s" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ldconfig meghiúsult, kilépési állapot: %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 #, fuzzy msgid "Can't open generated ld.so.cache" msgstr "Nem lehet megnyitni a(z) %s névteret: %s" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, fuzzy, c-format msgid "Failed to migrate from %s: %s" msgstr "Nem sikerült olvasni a(z) %s kommitot: " -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, fuzzy, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Nem sikerült olvasni a(z) %s kommitot: " -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +#, fuzzy +msgid "Failed to open app info file" +msgstr "Nem sikerült megnyitni az alkalmazás-információs fájlt: %s" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Nem hozható létre szinkronizálási cső" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Nem sikerült szinkronizálni a dbus proxyval" + +#: common/flatpak-transaction.c:2210 #, fuzzy, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Figyelmeztetés: hiba a kapcsolódó hivatkozások keresésekor: %s\n" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, fuzzy, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "A(z) %s alkalmazás, %s ág nincs telepítve" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, fuzzy, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "A(z) %s alkalmazás, %s ág nincs telepítve" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "A(z) %s távoli le van tiltva, %s frissítésének mellőzése" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, fuzzy, c-format msgid "%s is already installed" msgstr "A(z) %s kommit %s már telepítve van" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, fuzzy, c-format msgid "%s is already installed from remote %s" msgstr "A(z) %s már telepítve lett egy másik távoli tárolóból (%s)" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, fuzzy, c-format msgid "Invalid .flatpakref: %s" msgstr "Érvénytelen require-flatpak argumentum: %s\n" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, fuzzy, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "Hiba a(z) „%s” távoli metaadatainak frissítéskor: %s\n" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " "installed: %s" msgstr "" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, fuzzy, c-format msgid "No authenticator installed for remote '%s'" msgstr "Hitelesítés szükséges a szoftver frissítéséhez" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, fuzzy, c-format msgid "Failed to get tokens for ref: %s" msgstr "Nem sikerült megnyitni az átmeneti fájlt: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 #, fuzzy msgid "Failed to get tokens for ref" msgstr "Nem sikerült megnyitni az átmeneti fájlt: %s" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 #, fuzzy msgid "any remote" msgstr "Távoli tárolók" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, fuzzy, c-format msgid "Can't load dependent file %s: " msgstr "Nem lehet betölteni a(z) %s fájlt: %s\n" -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, fuzzy, c-format msgid "Invalid .flatpakrepo: %s" msgstr "Érvénytelen require-flatpak argumentum: %s\n" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." msgstr "" -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "" @@ -5734,139 +5853,114 @@ msgstr "" msgid "URI is not absolute, and no base URI was provided" msgstr "" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" msgstr "" -#: common/flatpak-utils.c:906 -#, fuzzy -msgid "Too many segments in glob" -msgstr "Túl sok argumentum" - -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:111 #, fuzzy, c-format -msgid "Invalid glob character '%c'" +msgid "Invalid USB class" msgstr "Érvénytelen %s pid" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:125 #, c-format -msgid "Missing glob on line %d" +msgid "Invalid USB subclass" msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Trailing text on line %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "on line %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:205 #, c-format -msgid "Unexpected word '%s' on line %d" +msgid "USB device queries must be in the form TYPE:DATA" msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:225 #, c-format -msgid "Invalid %s: Missing group ‘%s’" +msgid "Unknown USB query rule %s" msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing key ‘%s’" +msgid "Empty USB query" msgstr "" -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Érvénytelen gpg kulcs" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Nincsenek további adatforrások" - -#: common/flatpak-utils.c:5431 -#, fuzzy, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Hiba a migráció során: %s\n" - -#: common/flatpak-utils.c:5437 -#, fuzzy, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Hiba a migráció során: %s\n" - -#: common/flatpak-utils.c:5684 +#: common/flatpak-usb.c:274 #, c-format -msgid "%s is end-of-life, ignoring for appstream" +msgid "Multiple USB query rules of the same type is not supported" msgstr "" -#: common/flatpak-utils.c:5719 -#, fuzzy, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Az appstream adatok frissítése a(z) %s távoli tárolóhoz\n" - -#: common/flatpak-utils.c:6689 -#, fuzzy -msgid "Invalid bundle, no ref in metadata" -msgstr "Érvénytelen ellenőrzőösszeg a további adatnál" +#: common/flatpak-usb.c:283 +#, c-format +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:6791 +#: common/flatpak-usb.c:291 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgid "USB queries with 'dev' must also specify vendors" msgstr "" -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" msgstr "" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" +#: common/flatpak-utils.c:693 +msgid "Empty glob" msgstr "" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:712 +#, fuzzy +msgid "Too many segments in glob" +msgstr "Túl sok argumentum" + +#: common/flatpak-utils.c:733 +#, fuzzy, c-format +msgid "Invalid glob character '%c'" +msgstr "Érvénytelen %s pid" + +#: common/flatpak-utils.c:787 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" +msgid "Missing glob on line %d" msgstr "" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:791 #, c-format -msgid "No ref specified for OCI image %s" +msgid "Trailing text on line %d" msgstr "" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:795 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgid "on line %d" msgstr "" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:817 +#, c-format +msgid "Unexpected word '%s' on line %d" +msgstr "" + +#: common/flatpak-utils.c:1980 #, fuzzy, c-format msgid "Invalid require-flatpak argument %s" msgstr "Érvénytelen require-flatpak argumentum: %s\n" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "A(z) %s egy későbbi flatpak verziót (%s) igényel" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "" @@ -5880,43 +5974,45 @@ msgstr "" msgid "Invalid token" msgstr "Érvénytelen gpg kulcs" -#: portal/flatpak-portal.c:2264 -#, fuzzy +#: portal/flatpak-portal.c:2337 +#, fuzzy, c-format msgid "No portal support found" msgstr "Nincs találat" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 #, fuzzy msgid "Update" msgstr "frissítés" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, fuzzy, c-format msgid "Update %s?" msgstr "Összegzés frissítése\n" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "" -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 -#, fuzzy +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, fuzzy, c-format msgid "Update ended unexpectedly" msgstr "Aláírt futtatókörnyezet frissítése" @@ -6147,6 +6243,23 @@ msgid "" "parental controls policy" msgstr "Hitelesítés szükséges a szoftver telepítéséhez" +#, fuzzy, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "" +#~ "Nincs bejegyzés a(z) %s esetén a távoli összegzés flatpak gyorsítótárban " + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Hiba: %s %s sikertelen: %s\n" + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Hiba: %s %s sikertelen: %s\n" + +#, fuzzy, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Név birtoklásának lehetővé tétele az alkalmazásnak a rendszerbuszon" + #~ msgid "install" #~ msgstr "telepítés" diff --git a/po/id.gmo b/po/id.gmo deleted file mode 100644 index 301a346d9ef5742fa08a99470a52ae374c5327f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 109618 zcmdSCcVJY-9{0T{AXO9rK?M&zKoWWjA_NE!T4DkMBElxwgoPvUIUfyC!G0X zxD)0!Ya)>yp$AQV;1J9!;8=JJ^xy+f@%Dt$XuMIxi&1egIUVSjiAoCfcP%HMB}y{c{g#z7DJMQ~TR z7VZwugbL?XI2Zm8sy^o=Y`q*0Gcn%uh@(w{wH9y}0sgbzdI=Xq$#391}^hdaQn>TS98fL$?X!cK4s zl>0oWe6Dov4bJ^|xIOmgIQ#3M;=3QJ{GWnj;0tgxY_rzt*F-o1^I|vw9t~B$4??y3 z4;}lhvwFD_s-2z$OX1T{{)Vr&?yI1}I}1*MPrxkLuEE-mgECh@mH!z~?e2cKBYYip zgWtgJuQ80f;+)EQ1u^!s`n(6-t7-nuNOm=)8jA)ZiXuVfd^PU7!T!tDU|;T#{^Wm)9L|MjLY2e&Q0e^A@pq{5>~yFtpKeg`_l1LC z1{@0upyE9OsvI72_OC;wughV!K8Hi)Zy{9q#h}7J5Gwv7p!%6ppybYj%GdQ!<#az( zd_Tc{F#B*D-yTr;Sp}8v{b3(?vNPWVmEK3-DEOH(_t_AM%)p!n74EUHFZ`!7zYi5p z&m*i}Oo9rh6tZQwaj`M3zm{W{nV-V9Z4cf+mWKcPtvoQL@{I1WxY(&|qF zPQiQ}RQq@uD!h+j8~7O<2)}{S;~kH(?JO5cei4+O)j0b@U~kN)L)FKvP;xK9!SD;m z?nm2rCc|FXPlM9my`kFuiBS2w8>)UDg>B&`sBqtgYX84O)kBYCY`qMF^0zz8fODYY zPeRqliBR!82-RPF2Nm8n$J+Kf7!JX_461&PfJ5O`(BuQEzQ1thPRH5s21D5|g@fRF zDEW(^^z{gs_lK(QIZ*YVfIGrtq0)INR6RcG%Z}LdDW z_UGC9&V(wb#c(t{98QFH!nyDpsPHDAZ_}{=D!%=p@_7kV`91=-ho8c+@E159j<~>% zkE@{EuYld)ov=522Fm|t*b8oZq0LtYR5-JtpWRK1)E$G``m z>i@q`;dHvh=5sVu`Ob!FUv;o6ya?_LZ-pwy=im$%YKRNrJSKD|dLFsh~RK1@IRqxM3#rFwRzJ7xWzsEJ!oCybDo(Vm;#+i?Y8JKT@ z(uX&o`n?~Z+DqGOt^b}-;f;cW;cTdKu5soK&U`)WkNrQPy7c znD>V5VJX}NR>5KLSSUT&2nWK~;B5FmI2F#ip1vO*4OJfRK;@&y4K{sKp!%5#xH~)y zX2AzxXZRJA-uw>R!A>_?_wG>oIvpw>B~ayZBpd`Ug{r3~p~~}fsB+l;CM!1(%3m&2 zy~LpUuLGU^iO{q=sPcIZs@^_?3h!sfJ~!L^Oos}m(s2V+y_^rH!W*IdeFatT-EOh% zJR6S2ycEj*1gQ3U6{gxg|Y3DuA84^?01zzOhKI1;w~hYf!MRC)^G z&M*p<{{x-3{-y_ zhh5+?a2I$ERJm=09pS&B>gjW+{;B7KR)2PN90xmKKOZXnOQ6a*4pp8f!pZP?gpfa57v54}vPEH(($5F_b>H zdDPa=2sjG!G^lo54|Cx8(1ZVis_&nm>aW{lw%(^h*;hiN?@;x%5srbIU_aQA%2j%^ zVP7~N4unhLICwCW{6?toKZB}|ou07c#1fc+`DCbebT?EzJ_n`u??UP6k5KwH)eGZLu$aD!)CU2ls;8!2O}>{cy(%pwVNf_VF21xW7Q!A3Oz4gIB>!xEV_C zc6`>>+X$%gT?{?g02R);Q2KfY8~|T-?mxk5%)OqY?}0}{wcD?t%Ef!$#*+b6K8v90 zI|0=Wj&r;kD&9w-()kHgdHfDN*!2Y~KN@zzTnJ^q-0>i&a4&-G;Jt8L_y|-#^fDX@ zJH2SrHy&nVUIi83S&lbA5A(xN`TP({|JuJ~^*a;x$Gie&z{6ozcs*1(J^+>O*I+LE z0;(K_zii_l50$PG*aPkhmENPF^x+iP2A%;`Z|6bzzZ6RDT4#Tov%klgAA&pJ{v?#1 zybYyi@53%|t5>YvbcNFQBG?(OhRWZ1sPvx)r5CqDmFIg<_5M3lI6J>;+u1NU9P>&z z2%Ze(ekYXt<8V9p5$pzkfPG=dO*Wn^sQk}_s?X(6{mW`7Jy{Ef!IPoFxes=S&qAgD z1E~0Zg*{-$e_6SHP~nY+%HLGj9xi}N=Mt!TKNu>VH#+-gpya=EZ1tK=M;EC28Unk* z2~g>p3l+~gsB~{|JQ*sz=R@W92B>;_9;$v`gYx&ev;P??eOtY5`|(at?SBmH35%ih zt`Pbl%@JFb6>+*)>Fep8k1yz0(P~~ZZ;{9O)JPxm>#=-fYc z{2j`Fw>Pc)P$>Cn&b$~ZyaZG^9_h@dL*?T-xIKIXD*cq0&*|xDNKgd=wl3uY`*CUvMY*73>W=ylc%FQ2wVw=|?e? z9_$U(?#rRteHBzb>!HeV0~`r2fMenFQ2j=me_Oq54^pBj zdfy$&JPb;&c7rOHc~I$I0o8Bq2UYG@!bw8q5N%v(vweNN7&{I>wkObVeSL_ z!6|SMEPw7#j z^#-L+$3WHRWv~Z)3@SZuL*@SuXYT!@wVwhdABC#l4N&E9t>Y%gt$wolk`0y50;uw? zgW2#B#}}Z92adwN_s_O`3Zc@sAN1hqQ2y_L z1S+0;pwjyqRJvOKYS%+U;7rUFa4x(Ns=j}LY9|@L+5V^)cEFs3s>g$14!j!5{|B%w z9QwP}+mTTH=6I;|FNX5J0ZM;Qg38BPQ0ct|wuUb__g7&j%x^=*w;8JZyZw*3S}VeZ z+he}-51YRyq4NI;><)i}JHf7zR;IqP;2O-ua2b36u7EqYYGuZo{oy{CpN7)kpGU%*`W1MC7Pw6>fLdthDy zC6|B-XFXK@4}%@yNpMGa9^3)m25*3m!``sIO)JyCp9Xiqe5K>VQ0e`*<8M&q*0XIZ zqhCYec+7L*FnBmrecS|<&gY=y-+`*fui;48dm9^H0aQ9mpvpf1rFR<~FMz6#jZppI zGf?I8U#N8TZ)fA50_DCAs=P0P^WdYfFYMahrfUrJFc(AVLmgE9&w`WT9Z>1}4yqmp zc4!ru3hSWyg*%|~xfu?JJvz2B?P?|*jrl;R_Hhf8+$O00c&kpWOnYbx`(qvnmET2B z{q$<6c2fgYP8UMy`_oY6u?ebPzJikP)Y;Z+SE%yq1LbcRRQW7{D*vP4cJM5?E4&&i zzfVAw%g0dduidt-%=y9s*cJ1+Q0?~ysBm9{(%&{+Y&lGToiSHIx$h69$5%tecQaJ} z9)!}%O;GjnE>yj>*{+r8Py0fZ^K2-&v!L|#Vkr6Rp~~SUsC2&#J@_kBx$LsN)$6fP zcvDp6$PJ^AhwTi@HA)Ey7fvVphpu!u_-RkEuD80EF%Kj~=esPB$txUhQ04m+< zq1yQ=Q0?hz$9tga`5CBo{T5U?d<~_?op-eLHU+93)k5jd(NO*EiBSE*8E{*81C-o- z&iy5*a(W#q-0z_Bzg>CLTB>AM@M{X7CyUN1oD z;U_Q;{t6XeZeQCU9tx#jH$dsz!%+Et394WG1S&lp``LOM2zSRkA1eLF!(#Y=v)`e= zZ6`%g<$eJ4;Ehmv_&k)qpI~b^Y=9jfM>ys<&VX`X09CHV&VFyG{<|DXk5)s)e=5|t z_c2uY_ZevQbRtyx4}%Kte5mj)folKPLbdbPpvtw&Ae-KPP~|oqsyr4u`%0*MoB-9Y zZG_UJmmGhGs^5&kw*0fo~NPo{uQY7{|ps=w+x%E5m5d6 zbg1<10X4244Hf=XQ2PHKRC;?4vGq3!s{QN}r^7S)Rczs6McqYT$F|UNG-;3Zt_#jmMeFCNLy+&L2X;9@>1{GftD!!AU%Hs*B za(E9)&wGxs_WhvR+a##^h(ndresCeY0xF(g;8w8zSXHIJv|Cl&u>HN$EQ&B^F1`>J<{geVzkVPnSWZ>lrA0-VD{wcizp8V}(%pJrNeem!Rrl&}3WA6QKH`N|+7LcIL;S z^!z(G8*a0^)x$!#8|K5H`soLt`j3~O2S0@>$M#dKc{r505Ke$=q4If?GcMv`ne0L9=?D%@DHf=pEJXT-vHH4uZC*Zo1pTuZJzZ%7OH<;4V9iFp!EB8sPXAV zsB(T6Nu0<3so+!LbZplp~|Q499w>cQ1P#Wisurj_VFB?3cJp={)?gNtr}`P zJPIoOtDw^RAXND8K!wv~o~@_dpyI28O7CS*?c*WG*Pz1t5-PlH=Ue#_z#8BgNvaDAAzcek6u1CE41;?hDu)oN*|Ac%J&0M`t~{87XAX2j`n+4_pVUkOo1ww7*u{vhpLBr zq4eV;sQT<&Wc6YKRQeY}waX-w9$yBfcMn4Ko6kZI{s&6FL$NgvfeLR9R6O-i`MwBh zoOlANe&2;E&!1o(?6A<5S0R*K9h4p)2Nm9(Q0adkE`aS9wTjfjB~bZ%8cv4aK-Kf` zJ#D{K096l1K!tM+R6bsTli9Q zMyPN$!QJ8SQ1hJKmfQB2gbM$1sPW)&sBnIV%J-ms?0h2uXJNhxDjh#Um22-6wtdfo z>ZjvS@m&ZN&ZAKE^d(e#+aTr@ok3cH%3Kmd6vQ@m~Vum z;5H>TKRHnS%)U_da3WOtZ+7lK!`(2CD7ERUf@&Y9L;1TEN^hTs>d$|L3cpjCZNF1s zSIp~R7kDg`-ku9JKYa~;1b=t@AZF|F$#SbVpF)K{titAVF_a#zgDR)1p!$Uup!$h- zU>n$Rl`XgJp~`U>>;R`i)$?4a@?H*AjvJub$Bj_!bu&~wZ5_Aqje?4=1WG@SbG!|z zeZC1*E<;z_`NC|tE#|pU`ns3n3aIpzLACqUQ1KlKRc_}(jVsSW>D8xD{`;)4><_ob zoB`XzOxPBVgUa7zDEZk?D!waVJ9raRIo$%T{x^_K-b>~o>gT>@3kakvy70aah`LdDai-lZ3+T$ezV(?L-E z=*3X&bt6BnzS=^ou+^&tw?FP#Gw z-zKQ~`y49VHv3r)fNGc1q5Mak{Yg;zbR$%M@E%n9zjN+A_its+rH_Zwj}xHMc?Q(D zb1zi5FGK0qH&FWU3zYo-U>n%>0Bi09CD#oqf4v&yL*= zvH2Yi6@M<29xR3vVL6mOUJO0>I#hr43)J{C=ujK(c&L7Q4ph0+LgnK)sB!T!sBm9# z`~WKb-#YVFhuQpX4^?i%q5MyVs*gp^z5*)VdZ>1DBpd`cLdm}k)egUR-0^T5-bASU z&4Q}G<<5LKRQoyyD&4n1mGd)D9U_eiT&r^P$Qk3YCroRD6dx^BGX(bEUJt3o0MaLWTb^ zl)wK$m3NmTZTaj9JFM_KuCFdK6ToB~gQD%TgG z<^?}O`5$n!4L2Vu|4W@Y0ab4YL+S06Q2BiWs$cpNDjgk;v2qzuI8L3NM3df6qbn6YY<+>F)xSuHB*R7eb9=dpUEN<7&qmxE%Mja6Ej) zvD0z3zncM-?pmn)oeWh@cfup!$58cOdAx16M?%GWnd3E3^NO3G>hB)7CwvL2{D+)i z$D@6q@^=?h|M5Ijd;iv%dz@&?eQP9jIp!Dr_sP_ImRKME(BdR9nA8pvrY2RC}t1O7DSCdUF9(KCgpH-(yhiG>N_dh<0@zp>5Pww!uFwcCksEG&nU;rUSI^afOZzJt=AozAi4JPfLx=Qyr_O7{k+ zd|wUa?_H>IukE=uy(6H~w-hSgwQwN3%<)Mmef`5NZI{uj0~-$RMR63ov+)&Gc#Y&dmL<#QHP`8^0#pC3WVb-viP z`#s<^%-6wu_$4fd6E3m(aS_}L^V3lA47#+HIrnu8RD1XmD*xMFX7y?&R65r~^~2Xe z$-N7ejz6HvzyIYnedD3(Eebt&5R}|SQ1$mPRDb&)sBpVoVL8ijKPdSdp!DKJsPg&= zO3$;ewDK#Vhxs%p_uHZBZ!?tsXIy3HN0Xt-X>X`<-T)Q;Q&8c5>Dc{h+g^5qO6L-& zd>rJ==RuYKgHZbX8B{rKca810X2bcIPk;*dO(?zH>RQ{c42SAx=0JtB1kQwq!G-Wi z*cSG=&g$(z=wTiPmG5~_{ttp0-;Rgf;pxzW*TUBDX(+iD9N&RT@8{5i+h5-*(h82- znlTWL--@=0M~cDxe&gRN-1g+sZv&hGFLdViPHtDsH{)+A*ZExf?d9CoIrB_pmT^tR z{!`~BxkI>~!u%m_uM+=C_*^ku#2mQ z^YbJ2$0KtqGRJb?j{AqXe;w}YWL|p39>hGznZYlMCJ|H zAN&8gu#VyWS|@*`@kL*ajOwhjOPj23#ZJHLxo&dzr#pYLZ;Na>JdSW*!afFP%Z@7_ z`Tt@!7?vROr1SR{_g^6QKkRpc&%i@)JAnIH+e@}ORFtW!H);{oEuJ^J3(uFw;b1B!$*geVB0sBSxeHObK{JaR~W2d=? zey=)zzhbZ7rI-gI@BePb&sR=Hc61YFoYsAmE6e$lc`^PrBKs!y`@?%&INx$VgzG!( zpW<3Z7(FrXgx`h8?BvVgrr)Eu?T(E9+Yj?JCsV`yM6T~~?1o)87k?#orCcXqe>8UA zaXrZWzp?v?>l3b>3G*=*=r@@E$$dBMETf_ZG!al*pr}5!T z=Pqb`*Y9ck>30#=W89xayaSyb!;$&5=ihR|S&01w++T-GG57ajcM?|{?$6`8mTOzC z4BS^EcLn$Q{p7-#2+u=)H|);A?FGzpxpv{I#r^?!tMem&dk~I(*)SJ({i?b8Aon|R zufWf_==LM~IoUeoiZItX^HSt*;XVWT88D99uE<=3xsLm4F8%g!+z+>3a66StzXcWy za`gS&zvkp*eINHR!h9aL3gip1>xbPmC-ZOY_0t^iUfjF6F#iRgbuw%4e?0El&U`2L z@8W(0*VWvw!o4$Y>!E%PaIy<`x%0E!neWDJEq1fZ=@-ZD z1kAr;o{iiQ);dy(-LbfR%r%kgaA*HKa{u7k4!d`_mLs>&#lIQ*^N`aTWg_ zaG!@L8ZMOgpk(%NEw z7e;ru67%oa?~KfETmwSkpN;`@!&K z*d1B__a!$Y3G<_no!mw?GW+sA@4-EZzt0J?i<3P7^I4d8cS28b{~q_dW51Gn{l*ag z0Is9C+Tw3(c$jnBihKRu#(o%n)?@yTd+iD8*9o~3u|J3V1_ujanO zx%GxmaJ}Qgoq*e6+}FZ~;G<4%JIwyCH}+3DdEah2atCsK%{3w9_8-hWxu%8ed_Oyq zuFo(`!tH48FNT`SpN+hJJ-GhG{ZQQW+ruJqFmjqZzl8m-@MX9dyMy38nAgJ{oa~F- zAItrTgtH2n6_^t){C3>WadLM!-VP_>K8F16317s|Dcs-d^1m(a+u?67-1gzVg6mnX zFSrIdnbYyJ3K{(>u^W#$VU5ARZ{mJC_GQ>y=={CS{r%Y8MA+wZe>E(E-JSaf+@Hn$ za%BA9A30?Eh~0kH7`Xz!dvleA(p`_+E7)y7_8NF5ZrV?n z$Gv`!TM;aXsPOuE(!_c`!j3d$=^oZX09@vHuMY*VGUOy z_UGcR-zV_jaC^cU|O9DF182F?_ARIGuO>rldwAr+xFZqf%W)pW5puJ;5LHrkH<~FF5K(a7yHk+ zzme+{?ziPCa&B^;=I-mU*YAC2&WF1Y*4D(aE7u_0|KM7RT_)yj;L*sha`M08)*t)Z zxN@<-PJy}Kb;v}qUkGn?^7C+;%XJ#zwBp*z*~`m)n6KpWe_y+sEbN{m9{v7_{BW*q z2=`jdYq>7tx)S$0u+#5kjLqF6O?c^DF;su|}fU)j9c2 z*bTtF5c?zHm6-c-4aaVACP5>F47;nC$Q6RCgu*#&m-0< zatC(DbG^>h3E4@6dp|Pu-0y_Uh1jz-8F`hfBj)d+ey?$Dk6ZzA`bDvS*4@W3U(bCW z?%%ukYO(8y%w5iZ2jUrkT`#Uq+;?#Hr(^zxYhUcDxRyEppJMkG_j_SC$H`(9*_Hci zh-+W?IXudxp$&3lx!)f~;Scy7&AonGA$tk;Phel+!dl_nddm&jC!PKF$b5-85ANse zY$%iyH-|faqq#qj`-{1rb^;gU?+5N@akb|D2Ex$q2=2Gxx`^vWB zcJA}B{}1+`aCLQQz6rZUPVVqjWPTI*uGpP~U;VD)ek|_$xNx3 zfti>+WKMQ*--ez48_N9#49DPhl(Srb>~7fS;(wr%y#}}QG4IVaoa>*+Oy|0Zd;JC> zcNtd+;hbx&BKN_!o&R3Q{m~@{JhJ371ycU-;G--_h-4Vlkg+1SGc-j zzlXEG1;6JadoOl(!XKUexrC9){YqyZg52HQzk`hb+lWj7*9h!y9+Cy|5IStC0==?s4gv;CMVTU6FZ@>kO`;n0Mxy?c6`at{3L_ zU0j#Dz+T4vK<;00<}Z=EnClv3??CogC-28yi+L@6j>BRda$}KO0xyU99S1k!-hiEc zcR73A-;Dhf?EAo7FrNzFAiM|Riq4&G2xB^Sn_V1J zh@-~EvlsRm&i-BaD)Oa}U?U&E$Kn0X{RYR2vD+7cqqxo>oG-B7o9hnD`{H&6R}ta9 z=hE?C%=#5`P2l>6i+dA(bh|5;et9nZ&Vv39QYl8+a_fD66S%<&jZ-EqfXt6~zEAFYm7 z#JsYG>S$HG)T@crR>hM^=i51!$17uAw6rvq4Ed;yRVC_TUTv%YN}b%CgzGy#MRO{pApwO^>U#|Buu3w?b`{ zu7#^&Np!%elPW1*ove#iRvHEL1`kXQ_M){h&sMq7y>*G|!F67VG^Z-DHdZ#tOU7be zIX-HlYqAi`7&(M0@UpzT>iVi!ZB$C;)G3MbmL%4rX*kb|C+qy^Vn)f6ieNZ8;wLB& zYff1SqIgweowtf`615ExZ+fDtDqfcp@n#SwaN6&3WTOb$R(d<~it^?cEX)Hl{b1uL zdu^31hiFNnz78MZ_TZ(`sd9^&@~DeNyyE(j)v;2gW0?yT$wfu^%l(j}YoqbXXbEl7 z&!~{N>lZ*C>2kK7O!5LSQGQoqbjdW zR7omc7W3*>#k}g+Ixo2@R#}-Hp}WZ_HPuaH8sbu96gO5T$7m&eL0N-|18ugJL4WgS z&OshSAqKHE?>XgcODE)$(3(w7bM~Iev(xs0No57G^p3Qmn$DWOnF^PdBu*B7R?G z*2Zcz7X7J!mq9feDWhAd(laAVXi&>RC==bUjMb?O5~itjz;d|xzlkQ~VB?jpidI*| zklL@zOV(FaMQa<}XcbF#h?q{UED^JcU71L%@hameqw-Q+QLoX}w4Xnh8(x_xjnb@B z;!cyIL4in5PEA{AaE<_ zlz+=IW(HE%P(xcItW2+-wo43|en%zEh^?pPn@Vji8cj9ix7jpoG4fy{($K8mlyi<3 z$?}R~HPN{A+}E`5xE0CDik6jS)gBCsl3rCkBMu`M-L?7?^_X7qqG`oT zix=k2&z_sNbn>3L^A_c$d#Cv7(T&omhCLLsw$65w{rdJpQ29+ZBdG7c6ta~N_nnVUSC<6RTHg^R@6poR?(!A zrM2-I%{xu{>KIo2A?>dUyP0G|B-g8s)4`~|H9$y>l;`v?wXd zrXg)fBo$I&VI;S((3@72yI}fk#^U)=8o6s0OiIHoskFYf7L76T%W{imEt;RVVB!0R zT&W?vNJE|JRE@K*Q^}fGX}mnnNJAv_to*woe}?3lVKG9d=H<5fgAlBgnaQ*yR5X2d zB)23{TgP}?(xBq34a{Zrrija#Qq(h1GyQ08X?BD2*}b zEWDZoQwCaIdBQkU#HwSpTCdnPnlOrITpAaGQ5q^oj&Z3c<9RT!n|540W3I}?&P8k& zM(eJi2&&QG@?^_C?UYK1a{3weW+o=|6Ld3Wu^P>Gs!O#<%B`%_B1Sz3^Foz#WhK*4 zk|81;) zi$^P+VldyZ=`LkfA$?Q7i)39^ybPtODv4LrC+g`A6P5K<)n>FwStjet%j4^FJPi!l zkzCc8S%LYjjA?=!m4Z3BFOfcLvfeV&{WYCLAx5=$Imu<}mX~LGIaSNzWo4By-Nu$x zmo3+Tl~cZqu5P)?&`tzArjYTPWPCp}xmODORYCY()1#1+S6@@6rHm4a1}4_2r89dr z|G3eCp(R#TQ%C=&X|)|ON)y#}QOa~+skJ2)CH2*$Q5qLml_qMOFWg<>qzP21vvS>1 znnN;X=J4UblB|k?kn5SCndwx@#%3h!gVtl5sbNwcuVeY5&V;nY*4NPQnAVZucXehA zqc^Uh{8+`%1!$z$mr)Xh$z%fJtz#{asHU0LQ1Y@XVfoakij&DiX3Eju-K~O12H^ zNN>z6|NLBrI`n!H#)gaCl~G!h+jy<*aj4*O8U@9bOqAEH(`q?wE|U9qeFrlg)7fm% zx34LF%#kfe)>zzj`~xzm$W_$h--^mxwM7bv+mAcM;Ov%I9l|6;+pw%>G1;P3gbiq%Ew zM52F|8{0tLm}`g3Eoa|)Xelv)wrb|&LRA;tA)F4JoO-BJZ|vmH+#B2b<8~@}gkvok z?yzO4YP(r>|ClP%XEtMLhmra^rU<61@}lAJw6<+niO~VEqD zTM&v@Go5N#%y!p*N5n37{7$+=GqEg1ViLh}-E7dY_)RM9b_jH<#b%0ldcnMTdDGST zXE6{@FPJ|+cY!5SabwO0(NcyCx51?oke|Mks5l4EEqzyc}5yoQU$f?h8)^F z!=YVUmO3RelO=6Ps~Ey7%gA)I(dA&4AMDWSNs(P2sRuO67G~yF)GkrV*0kiViGEcL zn{Bade8fuE_>>4uUI?J@EDP-G0`o6Hx z(uR48U9UTPTP-~Jap`u`aa{e0d69Y48M1I=RLX`PCZz;y+XSWNO5W8^xYS(Wf9BKQ zZ&uG6#HYfeFjfCN(+Kq~vFe;1IdSQZTH94(MN%}I*QU$A2 zn}NdhZ}usc(G=gA5@&!^Pe|D5mS)AL638B^$3m319$$sT>Z{ET4++;(oAP87Am0vCws;!Q&^&%XTv34GacRT*{>O2UrSQNQ;vL#P?y^~kSW!aOO^#y`ej z78>}X!>2jwxt!UAmX{cdqf(T?1}qIIwar4$`O28I(6E@V*xs@{G9zmm8!qhmt<|2Y ziQWugYVPZ56R48r2@x%$BQvHgDqgW5cYa=EMqc5<+5B5Py(qs>(x>R7x+}zGf+h|od)68BTfWxL+rnxaoKx^G5Svly0UMgCMOP?U5@tI9L< zcuNnUg1rTQjX}WHiG4M*l62;vp$tq;aWZA}2k!Y8b0d12@>*sY9jvQ#%kS}Bq4*uY z3DN1Eytxf#&8=H-@&mGyNG6so$eDvFL>!W{MgB>-69Gc zY_~v@WkMfVY6fPz7g_PBzJcz87Qq&8g2k+A#_lfrGaM&vdj<3~VIB>xi!w@(E`QA& zucPM8*$lHi>F-B3yCWRhlm4q-Qk%$OAO2RdvukOg?kB7zchfgCUdX4yOfBa*UZPnC z`?Z?v+uZ_{h*`h+i>k^xdd6Uqg7Wwhb~=%1*N0{7)SERCWoYZku2XDa+V^BkesuzQCVIFjI`J zch2!@9`;ibY0pe_YQjyx0x`R-QXA8-XeW-&$?Pjfs~g(IAVdHC!_V>Jr`|7itYmE|&&F$bwx%r`YbtMM%P3FJUc8FRL`lTnYF=cz zmQ=PpyPx3%v~jKe)~;)qBh*)w&{OACH{Y#0d!sL`eus9Cm%_+f`{%F4bMO zEMgyEG;&`+0%O&Q`U*~`#FJ~-24gE!Ns~63X|S0xu;<7jQ~LHu-ulwYdTpecj>=}j z*x+IowV_3g8JVesU?T2|q#B;LDp3_Cw?~L`*fJol079Y6o1K z+`g#aIfn!_r?Aml^+iXTn|3%$lPNn5v$F~>Bd69LTu?K~(gW8aehBH)k39d(md7~_ zWkPEfW|{tSOp5Ccbp@hyQf9H9IzDAiR5)9+;9zy&&*`;FV@HYgHpf5wttA_P5j9V- zLgv5fPrX;NzDBjDdZo#_-QuiZx7aps*QL0IK^JEdZ{pT?$MfiNZ@(Djl@?-T=8VY9 zyxfJ0it-{e^YiA-$YjyT-8>mN55pm5Uvo?cWeYy(JI*qbH&Ugsj;@mPAoiSa%=mJe z=u0oEw$^m>O#^GX=u`sCQeHRqjG76_-Y%o=mq${qkppj>bW4ADpNy5NsVFvv8`GVn zdoYt^>BDNC+VaS#IT04SakJg>w?Z$WR%o#eNzD!EI2(m*ren-$8mc(jwMHA^JglgS za}>>Nd)SU3lsi{&B{k)Z0tzO`W?n=$$qA_Jkt32rm{_Fp+LBaOv$A!5aoGJQtt^|w zs+s*7nv79NmKbS~HFj*|+v%w5)6){_I|Y5Jdi^vB|1pl{4`%l+l}qDfTSH9RpXC~9 zqv&lhGcnRap-D;mu8B%>xYQOwumPh2MqRXLWo8&nyqgC=^lS8o+N9M;ol2l_ELq2S zL%C+J=4A~d(kOvO%yptXKy=|WC)B*!8vp+0U?}?3mZx@JXYHxElD6rah}ibhxOlC1 z&DofQ#&v+&J^fB)Ff5`6FB}xJ2isC2>Z;v@!W4cea^vLoru+^sy#Vc8(p5qu#c1ND zIY%nqWJ7hSeNdDNTlU~2O600f^)5I>A_@6Qg%vj8bnJX{)S5s zjE>5(>Ap%mQ3vBI^c1vQwcsCg<0zRu2gW-$_8GTJwec0+Doi^~#*8er4a(yoj*_9u z9I-2F>d#keCt%A-JI0|0sR~>VCTA5DEGnGL`SxY@fcx^uEFHhq;X6BQN(CuUYpH@Z z*23ca_mO4qD?#pzaExOt+CC!VIXdkOBXyHsr2zV^fN^(b|?DW6_1qJLacb$-U*bdf^&2i-GSHAGA6 zIAo=xlQd(dZno0ZuQU^GDj@c92+7RE|F1(s&ntAoa22mG@K9XG*UV$eeCNP3Hr{$G z^YRNl=El5aku<$x`ZG;mSg*4&0anj%PeifyOV*iTM7?1nPj?nj2OM9T``_;s%%spXJI5qVpYy+hq()VTm%G%S$WmlJGEa(u)uQp3!+ohW^ zp2?zH{H3`iITjK)sdV))AMb2GQ>>;t{f}032!zQBwaK{&OdQyirdcEqCDq~*O`4i?a*l{tE^E$gd51W_^dT7LlGT^**cDCSK_jP)->ELme%v(nOPW z9H%=&fdnz=3_-qsYA4HdcZ$RB27MRe^N$gl`IBA@9jHd*pZ96xo{UwNhg@^K`TCv! z0h=c&!OXH*5zUbN*<&D}7u(DUE^XPEcVYZ3CAH~5%s<`F;L(D8jpnkX{XF=Yt?)(K3rr)6}e$Av4tDxn}^A z3+BzppD}qs-eL{^E)}7p&e}mzQ8AXlBpdFW_H9Ov)@4SfP~o{p<8C?b`?0plL|R5{ zQ`D&}(=1S!V8_n)nHp6G4<9U*a!Uinn-*5u0UJ6zPWNcnAxL%$?&0ccNyI&=NhK+C zl*c>-rTO@CbSA2rX}VOJeUZQFFSY6pm8V-CXd+{lzkXn5?cBKVQ*&si1wrm()oXpl z2n8OD3r(s~Q%dI{)660-WLQcJFijv6~II4fn} z-wFivJS{ZK8a%LcaLUalF)*uZN!PWe4{rRTw58a%k-4&!$~D)7f|#6Knl4h4mHJ>n z`1OHMn+p7fbU9>ayC{F}-tVHqikkj{r*b>M<&cy9r%h%EG)6ee;vhtRFdj0f^b5|xl-rAf-`WbRN6U2XzRqj zyO4^`-}Gix6U>v1!n++&Qm92(liUX>2?8)D)Iz7yg4Ad*Q!`UrbD^3|w=IRbj7<4(=|+c`wR7t~7|{kzeF@VWcU;`;C)Los z#@9P(B#fnb)Q~aMbmvTxhTzO_sD}v6OrG80!<3AlZ-xfj%F%V-Ke4f$!Nx7m2sNKE zIusjj-T`*e_}=aOlFpa1q%iD@^fn|!bUxQSPfC?@5T6xFd;H^)5cg-LX&JHdX>KOY zw6EYa`cjUY8M|=9TN*}Cb!sCLJR4^f3($G1Q%1$|y0uqH<1|=|oD%=HKZ>1(Ep$oL0>$%w0HJ-{$cTh)&mr6ymK+=}mRNJ<4DC;xq5S7rFA)e9QtGh%5=?v`CLwW-CbhfblAr|V^@!ng0w z=g+WyP2(|zu98;dW-`mLqBgAODWUo9p9N}Xz$Uc{$&JT^K`C(xJm!Bl%0}Isi00TT z1x`98o0HmN5O}talGDyfDLKlUoBEL&>O?QdX^zo>NH~F@r@KzWOvk|F-M(u`6`Dn! zU8PEvD0r<_yGnYiaDH^Xf}>ps z)4kBi|G+No=zm~~I<4X~JlF?yi+llfkbzVKrE7rQN)U@@8UZH{V~PO&ytp|y2G zW*}`(^P3$ftys%LzCv{y+W#~Wr?y>5Jzs`N)UHw2VX~2~6G~ZX$Fo6whtmSPS;aSN zDl3WfPsQr1rNCCw&#M2{nu(W?^{%6p)15|7>Ln}7ZoHf4!s-6CgG<%?*^81Ub$*;` zm+IH)K-Mt#jF__uX5NtH&G1jKJ6%Z40F4;4JEs~d_4Mx$Hdu*ZW|ZaWQzb3R`Li;D z^iN}?j$x#YtD)ZAM$xqAR_b{~Qk0)NZC+mRu!OdlHK$-&ab$spEB)gh8_;js?>(g3 zRq{>-jnAm_sIg;Hi>GARvnCQuxb%BHd@oe1?+X2*ae znMcj3ZH49}+*6id5~CQ%f1_t!K_8f!?HED(VIgwjj}EDW>hzZcMeoeXSesjQ&7pw& z}?^QG--b^9P-tqXI8}iKDYbGPcTg&mr`(>uV8P8 z?_}tkgvQq2<1pR4ReV-jnnk*^cN%<$D80U9oUhEKm3^u{%^bysr1A?kBJo|7J|Y_x za#KjkTJP~ARIQdBgsr5jiwpL~kkBI+f6K|KN;4|LiQ3v)UQN}Wl-|>{m8lrqXEgnZ zfk}p*8Sxy;?G2<-LvH9fcnN`IXd;?SRPqQlmFV;gN;;Kv#hBXOv=!hK>F)$-I_9Px z{DRf7Enc5B$L38>}Sn4e?=0zU|1`$9`K!rJvePv=H7i07@l#?G9bZM}0MY9~-S&0R*o^$-WkC@E?mJSe>;Al&`UYt&BRDSiM|2s zK=#bTHVtOkT1;A3zs;qrIdeJPZmkv2vdwafZ8IB^KBqMeO`=~4P3hF#q_&j{B!t4H zRFjFDea)V4==xtZG*WgS%$~_fKRa!EF1HY>;jC3%mR<9f@l0!N#Q8QF&j3l$kwmp3 z>q0kfw=rl`!Q4?3Bs1B~azfgZv;CCchiVH!=T>xxHEE^(Y(L+m#C#EeUX&>}O}tzO zLG(Vd4I$03B*w593%Sx|YyX`ukm+4%tTmKAbJ9dYR&{{k3Cl%rIYqZ+ZO0(tV z8hYA9JNf?{fO|xv>5{K|erqye`(M&0q1rhyFNB2N2JscYknYPIw^A{vt6^7+k5AI~ z2m3=xKYc(1QJs6Bz4%*0h5G!QYHw|vrIKnQefQXG;>g;ch<1n+>X=cJb4j6IjGaP` zoE0XRzG!w~_pi+W_}9Lb7%5b}6nPQX8^WH#*^x!E)K zmGpfSFI~NQD*JwfG839t*tl92Q~#nT2QE&(7;JlR8$!-a-H>g-&2(u^QXll2lnf7{ zo46~TuIEde2)M8HP|xgG`)~XB$x|^Yt7-WOl^P#J;{%a}wFxSwD#@s4UvO)(#zmr( z_w|GQSgrJ2FGs{mnqKw)bE#$u;;(o!^WX3^-gqjj=cu)grBu;dF=E!3w_P|4X5Tw! zhcxwZHImly%fi7D!!Q(Q2k)Y+r4F1C}{|g*Vx3h|3=KE{* zBX34$I5IYzqg;_9y@k-+qCm;$moFtc5|aoX%!%J*ug@czn1;hDvstnF%x&e-4GHGb+6 zdcmKUH6{o^*jC>2ey{OPzh5yB0}%Lt;|%Jl+!TMq~&R5q%VE-^%iQjr5PPVhWXktlQ?^#-zpZbbkqB+igS>d zXb7~*4qzVp5sBJl^O3Sc!JNtb;RZM7Qwp-Z0zJbu)>L9Bg{D{3>NuQ922$R(ppRl0 z)JMt8pJ~uY*vO-CRQQ8~Rg)PRlr$HfdDdI2k2VBWwgr|O6?0P7%DlWxZCfYv<&`44 zoors;2y}v=%w9&iZHL(mayjM?RQNkx>Lu!8`g*()Z{DdhJqMq3X*LMI)~VTWarnZj zaQBxe>@G>jfpdoDXg}Yr^Z%j);&!|ViD_;^2GwY&eBYBAo5>N@=@O>Ot1AKl(>R(> zL<`UOUC3ttNQZs(&I2pipi$|q8b5kFvm}>pZ5<4$zCb0@Ce@V^Nm^AS!ETEFa!f7b zr5}O6U!zVk+na7aHz#e=yD~LQ92pI%lu#Av5U^QTNqtOl1kF46^2;jb_-JMNyprie zrrW)uP~GuFyHQs-sxWl~R0BEFV?WfU(F9Gqgq=*~6MgZMAfkTE|N z^(|(sGAg6O3pNx}F7Cv(+i}%o!*^5Z@ibN+Kj(cC1|nF;Wwz}Jn(&0 z`$q>fGNr0gRilkAJ+n)FHE+MzV-H%yYV4y@{J$C$yrmZ@3jT6~zdvHE@MFFvKwSnC zP~(u=Qgv%%0x+{dIx_UY^kr_h`mY}2CIqb!6}(w1YMUuIyQ@I`o;svePLy&o4a6D! zbw;{%PK0l=MT%$V@;-ZU!SuO#3nP5&jnAUZbSx~0@E1??#uAvrXWztPi8b?gP>Rde z5FmR_Y=+oT#^@t;nH*kg(~-p8d`6IG$NXugn!%VW*@v)a2317CkihmX3tT_luG6I$ zu}rCh!b3%ktzGv?L6q^7Jsaf4l(rdQ639_WiQB*8A`i_?agE!B!3dQd=gQcf?t5$A26%Xi*3}tnFc!< zeZJX7Z_bmd9qEm8O2&LEmMEQ$FtNw0Q_*5xhce$rHJ@+dS(^6F?T0hWphLgK#ze%5 z85_OmgqiPBx&6)5AH{IXcI&Fngi(~g`am5?ym3F`Tl$U59ra5Uf%BGHYx}3voI|h` zm==vPW|K^uK`w)PJO5$x)h?w>BAVoYLlA4tNo-rf`cg$49a1jXkN5xXjk9p`GB?q1 znQdk)Hr`XJVtr%g2z+SqZ>^nPXh5_URGImsbtVu!>ohM38k0V{V}%rq(d(c$Fomue zp>2IBvGg65;IxG5=&ygwqms-5YJCke zElk~q6*R_FN22O5R(v*|r3707sIu)z>^gCa#iBuE4Rw(Marx(mdC#R5PCfRaRCIOa9x&d=gU znJ1a=Ux&=xyAC|KeKXN55ZHOnT)EC`Wd*+&wE19r%XA9FdUN=P{KfE{gG)5;?Ytte zY(xtS^55KY_d0SMjeiv#it{s3C;D-{%*tXB$+RQ|%Jh*`fNC`fU{I`d?_OF*2^U!P zVjT(PHfePl%D(o7+2_+!&pF(#p=nijPnnx*Z_W4iYFd{~*}`zOEJ;kiU$95MPf|x4 zj?m-wYqiu?4+mYq0h(p;yKI+LJ__yEj!Q1V3J2<9`Ignoyri~r8MFi9l4v=FT=!Q; zR3bm_*l;Dn_O+7Vi9lrav$WGwf5gXfQQt+itDxmL$KDp&_2@y7*9jQ6MlGgl zKJ-=@m#T-v+q%PLI%iO4ayz|E#Hwa!e9obY^2b9$gn2lwRrOaNeX0dtaVF)J3HNOs z?so46THW?&W3?sX!doNN>Up9Zn^FcU`PYrtGxfSpZAtM_ePrTbeYn9vyd+m4i*rj^ zQw&WNEwk#13V>`Jb7^B?!?1x0w$=W?{6QBAYR9hq+hEkNuB=F&oj18mxFle!JBVT(waWv>Q{CZ&%G-tt zXAh|wwySAS?)(n;Exu>}+T8J2QPkamIp=xrrVE5AOAmzil&%c#KbRk7J;)_Ho$tr; ziy1WR(+znX_`pAa8~>U!nCg$Z1NY50QLu%}?oe)wT(nU(f;nvfpRU9f8XL* z#K9Il;Z1Gv(wnGGNa1U=1IpHTNb*K1hqT~mK-@}|6pY&5vdLa|QC)3zTm2v@!tP#o zxN`^>efTeX{E()sJLL4}F{!mdqGh_2OrCcdut$TjwK1Z2$6BEf|kTgKz)6!0jZ{3wNLLsI7xz$se%@oE3GftT9A2Mgqq$eAa~R1xxiyVfmH+* zU}$GNxvXxe-ED~hWs?o+RA>q0N(V@Q=cDH&>L#~Swn8({!h`p{~ zy-jZRN?n_TX+dHy}C6Id41cdLT6DGZ}(3{^{JFA8TP5TNjIDO}yqK zMLGWw1R|?}>$WN7zU8$^86sHd*ejggWu%C`!4zUrO0vZ|i$4!VYC_N;8NWaTX zFDRnaWT1PRv@9hz<r(XYR>qiwL_a1OC;wT!KloYS>jA;bE{$?(d-;WeU~(Pj2t z_dJ6TD7d@{hr2vx4;+Bx;vH91G)H(&63y>%{^+qS=Y=ZhB3|VyBI07CXcqjDZ{g&K zaH+-Hu(n3=lq*=RCyPaBi}796TgtU>E=jK!d(c4}E>xo{q}$?p zHK5TwZgF=2rE??SH)B{XyJ8Tql-75sUL_qozH7WQQ$AKqf`enH4|k`wp5QUH)SNhC2%J5+83z*W$YH2frU5F zmSRVUsBI@V8ON>-(7!&vz<*QWp6Z2B{qUG{^# zS*7=;Qi{U0;|NVDAB5%b81vc>%4+fAa(0OcGqg;xANeVsTd`9$%AK_{MY~?D z7Ic|G$YQWfY0&E?($&`p?X{Is{ z@!!0>&nkJE^xy7tVeXCev#dE1fRxbjbrU0AAG-H(RU-@i`ppsfciy5z41)!gw(G^E z4^}mWe90(wG0c(gA=7HNrFnakCl7E^4Bm$gzut@Q-lCPz)Wdw zW+1T+$g96hc;TD*>mFg?_AaUV5!b=_E3v2+gi_k(hi0}}MsyAg6OJSC5R*`rcjH@8 zNOYNEZh~q4qHbQi<=4ym%bv3T*tOy3C24eGkSHm4)VmFMmK+t~z)@Y>S+*kO@TRO? zhw!*GjDtQ*2c4Ki!}V`}`J$Vje+-9QT2y?a2B4$&R|E<2*AR#pdm%9Ewc zFAAD3k|-^sJ7MAO>QxI3iQ&EPV2(!hMg9>+o3KNg80!!L$8F)rf(e<>BXU#8n#D$w-tIdAO(rL1qIvTMu+)G|Gjv`&wc&p zSrfZIKH9fu3jXNl-o?LL-Ot3P%^-0m$H#q%z~Zl!pxK^ z(3Xq{gmTs|r4q6(Tdq|$5mIkpS)E?*`A~HFz{YYW*D}1K>-af;gMKu>C$nGJ6n41Q zRQ%x*PG(qRee(Q;+C42mDgEC3_c_1xYDwRNya~Orm>mfrkJo&CXqHMg>K7}NNiE_>^bC)=VsySKSd4f*X&scBz9 zHA!j#&YbaLl}P!rrslk`)$1zxK`hjG23UMjlvIHnIouh|rTc3cZURAw@>g0mh0B+w;PPw2!g3Z53MuL=14TfLg(N8I*tk^W5fL-(xIZ0!U@~@4cT4W zsqEKBmdb%?kN={B5QyabRqWa+vIdcuMk7qUcsV{L4I6=kxQI$F(hL@4Io}o8Ng9K- zEfP~~_p|BS;CHmCb{k*g3X69bR!=bl#TVPum0!Yye0jGvGQTman(;IJYKj~^UjCBV zov$FyIOHe-Z zX0%<)h4(E=4QUkAsItUuw|dFSyX>i9n}KzRzpR}aG2trLwx9ri-$-6%619pY)Kfg0 zj$K)7nxU4|DhL-vuI07kj&^ zQUQFxJ$hGlU~<4+Dm{xB(?)d%ht7fMljqklmI@BYd{D^q`LjLf$(w-mW#@oZ!&G`lBWF%iR}DPVjTTp2Byk`>-Mxk=Dle~ zGg-I|b=0F=T~b%oZG1y$&YiZE!u2VH_m=RAn-M) zA#1@?L1(x=OZwuv#dL}yuicly0-D;+IW=22sA^_Q_NO_W)&)qu88GdO9_c750gq^%-|%{^&~W{JzpE+DB7@UtBGqj{q*$+5~gm54oxQ zOUw(3^^LvfW4wpSum;+HXoB%KUw!k<_^W>yfAe>vufN{<`hWblum1a2Uu`^PxUm_N zV3Rqa(UbXX{$_OWesVg2Gy2Dw{=D(O{)tG9i<8ZF*JuBec9&;!?)mtT3^rRMa-c(l zZl)+t{?TfU&%gfaay&i$r?YqO$T#WlP-?=p=@wG*#x4f$x(Q!zekH55l5~v^(b{f} zWHG;wr~35r50(M~MD(pCgsAmo3BxEmex#K50QuJFAC9KC8~;3xHygC7y?4ZG-H!ft z^Xtv8H@c0{15F>Y2p*g97+|+?cyckHG5h>N9^YbA?>3&GxH-qM@n3-?hL{j$LMQQc zG9yqAvU^QW^=sjVGRZ{gr3~?&Nua%Dq%$>tJ2{_Rb{jjmAZ|fqr#B~{9p-d5aT*lD zWck;VBQ=S?xMGtxh}%bE$R{^sK$^_huJ;qNTA;Dz{A%4^OZMR}IMy*wKWP8XnZhMG z-=gob*#Dxre|G;X=9}{7f6;V5xBG?J?uT4VG%BEaP8O*vz=f^XA(&S}1t5dv+vzdy z@&FowV4Sn&XgALJ1)l?MJ}@)Jzv<4`cR4ypY&^Po!|f=6sUw5e0;tq_NX7w@dz3Q( zlJCQ=&I`a=3((n>%}gCflf~OX*&*@x({qh@J^gj^esbH5p1eaXu+>p?dB%Ge{I(06 z`E6{6T{&XJk%~EP2MCGphIGZ?8r`PSTW8kq!KCsYv-Wy$?Og4g^J1zkDr0_?K1jVzzc=l zj&?^zxs(^mb~>TT|3c(4{su*e#_+oRDuI+#e9OtRe1}r~ZLm=8JYUFVgqC{#Mqu!Z zOaX~M96g+$98KQ<-q&+=_tBM2y0Qt_fb|57+-!ia@f$UmJDDl7DvZ={NN0z#<-E1iPMIaorKJCWI`W+GAg{iRJQQw*r&Fk8~eVH;m^zA58s& zlcPD1ZXjywghFr_Np%wJ_*xLAnmrTfuc;rjyEhd4gy=oCQAA^*DInd)Y35%lS^4-D z23l`zWxZa9C`!8Ry{Dt^w;yajdki1&U=9?-MJs6bMzWOVO!d+B{^J+BkJ1PECvp8k zrdip#3vh&T3lt&ermoS?KY`Fm3M+aJpuxBphV;4JF!sFdC~8;UWKCtPyN8dS@D_0Q zaC*e0Hb(5-`3V^Z;UshjZNW@d_Q~iBHsIWm_x9{|dfKsf5a!A7cRX$PNPl~~Isr_y%<@fk$ytuZn4i}^(}n`Zm+xB`MDp<<7k-{XFW z3m*}Q>cDwCO#t>oGMWfDNJ(MPdpre6inenR7P_(723uGlaM+N&)C1I<6KDsU$NLFg zUCiTl98bjw@YE2}tCm=1&P;GF1xeb?qnZ-UAj?iawkkUAlZ(a5EawRIpq!(e2mNsW z>znk)Ic1x95-L{XJQzp`XV zuefLDJELoIPTiu;0Se(?B{K0G9vFj%1_E|ZVB))`2&kWPzKdPRCnwvwA=oaej3X1iT${qMH0oQjJ~{;lfl2f zBh%yE4=rFt7Xc+A+U$>C(n7)5y4!113;3!-l}HC>qQnPB($fWgAogeiesbyX2n2m- zn_WKpYu-XR{otA|&%E}h?q*y?!T6#w=ReU|+8#c%%ESdZfnb0?rP*+n4=dqEMtjbRMJBGR?gl>x?H}{QO*8P5YUwoC{y*#K?y;b=~v+-$pKD+;{%&2Xr&1 zN!^^((!#>J^qA)Z{CMCJN(*S&TX>x#Xm|31#>TKwFm~@J;B%+o2Jxw2c_64`UnfHU8!ckC4~cl5W*OhlG-HQ z@XuQ?+1IG+IExg)LHnspA{g%E#`HjIt08HK8**k~S$|0|KC5CCSyS<6VV{<4PkBRK z$MJxJ#1P=y%npIvg8^7PnVpB@C(oZgdUCMS5u>^D>~Qvz^UJ<|**SD?Q~C2C zia`W9D_m87G-`<9V_1dCF4=mgXx_`*;HY?$l@ ztL#?}rOcrI>o<6J^m=&xMv2~fpDqM-M%0{NwR!okuDg|3tuq_6Le~a$V}Jk&_v0B> zn%vBti;r9JWY~vQIzQgLdAI4w?SmGY(uCCx>f@h`*cS&Yj~KnH z;K;-#FTLZ*^=oVo(J){O(e*W1)P6l)_Ib%+CsC8aa>&puJDQ+@4USKq%}*=ln1+|e{hErBo> zLIjF4qFzm3fLqOt_zm>WmseqDwQYTYWYg(K-@r4Jsgw2esw+kBQVlHS%3#D@!>F5v zxMm;{(;(=l3~9j=2XDSgcj1^kR2RDh%mQTebf7~X_Cgo?=( zJ7gi+cE^0kItFtyIaGX!mMFFyGqDM_tms#np7W?y4RgDiNXa%S_(xAU3qnJJO%vu~;t zAsk2c6R-CGle_FdD{JkWS2DFrm14W7fS4!HHnctV4OzF-4LE;PFF~1#)y5{=Oirv) z*cWXEfdr*8+~^*>#~qQSz*&zD;V9=YNa!Uk=z0gJw}9(mxkq95F>DahMi5=Va_D4; z+#YEX3;5YeQ16_aST`d)Iq>5${a2D@($^3$dwMfIl^d`rxt9{? zie?KGO5X{;oe(=1@iNwBp=8Ct_)S!gtt@v}>`K^`^V`-U70*7?nN!9^Q{d(td;!t< z;x_hp7Hw3mX^Qp$h{V&7ce~<4)&Kds8LXAH0JD%o0WE17(;e`LdYE|yzmhgddOwEk zgBxa~Af#l46!x_50uBoT7 zWSI~(%p}<_T|_cBO(DBRPH4JH1Y&Lnd+O#Wp z3<4n>*F8KqBrW6K^U+KH?T5(7Vn?*%1pKpasrfu%FRvXf4gq!O4w;tujfBv3WKv1u zn!aK_KucztCAEVP51aJl*!=tqDu`o)@;^*hP4%gy9{HFM5@|Jzsx!LrmGKCwY3s^zyZM8<2^US zE_ikR?)|7z4&S2KwHVLZ9TT}|b(hdoUzxnIyL}U7@-#oHNwG~ zZm$`%b+b);bn&BVetL?ekEm0KQt$pn!<$95(tG50`BJvpW2xdnqcEq@jy-d6+uk#B zM00{owOI23(X8vhMuG!VL5Oq2xPjv=B27_J#Gyy;8txr|P(^D@)gqAe>+}i!ntCt- zw;FQT&lE2*tPArCqHk=`NHg+i0YRIAEXZc%qhkCNo8cIbnJ<2L;U1IAzBu_6c!qci zmR#0I@1f`-PFA>$-3Y(q$3fcOX)&k7s@S!v`^Ya4c*-}#7Wf@N6-$|Gp3 zc>nMlV_nMnk~8p{y)rjzMujk*Y2NV*hx5?_-gdQ7$FgxX7^hY*0S(KA@J!|i7exBpcBJg6GS@%ZNYwLKi@{&)HJ>7v^6@%g)>G^d*4-c754 z+oT$67O1HmV84TwL^YEZ&0$cNv@`#UCG@C#XN$RXI46W8QCkEl+7~Oq^AEBSk99Ic zegZw1F&Dn+PEIVO`{Y@?DmlGJ8#~jVA)Wh$=fQZ8IUZbzS`G?>5FE$#6!UDwTLA@+* z^83I0?e~B8!3Hk%#f=Rt9!hfaNl0$aX8QzHKF7zBQpIdq#%TT9#W`;c0jY#RltsjK zamSySZZlumyt&qeCK}UWW0hTqDi&<)9hAZ*~W*d^Ve_sUonR`t*Ov4yv{(AL#V)1j<>ssRl&I z`LQ(`l!h4EgQHrha_7y4)Z%tu20b`Ic}*zC75Gs%3jPm{urR3ai(SZ{oDqRWj5(0q zOei5>DtPM|@5^%;DCi!!J3^7!(&og?u5h$iE1oAVd`Fo{ij2`OdCg?s!{bZr2alWL z8*CPoqDG2}!9+CG5q&cQ-q|S>UIT zA0g8WkJ5-u^_ErpY|lIxSZT@_mI= z@}}F7(^_-8y0-ZT+O}04c_LnUSdg!$QDnu=8R7{3&2?XT057E+j3&MDfiAieoxW7& z;b`DPbUdB)!;ZWP_g`!u+*6Jq_xX!|P#xHzT_=pT+-!IUDryA(2m$hjIy9WkOC#<>VCjW{&)#Iy#fI_l7I|is?atTH-b7sb!Np7rsYj$>l1bt; z#p#zTP>4oMzHIE(X|FS3I~mCp z1qSBL3kR+=Aj2`D3>e`tj5=Q#dR@iTKV0L@>|B;&9Phw$qs1vS?d$i*N8xOyU!fF< zndOYE2IjSq=DLu2k0svb94j9Y^eB4g;F}?Z^PCq3Cj25eFo<8wyPFjjAh{Y3hL_+{ zW|Kz8QAEJ@c&rZdu{2mnfXc#h>d40U`q)B9;M{U2F5un=u3-0hA5R;O3+mi49{tC0C~o# zSr2++4!ov-@|XcL6_(%uZv>3DGK+JYB<1*sx_-soD6Z;H)^}Z?9DV&w6U888hkDz% zM8I6~sl_(r<_}zS5s-q#b3xt)6_XcEC%|AbS>6o=?oDBwW?23?nN&W@FRE>k7b(l3 z2J)+IbnbSncnt%)-Q)cid*51c(@T$TdZpz#(T*!>v^xarmYi$hNzXUZ7O`QTNNy&nHLi?+$%C4*}qf2R!@!5ghfdaKHPHHhbwB#DPYpv|4J}qpuR5 z1Sq;^pKN@Z51irU@zJ~AmaBS7$BIoUohN+Sx&?wefP($-wfrPtttvC2Ah#HjH(SaQ zeiGpnUj9N_3mx`)APgkMk=oHMmi1f6L$9xeexBf}G2?_rN{mt>OJt|t)>+(+cJxxF zqOW!6QAsEglm7qx-~T7JNcD~4$*&&_ONW=-Fsw&B4elNHodCW!iP=dD`eX30y65bt zrzeE)psBk4$QUZG8=&SqYp?y){0JR@p{uZp8pmiXPDnc5MG@lDK_wXAVEUZW*~APb z+}z!$iU)DKZfutwy|0ugWy+`~G6rB-GS`QuIA*Kd3gM8kpQZ@85VQq5!E;B?NcH0na#`a>?{7!zDFM(Eo;L^p{r3Wk)23#qg+8;50DKxFxMp+_T!cs zTHN_KcLHH22C74pc^T}LzkCD?oiJgnplJ|NbU3On^oQ1%>nBwxlmiuNGIQS3o|_!X zFvf(Y5i1Jgx(ut@jJQ!yddXfQ_uy;`_sgM%r6pJemel1(?O$~|%x^d%rFWWJ$sBEv2)T4x!k=_If=!Z`+=G?2|Y=Y7t@ZbSRcU>)*Ph<#ePW;=I6@{PQW6*99O=AcU#X>#j84FwN zyP}Gz^c!ObvX^ehXwQW8+xZHqbWNz#nzBO1iX&nf!m=j!7f=b*FTZa)wIwZ3rzeg3 zTw$QwX1yRb)9vLf=*t$-M*8(Cc<~SZJj^6Cp$P4UB@5{K0YmjUj`6$G@j0Z9jgu|v z+ntAUlH#8S+xsuL7-;u+SO-?bLgMJ6I1YfS`~a*wC%UCjAlH;?=fmry|J9bWSfbBX z^Z>gf)~Kct48ARyV>g4Ub4IDa?FtvsG#Pz)AD=%c%Y`dyTr%^a_3AeP0qqFE*qX9O zX#IN9eg9F_Y?Z3Hw7(_h#Wmdue^{Q3N`2`*rWT^5DZDTgXp`g%}T zY6@i{!FlvwA}K!)8sg{Tm}k-Si$m)rK1tzEV~Umd9R?Z`7-Gz{izr~_Ou_HWT-2?{ zv?A9EyN%~ZVz|~!7(F%aqSf6rd~dT;zwSe`V-8gA4g0R`t zYUaPH+N$ptICwacNDV`yXG!5rh6iY+wlCIqZ`6#biQ2v`4C06x=22o|py~K)t9uHY z4)?azJz({8FGB#2!tonN6;JG?NcAhEPnNuCR&I=Cd>!5Sn?PtJK%8Tojg)crSKVbp zi>$avT;b!~uO7EQaA>m~!)oOBWiiZ{YhkvT`;m0xu6u#r;Ms@8%;kOyagH+>uU|jqljXgMk4|XC-@8Ocn9k; zcMPZB4dw#xUT#}J)ul{cv5~3j@tV2vbrpA!In--0z$$9Xw3_yrB?ao6Tv|NW?)JYt z-{0Kbd1gPK>_6{zpTBr^INsYn{LwNShdVp{y4z8iZttkL8`6Vg4OFlP!erBnU~Fl! z1jAyX0joX?IM|_$qD>%p06@50v7_NKVmoAbKOow3335K%A{-pkoy43KjaKN2nrgd* zB4=>TP{;C-)kN4V&DIpj83)xk63}a$92Y{1$nL}iT1hX2jf*MRa?wE87ju>zL;G3t z*!X+NIuD1FFtKt-yRI=3rgYdgOWxD0_OmX$|GxM^& z<_#jept$>Fh2&WUrL&Tz-GY-%TX#oRKG5FQ=-G?i@AqEZ?S7hHNVT>bZeh%W7_9uO z24M9+Tj0(co`O1&3a3$C`%!>H&G1JafD`w6p$^`E9z|ppUAenj(kEwsO;v9@7+x|q z0wfG0CTfBoEkI%P+ho(^D`zLGu;Y6jLqG9p?n zQ(jvgiz^1OK&CTvHD;7C!yjR4C)@(`YN;}$JM;AqU{*-+Hai_xiMyLLzfq8DGz6y7 z)tMYqt~1u^Olp|-GED`ypnDc~Q7Vhm+OPqTs*8`A6oY`T=wzl8#y*BEw6=|~2EY8x zjD_FAK*iTW$?e^dPi_;hFaBs4rWvG$O1r|JLGPh#@apmSEAJndUFiK9O+@xG<1LWTze`52s1Zm)Y{m*=X z&@dNGm0Q2d`6e`aP)k!UJd7d&pkSb&DW$vK`V2l~87ncvVoQ3M^v_@1{J9xrS#yW3 zwaqG;7K%hcMP`tG1Jg*=Rre8A#b?b_npyX|ViRLwi8Y&61B)rv{;j3FacErEPUbrcJEvYF|OS%$%@hBG$gPYI<_QmMW6AA8nvJ zt2hC`Uc`!$q`^EC_~>U_1Ss1LiU{VWdNNL+o$#BD!aAbMVNzRF9+GbFgk!P*G(%}7 z&`N9qwZ-yttbL0b0#Q8(970m^NV&?|x`+_Xf|dy<@D0)cryixLU5`PI(;o@j*txEV zV5varCzGJobZ@{KdjRimezmw}m_slfAcE@UtXn(0vaF_kVaiEtLKs$FInY<*gQ%lpYI6_u+QqIY=$lw<1u$+7L$eXuJ7cdI2Ra@H}~vjz4>Rbr0K9_1bJlPLS} z*f`J&NKr9#S)v#tcP7WFI|H0n^Iz|j>|7}!V1EVR2YYLCw<*V@`ZbC|--vs?@ISN; za0A|RSw|)=rcEavjXEaRrNy%a7-csx!va+$SOKF3uh}cUFX==E=?hDW>h~t^!N_(l z4yOzt$C=p#5u>-i3h&2O)pJU0fnoYB-;CmjJ_h0OYe9n3w zxVZ?sE?j`lE_fGp6Cs1o78(|>5AQdz9KH~b@$gOP-zZ5Nu31x>jtk`nYnqgubtO{n zg1907!Upn+j`;<<7C$~Wn|Pc_Kv%SO`GR)r$jwwX;cFBOrgVVI{8h+5(^PS4KeevLe3YzKqgISofRr zKc6EJTh7eUOI?mHZeHO>*P5GMhsnk6DlH%)@8NC_(yiIoV=x}*GW{$1A zttX2Z%2D>-EoLQcOTdHVE>hsTJaxzY=(a}VuSehJQyKT*>7cpJ^ryKAomW7X@X5hnFMZ*MVh9-xwZz2suol z%e%O8x@#+oqSvgH2Wnt8V!a2Co@^^gO>BmjWm@LDowVWI-t(v1%751F?e9F_-#J9| z-;wc=98}`((LNqeaiY3?vzQ(PXn;^CN*==uYA)H5S^;f#j%GG>BM*nkMLyIzNVj#8 z7FWOIez9~!@qoI?(xSS|g!el&RjSEQN%xBqswzsNt6EQ- zneYrJ!98rWVNo-8CBV}STRCZQB7QDQ@Zg&1$L2eXEH1PORF9g#j4YpoD+UH39%g44;_S#6cUgky2&DbJuf-3+LA-k5#L_?{` zGC@Ti-NJZH4fn6K53E=a@2;)l6R0T*O~LH0s!nC>f(3Egf(^p3Jexxpy8X?uyR_*y z<2btQr`rdl9zzw*fA*A_c6_P1G0p0kLd;c<65+xhNhis%Rd-&`PJoZ_eOP&H{5W?l z&VsN6LW(0#uk7t>kGSc-Z1w}(%%hYr6bnJ@-ngEN&-6#uvgGXS=AWgB}Z zcsP*-lr$3&>6e;ZXMe^#ffegx@g;oS3)l6`sY!j=z!a#;Co3rOgyn!<^9`Twnl;TI zawEl%J1w+^>0U>ElI)eiX4^yVjS70Te190b)G$?8osyZXe2K*&p`bIEQy8n@D(!`D z?+*g&i5;&`+bnSWf4$$;d2Fwhf~tTp3Yma=AYe$*?-{4OJYwEa7dRv z%uVD~+=rlqGT8f1(U_EK5m&-hc`tcP>EuH4im|!P5gKDEl=w;ry|1VJ7?a@^DSN$U z#1~@)qgB9-l_?2ek>PSI@|e!Z?&s4hB-UtXWkZF>UD^;5s=$Y>+cGSoiLeaS;!;;U znDapemHPZaLkwU@)7m)ifCo77XzJFSvC^clqQRv$oPQsf}e7<4_+H*G-hN7$-Mc?W>=Qc09`c- zLM-a%&kZNqcUbA-UwUqz+;SaI!@C7!`L@=(psA(N_f|(%-Hs^92iuQ#x`XFW z9vyb%>?Nh`5ApBb^N#l;71YZ=KRtS)e-2b@>7$Yd$LK@87xSC@9C-YGOaup8IrD*F z@lttna(?xtLb4iXt|p!-?sz8oxfjp0N(hytlHzB89KO5;?;%86t>K>dg}|DkQm@|X zVZ6Gzrt1RuJDJv|Af*N$Spf=07hr2{r8|x>ytA}2@O+RiqZ#`EmLk!gDVH5i4qhr* zo`HeK$hPY7tKk@ah?YX(?#(r>!>7pj^*x+0^>i(&7Q{?roaNmWvca^ppd-D{1vriT zp;S*b6Chp?lrMwrcJ${8GXxXlA?27y$}`)KS!D2k46n_gf8nJml+0A(qaujAnk}|! z2f|T#_go*g&@O@Hs?ysTgz#(25sqCdN%}!OJgcUEAQk*fr}PRnr%&So7Dh zfo`Du=6kN84uV#tDfg^v&4)%DV?D-yh`1AP%mY_Q&+cnqyKCyNtLFO0FsL@eq1Ja6 zBhXip|2n|126hMXc;c#14iGV>`OER7DUqA6%`^*uOAW-Dnp#YzKtt`{QOUBB7%L2C z%R4Icw{}=n*-euLgvDe+uxe`gh{YaP`&@>qw72e}-}Hb|<;{}Mk$%sz;vW4z0zSkmyq$Hfm^NW_Vz9ZO!kWdSpb1wQA+@6J3m-M*b4&s$`{?#D->m$U4fb+e%Zm;g>5=-E>L#Ulo~*mZuE+=(C%9TN}5XO^Yk2j-Y_@x ztSP4lWIhBV5DSVw+1m5vJtR_e@_dtm{{!)J`>s7LQsmmqRIUO=pYplss}PngwMPgh zxEV9m&|I>bgw&{|w@9lc4_~fpY-19#kuc>?aF@geQt^4V5GyIVpMm&Y$93WQVR5A~ zjkbG4qAxk67pw#E_hIPZ3x}^K_kuq-<^^jP!btNFe*S)wL+HDcN6Cvxel6}5W*pzi zY}2Bl{O0t)iQ9OrK>cnPZD$D+k~~=!Ag1?6S{m1zV>*}*RWJwhqtXr$Yc7`x`&Ves ze!;2rO$AJAr48Fp54S5izd9a*7itxn22-X>2sr3Db7pI)IyNI- z-K9^hKlMdG1UsV(V(JmYJApJzAr{Nj3KNi2)8sE(PLc8Bgrb3!?acCR9%(m*QvqO+#*Sj$YW?4zw5TK zYYsCLC}8YbrPlv8y;SHTAPk5!#_&o$H#X28xoX--*C1cJC~FpXtHcBi%ITY zm7YO`?=f)=7vKLJ05Kk)>E+MZpA}U|n)JasLS7%}CSE1&j}<;vrm9pj2RUFGQxR{N znX#GE#RrxW;Dh@kJQIG)XqPPH?XdXT=Bu)WP~Za_7m7QG?XOKRgnnJGlmQ7!nafMbHur8?(g0Mh&N$C~3ak{TbUzgUZgP_iV zjLIR(ZEp+R=3{Fj$RIWzXOKm=iSsjT7fw|G1_)cP-wfs^Hnq`Q+aI)VQcqEed z&Yuf8AgrB3zK+B~a%TbpjtP4uI@J9~n5J9+J*BipamO{o`l?@FbsStYXB|ul7dDz) zNZ*IUsc8|%yjepBvQ>0al81Rk@cP`}hw|&p^h2)m@)TD5uZD6Lg4bAxno;f96lLau zTMzqDTZ#c_S%Dfnk;1VMW-_Hj7V{?tC{DV`77uy6_0uA~uks;kM~re4y-XezHU?_SV!Vw|%-SwQz68VhZ$(y4Y(knT9mAcogz; z{EmwD%gOC){dRG3Z}i*o+4yf>-e;>`-5dSeeZc?TNIzrkHILfot({Yn+89{>y!QSG z!l$-<0KKtf@9p_IqW7FNjy1rD3p(u=;E5*2rR6TuhQU&T%c+>DcQE0O$DQ>tgSn#F zZp8uZ@AL>uWzJG;Skz(9+;8Q0YVox*Ci^QxM)nKE8B$aLKwP-H5t^^k-ukOpDKiF7-^qW4?2!^2(Rc;(F^ z+1h*TZ+1bsy9HECL(rs3Y@k5K@qWeOT!!Ta{pF#p-l+@n`<<<;oXVZWR^?<`U?@ssCD2+Qt(v(o$2snTFk>xQ#H($W(kpdD6%B%G;_gnTdGw? zhR1;S)$)`|#T;1&E4(g^St+bRd!j|M&YGZZS650rPGVXr_f(h3 zzng_X{CjSqZNK*>VbUjG+~D_^1?(QaxK-DZAZP4=3hibn?GL+&N=P~q*rzue-5mp~iAx8n5e2 zVB31Yta5)fKj%r;wR;Rg@Ej+TOim~zJrQH$Q_}yAjq#Y=o-B@-EvsAiM>j-3k^aN` zhCd20p}iv2(xJOu-i~A=Cjq^fEnvIg+Z8)wO$D+MYN>s3G}s>&<9X%OBsIJv$%{|~ zLMAF3NFDi+dw+nknzDwIaK^OX(()5fCxy{qUYiaW%qp=nMH%HtCw&6f=LUQ*~=M;6j? zu6>p$zp4K}ESzV5jCQ7}Cmm4^*+`F)~g4pB9+ntBQ3Cnzs+7%s&X(qIvv1(m`-u_69 zY&$^(U%itvgsRO^l1fV)^zPR&dA5iFOy-8}?LmMm9(S}Phl6RT>)vMn<%ig{IJJnD zMU7?amdGOM<$|Yk`8~EXiL`>@PbI;z&bR0^7VxEQ(N6IpK`sj306l)1@^QLEVGRi8 z7FT`_Y92anNr5$qcLJXx2L+O3!-Zv9A zMRyCvE3%?q{j070wX7*tj89r*}8AVaqsHsXQO!k8|MOq_k_uX@NMDY@v zs!X}WK{ZL$nijBhgGO;p$X2?dN#WBEZEXlbssGl=g#(K6q{pg#2~+-(;TH6W5#fF^XaTao};S^EH>2tpmA6F2J-OSu1Xa@bOzu6Nq@?kMI`VcC;x4 zb-W_2>(I>RS6#ZTYjm=?>46K{lrqbvn{OjDgE-&OT!W9PqY1t6w=kD>mCyfC&2W}m ze|7D`MDNP7HDxURGF)t5nvV9>2!szmoX&e>HfVhO@e!+Hcw8@l?JI%_;oKm_1t|ADty(ZLfwP@t_ox9UMfmF zZ1Rm$rcLOLoaR|`MoN>Rh*1G&6L=^{ZGm-?mi>M&$*xgb+c)f?xmh_%_mX=YGji2= zZbeUd-&Wgg`1uu;&BK6g=^czY4hBJnuoCLg9n7w$QgK|JzyFhQaUKs!<`cJ9c)+X@ zSOPaERXPqes9rS3Do`~Uwvi%seruhxqhZ8?-~G#U6H#gtM|V5K*~#rzcRD%8 zLFD}SwK*ZITuGq|K06bFGimkm?ezGfv};Db)6N(>V_iY}GJyej=Uo7aN2>5M7|6nX zb+^~^lP+0aGf0%bu0h7PoiT*|Fq5oW, 2017-2022. +# Kukuh Syafaat , 2017-2023. # msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" -"PO-Revision-Date: 2022-08-24 11:19+0700\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2023-04-29 13:15+0700\n" "Last-Translator: Kukuh Syafaat \n" "Language-Team: Indonesian \n" "Language: id\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 3.1.1\n" +"X-Generator: Poedit 3.2.2\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Ekspor runtime alih-alih aplikasi" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Arsitektur tujuan bundel" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARSITEKTUR" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Url untuk repo" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Url untuk berkas flatpakrepo runtime" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Tambah kunci GPG dari BERKAS (- untuk stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "BERKAS" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "ID kunci GPG untuk menandatangani citra OCI" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "ID KUNCI" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "ID KUNCI" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "Homedir GPG untuk digunakan saat mencari ring kunci" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "HOMEDIR" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "Komit OSTree untuk membuat bundel delta dari" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "KOMIT" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Ekspor citra oci alih-alih paket flatpak" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -122,58 +122,58 @@ msgstr "" "LOKASI NAMABERKAS NAMA [CABANG] - Buat bundel berkas tunggal dari repositori " "lokal" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "LOKASI, NAMABERKAS dan NAMA harus ditentukan" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Terlalu banyak argumen" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "'%s' bukan repositori yang valid" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "'%s' bukan repositori yang valid: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "'%s' bukan nama yang valid: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "'%s' bukan nama cabang yang valid: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -208,7 +208,7 @@ msgstr "DIR" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Di mana mencari direktori sdk tersuai (bawaan ke 'usr')" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Gunakan berkas alternatif untuk metadata" @@ -228,104 +228,105 @@ msgstr "Catat log pemanggilan bus sesi" msgid "Log system bus calls" msgstr "Catat log pemanggilan bus sistem" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "DIREKTORI [PERINTAH [ARGUMEN...]] - Bangun di direktori" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "DIREKTORI harus ditentukan" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "Direktori bangun %s tidak diinisialisasi, gunakan flatpak build-init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "metadata tidak valid, bukan aplikasi atau runtime" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "Tidak ada titik ekstensi %s yang cocok pada %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Kehilangan '=' pada opsi kait bind '%s'" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Tidak dapat memulai aplikasi" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Direktori repo sumber" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "SRC-REPO" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Ref repo sumber" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "SRC-REF" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Subjek satu baris" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "SUBJEK" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Deskripsi lengkap" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "TUBUH" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Mutakhirkan cabang appstream" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Mutakhirkan cabang appstream" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Jangan mutakhirkan ringkasan" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "ID kunci GPG untuk menandatangani komit dengan" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "Tandai bangun sebagai akhir masa pakai" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "ALASAN" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -333,368 +334,373 @@ msgstr "" "Tandai ref yang cocok dengan awalan IDLAMA sebagai akhir masa pakainya, " "untuk diganti dengan IDBARU yang diberikan" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "IDLAMA=IDBARU" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "Setel jenis token yang diperlukan untuk memasang komit ini" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "VAL" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "Timpa cap waktu komit (SEKARANG untuk waktu sekarang)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "TIMESTAMP" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "Jangan hasilkan indeks ringkasan" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" "DST-REPO [DST-REF...] - Buat komit baru berdasarkan komit yang sudah ada" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "DST-REPO harus ditentukan" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "Jika --src-repo tidak ditentukan, tepatnya satu tujuan harus ditentukan" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "Jika --src-ref ditentukan, salah satu tujuan ref harus ditentukan" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "Salah satu --src-repo atau --src-ref harus ditentukan" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" "Format argumen penggunaan tidak valid --end-of-life-rebase=IDLAMA=IDBARU" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "Nama %s tidak valid dalam --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "Tidak dapat mengurai '%s'" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "Tidak dapat melakukan komit dari komit sumber parsial" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: tidak ada perubahan\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Arsitektur tujuan ekspor (mesti kompatibel dengan host)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Runtime komit (/usr), bukan /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Gunakan direktori alternatif untuk berkas" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "SUBDIR" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Berkas untuk dikecualikan" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "POLA" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Sertakan berkas yang dikecualikan" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "" "Tandai bangun sebagai akhir masa pakai, harus diganti dengan ID yang " "diberikan" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Timpa timestamp dari komit" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "ID Koleksi" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "PERINGATAN: Galat menjalankan desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "PERINGATAN: Galat membaca dari desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "PERINGATAN: Gagal memvalidasi berkas destop %s: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "PERINGATAN: Tidak dapat menemukan kunci Exec di %s: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "PERINGATAN: Biner tidak ditemukan untuk baris Exec di %s: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "PERINGATAN: Ikon tidak cocok dengan id aplikasi di %s: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" "PERINGATAN: Ikon direferensikan dalam berkas destop tapi tidak diekspor: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Jenis uri %s tidak valid, hanya http/https yang didukung" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "Tidak dapat menemukan basename di %s, tentukan nama secara eksplisit" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "Garis miring tidak diperbolehkan pada nama data ekstra" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Format tidak valid untuk checksum sha256: '%s'" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Data ekstra berukuran nol tidak didukung" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "LOKASI DIREKTORI [CABANG] - Buat repositori dari direktori bangun" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "LOKASI dan DIREKTORI harus ditentukan" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "'%s' bukan ID koleksi yang valid: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Tidak ada nama yang ditentukan dalam metadata" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Komit: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Jumlah Metadata: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Metadata Tertulis: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Total Isi: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Konten Tertulis: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Byte Konten Tertulis:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Perintah yang akan diatur" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "PERINTAH" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Versi Flatpak yang dibutuhkan" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "MAYOR.MINOR.MIKRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Jangan memproses ekspor" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Info data ekstra" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Menambahkan info titik ekstensi" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NAMA=VARIABEL[=NILAI]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Hapus info titik ekstensi" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NAMA" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Atur prioritas ekstensi (hanya untuk ekstensi)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "NILAI" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Ubah SDK yang digunakan untuk aplikasi" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Ubah runtime yang digunakan untuk aplikasi" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "RUNTIME" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Atur pilihan metadata generik" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GRUP=KUNCI[=NILAI]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Jangan mewarisi izin dari runtime" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "Tidak mengekspor %s, salah ekstensi\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "Tidak mengekspor %s, nama berkas ekspor yang tidak diizinkan\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "Mengekspor %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Lebih dari satu yang bisa dieksekusi ditemukan\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "Menggunakan %s sebagai perintah\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Tidak ditemukan yang bisa dieksekusi\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Argumen --require-version tidak valid: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "Terlalu sedikit elemen dalam argumen --extra-data %s" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -703,7 +709,7 @@ msgstr "" "Terlalu sedikit elemen dalam argumen --metadata %s, format seharusnya " "GRUP=KUNCI[=NILAI]]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -713,62 +719,63 @@ msgstr "" "Terlalu sedikit elemen dalam argumen --ekstensi %s, format seharusnya " "NAMA=VAR[=NILAI]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "Nama ekstensi tidak valid %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "DIREKTORI - Finalisasi direktori bangun" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Direktori bangun %s tidak diinisialisasi" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Direktori bangun %s sudah diselesaikan" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Harap tinjau berkas yang diekspor dan metadata\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Timpa ref yang digunakan untuk bundel yang diimpor" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REF" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Impor citra oci, bukan bundel flatpak" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Ref '%s' tidak ditemukan di registri" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "Beberapa gambar pada registry, tentukan ref dengan --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "Mengimpor %s (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "LOKASI NAMABERKAS - Impor bundel berkas ke repositori lokal" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "LOKASI dan NAMABERKAS harus ditentukan" @@ -882,88 +889,88 @@ msgstr "'%s' bukan nama aplikasi yang valid: %s" msgid "Build directory %s already initialized" msgstr "Direktori bangun %s sudah diinisialisasi" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Arsitektur tujuan pemasangan" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Cari runtime dengan nama yang ditentukan" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "LOKASI [ID [CABANG]] - Menandatangani sebuah aplikasi atau runtime" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "LOKASI harus ditentukan" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Tidak ada id kunci gpg yang ditentukan" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Arahkan ulang repo ini ke URL baru" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Nama yang bagus untuk digunakan pada repositori ini" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "JUDUL" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "Komentar baris-tunggal untuk repositori ini" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "KOMENTAR" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "Deskripsi paragraf lengkap untuk repositori ini" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "DESKRIPSI" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "URL untuk situs web untuk repositori ini" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "URL untuk ikon untuk repositori ini" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Cabang bawaan yang akan digunakan untuk repositori ini" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "CABANG" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "ID-KOLEKSI" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" @@ -971,122 +978,125 @@ msgstr "" "Deploy ID koleksi secara permanen ke konfigurasi remote klien, hanya untuk " "dukungan sideload" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "Deploy ID koleksi secara permanen ke konfigurasi klien remote" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Nama autentikator untuk repositori ini" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "Pasang otomatis autentikator untuk repositori ini" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "Jangan pasang otomatis autentikator untuk repositori ini" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Opsi autentikator" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "KEY=VALUE" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Impor kunci publik GPG bawaan baru dari BERKAS" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "ID Kunci GPG untuk menandatangani ringkasan" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Hasilkan berkas delta" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Jangan mutakhirkan cabang appstream" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "Tugas paralel maksimal saat membuat delta (standar: NUMCPU)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "NOMOR-TUGAS" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "Jangan membuat delta yang sesuai dengan ref" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Pangkas objek yang tidak terpakai" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "Pangkas tetapi jangan benar-benar membuang apa pun" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" "Hanya melintasi induk KEDALAMAN untuk setiap komit (bawaan: -1 = tak " "terbatas)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "KEDALAMAN" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "" "Menghasilkan delta: %s (%.10s)\n" "\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Menghasilkan delta: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Gagal menghasilkan delta %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Gagal menghasilkan delta %s (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "LOKASI - Mutakhirkan metadata repositori" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Memutakhirkan cabang appstream\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Memutakhirkan ringkasan\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Total objek: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Tidak ada objek yang tidak terjangkau\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "%u objek dihapus, %s dibebaskan\n" @@ -1159,25 +1169,25 @@ msgstr "" msgid "Must specify one of --list, --get, --set or --unset" msgstr "Harus menentukan salah satu dari --list, --get, --set atau --unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Cari aplikasi dengan nama yang ditentukan" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Arsitektur yang disalin" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "DEST" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "Izinkan komit parsial dalam repo yang dibuat" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " @@ -1186,12 +1196,12 @@ msgstr "" "Peringatan: Ref terkait '%s' terpasang sebagian. Gunakan --allow-partial " "untuk menekan pesan ini.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "Peringatan: Menghilangkan ref terkait '%s' karena tidak dipasang.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1200,13 +1210,13 @@ msgstr "" "Peringatan: Menghilangkan ref terkait '%s' karena remote ‘%s’ tidak memiliki " "koleksi kumpulan ID.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" "Peringatan: Menghilangkan ref terkait '%s' karena ini adalah extra-data.\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1215,34 +1225,34 @@ msgstr "" "Remote ‘%s’ tidak memiliki koleksi kumpulan ID, yang diperlukan untuk " "distribusi P2P ‘%s’." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" "Peringatan: Menghilangkan ref '%s' (runtime dari ‘%s’) karena ini adalah " "extra-data.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "MOUNT-PATH [REF...] - Menyalin aplikasi atau runtime ke media lepasan" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "MOUNT-PATH dan REF harus ditentukan" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" "Ref ‘%s’ ditemukan pada beberapa pemasangan: %s. Anda harus menentukan satu." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" "Ref harus semuanya berada pada pemasangan yang sama (ditemukan di %s dan %s)." -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " @@ -1251,19 +1261,19 @@ msgstr "" "Peringatan: Ref '%s' terpasang sebagian. Gunakan --allow-partial untuk " "menekan pesan ini.\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" "Ref '%s' yang dipasang adalah extra-data, dan tidak dapat didistribusikan " "secara luring" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "Peringatan: Tidak dapat memutakhirkan metadata repo untuk '%s': %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1271,7 +1281,7 @@ msgstr "" "arsitektur ‘%s’:%s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1280,7 +1290,7 @@ msgstr "" "arsitektur ‘%s’: %s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1354,19 +1364,20 @@ msgstr "BERKAS - Dapatkan informasi tentang berkas yang diekspor" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Tidak diekspor\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Informasi apa untuk ditampilkan" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "RUAS,…" @@ -1385,7 +1396,7 @@ msgid "Show the document path" msgstr "Tampilkan path dokumen" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Asal" @@ -1399,7 +1410,7 @@ msgid "Show applications with permission" msgstr "Tampilkan aplikasi dengan izin" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Izin" @@ -1527,12 +1538,12 @@ msgid "Show the kind of change" msgstr "Tampilkan jenis perubahan" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Ref" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Tampilkan ref" @@ -1541,24 +1552,24 @@ msgid "Show the application/runtime ID" msgstr "Tampilkan ID aplikasi/runtime" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Arsitektur" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Tampilkan arsitektur" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Cabang" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Tampilkan cabang" @@ -1570,7 +1581,7 @@ msgstr "Pemasangan" msgid "Show the affected installation" msgstr "Tampilkan pemasangan yang terpengaruh" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Remote" @@ -1579,7 +1590,7 @@ msgid "Show the remote" msgstr "Tampilkan remote" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Komit" @@ -1599,7 +1610,7 @@ msgstr "Tampilkan komit sebelumnya" msgid "Show the remote URL" msgstr "Tampilkan URL remote" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Pengguna" @@ -1616,7 +1627,7 @@ msgid "Show the tool that was used" msgstr "Tampilkan perkakas yang digunakan" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Versi" @@ -1644,10 +1655,12 @@ msgid " - Show history" msgstr " - Tampilkan riwayat" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "Gagal menguraikan opsi --since" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "Gagal mengurai opsi --until" @@ -1663,11 +1676,11 @@ msgstr "Tampilkan pemasangan di seluruh sistem" msgid "Show specific system-wide installations" msgstr "Tampilkan pemasangan tertentu di seluruh sistem" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Tampilkan ref" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Tampilkan komit" @@ -1679,15 +1692,15 @@ msgstr "Tampilkan asal" msgid "Show size" msgstr "Tampilkan ukuran" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Tampilkan metadata" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Tampilkan runtime" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Tampilkan sdk" @@ -1699,8 +1712,8 @@ msgstr "Tampilkan izin" msgid "Query file access" msgstr "Akses berkas kueri" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1719,7 +1732,7 @@ msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "" "NAMA [CABANG] - Dapatkan info tentang aplikasi atau runtime yang terpasang" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "NAMA harus ditentukan" @@ -1728,85 +1741,87 @@ msgstr "NAMA harus ditentukan" msgid "ref not present in origin" msgstr "ref tidak ada di asal" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Peringatan: Komit tidak memiliki metadata flatpak\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Ref:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Arsitektur:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Cabang:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Versi:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Lisensi:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Koleksi:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Pemasangan:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Terpasang:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Runtime:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Tanggal:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Subjek:" @@ -1819,15 +1834,15 @@ msgid "Latest commit:" msgstr "Komit terbaru:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Komit:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Induk:" @@ -1836,14 +1851,14 @@ msgid "Alt-id:" msgstr "Alt-id:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "Akhir-masa-pakai:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "Rebase-akhir-masa-pakai:" @@ -1852,149 +1867,150 @@ msgid "Subdirectories:" msgstr "Subdirektori:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Ekstensi:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Asal:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Subpath:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "tidak dirawat" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "tidak dikenal" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Jangan tarik, hanya memasang dari singgahan lokal" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Jangan deploy, hanya mengunduh ke singgahan lokal" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Jangan pasang ref yang terkait" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Jangan memverifikasi/memasang dependensi runtime" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "Jangan secara otomatis menyematkan pemasangan eksplisit" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Jangan menggunakan delta statis" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "Selain itu, pasang SDK yang digunakan untuk membuat ref yang diberikan" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" "Selain itu, pasang info awakutu untuk ref yang diberikan dan dependensinya" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Asumsikan LOKASI adalah bundel berkas tunggal .flatpak" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Asumsikan LOKASI adalah deskripsi aplikasi .flatpakref" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "" "Periksa tanda tangan bundel dengan kunci GPG dari BERKAS (-untuk stdin)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Hanya pasang subpath ini" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Secara otomatis menjawab ya untuk semua pertanyaan" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Hapus dulu jika sudah terpasang" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "Menghasilkan keluaran minimal dan jangan bertanya" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Mutakhirkan pemasangan jika sudah terpasang" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "Gunakan repo lokal ini untuk sideload" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Nama berkas bundel harus ditentukan" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Bundel remote tidak didukung" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Nama berkas atau uri harus ditentukan" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "[LOKASI/REMOTE] [REF...] - Pasang aplikasi atau runtime" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "Setidaknya satu REF harus ditentukan" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "" "Mencari kecocokan...\n" "\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, c-format msgid "No remote refs found for ‘%s’" msgstr "Tidak ada remote ref yang ditemukan untuk ‘%s’" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Cabang tidak valid %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Tidak ada yang cocok dengan %s di repositori lokal untuk remote %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Tidak ada yang cocok dengan %s di remote %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Melewatkan: %s\n" @@ -2032,51 +2048,51 @@ msgstr "Daftar aplikasi yang terpasang" msgid "Arch to show" msgstr "Arsitektur yang akan ditampilkan" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Daftar semua ref (termasuk lokal/awakutu)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "Daftar semua aplikasi yang menggunakan RUNTIME" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Nama" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Tampilkan nama" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Deskripsi" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Tampilkan deskripsi" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "ID Aplikasi" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Tampilkan ID aplikasi" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Tampilkan versi" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Runtime" @@ -2084,7 +2100,7 @@ msgstr "Runtime" msgid "Show the used runtime" msgstr "Tampilkan runtime yang digunakan" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Tampilkan remote asal" @@ -2096,7 +2112,7 @@ msgstr "Tampilkan pemasangan" msgid "Active commit" msgstr "Komit aktif" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Tampilkan komit aktif" @@ -2108,35 +2124,35 @@ msgstr "Komit terbaru" msgid "Show the latest commit" msgstr "Tampilkan komit terbaru" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Ukuran terpasang" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Tampilkan ukuran terpasang" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Opsi" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Tampilkan opsi" -#: app/flatpak-builtins-list.c:179 -#, fuzzy, c-format +#: app/flatpak-builtins-list.c:178 +#, c-format msgid "Unable to load details of %s: %s" -msgstr "Tidak dapat memuat metadata dari remote %s: %s" +msgstr "Tidak dapat memuat rincian %s: %s" -#: app/flatpak-builtins-list.c:189 +#: app/flatpak-builtins-list.c:188 #, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Tidak dapat memeriksa versi %s saat ini: %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - Daftar aplikasi dan/atau runtime yang terpasang" @@ -2148,7 +2164,7 @@ msgstr "Arsitektur seperti sekarang" msgid "APP BRANCH - Make branch of application current" msgstr "APL CABANG - Buat cabang aplikasi saat ini" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "APL harus ditentukan" @@ -2172,10 +2188,12 @@ msgstr "" "[POLA ...] - nonaktifkan pemutakhiran dan pola pencocokan pemasangan otomatis" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "Tidak ada pola mask\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Pola mask:\n" @@ -2191,26 +2209,26 @@ msgstr "Tampilkan timpaan yang ada" msgid "[APP] - Override settings [for application]" msgstr "[APP] - Timpa pengaturan [untuk aplikasi]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABEL] [ID] - Daftar izin" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Tabel" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Objek" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "Aplikasi" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Data" @@ -2267,10 +2285,12 @@ msgid "[PATTERN…] - disable automatic removal of runtimes matching patterns" msgstr "[POLA...] - nonaktifkan penghapusan otomatis pola pencocokan runtime" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "Tidak ada pola yang disematkan\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "Pola yang disematkan:\n" @@ -2346,124 +2366,124 @@ msgstr "Tampilkan apakah aplikasi tersebut di latar belakang" msgid " - Enumerate running sandboxes" msgstr " - Enumerasikan sandbox yang berjalan" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Tidak melakukan apapun jika remote yang disediakan ada" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "LOKASI menentukan berkas konfigurasi, bukan lokasi repo" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Nonaktifkan verifikasi GPG" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Tandai remote untuk tidak dienumerasi" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Tandai remote untuk tidak digunakan sebagai sumber dependensi" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "Atur prioritas (bawaan 1, lebih tinggi berarti lebih diprioritaskan)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORITAS" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "Subset bernama yang digunakan untuk remote ini" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "SUBSET" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Sebuah nama yang bagus untuk digunakan bagi remote ini" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "Komentar satu baris untuk remote ini" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "Deskripsi paragraf lengkap untuk remote ini" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "URL untuk situs web untuk remote ini" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "URL untuk ikon untuk remote ini" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Cabang bawaan yang digunakan untuk remote ini" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Impor kunci GPG dari BERKAS (- untuk stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Atur path ke penyaring BERKAS lokal" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Nonaktifkan remote" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Nama autentikator" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Pasang otomatis autentikator" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "Jangan pasang otomatis autentikator" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "Jangan ikuti kumpulan pengalihan dalam berkas ringkasan" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "Tidak dapat memuat uri %s: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Tidak dapat memuat berkas %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NAMA LOKASI - Tambah repositori remote" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "Verifikasi GPG diperlukan jika koleksi diaktifkan" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "Remote %s sudah ada" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Nama autentikator tidak valid %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "Peringatan: Tidak dapat memutakhirkan metadata ekstra untuk '%s': %s\n" @@ -2490,60 +2510,60 @@ msgstr "Hapus mereka?" msgid "Can't remove remote '%s' with installed refs" msgstr "Tidak dapat menghapus remote '%s' dengan ref yang terpasang" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "Komit untuk menunjukkan info untuk" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Tampilkan log" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Tampilkan induk" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Gunakan singgahan lokal bahkan jika itu basi" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "Hanya daftar ref yang tersedia sebagai sideload" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " REMOTE REF - Tampilkan informasi tentang aplikasi atau runtime pada remote" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "REMOTE dan REF harus ditentukan" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Unduh:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "Riwayat:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Komit:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Subjek:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Tanggal:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Peringatan: Komit %s tidak memiliki metadata flatpak\n" @@ -2572,7 +2592,7 @@ msgstr "Tampilkan URL" msgid "Show the collection ID" msgstr "Tampilkan ID koleksi" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "Subset" @@ -2628,39 +2648,39 @@ msgstr "Tampilkan ikon" msgid " - List remote repositories" msgstr " - Daftar repositori remote" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Tampilkan arsitektur dan cabang" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Hanya tampilkan runtime" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Hanya tampilkan aplikasi" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Hanya tampilkan itu ketika pemutakhiran tersedia" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Batasi arsitektur ini (* untuk semua)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Tampilkan runtime" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Ukuran unduh" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Tampilkan ukuran unduh" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr " [REMOTE atau URI] - Tampilkan runtime dan aplikasi yang tersedia" @@ -2791,224 +2811,231 @@ msgstr "" msgid "- Repair a flatpak installation" msgstr "- Perbaiki pemasangan flatpak" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Menghapus ref tidak ter-deploy %s...\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Melewati ref tidak ter-deploy %s...\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d/%d] Memverifikasi %s...\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "Uji coba: " -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "Menghapus ref %s karena objek yang hilang\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "Menghapus ref %s karena objek tidak valid\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "Menghapus ref %s karena %d\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "Memeriksa remote...\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "Remote %s untuk ref %s tidak ada\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "Remote %s untuk ref %s dinonaktifkan\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "Pangkas objek\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "Menghapus .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "Memasang ulang ref\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "Memasang ulang ref yang dihapus\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "Saat menghapus appstream untuk %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "Saat mendeploy appstream untuk %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Mode repo: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "Ringkasan terindeks: %s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "true" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "false" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "Sub ringkasan: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "Versi singgahan: %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "Delta terindeks: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Judul: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Komentar: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Deskripsi: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Halaman Web: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Ikon: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "ID koleksi: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Cabang bawaan: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "URL pengalihan: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "Deploy ID koleksi: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Nama autentikator: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "Pasang autentikator: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "Hash kunci GPG: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "%zd cabang ringkasan\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Terpasang" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Unduh" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "Subset" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "Intisari" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "Panjang riwayat" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Cetak informasi umum tentang repositori" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Daftar cabang di repositori" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Cetak metadata untuk cabang" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Tampilkan komit untuk cabang" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "Cetak informasi tentang subset repositori" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "Batasi informasi ke subset dengan awalan ini" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "LOKASI - Pemeliharaan repositori" @@ -3100,11 +3127,11 @@ msgstr "Gunakan PATH alih-alih /app aplikasi" msgid "Use PATH instead of the runtime's /usr" msgstr "Gunakan PATH alih-alih /usr runtime" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "APP ARGUMEN...] - Jalankan aplikasi" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "runtime/%s/%s/%s tidak terpasang" @@ -3121,15 +3148,15 @@ msgstr "Remote" msgid "Show the remotes" msgstr "Tampilkan remote" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "TEKS - Cari aplikasi remote/runtime untuk teks" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "TEKS harus ditentukan" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Tidak ditemukan kecocokan" @@ -3209,6 +3236,7 @@ msgstr "" "flatpak-pin(1):\n" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Tidak ada yang tidak digunakan untuk menghapus\n" @@ -3233,6 +3261,7 @@ msgid "Warning: %s is not installed\n" msgstr "Peringatan:%s tidak dipasang\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "Tidak ada ref yang ditentukan yang dipasang" @@ -3273,6 +3302,7 @@ msgid "With --commit, only one REF may be specified" msgstr "Dengan --commit, hanya satu REF yang dapat ditentukan" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Mencari pemutakhiran...\n" @@ -3282,28 +3312,29 @@ msgid "Unable to update %s: %s\n" msgstr "Tidak dapat memutakhirkan %s: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Tidak ada yang bisa dilakukan.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "Remote '%s' ditemukan pada beberapa pemasangan:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Mana yang ingin Anda gunakan (0 untuk membatalkan)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "Tidak ada remote yang dipilih untuk menyelesaikan '%s' yang ada pada " "beberapa pemasangan" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3312,13 +3343,13 @@ msgstr "" "Remote \"%s\" tidak ditemukan\n" "Petunjuk: Gunakan flatpak remote-add untuk menambahkan remote" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Remote \"%s\" tidak ditemukan dalam pemasangan %s" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3327,139 +3358,130 @@ msgstr "" "Ref ‘%s’ ditemukan dalam remote ‘%s’ (%s):\n" "Gunakan ref ini?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "Tidak ada ref yang dipilih untuk menyelesaikan kecocokan untuk ‘%s’" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "Ref serupa ditemukan untuk ‘%s’ dalam remote ‘%s’ (%s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "Ditemukan ref yang terpasang ‘%s’ (%s). Apakah ini benar?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "Semua yang di atas" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "Ref terpasang serupa ditemukan untuk ‘%s’:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"Ref serupa ditemukan untuk ‘%s’ dalam remote ‘%s’ (%s):\n" -"Gunakan remote ini?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "Remote ditemukan dengan ref yang serupa dengan ‘%s’:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "Tidak ada remote yang dipilih untuk menyelesaikan kecocokan untuk ‘%s’" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "Remote ditemukan dengan ref yang serupa dengan ‘%s’:" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "Memutakhirkan data appstream untuk remote pengguna %s" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Memutakhirkan data appstream untuk remote %s" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Galat memutakhirkan" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "Remote \"%s\" tidak ditemukan" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Sufiks ambigu: '%s'." #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "Nilai yang mungkin adalah :s[tart], :m[iddle], :e[nd] or :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Sufiks tidak valid: '%s'." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Kolom ambigu: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Kolom tidak dikenal: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Kolom yang tersedia:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Tampilkan semua kolom" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Tampilkan kolom yang tersedia" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" "Menambahkan :s[tart], :m[iddle], :e[nd] atau :f[ull] untuk mengubah " "elipsisasi" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "Runtime yang diperlukan %s (%s) ditemukan di remote %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Apakah Anda ingin memasangnya?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "Diperlukan runtime untuk %s (%s) yang ditemukan pada remote:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Mana yang ingin Anda pasang (0 untuk membatalkan)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Mengonfigurasi %s sebagai '%s' remote baru\n" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3471,7 +3493,7 @@ msgstr "" "Haruskah remote disimpan untuk pemasangan di masa depan?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3482,126 +3504,126 @@ msgstr "" "   %s\n" "Konfigurasikan ini sebagai remote baru '%s'" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Memasang…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Memasang %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Memutakhirkan…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Memutakhirkan %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Menghapus pemasangan…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Menghapus pemasangan %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Info: %s dilewati" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, c-format msgid "Warning: %s%s%s already installed" msgstr "Peringatan: %s%s %s sudah dipasang" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, c-format msgid "Error: %s%s%s already installed" msgstr "Galat: %s%s%s sudah dipasang" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, c-format msgid "Warning: %s%s%s not installed" msgstr "Peringatan: %s%s %s sudah dipasang" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, c-format msgid "Error: %s%s%s not installed" msgstr "Galat: %s%s%s sudah dipasang" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "Peringatan: %s%s%s membutuhkan versi flatpak yang lebih baru" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "Galat: %s%s%s membutuhkan versi flatpak yang lebih baru" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" msgstr "Peringatan: Tidak cukup ruang diska untuk menyelesaikan operasi ini" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" msgstr "Galat: Tidak cukup ruang diska untuk menyelesaikan operasi ini" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, c-format msgid "Warning: %s" msgstr "Peringatan: %s" -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, c-format msgid "Error: %s" msgstr "Galat: %s" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, c-format msgid "Failed to install %s%s%s: " -msgstr "Gagal memasang %s%s%s:" +msgstr "Gagal memasang %s%s%s: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, c-format msgid "Failed to update %s%s%s: " -msgstr "Gagal memutakhirkan %s%s%s:" +msgstr "Gagal memutakhirkan %s%s%s: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Gagal memasang bundel %s%s%s: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Gagal menghapus %s%s%s: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "Diperlukan autentikasi untuk remote '%s'\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Buka peramban?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "Diperlukan login jarak jauh %s (ranah %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Kata sandi" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, c-format msgid "" "\n" @@ -3612,7 +3634,7 @@ msgstr "" "Info: (disematkan) runtime %s%s%s cabang %s%s%s sudah habis masa pakainya, " "mendukung %s%s%s cabang %s%s%s\n" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, c-format msgid "" "\n" @@ -3623,7 +3645,7 @@ msgstr "" "Info: runtime %s%s%s cabang %s%s%s sudah habis masa pakainya, mendukung " "%s%s%s cabang %s%s%s\n" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, c-format msgid "" "\n" @@ -3635,7 +3657,7 @@ msgstr "" "%s%s%s cabang %s%s%s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, c-format msgid "" "\n" @@ -3645,7 +3667,7 @@ msgstr "" "Info: (disematkan) runtime %s%s%s cabang %s%s%s sudah habis masa pakainya, " "dengan alasan:\n" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, c-format msgid "" "\n" @@ -3655,7 +3677,7 @@ msgstr "" "Info: runtime %s%s%s cabang %s%s%s sudah habis masa pakainya, dengan " "alasan:\n" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, c-format msgid "" "\n" @@ -3665,90 +3687,88 @@ msgstr "" "Info: aplikasi %s%s%s cabang %s%s%s sudah habis masa pakainya, dengan " "alasan:\n" -#: app/flatpak-cli-transaction.c:947 +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" msgstr "Info: aplikasi yang menggunakan ekstensi ini:\n" -#: app/flatpak-cli-transaction.c:949 +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" msgstr "Info: aplikasi yang menggunakan runtime ini:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "Ganti?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "Memutakhirkan ke versi yang di-rebase\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "Gagal rebase %s ke %s: " -#: app/flatpak-cli-transaction.c:1009 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Gagal menghapus %s untuk rebase ke %s: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, c-format msgid "New %s%s%s permissions:" msgstr "Izin %s%s%s baru:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, c-format msgid "%s%s%s permissions:" msgstr "izin %s%s%s:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Peringatan: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Op" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "parsial" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Lanjutkan dengan perubahan ini pada pemasangan pengguna?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Lanjutkan dengan perubahan ini pada pemasangan sistem?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Lanjutkan dengan perubahan ini ke %s?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Perubahan selesai." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Hapus selesai." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Pemasangan selesai." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Pemutakhiran selesai." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Ada satu galat atau lebih" @@ -4060,7 +4080,7 @@ msgstr "" "dipasang oleh Flatpak mungkin tidak muncul di destop Anda hingga sesi " "dimulai ulang." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." @@ -4069,29 +4089,29 @@ msgstr "" "untuk beroperasi pada pemasangan pengguna (user), atau menggunakan shell " "root untuk beroperasi pada pemasangan pengguna root." -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" "Beberapa pemasangan ditentukan untuk perintah yang bekerja pada satu " "pemasangan" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "Lihat '%s --help'" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "'%s' bukan perintah flatpak. Apakah maksud Anda '%s%s'?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "'%s' bukan perintah flatpak" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Tidak ada perintah yang ditentukan" @@ -4154,16 +4174,16 @@ msgstr "Peringatan: Gagal menghapus %s: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Galat: Gagal menghapus %s: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s sudah terpasang" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s tidak terpasang" @@ -4192,59 +4212,55 @@ msgstr "Info: %s adalah akhir masa pakai, dengan alasan: %s\n" msgid "Failed to rebase %s to %s: %s\n" msgstr "Gagal rebase %s to %s: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Gagal menghapus %s untuk %s: %s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "Tidak ada autentikator yang dikonfigurasikan untuk remote `%s`" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Jenis pembagian %s tidak diketahui, jenis yang valid adalah: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Jenis kebijakan %s tidak diketahui, jenis yang valid adalah: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Nama dbus %s tidak valid" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Jenis soket %s tidak diketahui, jenis yang valid adalah: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Jenis perangkat %s tidak diketahui, jenis yang valid adalah: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Jenis fitur %s tidak diketahui, jenis yang valid adalah: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "Lokasi sistem berkas \"%s\" berisi \"..\"" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" "--filesystem=/ tidak tersedia, gunakan --filesystem=host untuk hasil yang " "sama" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4253,609 +4269,640 @@ msgstr "" "Lokasi sistem berkas yang tidak diketahui %s, lokasi yang valid adalah: " "host, host-os, host-etc, home, xdg-*[/…], ~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Format env tidak valid %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "Nama variabel lingkungan tidak boleh berisi '=': %s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "Argumen --add-policy harus dalam bentuk SUBSISTEM.KUNCI=NILAI" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "Nilai --add-policy tidak dapat dimulai dengan \"!\"" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "Argumen --remove-policy harus dalam bentuk SUBSISTEM.KUNCI=NILAI" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "Nilai --remove-policy tidak dapat dimulai dengan \"!\"" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Berbagi dengan host" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "BERBAGI" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Tidak berbagi dengan host" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Ekspos soket ke aplikasi" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "SOKET" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Jangan ekspos soket ke aplikasi" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Ekspos perangkat ke aplikasi" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "PERANGKAT" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Jangan ekspos perangkat ke aplikasi" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Izinkan fitur" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "FITUR" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Jangan izinkan fitur" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "Ekspos sistem berkas ke aplikasi (:ro untuk hanya baca)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "SISTEMBERKAS[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Jangan ekspos sistem berkas ke aplikasi" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "SISTEMBERKAS" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Atur variabel lingkungan" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VAR=NILAI" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "Baca variabel lingkungan dalam format env -0 dari FD" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "FD" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "Hapus variabel dari lingkungan" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "VAR" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Izinkan aplikasi memiliki nama di bus sesi" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "NAMA_DBUS" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Izinkan aplikasi berbicara dengan nama di bus sesi" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "Jangan izinkan aplikasi berbicara dengan nama di bus sesi" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Izinkan aplikasi memiliki nama di bus sistem" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Izinkan aplikasi berbicara dengan nama di bus sistem" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "Jangan izinkan aplikasi berbicara dengan nama di bus sistem" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Izinkan aplikasi memiliki nama di bus sistem" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Tambahkan opsi kebijakan umum" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "SUBSISTEM.KUNCI=NILAI" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Hapus opsi kebijakan umum" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "Mempertahankan subpath direktori home" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "NAMABERKAS" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Mempertahankan subpath direktori home" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Tidak memerlukan sesi berjalan (tidak ada pembuatan cgroups)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" -msgstr "" +msgstr "Tidak mengganti \"%s\" dengan tmpfs: %s" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" -msgstr "" +msgstr "Tidak berbagi \"%s\" dengan sandbox: %s" #. Even if the error is one that we would normally silence, like #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" -msgstr "" +msgstr "Tidak mengizinkan akses direktori rumah: %s" -#: common/flatpak-context.c:2828 -#, fuzzy, c-format +#: common/flatpak-context.c:3150 +#, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" -msgstr "Tidak dapat membuat direktori sementara dalam %s" +msgstr "Tidak dapat menyediakan direktori rumah sementara di sandbox: %s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "ID koleksi yang dikonfigurasi '%s' tidak dalam berkas ringkasan" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Tidak dapat memuat ringkasan dari remote %s: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "Tidak ada ref '%s' pada remote %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 -#, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 +#, fuzzy, c-format +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "" "Tidak ada entri untuk %s dalam ringkasan singgahan remote flatpak '%s' " -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "" "Tidak ada ringkasan atau singgahan Flatpak yang tersedia untuk remote %s" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "Tidak ada entri untuk %s dalam singgahan ringkasan remote '%s' " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Hilang xa.data dalam ringkasan untuk remote %s" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Versi ringkasan yang tidak didukung %d untuk remote %s" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "Indeks remote OCI tidak memiliki registry uri" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Tidak dapat menemukan ref %s di remote %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "Citra bukan merupakan manifes" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "Komit tidak meminta ref '%s' dalam metadata yang mengikat ref" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "ID koleksi yang dikonfigurasi '%s' tidak dalam metadata yang mengikat" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "Tidak dapat menemukan checksum terbaru untuk %s pada remote %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" "Tidak ada entri untuk %s di remote %s ringkasan singgahan jarang flatpak" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "Metadata komit untuk %s tidak cocok dengan metadata yang diharapkan" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "Tidak dapat terhubung ke bus sistem" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "Pemasangan pengguna" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "Pemasangan sistem (%s)" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Tidak ada timpaan yang ditemukan untuk %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "%s (komit %s) tidak terpasang" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "Galat mengurai berkas sistem flatpakrepo untuk %s: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Saat membuka repositori %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "Kunci konfig %s tidak disetel" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "Tidak ada pola %s saat ini yang cocok %s" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "Tidak ada komit aplikasi untuk dideploy" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "Tidak dapat menarik remote non-gpg yang tidak terpercaya" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" "Data ekstra tidak didukung untuk pemasangan sistem lokal yang tidak " "diverifikasi gpg" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Checkum tidak valid untuk uri data ekstra %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Nama kosong untuk uri data ekstra %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Uri data ekstra yang tidak didukung %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Gagal memuat data-ekstra lokal %s: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Ukuran yang salah untuk data-ekstra %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "Saat mengunduh %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Ukuran yang salah untuk data ekstra %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Checksum tidak valid untuk data ekstra %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s komit %s sudah terpasang" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "Saat menarik %s dari remote %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "" "Tanda tangan GPG ditemukan, tetapi tidak ada dalam ring kunci terpercaya" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "Komit untuk ‘%s’ tidak memiliki pengikatan ref" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "Komit untuk ‘%s’ tidak dalam batas yang diharapkan, ref: %s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "Hanya aplikasi yang dapat dibuat saat ini" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Memori tidak cukup" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Gagal membaca dari berkas yang diekspor" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Kesalahan saat membaca berkas xml mimetype" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Berkas xml mimetype tidak valid" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "Berkas layanan D-Bus '%s' memiliki nama yang salah" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "Argumen Exec %s tidak valid" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "Saat mendapatkan metadata yang terpisah: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "Data ekstra hilang dalam metadata terpisah" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "Saat membuat direktori ekstra: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Checksum tidak valid untuk data ekstra" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Ukuran yang salah untuk data ekstra" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "Saat menulis berkas data ekstra '%s': " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "Data ekstra %s hilang dalam metadata terpisah" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "Skrip apply_extra gagal, status keluar %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" "Pemasangan %s tidak diizinkan oleh kebijakan yang ditetapkan oleh " "administrator Anda" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "Saat mencoba menyelesaikan ref %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s tak tersedia" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Tidak dapat membuat direktori deploy" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Gagal membaca komit %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "Saat mencoba melakukan checkout %s ke %s: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "Saat mencoba melakukan checkout metadata subpath: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "Saat mencoba melakukan checkout subpath ‘%s’: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Saat mencoba menghapus direktori ekstra yang ada: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Saat mencoba menerapkan data ekstra: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Komit ref %s tidak valid: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "Ref %s yang dideploy tidak cocok dengan komit (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "Cabang ref %s yang dideploy tidak cocok dengan komit (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s cabang %s sudah terpasang" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "Tidak dapat melepas kait sistem berkas revokefs-fuse pada %s: " -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Versi %s ini sudah terpasang" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "Tidak dapat mengubah remote saat memasang paket" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "Tidak dapat memutakhirkan ke komit spesifik tanpa izin root" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "Tidak dapat menghapus %s, diperlukan untuk: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s cabang %s tidak terpasang" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "%s komit %s tidak terpasang" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "Pemangkasan repo gagal: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "Gagal memuat penyaring '%s'" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "Gagal mengurai penyaring '%s'" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "Gagal menulis singgahan ringkasan: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "Tidak ada ringkasan oci tersinggah untuk remote '%s'" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "Tidak ada ringkasan tersinggah untuk remote '%s'" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "Checksum tidak valid untuk ringkasan terindeks %s dibaca dari %s" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " @@ -4864,244 +4911,273 @@ msgstr "" "Daftar remote untuk %s tidak tersedia; server tidak memiliki berkas " "ringkasan. Pastikan bahwa URL yang diteruskan ke remote-add valid." -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "Checksum tidak valid untuk ringkasan terindeks %s untuk remote '%s'" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "" "Beberapa cabang tersedia untuk %s, Anda harus menentukan salah satu dari: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Tidak ada yang cocok dengan %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Tidak dapat menemukan ref %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Galat mencari remote %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Galat mencari repositori lokal: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s tidak terpasang" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Tidak dapat menemukan pemasangan %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "Format berkas tidak valid, tidak ada grup %s" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Versi %s tidak valid, hanya 1 yang didukung" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "Format berkas tidak valid, tidak ada %s yang ditentukan" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "Format berkas tidak valid, kunci gpg tidak valid" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "ID Koleksi membutuhkan kunci GPG yang akan disediakan" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Runtime %s, cabang %s telah terpasang" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Aplikasi %s, cabang %s sudah terpasang" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" "Tidak dapat menghapus remote '%s' dengan ref %s yang terpasang (setidaknya)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Karakter tidak valid '/' dalam nama remote: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "Tidak ada konfigurasi untuk remote %s yang ditentukan" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Melewati penghapusan mirror ref (%s, %s)…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" -msgstr "" +msgstr "Diperlukan path absolut" -#: common/flatpak-exports.c:923 -#, fuzzy, c-format +#: common/flatpak-exports.c:933 +#, c-format msgid "Unable to open path \"%s\": %s" -msgstr "Tidak dapat memutakhirkan %s: %s\n" +msgstr "Tidak dapat membuka path \"%s\": %s" -#: common/flatpak-exports.c:930 -#, fuzzy, c-format +#: common/flatpak-exports.c:940 +#, c-format msgid "Unable to get file type of \"%s\": %s" -msgstr "Tidak dapat membuat berkas %s" +msgstr "Tidak dapat mendapatkan jenis berkas \"%s\": %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" -msgstr "" +msgstr "Berkas \"%s\" memiliki tipe 0o yang tidak didukung%o" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" -msgstr "" +msgstr "Tidak dapat memperoleh informasi sistem berkas untuk \"%s\": %s" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" -msgstr "" +msgstr "Mengabaikan pemblokiran path autofs \"%s\"" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" -msgstr "" +msgstr "Path \"%s\" disediakan oleh Flatpak" -#: common/flatpak-exports.c:1051 -#, fuzzy, c-format +#: common/flatpak-exports.c:1061 +#, c-format msgid "Unable to resolve symbolic link \"%s\": %s" -msgstr "Tidak dapat memutakhirkan tautan simbolik %s/%s" +msgstr "Tidak dapat menyelesaikan tautan simbolis \"%s\": %s" + +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "String kosong bukanlah angka" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "\"%s\" bukan bilangan tak bertanda" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "Nomor \"%s\" berada di luar batas [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "Ref %s tidak terpasang" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "Aplikasi %s tidak terpasang" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "Remote '%s' sudah ada" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "Seperti yang diminta, %s hanya ditarik, tetapi tidak dipasang" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "Tidak dapat membuat direktori %s" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "Tidak dapat mengunci %s" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "Tidak dapat membuka direktori %s" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "Tidak dapat membuat direktori sementara dalam %s" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "Tidak dapat membuat berkas %s" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Tidak dapat memutakhirkan tautan simbolik %s/%s" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "Hanya autentikasi Bearer yang didukung" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "Hanya realm dalam permintaan autentikasi" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "Realm tidak valid dalam permintaan autentikasi" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "Otorisasi gagal: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Otorisasi gagal" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "Status respons tak terduga %d saat meminta token: %s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "Respons permintaan autentikasi tidak valid" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "Format berkas delta tidak valid" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "Tidak ditemukan kunci gpg dengan ID %s (homedir: %s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Tidak dapat mencari ID kunci %s: %d" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "Galat menandatangani komit: %d" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Konfigurasi citra OCI tidak valid" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Pemeriksaan layer yang salah, yang diharapkan %s, ternyata %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "Tidak ada ref yang ditentukan untuk citra OCI %s" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Ref (%s) yang salah ditentukan untuk citra OCI %s, yang diharapkan %s" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5122,315 +5198,368 @@ msgstr "Mengunduh data ekstra: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Mengunduh berkas: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Nama tidak boleh kosong" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Nama tidak boleh lebih dari 255 karakter" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Nama tidak boleh dimulai dengan titik" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Nama tidak boleh dimulai dengan %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Nama tidak boleh diakhiri dengan titik" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Hanya segmen nama belakang yang boleh berisi -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Segmen nama tidak boleh dimulai dengan %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Nama tidak boleh mengandung %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "Nama harus mengandung setidaknya 2 titik" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "Arsitektur tidak boleh kosong" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "Arsitektur tidak boleh berisi %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Cabang tidak boleh kosong" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Cabang tidak boleh dimulai dengan %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Cabang tidak boleh berisi %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "Ref terlalu panjang" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "Nama remote tidak valid" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s bukan aplikasi atau runtime" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Salah jumlah komponen dalam %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "Nama tidak valid %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "Arsitektur tidak valid: %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Nama tidak valid %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "Arsitektur tidak valid: %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "Cabang tidak valid: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "Jumlah komponen yang salah dalam ref %s" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr " platform pengembangan" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr " platform" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr " basis aplikasi" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr " simbol awakutu" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr " kode sumber" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " terjemahan" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr " dokumen" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "Id tidak valid %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Nama remote buruk: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "Tidak ada url yang ditentukan" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "Verifikasi GPG harus diaktifkan ketika ID koleksi ditetapkan" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Gagal membuka berkas info aplikasi" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Tidak ada sumber data ekstra" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Tidak dapat membuat pipa sinkronisasi" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "%s tidak valid: Grup ‘%s’ tidak ada" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Gagal melakukan sinkronisasi dengan proksi dbus" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "%s tidak valid: Kunci ‘%s’ tidak ada" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Kunci gpg tidak valid" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Galat menyalin ikon 64x64 untuk komponen %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Galat menyalin ikon 128x128 untuk komponen %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s adalah akhir masa pakai, mengabaikan untuk appstream" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Tidak ada data appstream untuk %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Bundel tidak valid, tidak ada ref dalam metadata" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "Koleksi ‘%s’ dari bundel tidak cocok dengan koleksi ‘%s’ dari remote" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Metadata pada header dan aplikasi tidak konsisten" -#: common/flatpak-run.c:2207 +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "Tidak ada sesi pengguna systemd, cgroup tidak tersedia" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "Tidak dapat mengalokasikan id instance" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Gagal membuka berkas flatpak-info: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Gagal membuka berkas bwrapinfo.json: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "Gagal menulis ke id instance fd: %s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "Inisialisasi seccomp gagal" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Gagal menambahkan arsitektur ke penyaring seccomp: %s" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Gagal menambahkan arsitektur multiarch ke penyaring seccomp: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, c-format msgid "Failed to block syscall %d: %s" msgstr "Gagal memblokir syscall %d: %s" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, c-format msgid "Failed to export bpf: %s" msgstr "Gagal mengekspor bpf: %s" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "Gagal membuka ‘%s’" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ldconfig gagal, status keluar %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "Tidak dapat membuka ld.so.cache yang dihasilkan" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" "Menjalankan %s tidak diizinkan oleh kebijakan yang ditetapkan oleh " "administrator Anda" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" "\"flatpak run\" tidak dimaksudkan untuk dijalankan sebagai `sudo flatpak " "run`. Gunakan `sudo -i` atau `su -l` sebagai gantinya dan panggil \"flatpak " "run\" dari dalam shell baru." -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "Gagal bermigrasi dari %s: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "Gagal memigrasi direktori data aplikasi lama %s ke nama baru %s: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Gagal membuat tautan simbolik saat memigrasi %s: %s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Gagal membuka berkas info aplikasi" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Tidak dapat membuat pipa sinkronisasi" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Gagal melakukan sinkronisasi dengan proksi dbus" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Peringatan: Masalah mencari ref terkait: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "Aplikasi %s membutuhkan runtime %s yang tidak ditemukan" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "Aplikasi %s membutuhkan runtime %s yang tidak terpasang" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "Tidak dapat menghapus %s yang diperlukan untuk %s" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Remote %s dinonaktifkan, mengabaikan pemutakhiran %s" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s sudah dipasang" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s sudah dipasang dari remote %s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr ".flatpakref tidak valid: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "Galat memutakhirkan metadata remote untuk '%s': %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " @@ -5439,54 +5568,54 @@ msgstr "" "Peringatan: Memperlakukan kesalahan pengambilan remote sebagai non-fatal " "sejak %s sudah dipasang: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "Tidak ada autentikator yang dipasang untuk remote `%s`" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "Gagal mendapatkan token untuk ref: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "Gagal mendapatkan token untuk ref" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "Ref %s dari %s cocok dengan lebih dari satu operasi transaksi" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" msgstr "remote apapun" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "Tidak ditemukan operasi transaksi untuk referensi %s dari %s" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "URL flatpakrepo %s bukan berkas, HTTP atau HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "Tidak dapat memuat berkas dependen %s: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr ".flatpakrepo tidak valid: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "Transaksi sudah dijalankan" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." @@ -5494,16 +5623,16 @@ msgstr "" "Menolak beroperasi pada pemasangan pengguna sebagai root! Ini dapat " "menyebabkan galat kepemilikan berkas dan izin." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Dibatalkan oleh pengguna" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "Melewatkan %s karena galat sebelumnya" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "Dibatalkan karena gagal (%s)" @@ -5550,137 +5679,113 @@ msgstr "Port ‘%.*s’ dalam URI di luar jangkauan" msgid "URI is not absolute, and no base URI was provided" msgstr "URI tidak mutlak, dan tidak ada URI dasar yang disediakan" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "Glob tidak dapat mencocokkan aplikasi" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" +msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "Glob kosong" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "Terlalu banyak segmen pada glob" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "Id tidak valid %s: %s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" -msgstr "Karakter glob tidak valid '%c'" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" -msgstr "Glob yang hilang pada baris %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" -msgstr "Perataan teks pada baris %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "pada baris %d" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "Kata '%s' tak diharapkan pada baris %d" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "%s tidak valid: Grup ‘%s’ tidak ada" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "%s tidak valid: Kunci ‘%s’ tidak ada" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Kunci gpg tidak valid" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Tidak ada sumber data ekstra" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Galat menyalin ikon 64x64 untuk komponen %s: %s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Galat menyalin ikon 128x128 untuk komponen %s: %s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s adalah akhir masa pakai, mengabaikan untuk appstream" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "Glob tidak dapat mencocokkan aplikasi" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Tidak ada data appstream untuk %s: %s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Glob kosong" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "Bundel tidak valid, tidak ada ref dalam metadata" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "Terlalu banyak segmen pada glob" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "Koleksi ‘%s’ dari bundel tidak cocok dengan koleksi ‘%s’ dari remote" - -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "Metadata pada header dan aplikasi tidak konsisten" +msgid "Invalid glob character '%c'" +msgstr "Karakter glob tidak valid '%c'" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "Konfigurasi citra OCI tidak valid" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "Glob yang hilang pada baris %d" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "Pemeriksaan layer yang salah, yang diharapkan %s, ternyata %s" +msgid "Trailing text on line %d" +msgstr "Perataan teks pada baris %d" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "Tidak ada ref yang ditentukan untuk citra OCI %s" +msgid "on line %d" +msgstr "pada baris %d" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "Ref (%s) yang salah ditentukan untuk citra OCI %s, yang diharapkan %s" +msgid "Unexpected word '%s' on line %d" +msgstr "Kata '%s' tak diharapkan pada baris %d" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "Argumen require-flatpak %s tidak valid" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s membutuhkan versi flatpak yang lebih baru (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "String kosong bukanlah angka" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "\"%s\" bukan bilangan tak bertanda" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "Nomor \"%s\" berada di luar batas [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "Bukan remote oci, hilang summary.xa.oci-repository" @@ -5693,41 +5798,45 @@ msgstr "Bukan remote OCI" msgid "Invalid token" msgstr "Token tidak valid" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "Dukungan portal tidak ditemukan" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Tolak" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Mutakhirkan" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "Mutakhirkan %s?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "Aplikasi ingin memutakhirkan dirinya sendiri." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "Akses pemutakhiran dapat diubah kapan saja dari pengaturan privasi." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "Pemutakhiran aplikasi tidak diizinkan" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" "Pemutakhiran diri sendiri tidak didukung, versi baru memerlukan izin baru" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "Pemutakhiran berakhir tidak terduga" @@ -5952,6 +6061,30 @@ msgstr "" "Autentikasi diperlukan untuk memasang perangkat lunak yang dibatasi oleh " "kebijakan kontrol orang tua Anda" +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "Ref serupa ditemukan untuk ‘%s’ dalam remote ‘%s’ (%s):\n" +#~ "Gunakan remote ini?" + +#, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "Tidak ada entri untuk %s dalam singgahan ringkasan remote '%s' " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Gagal menghapus %s untuk rebase ke %s: " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Gagal menghapus %s untuk %s: %s\n" + +#, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Tidak dapat membuka direktori %s" + #~ msgid "install" #~ msgstr "pasang" diff --git a/po/insert-header.sin b/po/insert-header.sin deleted file mode 100644 index b26de01..0000000 --- a/po/insert-header.sin +++ /dev/null @@ -1,23 +0,0 @@ -# Sed script that inserts the file called HEADER before the header entry. -# -# At each occurrence of a line starting with "msgid ", we execute the following -# commands. At the first occurrence, insert the file. At the following -# occurrences, do nothing. The distinction between the first and the following -# occurrences is achieved by looking at the hold space. -/^msgid /{ -x -# Test if the hold space is empty. -s/m/m/ -ta -# Yes it was empty. First occurrence. Read the file. -r HEADER -# Output the file's contents by reading the next line. But don't lose the -# current line while doing this. -g -N -bb -:a -# The hold space was nonempty. Following occurrences. Do nothing. -x -:b -} diff --git a/po/ka.po b/po/ka.po new file mode 100644 index 0000000..fa96f5f --- /dev/null +++ b/po/ka.po @@ -0,0 +1,6126 @@ +# Georgian translation for flatpak. +# Copyright (C) 2023 flatpak authors. +# This file is distributed under the same license as the flatpak package. +# Ekaterine Papava , 2023-2024. +# +msgid "" +msgstr "" +"Project-Id-Version: flatpak git\n" +"Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2024-07-17 00:02+0200\n" +"Last-Translator: Ekaterine Papava \n" +"Language-Team: Georgian <(nothing)>\n" +"Language: ka\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 3.3.2\n" + +#: app/flatpak-builtins-build-bundle.c:58 +msgid "Export runtime instead of app" +msgstr "აპის მაგიერ გაშვების გარემოს გატანა" + +#: app/flatpak-builtins-build-bundle.c:59 +msgid "Arch to bundle for" +msgstr "ასაგების პაკეტის არქიტექტურა" + +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 +#: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 +msgid "ARCH" +msgstr "არქიტექტურა" + +#: app/flatpak-builtins-build-bundle.c:60 +msgid "Url for repo" +msgstr "რეპოზიტორიის ბმული" + +#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-remote-modify.c:69 +#: app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-modify.c:85 +msgid "URL" +msgstr "ბმული" + +#: app/flatpak-builtins-build-bundle.c:61 +msgid "Url for runtime flatpakrepo file" +msgstr "გაშვების გარემოს flatpakrepo ფაილის ბმული" + +#: app/flatpak-builtins-build-bundle.c:62 +msgid "Add GPG key from FILE (- for stdin)" +msgstr "GPG გასაღების მითითებული ფაილიდან დამატება (stdin-სთვის გამოიყენეთ -)" + +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-modify.c:90 +msgid "FILE" +msgstr "FILE" + +#: app/flatpak-builtins-build-bundle.c:63 +msgid "GPG Key ID to sign the OCI image with" +msgstr "GPG გასაღების ID-ი OCI ასლის ხელმოსაწერად" + +#: app/flatpak-builtins-build-bundle.c:63 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 +#: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "გასაღები-ID" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 +msgid "GPG Homedir to use when looking for keyrings" +msgstr "GPG Gomedir-ი ბრასლეტების ძებნისას გამოსაყენებლად" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 +msgid "HOMEDIR" +msgstr "HOMEDIR" + +#: app/flatpak-builtins-build-bundle.c:65 +msgid "OSTree commit to create a delta bundle from" +msgstr "OSTree-ის კომიტი დელტა პაკეტის შესაქმნელად" + +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-update.c:57 +msgid "COMMIT" +msgstr "COMMIT" + +#: app/flatpak-builtins-build-bundle.c:66 +msgid "Export oci image instead of flatpak bundle" +msgstr "Flatpak-ის პაკეტის მაგიერ OCI ასლის გატანა" + +#: app/flatpak-builtins-build-bundle.c:621 +msgid "" +"LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " +"repository" +msgstr "" +"მდებარეობა ფაილისსახელი სახელი [ბრენჩი] - ლოკალური რეპოზიტორიიდან " +"ერთფაილიანი პაკეტის შექმნა" + +#: app/flatpak-builtins-build-bundle.c:628 +msgid "LOCATION, FILENAME and NAME must be specified" +msgstr "მდებარეობის, ფაილის სახელის და სახელის მითითება აუცილებელია" + +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 +#: app/flatpak-builtins-document-export.c:112 +#: app/flatpak-builtins-document-info.c:75 +#: app/flatpak-builtins-document-list.c:182 +#: app/flatpak-builtins-document-unexport.c:70 +#: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-override.c:73 +#: app/flatpak-builtins-permission-list.c:159 +#: app/flatpak-builtins-permission-remove.c:132 +#: app/flatpak-builtins-remote-add.c:318 +#: app/flatpak-builtins-remote-delete.c:68 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 +msgid "Too many arguments" +msgstr "მეტისმეტად ბევრი არგუმენტი" + +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 +#, c-format +msgid "'%s' is not a valid repository" +msgstr "'%s' არასწორი რეპოზიტორიაა" + +#: app/flatpak-builtins-build-bundle.c:650 +#, c-format +msgid "'%s' is not a valid repository: " +msgstr "'%s' არასწორი რეპოზიტორიაა: " + +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 +#, c-format +msgid "'%s' is not a valid name: %s" +msgstr "'%s' არასწორი სახელია: %s" + +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 +#, c-format +msgid "'%s' is not a valid branch name: %s" +msgstr "'%s' ბრენჩის არასწორი სახელია: %s" + +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 +#: app/flatpak-builtins-build-init.c:281 +#, c-format +msgid "'%s' is not a valid filename" +msgstr "'%s' არასწორი ფაილის სახელია" + +#: app/flatpak-builtins-build.c:49 +msgid "Use Platform runtime rather than Sdk" +msgstr "SDK-ის მაგიერ პლატფორმის გაშვების გარემოს გამოყენება" + +#: app/flatpak-builtins-build.c:50 +msgid "Make destination readonly" +msgstr "სამიზნის მხოლოდ-წაკითხვის რეჟიმზე გადართვა" + +#: app/flatpak-builtins-build.c:51 +msgid "Add bind mount" +msgstr "მიბმული მიმაგრების დამატება" + +#: app/flatpak-builtins-build.c:51 +msgid "DEST=SRC" +msgstr "DEST=SRC" + +#: app/flatpak-builtins-build.c:52 +msgid "Start build in this directory" +msgstr "აგების ამ საქაღალდეში დაწყება" + +#: app/flatpak-builtins-build.c:52 app/flatpak-builtins-build.c:53 +#: app/flatpak-builtins-build-init.c:64 app/flatpak-builtins-run.c:68 +msgid "DIR" +msgstr "საქაღალდე" + +#: app/flatpak-builtins-build.c:53 +msgid "Where to look for custom sdk dir (defaults to 'usr')" +msgstr "" +"ხელით მითითებული SDK-ის მოსაძებნი საქაღალდე (ნაგულისხმები მნიშვნელობაა 'usr')" + +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 +msgid "Use alternative file for the metadata" +msgstr "მეტამონაცემების სხვა ფაილის გამოყენება" + +#: app/flatpak-builtins-build.c:55 app/flatpak-builtins-run.c:85 +msgid "Kill processes when the parent process dies" +msgstr "პროცესების დახოცვა მშობელი პროცესის სიკვდილისას" + +#: app/flatpak-builtins-build.c:56 +msgid "Export application homedir directory to build" +msgstr "აპლიკაციის საწყისი საქაღალდის ასაგებად გატანა" + +#: app/flatpak-builtins-build.c:57 app/flatpak-builtins-run.c:73 +msgid "Log session bus calls" +msgstr "სესიის მატარებლის გამოძახებების ჟურნალი" + +#: app/flatpak-builtins-build.c:58 app/flatpak-builtins-run.c:74 +msgid "Log system bus calls" +msgstr "სისტემური მატარებლის გამოძახებების ჟურნალი" + +#: app/flatpak-builtins-build.c:208 +msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" +msgstr "საქაღალდე [ბრძანება [არგუმენტი…]] - აგების საქაღალდე" + +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 +msgid "DIRECTORY must be specified" +msgstr "საქაღალდის მითითება აუცილებელია" + +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 +#, c-format +msgid "Build directory %s not initialized, use flatpak build-init" +msgstr "" +"აგების საქაღალდე %s ინიციალიზებული არაა. გამოიყენეთ flatpack build-init" + +#: app/flatpak-builtins-build.c:261 +msgid "metadata invalid, not application or runtime" +msgstr "" +"მეტამონაცემები არასწორია. არ წარმოადგენს არც აპლიკაციას, არც გაშვების გარემოს" + +#: app/flatpak-builtins-build.c:392 +#, c-format +msgid "No extension point matching %s in %s" +msgstr "%2$s-ში %1$s-ს გაფართოების წერტილი არ ემთხვევა" + +#: app/flatpak-builtins-build.c:568 +#, c-format +msgid "Missing '=' in bind mount option '%s'" +msgstr "მიბმული მიმაგრების პარამეტრში '%s' '=' მითითებული არაა" + +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format +msgid "Unable to start app" +msgstr "აპის გასვების შეცდომა" + +#: app/flatpak-builtins-build-commit-from.c:58 +msgid "Source repo dir" +msgstr "საწყისი რეპოს საქაღალდე" + +#: app/flatpak-builtins-build-commit-from.c:58 +msgid "SRC-REPO" +msgstr "SRC-REPO" + +#: app/flatpak-builtins-build-commit-from.c:59 +msgid "Source repo ref" +msgstr "საწყისი რეპოს მიმართვა" + +#: app/flatpak-builtins-build-commit-from.c:59 +msgid "SRC-REF" +msgstr "SRC-REF" + +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 +msgid "One line subject" +msgstr "ერთხაზიანი სათაური" + +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 +msgid "SUBJECT" +msgstr "თემა" + +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 +msgid "Full description" +msgstr "სრული აღწერა" + +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 +msgid "BODY" +msgstr "BODY" + +#: app/flatpak-builtins-build-commit-from.c:66 +#: app/flatpak-builtins-build-export.c:64 +#: app/flatpak-builtins-build-import-bundle.c:50 +msgid "Update the appstream branch" +msgstr "Appstream ბრენჩის განახლება" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 +msgid "Don't update the summary" +msgstr "მიმოხილვა არ განახლდება" + +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 +msgid "GPG Key ID to sign the commit with" +msgstr "კომიტის ხელმოწერისთვის გამოყენებული GPG გასაღების ID" + +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 +msgid "Mark build as end-of-life" +msgstr "აგების მხარდაჭერის ვადაამოწურულად მონიშვნა" + +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 +msgid "REASON" +msgstr "REASON" + +#: app/flatpak-builtins-build-commit-from.c:71 +msgid "" +"Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " +"given NEWID" +msgstr "" +"მიმართების, რომლებიც OLDID-ს ემთხვევა მხარდაჭერის ვადაამოწურულად მონიშვნა, " +"NEWID-ით ჩასანაცვლებლად" + +#: app/flatpak-builtins-build-commit-from.c:71 +msgid "OLDID=NEWID" +msgstr "OLDID=NEWID" + +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 +msgid "Set type of token needed to install this commit" +msgstr "ამ კომიტის დასაყენებლად საჭირო კოდის ტიპის დაყენება" + +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 +msgid "VAL" +msgstr "VAL" + +#: app/flatpak-builtins-build-commit-from.c:73 +msgid "Override the timestamp of the commit (NOW for current time)" +msgstr "კომიტის დროის შტამპის გადაფარვა (NOW - მიმდინარე დროს ნიშნავს)" + +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 +msgid "TIMESTAMP" +msgstr "TIMESTAMP" + +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 +msgid "Don't generate a summary index" +msgstr "შეჯამების ინდექსი არ დაგენერირდება" + +#: app/flatpak-builtins-build-commit-from.c:278 +msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" +msgstr "DST-REPO [DST-REF…] - არსებული კომიტებისგან ახლი კომიტის შექმნა" + +#: app/flatpak-builtins-build-commit-from.c:285 +msgid "DST-REPO must be specified" +msgstr "DST-REPO-ის მითითება აუცილებელია" + +#: app/flatpak-builtins-build-commit-from.c:293 +msgid "" +"If --src-repo is not specified, exactly one destination ref must be specified" +msgstr "" +"თუ --src-repo მითითებული არაა, აუცილებელია ზუსტად ერთი სამიზნე მიმართვის " +"მითითება" + +#: app/flatpak-builtins-build-commit-from.c:296 +msgid "" +"If --src-ref is specified, exactly one destination ref must be specified" +msgstr "" +"თუ --src-ref მითითებულია, აუცილებელია ზუსტად ერთი სამიზნე მიმართვის მითითება" + +#: app/flatpak-builtins-build-commit-from.c:299 +msgid "Either --src-repo or --src-ref must be specified" +msgstr "" +"აუცილებელია მითითებული იყოს ერთ-ერთი პარამეტრებიდან --src-repo და --src-ref" + +#: app/flatpak-builtins-build-commit-from.c:315 +msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" +msgstr "" +"არასწორი არგუმენტის ფორმატი პარამეტრებისთვის --end-of-life-" +"rebase=OLDID=NEWID" + +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 +#, c-format +msgid "Invalid name %s in --end-of-life-rebase" +msgstr "არასწორი სახელი %s პარამეტრში --end-of-life-rebase" + +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 +#, c-format +msgid "Could not parse '%s'" +msgstr "'%s'-ის დამუშავების შეცდომა" + +#: app/flatpak-builtins-build-commit-from.c:498 +msgid "Can't commit from partial source commit" +msgstr "ნაწილობრივი კოდის კომიტიდან კომიტი შეუძლებელია" + +#: app/flatpak-builtins-build-commit-from.c:503 +#, c-format +msgid "%s: no change\n" +msgstr "%s: ცვლილებების გარეშე\n" + +#: app/flatpak-builtins-build-export.c:62 +msgid "Architecture to export for (must be host compatible)" +msgstr "" +"არქიტექტურა, რომლისთვისაც გატანა მოხდება (აუცილებელია, ჰოსტთან იყოს " +"თავსებადი)" + +#: app/flatpak-builtins-build-export.c:63 +msgid "Commit runtime (/usr), not /app" +msgstr "გაშვების გარემოს (/usr) კომიტი, /app კი არა" + +#: app/flatpak-builtins-build-export.c:66 +msgid "Use alternative directory for the files" +msgstr "ფაილებისთვის სხვა საქაღალდის გამოყენება" + +#: app/flatpak-builtins-build-export.c:66 +msgid "SUBDIR" +msgstr "SUBDIR" + +#: app/flatpak-builtins-build-export.c:69 +msgid "Files to exclude" +msgstr "ამოსაღები ფაილები" + +#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 +msgid "PATTERN" +msgstr "შაბლონი" + +#: app/flatpak-builtins-build-export.c:70 +msgid "Excluded files to include" +msgstr "ჩასასმელი ამოღებული ფაილები" + +#: app/flatpak-builtins-build-export.c:74 +msgid "Mark build as end-of-life, to be replaced with the given ID" +msgstr "" +"აგების მხარდაჭერის ვადაამოწურულად მონიშვნა, მითითებული ID-ით ჩანასანცვლებლად" + +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 +msgid "ID" +msgstr "ID" + +#: app/flatpak-builtins-build-export.c:76 +msgid "Override the timestamp of the commit" +msgstr "კომიტის დროის შტამპის გადაფარვა" + +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-remote-modify.c:87 +msgid "Collection ID" +msgstr "კოლექციის ID" + +#: app/flatpak-builtins-build-export.c:472 +#, c-format +msgid "WARNING: Error running desktop-file-validate: %s\n" +msgstr "გაფრთხილება: desktop-file-validate-ის გაშვების შეცდომა: %s\n" + +#: app/flatpak-builtins-build-export.c:480 +#, c-format +msgid "WARNING: Error reading from desktop-file-validate: %s\n" +msgstr "გაფრთხილება: desktop-file-validate-დან წაკითხვის შეცდომა: %s\n" + +#: app/flatpak-builtins-build-export.c:486 +#, c-format +msgid "WARNING: Failed to validate desktop file %s: %s\n" +msgstr "გაფრთხილება:სამუშაო მაგიდის ფაილის %s გადამოწმების შეცდომა: %s\n" + +#: app/flatpak-builtins-build-export.c:513 +#, c-format +msgid "WARNING: Can't find Exec key in %s: %s\n" +msgstr "გაფრთხილება: %s-ში პარამეტრი Exec აღმოჩენილი არაა: %s\n" + +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 +#, c-format +msgid "WARNING: Binary not found for Exec line in %s: %s\n" +msgstr "გაფრთხილება: ხაზისთვის Exec %s-ში გამშვები ფაილი აღმოჩენილი არაა: %s\n" + +#: app/flatpak-builtins-build-export.c:529 +#, c-format +msgid "WARNING: Icon not matching app id in %s: %s\n" +msgstr "გაფრთხილება: %s-ში ხატულა აპის ID-ს არ ემთხვევა: %s\n" + +#: app/flatpak-builtins-build-export.c:552 +#, c-format +msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" +msgstr "" +"გაფრთხილება: სამუშაო მაგიდის ფაილში ხატულაზე მიმართვა არსებობს, მაგრამ " +"გატანილი არაა: %s\n" + +#: app/flatpak-builtins-build-export.c:719 +#, c-format +msgid "Invalid uri type %s, only http/https supported" +msgstr "არასწორი URI-ის ტიპი %s, მხარდაჭერილია მხოლოდ http/https" + +#: app/flatpak-builtins-build-export.c:737 +#, c-format +msgid "Unable to find basename in %s, specify a name explicitly" +msgstr "%s-ში საბაზისო სახელი ვერ ვიპოვე. მიუთითეთ ის" + +#: app/flatpak-builtins-build-export.c:746 +#, c-format +msgid "No slashes allowed in extra data name" +msgstr "დამატებითი მონაცემების სახელში დახრილი ხაზები დაშვებული არაა" + +#: app/flatpak-builtins-build-export.c:758 +#, c-format +msgid "Invalid format for sha256 checksum: '%s'" +msgstr "SHA256 საკონტროლო ჯამის არასწორი ფორმატი: '%s'" + +#: app/flatpak-builtins-build-export.c:768 +#, c-format +msgid "Extra data sizes of zero not supported" +msgstr "ნულოვანი ზომის დამატებითი მონაცემები მხარდაჭერილი არაა" + +#: app/flatpak-builtins-build-export.c:830 +msgid "" +"LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" +msgstr "LOCATION DIRECTORY [BRANCH] - აგების საქაღალდიდან რეპოზიტორიის შექმნა" + +#: app/flatpak-builtins-build-export.c:838 +msgid "LOCATION and DIRECTORY must be specified" +msgstr "LOCATION და DIRECTORY მითითება აუცილებელია" + +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 +#, c-format +msgid "‘%s’ is not a valid collection ID: %s" +msgstr "‘%s’ არასწორი კოლექციის ID-ია: %s" + +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 +msgid "No name specified in the metadata" +msgstr "მეტამონაცემებში სახელი მითითებული არაა" + +#: app/flatpak-builtins-build-export.c:1166 +#, c-format +msgid "Commit: %s\n" +msgstr "კომიტი: %s\n" + +#: app/flatpak-builtins-build-export.c:1167 +#, c-format +msgid "Metadata Total: %u\n" +msgstr "მეტამონაცემები სულ: %u\n" + +#: app/flatpak-builtins-build-export.c:1168 +#, c-format +msgid "Metadata Written: %u\n" +msgstr "ჩაწერილი მეტამონაცემები: %u\n" + +#: app/flatpak-builtins-build-export.c:1169 +#, c-format +msgid "Content Total: %u\n" +msgstr "შემცველობა სულ: %u\n" + +#: app/flatpak-builtins-build-export.c:1170 +#, c-format +msgid "Content Written: %u\n" +msgstr "ჩაწერილი შემცველობა: %u\n" + +#: app/flatpak-builtins-build-export.c:1171 +#, c-format +msgid "Content Bytes Written:" +msgstr "ჩაწერილი შემცველობის ბაიტები:" + +#: app/flatpak-builtins-build-finish.c:52 +msgid "Command to set" +msgstr "დასაყენებელი ბრძანება" + +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 +#: app/flatpak-main.c:208 +msgid "COMMAND" +msgstr "ბრძანება" + +#: app/flatpak-builtins-build-finish.c:53 +msgid "Flatpak version to require" +msgstr "Flatpak-ის აუცილებელი ვერსია" + +#: app/flatpak-builtins-build-finish.c:53 +msgid "MAJOR.MINOR.MICRO" +msgstr "MAJOR.MINOR.MICRO" + +#: app/flatpak-builtins-build-finish.c:54 +msgid "Don't process exports" +msgstr "გატანები არ დამუშავდება" + +#: app/flatpak-builtins-build-finish.c:55 +msgid "Extra data info" +msgstr "ინფორმაცია დამატებით მონაცემებზე" + +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 +msgid "Add extension point info" +msgstr "გაფართოების წერტილის ინფორმაციის დამატება" + +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 +msgid "NAME=VARIABLE[=VALUE]" +msgstr "სახელი=ცვლადი[=მნიშვნელობა]" + +#: app/flatpak-builtins-build-finish.c:57 +msgid "Remove extension point info" +msgstr "გაფართოების წერტილის ინფორმაციის წაშლა" + +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-main.c:181 +msgid "NAME" +msgstr "სახელი" + +#: app/flatpak-builtins-build-finish.c:58 +msgid "Set extension priority (only for extensions)" +msgstr "გაფართოების პრიორიტეტის დაყენება (მხოლოდ გაფართოებებისთვის)" + +#: app/flatpak-builtins-build-finish.c:58 +msgid "VALUE" +msgstr "მნიშვნელობა" + +#: app/flatpak-builtins-build-finish.c:59 +msgid "Change the sdk used for the app" +msgstr "აპისთვის გამოყენებული SDK-ის შეცვლა" + +#: app/flatpak-builtins-build-finish.c:59 +msgid "SDK" +msgstr "SDK" + +#: app/flatpak-builtins-build-finish.c:60 +msgid "Change the runtime used for the app" +msgstr "აპისთვის გამოყენებული გაშვების გარემოს შეცვლა" + +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-run.c:71 +msgid "RUNTIME" +msgstr "RUNTIME" + +#: app/flatpak-builtins-build-finish.c:61 +msgid "Set generic metadata option" +msgstr "ზოგადი მეტამონაცემების პარამეტრის დაყენება" + +#: app/flatpak-builtins-build-finish.c:61 +msgid "GROUP=KEY[=VALUE]" +msgstr "GROUP=KEY[=VALUE]" + +#: app/flatpak-builtins-build-finish.c:62 +msgid "Don't inherit permissions from runtime" +msgstr "გაშვების გარემოს წვდომების არ გამოყენება" + +#: app/flatpak-builtins-build-finish.c:155 +#, c-format +msgid "Not exporting %s, wrong extension\n" +msgstr "%s გატანილი არ იქნება. გაფართოება არასწორია\n" + +#: app/flatpak-builtins-build-finish.c:163 +#, c-format +msgid "Not exporting %s, non-allowed export filename\n" +msgstr "%s გატანილი არ იქნება. გატანის დაუშვებელი ფაილის სახელი\n" + +#: app/flatpak-builtins-build-finish.c:167 +#, c-format +msgid "Exporting %s\n" +msgstr "%s-ის გატანა\n" + +#: app/flatpak-builtins-build-finish.c:439 +#, c-format +msgid "More than one executable found\n" +msgstr "აღმოჩენილია ერთზე მეტი გამშვები ფაილი\n" + +#: app/flatpak-builtins-build-finish.c:450 +#, c-format +msgid "Using %s as command\n" +msgstr "%s გამოიყენება, როგორც ბრძანება\n" + +#: app/flatpak-builtins-build-finish.c:455 +#, c-format +msgid "No executable found\n" +msgstr "გამშვები ფაილი ვერ ვიპოვე\n" + +#: app/flatpak-builtins-build-finish.c:510 +#, c-format +msgid "Invalid --require-version argument: %s" +msgstr "არასწორი --require-version არგუმენტი: %s" + +#: app/flatpak-builtins-build-finish.c:542 +#, c-format +msgid "Too few elements in --extra-data argument %s" +msgstr "მეტისმეტად ცოტა ელემენტი --extra-data არგუმენტში %s" + +#: app/flatpak-builtins-build-finish.c:574 +#, c-format +msgid "" +"Too few elements in --metadata argument %s, format should be " +"GROUP=KEY[=VALUE]]" +msgstr "" +"მეტისმეტად ცოტა ელემენტი --metadata არგუმენტში %s. ფორმატი უნდა იყოს " +"GROUP=KEY[=VALUE]]" + +#: app/flatpak-builtins-build-finish.c:596 +#: app/flatpak-builtins-build-init.c:458 +#, c-format +msgid "" +"Too few elements in --extension argument %s, format should be " +"NAME=VAR[=VALUE]" +msgstr "" +"მეტისმეტად ცოტა ელემენტი --extension არგუმენტში %s, ფორმატი უნდა იყოს " +"NAME=VAR[=VALUE]" + +#: app/flatpak-builtins-build-finish.c:602 +#: app/flatpak-builtins-build-init.c:461 +#, c-format +msgid "Invalid extension name %s" +msgstr "გაფართოების არასწორი სახელი: %s" + +#: app/flatpak-builtins-build-finish.c:645 +msgid "DIRECTORY - Finalize a build directory" +msgstr "საქაღალდე - აგების საქაღალდის დასრულება" + +#: app/flatpak-builtins-build-finish.c:667 +#, c-format +msgid "Build directory %s not initialized" +msgstr "აგების საქაღალდე %s ინიციალიზებული არაა" + +#: app/flatpak-builtins-build-finish.c:688 +#, c-format +msgid "Build directory %s already finalized" +msgstr "აგების საქაღალდე %s უკვე ინიციალიზებულია" + +#: app/flatpak-builtins-build-finish.c:701 +#, c-format +msgid "Please review the exported files and the metadata\n" +msgstr "გადახედეთ გატანილ ფაილებს და მეტამონაცემებს\n" + +#: app/flatpak-builtins-build-import-bundle.c:46 +msgid "Override the ref used for the imported bundle" +msgstr "შემოტანილი პაკეტისთვის გამოყენებული მიმართვის გადაფარვა" + +#: app/flatpak-builtins-build-import-bundle.c:46 +msgid "REF" +msgstr "REF" + +#: app/flatpak-builtins-build-import-bundle.c:47 +msgid "Import oci image instead of flatpak bundle" +msgstr "Flatpak-ის პაკეტის მაგიერ OCI ასლის გატანა" + +#: app/flatpak-builtins-build-import-bundle.c:86 +#, c-format +msgid "Ref '%s' not found in registry" +msgstr "მიმართვა '%s' რეესტრში აღმოჩენილი არაა" + +#: app/flatpak-builtins-build-import-bundle.c:95 +msgid "Multiple images in registry, specify a ref with --ref" +msgstr "რეესტრი ერთზე მეტ ასლს შეიცვს. მიმართვა --ref-ით მიუთითეთ" + +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 +#, c-format +msgid "Importing %s (%s)\n" +msgstr "%s-ის (%s) შემოტანა\n" + +#: app/flatpak-builtins-build-import-bundle.c:181 +msgid "LOCATION FILENAME - Import a file bundle into a local repository" +msgstr "LOCATION FILENAME - ლოკალურ რეპოზიტორიაში ფაილის პაკეტის შემოტანა" + +#: app/flatpak-builtins-build-import-bundle.c:188 +msgid "LOCATION and FILENAME must be specified" +msgstr "LOCATION და FILENAME მითითება აუცილებელია" + +#: app/flatpak-builtins-build-init.c:53 app/flatpak-builtins-info.c:55 +#: app/flatpak-builtins-run.c:66 +msgid "Arch to use" +msgstr "გამოსაყენებელი არქიტექტურა" + +#: app/flatpak-builtins-build-init.c:54 +msgid "Initialize var from named runtime" +msgstr "ცვლადის ინიციალიზაცია მითითებული გაშვების გარემოდან" + +#: app/flatpak-builtins-build-init.c:55 +msgid "Initialize apps from named app" +msgstr "აპების ინიციალიზაცია მითითბული აპიდან" + +#: app/flatpak-builtins-build-init.c:55 +msgid "APP" +msgstr "APP" + +#: app/flatpak-builtins-build-init.c:56 +msgid "Specify version for --base" +msgstr "მიუთითეთ ვერსია --base პარამეტრისთვის" + +#: app/flatpak-builtins-build-init.c:56 app/flatpak-builtins-run.c:72 +msgid "VERSION" +msgstr "VERSION" + +#: app/flatpak-builtins-build-init.c:57 +msgid "Include this base extension" +msgstr "ამ საბაზისო გაფართოების ჩასმა" + +#: app/flatpak-builtins-build-init.c:57 app/flatpak-builtins-build-init.c:62 +msgid "EXTENSION" +msgstr "EXTENSION" + +#: app/flatpak-builtins-build-init.c:58 +msgid "Extension tag to use if building extension" +msgstr "გაფართოების აგების შემთხვევაში გამოყენებული გაფართოების ჭდე" + +#: app/flatpak-builtins-build-init.c:58 +msgid "EXTENSION_TAG" +msgstr "EXTENSION_TAG" + +#: app/flatpak-builtins-build-init.c:59 +msgid "Initialize /usr with a writable copy of the sdk" +msgstr "/usr-ის ინიციალიზაცია SDK-ის ჩაწერადი ასლით" + +#: app/flatpak-builtins-build-init.c:60 +msgid "Specify the build type (app, runtime, extension)" +msgstr "მიუთითეთ აგების ტიპი (app, runtime, extension)" + +#: app/flatpak-builtins-build-init.c:60 +msgid "TYPE" +msgstr "ტიპი" + +#: app/flatpak-builtins-build-init.c:61 +msgid "Add a tag" +msgstr "ჭდის დამატება" + +#: app/flatpak-builtins-build-init.c:61 +msgid "TAG" +msgstr "ჭდე" + +#: app/flatpak-builtins-build-init.c:62 +msgid "Include this sdk extension in /usr" +msgstr "ამ SDK-ის გაფართოების /usr-ში ჩასმა" + +#: app/flatpak-builtins-build-init.c:64 +msgid "Where to store sdk (defaults to 'usr')" +msgstr "სად შევინახო SDK (ნაგულისხმებია 'usr')" + +#: app/flatpak-builtins-build-init.c:65 +msgid "Re-initialize the sdk/var" +msgstr "SDK/var-ის თავიდან ინიციალიზაცია" + +#: app/flatpak-builtins-build-init.c:118 +#, c-format +msgid "Requested extension %s/%s/%s is only partially installed" +msgstr "მოთხოვნილი გაფართოება %s/%s/%s მხოლოდ ნაწილობრივაა დაყენებული" + +#: app/flatpak-builtins-build-init.c:147 +#, c-format +msgid "Requested extension %s/%s/%s not installed" +msgstr "მოთხოვნილი გაფართოება %s/%s/%s დაყენებული არაა" + +#: app/flatpak-builtins-build-init.c:207 +msgid "" +"DIRECTORY APPNAME SDK RUNTIME [BRANCH] - Initialize a directory for building" +msgstr "" +"საქაღალდე აპისსახელი SDK გაშვებისგარემო [ბრენჩი] - საქაღალდის ინიციალიზაცია " +"აგებისთვის" + +#: app/flatpak-builtins-build-init.c:214 +msgid "RUNTIME must be specified" +msgstr "გაშვებისგარემოს მითითება აუცილებელია" + +#: app/flatpak-builtins-build-init.c:235 +#, c-format +msgid "'%s' is not a valid build type name, use app, runtime or extension" +msgstr "" +"'%s' აგების სწორი ტიპი არაა. გამოიყენეთ ერთერთი app, runtime ან extension" + +#: app/flatpak-builtins-build-init.c:241 app/flatpak-builtins-override.c:79 +#, c-format +msgid "'%s' is not a valid application name: %s" +msgstr "'%s' აპლიკაციის სწორი სახელი არაა: %s" + +#: app/flatpak-builtins-build-init.c:295 +#, c-format +msgid "Build directory %s already initialized" +msgstr "აგების საქაღალდე %s უკვე ინიციალიზებულია" + +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 +msgid "Arch to install for" +msgstr "პროგრამები არქიტექტურისთვის" + +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 +#: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 +msgid "Look for runtime with the specified name" +msgstr "მითითებული სახელის მქონე გაშვების გარემოს მოძებნა" + +#: app/flatpak-builtins-build-sign.c:66 +msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" +msgstr "მდებარეობა [ID [ბრენჩი]] - აპლიკაციის ან გაშვების გარემოს ხელმოწერა" + +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 +msgid "LOCATION must be specified" +msgstr "მდებარეობის მითითება აუცილებელია" + +#: app/flatpak-builtins-build-sign.c:94 +msgid "No gpg key ids specified" +msgstr "GPG გასაღების ID-ები მითითებული არაა" + +#: app/flatpak-builtins-build-update-repo.c:68 +msgid "Redirect this repo to a new URL" +msgstr "ამ რეპოზიტორიის ახალ URL-ზე გადამისამართება" + +#: app/flatpak-builtins-build-update-repo.c:69 +msgid "A nice name to use for this repository" +msgstr "მისაღები სახელი ამ რეპოზიტორიისთვის" + +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 +msgid "TITLE" +msgstr "სათაური" + +#: app/flatpak-builtins-build-update-repo.c:70 +msgid "A one-line comment for this repository" +msgstr "ამ რეპოზიტორიის ერთხაზიანი კომენტარი" + +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 +msgid "COMMENT" +msgstr "კომენტარი" + +#: app/flatpak-builtins-build-update-repo.c:71 +msgid "A full-paragraph description for this repository" +msgstr "სრული პარაგრაფის სიგრძის მქონე კომენტარი ამ რეპოზიტორიისთვის" + +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 +msgid "DESCRIPTION" +msgstr "აღწერა" + +#: app/flatpak-builtins-build-update-repo.c:72 +msgid "URL for a website for this repository" +msgstr "ამ რეპოზიტორიის ვებსაიტის URL" + +#: app/flatpak-builtins-build-update-repo.c:73 +msgid "URL for an icon for this repository" +msgstr "ამ რეპოზიტორიის ხატულის URL" + +#: app/flatpak-builtins-build-update-repo.c:74 +msgid "Default branch to use for this repository" +msgstr "ამ რეპოზიტორიისთვის გამოსაყენებელი ნაგულისხმები ბრენჩი" + +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-run.c:69 +msgid "BRANCH" +msgstr "BRANCH" + +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 +msgid "COLLECTION-ID" +msgstr "COLLECTION-ID" + +#. Translators: A sideload is when you install from a local USB drive rather than the Internet. +#: app/flatpak-builtins-build-update-repo.c:77 +msgid "" +"Permanently deploy collection ID to client remote configurations, only for " +"sideload support" +msgstr "" +"კოლექციის ID-ების სამუდამო გაშლა კლიენტის დაშორებულ კონფიგურაციებზე, მხოლოდ " +"გვერდითი ჩატვირთვის მხარდაჭერისთვის" + +#: app/flatpak-builtins-build-update-repo.c:78 +msgid "Permanently deploy collection ID to client remote configurations" +msgstr "კოლექციის ID-ების სამუდამო გაშლა კლიენტის დაშორებულ კონფიგურაციებზე" + +#: app/flatpak-builtins-build-update-repo.c:79 +msgid "Name of authenticator for this repository" +msgstr "ამ რეპოზიტორიის ავთენტიკატორის სახელი" + +#: app/flatpak-builtins-build-update-repo.c:80 +msgid "Autoinstall authenticator for this repository" +msgstr "ამ რეპოზიტორიის ავთენტიკატორის ავტომატური დაყენება" + +#: app/flatpak-builtins-build-update-repo.c:81 +msgid "Don't autoinstall authenticator for this repository" +msgstr "ამ რეპოზიტორიისთვის ავთენტიკატორი ავტომატურად დაყენებული არ იქნება" + +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 +msgid "Authenticator option" +msgstr "ავთენტიკატორის პარამეტრი" + +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 +msgid "KEY=VALUE" +msgstr "KEY=VALUE" + +#: app/flatpak-builtins-build-update-repo.c:83 +msgid "Import new default GPG public key from FILE" +msgstr "ახალი ნაგულისხმები GPG საჯარო გასაღების შემოტანა მითითებული ფაილიდან" + +#: app/flatpak-builtins-build-update-repo.c:84 +msgid "GPG Key ID to sign the summary with" +msgstr "მიმოხილვის ხელმოწერა მითითებული ID-ის მქონე GPG გასაღებით" + +#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Generate delta files" +msgstr "დელტა ფაილების გენერაცია" + +#: app/flatpak-builtins-build-update-repo.c:88 +msgid "Don't update the appstream branch" +msgstr "Appstream ბრენჩის არ განახლდება" + +#: app/flatpak-builtins-build-update-repo.c:89 +msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" +msgstr "" +"დელტას შექმნისას გამოყენებული პარალელური დავალებების რაოდენობა " +"(ნაგულისხმები: ბირთვების რაოდენობა)" + +#: app/flatpak-builtins-build-update-repo.c:89 +msgid "NUM-JOBS" +msgstr "NUM-JOBS" + +#: app/flatpak-builtins-build-update-repo.c:90 +msgid "Don't create deltas matching refs" +msgstr "დელტები, რომლებიც მიმართვებს ემთხვევა, არ შეიქმნება" + +#: app/flatpak-builtins-build-update-repo.c:91 +msgid "Prune unused objects" +msgstr "გამოუყენებელი ობიექტების წაკვეთა" + +#: app/flatpak-builtins-build-update-repo.c:92 +msgid "Prune but don't actually remove anything" +msgstr "წაკვეთა, მაგრამ რეალურად არაფრის წაშლა" + +#: app/flatpak-builtins-build-update-repo.c:93 +msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" +msgstr "" +"თითოეული კომიტით მშობლებში მხოლოდ მითითებული სიღრმით ჩასვლა (ნაგულისხმები: " +"-1 = უსასრულო)" + +#: app/flatpak-builtins-build-update-repo.c:93 +msgid "DEPTH" +msgstr "DEPTH" + +#: app/flatpak-builtins-build-update-repo.c:223 +#, c-format +msgid "Generating delta: %s (%.10s)\n" +msgstr "დეტალს გენერაცია: %s (%.10s)\n" + +#: app/flatpak-builtins-build-update-repo.c:225 +#, c-format +msgid "Generating delta: %s (%.10s-%.10s)\n" +msgstr "დელტას გენერაცია: %s (%.10s-%.10s)\n" + +#: app/flatpak-builtins-build-update-repo.c:233 +#, c-format +msgid "Failed to generate delta %s (%.10s): " +msgstr "დელტა %s (%.10s) არ დაგენერირდება: " + +#: app/flatpak-builtins-build-update-repo.c:236 +#, c-format +msgid "Failed to generate delta %s (%.10s-%.10s): " +msgstr "დელტას %s (%.10s-%.10s) გენერაციის შეცდომა: " + +#: app/flatpak-builtins-build-update-repo.c:492 +msgid "LOCATION - Update repository metadata" +msgstr "მდებარეობა - რეპოზიტორიის მეტამონაცემის განახლება" + +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format +msgid "Updating appstream branch\n" +msgstr "Appstream ბრენჩის განახლება\n" + +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format +msgid "Updating summary\n" +msgstr "მიმოხილვის განახლება\n" + +#: app/flatpak-builtins-build-update-repo.c:661 +#, c-format +msgid "Total objects: %u\n" +msgstr "სულ ობიექტები: %u\n" + +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format +msgid "No unreachable objects\n" +msgstr "მიუწვდომელი დოკუმენტების გარეშე\n" + +#: app/flatpak-builtins-build-update-repo.c:665 +#, c-format +msgid "Deleted %u objects, %s freed\n" +msgstr "წაიშალა %u ობიექტი. გათავისუფლდა %s\n" + +#: app/flatpak-builtins-config.c:41 +msgid "List configuration keys and values" +msgstr "კონფიგურაციის პარამეტრების და მათი მნიშვნელობების გამოტანა" + +#: app/flatpak-builtins-config.c:42 +msgid "Get configuration for KEY" +msgstr "პარამეტრის კონფიგურაციის მიღება" + +#: app/flatpak-builtins-config.c:43 +msgid "Set configuration for KEY to VALUE" +msgstr "კონფიგურაციის პარამეტრის მითითებულ მნიშვნელობაზე დაყენება" + +#: app/flatpak-builtins-config.c:44 +msgid "Unset configuration for KEY" +msgstr "პარამეტრის მნიშვნელობის წაშლა" + +#: app/flatpak-builtins-config.c:149 +#, c-format +msgid "'%s' does not look like a language/locale code" +msgstr "'%s' ლოკალის/ენის კოდს არ წააგავს" + +#: app/flatpak-builtins-config.c:172 +#, c-format +msgid "'%s' does not look like a language code" +msgstr "'%s' ენის კოდს არ წააგავს" + +#: app/flatpak-builtins-config.c:226 +#, c-format +msgid "Unknown configure key '%s'" +msgstr "უცნობი კონფიგურაციის პარამეტრი '%s'" + +#: app/flatpak-builtins-config.c:248 +msgid "Too many arguments for --list" +msgstr "მეტისმეტად ბევრი არგუმენტი პარამეტრისთვის --list" + +#: app/flatpak-builtins-config.c:278 app/flatpak-builtins-config.c:326 +msgid "You must specify KEY" +msgstr "გასაღების მითითება აუცილებელია" + +#: app/flatpak-builtins-config.c:280 +msgid "Too many arguments for --get" +msgstr "მეტისმეტად ბევრი არგუმენტი პარამეტრისთვის --get" + +#: app/flatpak-builtins-config.c:302 +msgid "You must specify KEY and VALUE" +msgstr "პარამეტრის და მნიშვნელობის მითითება აუცილებელია" + +#: app/flatpak-builtins-config.c:304 +msgid "Too many arguments for --set" +msgstr "მეტისმეტად ბევრი არგუმენტი პარამეტრისთვის --set" + +#: app/flatpak-builtins-config.c:328 +msgid "Too many arguments for --unset" +msgstr "მეტისმეტად ბევრი არგუმენტი პარამეტრისთვის --unset" + +#: app/flatpak-builtins-config.c:347 +msgid "[KEY [VALUE]] - Manage configuration" +msgstr "[პარამეტრი [მნიშვნელობა]] - კონფიგურაციის მართვა" + +#: app/flatpak-builtins-config.c:358 +msgid "Can only use one of --list, --get, --set or --unset" +msgstr "" +"პარამეტრებიდან --list, --get, --set და --unset მხოლოდ ერთ-ერთის გამოყენება " +"შეგიძლიათ" + +#: app/flatpak-builtins-config.c:372 +msgid "Must specify one of --list, --get, --set or --unset" +msgstr "" +"პარამეტრებიდან --list, --get, --set და --unset ერთ-ერთის მითითება აუცილებელია" + +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-update.c:65 +msgid "Look for app with the specified name" +msgstr "მითითებული სახელის მქონე აპის მოძებნა" + +#: app/flatpak-builtins-create-usb.c:46 +msgid "Arch to copy" +msgstr "დასაკოპირებელი არქიტექტურა" + +#: app/flatpak-builtins-create-usb.c:47 +msgid "DEST" +msgstr "DEST" + +#: app/flatpak-builtins-create-usb.c:49 +msgid "Allow partial commits in the created repo" +msgstr "შექმნილ რეპოზიტორიაში ნაწილობრივი კომიტების დაშვება" + +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 +#, c-format +msgid "" +"Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " +"suppress this message.\n" +msgstr "" +"გაფრთხილება: შესაბამისი მიმართვა '%s' ნაწილობრივაა დაყენებული. ამ " +"შეტყობინების მოსაცილებლად გამოიყენეთ პარამეტრი --allow-partial.\n" + +#: app/flatpak-builtins-create-usb.c:158 +#, c-format +msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" +msgstr "" +"გაფრთხილება: შესაბამისი მიმართვის '%s' გამოტოვება, რადგან ის დაყენებული " +"არაა.\n" + +#: app/flatpak-builtins-create-usb.c:175 +#, c-format +msgid "" +"Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " +"collection ID set.\n" +msgstr "" +"გაფრთხილება: შესაბამისი მიმართვის '%s' გამოტოვება, რადგან მის დაშორებულს " +"'%s' კოლექციის ID დაყენებული არ აქვს.\n" + +#: app/flatpak-builtins-create-usb.c:187 +#, c-format +msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" +msgstr "" +"გაფრთხილება. შესაბამისი მიმართვის '%s' გამოტოვება, რადგან მას დამატებითი " +"მონაცემები გააჩნია.\n" + +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 +#, c-format +msgid "" +"Remote ‘%s’ does not have a collection ID set, which is required for P2P " +"distribution of ‘%s’." +msgstr "" +"დაშორებულს '%s' კოლექციის ID დაყენებული არ აქვს. ეს კი აუცილებელია '%s'ის " +"P2P დისტრიბუციისთვის." + +#: app/flatpak-builtins-create-usb.c:272 +#, c-format +msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" +msgstr "" +"გაფრთხილება. შესაბამისი მიმართვის '%s' ('%s'-ის გაშვები გარემო) გამოტოვება, " +"რადგან მას დამატებითი მონაცემები გააჩნია.\n" + +#: app/flatpak-builtins-create-usb.c:484 +msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" +msgstr "" +"მიმაგრების-ბილიკი [მიმართვა...] - აპების ან გაშვების გარემოების კოპირება " +"მოხსნად მედიაზე" + +#: app/flatpak-builtins-create-usb.c:493 +msgid "MOUNT-PATH and REF must be specified" +msgstr "მიმაგრების-წერტილის და მიმართვის მითითება აუცილებელია" + +#: app/flatpak-builtins-create-usb.c:607 +#, c-format +msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." +msgstr "" +"მიმართვა '%s' მრავალ დაყენებაშია აღმოჩენილი: %s. აუცილებელია, მხოლოდ ერთი " +"მიუთითოთ." + +#: app/flatpak-builtins-create-usb.c:620 +#, c-format +msgid "Refs must all be in the same installation (found in %s and %s)." +msgstr "მიმართვები ყველა იგივე დაყენებაში უნდა იყოს (ნაპოვნია %s-ში და %s-ში)." + +#: app/flatpak-builtins-create-usb.c:670 +#, c-format +msgid "" +"Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " +"this message.\n" +msgstr "" +"გაფრთხილება: მიმართვა '%s' ნაწილობრივაა დაყენებული. ამ შეტყობინების " +"მოსაცილებლად გამოიყენეთ პარამეტრი --allow-partial.\n" + +#: app/flatpak-builtins-create-usb.c:681 +#, c-format +msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" +msgstr "" +"დაყენებული მიმართვა '%s' დამატებითი მონაცემია და ინტერნეტის გარეშე " +"დისტრიბუციას ვერ უზამთ" + +#: app/flatpak-builtins-create-usb.c:721 +#, c-format +msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" +msgstr "" +"გაფრთხილება: რეპოზიტორიის მეტამონაცემების განახლების შეცდომა დაშორებულისთვის " +"'%s': %s\n" + +#: app/flatpak-builtins-create-usb.c:751 +#, c-format +msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" +msgstr "" +"გაფრთხილება: Appstream-ის მონაცემების განახლების შეცდომა დაშორებულისთვის " +"'%s' არქიტექტურით '%s': %s\n" + +#. Print a warning if both appstream and appstream2 are missing +#: app/flatpak-builtins-create-usb.c:784 +#, c-format +msgid "" +"Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" +msgstr "" +"გაფრთხილება: Appstream-ის მონაცემების განახლების შეცდომა დაშორებულისთვის " +"'%s' არქიტექტურით '%s': %s; %s\n" + +#. Appstream2 is only for efficiency, so just print a debug message +#: app/flatpak-builtins-create-usb.c:790 +#, c-format +msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" +msgstr "" +"Appstream2-ის მონაცემები დაშორებულისთვის '%s' არქიტექტურისთვის '%s ვერ " +"ვიპოვე: %s\n" + +#: app/flatpak-builtins-document-export.c:62 +msgid "Create a unique document reference" +msgstr "უნიკალური დოკუმენტის მიმართვის შექმნა" + +#: app/flatpak-builtins-document-export.c:63 +msgid "Make the document transient for the current session" +msgstr "დოკუმენტის დროებითად გამოცხადება მიმდინარე სესიისთვის" + +#: app/flatpak-builtins-document-export.c:64 +msgid "Don't require the file to exist already" +msgstr "ფაილის არსებობა მოთხოვნილი არ იქნება" + +#: app/flatpak-builtins-document-export.c:65 +msgid "Give the app read permissions" +msgstr "აპისთვის კითხვის უფლების მიცემა" + +#: app/flatpak-builtins-document-export.c:66 +msgid "Give the app write permissions" +msgstr "აპისთვის ჩაწერის უფლების მიცემა" + +#: app/flatpak-builtins-document-export.c:67 +msgid "Give the app delete permissions" +msgstr "აპისთვის წაშლის უფლების მიცემა" + +#: app/flatpak-builtins-document-export.c:68 +msgid "Give the app permissions to grant further permissions" +msgstr "აპისთვის წვდომების მინიჭების უფლების მიცემა" + +#: app/flatpak-builtins-document-export.c:69 +msgid "Revoke read permissions of the app" +msgstr "აპიდან წაკითხვის უფლების მოცილება" + +#: app/flatpak-builtins-document-export.c:70 +msgid "Revoke write permissions of the app" +msgstr "აპიდან ჩაწერის უფლების მოცილება" + +#: app/flatpak-builtins-document-export.c:71 +msgid "Revoke delete permissions of the app" +msgstr "აპიდან წაშლის უფლების მოცილება" + +#: app/flatpak-builtins-document-export.c:72 +msgid "Revoke the permission to grant further permissions" +msgstr "აპისთვის წვდომების მინჭების უფლების ჩამორთმევა" + +#: app/flatpak-builtins-document-export.c:73 +msgid "Add permissions for this app" +msgstr "ამ აპისთვის უფლებების დამატება" + +#: app/flatpak-builtins-document-export.c:73 +msgid "APPID" +msgstr "აპისID" + +#: app/flatpak-builtins-document-export.c:100 +msgid "FILE - Export a file to apps" +msgstr "ფაილი - ფაილის გატანა აპებამდე" + +#: app/flatpak-builtins-document-export.c:109 +#: app/flatpak-builtins-document-info.c:72 +#: app/flatpak-builtins-document-unexport.c:67 +msgid "FILE must be specified" +msgstr "ფაილი აუცილებლად უნდა მიუთითოთ" + +#: app/flatpak-builtins-document-info.c:63 +msgid "FILE - Get information about an exported file" +msgstr "ფაილი - ინფორმაციის მიღება გატანილი ფაილის შესახებ" + +#: app/flatpak-builtins-document-info.c:100 +#: app/flatpak-builtins-document-unexport.c:92 +#, c-format +msgid "Not exported\n" +msgstr "გატანილი არაა\n" + +#: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 +#: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-search.c:37 +msgid "What information to show" +msgstr "რა ინფორმაცია ვაჩვენო" + +#: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 +#: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-search.c:37 +msgid "FIELD,…" +msgstr "FIELD,…" + +#: app/flatpak-builtins-document-list.c:47 +msgid "Show the document ID" +msgstr "დოკუმენტის ID-ს ჩვენება" + +#: app/flatpak-builtins-document-list.c:48 +msgid "Path" +msgstr "მისამართი" + +#: app/flatpak-builtins-document-list.c:48 +#: app/flatpak-builtins-document-list.c:49 +msgid "Show the document path" +msgstr "დოკუმენტის ბილიკის ჩვენება" + +#: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 +#: app/flatpak-builtins-remote-ls.c:72 +msgid "Origin" +msgstr "საწყისი" + +#: app/flatpak-builtins-document-list.c:50 app/flatpak-builtins-history.c:60 +#: app/flatpak-builtins-ps.c:50 +msgid "Application" +msgstr "აპლიკაცია" + +#: app/flatpak-builtins-document-list.c:50 +msgid "Show applications with permission" +msgstr "წვდომის მქონე აპლიკაციების ჩვენება" + +#: app/flatpak-builtins-document-list.c:51 +#: app/flatpak-builtins-permission-list.c:179 +#: app/flatpak-builtins-permission-show.c:142 +msgid "Permissions" +msgstr "წვდომები" + +#: app/flatpak-builtins-document-list.c:51 +msgid "Show permissions for applications" +msgstr "აპლიკაციის წვდომების ჩვენება" + +#: app/flatpak-builtins-document-list.c:171 +msgid "[APPID] - List exported files" +msgstr "[APPID] - გატანილი ფაილების სია" + +#: app/flatpak-builtins-document-unexport.c:43 +msgid "Specify the document ID" +msgstr "მიუთითეთ დოკუმენტის ID" + +#: app/flatpak-builtins-document-unexport.c:58 +msgid "FILE - Unexport a file to apps" +msgstr "ფაილი - ფაილის აპლიკაციებისთვის გატანის გაუქმება" + +#: app/flatpak-builtins-enter.c:88 +msgid "INSTANCE COMMAND [ARGUMENT…] - Run a command inside a running sandbox" +msgstr "" +"გაშვებულიასლი ბრძანება [არგუმენტი…] - გაშვებული სენდბოქსის შიგნით ბრძანების " +"შესრულება" + +#: app/flatpak-builtins-enter.c:111 +msgid "INSTANCE and COMMAND must be specified" +msgstr "გაშვებულიასლის და ბრძანების მითითება აუცილებელია" + +#: app/flatpak-builtins-enter.c:138 +#, c-format +msgid "%s is neither a pid nor an application or instance ID" +msgstr "%s არც pid-ია, არც აპლიკაცია დაარც გაშვებული ასლის ID" + +#: app/flatpak-builtins-enter.c:144 +msgid "entering not supported (need unprivileged user namespaces, or sudo -E)" +msgstr "" +"შესვლა მხარდაჭერილი არაა (საჭიროა არაპრივილეგირებული მომხმარებლის სახელების " +"სივრცეები ან sudo -E)" + +#: app/flatpak-builtins-enter.c:145 +#, c-format +msgid "No such pid %s" +msgstr "PID %s არ არსებობს" + +#: app/flatpak-builtins-enter.c:158 +msgid "Can't read cwd" +msgstr "CWD-ის წაკითხვა შეუძლებელია" + +#: app/flatpak-builtins-enter.c:163 +msgid "Can't read root" +msgstr "ROOT-ის წაკითხვა შეუძლებელია" + +#: app/flatpak-builtins-enter.c:191 +#, c-format +msgid "Invalid %s namespace for pid %d" +msgstr "არასწორი %s სახელების სივრცე PID-სთვის %d" + +#: app/flatpak-builtins-enter.c:202 +#, c-format +msgid "Invalid %s namespace for self" +msgstr "არასწორი %s სახელების სივრცე იგივე პროცესისთვის" + +#: app/flatpak-builtins-enter.c:216 +#, c-format +msgid "Can't open %s namespace: %s" +msgstr "%s სახელების სივრცის გახსნის შეცდომა: %s" + +#: app/flatpak-builtins-enter.c:226 +msgid "entering not supported (need unprivileged user namespaces)" +msgstr "" +"შესვლა მხარდაჭერილი არაა (საჭიროა არაპრივილეგირებული მომხმარებლის სახელების " +"სივრცეები)" + +#: app/flatpak-builtins-enter.c:227 +#, c-format +msgid "Can't enter %s namespace: %s" +msgstr "%s სახელების სივრცეში შესვლის შეცდომა: %s" + +#: app/flatpak-builtins-enter.c:234 +msgid "Can't chdir" +msgstr "Chdir-ის შეცდომა" + +#: app/flatpak-builtins-enter.c:237 +msgid "Can't chroot" +msgstr "Chroot-ის შეცდომა" + +#: app/flatpak-builtins-enter.c:240 +msgid "Can't switch gid" +msgstr "GID-ის გადართვის შეცდომა" + +#: app/flatpak-builtins-enter.c:243 +msgid "Can't switch uid" +msgstr "UID-ის გადართვის შეცდომა" + +#: app/flatpak-builtins-history.c:49 +msgid "Only show changes after TIME" +msgstr "მხოლოდ მითითებული დროის შემდეგ მომხდარი ცვლილებების ჩვენება" + +#: app/flatpak-builtins-history.c:49 app/flatpak-builtins-history.c:50 +msgid "TIME" +msgstr "დრო" + +#: app/flatpak-builtins-history.c:50 +msgid "Only show changes before TIME" +msgstr "მხოლოდ მითითებულ დრომდე მომხდარი ცვლილებების ჩვენება" + +#: app/flatpak-builtins-history.c:51 +msgid "Show newest entries first" +msgstr "ჯერ უახლესი ჩანაწერების ჩვენება" + +#: app/flatpak-builtins-history.c:57 +msgid "Time" +msgstr "დრო" + +#: app/flatpak-builtins-history.c:57 +msgid "Show when the change happened" +msgstr "ჩვენება, როდის მოხდა ცვლილება" + +#: app/flatpak-builtins-history.c:58 +msgid "Change" +msgstr "შეცვლა" + +#: app/flatpak-builtins-history.c:58 +msgid "Show the kind of change" +msgstr "ცვლილების ტიპის ჩვენება" + +#: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 +msgid "Ref" +msgstr "ბმა" + +#: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 +#: app/flatpak-builtins-remote-ls.c:73 +msgid "Show the ref" +msgstr "მიმართვის ჩვენება" + +#: app/flatpak-builtins-history.c:60 +msgid "Show the application/runtime ID" +msgstr "აპლიკაციის/გაშვების გარემოს ID-ის ჩვენება" + +#: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 +msgid "Arch" +msgstr "არქიტექტურა" + +#: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +msgid "Show the architecture" +msgstr "არქიტექტურის ჩვენება" + +#: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 +msgid "Branch" +msgstr "ბრენჩი" + +#: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 +#: app/flatpak-builtins-remote-ls.c:70 +msgid "Show the branch" +msgstr "ბრენჩის ჩვენება" + +#: app/flatpak-builtins-history.c:63 app/flatpak-builtins-list.c:65 +msgid "Installation" +msgstr "დაყენება" + +#: app/flatpak-builtins-history.c:63 +msgid "Show the affected installation" +msgstr "მოყოლილი დაყენებების ჩვენება" + +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 +msgid "Remote" +msgstr "დაშორებული" + +#: app/flatpak-builtins-history.c:64 +msgid "Show the remote" +msgstr "დაშორებულის ჩვენება" + +#: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 +#: app/flatpak-builtins-remote-ls.c:74 +msgid "Commit" +msgstr "გადაცემა" + +#: app/flatpak-builtins-history.c:65 +msgid "Show the current commit" +msgstr "მიმდინარე კომიტის ჩვენება" + +#: app/flatpak-builtins-history.c:66 +msgid "Old Commit" +msgstr "ძველი კომიტი" + +#: app/flatpak-builtins-history.c:66 +msgid "Show the previous commit" +msgstr "წინა კომიტის ჩვენება" + +#: app/flatpak-builtins-history.c:67 +msgid "Show the remote URL" +msgstr "დაშორებული URL-ის ჩვენება" + +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 +msgid "User" +msgstr "მომხმარებელი" + +#: app/flatpak-builtins-history.c:68 +msgid "Show the user doing the change" +msgstr "ცვლილების შემტანი მომხმარებლის ჩვენება" + +#: app/flatpak-builtins-history.c:69 +msgid "Tool" +msgstr "ხელსაწყო" + +#: app/flatpak-builtins-history.c:69 +msgid "Show the tool that was used" +msgstr "გამოყენებული პროგრამის ჩვენება" + +#: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 +msgid "Version" +msgstr "ვერსია" + +#: app/flatpak-builtins-history.c:70 +msgid "Show the Flatpak version" +msgstr "Flatpak-ის ვერსიის ჩვენება" + +#: app/flatpak-builtins-history.c:89 +#, c-format +msgid "Failed to get journal data (%s): %s" +msgstr "ჟურნალის მონაცემების (%s) მიღების შეცდომა: %s" + +#: app/flatpak-builtins-history.c:144 +#, c-format +msgid "Failed to open journal: %s" +msgstr "ჟურნალის გახსნის შეცდომა: %s" + +#: app/flatpak-builtins-history.c:151 +#, c-format +msgid "Failed to add match to journal: %s" +msgstr "დამთხვევის ჟურნალში ჩამატების შეცდომა: %s" + +#: app/flatpak-builtins-history.c:469 +msgid " - Show history" +msgstr " - ისტორიის ჩვენება" + +#: app/flatpak-builtins-history.c:488 +#, c-format +msgid "Failed to parse the --since option" +msgstr "შეცდომა --since პარამეტრის დამუშავებისას" + +#: app/flatpak-builtins-history.c:499 +#, c-format +msgid "Failed to parse the --until option" +msgstr "შეცდომა --until პარამეტრის დამუშავებისას" + +#: app/flatpak-builtins-info.c:56 +msgid "Show user installations" +msgstr "მომხმარებლის დაყენებული პროგრამების ჩვენება" + +#: app/flatpak-builtins-info.c:57 +msgid "Show system-wide installations" +msgstr "მთელი-სისტემისთვის დაყენებული პროგრამების ჩვენება" + +#: app/flatpak-builtins-info.c:58 +msgid "Show specific system-wide installations" +msgstr "მითითებული მთელი-სისტემისთვის დაყენებული პროგრამების ჩვენება" + +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 +msgid "Show ref" +msgstr "მიმართვის ჩვენება" + +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 +msgid "Show commit" +msgstr "კომიტის ჩვენება" + +#: app/flatpak-builtins-info.c:61 +msgid "Show origin" +msgstr "საწყისის ჩვენება" + +#: app/flatpak-builtins-info.c:62 +msgid "Show size" +msgstr "ზომის ჩვენება" + +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 +msgid "Show metadata" +msgstr "მეტამონაცემების ჩვენება" + +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 +msgid "Show runtime" +msgstr "გაშვების გარემოს ჩვენება" + +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 +msgid "Show sdk" +msgstr "SDK-ის ჩვენება" + +#: app/flatpak-builtins-info.c:66 +msgid "Show permissions" +msgstr "წვდომების ჩვენება" + +#: app/flatpak-builtins-info.c:67 +msgid "Query file access" +msgstr "ფაილის წვდომების გამოთხოვა" + +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 +#: app/flatpak-builtins-update.c:71 +msgid "PATH" +msgstr "PATH" + +#: app/flatpak-builtins-info.c:68 +msgid "Show extensions" +msgstr "გაფართოებების ჩვენება" + +#: app/flatpak-builtins-info.c:69 +msgid "Show location" +msgstr "მდებარეობის ჩვენება" + +#: app/flatpak-builtins-info.c:116 +msgid "NAME [BRANCH] - Get info about an installed app or runtime" +msgstr "" +"სახელი [ბრენჩი] - დაყენებული აპის ან გაშვების გარემოს შესახებ ინფორმაციის " +"მიღება" + +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 +#: app/flatpak-builtins-remote-delete.c:63 +msgid "NAME must be specified" +msgstr "სახელის მითითება აუცილებელია" + +#: app/flatpak-builtins-info.c:196 +msgid "ref not present in origin" +msgstr "საწყისში მიმართვა არ სებობს" + +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format +msgid "Warning: Commit has no flatpak metadata\n" +msgstr "გართხილება: კომიტს flatpak-ის მეტამონაცემების არ გააჩნია\n" + +#: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 +msgid "ID:" +msgstr "ID:" + +#: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 +msgid "Ref:" +msgstr "მიმართვა:" + +#: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 +msgid "Arch:" +msgstr "არქიტექტურა:" + +#: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 +msgid "Branch:" +msgstr "ბრენჩი:" + +#: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 +msgid "Version:" +msgstr "ვერსია:" + +#: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 +msgid "License:" +msgstr "ლიცენზია:" + +#: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 +msgid "Collection:" +msgstr "კოლექცია:" + +#: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 +msgid "Installation:" +msgstr "დაყენება:" + +#: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 +msgid "Installed:" +msgstr "დაყენებულია:" + +#: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 +msgid "Runtime:" +msgstr "ხანგრძლივობა:" + +#: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 +msgid "Sdk:" +msgstr "Sdk:" + +#: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 +msgid "Date:" +msgstr "თარიღი:" + +#: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 +msgid "Subject:" +msgstr "სათაური:" + +#: app/flatpak-builtins-info.c:240 app/flatpak-builtins-info.c:295 +msgid "Active commit:" +msgstr "აქტიური კომიტი:" + +#: app/flatpak-builtins-info.c:241 app/flatpak-builtins-info.c:298 +msgid "Latest commit:" +msgstr "უახლესი კომიტი:" + +#: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 +msgid "Commit:" +msgstr "კომიტი:" + +#: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 +msgid "Parent:" +msgstr "მშობელი:" + +#: app/flatpak-builtins-info.c:248 app/flatpak-builtins-info.c:321 +msgid "Alt-id:" +msgstr "ალტ-ID:" + +#: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 +msgid "End-of-life:" +msgstr "მხარდაჭერა-დასრულებული:" + +#: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 +msgid "End-of-life-rebase:" +msgstr "მხარდაჭერა-დასრულებული-ჩანაცვლება:" + +#: app/flatpak-builtins-info.c:254 app/flatpak-builtins-info.c:317 +msgid "Subdirectories:" +msgstr "ქვესაქაღალდეები:" + +#: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 +#: app/flatpak-builtins-info.c:512 +msgid "Extension:" +msgstr "გაფართოება:" + +#: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 +#: app/flatpak-builtins-info.c:514 +msgid "Origin:" +msgstr "საწყისი:" + +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 +msgid "Subpaths:" +msgstr "ქვებილიკები:" + +#: app/flatpak-builtins-info.c:478 +msgid "unmaintained" +msgstr "მიუხედავი" + +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 +msgid "unknown" +msgstr "უცნობია" + +#: app/flatpak-builtins-install.c:67 +msgid "Don't pull, only install from local cache" +msgstr "პულის გარეშე, მხოლოდ ლოკალური კეშიდან დაყენება" + +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 +msgid "Don't deploy, only download to local cache" +msgstr "გაშლის გარეშე, მხოლოდ ლოკალურ კეშში გადმოწერა" + +#: app/flatpak-builtins-install.c:69 +msgid "Don't install related refs" +msgstr "დაკავშირებული მიმართვები დაყენებული არ იქნება" + +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 +msgid "Don't verify/install runtime dependencies" +msgstr "გაშვების გარემოს დამოკიდებულებების შემოწმება/დაყენება არ მოხდება" + +#: app/flatpak-builtins-install.c:71 +msgid "Don't automatically pin explicit installs" +msgstr "ხელით მითითებული დაყენებები ავტომატურად მიმაგრებული არ იქნება" + +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 +msgid "Don't use static deltas" +msgstr "სტატიკური დელტები გამოყენებული არ იქნება" + +#: app/flatpak-builtins-install.c:75 +msgid "Additionally install the SDK used to build the given refs" +msgstr "დამატებით მოცემული მითითებების აგებისას გამოყენებული SDK-ის დაყენება" + +#: app/flatpak-builtins-install.c:76 +msgid "" +"Additionally install the debug info for the given refs and their dependencies" +msgstr "" +"დამატებით მოცემული მითითებებისა და მისი დამოკიდებულებების გამართვის " +"ინფორმაციის დაყენება" + +#: app/flatpak-builtins-install.c:77 +msgid "Assume LOCATION is a .flatpak single-file bundle" +msgstr "მითითებული მდებარეობის .flatpak ერთფაილიან პაკეტად ჩათვლა" + +#: app/flatpak-builtins-install.c:78 +msgid "Assume LOCATION is a .flatpakref application description" +msgstr "მითითებული მდებარეობის .flatpakref აპლიკაციის აღწერად ჩათვლა" + +#: app/flatpak-builtins-install.c:79 +msgid "Check bundle signatures with GPG key from FILE (- for stdin)" +msgstr "" +"პაკეტის ხელმოწერების მითითებული ფაილიდან წაკითხული GPG გასაღებებით შემოწმება " +"(- stdin-სთვის)" + +#: app/flatpak-builtins-install.c:80 +msgid "Only install this subpath" +msgstr "მხოლოდ ამ ქვებილიკის დაყენება" + +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-update.c:68 +msgid "Automatically answer yes for all questions" +msgstr "ყველა კითხვისთვის დადებითი პასუხის ავტომატური გაცემა" + +#: app/flatpak-builtins-install.c:82 +msgid "Uninstall first if already installed" +msgstr "ჯერ წაშლა, თუ უკვე დაყენებულია" + +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-update.c:69 +msgid "Produce minimal output and don't ask questions" +msgstr "მინიმალური ინფორმაციის გამოტანა და კითხვების არ-დასმა" + +#: app/flatpak-builtins-install.c:84 +msgid "Update install if already installed" +msgstr "განახლება, თუ პაკეტი უკვე დაყენებულია" + +#. Translators: A sideload is when you install from a local USB drive rather than the Internet. +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 +msgid "Use this local repo for sideloads" +msgstr "გვერდით ჩატვირთვებისთვის ამ ლოკალური რეპოზიტორიის გამოყენება" + +#: app/flatpak-builtins-install.c:145 +msgid "Bundle filename must be specified" +msgstr "პაკეტის ფაილის სახელის მითითება აუცილებელია" + +#: app/flatpak-builtins-install.c:155 +msgid "Remote bundles are not supported" +msgstr "დაშორებული პაკეტები მხარდაჭერილი არაა" + +#: app/flatpak-builtins-install.c:214 +msgid "Filename or uri must be specified" +msgstr "ფაილის სახელის ან URI-ის მითითება აუცილებელია" + +#: app/flatpak-builtins-install.c:296 +msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" +msgstr "" +"[მდებარეობა/დაშორებული] [მიმართვა…] - აპლიკაციის ან გაშვების გარემოს დაყენება" + +#: app/flatpak-builtins-install.c:322 +msgid "At least one REF must be specified" +msgstr "საჭიროა სულ ცოტა, ერთი მიმართვის მითთება" + +#: app/flatpak-builtins-install.c:336 +#, c-format +msgid "Looking for matches…\n" +msgstr "დამთხვევების ძებნა…\n" + +#: app/flatpak-builtins-install.c:457 +#, c-format +msgid "No remote refs found for ‘%s’" +msgstr "'%s'-სთვის დაშორებული მიმართვა ვერ ვიპოვე" + +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 +#, c-format +msgid "Invalid branch %s: %s" +msgstr "არასწორი ბრენჩი %s: %s" + +#: app/flatpak-builtins-install.c:566 +#, c-format +msgid "Nothing matches %s in local repository for remote %s" +msgstr "%s-ს ლოკალურ რეპოზიტორიაში დაშორებული %s-სთვის არაფერი ემთხვევა" + +#: app/flatpak-builtins-install.c:568 +#, c-format +msgid "Nothing matches %s in remote %s" +msgstr "%s-ს დაშორებულ %s-ში არაფერი ემთხვევა" + +#: app/flatpak-builtins-install.c:589 +#, c-format +msgid "Skipping: %s\n" +msgstr "გამოტოვება: %s\n" + +#: app/flatpak-builtins-kill.c:68 +#, c-format +msgid "%s is not running" +msgstr "%s გაშვებული არაა" + +#: app/flatpak-builtins-kill.c:82 +msgid "INSTANCE - Stop a running application" +msgstr "გაშვებულიასლი - გაშვებული აპლიკაციის გაჩერება" + +#: app/flatpak-builtins-kill.c:90 app/flatpak-builtins-ps.c:254 +msgid "Extra arguments given" +msgstr "მიწოდებული დამატებითი არგუმენტები" + +#: app/flatpak-builtins-kill.c:96 +msgid "Must specify the app to kill" +msgstr "მოსაკლავი აპლიკაციის მითითება აუცილებელია" + +#: app/flatpak-builtins-list.c:46 +msgid "Show extra information" +msgstr "დამატებითი ინფორმაციის ჩვენება" + +#: app/flatpak-builtins-list.c:47 +msgid "List installed runtimes" +msgstr "დაყენებული გაშვების გარემოების ჩვენება" + +#: app/flatpak-builtins-list.c:48 +msgid "List installed applications" +msgstr "დაყენებული აპლიკაციების სია" + +#: app/flatpak-builtins-list.c:49 +msgid "Arch to show" +msgstr "საჩვენებელი არქიტექტურა" + +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 +msgid "List all refs (including locale/debug)" +msgstr "ყველა მიმართვის სია (ლოკალის/გამართვის ჩათვლით)" + +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 +msgid "List all applications using RUNTIME" +msgstr "აპლიკაციების სია, რომლებიც ამ გაშვების გარემოს იყენებენ" + +#: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 +msgid "Name" +msgstr "სახელი" + +#: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 +msgid "Show the name" +msgstr "სახელის ჩვენება" + +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 +msgid "Description" +msgstr "აღწერა" + +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-search.c:43 +msgid "Show the description" +msgstr "აღწერის ჩვენება" + +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-search.c:44 +msgid "Application ID" +msgstr "აპლიკაციის ID" + +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 +msgid "Show the application ID" +msgstr "აპლიკაციის ID-ის ჩვენება" + +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-search.c:45 +msgid "Show the version" +msgstr "ვერსიის ჩვენება" + +#: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 +#: app/flatpak-builtins-remote-ls.c:75 +msgid "Runtime" +msgstr "აქტივობა" + +#: app/flatpak-builtins-list.c:63 +msgid "Show the used runtime" +msgstr "გამოყენებული გაშვების გარემოს ჩვენება" + +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 +msgid "Show the origin remote" +msgstr "საწყისი დაშორებულის ჩვენება" + +#: app/flatpak-builtins-list.c:65 +msgid "Show the installation" +msgstr "დაყენების ჩვენება" + +#: app/flatpak-builtins-list.c:67 +msgid "Active commit" +msgstr "აქტიური კომიტი" + +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 +msgid "Show the active commit" +msgstr "აქტიური კომიტის ჩვენება" + +#: app/flatpak-builtins-list.c:68 +msgid "Latest commit" +msgstr "უახლესი კომიტი" + +#: app/flatpak-builtins-list.c:68 +msgid "Show the latest commit" +msgstr "უახლესი კომიტის ჩვენება" + +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 +msgid "Installed size" +msgstr "დაყენებული ზომა" + +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 +msgid "Show the installed size" +msgstr "დაყენებული ზომის ჩვენება" + +#: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 +msgid "Options" +msgstr "მორგება" + +#: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 +#: app/flatpak-builtins-remote-ls.c:78 +msgid "Show options" +msgstr "პარამეტრების ჩვენება" + +#: app/flatpak-builtins-list.c:178 +#, c-format +msgid "Unable to load details of %s: %s" +msgstr "%s-ის დეტალების ჩატვირთვა შეუძლებელია: %s" + +#: app/flatpak-builtins-list.c:188 +#, c-format +msgid "Unable to inspect current version of %s: %s" +msgstr "%s-ის მიმდინარე ვერსიის ინსპექტირება შეუძლებელია: %s" + +#: app/flatpak-builtins-list.c:406 +msgid " - List installed apps and/or runtimes" +msgstr " - დაყენებული აპებისა და გაშვების გარემოების სია" + +#: app/flatpak-builtins-make-current.c:38 +msgid "Arch to make current for" +msgstr "მიმდინარედ დასაყენებელი არქიტექტურა" + +#: app/flatpak-builtins-make-current.c:58 +msgid "APP BRANCH - Make branch of application current" +msgstr "აპის ბრენჩი - აპლიკაციის ბრენჩის მიმდინარედ დანიშვნა" + +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 +msgid "APP must be specified" +msgstr "აპის მითითება აუცილებელია" + +#: app/flatpak-builtins-make-current.c:84 +msgid "BRANCH must be specified" +msgstr "ბრენჩის მითითება აუცილებელია" + +#: app/flatpak-builtins-make-current.c:97 +#, c-format +msgid "App %s branch %s is not installed" +msgstr "%s აპის %s ბრენჩი დაყენებული არაა" + +#: app/flatpak-builtins-mask.c:42 +msgid "Remove matching masks" +msgstr "შესაბამისი ნიღბების წაშლა" + +#: app/flatpak-builtins-mask.c:54 +msgid "" +"[PATTERN…] - disable updates and automatic installation matching patterns" +msgstr "" +"[ნიმუში...] - დამთხვეული ნიმუშებისთვის განახლებებისა და ავტომატური დაყენების " +"გამორთვა" + +#: app/flatpak-builtins-mask.c:73 +#, c-format +msgid "No masked patterns\n" +msgstr "შენიღბული ნიმუშების გარეშე\n" + +#: app/flatpak-builtins-mask.c:78 +#, c-format +msgid "Masked patterns:\n" +msgstr "შენიღბული ნიმუშები:\n" + +#: app/flatpak-builtins-override.c:42 +msgid "Remove existing overrides" +msgstr "არსებული გადაფარვების წაშლა" + +#: app/flatpak-builtins-override.c:43 +msgid "Show existing overrides" +msgstr "არსებული გადაფარვების ჩვენება" + +#: app/flatpak-builtins-override.c:59 +msgid "[APP] - Override settings [for application]" +msgstr "[აპი] - მითითებული აპისთვის პარამეტრების გადაფარვა" + +#: app/flatpak-builtins-permission-list.c:140 +msgid "[TABLE] [ID] - List permissions" +msgstr "[ცხრილი] [ID] - წვდომების სია" + +#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-show.c:139 +msgid "Table" +msgstr "ცხრილი" + +#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-show.c:140 +msgid "Object" +msgstr "ობიექტი" + +#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-show.c:141 +msgid "App" +msgstr "აპპი" + +#: app/flatpak-builtins-permission-list.c:180 +#: app/flatpak-builtins-permission-show.c:143 +msgid "Data" +msgstr "მონაცემები" + +#: app/flatpak-builtins-permission-remove.c:120 +msgid "TABLE ID [APP_ID] - Remove item from permission store" +msgstr "ცხრილი ID [აპის_ID] -- წვდომების სიიდან ელემენტის წაშლა" + +#: app/flatpak-builtins-permission-remove.c:129 +#: app/flatpak-builtins-permission-set.c:120 +msgid "Too few arguments" +msgstr "არასაკმარისი არგუმენტები" + +#: app/flatpak-builtins-permission-reset.c:43 +msgid "Reset all permissions" +msgstr "წვდომების საწყის მნიშვნელობებზე დაყენება" + +#: app/flatpak-builtins-permission-reset.c:137 +msgid "APP_ID - Reset permissions for an app" +msgstr "APP_ID - აპის წვდომების საწყის მნიშვნელობებზე დაყენება" + +#: app/flatpak-builtins-permission-reset.c:146 +#: app/flatpak-builtins-permission-show.c:121 +msgid "Wrong number of arguments" +msgstr "არგუმენტების არასწორი რიცხვი" + +#: app/flatpak-builtins-permission-set.c:42 +msgid "Associate DATA with the entry" +msgstr "მითითებული მონაცემების ამ ჩანაწერთან ასოცირება" + +#: app/flatpak-builtins-permission-set.c:42 +msgid "DATA" +msgstr "მონაცემები" + +#: app/flatpak-builtins-permission-set.c:111 +msgid "TABLE ID APP_ID [PERMISSION...] - Set permissions" +msgstr "ცხრილი ID აპის_ID [წვდომა...] - წვდომების დაყენება" + +#: app/flatpak-builtins-permission-set.c:132 +#, c-format +msgid "Failed to parse '%s' as GVariant: " +msgstr "'%s'-ის GVariant-ის სახით დამუშავების შეცდომა: " + +#: app/flatpak-builtins-permission-show.c:112 +msgid "APP_ID - Show permissions for an app" +msgstr "APP_ID - აპის წვდომების ჩვენება" + +#: app/flatpak-builtins-pin.c:44 +msgid "Remove matching pins" +msgstr "შესაბამისი მიმაგრებების წაშლა" + +#: app/flatpak-builtins-pin.c:56 +msgid "[PATTERN…] - disable automatic removal of runtimes matching patterns" +msgstr "" +"[ნიმუში...] - დამთხვეული ნიმუშებისთვის გაშვების გარემოების ავტომატური წაშლის " +"გამორთვა" + +#: app/flatpak-builtins-pin.c:75 +#, c-format +msgid "No pinned patterns\n" +msgstr "მიმაგრებული ნიმუშების გარეშე\n" + +#: app/flatpak-builtins-pin.c:80 +#, c-format +msgid "Pinned patterns:\n" +msgstr "მიმაგრებული ნიმუშები:\n" + +#: app/flatpak-builtins-ps.c:47 +msgid "Instance" +msgstr "გაშვებული ასლი" + +#: app/flatpak-builtins-ps.c:47 +msgid "Show the instance ID" +msgstr "გაშვებული ასლის ID-ის ჩვენება" + +#: app/flatpak-builtins-ps.c:48 app/flatpak-builtins-run.c:86 +msgid "PID" +msgstr "PID" + +#: app/flatpak-builtins-ps.c:48 +msgid "Show the PID of the wrapper process" +msgstr "შემომსაზღვრელი პროცესის PID-ის ჩვენება" + +#: app/flatpak-builtins-ps.c:49 +msgid "Child-PID" +msgstr "შვილის-PID" + +#: app/flatpak-builtins-ps.c:49 +msgid "Show the PID of the sandbox process" +msgstr "სენდბოქსის პროცესის PID-ის ჩვენება" + +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-search.c:46 +msgid "Show the application branch" +msgstr "აპლიკაციის ბრენჩის ჩვენება" + +#: app/flatpak-builtins-ps.c:53 +msgid "Show the application commit" +msgstr "აპლიკაციის კომიტის ჩვენება" + +#: app/flatpak-builtins-ps.c:54 +msgid "Show the runtime ID" +msgstr "გაშვების გარემოს ID-ის ჩვენება" + +#: app/flatpak-builtins-ps.c:55 +msgid "R.-Branch" +msgstr "R.-Branch" + +#: app/flatpak-builtins-ps.c:55 +msgid "Show the runtime branch" +msgstr "გაშვების გარემოს ბრენჩის ჩვენება" + +#: app/flatpak-builtins-ps.c:56 +msgid "R.-Commit" +msgstr "R.-Commit" + +#: app/flatpak-builtins-ps.c:56 +msgid "Show the runtime commit" +msgstr "გაშვების გარემოს კომიტის ჩვენება" + +#: app/flatpak-builtins-ps.c:57 +msgid "Active" +msgstr "აქტიური" + +#: app/flatpak-builtins-ps.c:57 +msgid "Show whether the app is active" +msgstr "ჩვენება, აქტიურია აპი, თუ არა" + +#: app/flatpak-builtins-ps.c:58 +msgid "Background" +msgstr "ფონი" + +#: app/flatpak-builtins-ps.c:58 +msgid "Show whether the app is background" +msgstr "ჩვენება, აპლიკაცია ფონურია, თუ არაა" + +#: app/flatpak-builtins-ps.c:244 +msgid " - Enumerate running sandboxes" +msgstr " - გაშვებული სენდბოქსების ჩამონათვალი" + +#: app/flatpak-builtins-remote-add.c:65 +msgid "Do nothing if the provided remote exists" +msgstr "თუ მითითებული დაშორებული არსებობს, არაფერი მოხდება" + +#: app/flatpak-builtins-remote-add.c:66 +msgid "LOCATION specifies a configuration file, not the repo location" +msgstr "" +"მითითებული მდებარეობა მიუთითებს კონფიგურაციის ფაილზე და არა რეპოზიტორიის " +"მდებარეობაზე" + +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 +msgid "Disable GPG verification" +msgstr "GPG-ით გადამოწმების გათიშვა" + +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 +msgid "Mark the remote as don't enumerate" +msgstr "დაშორებულის არა-ჩამოთვლადად მონიშვნა" + +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 +msgid "Mark the remote as don't use for deps" +msgstr "დაშორებულის დამოკიდებულებების არ-გამოსაყენებლად მონიშვნა" + +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 +msgid "Set priority (default 1, higher is more prioritized)" +msgstr "პრიორიტეტის დაყენება (ნაგულისხმები 1, რაც მაღალი, მით პრიორიტეტული)" + +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 +msgid "PRIORITY" +msgstr "PRIORITY" + +#: app/flatpak-builtins-remote-add.c:75 +msgid "The named subset to use for this remote" +msgstr "სახელიანი ქვესეტი ამ დაშორებულისთვის გამოსაყენებლად" + +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 +msgid "SUBSET" +msgstr "SUBSET" + +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 +msgid "A nice name to use for this remote" +msgstr "მისაღები სახელი ამ დაშორებულისთვის" + +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 +msgid "A one-line comment for this remote" +msgstr "ამ დაშორებულის ერთხაზიანი კომენტარი" + +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 +msgid "A full-paragraph description for this remote" +msgstr "სრული პარაგრაფის სიგრძის მქონე კომენტარი ამ დაშორებულისთვის" + +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 +msgid "URL for a website for this remote" +msgstr "ამ დაშორებულის გვებგვერდის ბმული" + +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 +msgid "URL for an icon for this remote" +msgstr "ამ დაშორებული ხატულის ბმული" + +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +msgid "Default branch to use for this remote" +msgstr "ამ დაშორებულის ნაგულისხმები ბრენჩი" + +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 +msgid "Import GPG key from FILE (- for stdin)" +msgstr "GPG გასაღების შემოტანა მითითებული ფაილიდან (stdin-სთვის გამოიყენეთ -)" + +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 +msgid "Set path to local filter FILE" +msgstr "ბილიკის ლოკალური ფილტრის ფაილზე დაყენება" + +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 +msgid "Disable the remote" +msgstr "დაშორებულის გამორთვა" + +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 +msgid "Name of authenticator" +msgstr "ავთენტიკატორის სახელი" + +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 +msgid "Autoinstall authenticator" +msgstr "ავთენტიკატორის ავტომატური დაყენება" + +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 +msgid "Don't autoinstall authenticator" +msgstr "ავთენტიკატორი ავტომატურად დაყენებული არ იქნება" + +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 +msgid "Don't follow the redirect set in the summary file" +msgstr "შეჯამების ფაილში გადამისამართების არ-მიყოლა" + +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 +#, c-format +msgid "Can't load uri %s: %s\n" +msgstr "URI %s-ის ჩატვირთვის შეცდომა: %s\n" + +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 +#, c-format +msgid "Can't load file %s: %s\n" +msgstr "ფაილის %s ჩატვირთვის შეცდომა: %s\n" + +#: app/flatpak-builtins-remote-add.c:299 +msgid "NAME LOCATION - Add a remote repository" +msgstr "სახელი მდებარეობა - დაშორებული რეპოზიტორიის დამატება" + +#: app/flatpak-builtins-remote-add.c:326 +msgid "GPG verification is required if collections are enabled" +msgstr "თუ კოლექციები ჩართულია, GPG-ით გადამოწმება აუცილებელია" + +#: app/flatpak-builtins-remote-add.c:388 +#, c-format +msgid "Remote %s already exists" +msgstr "დაშორებული '%s' უკვე არსებობს" + +#: app/flatpak-builtins-remote-add.c:400 +#: app/flatpak-builtins-remote-modify.c:332 +#, c-format +msgid "Invalid authenticator name %s" +msgstr "არასწორი ავთენტიკატორის სახელი %s" + +#: app/flatpak-builtins-remote-add.c:417 +#, c-format +msgid "Warning: Could not update extra metadata for '%s': %s\n" +msgstr "" +"გაფრთხილება: '%s'-ის დამატებითი მეტამონაცემების განახლების შეცდომა: %s\n" + +#: app/flatpak-builtins-remote-delete.c:39 +msgid "Remove remote even if in use" +msgstr "დაშორებულის წაშლა მაშინაც კი, თუ ის გამოიყენება" + +#: app/flatpak-builtins-remote-delete.c:53 +msgid "NAME - Delete a remote repository" +msgstr "სახელი - დაშორებული რეპოზიტორიის წაშლა" + +#: app/flatpak-builtins-remote-delete.c:100 +#, c-format +msgid "The following refs are installed from remote '%s':" +msgstr "დაშორებულიდან '%s' დაყენებულია შემდეგ მიმართვები:" + +#: app/flatpak-builtins-remote-delete.c:101 +msgid "Remove them?" +msgstr "წავშალო ელემენტი?" + +#: app/flatpak-builtins-remote-delete.c:103 +#, c-format +msgid "Can't remove remote '%s' with installed refs" +msgstr "დაყენებული მიმართვების მქონე დაშორებულის '%s' წაშლა შეუძლებელია" + +#: app/flatpak-builtins-remote-info.c:55 +msgid "Commit to show info for" +msgstr "კომიტი, რომლის ინფორმაციასაც გაჩვენებთ" + +#: app/flatpak-builtins-remote-info.c:58 +msgid "Display log" +msgstr "ჟურნალის ჩვენება" + +#: app/flatpak-builtins-remote-info.c:61 +msgid "Show parent" +msgstr "მშობლის ჩვენება" + +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 +msgid "Use local caches even if they are stale" +msgstr "ლოკალური კეშის გამოყენება მაშინაც კი, როცა ის გაჭედილია" + +#. Translators: A sideload is when you install from a local USB drive rather than the Internet. +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 +msgid "Only list refs available as sideloads" +msgstr "მხოლოდ გვერდით ჩასატვირთად ხელმისაწვდომი მიმართვების სია" + +#: app/flatpak-builtins-remote-info.c:114 +msgid "" +" REMOTE REF - Show information about an application or runtime in a remote" +msgstr "" +" დაშორებული მიმართვა - დაშორებულში არსებული აპლიკაციის ან გაშვების გარემოს " +"შესახებ ინფორმაციის ჩვენება" + +#: app/flatpak-builtins-remote-info.c:125 +msgid "REMOTE and REF must be specified" +msgstr "დაშორებულის და მიმართვის მითითება აუცილებელია" + +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 +msgid "Download:" +msgstr "გადმოწერა:" + +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 +msgid "History:" +msgstr "ისტორია:" + +#: app/flatpak-builtins-remote-info.c:348 +msgid " Commit:" +msgstr " კომიტი:" + +#: app/flatpak-builtins-remote-info.c:349 +msgid " Subject:" +msgstr " თემა:" + +#: app/flatpak-builtins-remote-info.c:350 +msgid " Date:" +msgstr " თარიღი:" + +#: app/flatpak-builtins-remote-info.c:383 +#, c-format +msgid "Warning: Commit %s has no flatpak metadata\n" +msgstr "გართხილება: კომიტს %s flatpak-ის მეტამონაცემების არ გააჩნია\n" + +#: app/flatpak-builtins-remote-list.c:42 +msgid "Show remote details" +msgstr "დაშორებულის დეტალების ჩვენება" + +#: app/flatpak-builtins-remote-list.c:43 +msgid "Show disabled remotes" +msgstr "გამორთული დაშორებულების ჩვენება" + +#: app/flatpak-builtins-remote-list.c:50 +msgid "Title" +msgstr "სათაური" + +#: app/flatpak-builtins-remote-list.c:50 +msgid "Show the title" +msgstr "სათაურის ჩვენება" + +#: app/flatpak-builtins-remote-list.c:51 +msgid "Show the URL" +msgstr "URL-ის ჩვენება" + +#: app/flatpak-builtins-remote-list.c:52 +msgid "Show the collection ID" +msgstr "კოლექციის ID-ის ჩვენება" + +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 +msgid "Subset" +msgstr "ქვესეტი" + +#: app/flatpak-builtins-remote-list.c:53 +msgid "Show the subset" +msgstr "ქვესეტის ჩვენება" + +#: app/flatpak-builtins-remote-list.c:54 +msgid "Filter" +msgstr "ფილტრი" + +#: app/flatpak-builtins-remote-list.c:54 +msgid "Show filter file" +msgstr "ფილტრის ფაილის ჩვენება" + +#: app/flatpak-builtins-remote-list.c:55 +msgid "Priority" +msgstr "პრიორიტეტი" + +#: app/flatpak-builtins-remote-list.c:55 +msgid "Show the priority" +msgstr "პრიორიტეტის ჩვენება" + +#: app/flatpak-builtins-remote-list.c:57 +msgid "Comment" +msgstr "კომე_ნტარი" + +#: app/flatpak-builtins-remote-list.c:57 +msgid "Show comment" +msgstr "კომენტარის ჩვენება" + +#: app/flatpak-builtins-remote-list.c:58 +msgid "Show description" +msgstr "აღწერის ჩვენება" + +#: app/flatpak-builtins-remote-list.c:59 +msgid "Homepage" +msgstr "Homepage" + +#: app/flatpak-builtins-remote-list.c:59 +msgid "Show homepage" +msgstr "საწყისი გვერდის ჩვენება" + +#: app/flatpak-builtins-remote-list.c:60 +msgid "Icon" +msgstr "ხატულა" + +#: app/flatpak-builtins-remote-list.c:60 +msgid "Show icon" +msgstr "ხატულის ჩვენება" + +#: app/flatpak-builtins-remote-list.c:229 +msgid " - List remote repositories" +msgstr " - დაშორებული რეპოზიტორიების ჩვენება" + +#: app/flatpak-builtins-remote-ls.c:51 +msgid "Show arches and branches" +msgstr "არქიტექტურებისა და ბრენჩების ჩვენება" + +#: app/flatpak-builtins-remote-ls.c:52 +msgid "Show only runtimes" +msgstr "მხოლოდ გაშვების გარემოების ჩვენება" + +#: app/flatpak-builtins-remote-ls.c:53 +msgid "Show only apps" +msgstr "მხოლოდ აპების ჩვენება" + +#: app/flatpak-builtins-remote-ls.c:54 +msgid "Show only those where updates are available" +msgstr "მხოლოდ მათი ჩვენება, სადაც განახლება ხელმისაწვდომია" + +#: app/flatpak-builtins-remote-ls.c:55 +msgid "Limit to this arch (* for all)" +msgstr "ამ არქიტექტურაზე შეზღუდვა (* ყველასთვის)" + +#: app/flatpak-builtins-remote-ls.c:75 +msgid "Show the runtime" +msgstr "გაშვების გარემოების ჩვენება" + +#: app/flatpak-builtins-remote-ls.c:77 +msgid "Download size" +msgstr "გადმოწერის ზომა" + +#: app/flatpak-builtins-remote-ls.c:77 +msgid "Show the download size" +msgstr "გადმოწერის ზომის ჩვენება" + +#: app/flatpak-builtins-remote-ls.c:389 +msgid " [REMOTE or URI] - Show available runtimes and applications" +msgstr "" +" [დაშორებული ან URI] - ხელმისაწვდომი გაშვების გარემოებისა და აპლიკაციების " +"ჩვენება" + +#: app/flatpak-builtins-remote-modify.c:66 +msgid "Enable GPG verification" +msgstr "GPG-ით გადამოწმების ჩართვა" + +#: app/flatpak-builtins-remote-modify.c:67 +msgid "Mark the remote as enumerate" +msgstr "დაშორებულის ჩამოთვლადად მონიშვნა" + +#: app/flatpak-builtins-remote-modify.c:68 +msgid "Mark the remote as used for dependencies" +msgstr "დაშორებულის დამოკიდებულებებისთვის გამოსაყენებლად მონიშვნა" + +#: app/flatpak-builtins-remote-modify.c:69 +msgid "Set a new url" +msgstr "ახალი URL-ის მითითება" + +#: app/flatpak-builtins-remote-modify.c:70 +msgid "Set a new subset to use" +msgstr "ახალი გამოსაყენებელი ქვესეტის მითითება" + +#: app/flatpak-builtins-remote-modify.c:71 +msgid "Enable the remote" +msgstr "დაშორებულის ჩართვა" + +#: app/flatpak-builtins-remote-modify.c:72 +msgid "Update extra metadata from the summary file" +msgstr "შეჯამების ფაილიდან დამატებითი მეტამონაცემების განახლება" + +#: app/flatpak-builtins-remote-modify.c:89 +msgid "Disable local filter" +msgstr "ლოკალური ფილტრის გამორთვა" + +#: app/flatpak-builtins-remote-modify.c:93 +msgid "Authenticator options" +msgstr "ავთნტიკატორის მორგება" + +#: app/flatpak-builtins-remote-modify.c:96 +msgid "Follow the redirect set in the summary file" +msgstr "შეჯამების ფაილში გადამისამართების მიყოლა" + +#: app/flatpak-builtins-remote-modify.c:298 +msgid "NAME - Modify a remote repository" +msgstr "NAME - დაშორებული რეპოზიტორიის შეცვლა" + +#: app/flatpak-builtins-remote-modify.c:308 +msgid "Remote NAME must be specified" +msgstr "დაშორებულის სახელის მითითება აუცილებელი" + +#: app/flatpak-builtins-remote-modify.c:319 +#, c-format +msgid "Updating extra metadata from remote summary for %s\n" +msgstr "%s-სთვის დაშორებული შეჯამებიდან დამატებითი მეტამონაცემების განახლება\n" + +#: app/flatpak-builtins-remote-modify.c:322 +#, c-format +msgid "Error updating extra metadata for '%s': %s\n" +msgstr "'%s'-სთვის დამატებითი მეტამონაცემების განახლების შეცდომა: %s\n" + +#: app/flatpak-builtins-remote-modify.c:323 +#, c-format +msgid "Could not update extra metadata for %s" +msgstr "%s-სთვის დამატებითი მეტამონაცემების განახლების შეცდომა" + +#: app/flatpak-builtins-repair.c:43 +msgid "Don't make any changes" +msgstr "ცვლილებები შეტანილი არ იქნება" + +#: app/flatpak-builtins-repair.c:44 +msgid "Reinstall all refs" +msgstr "ყველა მიმართვის თავიდან დაყენება" + +#: app/flatpak-builtins-repair.c:68 +#, c-format +msgid "Object missing: %s.%s\n" +msgstr "ობიექტი ვერ ვიპოვე: %s.%s\n" + +#: app/flatpak-builtins-repair.c:76 +#, c-format +msgid "Object invalid: %s.%s\n" +msgstr "არასწორი ობიექტი: %s.%s\n" + +#: app/flatpak-builtins-repair.c:81 +#, c-format +msgid "%s, deleting object\n" +msgstr "%s, ობიექტის წაშლა\n" + +#: app/flatpak-builtins-repair.c:146 +#, c-format +msgid "Can't load object %s: %s\n" +msgstr "ობიექტის %s ჩატვირთვის შეცდომა: %s\n" + +#: app/flatpak-builtins-repair.c:228 +#, c-format +msgid "Commit invalid %s: %s\n" +msgstr "არასწორი კომიტი %s: %s\n" + +#: app/flatpak-builtins-repair.c:231 +#, c-format +msgid "Deleting invalid commit %s: %s\n" +msgstr "არასწორი კომიტის %s წაშლა: %s\n" + +#: app/flatpak-builtins-repair.c:261 +#, c-format +msgid "Commit should be marked partial: %s\n" +msgstr "კომითი მონიშნული უნდა იყოს, როგორც ნაწილობრივი: %s\n" + +#: app/flatpak-builtins-repair.c:264 +#, c-format +msgid "Marking commit as partial: %s\n" +msgstr "კომიტის ნაწილობრივად მონიშვნა: %s\n" + +#: app/flatpak-builtins-repair.c:293 +#, c-format +msgid "Problems loading data for %s: %s\n" +msgstr "%s-სთვის მონაცემების ჩატვირთვის შეცდომა: %s\n" + +#: app/flatpak-builtins-repair.c:306 +#, c-format +msgid "Error reinstalling %s: %s\n" +msgstr "%s-ის თავიდან დაყენების შეცდომა: %s\n" + +#: app/flatpak-builtins-repair.c:327 +msgid "- Repair a flatpak installation" +msgstr "- flatpak -ის ფაილების შეკეთება" + +#: app/flatpak-builtins-repair.c:406 +#, c-format +msgid "Removing non-deployed ref %s…\n" +msgstr "არა-გაშლილი მიმართვის %s წაშლა...\n" + +#: app/flatpak-builtins-repair.c:411 +#, c-format +msgid "Skipping non-deployed ref %s…\n" +msgstr "არა-გაშლილი მიმართვის %s გამოტოვება...\n" + +#: app/flatpak-builtins-repair.c:429 +#, c-format +msgid "[%d/%d] Verifying %s…\n" +msgstr "[%d/%d] %s-ის გადამოწმება…\n" + +#: app/flatpak-builtins-repair.c:435 +#, c-format +msgid "Dry run: " +msgstr "მშრალი გაშვება: " + +#: app/flatpak-builtins-repair.c:440 +#, c-format +msgid "Deleting ref %s due to missing objects\n" +msgstr "ნაკლული ობიექტების გამო მიმართვა %s წაიშლება\n" + +#: app/flatpak-builtins-repair.c:444 +#, c-format +msgid "Deleting ref %s due to invalid objects\n" +msgstr "არასწორი ობიექტების გამო მიმართვა %s წაიშლება\n" + +#: app/flatpak-builtins-repair.c:448 +#, c-format +msgid "Deleting ref %s due to %d\n" +msgstr "მიმართვა %s წაიშლება %d-ის გამო\n" + +#: app/flatpak-builtins-repair.c:464 +#, c-format +msgid "Checking remotes...\n" +msgstr "დაშორებულების შემოწმება...\n" + +#: app/flatpak-builtins-repair.c:482 +#, c-format +msgid "Remote %s for ref %s is missing\n" +msgstr "დაშორებული %s მიმართვისთვის %s ვერ ვიპოვე\n" + +#: app/flatpak-builtins-repair.c:484 +#, c-format +msgid "Remote %s for ref %s is disabled\n" +msgstr "დაშორებული %s მიმართვისთვის %s გამორთულია\n" + +#: app/flatpak-builtins-repair.c:490 +#, c-format +msgid "Pruning objects\n" +msgstr "ობიექტების წაკვეთა\n" + +#: app/flatpak-builtins-repair.c:498 +#, c-format +msgid "Erasing .removed\n" +msgstr ".removed-ის წაშლა\n" + +#: app/flatpak-builtins-repair.c:523 +#, c-format +msgid "Reinstalling refs\n" +msgstr "მიმართვების თავიდან დაყენება\n" + +#: app/flatpak-builtins-repair.c:525 +#, c-format +msgid "Reinstalling removed refs\n" +msgstr "წაშლილი მიმართვების თავიდან დაყენება\n" + +#: app/flatpak-builtins-repair.c:550 +#, c-format +msgid "While removing appstream for %s: " +msgstr "%s-სთვის appstream-ის წაშლისას: " + +#: app/flatpak-builtins-repair.c:557 +#, c-format +msgid "While deploying appstream for %s: " +msgstr "%s-სთვის appstream-ის გაშლისას: " + +#: app/flatpak-builtins-repo.c:105 +#, c-format +msgid "Repo mode: %s\n" +msgstr "რეპოს რეჟიმი: %s\n" + +#: app/flatpak-builtins-repo.c:112 +#, c-format +msgid "Indexed summaries: %s\n" +msgstr "დაინდექსებული შეჯამებები: %s\n" + +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 +msgid "true" +msgstr "სიმართლე" + +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 +msgid "false" +msgstr "მცდარი" + +#: app/flatpak-builtins-repo.c:120 +#, c-format +msgid "Subsummaries: " +msgstr "ქვეშეჯამებები: " + +#: app/flatpak-builtins-repo.c:135 +#, c-format +msgid "Cache version: %d\n" +msgstr "ქეშის ვერსია: %d\n" + +#: app/flatpak-builtins-repo.c:138 +#, c-format +msgid "Indexed deltas: %s\n" +msgstr "დაინდექსებული დელტები: %s\n" + +#: app/flatpak-builtins-repo.c:141 +#, c-format +msgid "Title: %s\n" +msgstr "სათაური: %s\n" + +#: app/flatpak-builtins-repo.c:144 +#, c-format +msgid "Comment: %s\n" +msgstr "კომენტარი: %s\n" + +#: app/flatpak-builtins-repo.c:147 +#, c-format +msgid "Description: %s\n" +msgstr "აღწერა: %s\n" + +#: app/flatpak-builtins-repo.c:150 +#, c-format +msgid "Homepage: %s\n" +msgstr "საწყისი გვერდი: %s\n" + +#: app/flatpak-builtins-repo.c:153 +#, c-format +msgid "Icon: %s\n" +msgstr "ხატულა: %s\n" + +#: app/flatpak-builtins-repo.c:156 +#, c-format +msgid "Collection ID: %s\n" +msgstr "კოლექციის ID: %s\n" + +#: app/flatpak-builtins-repo.c:159 +#, c-format +msgid "Default branch: %s\n" +msgstr "ნაგულისხმები ბრენჩი: %s\n" + +#: app/flatpak-builtins-repo.c:162 +#, c-format +msgid "Redirect URL: %s\n" +msgstr "გადამისამართების URL: %s\n" + +#: app/flatpak-builtins-repo.c:165 +#, c-format +msgid "Deploy collection ID: %s\n" +msgstr "კოლექციის ID-ის ჩვენება: %s\n" + +#: app/flatpak-builtins-repo.c:168 +#, c-format +msgid "Authenticator name: %s\n" +msgstr "ავთენტიკატორის სახელი: %s\n" + +#: app/flatpak-builtins-repo.c:171 +#, c-format +msgid "Authenticator install: %s\n" +msgstr "ავთენტიკატორის დაყენება: %s\n" + +#: app/flatpak-builtins-repo.c:179 +#, c-format +msgid "GPG key hash: %s\n" +msgstr "GPG გასაღების ჰეში: %s\n" + +#: app/flatpak-builtins-repo.c:183 +#, c-format +msgid "%zd summary branches\n" +msgstr "%zd ჯამური ბრენჩი\n" + +#: app/flatpak-builtins-repo.c:335 +msgid "Installed" +msgstr "დაყენებულია" + +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 +msgid "Download" +msgstr "ჩამოტვირთვა" + +#: app/flatpak-builtins-repo.c:337 +msgid "Subsets" +msgstr "ქვეჯგუფები" + +#: app/flatpak-builtins-repo.c:391 +msgid "Digest" +msgstr "დაიჯესტი" + +#: app/flatpak-builtins-repo.c:392 +msgid "History length" +msgstr "ისტორიის ხანგრძლივობა" + +#: app/flatpak-builtins-repo.c:709 +msgid "Print general information about the repository" +msgstr "რეპოზიტორიის მიმოხილვის ინფორმაციის გამოტანა" + +#: app/flatpak-builtins-repo.c:710 +msgid "List the branches in the repository" +msgstr "რეპოზიტორიის ბრენჩების სიის ჩვენება" + +#: app/flatpak-builtins-repo.c:711 +msgid "Print metadata for a branch" +msgstr "ბრენჩის მეტამონაცემების გამოტანა" + +#: app/flatpak-builtins-repo.c:712 +msgid "Show commits for a branch" +msgstr "ბრენჩის კომიტების ჩვენება" + +#: app/flatpak-builtins-repo.c:713 +msgid "Print information about the repo subsets" +msgstr "რეპოზიტორიებს ქვესეტების შესახებ ინფორმაციის გამოტანა" + +#: app/flatpak-builtins-repo.c:714 +msgid "Limit information to subsets with this prefix" +msgstr "ინფორმაციის ამ პრეფიქსის მქონე ქვესეტებზე შეზღუდვა" + +#: app/flatpak-builtins-repo.c:729 +msgid "LOCATION - Repository maintenance" +msgstr "მდებარეობა - რეპოზიტორიის რემონტი" + +#: app/flatpak-builtins-run.c:67 +msgid "Command to run" +msgstr "გასაშვები ბრძანება" + +#: app/flatpak-builtins-run.c:68 +msgid "Directory to run the command in" +msgstr "საქაღალდე, სადაც ბრძანება გაეშვება" + +#: app/flatpak-builtins-run.c:69 +msgid "Branch to use" +msgstr "გამოსაყენებელი ბრენჩი" + +#: app/flatpak-builtins-run.c:70 +msgid "Use development runtime" +msgstr "სატესტო გაშვების გარემოს გამოყენება" + +#: app/flatpak-builtins-run.c:71 +msgid "Runtime to use" +msgstr "გამოსაყენებელი გაშვების გარემო" + +#: app/flatpak-builtins-run.c:72 +msgid "Runtime version to use" +msgstr "გამოსაყენებელი გაშვების გარემოს ვერსია" + +#: app/flatpak-builtins-run.c:75 +msgid "Log accessibility bus calls" +msgstr "წვდომადობის მატარებლის გამოძახებების ჟურნალში ჩაწერა" + +#: app/flatpak-builtins-run.c:76 +msgid "Don't proxy accessibility bus calls" +msgstr "წვდომადობის მატარებლის გამოძახებები ჟურნალში არ ჩაიწერება" + +#: app/flatpak-builtins-run.c:77 +msgid "Proxy accessibility bus calls (default except when sandboxed)" +msgstr "" +"წვდომადობის მატარებლის გამოძახებებისთვის პროქსის გამოყენება (ნაგულისხმებია " +"გარდა იმ შემთხვევისა, როცა სენდბოქსშია გაშვებული)" + +#: app/flatpak-builtins-run.c:78 +msgid "Don't proxy session bus calls" +msgstr "წვდომადობის მატარებლის გამოძახებებისთვის პროქსი გამოყენებული არ იქნება" + +#: app/flatpak-builtins-run.c:79 +msgid "Proxy session bus calls (default except when sandboxed)" +msgstr "" +"სესიის მატარებლის გამოძახებებისთვის პროქსის გამოყენება (ნაგულისხმებია გარდა " +"იმ შემთხვევისა, როცა სენდბოქსშია გაშვებული)" + +#: app/flatpak-builtins-run.c:80 +msgid "Don't start portals" +msgstr "პორტალები არ გაეშვება" + +#: app/flatpak-builtins-run.c:81 +msgid "Enable file forwarding" +msgstr "ფაილების გადაგზავნის ჩართვა" + +#: app/flatpak-builtins-run.c:82 +msgid "Run specified commit" +msgstr "მითითებული კომიტის გაშვება" + +#: app/flatpak-builtins-run.c:83 +msgid "Use specified runtime commit" +msgstr "მითითებული გაშვების გარემოს კომიტის გამოყენება" + +#: app/flatpak-builtins-run.c:84 +msgid "Run completely sandboxed" +msgstr "სრულად სენდბოქსში გაშვება" + +#: app/flatpak-builtins-run.c:86 +msgid "Use PID as parent pid for sharing namespaces" +msgstr "სახელების სივრცეების გაზიარებისთვის PID-ად მშობლის PID-ის გამოყენება" + +#: app/flatpak-builtins-run.c:87 +msgid "Make processes visible in parent namespace" +msgstr "პროცესების გამოჩენა მშობელ სახელების სივრცეში" + +#: app/flatpak-builtins-run.c:88 +msgid "Share process ID namespace with parent" +msgstr "პროცესის ID-ის სახელების სივრცის მშობელთან გაზიარება" + +#: app/flatpak-builtins-run.c:89 +msgid "Write the instance ID to the given file descriptor" +msgstr "გაშვებული ასლის ID-ის ჩაწერა მითითებულ ფაილის დესკრიპტორში" + +#: app/flatpak-builtins-run.c:90 +msgid "Use PATH instead of the app's /app" +msgstr "აპის /app-ის მაგიერ მითითებული ბილიკის გამოყენება" + +#: app/flatpak-builtins-run.c:91 +msgid "Use PATH instead of the runtime's /usr" +msgstr "გაშვებული გარემოს /usr-ის მაგიერ მითითებული ბილიკის გამოყენება" + +#: app/flatpak-builtins-run.c:117 +msgid "APP [ARGUMENT…] - Run an app" +msgstr "აპი [არგუმენტი…] - აპის გაშვება" + +#: app/flatpak-builtins-run.c:268 +#, c-format +msgid "runtime/%s/%s/%s not installed" +msgstr "გაშვების გარემო/%s/%s/%s დაყენებული არაა" + +#: app/flatpak-builtins-search.c:36 +msgid "Arch to search for" +msgstr "მოსაძებნი არქიტექტურა" + +#: app/flatpak-builtins-search.c:47 +msgid "Remotes" +msgstr "დაშორებულები" + +#: app/flatpak-builtins-search.c:47 +msgid "Show the remotes" +msgstr "დაშორებულების ჩვენება" + +#: app/flatpak-builtins-search.c:242 +msgid "TEXT - Search remote apps/runtimes for text" +msgstr "ტექსტი - დაშორებულ აპებში/გაშვების გარემოებში ტექსტის ძებნა" + +#: app/flatpak-builtins-search.c:253 +msgid "TEXT must be specified" +msgstr "TEXT -ის მითითება აუცილებელია" + +#: app/flatpak-builtins-search.c:336 +msgid "No matches found" +msgstr "არაფერი მოიძებნა" + +#: app/flatpak-builtins-uninstall.c:54 +msgid "Arch to uninstall" +msgstr "წასაშლელი არქიტექტურა" + +#: app/flatpak-builtins-uninstall.c:55 +msgid "Keep ref in local repository" +msgstr "ლოკალურ რეპოზიტორიაში მიმართვის შენახვა" + +#: app/flatpak-builtins-uninstall.c:56 +msgid "Don't uninstall related refs" +msgstr "დაკავშირებული მიმართვები არ წაიშლება" + +#: app/flatpak-builtins-uninstall.c:57 +msgid "Remove files even if running" +msgstr "ფაილები წაიშლება მაშინაც კი, თუ ისინი გაშვებულია" + +#: app/flatpak-builtins-uninstall.c:60 +msgid "Uninstall all" +msgstr "ყველას წაშლა" + +#: app/flatpak-builtins-uninstall.c:61 +msgid "Uninstall unused" +msgstr "გამოუყენებლის წაშლა" + +#: app/flatpak-builtins-uninstall.c:62 +msgid "Delete app data" +msgstr "აპლიკაციის მონაცემების წაშლა" + +#: app/flatpak-builtins-uninstall.c:141 +#, c-format +msgid "Delete data for %s?" +msgstr "წავშალო %s-ის მონაცემები?" + +#: app/flatpak-builtins-uninstall.c:220 +#, c-format +msgid "Info: applications using the extension %s%s%s branch %s%s%s:\n" +msgstr "ინფორმაცია: აპლიკაციები, რომლებიც იყენებენ %s%s%s ბრენჩს %s%s%s:\n" + +#: app/flatpak-builtins-uninstall.c:223 +#, c-format +msgid "Info: applications using the runtime %s%s%s branch %s%s%s:\n" +msgstr "" +"ინფორმაცია: აპლიკაციები, რომლებიც იყენებენ გაშვების გარემოს %s%s%s ბრენჩს " +"%s%s%s:\n" +"\n" + +#: app/flatpak-builtins-uninstall.c:238 +msgid "Really remove?" +msgstr "მართლა წავშალო?" + +#: app/flatpak-builtins-uninstall.c:255 +msgid "[REF…] - Uninstall applications or runtimes" +msgstr "[მიმართვა…] - აპლიკაციების ან გაშვების გარემოების წაშლა" + +#: app/flatpak-builtins-uninstall.c:264 +msgid "Must specify at least one REF, --unused, --all or --delete-data" +msgstr "" +"აუცილებელია მიუთითოთ ერთერთი პარამეტრებიდან: მიმართვა, --unused, --all და --" +"delete-data" + +#: app/flatpak-builtins-uninstall.c:267 +msgid "Must not specify REFs when using --all" +msgstr "--all პარამეტრის გამოყენებისას მიმართვის მითითება დაუშვებელია" + +#: app/flatpak-builtins-uninstall.c:270 +msgid "Must not specify REFs when using --unused" +msgstr "--unused პარამეტრის გამოყენებისას მიმართვის მითითება დაუშვებელია" + +#: app/flatpak-builtins-uninstall.c:336 +#, c-format +msgid "" +"\n" +"These runtimes in installation '%s' are pinned and won't be removed; see " +"flatpak-pin(1):\n" +msgstr "" +"\n" +"ეს გაშვების გარემოები პაკეტში '%s' მიმაგრებულია და არ წაიშლება. იხ. flatpack-" +"pin(1):\n" + +#: app/flatpak-builtins-uninstall.c:370 +#, c-format +msgid "Nothing unused to uninstall\n" +msgstr "წასაშლელად გამოუყენებელი ვერაფერი ვიპოვე\n" + +#: app/flatpak-builtins-uninstall.c:444 +#, c-format +msgid "No installed refs found for ‘%s’" +msgstr "'%s'-სთვის დაყენებული მიმართვები ნაპოვნი არაა" + +#: app/flatpak-builtins-uninstall.c:447 +#, c-format +msgid " with arch ‘%s’" +msgstr " არქიტექტურით ‘%s’" + +#: app/flatpak-builtins-uninstall.c:449 +#, c-format +msgid " with branch ‘%s’" +msgstr " ბრენჩით ‘%s’" + +#: app/flatpak-builtins-uninstall.c:456 +#, c-format +msgid "Warning: %s is not installed\n" +msgstr "გაფრთხილება: %s დაყენებული არაა\n" + +#: app/flatpak-builtins-uninstall.c:490 +#, c-format +msgid "None of the specified refs are installed" +msgstr "მითითებული მიმართვებიდან არც ერთია დაყენებული" + +#: app/flatpak-builtins-update.c:56 +msgid "Arch to update for" +msgstr "განსაახლებელი არქიტექტურა" + +#: app/flatpak-builtins-update.c:57 +msgid "Commit to deploy" +msgstr "კომიტი განლაგებისთვის" + +#: app/flatpak-builtins-update.c:58 +msgid "Remove old files even if running" +msgstr "ფაილები წაიშლება მაშინაც კი, თუ ისინი გაშვებულია" + +#: app/flatpak-builtins-update.c:59 +msgid "Don't pull, only update from local cache" +msgstr "პულის გარეშე, მხოლოდ ლოკალური კეშიდან განახლება" + +#: app/flatpak-builtins-update.c:61 +msgid "Don't update related refs" +msgstr "დაკავშირებული მიმართვებ არ განახლდება" + +#: app/flatpak-builtins-update.c:66 +msgid "Update appstream for remote" +msgstr "დაშორებულისთვის appstream-ის განახლება" + +#: app/flatpak-builtins-update.c:67 +msgid "Only update this subpath" +msgstr "მხოლოდ ამ ქვებილიკის განახლება" + +#: app/flatpak-builtins-update.c:90 +msgid "[REF…] - Update applications or runtimes" +msgstr "[მიმართვა…] - აპლიკაციების ან გაშვების გარემოების განახლება" + +#: app/flatpak-builtins-update.c:121 +msgid "With --commit, only one REF may be specified" +msgstr "--commit -თან ერთად მხოლოდ ერთი მიმართვის მითითება შეგიძლიათ" + +#: app/flatpak-builtins-update.c:162 +#, c-format +msgid "Looking for updates…\n" +msgstr "განახლებების ძებნა…\n" + +#: app/flatpak-builtins-update.c:215 +#, c-format +msgid "Unable to update %s: %s\n" +msgstr "%s-ის განახლების შეცდომა: %s\n" + +#: app/flatpak-builtins-update.c:274 +#, c-format +msgid "Nothing to do.\n" +msgstr "გასაკეთებელი არაფერია.\n" + +#: app/flatpak-builtins-utils.c:342 +#, c-format +msgid "Remote ‘%s’ found in multiple installations:" +msgstr "დაშორებული '%s' ერთზე მეტ დაყენებულ პაკეტშია აღმოჩენილი:" + +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 +msgid "Which do you want to use (0 to abort)?" +msgstr "რომელი გნებავთ, გამოიყენოთ? (0 შესაწყვეტად)" + +#: app/flatpak-builtins-utils.c:345 +#, c-format +msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" +msgstr "" +"'%s'-ის, რომელიც ერთზე მეტ დაყენებულ პაკეტში არსებობს, ამოსახსნელად " +"დაშორებული მითითებული არაა" + +#: app/flatpak-builtins-utils.c:354 +#, c-format +msgid "" +"Remote \"%s\" not found\n" +"Hint: Use flatpak remote-add to add a remote" +msgstr "" +"დაშორებული '%s' აღმოჩენილი არაა\n" +"მინიშნება: დაშორებულის დასამატებლად გამოიყენეთ flatpack remote-add" + +#: app/flatpak-builtins-utils.c:360 +#, c-format +msgid "Remote \"%s\" not found in the %s installation" +msgstr "დაშორებული '%s' დაყენებულ პაკეტში '%s' აღმოჩენილი არაა" + +#. default to yes on Enter +#: app/flatpak-builtins-utils.c:422 +#, c-format +msgid "" +"Found ref ‘%s’ in remote ‘%s’ (%s).\n" +"Use this ref?" +msgstr "" +"აღმოჩენილია მიმართვა '%s' დაშორებულში '%s' (%s).\n" +"გამოვიყენო ეს მიმართვა?" + +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 +#, c-format +msgid "No ref chosen to resolve matches for ‘%s’" +msgstr "'%s'-სთვის დამთხვევების ამოსახსნელად მიმართვა არჩეული არაა" + +#: app/flatpak-builtins-utils.c:432 +#, c-format +msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" +msgstr "მსგავსი მიმართვები აღმოჩენილია '%s'-სთვის დაშორებულში '%s' (%s):" + +#. default to yes on Enter +#: app/flatpak-builtins-utils.c:506 +#, c-format +msgid "Found installed ref ‘%s’ (%s). Is this correct?" +msgstr "ვიპოვე დაყენებული მიმართვა ‘%s’ (%s). სწორია?" + +#: app/flatpak-builtins-utils.c:522 +#, c-format +msgid "All of the above" +msgstr "ყველა ზემოდან" + +#: app/flatpak-builtins-utils.c:523 +#, c-format +msgid "Similar installed refs found for ‘%s’:" +msgstr "მსგავსი დაყენებული მიმართვები აღმოჩენილია '%s'-სთვის:" + +#: app/flatpak-builtins-utils.c:581 +#, c-format +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "აღმოჩენილია '%s'-ის მსგავსი მიმართვების მქონე დაშორებულები:" + +#: app/flatpak-builtins-utils.c:584 +#, c-format +msgid "No remote chosen to resolve matches for ‘%s’" +msgstr "'%s'-სთვის დამთხვევების ამოსახსნელად დაშორებული არჩეული არაა" + +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 +#, c-format +msgid "Updating appstream data for user remote %s" +msgstr "Appstream-ის მონაცემების განახლება მომხმარებლის დაშორებულისთვის %s" + +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 +#, c-format +msgid "Updating appstream data for remote %s" +msgstr "Appstream-ის მონაცემების განახლება დაშორებულისთვის %s" + +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 +msgid "Error updating" +msgstr "განახლების შეცდომა" + +#: app/flatpak-builtins-utils.c:739 +#, c-format +msgid "Remote \"%s\" not found" +msgstr "დაშორებული \"%s\" ვერ ვიპოვე" + +#: app/flatpak-builtins-utils.c:780 +#, c-format +msgid "Ambiguous suffix: '%s'." +msgstr "ორაზროვანი სუფიქსი: '%s'." + +#. Translators: don't translate the values +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 +msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" +msgstr "" +"შესაძლო მნიშვნელობებია: :s(გაშვება), :m(შუა), :e(დასასრული ან :f(სრული)" + +#: app/flatpak-builtins-utils.c:795 +#, c-format +msgid "Invalid suffix: '%s'." +msgstr "არასწორი სუფიქსი: \"%s\"." + +#: app/flatpak-builtins-utils.c:830 +#, c-format +msgid "Ambiguous column: %s" +msgstr "ორაზროვანი სვეტი: %s" + +#: app/flatpak-builtins-utils.c:843 +#, c-format +msgid "Unknown column: %s" +msgstr "უცნობი სვეტი: %s" + +#: app/flatpak-builtins-utils.c:901 +msgid "Available columns:\n" +msgstr "ხელმისაწვდომი სვეტები:\n" + +#: app/flatpak-builtins-utils.c:911 +msgid "Show all columns" +msgstr "ყველა სვეტის ჩვენება" + +#: app/flatpak-builtins-utils.c:912 +msgid "Show available columns" +msgstr "ხელმისაწვდომი სვეტების ჩვენება" + +#: app/flatpak-builtins-utils.c:915 +msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" +msgstr "" +"ოვალიზაციის შესაცვლელად ბოლოში მიაწერეთ :s(დასაწყისი), m(შუა) ან f(სრული)" + +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 +#, c-format +msgid "Required runtime for %s (%s) found in remote %s\n" +msgstr "%s-სთვის (%s) აუცილებელი გაშვები გარემო აღმოჩენილია დაშორებულში %s\n" + +#: app/flatpak-cli-transaction.c:104 +msgid "Do you want to install it?" +msgstr "გნებავთ, დააყენოთ?" + +#: app/flatpak-cli-transaction.c:110 +#, c-format +msgid "Required runtime for %s (%s) found in remotes:" +msgstr "%s-სთვის (%s) აუცილებელი გაშვების გარემო აღმოჩენილია დაშორებულებში:" + +#: app/flatpak-cli-transaction.c:112 +msgid "Which do you want to install (0 to abort)?" +msgstr "რომელი გნებავთ, დააყენოთ (0 გასაუქმებლად)?" + +#: app/flatpak-cli-transaction.c:132 +#, c-format +msgid "Configuring %s as new remote '%s'\n" +msgstr "%s-ის მორგება, როგორც ახალი დაშორებული '%s'\n" + +#. default to yes on Enter +#: app/flatpak-cli-transaction.c:139 +#, c-format +msgid "" +"The remote '%s', referred to by '%s' at location %s contains additional " +"applications.\n" +"Should the remote be kept for future installations?" +msgstr "" +"დაშორებული '%s', რომელსაც მიმართავს '%s' მდებარეობაზე '%s' დამატებით " +"აპლიკაციებს შეიცავს.\n" +"დავიტოვო ეს დაშორებული მომავალში გამოსაყენებლად?" + +#. default to yes on Enter +#: app/flatpak-cli-transaction.c:147 +#, c-format +msgid "" +"The application %s depends on runtimes from:\n" +" %s\n" +"Configure this as new remote '%s'" +msgstr "" +"აპლიკაცია %s დამოკიდებულია გაშვების გარემოებზე დაშორებულიდან:\n" +" %s\n" +"ამის ახალ დაშორებულად '%s' გამოყენება" + +#: app/flatpak-cli-transaction.c:411 +msgid "Installing…" +msgstr "დაყენება…" + +#: app/flatpak-cli-transaction.c:413 +#, c-format +msgid "Installing %d/%d…" +msgstr "დაყენება %d/%d…" + +#: app/flatpak-cli-transaction.c:418 +msgid "Updating…" +msgstr "მიმდინარეობს განახლება…" + +#: app/flatpak-cli-transaction.c:420 +#, c-format +msgid "Updating %d/%d…" +msgstr "განახლება %d/%d…" + +#: app/flatpak-cli-transaction.c:425 +msgid "Uninstalling…" +msgstr "წაშლა…" + +#: app/flatpak-cli-transaction.c:427 +#, c-format +msgid "Uninstalling %d/%d…" +msgstr "%d/%d წაშლა…" + +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 +#, c-format +msgid "Info: %s was skipped" +msgstr "ინფორმაცია: %s გამოტოვებულია" + +#: app/flatpak-cli-transaction.c:516 +#, c-format +msgid "Warning: %s%s%s already installed" +msgstr "გაფრთხილება: %s%s%s უკვე დაყენებულია" + +#: app/flatpak-cli-transaction.c:519 +#, c-format +msgid "Error: %s%s%s already installed" +msgstr "შეცდომა: %s%s%s უკვე დაყენებულია" + +#: app/flatpak-cli-transaction.c:525 +#, c-format +msgid "Warning: %s%s%s not installed" +msgstr "გაფრთხილება: %s%s%s დაყენებული არაა" + +#: app/flatpak-cli-transaction.c:528 +#, c-format +msgid "Error: %s%s%s not installed" +msgstr "შეცდომა: %s%s%s დაყენებული არაა" + +#: app/flatpak-cli-transaction.c:534 +#, c-format +msgid "Warning: %s%s%s needs a later flatpak version" +msgstr "გაფრთხილება: %s%s%s-ს flatpak-ის უფრო ახალი ვერსია სჭირდება" + +#: app/flatpak-cli-transaction.c:537 +#, c-format +msgid "Error: %s%s%s needs a later flatpak version" +msgstr "შეცდომა: %s%s%s-ს flatpak-ის უფრო ახალი ვერსია სჭირდება" + +#: app/flatpak-cli-transaction.c:543 +msgid "Warning: Not enough disk space to complete this operation" +msgstr "გაფრთხილება: ოპერაციის დასასრულებლად დისკზე საკმარისი ადგილი არაა" + +#: app/flatpak-cli-transaction.c:545 +msgid "Error: Not enough disk space to complete this operation" +msgstr "შეცდომა: ოპერაციის დასასრულებლად დისკზე საკმარისი ადგილი არაა" + +#: app/flatpak-cli-transaction.c:550 +#, c-format +msgid "Warning: %s" +msgstr "გაფრთხილება: %s" + +#: app/flatpak-cli-transaction.c:552 +#, c-format +msgid "Error: %s" +msgstr "შეცდომა:%s" + +#: app/flatpak-cli-transaction.c:567 +#, c-format +msgid "Failed to install %s%s%s: " +msgstr "%s%s%s-ის დაყენება ჩავარდა: " + +#: app/flatpak-cli-transaction.c:574 +#, c-format +msgid "Failed to update %s%s%s: " +msgstr "%s%s%s-ის განახლება ჩავარდა: " + +#: app/flatpak-cli-transaction.c:581 +#, c-format +msgid "Failed to install bundle %s%s%s: " +msgstr "ჩავარდა დაყენება პაკეტისთვის %s%s%s: " + +#: app/flatpak-cli-transaction.c:588 +#, c-format +msgid "Failed to uninstall %s%s%s: " +msgstr "%s%s%s-ის წაშლა ჩავარდა: " + +#: app/flatpak-cli-transaction.c:630 +#, c-format +msgid "Authentication required for remote '%s'\n" +msgstr "დაშორებული '%s'-ისთვის ავთენტიკაცია გჭირდებათ\n" + +#: app/flatpak-cli-transaction.c:631 +msgid "Open browser?" +msgstr "გავხსნა ბრაუზერში?" + +#: app/flatpak-cli-transaction.c:687 +#, c-format +msgid "Login required remote %s (realm %s)\n" +msgstr "დაშორებულის %s (რეალმი %s) გამოსაყენებლად შესვლა დაგჭირდებათ\n" + +#: app/flatpak-cli-transaction.c:692 +msgid "Password" +msgstr "პაროლი" + +#. Only runtimes can be pinned +#: app/flatpak-cli-transaction.c:747 +#, c-format +msgid "" +"\n" +"Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, in favor of " +"%s%s%s branch %s%s%s\n" +msgstr "" +"\n" +"ინფორმაცია: (მიმაგრებული) გაშვების გარემოს %s%s%s ბრენჩის %s%s%s მხარდაჭერა " +"ამოწურულია. გამოიყენეთ %s%s%s ბრენჩი %s%s%s\n" + +#: app/flatpak-cli-transaction.c:753 +#, c-format +msgid "" +"\n" +"Info: runtime %s%s%s branch %s%s%s is end-of-life, in favor of %s%s%s branch " +"%s%s%s\n" +msgstr "" +"\n" +"ინფორმაცია: გაშვების გარემოს %s%s%s ბრენჩის %s%s%s მხარდაჭერა ამოწურულია. " +"გამოიყენეთ %s%s%s ბრენჩი %s%s%s\n" + +#: app/flatpak-cli-transaction.c:756 +#, c-format +msgid "" +"\n" +"Info: app %s%s%s branch %s%s%s is end-of-life, in favor of %s%s%s branch " +"%s%s%s\n" +msgstr "" +"\n" +"ინფორმაცია: აპის %s%s%s ბრენჩის %s%s%s მხარდაჭერა ამოწურულია. გამოიყენეთ " +"%s%s%s ბრენჩი %s%s%s\n" + +#. Only runtimes can be pinned +#: app/flatpak-cli-transaction.c:768 +#, c-format +msgid "" +"\n" +"Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" +msgstr "" +"\n" +"ინფორმაცია: (მიმაგრებული) გაშვების გარემოს %s%s%s ბრენჩის %s%s%s მხარდაჭერა " +"ამოწურულია მიზეზით:\n" + +#: app/flatpak-cli-transaction.c:774 +#, c-format +msgid "" +"\n" +"Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" +msgstr "" +"\n" +"ინფორმაცია: გაშვების გარემოს %s%s%s ბრენჩის %s%s%s მხარდაჭერა ამოწურულია " +"მიზეზით:\n" + +#: app/flatpak-cli-transaction.c:777 +#, c-format +msgid "" +"\n" +"Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" +msgstr "" +"\n" +"ინფორმაცია: აპის %s%s%s ბრენჩის %s%s%s მხარდაჭერა ამოწურულია მიზეზით:\n" + +#: app/flatpak-cli-transaction.c:951 +#, c-format +msgid "Info: applications using this extension:\n" +msgstr "ინფორმაცია: აპლიკაციები, რომლებიც ამ გაფართოებას იყენებენ:\n" + +#: app/flatpak-cli-transaction.c:953 +#, c-format +msgid "Info: applications using this runtime:\n" +msgstr "ინფორმაცია: აპლიკაციები, რომლებიც ამ გაშვების გარემოს იყენებენ:\n" + +#: app/flatpak-cli-transaction.c:972 +msgid "Replace?" +msgstr "ჩავანაცვლო?" + +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format +msgid "Updating to rebased version\n" +msgstr "რებაზირებულ ვერსიაზე განახლება\n" + +#: app/flatpak-cli-transaction.c:999 +#, c-format +msgid "Failed to rebase %s to %s: " +msgstr "%s-ის %s-ზე რებაზირების შეცდომა: " + +#: app/flatpak-cli-transaction.c:1265 +#, c-format +msgid "New %s%s%s permissions:" +msgstr "ახალი %s%s%s წვდომები:" + +#: app/flatpak-cli-transaction.c:1267 +#, c-format +msgid "%s%s%s permissions:" +msgstr "%s%s%s წვდომები:" + +#: app/flatpak-cli-transaction.c:1331 +msgid "Warning: " +msgstr "გაფრთხილება: " + +#. translators: This is short for operation, the title of a one-char column +#: app/flatpak-cli-transaction.c:1430 +msgid "Op" +msgstr "ოპი" + +#. Avoid resizing the download column too much, +#. * by making the title as long as typical content +#. +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 +msgid "partial" +msgstr "ნაწილობრივ" + +#: app/flatpak-cli-transaction.c:1522 +msgid "Proceed with these changes to the user installation?" +msgstr "გადავატარო ეს ცვლილებები მომხმარებლის დაყენებულ პროგრამას?" + +#: app/flatpak-cli-transaction.c:1524 +msgid "Proceed with these changes to the system installation?" +msgstr "გადავატარო ეს ცვლილებები სისტემაში დაყენებულ პროგრამას?" + +#: app/flatpak-cli-transaction.c:1526 +#, c-format +msgid "Proceed with these changes to the %s?" +msgstr "გადავატარო ეს ცვლილებები %s-ს?" + +#: app/flatpak-cli-transaction.c:1698 +msgid "Changes complete." +msgstr "ცვლილებები დასრულებულია." + +#: app/flatpak-cli-transaction.c:1700 +msgid "Uninstall complete." +msgstr "წაშლა დასრულებულია." + +#: app/flatpak-cli-transaction.c:1702 +msgid "Installation complete." +msgstr "დაყენება დასრულებულია." + +#: app/flatpak-cli-transaction.c:1704 +msgid "Updates complete." +msgstr "განახლება დასრულდა." + +#. For updates/!stop_on_first_error we already printed all errors so we make up +#. a different one. +#: app/flatpak-cli-transaction.c:1737 +msgid "There were one or more errors" +msgstr "მოხდა ერთ ან მეტი შეცდომა" + +#. translators: please keep the leading space +#: app/flatpak-main.c:76 +msgid " Manage installed applications and runtimes" +msgstr " დაყენებული აპლიკაციებისა და გაშვების გარემოების მართვა" + +#: app/flatpak-main.c:77 +msgid "Install an application or runtime" +msgstr "აპლიკაციის ან გაშვების გარემოს დაყენება" + +#: app/flatpak-main.c:78 +msgid "Update an installed application or runtime" +msgstr "დაყენებული აპლიკაციის ან გაშვების გარემოს განახლება" + +#: app/flatpak-main.c:81 +msgid "Uninstall an installed application or runtime" +msgstr "დაყენებული აპლიკაციის ან გაშვების გარემოს წაშლა" + +#: app/flatpak-main.c:84 +msgid "Mask out updates and automatic installation" +msgstr "განახლებებისა და ავტომატური დაყენებების შენიღბვა" + +#: app/flatpak-main.c:85 +msgid "Pin a runtime to prevent automatic removal" +msgstr "გაშვების გარემოს მიმაგრება მისი წაშლის თავიდან ასაცილებლად" + +#: app/flatpak-main.c:86 +msgid "List installed apps and/or runtimes" +msgstr "დაყენებული აპებისა და გაშვების გარემოების ჩამოთვლა" + +#: app/flatpak-main.c:87 +msgid "Show info for installed app or runtime" +msgstr "დაყენებული აპის ან გაშვების გარემოს შესახებ ინფორმაციის ჩვენება" + +#: app/flatpak-main.c:88 +msgid "Show history" +msgstr "ისტორიის ჩვენება" + +#: app/flatpak-main.c:89 +msgid "Configure flatpak" +msgstr "Flatpak-ის მორგება" + +#: app/flatpak-main.c:90 +msgid "Repair flatpak installation" +msgstr "Flatpak -ის ფაილების შეკეთება" + +#: app/flatpak-main.c:91 +msgid "Put applications or runtimes onto removable media" +msgstr "აპლიკაციების ან გაშვების გარემოების მოხსნად მედიაზე მოთავსება" + +#. translators: please keep the leading newline and space +#: app/flatpak-main.c:94 +msgid "" +"\n" +" Find applications and runtimes" +msgstr "" +"\n" +" აპლიკაციებისა და გაშვების გარემოების მოძებნა" + +#: app/flatpak-main.c:95 +msgid "Search for remote apps/runtimes" +msgstr "დაშორებული აპების/გაშვების გარემოების მოძებნა" + +#. translators: please keep the leading newline and space +#: app/flatpak-main.c:98 +msgid "" +"\n" +" Manage running applications" +msgstr "" +"\n" +"გაშვებული აპლიკაციების მართვა" + +#: app/flatpak-main.c:99 +msgid "Run an application" +msgstr "აპლიკაციის გაშვება" + +#: app/flatpak-main.c:100 +msgid "Override permissions for an application" +msgstr "აპლიკაციისთვის წვდომების გადაფარვა" + +#: app/flatpak-main.c:101 +msgid "Specify default version to run" +msgstr "მიუთითეთ ნაგულისხმები გასაშვები ვერსია" + +#: app/flatpak-main.c:102 +msgid "Enter the namespace of a running application" +msgstr "გაშვებული აპლიკაციის სახელების სივრცეში შესვლა" + +#: app/flatpak-main.c:103 +msgid "Enumerate running applications" +msgstr "გაშვებული პროგრამების ჩამონათვალი" + +#: app/flatpak-main.c:104 +msgid "Stop a running application" +msgstr "გაშვებული პროგრამის შეჩერება" + +#. translators: please keep the leading newline and space +#: app/flatpak-main.c:107 +msgid "" +"\n" +" Manage file access" +msgstr "" +"\n" +" ფაილებზე წვდომების მართვა" + +#: app/flatpak-main.c:108 +msgid "List exported files" +msgstr "გატანილი ფაილების სია" + +#: app/flatpak-main.c:109 +msgid "Grant an application access to a specific file" +msgstr "აპლიკაციისთვის მითითებულ ფაილზე წვდომის მიცემა" + +#: app/flatpak-main.c:110 +msgid "Revoke access to a specific file" +msgstr "მითითებულ ფაილზე წვდომის აკრძალვა" + +#: app/flatpak-main.c:111 +msgid "Show information about a specific file" +msgstr "მითითებული ფაილის შესახებ ინფორმაციის ჩვენება" + +#. translators: please keep the leading newline and space +#: app/flatpak-main.c:115 +msgid "" +"\n" +" Manage dynamic permissions" +msgstr "" +"\n" +"დინამიკური წვდომების მართვა" + +#: app/flatpak-main.c:116 +msgid "List permissions" +msgstr "წვდომების სია" + +#: app/flatpak-main.c:117 +msgid "Remove item from permission store" +msgstr "წვდომების სიიდან ელემენტის წაშლა" + +#: app/flatpak-main.c:119 +msgid "Set permissions" +msgstr "წვდომების დაყენება" + +#: app/flatpak-main.c:120 +msgid "Show app permissions" +msgstr "აპის წვდომების ჩვენება" + +#: app/flatpak-main.c:121 +msgid "Reset app permissions" +msgstr "აპის წვდომების საწყის მნიშვნელობებზე დაყენება" + +#. translators: please keep the leading newline and space +#: app/flatpak-main.c:124 +msgid "" +"\n" +" Manage remote repositories" +msgstr "" +"\n" +" დაშორებული რეპოზიტორიების მართვა" + +#: app/flatpak-main.c:125 +msgid "List all configured remotes" +msgstr "მორგებული დაშორებულების სია" + +#: app/flatpak-main.c:126 +msgid "Add a new remote repository (by URL)" +msgstr "ახალი დაშორებული რეპოზიტორიის დამატება (URL-ით)" + +#: app/flatpak-main.c:127 +msgid "Modify properties of a configured remote" +msgstr "მორგებული დაშორებულის თვისებების შეცვლა" + +#: app/flatpak-main.c:128 +msgid "Delete a configured remote" +msgstr "მორგებული დაშორებულის წაშლა" + +#: app/flatpak-main.c:130 +msgid "List contents of a configured remote" +msgstr "მორგებული დაშორებულის შემცველობის სია" + +#: app/flatpak-main.c:131 +msgid "Show information about a remote app or runtime" +msgstr "დაშორებული აპის ან გაშვების გარემოს შესახებ ინფორმაციის ჩვენება" + +#. translators: please keep the leading newline and space +#: app/flatpak-main.c:134 +msgid "" +"\n" +" Build applications" +msgstr "" +"\n" +"\n" +" აპლიკაციების აგება" + +#: app/flatpak-main.c:135 +msgid "Initialize a directory for building" +msgstr "აგების საქაღალდის ინიციალიზაცია" + +#: app/flatpak-main.c:136 +msgid "Run a build command inside the build dir" +msgstr "აგების საქაღალდეში აგების ბრძანების გაშვება" + +#: app/flatpak-main.c:137 +msgid "Finish a build dir for export" +msgstr "გასატანად აგების საქაღალდის დასრულება" + +#: app/flatpak-main.c:138 +msgid "Export a build dir to a repository" +msgstr "აგების საქაღალდის რეპოზიტორიაში გატანა" + +#: app/flatpak-main.c:139 +msgid "Create a bundle file from a ref in a local repository" +msgstr "ლოკალურ რეპოზიტორიაში მიმართვიდან პაკეტის შექმნა" + +#: app/flatpak-main.c:140 +msgid "Import a bundle file" +msgstr "პაკეტის ფაილის შემოტანა" + +#: app/flatpak-main.c:141 +msgid "Sign an application or runtime" +msgstr "აპლიკაციის ან გაშვების გარემოს ხელმოწერა" + +#: app/flatpak-main.c:142 +msgid "Update the summary file in a repository" +msgstr "რეპოზიტორიაში შეჯამების ფაილის განახლება" + +#: app/flatpak-main.c:143 +msgid "Create new commit based on existing ref" +msgstr "ახალი კომიტის შექმნა არსებულ მიმართვაზე დაყრდნობით" + +#: app/flatpak-main.c:144 +msgid "Show information about a repo" +msgstr "რეპოზიტორიის შესახებ ინფორმაციის ჩვენება" + +#: app/flatpak-main.c:161 +msgid "Show debug information, -vv for more detail" +msgstr "გამართვის ინფორმაციის ჩვენება. მეტი დეტალებისთვის გამოიყენეთ -vv" + +#: app/flatpak-main.c:162 +msgid "Show OSTree debug information" +msgstr "OSTree-ის გამართვის ინფორმაციის ჩვენება" + +#: app/flatpak-main.c:168 +msgid "Print version information and exit" +msgstr "ვერსიის ჩვენება და გასვლა" + +#: app/flatpak-main.c:169 +msgid "Print default arch and exit" +msgstr "ნაგულისხმები არქიტექტურის გამოტანა და გასვლა" + +#: app/flatpak-main.c:170 +msgid "Print supported arches and exit" +msgstr "მხარდაჭერილი არქიტექტურების გამოტანა და გასვლა" + +#: app/flatpak-main.c:171 +msgid "Print active gl drivers and exit" +msgstr "აქტიური GL დრაივერების გამოტანა და გასვლა" + +#: app/flatpak-main.c:172 +msgid "Print paths for system installations and exit" +msgstr "სისტემურ პაკეტებამდე ბილიკების გამოტანა და გასვლა" + +#: app/flatpak-main.c:173 +msgid "Print the updated environment needed to run flatpaks" +msgstr "Flatpak-ების გასაშვებად საჭირო განახლებული გარემოს გამოტანა" + +#: app/flatpak-main.c:174 +msgid "Only include the system installation with --print-updated-env" +msgstr "" +"--print-updated-env-თან ერთად მხოლოდ სისტემაში დაყენებული პაკეტების გამოტანა" + +#: app/flatpak-main.c:179 +msgid "Work on the user installation" +msgstr "მომხმარებლის დაყენებულ პროგრამებზე მუშაობა" + +#: app/flatpak-main.c:180 +msgid "Work on the system-wide installation (default)" +msgstr "მთელ სისტემაში დაყენებულ პაკეტებზე მუშაობა (ნაგულისხმები)" + +#: app/flatpak-main.c:181 +msgid "Work on a non-default system-wide installation" +msgstr "არანაგულისხმებ მთელ-სისტემაში-დაყენებულ პაკეტებზე მუშაობა" + +#: app/flatpak-main.c:211 +msgid "Builtin Commands:" +msgstr "ჩაშენებული ბრძანებები:" + +#: app/flatpak-main.c:297 +#, c-format +msgid "" +"Note that the directories %s are not in the search path set by the " +"XDG_DATA_DIRS environment variable, so applications installed by Flatpak may " +"not appear on your desktop until the session is restarted." +msgstr "" +"დაიმახსოვრეთ, რომ საქაღალდეები %s გარემოს ცვლადის XDG_DATA_DIRS მიერ " +"დაყენებულ ძებნის ბილიკში არ შედიან, ასე რომ აპლიკაციები, რომლებსაც Flatpak-ი " +"დააყენებს, თქვენს სამუშაო მაგიდაზე მანამდე, სანამ სესიას არ გადატვირთავთ, " +"შეიძლება, არ გამოჩნდეს." + +#: app/flatpak-main.c:311 +#, c-format +msgid "" +"Note that the directory %s is not in the search path set by the " +"XDG_DATA_DIRS environment variable, so applications installed by Flatpak may " +"not appear on your desktop until the session is restarted." +msgstr "" +"დაიმახსოვრეთ, რომ საქაღალდეი %s გარემოს ცვლადის XDG_DATA_DIRS მიერ დაყენებულ " +"ძებნის ბილიკში არ შედის, ასე რომ აპლიკაციები, რომლებსაც Flatpak-ი დააყენებს, " +"თქვენს სამუშაო მაგიდაზე მანამდე, სანამ სესიას არ გადატვირთავთ, შეიძლება, არ " +"გამოჩნდეს." + +#: app/flatpak-main.c:380 +msgid "" +"Refusing to operate under sudo with --user. Omit sudo to operate on the user " +"installation, or use a root shell to operate on the root user's installation." +msgstr "" +"--user-ით sudo-ის ქვეშ ოპერირება უარყოფილია. მომხმარებლისთვის დაყენებისას " +"ამოიღეთ sudo ან root მომხმარებლის დაყენებული პაკეტების სამართავად, root " +"მომხმარებლის გარსი გამოიყენეთ." + +#: app/flatpak-main.c:452 +msgid "" +"Multiple installations specified for a command that works on one installation" +msgstr "" +"ბრძანებას, რომელიც მხოლოდ ერთ დაყენებულ პაკეტზე მუშაობს, ერთზე მეტი " +"დაყენებული პაკეტი გადაეცა" + +#: app/flatpak-main.c:503 app/flatpak-main.c:690 +#, c-format +msgid "See '%s --help'" +msgstr "იხილეთ '%s --help'" + +#: app/flatpak-main.c:699 +#, c-format +msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" +msgstr "'%s' flatpak-ის ბრძანება არაა. '%s%s' იგულისხმეთ?" + +#: app/flatpak-main.c:702 +#, c-format +msgid "'%s' is not a flatpak command" +msgstr "'%s' flatpak-ის ბრძანება არაა" + +#: app/flatpak-main.c:817 +msgid "No command specified" +msgstr "ბრძანება მითითებული არაა" + +#: app/flatpak-main.c:976 +msgid "error:" +msgstr "შეცდომა:" + +#: app/flatpak-quiet-transaction.c:77 +#, c-format +msgid "Installing %s\n" +msgstr "%s-ის დაყენება\n" + +#: app/flatpak-quiet-transaction.c:81 +#, c-format +msgid "Updating %s\n" +msgstr "%s-ის განახლება\n" + +#: app/flatpak-quiet-transaction.c:85 +#, c-format +msgid "Uninstalling %s\n" +msgstr "%s-ის წაშლა\n" + +#: app/flatpak-quiet-transaction.c:107 +#, c-format +msgid "Warning: Failed to install %s: %s\n" +msgstr "" +"გაფრთხილება: %s-ის დაყენება ჩავარდა: %s\n" +"\n" + +#: app/flatpak-quiet-transaction.c:110 +#, c-format +msgid "Error: Failed to install %s: %s\n" +msgstr "" +"შეცდომა: %s-ის დაყენება ჩავარდა: %s\n" +"\n" + +#: app/flatpak-quiet-transaction.c:116 +#, c-format +msgid "Warning: Failed to update %s: %s\n" +msgstr "გაფრთხილება: %s-ის განახლების შეცდომა: %s\n" + +#: app/flatpak-quiet-transaction.c:119 +#, c-format +msgid "Error: Failed to update %s: %s\n" +msgstr "შეცდომა: %s-ის განახლების შეცდომა: %s\n" + +#: app/flatpak-quiet-transaction.c:125 +#, c-format +msgid "Warning: Failed to install bundle %s: %s\n" +msgstr "გაფრთხილება: პაკეტის %s დაყენება ჩავარდა: %s\n" + +#: app/flatpak-quiet-transaction.c:128 +#, c-format +msgid "Error: Failed to install bundle %s: %s\n" +msgstr "" +"შეცდომა: პაკეტის %s დაყენება ჩავარდა: %s\n" +"\n" + +#: app/flatpak-quiet-transaction.c:134 +#, c-format +msgid "Warning: Failed to uninstall %s: %s\n" +msgstr "გაფრთხილება: %s-ის წაშლა ჩავარდა: %s\n" + +#: app/flatpak-quiet-transaction.c:137 +#, c-format +msgid "Error: Failed to uninstall %s: %s\n" +msgstr "" +"შეცდომა: %s-ის წაშლა ჩავარდა: %s\n" +"\n" + +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 +#, c-format +msgid "%s already installed" +msgstr "%s უკვე დაყენებულია" + +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 +#, c-format +msgid "%s not installed" +msgstr "%s დაყენებული არაა" + +#: app/flatpak-quiet-transaction.c:170 +#, c-format +msgid "%s needs a later flatpak version" +msgstr "%s-ს flatpak-ის უფრო ახალი ვერსია სჭირდება" + +#: app/flatpak-quiet-transaction.c:172 +msgid "Not enough disk space to complete this operation" +msgstr "ოპერაციის დასასრულებლად დისკზე საკმარისი ადგილი არაა" + +#: app/flatpak-quiet-transaction.c:239 +#, c-format +msgid "Info: %s is end-of-life, in favor of %s\n" +msgstr "ინფორმაცია %s-ის მხარდაჭერა ამოწურულია. გამოიყენეთ %s\n" + +#: app/flatpak-quiet-transaction.c:241 +#, c-format +msgid "Info: %s is end-of-life, with reason: %s\n" +msgstr "ინფორმაცია %s-ის მხარდაჭერა ამოწურულია. მიზეზი: %s\n" + +#: app/flatpak-quiet-transaction.c:251 +#, c-format +msgid "Failed to rebase %s to %s: %s\n" +msgstr "%s-ის %s-ზე რებაზირების შეცდომა: %s\n" + +#: common/flatpak-auth.c:58 +#, c-format +msgid "No authenticator configured for remote `%s`" +msgstr "დაშორებულისთვის '%s' ავთენტიკატორი მორგებული არაა" + +#: common/flatpak-context.c:206 +#, c-format +msgid "Unknown share type %s, valid types are: %s" +msgstr "გაზიარებულის უცნობი ტიპი %s. სწორი ტიპებია %s" + +#: common/flatpak-context.c:241 +#, c-format +msgid "Unknown policy type %s, valid types are: %s" +msgstr "პოლიტიკის უცნობი ტიპი %s. სწორი ტიპებია %s" + +#: common/flatpak-context.c:279 +#, c-format +msgid "Invalid dbus name %s" +msgstr "არასწორი dbus სახელი %s" + +#: common/flatpak-context.c:292 +#, c-format +msgid "Unknown socket type %s, valid types are: %s" +msgstr "სოკეტის უცნობი ტიპი %s. სწორი ტიპებია %s" + +#: common/flatpak-context.c:321 +#, c-format +msgid "Unknown device type %s, valid types are: %s" +msgstr "მოწყობილობის უცნობი ტიპი %s. სწორი ტიპებია %s" + +#: common/flatpak-context.c:349 +#, c-format +msgid "Unknown feature type %s, valid types are: %s" +msgstr "თვისების უცნობი ტიპი %s. სწორი ტიპებია %s" + +#: common/flatpak-context.c:964 +#, c-format +msgid "Filesystem location \"%s\" contains \"..\"" +msgstr "ფაილური სისტემის ბილიკი \"%s\" \"..\"-ს შეიცავს" + +#: common/flatpak-context.c:1002 +#, c-format +msgid "" +"--filesystem=/ is not available, use --filesystem=host for a similar result" +msgstr "" +"--filesystem=/ ხელმისაწვდომი არაა. მსგავსი შედეგისთვის გამოიყენეთ --" +"filesystem=host" + +#: common/flatpak-context.c:1036 +#, c-format +msgid "" +"Unknown filesystem location %s, valid locations are: host, host-os, host-" +"etc, home, xdg-*[/…], ~/dir, /dir" +msgstr "" +"ფაილური სისტემის უცნობი მდებარეობა %s, სწორი მდებარეობებია: host, host-os, " +"host-etc, home, xdg-*[/…], ~/dir, /dir" + +#: common/flatpak-context.c:1324 +#, c-format +msgid "Invalid env format %s" +msgstr "არასწორი გარემოს ფორმატი %s" + +#: common/flatpak-context.c:1412 +#, c-format +msgid "Environment variable name must not contain '=': %s" +msgstr "გარემოს ცვლადის სახელი \"=\" -ს არ შეიძლება შეიცავდეს: %s" + +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format +msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" +msgstr "" +"--add-policy პარამეტრის არგუმენტები ქვესისტემა.პარამეტრი=მნიშვნელობა " +"ფორმატში უნდა იყოს" + +#: common/flatpak-context.c:1555 +#, c-format +msgid "--add-policy values can't start with \"!\"" +msgstr "--add-policy-ის მნიშვნელობები \"!\"-ით არ შეიძლება, იწყებოდეს" + +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format +msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" +msgstr "" +"--remove-policy-ის არგუმენტები ქვესისტემა.პარამეტრი=მნიშვნელობა ფორმატში " +"უნდა იყოს" + +#: common/flatpak-context.c:1595 +#, c-format +msgid "--remove-policy values can't start with \"!\"" +msgstr "--remove-policy-ის მნიშვნელობები \"!\"-ით არ შეიძლება, იწყებოდეს" + +#: common/flatpak-context.c:1670 +msgid "Share with host" +msgstr "ჰოსტთან გაზიარება" + +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 +msgid "SHARE" +msgstr "გაზიარება" + +#: common/flatpak-context.c:1671 +msgid "Unshare with host" +msgstr "ჰოსტთან გაზიარების მოხსნა" + +#: common/flatpak-context.c:1672 +msgid "Expose socket to app" +msgstr "სოკეტის გამოჩენა აპისთვის" + +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 +msgid "SOCKET" +msgstr "სოკეტი" + +#: common/flatpak-context.c:1673 +msgid "Don't expose socket to app" +msgstr "აპი სოკეტს ვერ დაინახავს" + +#: common/flatpak-context.c:1674 +msgid "Expose device to app" +msgstr "მოწყობილობის გამოჩენა აპისთვის" + +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 +msgid "DEVICE" +msgstr "მოწყობილობა" + +#: common/flatpak-context.c:1675 +msgid "Don't expose device to app" +msgstr "აპი მოწყობილობას ვერ დაინახავს" + +#: common/flatpak-context.c:1676 +msgid "Allow feature" +msgstr "ფუნქციის დაშვება" + +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 +msgid "FEATURE" +msgstr "თვისება" + +#: common/flatpak-context.c:1677 +msgid "Don't allow feature" +msgstr "ფუნქციის არ-დაშვება" + +#: common/flatpak-context.c:1678 +msgid "Expose filesystem to app (:ro for read-only)" +msgstr "აპისთვის ფაილური სისტემის დანახება (მხოლოდ-კითხვისთვის :ro)" + +#: common/flatpak-context.c:1678 +msgid "FILESYSTEM[:ro]" +msgstr "FILESYSTEM[:ro]" + +#: common/flatpak-context.c:1679 +msgid "Don't expose filesystem to app" +msgstr "აპი ფაილურ სისტემას ვერ დაინახავს" + +#: common/flatpak-context.c:1679 +msgid "FILESYSTEM" +msgstr "FILESYSTEM" + +#: common/flatpak-context.c:1680 +msgid "Set environment variable" +msgstr "გარემოს ცვლადის დაყენება" + +#: common/flatpak-context.c:1680 +msgid "VAR=VALUE" +msgstr "VAR=VALUE" + +#: common/flatpak-context.c:1681 +msgid "Read environment variables in env -0 format from FD" +msgstr "გარემოს ცვლადების წაკითხვა გარემოში -0 ფორმატით FD-დან" + +#: common/flatpak-context.c:1681 +msgid "FD" +msgstr "FD" + +#: common/flatpak-context.c:1682 +msgid "Remove variable from environment" +msgstr "გარემოდან ცვლადის წაშლა" + +#: common/flatpak-context.c:1682 +msgid "VAR" +msgstr "VAR" + +#: common/flatpak-context.c:1683 +msgid "Allow app to own name on the session bus" +msgstr "აპისთვის სესიის მატარებელზე საკუთარი სახელის ქონის ნების დართვა" + +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 +msgid "DBUS_NAME" +msgstr "DBUS_NAME" + +#: common/flatpak-context.c:1684 +msgid "Allow app to talk to name on the session bus" +msgstr "აპისთვის სესიის მატარებელზე სახელთან ლაპარაკის ნების დართვა" + +#: common/flatpak-context.c:1685 +msgid "Don't allow app to talk to name on the session bus" +msgstr "აპისთვის სესიის მატარებელზე სახელთან ლაპარაკის აკრძალვა" + +#: common/flatpak-context.c:1686 +msgid "Allow app to own name on the system bus" +msgstr "აპისთვის სისტემურ მატარებელზე საკუთარი სახელის ქონის ნების დართვა" + +#: common/flatpak-context.c:1687 +msgid "Allow app to talk to name on the system bus" +msgstr "აპისთვის სესიის მატარებელზე სახელთან ლაპარაკის ნების დართვა" + +#: common/flatpak-context.c:1688 +msgid "Don't allow app to talk to name on the system bus" +msgstr "აპისთვის სისტემურ მატარებელზე სახელთან ლაპარაკის აკრძალვა" + +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "აპისთვის სისტემურ მატარებელზე საკუთარი სახელის ქონის ნების დართვა" + +#: common/flatpak-context.c:1690 +msgid "Add generic policy option" +msgstr "ზოგადი პოლიტიკის პარამეტრის დამატება" + +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 +msgid "SUBSYSTEM.KEY=VALUE" +msgstr "ქვესისტემა.პარამეტრი=მნიშვნელობა" + +#: common/flatpak-context.c:1691 +msgid "Remove generic policy option" +msgstr "ზოგადი პოლიტიკის პარამეტრის წაშლა" + +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 +msgid "FILENAME" +msgstr "ფაილის სახელი" + +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "მუდმივი ბილიკი საწყის საქაღალდემდე" + +#. This is not needed/used anymore, so hidden, but we accept it for backwards compat +#: common/flatpak-context.c:1698 +msgid "Don't require a running session (no cgroups creation)" +msgstr "გაშვებული სესია მოთხოვნილი არ იქნება (cgroup-ები არ შეიქმნება)" + +#: common/flatpak-context.c:2817 +#, c-format +msgid "Not replacing \"%s\" with tmpfs: %s" +msgstr "\"%s\" tmpfs-ით არ ჩანაცვლდება: %s" + +#: common/flatpak-context.c:2825 +#, c-format +msgid "Not sharing \"%s\" with sandbox: %s" +msgstr "\"%s\" სენდბოქსთან არ გაზიარდება: %s" + +#. Even if the error is one that we would normally silence, like +#. * the path not existing, it seems reasonable to make more of a fuss +#. * about the home directory not existing or otherwise being unusable, +#. * so this is intentionally not using cannot_export() +#: common/flatpak-context.c:2921 +#, c-format +msgid "Not allowing home directory access: %s" +msgstr "საწყის საქაღალდესთან წვდომა მინიჭებული არ იქნება: %s" + +#: common/flatpak-context.c:3150 +#, c-format +msgid "Unable to provide a temporary home directory in the sandbox: %s" +msgstr "დროებითი საწყისი საქაღალდის მიწოდება შეუძლებელია სენდბოქსში: %s" + +#: common/flatpak-dir.c:425 +#, c-format +msgid "Configured collection ID ‘%s’ not in summary file" +msgstr "მორგებული კოლექციის ID '%s' შეჯამების ფაილი არაა" + +#: common/flatpak-dir.c:563 +#, c-format +msgid "Unable to load summary from remote %s: %s" +msgstr "დაშორებულიდან '%s' შეჯამების ჩატვირთვა შეუძლებელია: %s" + +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 +#, c-format +msgid "No such ref '%s' in remote %s" +msgstr "მიმართვა '%s' დაშორებულში %s არ არსებობს" + +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 +#, fuzzy, c-format +msgid "No entry for %s in remote %s summary flatpak cache" +msgstr "ჩანაწერი %s არ არსბეობს დაშორებულში '%s' შეჯამების flatpak კეშში " + +#: common/flatpak-dir.c:924 +#, c-format +msgid "No summary or Flatpak cache available for remote %s" +msgstr "დაშორებულისთვის %s შეჯამება ან Flatpak-ის კეში მიუწვდომელია" + +#: common/flatpak-dir.c:952 +#, c-format +msgid "Missing xa.data in summary for remote %s" +msgstr "დაშორებულისთვის %s შეჯამებაში xa.data აღმოჩენილი არაა" + +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 +#, c-format +msgid "Unsupported summary version %d for remote %s" +msgstr "მხარდაუჭერელი შეჯამების ვერსია %d დაშორებულისთვის %s" + +#: common/flatpak-dir.c:1045 +msgid "Remote OCI index has no registry uri" +msgstr "დაშორებულ OCI ინდექსს რეესტრის URI არ გააჩნია" + +#: common/flatpak-dir.c:1114 +#, c-format +msgid "Couldn't find ref %s in remote %s" +msgstr "მიმართვა %s დაშორებულში %s აღმოჩენილი არაა" + +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 +msgid "Image is not a manifest" +msgstr "გამოსახულება მანიფესტს არ წარმოადგენს" + +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 +#, c-format +msgid "Commit has no requested ref ‘%s’ in ref binding metadata" +msgstr "" +"კომიტს მიმართვის მიბმის მეტამონაცემებში მოთხოვნილი მიმართვა '%s' არ გააჩნია" + +#: common/flatpak-dir.c:1256 +#, c-format +msgid "Configured collection ID ‘%s’ not in binding metadata" +msgstr "მიმაგრების მეტამონაცემებში მორგებული კოლექციის ID '%s' არაა" + +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 +#, c-format +msgid "Couldn't find latest checksum for ref %s in remote %s" +msgstr "მიმართვისთვის %s დაშორებულში %s უახლესი საკონტროლო ჯამი ვერ ვიპოვე" + +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 +#, c-format +msgid "No entry for %s in remote %s summary flatpak sparse cache" +msgstr "" +"%s-სთვის ჩანაწერი დაშორებული %s-ის შეჯამების flatpak-ის იშვიათ კეშში არ " +"არსებობს" + +#: common/flatpak-dir.c:1970 +#, c-format +msgid "Commit metadata for %s not matching expected metadata" +msgstr "კომიტის მეტამონაცემები %s-სთვის მოსალოდნელ მეტამონაცემებს არ ემთხვევა" + +#: common/flatpak-dir.c:2235 +msgid "Unable to connect to system bus" +msgstr "სისტემურ მატარებელთან მიერთება შეუძლებელია" + +#: common/flatpak-dir.c:2830 +msgid "User installation" +msgstr "მომხმარებლისთვის დაყენება" + +#: common/flatpak-dir.c:2837 +#, c-format +msgid "System (%s) installation" +msgstr "სისტემაში (%s) დაყენება" + +#: common/flatpak-dir.c:2883 +#, c-format +msgid "No overrides found for %s" +msgstr "%s-სთვის გადაფარვები ვერ ვიპოვე" + +#: common/flatpak-dir.c:3036 +#, c-format +msgid "%s (commit %s) not installed" +msgstr "%s (კომიტი %s) დაყენებული არაა" + +#: common/flatpak-dir.c:4059 +#, c-format +msgid "Error parsing system flatpakrepo file for %s: %s" +msgstr "%s-სთვის სისტემური flatpakrepo ფაილის დამუშავების შეცდომა: %s" + +#: common/flatpak-dir.c:4134 +#, c-format +msgid "While opening repository %s: " +msgstr "რეპოზიტორიის (%s) გახსნისას: " + +#: common/flatpak-dir.c:4395 +#, c-format +msgid "The config key %s is not set" +msgstr "კონფიგურაციის პარამეტრი %s დაყენებული არაა" + +#: common/flatpak-dir.c:4528 +#, c-format +msgid "No current %s pattern matching %s" +msgstr "მიმდინარე %s ნიმუში, რომელიც %s-ს ემთხვევა, აღმოჩენილი არაა" + +#: common/flatpak-dir.c:4810 +msgid "No appstream commit to deploy" +msgstr "გასალაგებელი appstream-ის კომიტის გარეშე" + +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 +msgid "Can't pull from untrusted non-gpg verified remote" +msgstr "არა-gpg-ით გადამოწმებული დაშორებულიდან პული შეუძლებელია" + +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 +msgid "Extra data not supported for non-gpg-verified local system installs" +msgstr "" +"არა-GPG-ით-გადამოწმებული ლოკალური სისტემური დაყენებებისთვის დამატებითი " +"მონაცემები მხარდაჭერილი არაა" + +#: common/flatpak-dir.c:5806 +#, c-format +msgid "Invalid checksum for extra data uri %s" +msgstr "არასწორი საონტროლო ჯამი დამატებითი მონაცემები URI-სთვის %s" + +#: common/flatpak-dir.c:5811 +#, c-format +msgid "Empty name for extra data uri %s" +msgstr "ცარიელი სახელი დამატებითი მონაცემების URI-სთვის %s" + +#: common/flatpak-dir.c:5818 +#, c-format +msgid "Unsupported extra data uri %s" +msgstr "მხარდაუჭერელი დამატებითი მონაცემების URI %s" + +#: common/flatpak-dir.c:5832 +#, c-format +msgid "Failed to load local extra-data %s: %s" +msgstr "ლოკალური დამატებითი მონაცემის %s ჩატვირთვის შეცდომა: %s" + +#: common/flatpak-dir.c:5835 +#, c-format +msgid "Wrong size for extra-data %s" +msgstr "არასწორი ზომა დამატებითი-მონაცემებისთვის %s" + +#: common/flatpak-dir.c:5850 +#, c-format +msgid "While downloading %s: " +msgstr "%s-ის გადმოწერისას: " + +#: common/flatpak-dir.c:5857 +#, c-format +msgid "Wrong size for extra data %s" +msgstr "დამატებითი მონაცემების (%s) არასწორი ზომა" + +#: common/flatpak-dir.c:5866 +#, c-format +msgid "Invalid checksum for extra data %s" +msgstr "დამატებითი მონაცემების (%s) არასწორი საკონტროლო ჯამი" + +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 +#, c-format +msgid "%s commit %s already installed" +msgstr "%s (კომიტი %s) უკვე დაყენებულია" + +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 +#, c-format +msgid "While pulling %s from remote %s: " +msgstr "%s-ის პულისას დაშორებულიდან %s: " + +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 +msgid "GPG signatures found, but none are in trusted keyring" +msgstr "აღმოჩენილია GPG ხელმოწერები, მაგრამ სანდო ბრელოკში არც ერთი არაა" + +#: common/flatpak-dir.c:6419 +#, c-format +msgid "Commit for ‘%s’ has no ref binding" +msgstr "კომიტს '%s'-სთვის მიმართვის მიმაგრება არ გააჩნია" + +#: common/flatpak-dir.c:6424 +#, c-format +msgid "Commit for ‘%s’ is not in expected bound refs: %s" +msgstr "'%s'-ის კომიტი მოსალოდნელ მიბმულ მიმართვებში არაა: %s" + +#: common/flatpak-dir.c:6600 +msgid "Only applications can be made current" +msgstr "მიმდინარედ მხოლოდ აპლიკაციების დაყენება შეგიძლიათ" + +#: common/flatpak-dir.c:7304 +msgid "Not enough memory" +msgstr "მეხსიერება საკმარისი არ არის" + +#: common/flatpak-dir.c:7323 +msgid "Failed to read from exported file" +msgstr "გატანილი ფაილიდან წაკითხვის შეცდომა" + +#: common/flatpak-dir.c:7513 +msgid "Error reading mimetype xml file" +msgstr "MIMtype XML ფაილის წაკითხვის შეცდომა" + +#: common/flatpak-dir.c:7518 +msgid "Invalid mimetype xml file" +msgstr "არასწორი mimetype xml ფაილი" + +#: common/flatpak-dir.c:7604 +#, c-format +msgid "D-Bus service file '%s' has wrong name" +msgstr "D-Bus-ის სერვისის ფაილის სახელი '%s' არასწორია" + +#: common/flatpak-dir.c:7759 +#, c-format +msgid "Invalid Exec argument %s" +msgstr "არასწორი გაშვების არგუმენტი %s" + +#: common/flatpak-dir.c:8226 +msgid "While getting detached metadata: " +msgstr "მოხსნილი მეტამონაცემების მიღებისას: " + +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 +msgid "Extra data missing in detached metadata" +msgstr "მოხსნილ მეტამონაცემებში დამატებთი მონაცემები აღმოჩენილი არაა" + +#: common/flatpak-dir.c:8244 +msgid "While creating extradir: " +msgstr "დამატებითი საქაღალდის შექმნისას: " + +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 +msgid "Invalid checksum for extra data" +msgstr "დამატებითი მონაცემების არასწორი საკონტროლო ჯამი" + +#: common/flatpak-dir.c:8294 +msgid "Wrong size for extra data" +msgstr "დამატებითი მონაცემების არასწორი ზომა" + +#: common/flatpak-dir.c:8307 +#, c-format +msgid "While writing extra data file '%s': " +msgstr "დამატებითი მონაცემების ფაილის '%s' ჩაწერისას: " + +#: common/flatpak-dir.c:8315 +#, c-format +msgid "Extra data %s missing in detached metadata" +msgstr "მოხსნილ მეტამონაცემებში დამატებითი მონაცემი %s აღმოჩენილი არაა" + +#: common/flatpak-dir.c:8522 +#, c-format +msgid "apply_extra script failed, exit status %d" +msgstr "apply_extra სკრიპტის შეცდომა. გამოსვლს სტატუსია %d" + +#. Translators: The placeholder is for an app ref. +#: common/flatpak-dir.c:8688 +#, c-format +msgid "Installing %s is not allowed by the policy set by your administrator" +msgstr "%s-ის დაყენება აკრძალულია თქვენი ადმინისტრატორის წესების მიერ" + +#: common/flatpak-dir.c:8786 +#, c-format +msgid "While trying to resolve ref %s: " +msgstr "მიმართვის %s ამოხსნის მცდელობისას: " + +#: common/flatpak-dir.c:8798 +#, c-format +msgid "%s is not available" +msgstr "%s ხელმიუწვდომელია" + +#: common/flatpak-dir.c:8817 +msgid "Can't create deploy directory" +msgstr "გაშლის საქაღალდის შექმნის შეცდომა" + +#: common/flatpak-dir.c:8825 +#, c-format +msgid "Failed to read commit %s: " +msgstr "კომიტის '%s' წაკითხვის შეცდომა: " + +#: common/flatpak-dir.c:8846 +#, c-format +msgid "While trying to checkout %s into %s: " +msgstr "%s-ის %s-ში გამოთხოვისას: " + +#: common/flatpak-dir.c:8865 +msgid "While trying to checkout metadata subpath: " +msgstr "მეტამონაცემების ქვებილიკში გამოთხოვისას: " + +#: common/flatpak-dir.c:8897 +#, c-format +msgid "While trying to checkout subpath ‘%s’: " +msgstr "ქვებილიკის '%s' გამოთხოვისას: " + +#: common/flatpak-dir.c:8907 +msgid "While trying to remove existing extra dir: " +msgstr "არსებული დამატებითი საქაღალდის წაშლის მცდელობისას: " + +#: common/flatpak-dir.c:8918 +msgid "While trying to apply extra data: " +msgstr "დამატებითი მონაცემების გადატარების მცდელობისას: " + +#: common/flatpak-dir.c:8945 +#, c-format +msgid "Invalid commit ref %s: " +msgstr "არასწორი კომიტის მიმართვა %s: " + +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 +#, c-format +msgid "Deployed ref %s does not match commit (%s)" +msgstr "გაშლილი მიმართვა %s კომიტს (%s) არ ემთხვევა" + +#: common/flatpak-dir.c:8959 +#, c-format +msgid "Deployed ref %s branch does not match commit (%s)" +msgstr "გაშლილი მიმართვა %s ბრენჩი კომიტს (%s) არ ემთხვევა" + +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 +#, c-format +msgid "%s branch %s already installed" +msgstr "%s ბრენჩი %s უკვე დაყენებულია" + +#: common/flatpak-dir.c:10064 +#, c-format +msgid "Could not unmount revokefs-fuse filesystem at %s: " +msgstr "შეცდომა revokefs-fuse ფაილური სისტემის მოხსნისას მისამართზე %s: " + +#: common/flatpak-dir.c:10351 +#, c-format +msgid "This version of %s is already installed" +msgstr "%s-ის ეს ვერსია უკვე დაყენებულია" + +#: common/flatpak-dir.c:10358 +#, c-format +msgid "Can't change remote during bundle install" +msgstr "პაკეტის დაყენებისას დაშორებულის შეცვლა შეუძლებელია" + +#: common/flatpak-dir.c:10619 +msgid "Can't update to a specific commit without root permissions" +msgstr "მითითებული კომიტის განახლება root-ის წვდომების გარეშე შეუძლებელია" + +#: common/flatpak-dir.c:10899 +#, c-format +msgid "Can't remove %s, it is needed for: %s" +msgstr "%s-ის წაშლა შეუძლებელია. ის %s-ს სჭირდება" + +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 +#, c-format +msgid "%s branch %s is not installed" +msgstr "%s ბრენჩი %s დაყენებული არაა" + +#: common/flatpak-dir.c:11208 +#, c-format +msgid "%s commit %s not installed" +msgstr "%s კომიტი %s დაყენებული არაა" + +#: common/flatpak-dir.c:11544 +#, c-format +msgid "Pruning repo failed: %s" +msgstr "რეპოზიტორიის წაკვეთის შეცდომა: %s" + +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 +#, c-format +msgid "Failed to load filter '%s'" +msgstr "შეცდომა ფილტრის '%s' ჩატვირთვისას" + +#: common/flatpak-dir.c:11724 +#, c-format +msgid "Failed to parse filter '%s'" +msgstr "შეცდომა ფილტრის '%s' დამუშავებისას" + +#: common/flatpak-dir.c:12006 +msgid "Failed to write summary cache: " +msgstr "შეჯამების კეშის ჩაწერის შეცდომა: " + +#: common/flatpak-dir.c:12025 +#, c-format +msgid "No oci summary cached for remote '%s'" +msgstr "OCI შეჯამება დაშორებულისთვის '%s' დაკეშილი არაა" + +#: common/flatpak-dir.c:12250 +#, c-format +msgid "No cached summary for remote '%s'" +msgstr "დაკეშილი შეჯამება დაშორებულისთვის '%s' ვერ ვიპოვე" + +#: common/flatpak-dir.c:12291 +#, c-format +msgid "Invalid checksum for indexed summary %s read from %s" +msgstr "" +"არასწორი საკონტროლო ჯამი დაინდექსებული შეჯამებისთვის %s. წაკითხულია %s-დან" + +#: common/flatpak-dir.c:12364 +#, c-format +msgid "" +"Remote listing for %s not available; server has no summary file. Check the " +"URL passed to remote-add was valid." +msgstr "" +"%s-სთვის დაშორებული ჩამონათვალი ხელმისაწვდომი არაა, რადგან სერვერს შეჯამების " +"ფაილი არ გააჩნია. გადაამოწმეთ remote-add-ისთვის გადაცემული URL-ის სისწორე." + +#: common/flatpak-dir.c:12741 +#, c-format +msgid "Invalid checksum for indexed summary %s for remote '%s'" +msgstr "" +"არასწორი საკონტროლო ჯამი დაინდექსებული შეჯამებისთვის %s დაშორებულისთვის '%s'" + +#: common/flatpak-dir.c:13364 +#, c-format +msgid "Multiple branches available for %s, you must specify one of: " +msgstr "" +"%s-სთვის ხელმისაწვდომია ერთზე მეტი ბრენჩი. ანუ, უნდა მიუთითოთ ერთ-ერთი " +"სიიდან: " + +#: common/flatpak-dir.c:13430 +#, c-format +msgid "Nothing matches %s" +msgstr "%s-ს არაფერი ემთხვევა" + +#: common/flatpak-dir.c:13538 +#, c-format +msgid "Can't find ref %s%s%s%s%s" +msgstr "ვერ ვიპოვე მიმართვა %s%s%s%s%s" + +#: common/flatpak-dir.c:13581 +#, c-format +msgid "Error searching remote %s: %s" +msgstr "დაშორებული %s-ის მოძებნის შეცდომა: %s" + +#: common/flatpak-dir.c:13678 +#, c-format +msgid "Error searching local repository: %s" +msgstr "ლოკალურ რეპოზიტორიაშ ძებნის შეცდომა: %s" + +#: common/flatpak-dir.c:13815 +#, c-format +msgid "%s/%s/%s not installed" +msgstr "%s/%s/%s დაყენებული არაა" + +#: common/flatpak-dir.c:14018 +#, c-format +msgid "Could not find installation %s" +msgstr "%s-ის დაყენებულებში მოძებნის შეცდომა" + +#: common/flatpak-dir.c:14563 +#, c-format +msgid "Invalid file format, no %s group" +msgstr "არასწორი ფაილის ფორმატი. %s ჯგუფის გარეშე" + +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 +#, c-format +msgid "Invalid version %s, only 1 supported" +msgstr "არასწორი ვერსია %s. მხარდაჭერილია მხოლოდ 1" + +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 +#, c-format +msgid "Invalid file format, no %s specified" +msgstr "არასწორი ფაილის ფორმატი. %s მითითებული არაა" + +#. Check some minimal size so we don't get crap +#: common/flatpak-dir.c:14598 +msgid "Invalid file format, gpg key invalid" +msgstr "არასწორი ფაილის ფორმატი. GPG გასაღები არასწორია" + +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 +msgid "Collection ID requires GPG key to be provided" +msgstr "კოლექციის ID-სთვის GPG გასაღების მითითება აუცილებელია" + +#: common/flatpak-dir.c:14669 +#, c-format +msgid "Runtime %s, branch %s is already installed" +msgstr "გაშვების გარემო %s, ბრენჩი %s უკვე დაყენებულია" + +#: common/flatpak-dir.c:14670 +#, c-format +msgid "App %s, branch %s is already installed" +msgstr "აპი %s, ბრენჩი %s უკვე დაყენებულია" + +#: common/flatpak-dir.c:14903 +#, c-format +msgid "Can't remove remote '%s' with installed ref %s (at least)" +msgstr "დაშორებულის '%s' წაშლა დაყენებული მიმართვის (სულ ცოტა) %s" + +#: common/flatpak-dir.c:15002 +#, c-format +msgid "Invalid character '/' in remote name: %s" +msgstr "არასწორი სიმბოლო '/' დაშორებულის სახელში: %s" + +#: common/flatpak-dir.c:15008 +#, c-format +msgid "No configuration for remote %s specified" +msgstr "დაშორებულისთვის %s კონფიგურაცია მითითებული არაა" + +#: common/flatpak-dir.c:16505 +#, c-format +msgid "Skipping deletion of mirror ref (%s, %s)…\n" +msgstr "ასლის მიმართვის (%s, %s) წაშლის გამოტოვება...\n" + +#: common/flatpak-exports.c:916 +#, c-format +msgid "An absolute path is required" +msgstr "აუცილებელია აბსოლუტური ბილიკი" + +#: common/flatpak-exports.c:933 +#, c-format +msgid "Unable to open path \"%s\": %s" +msgstr "ვერ გავხსენი ბილიკი \"%s\": %s" + +#: common/flatpak-exports.c:940 +#, c-format +msgid "Unable to get file type of \"%s\": %s" +msgstr "ვერ მივიღე \"%s\"-ის ფაილის ტიპი: %s" + +#: common/flatpak-exports.c:949 +#, c-format +msgid "File \"%s\" has unsupported type 0o%o" +msgstr "ფაილს \"%s\" აქვს მხარდაუჭერელი ტიპი 0o%o" + +#: common/flatpak-exports.c:955 +#, c-format +msgid "Unable to get filesystem information for \"%s\": %s" +msgstr "ვერ მივიღე ფაილური სისტემის ინფორმაცია \"%s\"-სთვის: %s" + +#: common/flatpak-exports.c:965 +#, c-format +msgid "Ignoring blocking autofs path \"%s\"" +msgstr "გამოტოვებულია დამბლოკავი autofs-ის ბილიკი \"%s\"" + +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 +#, c-format +msgid "Path \"%s\" is reserved by Flatpak" +msgstr "ბილიკი \"%s\" დაცულია Flatpak-ის მიერ" + +#: common/flatpak-exports.c:1061 +#, c-format +msgid "Unable to resolve symbolic link \"%s\": %s" +msgstr "სიმბმულის \"%s\" ამოხსნა შეუძლებელია: %s" + +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "ცარიელი სტრიქონი რიცხვი არაა" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "\"%s\" უნიშნო რიცხვი არაა" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "რიცხვი \"%s\" დიაპაზონს გარეთაა [%s, %s]" + +#: common/flatpak-installation.c:835 +#, c-format +msgid "Ref %s not installed" +msgstr "მიმართვა %s დაყენებული არაა" + +#: common/flatpak-installation.c:876 +#, c-format +msgid "App %s not installed" +msgstr "აპი %s დაყენებული არაა" + +#: common/flatpak-installation.c:1396 +#, c-format +msgid "Remote '%s' already exists" +msgstr "დაშორებული '%s' უკვე არსებობს" + +#: common/flatpak-installation.c:1947 +#, c-format +msgid "As requested, %s was only pulled, but not installed" +msgstr "მოთხოვნის მიხედვით, მოხდა %s-ის მხოლოდ პული, მაგრამ არა დაყენება" + +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 +#, c-format +msgid "Unable to create directory %s" +msgstr "საქაღალდის (%s) შექმნა შეუძლებელია" + +#: common/flatpak-instance.c:554 +#, c-format +msgid "Unable to lock %s" +msgstr "%s-ის ჩაკეტვის შეცდომა" + +#: common/flatpak-instance.c:627 +#, c-format +msgid "Unable to create temporary directory in %s" +msgstr "%s-ში დროებითი საქაღალდის შექმნის შეცდომა" + +#: common/flatpak-instance.c:639 +#, c-format +msgid "Unable to create file %s" +msgstr "ფაილის შექმნის შეცდომა (%s)" + +#: common/flatpak-instance.c:646 +#, c-format +msgid "Unable to update symbolic link %s/%s" +msgstr "სიმბმულის (%s/%s) განახლების შეცდომა" + +#: common/flatpak-oci-registry.c:1012 +msgid "Only Bearer authentication supported" +msgstr "მხარდაჭერილია მხოლოდ Bearer ავთენტიკაცია" + +#: common/flatpak-oci-registry.c:1021 +msgid "Only realm in authentication request" +msgstr "ავთენტიკაციის მოთხოვნაში მხოლოდ რეალმია" + +#: common/flatpak-oci-registry.c:1028 +msgid "Invalid realm in authentication request" +msgstr "არასწორი რეალმი ავთენტიკაციის მოთხოვნაში" + +#: common/flatpak-oci-registry.c:1097 +#, c-format +msgid "Authorization failed: %s" +msgstr "ავტორიზაციის შეცდომა: %s" + +#: common/flatpak-oci-registry.c:1099 +msgid "Authorization failed" +msgstr "ავტორიზაციის შეცდომა" + +#: common/flatpak-oci-registry.c:1103 +#, c-format +msgid "Unexpected response status %d when requesting token: %s" +msgstr "მოულოდნელი საპასუხო სტატუსი %d კოდის გამოთხოვისას: %s" + +#: common/flatpak-oci-registry.c:1114 +msgid "Invalid authentication request response" +msgstr "არასწორი პასუხი ავთენტიკაციის მოთხოვნაზე" + +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 +msgid "Invalid delta file format" +msgstr "არასწორი დელტა ფაილის ფორმატი" + +#: common/flatpak-oci-registry.c:2486 +#, c-format +msgid "No gpg key found with ID %s (homedir: %s)" +msgstr "ID %s-ის მქონე GPG გასაღები ნაპოვნი არაა (საწყისი საქაღალდე: %s)" + +#: common/flatpak-oci-registry.c:2493 +#, c-format +msgid "Unable to lookup key ID %s: %d" +msgstr "შეცდომა გასაღების ID %s მოძებნისას: %d" + +#: common/flatpak-oci-registry.c:2501 +#, c-format +msgid "Error signing commit: %d" +msgstr "კომიტის ხელმოწერის შეცდომა: %d" + +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "არასწორი OCI ასლის კონფიგურაცია" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "არასწორი ფენის საკონტროლო ჯამი. მოველოდი %s, აღმოჩნდა %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "OCI ასლისთვის %s მიმართვა მითითებული არაა" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "" +"მითითებული მიმართვა (%s) OCI გამოსახულებისთვის %s არასწორია. მოველოდი:%s" + +#: common/flatpak-progress.c:236 +#, c-format +msgid "Downloading metadata: %u/(estimating) %s" +msgstr "მეტამონაცემების გადმოწერა: %u/(დაახლოებით) %s" + +#: common/flatpak-progress.c:260 +#, c-format +msgid "Downloading: %s/%s" +msgstr "გადმოწერა: %s/%s" + +#: common/flatpak-progress.c:280 +#, c-format +msgid "Downloading extra data: %s/%s" +msgstr "დამატებითი ინფორმაციის გადმოწერა: %s/%s" + +#: common/flatpak-progress.c:285 +#, c-format +msgid "Downloading files: %d/%d %s" +msgstr "ფაილების გადმოწერა: %d/%d %s" + +#: common/flatpak-ref-utils.c:122 +msgid "Name can't be empty" +msgstr "სახელი ცარიელი ვერ იქნება" + +#: common/flatpak-ref-utils.c:129 +msgid "Name can't be longer than 255 characters" +msgstr "სახელი 255 სიმბოლოზე გრძელი ვერ იქნება" + +#: common/flatpak-ref-utils.c:142 +msgid "Name can't start with a period" +msgstr "სახელი გამოტოვებით ვერ დაიწყება" + +#: common/flatpak-ref-utils.c:148 +#, c-format +msgid "Name can't start with %c" +msgstr "სახელი %c-ით ვერ დაიწყება" + +#: common/flatpak-ref-utils.c:164 +msgid "Name can't end with a period" +msgstr "სახელი გამოტოვებით ვერ დასრულდება" + +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 +msgid "Only last name segment can contain -" +msgstr "- -ს მხოლოდ ბოლო სახელის სეგმენტი შეიძლება, შეიცავდეს" + +#: common/flatpak-ref-utils.c:174 +#, c-format +msgid "Name segment can't start with %c" +msgstr "სახელის სეგმენტი %c-ით ვერ დაიწყება" + +#: common/flatpak-ref-utils.c:186 +#, c-format +msgid "Name can't contain %c" +msgstr "სახელი არ შეიძლება, %c-ს შეიცავდეს" + +#: common/flatpak-ref-utils.c:195 +msgid "Names must contain at least 2 periods" +msgstr "სახელები სულ ცოტა ორ გამოტოვებას უნდა შეიცავდნენ" + +#: common/flatpak-ref-utils.c:312 +msgid "Arch can't be empty" +msgstr "არქიტექტურა ცარიელი ვერ იქნება" + +#: common/flatpak-ref-utils.c:323 +#, c-format +msgid "Arch can't contain %c" +msgstr "არქიტექტურის სახელი არ შეიძლება, %c-ს სეიცავდეს" + +#: common/flatpak-ref-utils.c:385 +msgid "Branch can't be empty" +msgstr "ბრენჩი არ შეიძლება, ცარიელი იყოს" + +#: common/flatpak-ref-utils.c:395 +#, c-format +msgid "Branch can't start with %c" +msgstr "ბრენჩის სახელი %c-ით ვერ დაიწყება" + +#: common/flatpak-ref-utils.c:405 +#, c-format +msgid "Branch can't contain %c" +msgstr "ბრენჩის სახელი არ შეიძლება, %c-ს სეიცავდეს" + +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 +msgid "Ref too long" +msgstr "მიმართვა მეტისმეტად გრძელია" + +#: common/flatpak-ref-utils.c:627 +msgid "Invalid remote name" +msgstr "არასწორი დაშორებულის სახელი" + +#: common/flatpak-ref-utils.c:641 +#, c-format +msgid "%s is not application or runtime" +msgstr "%s აპლიკაცია ან გაშვების გარემო არაა" + +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 +#, c-format +msgid "Wrong number of components in %s" +msgstr "%s-ში კომპონენტების არასწორი რაოდენობა" + +#: common/flatpak-ref-utils.c:656 +#, c-format +msgid "Invalid name %.*s: %s" +msgstr "არასწორი სახელი %.*s: %s" + +#: common/flatpak-ref-utils.c:673 +#, c-format +msgid "Invalid arch: %.*s: %s" +msgstr "არასწორი არქიტექტურა: %.*s: %s" + +#: common/flatpak-ref-utils.c:816 +#, c-format +msgid "Invalid name %s: %s" +msgstr "არასწორი სახელი %s: %s" + +#: common/flatpak-ref-utils.c:834 +#, c-format +msgid "Invalid arch: %s: %s" +msgstr "არასწორი არქიტექტურა: %s: %s" + +#: common/flatpak-ref-utils.c:853 +#, c-format +msgid "Invalid branch: %s: %s" +msgstr "არასწორი ბრენჩი: %s: %s" + +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 +#, c-format +msgid "Wrong number of components in partial ref %s" +msgstr "ნაწილობრივ მიმართვა %s-ში კომპონენტების არასწორი რაოდენობა" + +#: common/flatpak-ref-utils.c:1298 +msgid " development platform" +msgstr " სატესტო პლატფორმა" + +#: common/flatpak-ref-utils.c:1300 +msgid " platform" +msgstr " პლატფორმა" + +#: common/flatpak-ref-utils.c:1302 +msgid " application base" +msgstr " აპლიკაციის ბაზა" + +#: common/flatpak-ref-utils.c:1305 +msgid " debug symbols" +msgstr " გამართვის სიმბოლოები" + +#: common/flatpak-ref-utils.c:1307 +msgid " sourcecode" +msgstr " საწყისიკოდი" + +#: common/flatpak-ref-utils.c:1309 +msgid " translations" +msgstr " თარგმანები" + +#: common/flatpak-ref-utils.c:1311 +msgid " docs" +msgstr " დოკუმენტები" + +#: common/flatpak-ref-utils.c:1578 +#, c-format +msgid "Invalid id %s: %s" +msgstr "არასწორი id %s: %s" + +#: common/flatpak-remote.c:1216 +#, c-format +msgid "Bad remote name: %s" +msgstr "არასწორი დაშორებულის სახელი: %s" + +#: common/flatpak-remote.c:1220 +msgid "No url specified" +msgstr "URL მითითებული არაა" + +#: common/flatpak-remote.c:1266 +msgid "GPG verification must be enabled when a collection ID is set" +msgstr "როცა კოლექციის ID დაყენებულია, GPG-ით გადამოწმების ჩართვა აუცილებელია" + +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "დამატებითი მონაცემის წყაროების გარეშე" + +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "არასწორი %s: ჯგუფი '%s' ვერ ვიპოვე" + +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "არასწორი %s: გასაღები '%s' ვერ ვიპოვე" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "არასწორი GPG გასაღები" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "64x64 ხატულის კოპირების შეცდომა კომპონენტისთვის %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "128x128 ხატულის კოპირების შეცდომა კომპონენტისთვის %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s-ის მხარდაჭერა ამოწურულია. გამოტოვება Appstream-ისთვის" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "%s-სთვის Appstream-ის მონაცემები აღმოჩენილი არაა: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "არასწორი პაკეტი. მეტამონაცემებში მიმართვა აღმოჩენილი არაა" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "პაკეტის კოლექცია %s დაშორებულის კოლექციას '%s' არ ემთხვევა" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "თავსართში არსებული მეტამონაცემები და აპი არ ემთხვევა" + +#: common/flatpak-run.c:844 +msgid "No systemd user session available, cgroups not available" +msgstr "" +"Systemd-ის მომხმარებლის სესია ხელმისაწვდომი არაა. cgroup-ები ხელმისაწვდომი " +"არაა" + +#: common/flatpak-run.c:1382 +msgid "Unable to allocate instance id" +msgstr "გაშვებული ასლის ID-ის გამოყოფის შეცდომა" + +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 +#, c-format +msgid "Failed to open flatpak-info file: %s" +msgstr "შეცდომა flatpak-info ფაილის გახსნისას: %s" + +#: common/flatpak-run.c:1557 +#, c-format +msgid "Failed to open bwrapinfo.json file: %s" +msgstr "შეცდომა bwrapinfo.json ფაილის გახსნისას: %s" + +#: common/flatpak-run.c:1582 +#, c-format +msgid "Failed to write to instance id fd: %s" +msgstr "გაშვებული ასლის ID-ის ფაილის დესკრიპტორის ჩაწერის შეცდომა: %s" + +#: common/flatpak-run.c:1977 +msgid "Initialize seccomp failed" +msgstr "Seccomp-ის ინიციალიზაციის შეცდომა" + +#: common/flatpak-run.c:2016 +#, c-format +msgid "Failed to add architecture to seccomp filter: %s" +msgstr "Seccomp ფილტრში არქიტექტურის დამატების შეცდომა: %s" + +#: common/flatpak-run.c:2024 +#, c-format +msgid "Failed to add multiarch architecture to seccomp filter: %s" +msgstr "Seccomp ფილტრში multiarch არქიტექტურის დამატების შეცდომა: %s" + +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 +#, c-format +msgid "Failed to block syscall %d: %s" +msgstr "სისტემური გამოძახების %d დაბლოკვის შეცდომა: %s" + +#: common/flatpak-run.c:2128 +#, c-format +msgid "Failed to export bpf: %s" +msgstr "BPF_ის გატანის შეცდომა: %s" + +#: common/flatpak-run.c:2427 +#, c-format +msgid "Failed to open ‘%s’" +msgstr "'%s'-ის გახსნის შეცდომა" + +#: common/flatpak-run.c:2714 +#, c-format +msgid "ldconfig failed, exit status %d" +msgstr "ldconfig-ის შეცდომა. გამოსვლის სტატუსი %d" + +#: common/flatpak-run.c:2721 +msgid "Can't open generated ld.so.cache" +msgstr "გენერირებული ld.so.cache ფაილის გახსნა შეუძლებელია" + +#. Translators: The placeholder is for an app ref. +#: common/flatpak-run.c:2844 +#, c-format +msgid "Running %s is not allowed by the policy set by your administrator" +msgstr "%s-ის გაშვება აკრძალულია თქვენი ადმინისტრატორის წესების მიერ" + +#: common/flatpak-run.c:2951 +msgid "" +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +msgstr "" +"\"flatpak run\"-ის გაშვება ბრძანებით `sudo flatpak run` შეუძლებელია. " +"გამოიყენეთ `sudo -i` ან `su -l` და \"flatpak run\" ახალი გარსიდან გაუშვით." + +#: common/flatpak-run.c:3141 +#, c-format +msgid "Failed to migrate from %s: %s" +msgstr "%s-დან მიგრაცის შეცდომა: %s" + +#: common/flatpak-run.c:3162 +#, c-format +msgid "Failed to migrate old app data directory %s to new name %s: %s" +msgstr "" +"ძველი აპის მონაცემების საქაღალდის %s ახალი სახელით %s მიგრაციის შეცდომა: %s" + +#: common/flatpak-run.c:3171 +#, c-format +msgid "Failed to create symlink while migrating %s: %s" +msgstr "%s-ის მიგრაციისას სიმბმულის შექმნის შეცდომა: %s" + +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "აპის ინფორმაციის ფაილის გახსნის შეცდომა" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "სინქრონიზაციის ფაიფის შექმნის შეცდომა" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "D-Bus-ის პროქსისთან სინქრონიზაციის შეცდომა" + +#: common/flatpak-transaction.c:2210 +#, c-format +msgid "Warning: Problem looking for related refs: %s" +msgstr "გაფრთხილება: შესაბამისი მიმართვების მოძებნის შეცდომა: %s" + +#: common/flatpak-transaction.c:2428 +#, c-format +msgid "The application %s requires the runtime %s which was not found" +msgstr "აპლიკაცია %s მოითხოვს გაშვების გარემოს %s, რომელიც ვერ ვიპოვე" + +#: common/flatpak-transaction.c:2444 +#, c-format +msgid "The application %s requires the runtime %s which is not installed" +msgstr "აპლიკაცია %s მოითხოვს გაშვების გარემოს %s, რომელიც დაყენებული არაა" + +#: common/flatpak-transaction.c:2576 +#, c-format +msgid "Can't uninstall %s which is needed by %s" +msgstr "%s-ის წაშლა შეუძლებელია. ის %s-ს სჭირდება" + +#: common/flatpak-transaction.c:2673 +#, c-format +msgid "Remote %s disabled, ignoring %s update" +msgstr "დაშორებული %s გამორთულია. %s განახლება გამოტოვებულია" + +#: common/flatpak-transaction.c:2706 +#, c-format +msgid "%s is already installed" +msgstr "%s უკვე დაყენებულია" + +#: common/flatpak-transaction.c:2709 +#, c-format +msgid "%s is already installed from remote %s" +msgstr "%s უკვე დაყენებულია დაშორებულიდან %s" + +#: common/flatpak-transaction.c:3020 +#, c-format +msgid "Invalid .flatpakref: %s" +msgstr "არასწორი .flatpakref: %s" + +#: common/flatpak-transaction.c:3135 +#, c-format +msgid "Error updating remote metadata for '%s': %s" +msgstr "დაშორებული მეტამონაცემების განახლების შეცდომა '%s'-სთვის: %s" + +#: common/flatpak-transaction.c:3624 +#, c-format +msgid "" +"Warning: Treating remote fetch error as non-fatal since %s is already " +"installed: %s" +msgstr "" +"გაფრთხილება: დაშორებულის გამოთხოვის შეცდომის არაფატალურად ჩათვლა, რადგან %s " +"უკვე დაყენებულია: %s" + +#: common/flatpak-transaction.c:3950 +#, c-format +msgid "No authenticator installed for remote '%s'" +msgstr "დაშორებულისთვის '%s' ავთენტიკატორი დაყენებული არაა" + +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 +#, c-format +msgid "Failed to get tokens for ref: %s" +msgstr "მიმართვისთვის კოდების მიღების შეცდომა: %s" + +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 +msgid "Failed to get tokens for ref" +msgstr "მიმართვისთვის კოდების მიღების შეცდომა" + +#: common/flatpak-transaction.c:4321 +#, c-format +msgid "Ref %s from %s matches more than one transaction operation" +msgstr "მიმართვა %s %s-დან ერთზე მეტ ტრანზაქციის ოპერაციას ემთხვევა" + +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 +msgid "any remote" +msgstr "ნებისმიერი დაშორებული" + +#: common/flatpak-transaction.c:4331 +#, c-format +msgid "No transaction operation found for ref %s from %s" +msgstr "მიმართვისთვის '%s' '%s'-დან ტრანზაქციის ოპერაცია აღმოჩენილი არაა" + +#: common/flatpak-transaction.c:4454 +#, c-format +msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" +msgstr "Flatpakrepo-ის URL %s არც ფაილია, არც HTTP და არც HTTPS" + +#: common/flatpak-transaction.c:4460 +#, c-format +msgid "Can't load dependent file %s: " +msgstr "დამოკიდებული ფაილის '%s' ჩატვირთვა შეუძლებელია: " + +#: common/flatpak-transaction.c:4468 +#, c-format +msgid "Invalid .flatpakrepo: %s" +msgstr "არასწორი .flatpakrepo: %s" + +#: common/flatpak-transaction.c:5121 +msgid "Transaction already executed" +msgstr "ტრანაქცია უკვე შესრულებულია" + +#: common/flatpak-transaction.c:5136 +msgid "" +"Refusing to operate on a user installation as root! This can lead to " +"incorrect file ownership and permission errors." +msgstr "" +"Root მომხმარებლით მომხმარებლის დაყენებულ პაკეტებზე ოპერირება უარყოფილია! " +"ამას არასწორი ფაილების მფლობელობამდე და წვდომების შეცდომებამდე შეუძლია, " +"მიგვიყვანოს." + +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 +msgid "Aborted by user" +msgstr "გაუქმდა მომხმარებლის მოთხოვნით" + +#: common/flatpak-transaction.c:5266 +#, c-format +msgid "Skipping %s due to previous error" +msgstr "%s-ს გამოტოვება წინა შეცდომის გამო" + +#: common/flatpak-transaction.c:5320 +#, c-format +msgid "Aborted due to failure (%s)" +msgstr "შეწყდა შეცდომის გამო (%s)" + +#: common/flatpak-uri.c:118 +#, no-c-format +msgid "Invalid %-encoding in URI" +msgstr "არასწორი %s-კოდირება URI-ში" + +#: common/flatpak-uri.c:135 +msgid "Illegal character in URI" +msgstr "დაუშვებელი სიმბოლო URI-ში" + +#: common/flatpak-uri.c:169 +msgid "Non-UTF-8 characters in URI" +msgstr "არა-UTF-8 სიმბოლოები URI-ში" + +#: common/flatpak-uri.c:275 +#, c-format +msgid "Invalid IPv6 address ‘%.*s’ in URI" +msgstr "არასწორი IPv6 მისამართი '%.*s' URI-ში" + +#: common/flatpak-uri.c:330 +#, c-format +msgid "Illegal encoded IP address ‘%.*s’ in URI" +msgstr "არასწორად კოდირებული IP მისამართი ‘%.*s’ URI-ში" + +#: common/flatpak-uri.c:342 +#, c-format +msgid "Illegal internationalized hostname ‘%.*s’ in URI" +msgstr "არასწორი არა-ASCII ჰოსტის სახელი '%.*s' URI-ში" + +#: common/flatpak-uri.c:374 common/flatpak-uri.c:386 +#, c-format +msgid "Could not parse port ‘%.*s’ in URI" +msgstr "URI-ში პორტის '%.*s'-ის დამუშავების შეცდომა" + +#: common/flatpak-uri.c:393 +#, c-format +msgid "Port ‘%.*s’ in URI is out of range" +msgstr "URI-ში პორტი '%.*s' დიაპაზონს გარეთაა" + +#: common/flatpak-uri.c:910 +msgid "URI is not absolute, and no base URI was provided" +msgstr "URI აბსოლუტური არაა და საბაზისო URI მითითებული არაა" + +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" +msgstr "" + +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" + +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "არასწორი id %s: %s" + +#: common/flatpak-usb.c:125 +#, c-format +msgid "Invalid USB subclass" +msgstr "" + +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 +#, c-format +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" + +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 +#, c-format +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" + +#: common/flatpak-usb.c:205 +#, c-format +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" + +#: common/flatpak-usb.c:225 +#, c-format +msgid "Unknown USB query rule %s" +msgstr "" + +#: common/flatpak-usb.c:248 +#, c-format +msgid "Empty USB query" +msgstr "" + +#: common/flatpak-usb.c:274 +#, c-format +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" + +#: common/flatpak-usb.c:283 +#, c-format +msgid "'all' must not contain extra query rules" +msgstr "" + +#: common/flatpak-usb.c:291 +#, c-format +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" + +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "გლობი აპებს ვერ დაემთხვევა" + +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "ცარიელი გლობი" + +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "გლობში მეტისმეტად ბევრი სეგმენტია" + +#: common/flatpak-utils.c:733 +#, c-format +msgid "Invalid glob character '%c'" +msgstr "არასწორი გლობის სიმბოლო '%c'" + +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "გლობი ხაზზე %d აღმოჩენილი არაა" + +#: common/flatpak-utils.c:791 +#, c-format +msgid "Trailing text on line %d" +msgstr "მიწერილი ტექსტი ხაზზე %d" + +#: common/flatpak-utils.c:795 +#, c-format +msgid "on line %d" +msgstr "ხაზზე %d" + +#: common/flatpak-utils.c:817 +#, c-format +msgid "Unexpected word '%s' on line %d" +msgstr "მოულოდნელი სიტყვა '%s' ხაზზე %d" + +#: common/flatpak-utils.c:1980 +#, c-format +msgid "Invalid require-flatpak argument %s" +msgstr "არასწორი require-flatpak-ის არგუმენტი %s" + +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 +#, c-format +msgid "%s needs a later flatpak version (%s)" +msgstr "%s-ს flatpak-ის უფრო ახალი ვერსია სჭირდება (%s)" + +#: oci-authenticator/flatpak-oci-authenticator.c:291 +msgid "Not a oci remote, missing summary.xa.oci-repository" +msgstr "" +"არ წარმოადგენს OCI დაშორებულს, რადგან summary.xa.oci-repository ვერ ვიპოვე" + +#: oci-authenticator/flatpak-oci-authenticator.c:477 +msgid "Not a OCI remote" +msgstr "არ წარმოადგენს OCI დაშორებულს" + +#: oci-authenticator/flatpak-oci-authenticator.c:488 +msgid "Invalid token" +msgstr "არასწორი კოდი" + +#: portal/flatpak-portal.c:2337 +#, c-format +msgid "No portal support found" +msgstr "პორტალის მხარდაჭერა ვერ ვიპოვე" + +#: portal/flatpak-portal.c:2343 +msgid "Deny" +msgstr "უარყოფა" + +#: portal/flatpak-portal.c:2345 +msgid "Update" +msgstr "განახლება" + +#: portal/flatpak-portal.c:2350 +#, c-format +msgid "Update %s?" +msgstr "განვაახლო %s?" + +#: portal/flatpak-portal.c:2362 +msgid "The application wants to update itself." +msgstr "აპლიკაცია თავისი თავის განახლებას აპირებს." + +#: portal/flatpak-portal.c:2363 +msgid "Update access can be changed any time from the privacy settings." +msgstr "" +"განახლების წვდომა ნებისმიერ დროს კონფიდენციალობის პარამეტრებიდან შეიძლება " +"შეიცვალოს." + +#: portal/flatpak-portal.c:2388 +#, c-format +msgid "Application update not allowed" +msgstr "აპლიკაცის განახლება დაშვებული არაა" + +#: portal/flatpak-portal.c:2546 +#, c-format +msgid "Self update not supported, new version requires new permissions" +msgstr "" +"თვით-განახლება მხარდაჭერილი არაა, რადგან ახალ ვერსიას ახალი წვდომები სჭირდება" + +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format +msgid "Update ended unexpectedly" +msgstr "განახლება მოულოდნელად დასრულდა" + +#. SECURITY: +#. - Normal users need admin authentication to install software +#. system-wide. +#. - Note that we install polkit rules that allow local users +#. in the wheel group to install without authenticating. +#: system-helper/org.freedesktop.Flatpak.policy.in:23 +msgid "Install signed application" +msgstr "ხელმოწერილი აპლიკაციის დაყენება" + +#: system-helper/org.freedesktop.Flatpak.policy.in:24 +#: system-helper/org.freedesktop.Flatpak.policy.in:42 +msgid "Authentication is required to install software" +msgstr "პროგრამის დასაწყენებლად ავთენტიკაცია დაგჭირდებათ" + +#. SECURITY: +#. - Normal users need admin authentication to install software +#. system-wide. +#. - Note that we install polkit rules that allow local users +#. in the wheel group to install without authenticating. +#: system-helper/org.freedesktop.Flatpak.policy.in:41 +msgid "Install signed runtime" +msgstr "ხელმოწერილი გაშვების გარემოს დაყენება" + +#. SECURITY: +#. - Normal users do not require admin authentication to update an +#. app as the commit will be signed, and the action is required +#. to update the system when unattended. +#. - Changing this to anything other than 'yes' will break unattended +#. updates. +#: system-helper/org.freedesktop.Flatpak.policy.in:60 +msgid "Update signed application" +msgstr "ხელმოწერილი აპლიკაციის განახლება" + +#: system-helper/org.freedesktop.Flatpak.policy.in:61 +#: system-helper/org.freedesktop.Flatpak.policy.in:80 +msgid "Authentication is required to update software" +msgstr "პროგრამების განახლებისთვის ავთენტიკაცია დაგჭირდებათ" + +#. SECURITY: +#. - Normal users do not require admin authentication to update a +#. runtime as the commit will be signed, and the action is required +#. to update the system when unattended. +#. - Changing this to anything other than 'yes' will break unattended +#. updates. +#: system-helper/org.freedesktop.Flatpak.policy.in:79 +msgid "Update signed runtime" +msgstr "ხელმოწერილი გაშვების გარემოს განახლება" + +#. SECURITY: +#. - Normal users do not need authentication to update metadata +#. from signed repositories. +#: system-helper/org.freedesktop.Flatpak.policy.in:94 +msgid "Update remote metadata" +msgstr "დაშორებული მეტამონაცემების განახლება" + +#: system-helper/org.freedesktop.Flatpak.policy.in:95 +msgid "Authentication is required to update remote info" +msgstr "დაშორებული ინფორმაციის განახლებისთვის ავთენტიკაცია დაგჭირდებათ" + +#. SECURITY: +#. - Normal users do not need authentication to modify the +#. OSTree repository +#. - Note that we install polkit rules that allow local users +#. in the wheel group to modify repos without authenticating. +#: system-helper/org.freedesktop.Flatpak.policy.in:111 +msgid "Update system repository" +msgstr "სისტემური რეპოზიტორიის განახლება" + +#: system-helper/org.freedesktop.Flatpak.policy.in:112 +msgid "Authentication is required to modify a system repository" +msgstr "სისტემური რეპოზიტორიის შესაცვლელად ავთენტიკაცია დაგჭირდებათ" + +#. SECURITY: +#. - Normal users need admin authentication to install software +#. system-wide. +#: system-helper/org.freedesktop.Flatpak.policy.in:126 +msgid "Install bundle" +msgstr "პაკეტის დაყენება" + +#: system-helper/org.freedesktop.Flatpak.policy.in:127 +msgid "Authentication is required to install software from $(path)" +msgstr "%{path}-დან პროგრამის დასაყენებლად ავთენტიკაცია დაგჭირდებთ" + +#. SECURITY: +#. - Normal users need admin authentication to uninstall software +#. system-wide. +#. - Note that we install polkit rules that allow local users +#. in the wheel group to uninstall without authenticating. +#: system-helper/org.freedesktop.Flatpak.policy.in:144 +msgid "Uninstall runtime" +msgstr "გაშვების გარემოს წაშლა" + +#: system-helper/org.freedesktop.Flatpak.policy.in:145 +msgid "Authentication is required to uninstall software" +msgstr "პროგრამის წასაშლელად ავთენტიკაცია დაგჭირდებათ" + +#. SECURITY: +#. - Normal users need admin authentication to uninstall software +#. system-wide. +#. - Note that we install polkit rules that allow local users +#. in the wheel group to uninstall without authenticating. +#: system-helper/org.freedesktop.Flatpak.policy.in:161 +msgid "Uninstall app" +msgstr "აპის წაშლა" + +#: system-helper/org.freedesktop.Flatpak.policy.in:162 +msgid "Authentication is required to uninstall $(ref)" +msgstr "${ref}-ის წასაშლელად ავთენტიკაცია დაგჭირდებთ" + +#. SECURITY: +#. - Normal users need admin authentication to configure system-wide +#. software repositories. +#: system-helper/org.freedesktop.Flatpak.policy.in:177 +msgid "Configure Remote" +msgstr "დაშორებულის მორგება" + +#: system-helper/org.freedesktop.Flatpak.policy.in:178 +msgid "Authentication is required to configure software repositories" +msgstr "პროგრამის რეპოზიტორიების მოსარგებად ავთენტიკაცია დაგჭირდებათ" + +#. SECURITY: +#. - Normal users need admin authentication to configure the system-wide +#. Flatpak installation. +#: system-helper/org.freedesktop.Flatpak.policy.in:192 +msgid "Configure" +msgstr "მორგება" + +#: system-helper/org.freedesktop.Flatpak.policy.in:193 +msgid "Authentication is required to configure software installation" +msgstr "დაყენებული პროგრამების მოსარგებად ავთენტიკაცია დაგჭირდებათ" + +#. SECURITY: +#. - Normal users do not require admin authentication to update +#. appstream data as it will be signed, and the action is required +#. to update the system when unattended. +#. - Changing this to anything other than 'yes' will break unattended +#. updates. +#: system-helper/org.freedesktop.Flatpak.policy.in:210 +msgid "Update appstream" +msgstr "Appstream-ის განახლება" + +#: system-helper/org.freedesktop.Flatpak.policy.in:211 +msgid "Authentication is required to update information about software" +msgstr "" +"პროგრამების შესახებ ინფორმაციის განახლებისთვის ავთენტიკაცია დაგჭირდებათ" + +#. SECURITY: +#. - Normal users do not require admin authentication to update +#. metadata as it will be signed, and the action is required +#. to update the system when unattended. +#. - Changing this to anything other than 'yes' will break unattended +#. updates. +#: system-helper/org.freedesktop.Flatpak.policy.in:228 +msgid "Update metadata" +msgstr "მეტამონაცემების განახლება" + +#: system-helper/org.freedesktop.Flatpak.policy.in:229 +msgid "Authentication is required to update metadata" +msgstr "მეტამონაცემების განახლებისთვის ავთენტიკაცია დაგჭირდებათ" + +#. SECURITY: +#. - Authorisation to actually install software is controlled by +#. org.freedesktop.Flatpak.app-install. +#. - This action is checked after app-install, as it can only be done +#. once the app’s data (including its content rating) has been +#. downloaded. +#. - This action is checked to see if the installation should be allowed +#. based on whether the app being installed has content which doesn’t +#. comply with the user’s parental controls policy (the content is +#. ‘too extreme’). +#. - It is checked only if an app has too extreme content for the user +#. who is trying to install it (in which case, the app is ‘unsafe’). +#. - Typically, normal users will need admin permission to install apps +#. with extreme content; admins will be able to install it without +#. additional checks. +#. - In order to configure the policy so that admins can install safe and +#. unsafe software anywhere without authorisation, and non-admins can +#. install safe software in their user or system dirs without +#. authorisation, but need authorisation to install unsafe software +#. anywhere: +#. * Unconditionally return `yes` from `app-install`. +#. * Return `auth_admin` from `override-parental-controls` for users +#. not in `@privileged_group@`, and `yes` for users in it. +#. * Set the malcontent `is-{user,system}-installation-allowed` +#. properties of all non-admins’ parental controls policies to true. +#. - In order to configure the policy so that admins can install safe and +#. unsafe software anywhere without authorisation, and non-admins can +#. install safe software in their user dir without authorisation, but +#. need authorisation to install safe software in the system dir or to +#. install unsafe software anywhere: +#. * Unconditionally return `yes` from `app-install`. +#. * Return `auth_admin` from `override-parental-controls` for users +#. not in `@privileged_group@`, and `yes` for users in it. +#. * Set the malcontent `is-user-installation-allowed` property of all +#. non-admins’ parental controls policies to true. +#. * Set the malcontent `is-system-installation-allowed` property of +#. all non-admins’ parental controls policies to false. +#. - In order to configure the policy so that all users (including +#. admins) can install safe software anywhere without authorisation, +#. but need authorisation to install unsafe software anywhere (i.e. +#. applying parental controls to admins too): +#. * Unconditionally return `yes` from `app-install`. +#. * Unconditionally return `auth_admin` from `override-parental-controls`. +#. * Set the malcontent `is-user-installation-allowed` property of all +#. users’ parental controls policies to true. +#. * Set the malcontent `is-system-installation-allowed` property of +#. all users’ parental controls policies to true. +#: system-helper/org.freedesktop.Flatpak.policy.in:287 +msgid "Override parental controls" +msgstr "მშობლის კონტროლის გადაფარვა" + +#: system-helper/org.freedesktop.Flatpak.policy.in:288 +msgid "" +"Authentication is required to install software which is restricted by your " +"parental controls policy" +msgstr "" +"თქვენი მშობლების საკონტროლო პოლიტიკის მიერ შეზღუდული პროგრამის დასაყენებლად " +"ავთენტიკაცია დაგჭირდებათ" + +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "აღმოჩენილია მსგავსი მიმართვ(ა/ები) '%s'-სთვის დაშორებულში '%s' (%s).\n" +#~ "გამოვიყენო ეს დაშორებული?" + +#, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "ჩანაწერი %s-სთვის არ არსებობს დაშორებულში '%s' შეჯამების კეშში " diff --git a/po/meson.build b/po/meson.build new file mode 100644 index 0000000..d09f7c8 --- /dev/null +++ b/po/meson.build @@ -0,0 +1,10 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +i18n.gettext( + 'flatpak', + preset: 'glib', + args: [ + '--msgid-bugs-address=https://github.com/flatpak/flatpak/issues', + ], +) diff --git a/po/flatpak.pot b/po/nl.po similarity index 56% rename from po/flatpak.pot rename to po/nl.po index eaf466e..697b729 100644 --- a/po/flatpak.pot +++ b/po/nl.po @@ -1,1250 +1,1292 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR Flatpak team and others. +# Dutch translation for flatpak. +# Copyright (C) 2023 flatpak's COPYRIGHT HOLDER # This file is distributed under the same license as the flatpak package. -# FIRST AUTHOR , YEAR. +# Philip Goto , 2023. +# Nathan Follens , 2023 # -#, fuzzy msgid "" msgstr "" -"Project-Id-Version: flatpak 1.14.10\n" +"Project-Id-Version: flatpak main\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"Language: \n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2023-04-02 11:48+0200\n" +"Last-Translator: Nathan Follens \n" +"Language-Team: Dutch https://matrix.to/#/#nl:gnome.org\n" +"Language: nl\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 3.2.2\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" -msgstr "" +msgstr "Runtime exporteren in plaats van toepassing" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" -msgstr "" +msgstr "Architectuur om voor te bundelen" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" -msgstr "" +msgstr "ARCH" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" -msgstr "" +msgstr "URL voor bron" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" -msgstr "" +msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" -msgstr "" +msgstr "URL voor runtime-flatpakrepo-bestand" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" -msgstr "" +msgstr "GPG-sleutel van BESTAND toevoegen (- voor stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" -msgstr "" +msgstr "BESTAND" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" -msgstr "" - -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "" +msgstr "GPG-sleutel-ID om de OCI-image mee te ondertekenen" #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "SLEUTEL-ID" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" -msgstr "" +msgstr "GPG-map om te gebruiken bij het zoeken naar sleutelbossen" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" -msgstr "" +msgstr "MAP" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" -msgstr "" +msgstr "OSTree-commit om een deltabundel van te maken" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" -msgstr "" +msgstr "COMMIT" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" -msgstr "" +msgstr "OCI-image exporteren in plaats van Flatpak-bundel" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" msgstr "" +"LOCATIE BESTANDSNAAM NAAM [BRANCH] - Maak een enkel-bestandsbundel van een " +"lokale pakketbron" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" -msgstr "" +msgstr "LOCATIE, BESTANDSNAAM en NAAM moeten worden opgegeven" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" -msgstr "" +msgstr "Te veel argumenten" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" -msgstr "" +msgstr "‘%s’ is geen geldige pakketbron" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " -msgstr "" +msgstr "‘%s’ is geen geldige pakketbron: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" -msgstr "" +msgstr "‘%s’ is geen geldige naam: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" -msgstr "" +msgstr "‘%s’ is geen geldige branch-naam: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" -msgstr "" +msgstr "‘%s’ is geen geldige bestandsnaam" #: app/flatpak-builtins-build.c:49 msgid "Use Platform runtime rather than Sdk" -msgstr "" +msgstr "Platform-runtime gebruiken in plaats van SDK" #: app/flatpak-builtins-build.c:50 msgid "Make destination readonly" -msgstr "" +msgstr "Bestemming alleen-lezen maken" #: app/flatpak-builtins-build.c:51 msgid "Add bind mount" -msgstr "" +msgstr "Bindingskoppeling toevoegen" #: app/flatpak-builtins-build.c:51 msgid "DEST=SRC" -msgstr "" +msgstr "BESTEMMING=BRON" #: app/flatpak-builtins-build.c:52 msgid "Start build in this directory" -msgstr "" +msgstr "Compilatie starten in deze map" #: app/flatpak-builtins-build.c:52 app/flatpak-builtins-build.c:53 #: app/flatpak-builtins-build-init.c:64 app/flatpak-builtins-run.c:68 msgid "DIR" -msgstr "" +msgstr "MAP" #: app/flatpak-builtins-build.c:53 msgid "Where to look for custom sdk dir (defaults to 'usr')" -msgstr "" +msgstr "Waar te zoeken naar aangepaste SDK-map (standaard is ‘%s’)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" -msgstr "" +msgstr "Alternatief bestand voor metadata gebruiken" #: app/flatpak-builtins-build.c:55 app/flatpak-builtins-run.c:85 msgid "Kill processes when the parent process dies" -msgstr "" +msgstr "Processen beëindigen wanneer het bovenliggende proces is beëindigd" #: app/flatpak-builtins-build.c:56 msgid "Export application homedir directory to build" -msgstr "" +msgstr "Toepassingsmap exporteren om te compileren" #: app/flatpak-builtins-build.c:57 app/flatpak-builtins-run.c:73 msgid "Log session bus calls" -msgstr "" +msgstr "Sessiebusaanroepen bijhouden" #: app/flatpak-builtins-build.c:58 app/flatpak-builtins-run.c:74 msgid "Log system bus calls" -msgstr "" +msgstr "Systeembusaanroepen bijhouden" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" -msgstr "" +msgstr "MAP [OPDRACHT [ARGUMENT…]] - Compileren in map" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" -msgstr "" +msgstr "MAP moet worden opgegeven" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +# Aanhalingstekens toegevoegd ter verduidlijking van opdracht +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" -msgstr "" +msgstr "Compilatiemap %s niet geïnitialiseerd, gebruik ‘flatpak build-init’" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" -msgstr "" +msgstr "metadata ongeldig, geen toepassing of runtime" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" -msgstr "" +msgstr "Geen uitbreidingspunt overeenkomend met %s in %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" -msgstr "" +msgstr "Ontbrekende ‘=’ in bindingskoppeloptie ‘%s’" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" -msgstr "" +msgstr "Kon toepassing niet starten" -#: app/flatpak-builtins-build-commit-from.c:57 +# Deze en onderstaande items zijn moeilijk te vertalen, misschien wordt later een betere vertaling duidelijk. - Philip +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" -msgstr "" +msgstr "Map van source-pakketbron" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" -msgstr "" +msgstr "SRC-BRON" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" -msgstr "" +msgstr "Ref van source-pakketbron" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" -msgstr "" - -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 -msgid "One line subject" -msgstr "" - -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 -msgid "SUBJECT" -msgstr "" +msgstr "SRC-REF" #: app/flatpak-builtins-build-commit-from.c:64 #: app/flatpak-builtins-build-export.c:60 -msgid "Full description" -msgstr "" +msgid "One line subject" +msgstr "Onderwerp op enkele regel" #: app/flatpak-builtins-build-commit-from.c:64 #: app/flatpak-builtins-build-export.c:60 -msgid "BODY" -msgstr "" +msgid "SUBJECT" +msgstr "ONDERWERP" #: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "" +#: app/flatpak-builtins-build-export.c:61 +msgid "Full description" +msgstr "Volledige omschrijving" + +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 +msgid "BODY" +msgstr "BODY" #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 -msgid "Don't update the summary" -msgstr "" +msgid "Update the appstream branch" +msgstr "Appstream-branch bijwerken" #: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 +msgid "Don't update the summary" +msgstr "Samenvatting niet bijwerken" + +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" -msgstr "" +msgstr "GPG-sleutel-ID om de commit mee te ondertekenen" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" -msgstr "" +msgstr "Pakket markeren als end-of-life" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" -msgstr "" +msgstr "REDEN" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" msgstr "" +"Refs overeenkomend met de OUDE-ID markeren als end-of-life, om te worden " +"vervangen met de opgegeven NIEUWE-ID" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" -msgstr "" +msgstr "OUDE-ID=NIEUWE-ID" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" -msgstr "" +msgstr "Benodigd tokentype voor het installeren van deze commit instellen" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" -msgstr "" +msgstr "WAARDE" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" -msgstr "" +msgstr "Tijdstempel van de commit overschrijven (NOW voor huidige tijd)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" -msgstr "" +msgstr "TIJDSTEMPEL" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" -msgstr "" +msgstr "Geen samenvattingsindex genereren" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" -msgstr "" +msgstr "DST-BRON [DST-REF…] - Nieuwe commit aanmaken van bestaande commits" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" -msgstr "" +msgstr "DST-BRON moet worden opgegeven" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" +"Indien --src-repo niet is opgegeven, moet exact één bestemmings-ref worden " +"opgegeven" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" +"Indien --src-ref is opgegeven, moet exact één bestemmings-ref worden " +"opgegeven" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" -msgstr "" +msgstr "--src-repo of --src-ref moet worden opgegeven" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" -msgstr "" +msgstr "Ongeldig argumentformaat in --end-of-life-rebase=OUDE-ID=NIEUWE-ID" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" -msgstr "" +msgstr "Ongeldige naam %s in --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" -msgstr "" +msgstr "Kon ‘%s’ niet parsen" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" -msgstr "" +msgstr "Kan niet committen van gedeeltelijke bron-commit" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" -msgstr "" +msgstr "%s: geen wijzigingen\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" -msgstr "" +msgstr "Architectuur om voor te exporteren (moet compatibel zijn met host)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" -msgstr "" +msgstr "Runtime (/usr) committen, niet /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" -msgstr "" +msgstr "Alternatieve map voor de bestanden gebruiken" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" -msgstr "" +msgstr "SUBMAP" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" -msgstr "" +msgstr "Bestanden om uit te sluiten" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" -msgstr "" +msgstr "PATROON" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" -msgstr "" +msgstr "Uitgesloten bestanden om toe te voegen" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "" +"Pakket als end-of-life markeren, om te worden vervangen met de opgegeven ID" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" -msgstr "" +msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" -msgstr "" +msgstr "Tijdstempel van de commit overschrijven" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" -msgstr "" +msgstr "Verzamelings-ID" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" -msgstr "" +msgstr "WAARSCHUWING: Fout bij uitvoeren van desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" -msgstr "" +msgstr "WAARSCHUWING: Fout bij lezen van desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" -msgstr "" +msgstr "WAARSCHUWING: Desktop-bestand %s valideren mislukt: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" -msgstr "" +msgstr "WAARSCHUWING: Kan Exec-sleutel in %s niet vinden: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "" +"WAARSCHUWING: programmabestand voor Exec-regel in %s niet gevonden: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "" +"WAARSCHUWING: Pictogram komt niet overeen met toepassings-ID in %s: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" +"WAARSCHUWING: Pictogram benoemd in desktop-bestand maar niet geëxporteerd: " +"%s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" -msgstr "" +msgstr "Ongeldig URI-type %s, enkel http/https worden ondersteund" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" -msgstr "" +msgstr "Kon basisnaam in %s niet vinden, geef een naam expliciet op" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" -msgstr "" +msgstr "Geen slashes toegestaan in naam van extra gegevens" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" -msgstr "" +msgstr "Ongeldig formaat voor SHA256-controlesom: ‘%s’" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" -msgstr "" +msgstr "Extra-gegevensgroottes van nul niet ondersteund" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" -msgstr "" +msgstr "LOCATIE MAP [BRANCH] - Pakketbron aanmaken vanuit een compilatiemap" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" -msgstr "" +msgstr "LOCATIE en MAP moeten worden opgegeven" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" -msgstr "" +msgstr "‘%s’ is geen geldige verzamelings-ID: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" -msgstr "" +msgstr "Geen naam opgegeven in de metagegevens" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" -msgstr "" +msgstr "Commit: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" -msgstr "" +msgstr "Metagegevens (totaal): %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" -msgstr "" +msgstr "Metagegevens (geschreven): %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" -msgstr "" +msgstr "Inhoud (totaal): %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" -msgstr "" +msgstr "Inhoud (geschreven): %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" -msgstr "" +msgstr "Inhoud (geschreven bytes):" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" -msgstr "" +msgstr "Opdracht om in te stellen" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" -msgstr "" +msgstr "OPDRACHT" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" -msgstr "" +msgstr "Vereiste flatpak-versie" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" -msgstr "" +msgstr "MAJOR.MINOR.MICRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" -msgstr "" +msgstr "Exports niet verwerken" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" -msgstr "" +msgstr "Extra gegevensinfo" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" -msgstr "" +msgstr "Uitbreidingspuntinfo toevoegen" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" -msgstr "" +msgstr "NAAM=VARIABELE[=WAARDE]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" -msgstr "" +msgstr "Uitbreidingspuntinfo verwijderen" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" -msgstr "" +msgstr "NAAM" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" -msgstr "" +msgstr "Uitbreidingsprioriteit instellen (enkel voor uitbreidingen)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" -msgstr "" +msgstr "WAARDE" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" -msgstr "" +msgstr "SDK gebruikt door toepassing wijzigen" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" -msgstr "" +msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" -msgstr "" +msgstr "Runtime gebruikt door toepassing wijzigen" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" -msgstr "" +msgstr "RUNTIME" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" -msgstr "" +msgstr "Algemene metagegevensoptie instellen" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" -msgstr "" +msgstr "GROEP=SLEUTEL[=WAARDE]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" -msgstr "" +msgstr "Rechten niet overnemen van runtime" -#: app/flatpak-builtins-build-finish.c:154 +# Het is mij soms niet duidelijk om wat voor soort ‘extension’ het gaat. In dit geval gok ik bestandsextensie, maar dit is misschien iets om na het inzenden te corrigeren. - Philip +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" -msgstr "" +msgstr "%s wordt niet geëxporteerd, verkeerde extensie\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" -msgstr "" +msgstr "%s wordt niet geëxporteerd, exportbestandsnaam niet toegestaan\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" -msgstr "" +msgstr "%s exporteren\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" -msgstr "" +msgstr "Meer dan één programmabestand gevonden\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" -msgstr "" +msgstr "%s wordt als opdracht gebruikt\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" -msgstr "" +msgstr "Geen programmabestand gevonden\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" -msgstr "" +msgstr "Ongeldig argument voor --require-version: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" -msgstr "" +msgstr "Te weinig elementen in argument %s van --extra-data" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " "GROUP=KEY[=VALUE]]" msgstr "" +"Te weinig elementen in argument %s van --metadata, formaat moet " +"GROEP=SLEUTEL[=WAARDE]] zijn" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" "Too few elements in --extension argument %s, format should be " "NAME=VAR[=VALUE]" msgstr "" +"Te weinig elementen in argument %s van --extension, formaat moet " +"NAAM=VAR[=WAARDE] zijn" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" -msgstr "" +msgstr "Ongeldige uitbreidingsnaam %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" -msgstr "" +msgstr "MAP - Compilatiemap afronden" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" -msgstr "" +msgstr "Compilatiemap %s niet geïnitialiseerd" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" -msgstr "" +msgstr "Compilatiemap %s al afgerond" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" -msgstr "" +msgstr "Controleer de geëxporteerde bestanden en metagegevens\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" -msgstr "" +msgstr "Ref gebruikt voor geïmporteerde bundel overschrijven" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" -msgstr "" +msgstr "REF" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" -msgstr "" +msgstr "OCI-image importeren in plaats van de Flatpak-bundel" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" -msgstr "" +msgstr "Ref ‘%s’ niet gevonden in register" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" -msgstr "" +msgstr "Meerdere images in register, specificeer een ref met --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" -msgstr "" +msgstr "%s importeren (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "" +"LOCATIE BESTANDSNAAM - Bestandsbundel importeren naar een locale pakketbron" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" -msgstr "" +msgstr "LOCATIE en BESTANDSNAAM moeten worden opgegeven" #: app/flatpak-builtins-build-init.c:53 app/flatpak-builtins-info.c:55 #: app/flatpak-builtins-run.c:66 msgid "Arch to use" -msgstr "" +msgstr "Architectuur om te gebruiken" #: app/flatpak-builtins-build-init.c:54 msgid "Initialize var from named runtime" -msgstr "" +msgstr "Var initialiseren vanuit opgegeven runtime" #: app/flatpak-builtins-build-init.c:55 msgid "Initialize apps from named app" -msgstr "" +msgstr "Toepassingen initialiseren vanuit opgegeven toepassing" #: app/flatpak-builtins-build-init.c:55 msgid "APP" -msgstr "" +msgstr "TOEPASSING" #: app/flatpak-builtins-build-init.c:56 msgid "Specify version for --base" -msgstr "" +msgstr "Versie voor --base opgeven" #: app/flatpak-builtins-build-init.c:56 app/flatpak-builtins-run.c:72 msgid "VERSION" -msgstr "" +msgstr "VERSIE" #: app/flatpak-builtins-build-init.c:57 msgid "Include this base extension" -msgstr "" +msgstr "Basisuitbreiding toevoegen" #: app/flatpak-builtins-build-init.c:57 app/flatpak-builtins-build-init.c:62 msgid "EXTENSION" -msgstr "" +msgstr "UITBREIDING" #: app/flatpak-builtins-build-init.c:58 msgid "Extension tag to use if building extension" -msgstr "" +msgstr "Uitbreidings-tag om te gebruiken bij compileren van uitbreiding" #: app/flatpak-builtins-build-init.c:58 msgid "EXTENSION_TAG" -msgstr "" +msgstr "UITBREIDINGS-TAG" #: app/flatpak-builtins-build-init.c:59 msgid "Initialize /usr with a writable copy of the sdk" -msgstr "" +msgstr "/usr initialiseren met een overschrijfbare kopie van de SDK" #: app/flatpak-builtins-build-init.c:60 msgid "Specify the build type (app, runtime, extension)" -msgstr "" +msgstr "Compilatietype specificeren (toepassing, runtime, uitbreiding)" #: app/flatpak-builtins-build-init.c:60 msgid "TYPE" -msgstr "" +msgstr "TYPE" #: app/flatpak-builtins-build-init.c:61 msgid "Add a tag" -msgstr "" +msgstr "Tag toevoegen" #: app/flatpak-builtins-build-init.c:61 msgid "TAG" -msgstr "" +msgstr "TAG" #: app/flatpak-builtins-build-init.c:62 msgid "Include this sdk extension in /usr" -msgstr "" +msgstr "Deze SDK-uitbreiding aan /usr toevoegen" #: app/flatpak-builtins-build-init.c:64 msgid "Where to store sdk (defaults to 'usr')" -msgstr "" +msgstr "Waar de SDK moet worden opgeslagen (standaard: ‘usr’)" #: app/flatpak-builtins-build-init.c:65 msgid "Re-initialize the sdk/var" -msgstr "" +msgstr "SDK/var herinitialiseren" #: app/flatpak-builtins-build-init.c:118 #, c-format msgid "Requested extension %s/%s/%s is only partially installed" -msgstr "" +msgstr "Opgevraagde uitbreiding %s/%s/%s is enkel deels geïnstalleerd" #: app/flatpak-builtins-build-init.c:147 #, c-format msgid "Requested extension %s/%s/%s not installed" -msgstr "" +msgstr "Opgevraagde uitbreiding %s/%s/%s is niet geïnstalleerd" #: app/flatpak-builtins-build-init.c:207 msgid "" "DIRECTORY APPNAME SDK RUNTIME [BRANCH] - Initialize a directory for building" msgstr "" +"MAP TOEPASSINGSNAAM SDK RUNTIME [BRANCH] - Map initialiseren voor compilatie" #: app/flatpak-builtins-build-init.c:214 msgid "RUNTIME must be specified" -msgstr "" +msgstr "RUNTIME moet worden opgegeven" #: app/flatpak-builtins-build-init.c:235 #, c-format msgid "'%s' is not a valid build type name, use app, runtime or extension" -msgstr "" +msgstr "‘%s’ is geen geldig compilatietype, gebruik app, runtime of extension" #: app/flatpak-builtins-build-init.c:241 app/flatpak-builtins-override.c:79 #, c-format msgid "'%s' is not a valid application name: %s" -msgstr "" +msgstr "‘%s’ is geen geldige toepassingsnaam: %s" #: app/flatpak-builtins-build-init.c:295 #, c-format msgid "Build directory %s already initialized" -msgstr "" +msgstr "Compilatiemap %s is al geïnitialiseerd" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" -msgstr "" +msgstr "Architectuur om voor te installeren" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" -msgstr "" +msgstr "Zoeken naar runtime met de opgegeven naam" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" -msgstr "" +msgstr "LOCATIE [ID [BRANCH]] - Toepassing of runtime ondertekenen" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" -msgstr "" +msgstr "LOCATIE moet worden opgegeven" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" -msgstr "" +msgstr "Geen GPG-sleutel-ID’s opgegeven" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" -msgstr "" +msgstr "Deze bron doorverwijzen naar een nieuwe URL" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" -msgstr "" +msgstr "Naam om te gebruiken voor deze pakketbron" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" -msgstr "" +msgstr "TITEL" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" -msgstr "" +msgstr "Opmerking van enkele regel voor deze pakketbron" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" -msgstr "" +msgstr "OPMERKING" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" -msgstr "" +msgstr "Alinea als omschrijving voor deze pakketbron" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" -msgstr "" +msgstr "OMSCHRIJVING" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" -msgstr "" +msgstr "URL van website voor deze pakketbron" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" -msgstr "" +msgstr "URL van pictogram voor deze pakketbron" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" -msgstr "" +msgstr "Standaard-branch om te gebruiken voor deze pakketbron" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" -msgstr "" +msgstr "BRANCH" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" -msgstr "" +msgstr "VERZAMELINGS-ID" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" -msgstr "" +msgstr "Naam van authenticator voor deze pakketbron" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" -msgstr "" +msgstr "Authenticator automatisch installeren voor deze pakketbron" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" -msgstr "" +msgstr "Authenticator niet automatisch installeren voor deze pakketbron" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" -msgstr "" +msgstr "Authenticator-optie" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" -msgstr "" +msgstr "SLEUTEL=WAARDE" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" -msgstr "" +msgstr "Nieuwe publieke GPG-standaardsleutel importeren vanuit BESTAND" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" -msgstr "" +msgstr "GPG-sleutel-ID om de samenvatting mee te ondertekenen" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" -msgstr "" +msgstr "Deltabestanden genereren" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" -msgstr "" +msgstr "Appstream-branch niet bijwerken" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" - -#: app/flatpak-builtins-build-update-repo.c:88 -msgid "NUM-JOBS" -msgstr "" +"Maximum aantal gelijktijdige taken bij het maken van delta’s (standaard: " +"NUMCPUs)" #: app/flatpak-builtins-build-update-repo.c:89 -msgid "Don't create deltas matching refs" -msgstr "" +msgid "NUM-JOBS" +msgstr "AANTAL-TAKEN" #: app/flatpak-builtins-build-update-repo.c:90 -msgid "Prune unused objects" -msgstr "" +msgid "Don't create deltas matching refs" +msgstr "Geen delta’s overeenkomstig met refs aanmaken" #: app/flatpak-builtins-build-update-repo.c:91 -msgid "Prune but don't actually remove anything" -msgstr "" +msgid "Prune unused objects" +msgstr "Ongebruikte objecten opruimen" #: app/flatpak-builtins-build-update-repo.c:92 +msgid "Prune but don't actually remove anything" +msgstr "Opruimen maar niets echt verwijderen" + +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" +"Enkel DIEPTE aantal bovenliggende items voor elke commit doorlopen " +"(standaard: -1=infinite)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" -msgstr "" +msgstr "DIEPTE" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" -msgstr "" +msgstr "Delta genereren: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" -msgstr "" +msgstr "Delta genereren: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " -msgstr "" +msgstr "Delta genereren mislukt %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " -msgstr "" +msgstr "Delta genereren mislukt %s (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" -msgstr "" +msgstr "LOCATIE - Metagegevens van pakketbron bijwerken" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" -msgstr "" +msgstr "Appstream-branch bijwerken\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" -msgstr "" +msgstr "Samenvatting bijwerken\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" -msgstr "" +msgstr "Totaal aantal objecten: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" -msgstr "" +msgstr "Geen onbereikbare objecten\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" -msgstr "" +msgstr "%u objecten verwijderd, %s vrijgemaakt\n" #: app/flatpak-builtins-config.c:41 msgid "List configuration keys and values" -msgstr "" +msgstr "Configuratiesleutels en -waarden opsommen" #: app/flatpak-builtins-config.c:42 msgid "Get configuration for KEY" -msgstr "" +msgstr "Configuratie voor SLEUTEL ophalen" #: app/flatpak-builtins-config.c:43 msgid "Set configuration for KEY to VALUE" -msgstr "" +msgstr "Configuratie voor SLEUTEL instellen op WAARDE" #: app/flatpak-builtins-config.c:44 msgid "Unset configuration for KEY" -msgstr "" +msgstr "Configuratie verwijderen voor SLEUTEL" #: app/flatpak-builtins-config.c:149 #, c-format msgid "'%s' does not look like a language/locale code" -msgstr "" +msgstr "‘%s’ is geen taal-/regiocode" #: app/flatpak-builtins-config.c:172 #, c-format msgid "'%s' does not look like a language code" -msgstr "" +msgstr "‘%s’ is geen taalcode" #: app/flatpak-builtins-config.c:226 #, c-format msgid "Unknown configure key '%s'" -msgstr "" +msgstr "Onbekende configuratiesleutel ‘%s’" #: app/flatpak-builtins-config.c:248 msgid "Too many arguments for --list" -msgstr "" +msgstr "Te veel argumenten voor --list" #: app/flatpak-builtins-config.c:278 app/flatpak-builtins-config.c:326 msgid "You must specify KEY" -msgstr "" +msgstr "SLEUTEL moet worden opgegeven" #: app/flatpak-builtins-config.c:280 msgid "Too many arguments for --get" -msgstr "" +msgstr "Te veel argumenten voor --get" #: app/flatpak-builtins-config.c:302 msgid "You must specify KEY and VALUE" -msgstr "" +msgstr "SLEUTEL en WAARDE moeten worden opgegeven" #: app/flatpak-builtins-config.c:304 msgid "Too many arguments for --set" -msgstr "" +msgstr "Te veel argumenten voor --set" #: app/flatpak-builtins-config.c:328 msgid "Too many arguments for --unset" -msgstr "" +msgstr "Te veel argumenten voor --unset" #: app/flatpak-builtins-config.c:347 msgid "[KEY [VALUE]] - Manage configuration" -msgstr "" +msgstr "[SLEUTEL [WAARDE]] - Configuratie beheren" #: app/flatpak-builtins-config.c:358 msgid "Can only use one of --list, --get, --set or --unset" msgstr "" +"Kan enkel één van de volgende argumenten gebruiken: --list, --get, --set, --" +"unset" #: app/flatpak-builtins-config.c:372 msgid "Must specify one of --list, --get, --set or --unset" msgstr "" +"Eén van de volgende argumenten moet worden opgegeven: --list, --get, --set, " +"--unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" -msgstr "" +msgstr "Zoeken naar toepassing met de opgegeven naam" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" -msgstr "" +msgstr "Architectuur om te kopiëren" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" -msgstr "" +msgstr "DOEL" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" -msgstr "" +msgstr "Gedeeltelijke commits in de aangemaakte pakketbron toestaan" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " "suppress this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " "collection ID set.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " "distribution of ‘%s’." msgstr "" -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " "this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" msgstr "" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" #: app/flatpak-builtins-document-export.c:62 msgid "Create a unique document reference" -msgstr "" +msgstr "Een unieke documentreferentie aanmaken" #: app/flatpak-builtins-document-export.c:63 msgid "Make the document transient for the current session" @@ -1256,1167 +1298,1188 @@ msgstr "" #: app/flatpak-builtins-document-export.c:65 msgid "Give the app read permissions" -msgstr "" +msgstr "Leesrechten aan de toepassing verlenen" #: app/flatpak-builtins-document-export.c:66 msgid "Give the app write permissions" -msgstr "" +msgstr "Schrijfrechten aan de toepassing verlenen" #: app/flatpak-builtins-document-export.c:67 msgid "Give the app delete permissions" -msgstr "" +msgstr "Verwijderingsrechten aan de toepassing verlenen" #: app/flatpak-builtins-document-export.c:68 msgid "Give the app permissions to grant further permissions" -msgstr "" +msgstr "Rechten aan de toepassing verlenen om meer rechten te verlenen" #: app/flatpak-builtins-document-export.c:69 msgid "Revoke read permissions of the app" -msgstr "" +msgstr "Leesrechten van de toepassing intrekken" #: app/flatpak-builtins-document-export.c:70 msgid "Revoke write permissions of the app" -msgstr "" +msgstr "Schrijfrechten van de toepassing intrekken" #: app/flatpak-builtins-document-export.c:71 msgid "Revoke delete permissions of the app" -msgstr "" +msgstr "Verwijderingsrechten van de toepassing intrekken" #: app/flatpak-builtins-document-export.c:72 msgid "Revoke the permission to grant further permissions" -msgstr "" +msgstr "Rechten van de toepassing intrekken om meer rechten te verlenen" #: app/flatpak-builtins-document-export.c:73 msgid "Add permissions for this app" -msgstr "" +msgstr "Rechten voor deze toepassing toevoegen" #: app/flatpak-builtins-document-export.c:73 msgid "APPID" -msgstr "" +msgstr "APPID" #: app/flatpak-builtins-document-export.c:100 msgid "FILE - Export a file to apps" -msgstr "" +msgstr "BESTAND - Bestand exporteren naar toepassingen" #: app/flatpak-builtins-document-export.c:109 #: app/flatpak-builtins-document-info.c:72 #: app/flatpak-builtins-document-unexport.c:67 msgid "FILE must be specified" -msgstr "" +msgstr "BESTAND moet worden opgegeven" #: app/flatpak-builtins-document-info.c:63 msgid "FILE - Get information about an exported file" -msgstr "" +msgstr "BESTAND - Informatie verkrijgen over een geëxporteerd bestand" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" -msgstr "" +msgstr "Niet geëxporteerd\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" -msgstr "" +msgstr "Welke informatie te tonen" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" -msgstr "" +msgstr "VELD,…" #: app/flatpak-builtins-document-list.c:47 msgid "Show the document ID" -msgstr "" +msgstr "Document-ID tonen" #: app/flatpak-builtins-document-list.c:48 msgid "Path" -msgstr "" +msgstr "Pad" #: app/flatpak-builtins-document-list.c:48 #: app/flatpak-builtins-document-list.c:49 msgid "Show the document path" -msgstr "" +msgstr "Documentpad tonen" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" -msgstr "" +msgstr "Herkomst" #: app/flatpak-builtins-document-list.c:50 app/flatpak-builtins-history.c:60 #: app/flatpak-builtins-ps.c:50 msgid "Application" -msgstr "" +msgstr "Toepassing" #: app/flatpak-builtins-document-list.c:50 msgid "Show applications with permission" -msgstr "" +msgstr "Toepassingen met recht tonen" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" -msgstr "" +msgstr "Rechten" #: app/flatpak-builtins-document-list.c:51 msgid "Show permissions for applications" -msgstr "" +msgstr "Rechten voor toepassingen tonen" #: app/flatpak-builtins-document-list.c:171 msgid "[APPID] - List exported files" -msgstr "" +msgstr "[TOEPASINGS-ID] - Geëxporteerde bestanden opsommen" #: app/flatpak-builtins-document-unexport.c:43 msgid "Specify the document ID" -msgstr "" +msgstr "Geef de document-ID op" #: app/flatpak-builtins-document-unexport.c:58 msgid "FILE - Unexport a file to apps" -msgstr "" +msgstr "BESTAND - Bestand niet meer exporteren naar toepassingen" #: app/flatpak-builtins-enter.c:88 msgid "INSTANCE COMMAND [ARGUMENT…] - Run a command inside a running sandbox" msgstr "" +"INSTANTIE OPDRACHT [ARGUMENT…] - Opdracht uitvoeren in een draaiende zandbak" #: app/flatpak-builtins-enter.c:111 msgid "INSTANCE and COMMAND must be specified" -msgstr "" +msgstr "INSTANTIE en OPDRACHT moeten worden opgegeven" #: app/flatpak-builtins-enter.c:138 #, c-format msgid "%s is neither a pid nor an application or instance ID" -msgstr "" +msgstr "%s is geen PID noch toepassings- of instantie-ID" #: app/flatpak-builtins-enter.c:144 msgid "entering not supported (need unprivileged user namespaces, or sudo -E)" msgstr "" +"Betreden niet ondersteund (onbevoorrechte gebruikers-namespaces benodigd, of " +"sudo -E)" #: app/flatpak-builtins-enter.c:145 #, c-format msgid "No such pid %s" -msgstr "" +msgstr "PID %s bestaat niet" #: app/flatpak-builtins-enter.c:158 msgid "Can't read cwd" -msgstr "" +msgstr "Kan cwd niet lezen" #: app/flatpak-builtins-enter.c:163 msgid "Can't read root" -msgstr "" +msgstr "Kan root niet lezen" #: app/flatpak-builtins-enter.c:191 #, c-format msgid "Invalid %s namespace for pid %d" -msgstr "" +msgstr "Ongeldige %s-namespace voor PID %d" +# Wat is hier een goede vertaling voor self? - Philip #: app/flatpak-builtins-enter.c:202 #, c-format msgid "Invalid %s namespace for self" -msgstr "" +msgstr "Ongeldige %s-namespace" #: app/flatpak-builtins-enter.c:216 #, c-format msgid "Can't open %s namespace: %s" -msgstr "" +msgstr "Kan %s-namespace niet openen: %s" #: app/flatpak-builtins-enter.c:226 msgid "entering not supported (need unprivileged user namespaces)" msgstr "" +"Betreden niet ondersteund (onbevoorrechte gebruikers-namespaces benodigd)" #: app/flatpak-builtins-enter.c:227 #, c-format msgid "Can't enter %s namespace: %s" -msgstr "" +msgstr "Kan %s-namespace niet betreden: %s" #: app/flatpak-builtins-enter.c:234 msgid "Can't chdir" -msgstr "" +msgstr "Kan chdir niet uitvoeren" #: app/flatpak-builtins-enter.c:237 msgid "Can't chroot" -msgstr "" +msgstr "Kan chroot niet uitvoeren" #: app/flatpak-builtins-enter.c:240 msgid "Can't switch gid" -msgstr "" +msgstr "Kan GID niet wisselen" #: app/flatpak-builtins-enter.c:243 msgid "Can't switch uid" -msgstr "" +msgstr "Kan UID niet wisselen" #: app/flatpak-builtins-history.c:49 msgid "Only show changes after TIME" -msgstr "" +msgstr "Enkel wijzigingen na TIJD tonen" #: app/flatpak-builtins-history.c:49 app/flatpak-builtins-history.c:50 msgid "TIME" -msgstr "" +msgstr "TIJD" #: app/flatpak-builtins-history.c:50 msgid "Only show changes before TIME" -msgstr "" +msgstr "Enkel wijzigingen voor TIJD tonen" #: app/flatpak-builtins-history.c:51 msgid "Show newest entries first" -msgstr "" +msgstr "Nieuwste items eerst tonen" #: app/flatpak-builtins-history.c:57 msgid "Time" -msgstr "" +msgstr "Tijd" #: app/flatpak-builtins-history.c:57 msgid "Show when the change happened" -msgstr "" +msgstr "Wijzigingsmoment tonen" #: app/flatpak-builtins-history.c:58 msgid "Change" -msgstr "" +msgstr "Wijzigen" #: app/flatpak-builtins-history.c:58 msgid "Show the kind of change" -msgstr "" +msgstr "Wijzigingstype tonen" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" -msgstr "" +msgstr "Red" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" -msgstr "" +msgstr "Ref tonen" #: app/flatpak-builtins-history.c:60 msgid "Show the application/runtime ID" -msgstr "" +msgstr "Toepassings-/runtime-ID tonen" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" -msgstr "" +msgstr "Arch" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" -msgstr "" +msgstr "Architectuur tonen" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" -msgstr "" +msgstr "Branch" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" -msgstr "" +msgstr "Branch tonen" #: app/flatpak-builtins-history.c:63 app/flatpak-builtins-list.c:65 msgid "Installation" -msgstr "" +msgstr "Installatie" #: app/flatpak-builtins-history.c:63 msgid "Show the affected installation" -msgstr "" +msgstr "Installatie tonen" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" -msgstr "" +msgstr "Remote" #: app/flatpak-builtins-history.c:64 msgid "Show the remote" -msgstr "" +msgstr "Remote tonen" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" -msgstr "" +msgstr "Commit" #: app/flatpak-builtins-history.c:65 msgid "Show the current commit" -msgstr "" +msgstr "Huidige commit tonen" #: app/flatpak-builtins-history.c:66 msgid "Old Commit" -msgstr "" +msgstr "Oude commit" #: app/flatpak-builtins-history.c:66 msgid "Show the previous commit" -msgstr "" +msgstr "Vorige commit tonen" #: app/flatpak-builtins-history.c:67 msgid "Show the remote URL" -msgstr "" +msgstr "Remote-URL tonen" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" -msgstr "" +msgstr "Gebruiker" #: app/flatpak-builtins-history.c:68 msgid "Show the user doing the change" -msgstr "" +msgstr "Gebruiker verantwoordelijk voor wijziging tonen" #: app/flatpak-builtins-history.c:69 msgid "Tool" -msgstr "" +msgstr "Gereedschap" #: app/flatpak-builtins-history.c:69 msgid "Show the tool that was used" -msgstr "" +msgstr "Gebruikt gereedschap tonen" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" -msgstr "" +msgstr "Versie" #: app/flatpak-builtins-history.c:70 msgid "Show the Flatpak version" -msgstr "" +msgstr "Flatpak-versie tonen" #: app/flatpak-builtins-history.c:89 #, c-format msgid "Failed to get journal data (%s): %s" -msgstr "" +msgstr "Logboekgegevens (%s) verkrijgen mislukt: %s" #: app/flatpak-builtins-history.c:144 #, c-format msgid "Failed to open journal: %s" -msgstr "" +msgstr "Logboek openen mislukt: %s" #: app/flatpak-builtins-history.c:151 #, c-format msgid "Failed to add match to journal: %s" -msgstr "" +msgstr "Overeenkomst aan logboek toevoegen mislukt: %s" #: app/flatpak-builtins-history.c:469 msgid " - Show history" -msgstr "" +msgstr " - Geschiedenis tonen" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" -msgstr "" +msgstr "Optie --since parsen mislukt" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" -msgstr "" +msgstr "Optie --until parsen mislukt" #: app/flatpak-builtins-info.c:56 msgid "Show user installations" -msgstr "" +msgstr "Gebruikersinstallaties tonen" #: app/flatpak-builtins-info.c:57 msgid "Show system-wide installations" -msgstr "" +msgstr "Systeembrede installaties tonen" #: app/flatpak-builtins-info.c:58 msgid "Show specific system-wide installations" -msgstr "" +msgstr "Specifieke systeembrede installaties tonen" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" -msgstr "" +msgstr "Ref tonen" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" -msgstr "" +msgstr "Commit tonen" #: app/flatpak-builtins-info.c:61 msgid "Show origin" -msgstr "" +msgstr "Oorsprong tonen" #: app/flatpak-builtins-info.c:62 msgid "Show size" -msgstr "" +msgstr "Grootte tonen" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" -msgstr "" +msgstr "Metagegevens tonen" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" -msgstr "" +msgstr "Runtime tonen" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" -msgstr "" +msgstr "SDK tonen" #: app/flatpak-builtins-info.c:66 msgid "Show permissions" -msgstr "" +msgstr "Rechten tonen" #: app/flatpak-builtins-info.c:67 msgid "Query file access" -msgstr "" +msgstr "Bestandstoegang opvragen" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" -msgstr "" +msgstr "PAD" #: app/flatpak-builtins-info.c:68 msgid "Show extensions" -msgstr "" +msgstr "Uitbreidingen tonen" #: app/flatpak-builtins-info.c:69 msgid "Show location" -msgstr "" +msgstr "Locatie tonen" #: app/flatpak-builtins-info.c:116 msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "" +"NAAM [BRANCH] - Info over een geïnstalleerde toepassing of runtime verkrijgen" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" -msgstr "" +msgstr "Naam moet worden opgegeven" #: app/flatpak-builtins-info.c:196 msgid "ref not present in origin" -msgstr "" +msgstr "Ref niet aanwezig in oorsprong" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" -msgstr "" +msgstr "Waarchuwing: Commit heeft geen Flatpak-metadata\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" -msgstr "" +msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" -msgstr "" +msgstr "Ref:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" -msgstr "" +msgstr "Arch:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" -msgstr "" +msgstr "Branch:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" -msgstr "" +msgstr "Versie:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" -msgstr "" +msgstr "Licentie:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" -msgstr "" +msgstr "Verzameling:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" -msgstr "" +msgstr "Installatie:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" -msgstr "" +msgstr "Geïnstalleerd:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" -msgstr "" +msgstr "Runtime:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" -msgstr "" +msgstr "SDK:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" -msgstr "" +msgstr "Datum:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" -msgstr "" +msgstr "Onderwerp:" #: app/flatpak-builtins-info.c:240 app/flatpak-builtins-info.c:295 msgid "Active commit:" -msgstr "" +msgstr "Actieve commit:" #: app/flatpak-builtins-info.c:241 app/flatpak-builtins-info.c:298 msgid "Latest commit:" -msgstr "" +msgstr "Laatste commit:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" -msgstr "" +msgstr "Commit:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" -msgstr "" +msgstr "Bovenliggend:" #: app/flatpak-builtins-info.c:248 app/flatpak-builtins-info.c:321 msgid "Alt-id:" -msgstr "" +msgstr "Alt-id:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" -msgstr "" +msgstr "End-of-life:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" -msgstr "" +msgstr "End-of-life-rebase:" #: app/flatpak-builtins-info.c:254 app/flatpak-builtins-info.c:317 msgid "Subdirectories:" -msgstr "" +msgstr "Submappen:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" -msgstr "" +msgstr "Uitbreiding:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" -msgstr "" +msgstr "Herkomst:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" -msgstr "" +msgstr "Subpaden:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" -msgstr "" +msgstr "onbeheerd" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" -msgstr "" +msgstr "onbekend" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" -msgstr "" +msgstr "Verwante refs niet installeren" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" -msgstr "" +msgstr "Runtime-afhankelijkheden niet verifiëren/installeren" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" -msgstr "" +msgstr "Geen statische delta’s gebruiken" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" -msgstr "" +msgstr "Enkel dit subpad installeren" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" -msgstr "" +msgstr "Alle vragen automatisch beantwoorden met ja" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" -msgstr "" +msgstr "Eerst verwijderen indien reeds geïnstalleerd" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" -msgstr "" +msgstr "Minimale uitvoer produceren en geen vragen stellen" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" -msgstr "" +msgstr "Installatie bijwerken indien reeds geïnstalleerd" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" -msgstr "" +msgstr "Bestandsnaam of URI moet worden opgegeven" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" -msgstr "" +msgstr "Ten minste één REF moet worden gespecificeerd" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" -msgstr "" +msgstr "Zoeken naar overeenkomsten…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, c-format msgid "No remote refs found for ‘%s’" -msgstr "" +msgstr "Geen externe refs gevonden voor ‘%s’" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" -msgstr "" +msgstr "Ongeldige branch %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" -msgstr "" +msgstr "Geen overeenkomsten met %s in lokale pakketbron voor remote %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" -msgstr "" +msgstr "Geen overeenkomsten met %s in remote %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" -msgstr "" +msgstr "%s overgeslagen\n" #: app/flatpak-builtins-kill.c:68 #, c-format msgid "%s is not running" -msgstr "" +msgstr "%s draait niet" #: app/flatpak-builtins-kill.c:82 msgid "INSTANCE - Stop a running application" -msgstr "" +msgstr "INSTANTIE - Draaiende toepassing stoppen" #: app/flatpak-builtins-kill.c:90 app/flatpak-builtins-ps.c:254 msgid "Extra arguments given" -msgstr "" +msgstr "Extra argumenten meegegeven" #: app/flatpak-builtins-kill.c:96 msgid "Must specify the app to kill" -msgstr "" +msgstr "Toepassing om te stoppen moet worden opgegeven" #: app/flatpak-builtins-list.c:46 msgid "Show extra information" -msgstr "" +msgstr "Extra informatie tonen" #: app/flatpak-builtins-list.c:47 msgid "List installed runtimes" -msgstr "" +msgstr "Geïnstalleerde runtimes opsommen" #: app/flatpak-builtins-list.c:48 msgid "List installed applications" -msgstr "" +msgstr "Geïnstalleerde toepassingen opsommen" #: app/flatpak-builtins-list.c:49 msgid "Arch to show" -msgstr "" +msgstr "Architectuur om te tonen" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" -msgstr "" +msgstr "Alle refs opsommen (inclusief locale/debug)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" -msgstr "" +msgstr "Alle toepassingen die RUNTIME gebruiken opsommen" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" -msgstr "" +msgstr "Naam" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" -msgstr "" +msgstr "Naam tonen" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" -msgstr "" +msgstr "Omschrijving" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" -msgstr "" +msgstr "Omschrijving tonen" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" -msgstr "" +msgstr "Toepassings-ID" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" -msgstr "" +msgstr "Toepassings-ID tonen" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" -msgstr "" +msgstr "Versie tonen" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" -msgstr "" +msgstr "Runtime" #: app/flatpak-builtins-list.c:63 msgid "Show the used runtime" -msgstr "" +msgstr "Gebruikte runtime tonen" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" -msgstr "" +msgstr "Herkomst-remote tonen" #: app/flatpak-builtins-list.c:65 msgid "Show the installation" -msgstr "" +msgstr "Installatie tonen" #: app/flatpak-builtins-list.c:67 msgid "Active commit" -msgstr "" +msgstr "Actieve commit" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" -msgstr "" +msgstr "Actieve commit tonen" #: app/flatpak-builtins-list.c:68 msgid "Latest commit" -msgstr "" +msgstr "Laatste commit" #: app/flatpak-builtins-list.c:68 msgid "Show the latest commit" -msgstr "" +msgstr "Laatste commit tonen" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" -msgstr "" +msgstr "Geïnstalleerde grootte" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" -msgstr "" +msgstr "Geïnstalleerde grootte tonen" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" -msgstr "" +msgstr "Opties" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" -msgstr "" +msgstr "Opties tonen" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, c-format msgid "Unable to load details of %s: %s" -msgstr "" +msgstr "Kon details van %s niet laden: %s" -#: app/flatpak-builtins-list.c:189 +#: app/flatpak-builtins-list.c:188 #, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Kon huidige versie van %s niet inspecteren: %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" -msgstr "" +msgstr " - Geïnstalleerde toepassingen en/of runtimes opsommen" +# Ik snap deze zin niet, maar dit is een letterlijke vertaling - Philip #: app/flatpak-builtins-make-current.c:38 msgid "Arch to make current for" -msgstr "" +msgstr "Architectuur om huidig voor te maken" #: app/flatpak-builtins-make-current.c:58 msgid "APP BRANCH - Make branch of application current" -msgstr "" +msgstr "TOEPASSING BRANCH - Branch als actief instellen voor toepassing" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" -msgstr "" +msgstr "TOEPASSING moet worden opgegeven" #: app/flatpak-builtins-make-current.c:84 msgid "BRANCH must be specified" -msgstr "" +msgstr "BRANCH moet worden opgegeven" #: app/flatpak-builtins-make-current.c:97 #, c-format msgid "App %s branch %s is not installed" -msgstr "" +msgstr "Toepassing %s met branch %s is niet geïnstalleerd" #: app/flatpak-builtins-mask.c:42 msgid "Remove matching masks" -msgstr "" +msgstr "Overeenkomende verhullingen verwijderen" #: app/flatpak-builtins-mask.c:54 msgid "" "[PATTERN…] - disable updates and automatic installation matching patterns" msgstr "" +"[PATROON…] - Patronen voor updates en automatische installatie uitschakelen" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" -msgstr "" +msgstr "Geen verhulde patronen\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" -msgstr "" +msgstr "Verhulde patronen:\n" #: app/flatpak-builtins-override.c:42 msgid "Remove existing overrides" -msgstr "" +msgstr "Bestaande overschrijvingen verwijderen" #: app/flatpak-builtins-override.c:43 msgid "Show existing overrides" -msgstr "" +msgstr "Bestaande overschrijvingen tonen" +# Blokhaken om ‘voor toepassing’ weggelaten voor consistentie - Philip #: app/flatpak-builtins-override.c:59 msgid "[APP] - Override settings [for application]" -msgstr "" +msgstr "[TOEPASSING] - Instellingen overschrijven voor toepassing" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" -msgstr "" +msgstr "[TABEL] [ID] - Rechten opsommen" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" -msgstr "" +msgstr "Tabel" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" -msgstr "" +msgstr "Object" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" -msgstr "" +msgstr "Toepassing" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" -msgstr "" +msgstr "Gegevens" #: app/flatpak-builtins-permission-remove.c:120 msgid "TABLE ID [APP_ID] - Remove item from permission store" -msgstr "" +msgstr "TABEL ID [TOEPASSINGS-ID] - Item van rechtenopslag verwijderen" #: app/flatpak-builtins-permission-remove.c:129 #: app/flatpak-builtins-permission-set.c:120 msgid "Too few arguments" -msgstr "" +msgstr "Te weinig argumenten" #: app/flatpak-builtins-permission-reset.c:43 msgid "Reset all permissions" -msgstr "" +msgstr "Alle rechten resetten" #: app/flatpak-builtins-permission-reset.c:137 msgid "APP_ID - Reset permissions for an app" -msgstr "" +msgstr "APP-ID - Rechten voor een toepassing resetten" #: app/flatpak-builtins-permission-reset.c:146 #: app/flatpak-builtins-permission-show.c:121 msgid "Wrong number of arguments" -msgstr "" +msgstr "Ongeldig aantal argumenten" #: app/flatpak-builtins-permission-set.c:42 msgid "Associate DATA with the entry" -msgstr "" +msgstr "GEGEVENS associëren met de invoer" #: app/flatpak-builtins-permission-set.c:42 msgid "DATA" -msgstr "" +msgstr "GEGEVENS" #: app/flatpak-builtins-permission-set.c:111 msgid "TABLE ID APP_ID [PERMISSION...] - Set permissions" -msgstr "" +msgstr "TABEL ID TOEPASSINGS-ID [RECHT…] - Rechten instellen" #: app/flatpak-builtins-permission-set.c:132 #, c-format msgid "Failed to parse '%s' as GVariant: " -msgstr "" +msgstr "‘%s’ parsen als GVariant mislukt: " #: app/flatpak-builtins-permission-show.c:112 msgid "APP_ID - Show permissions for an app" -msgstr "" +msgstr "TOEPASSINGS-ID - Rechten voor een toepassing tonen" #: app/flatpak-builtins-pin.c:44 msgid "Remove matching pins" -msgstr "" +msgstr "Overeenkomende pins verwijderen" #: app/flatpak-builtins-pin.c:56 msgid "[PATTERN…] - disable automatic removal of runtimes matching patterns" msgstr "" +"[PATROON…] - Automatische verwijdering van runtimes overeenkomend met " +"patronen uitschakelen" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" -msgstr "" +msgstr "Geen vastgepinde patronen\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" -msgstr "" +msgstr "Vastgepinde patronen:\n" #: app/flatpak-builtins-ps.c:47 msgid "Instance" -msgstr "" +msgstr "Instantie" #: app/flatpak-builtins-ps.c:47 msgid "Show the instance ID" -msgstr "" +msgstr "Instantie-ID tonen" #: app/flatpak-builtins-ps.c:48 app/flatpak-builtins-run.c:86 msgid "PID" -msgstr "" +msgstr "PID" #: app/flatpak-builtins-ps.c:48 msgid "Show the PID of the wrapper process" -msgstr "" +msgstr "PID van het wrapper-proces tonen" #: app/flatpak-builtins-ps.c:49 msgid "Child-PID" -msgstr "" +msgstr "Sub-PID" #: app/flatpak-builtins-ps.c:49 msgid "Show the PID of the sandbox process" -msgstr "" +msgstr "PID van het zandbakproces tonen" #: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-search.c:46 msgid "Show the application branch" -msgstr "" +msgstr "Toepassings-branch tonen" #: app/flatpak-builtins-ps.c:53 msgid "Show the application commit" -msgstr "" +msgstr "Toepassings-commit tonen" #: app/flatpak-builtins-ps.c:54 msgid "Show the runtime ID" -msgstr "" +msgstr "Runtime-ID tonen" #: app/flatpak-builtins-ps.c:55 msgid "R.-Branch" -msgstr "" +msgstr "Runtime-branch" #: app/flatpak-builtins-ps.c:55 msgid "Show the runtime branch" -msgstr "" +msgstr "Runtime-branch tonen" #: app/flatpak-builtins-ps.c:56 msgid "R.-Commit" -msgstr "" +msgstr "Runtime-commit" #: app/flatpak-builtins-ps.c:56 msgid "Show the runtime commit" -msgstr "" +msgstr "Runtime-commit tonen" #: app/flatpak-builtins-ps.c:57 msgid "Active" -msgstr "" +msgstr "Actief" #: app/flatpak-builtins-ps.c:57 msgid "Show whether the app is active" -msgstr "" +msgstr "Tonen of de toepassing actief is" #: app/flatpak-builtins-ps.c:58 msgid "Background" -msgstr "" +msgstr "Achtergrond" #: app/flatpak-builtins-ps.c:58 msgid "Show whether the app is background" -msgstr "" +msgstr "Tonen of de toepassing op de achtergrond is" #: app/flatpak-builtins-ps.c:244 msgid " - Enumerate running sandboxes" -msgstr "" +msgstr " - Draaiende zandbakken opsommen" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" -msgstr "" +msgstr "Niets doen als de opgegeven remote bestaat" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" -msgstr "" +msgstr "LOCATIE geeft een configuratiebestand aan, niet de bronlocatie" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" -msgstr "" +msgstr "GPG-verificatie uitschakelen" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" -msgstr "" +msgstr "Remote markeren als ‘niet opsommen’" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" -msgstr "" +msgstr "Remote markeren als ‘niet voor afhankelijkheden gebruiken’" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" -msgstr "" +msgstr "Prioriteit (standaard: 1, hoger voor meer prioriteit)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" -msgstr "" +msgstr "PRIORITEIT" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" -msgstr "" +msgstr "Benoemde subset om te gebruiken voor deze remote" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" -msgstr "" +msgstr "SUBSET" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" -msgstr "" +msgstr "Naam om te gebruiken voor deze remote" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" -msgstr "" +msgstr "Opmerking van één regel voor deze remote" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" -msgstr "" +msgstr "Omschrijving van een volledige alinea voor deze remote" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" -msgstr "" +msgstr "URL voor website van deze remote" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" -msgstr "" +msgstr "URL voor pictogram van deze remote" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" -msgstr "" +msgstr "Standaard-branch om te gebruiken voor deze remote" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" -msgstr "" +msgstr "GPG-sleutel van BESTAND importeren (- voor stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" -msgstr "" +msgstr "Pad instellen naar lokaal filterBESTAND" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" -msgstr "" +msgstr "Remote uitschakelen" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" -msgstr "" +msgstr "Naam van authenticator" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" -msgstr "" +msgstr "Authenticator automatisch installeren" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" -msgstr "" +msgstr "Authenticator niet automatisch installeren" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" -msgstr "" +msgstr "Omleidingsset in samenvattingsbestand niet volgen" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" -msgstr "" +msgstr "Kan URI %s niet laden: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" -msgstr "" +msgstr "Kan bestand %s niet laden: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" -msgstr "" +msgstr "NAAM LOCATIE - Externe pakketbron toevoegen" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" -msgstr "" +msgstr "GPG-verificatie is vereist als verzamelingen zijn ingeschakeld" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" -msgstr "" +msgstr "Remote %s bestaat al" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" -msgstr "" +msgstr "Ongeldige authenticatornaam %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" -msgstr "" +msgstr "Waarschuwing: Kon extra metadata voor ‘%s’ niet bijwerken: %s\n" #: app/flatpak-builtins-remote-delete.c:39 msgid "Remove remote even if in use" -msgstr "" +msgstr "Remote verwijderen zelfs indien in gebruik" #: app/flatpak-builtins-remote-delete.c:53 msgid "NAME - Delete a remote repository" @@ -2429,189 +2492,189 @@ msgstr "" #: app/flatpak-builtins-remote-delete.c:101 msgid "Remove them?" -msgstr "" +msgstr "Wilt u ze verwijderen?" #: app/flatpak-builtins-remote-delete.c:103 #, c-format msgid "Can't remove remote '%s' with installed refs" msgstr "" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" -msgstr "" +msgstr "Logboek tonen" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" -msgstr "" +msgstr "Bovenliggende tonen" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" -msgstr "" +msgstr "Download:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" -msgstr "" +msgstr "Geschiedenis:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" -msgstr "" +msgstr " Commit:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" -msgstr "" +msgstr " Onderwerp:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" -msgstr "" +msgstr " Datum:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" -msgstr "" +msgstr "Waarchuwing: Commit %s heeft geen Flatpak-metagegevens\n" #: app/flatpak-builtins-remote-list.c:42 msgid "Show remote details" -msgstr "" +msgstr "Details van remote tonen" #: app/flatpak-builtins-remote-list.c:43 msgid "Show disabled remotes" -msgstr "" +msgstr "Uitgeschakelde remotes tonen" #: app/flatpak-builtins-remote-list.c:50 msgid "Title" -msgstr "" +msgstr "Titel" #: app/flatpak-builtins-remote-list.c:50 msgid "Show the title" -msgstr "" +msgstr "Titel tonen" #: app/flatpak-builtins-remote-list.c:51 msgid "Show the URL" -msgstr "" +msgstr "URL tonen" #: app/flatpak-builtins-remote-list.c:52 msgid "Show the collection ID" -msgstr "" +msgstr "Verzamelings-ID tonen" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" -msgstr "" +msgstr "Subset" #: app/flatpak-builtins-remote-list.c:53 msgid "Show the subset" -msgstr "" +msgstr "Subset tonen" #: app/flatpak-builtins-remote-list.c:54 msgid "Filter" -msgstr "" +msgstr "Filter" #: app/flatpak-builtins-remote-list.c:54 msgid "Show filter file" -msgstr "" +msgstr "Filterbestand tonen" #: app/flatpak-builtins-remote-list.c:55 msgid "Priority" -msgstr "" +msgstr "Prioriteit" #: app/flatpak-builtins-remote-list.c:55 msgid "Show the priority" -msgstr "" +msgstr "Prioriteit tonen" #: app/flatpak-builtins-remote-list.c:57 msgid "Comment" -msgstr "" +msgstr "Opmerking" #: app/flatpak-builtins-remote-list.c:57 msgid "Show comment" -msgstr "" +msgstr "Opmerking tonen" #: app/flatpak-builtins-remote-list.c:58 msgid "Show description" -msgstr "" +msgstr "Omschrijving tonen" #: app/flatpak-builtins-remote-list.c:59 msgid "Homepage" -msgstr "" +msgstr "Startpagina" #: app/flatpak-builtins-remote-list.c:59 msgid "Show homepage" -msgstr "" +msgstr "Startpagina tonen" #: app/flatpak-builtins-remote-list.c:60 msgid "Icon" -msgstr "" +msgstr "Pictogram" #: app/flatpak-builtins-remote-list.c:60 msgid "Show icon" -msgstr "" +msgstr "Pictogram tonen" #: app/flatpak-builtins-remote-list.c:229 msgid " - List remote repositories" -msgstr "" +msgstr " - Externe pakketbronnen opsommen" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" -msgstr "" +msgstr "Architecturen en branches tonen" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" -msgstr "" +msgstr "Enkel runtimes tonen" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" -msgstr "" +msgstr "Enkel toepassingen tonen" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" -msgstr "" +msgstr "De runtime tonen" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" -msgstr "" +msgstr "Downloadgrootte" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" -msgstr "" +msgstr "Downloadgrootte tonen" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr "" #: app/flatpak-builtins-remote-modify.c:66 msgid "Enable GPG verification" -msgstr "" +msgstr "GPG-verificatie inschakelen" #: app/flatpak-builtins-remote-modify.c:67 msgid "Mark the remote as enumerate" @@ -2623,27 +2686,27 @@ msgstr "" #: app/flatpak-builtins-remote-modify.c:69 msgid "Set a new url" -msgstr "" +msgstr "Nieuwe URL instellen" #: app/flatpak-builtins-remote-modify.c:70 msgid "Set a new subset to use" -msgstr "" +msgstr "Nieuwe subset om te gebruiken instellen" #: app/flatpak-builtins-remote-modify.c:71 msgid "Enable the remote" -msgstr "" +msgstr "Remote inschakelen" #: app/flatpak-builtins-remote-modify.c:72 msgid "Update extra metadata from the summary file" -msgstr "" +msgstr "Extra metagegevens bijwerken vanuit samenvattingsbestand" #: app/flatpak-builtins-remote-modify.c:89 msgid "Disable local filter" -msgstr "" +msgstr "Lokaal filter uitschakelen" #: app/flatpak-builtins-remote-modify.c:93 msgid "Authenticator options" -msgstr "" +msgstr "Authenticator-opties" #: app/flatpak-builtins-remote-modify.c:96 msgid "Follow the redirect set in the summary file" @@ -2674,41 +2737,41 @@ msgstr "" #: app/flatpak-builtins-repair.c:43 msgid "Don't make any changes" -msgstr "" +msgstr "Geen wijzigingen maken" #: app/flatpak-builtins-repair.c:44 msgid "Reinstall all refs" -msgstr "" +msgstr "Alle refs herinstalleren" #: app/flatpak-builtins-repair.c:68 #, c-format msgid "Object missing: %s.%s\n" -msgstr "" +msgstr "Object ontbreekt: %s.%s\n" #: app/flatpak-builtins-repair.c:76 #, c-format msgid "Object invalid: %s.%s\n" -msgstr "" +msgstr "Ongeldig object: %s.%s\n" #: app/flatpak-builtins-repair.c:81 #, c-format msgid "%s, deleting object\n" -msgstr "" +msgstr "%s, object wordt verwijderd\n" #: app/flatpak-builtins-repair.c:146 #, c-format msgid "Can't load object %s: %s\n" -msgstr "" +msgstr "Kan object %s niet laden: %s\n" #: app/flatpak-builtins-repair.c:228 #, c-format msgid "Commit invalid %s: %s\n" -msgstr "" +msgstr "Commit %s ongeldig: %s\n" #: app/flatpak-builtins-repair.c:231 #, c-format msgid "Deleting invalid commit %s: %s\n" -msgstr "" +msgstr "Ongeldige commit %s wordt verwijderd: %s\n" #: app/flatpak-builtins-repair.c:261 #, c-format @@ -2732,260 +2795,267 @@ msgstr "" #: app/flatpak-builtins-repair.c:327 msgid "- Repair a flatpak installation" -msgstr "" +msgstr "- Een Flatpak-installatie herstellen" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "" -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" -msgstr "" +msgstr "Refs herinstalleren\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "" -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "" -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" -msgstr "" +msgstr "waar" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" -msgstr "" +msgstr "onwaar" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " -msgstr "" +msgstr "Subsamenvattingen: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" -msgstr "" +msgstr "Cache-versie: %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" -msgstr "" +msgstr "Geïndexeerde delta’s: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" -msgstr "" +msgstr "Titel: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" -msgstr "" +msgstr "Opmerking: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" -msgstr "" +msgstr "Omschrijving: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" -msgstr "" +msgstr "Startpagina: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" -msgstr "" +msgstr "Pictogram: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" -msgstr "" +msgstr "Verzamelings-ID: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" -msgstr "" +msgstr "Standaard-branch: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" -msgstr "" +msgstr "Doorverwijzings-URL: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" -msgstr "" +msgstr "Inzettingsverzamelings-ID: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" -msgstr "" +msgstr "Authenticatornaam: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" -msgstr "" +msgstr "Authenticatorinstallatie: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" -msgstr "" +msgstr "Hash van GPG-sleutel: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" -msgstr "" +msgstr "%zd samenvattings-branches\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" -msgstr "" +msgstr "Geïnstalleerd" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" -msgstr "" +msgstr "Downloaden" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" -msgstr "" +msgstr "Subsets" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" -msgstr "" +msgstr "Overzicht" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" -msgstr "" +msgstr "Geschiedenislengte" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" -msgstr "" +msgstr "LOCATIE - Onderhoud van pakketbronnen" #: app/flatpak-builtins-run.c:67 msgid "Command to run" -msgstr "" +msgstr "Opdracht om uit te voeren" #: app/flatpak-builtins-run.c:68 msgid "Directory to run the command in" -msgstr "" +msgstr "Map om de opdracht in uit te voeren" #: app/flatpak-builtins-run.c:69 msgid "Branch to use" -msgstr "" +msgstr "Branch om te gebruiken" #: app/flatpak-builtins-run.c:70 msgid "Use development runtime" -msgstr "" +msgstr "Ontwikkelaars-runtime gebruiken" #: app/flatpak-builtins-run.c:71 msgid "Runtime to use" -msgstr "" +msgstr "Runtime om te gebruiken" #: app/flatpak-builtins-run.c:72 msgid "Runtime version to use" -msgstr "" +msgstr "Runtime-versie om te gebruiken" #: app/flatpak-builtins-run.c:75 msgid "Log accessibility bus calls" -msgstr "" +msgstr "Aanroepen van toegankelijkheidsbus bijhouden" #: app/flatpak-builtins-run.c:76 msgid "Don't proxy accessibility bus calls" -msgstr "" +msgstr "Aanroepen van toegankelijkheidsbus niet omleiden" #: app/flatpak-builtins-run.c:77 msgid "Proxy accessibility bus calls (default except when sandboxed)" @@ -3043,11 +3113,11 @@ msgstr "" msgid "Use PATH instead of the runtime's /usr" msgstr "" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "" @@ -3058,23 +3128,23 @@ msgstr "" #: app/flatpak-builtins-search.c:47 msgid "Remotes" -msgstr "" +msgstr "Remotes" #: app/flatpak-builtins-search.c:47 msgid "Show the remotes" -msgstr "" +msgstr "De remotes tonen" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" -msgstr "" +msgstr "Geen overeenkomsten gevonden" #: app/flatpak-builtins-uninstall.c:54 msgid "Arch to uninstall" @@ -3090,24 +3160,24 @@ msgstr "" #: app/flatpak-builtins-uninstall.c:57 msgid "Remove files even if running" -msgstr "" +msgstr "Bestanden verwijderen zelfs indien in gebruik" #: app/flatpak-builtins-uninstall.c:60 msgid "Uninstall all" -msgstr "" +msgstr "Alle verwijderen" #: app/flatpak-builtins-uninstall.c:61 msgid "Uninstall unused" -msgstr "" +msgstr "Ongebruikte verwijderen" #: app/flatpak-builtins-uninstall.c:62 msgid "Delete app data" -msgstr "" +msgstr "Toepassingsgegevens verwijderen" #: app/flatpak-builtins-uninstall.c:141 #, c-format msgid "Delete data for %s?" -msgstr "" +msgstr "Gegevens voor %s verwijderen?" #: app/flatpak-builtins-uninstall.c:220 #, c-format @@ -3121,7 +3191,7 @@ msgstr "" #: app/flatpak-builtins-uninstall.c:238 msgid "Really remove?" -msgstr "" +msgstr "Echt verwijderen?" #: app/flatpak-builtins-uninstall.c:255 msgid "[REF…] - Uninstall applications or runtimes" @@ -3148,36 +3218,38 @@ msgid "" msgstr "" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" -msgstr "" +msgstr "Geen ongebruikte items om te verwijderen\n" #: app/flatpak-builtins-uninstall.c:444 #, c-format msgid "No installed refs found for ‘%s’" -msgstr "" +msgstr "Geen geïnstalleerde refs gevonden voor ‘%s’" #: app/flatpak-builtins-uninstall.c:447 #, c-format msgid " with arch ‘%s’" -msgstr "" +msgstr " met architectuur ‘%s’" #: app/flatpak-builtins-uninstall.c:449 #, c-format msgid " with branch ‘%s’" -msgstr "" +msgstr " met branch ‘%s’" #: app/flatpak-builtins-uninstall.c:456 #, c-format msgid "Warning: %s is not installed\n" -msgstr "" +msgstr "Waarschuwing: %s is niet geïnstalleerd\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" -msgstr "" +msgstr "Geen van de opgegeven refs is geïnstaleerd" #: app/flatpak-builtins-update.c:56 msgid "Arch to update for" -msgstr "" +msgstr "Architectuur om voor bij te werken" #: app/flatpak-builtins-update.c:57 msgid "Commit to deploy" @@ -3193,202 +3265,199 @@ msgstr "" #: app/flatpak-builtins-update.c:61 msgid "Don't update related refs" -msgstr "" +msgstr "Verwante refs niet bijwerken" #: app/flatpak-builtins-update.c:66 msgid "Update appstream for remote" -msgstr "" +msgstr "Appstream voor remote bijwerken" #: app/flatpak-builtins-update.c:67 msgid "Only update this subpath" -msgstr "" +msgstr "Enkel dit subpad bijwerken" #: app/flatpak-builtins-update.c:90 msgid "[REF…] - Update applications or runtimes" -msgstr "" +msgstr "[REF…] - Toepassingen of runtimes bijwerken" #: app/flatpak-builtins-update.c:121 msgid "With --commit, only one REF may be specified" msgstr "" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" -msgstr "" +msgstr "Zoeken naar updates…\n" #: app/flatpak-builtins-update.c:215 #, c-format msgid "Unable to update %s: %s\n" -msgstr "" +msgstr "Kon %s niet bijwerken:%s\n" +# Ik heb de punten hier weggelaten voor consistentie met de rest van de mededelingen - Philip #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" -msgstr "" +msgstr "Er valt niets te doen\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" -msgstr "" +msgstr "Remote ‘%s’ in meerdere installaties gevonden:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" -msgstr "" +msgstr "Welke wilt u gebruiken (0 om af te breken)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" "Hint: Use flatpak remote-add to add a remote" msgstr "" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" "Use this ref?" msgstr "" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" -msgstr "" +msgstr "Alle bovenstaande" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "Remotes gevonden met refs gelijkaardig aan ‘%s’:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" -msgstr "" +msgstr "Fout bij bijwerken" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" -msgstr "" +msgstr "Remote ‘%s’ niet gevonden" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." -msgstr "" +msgstr "Dubbelzinnig achtervoegsel ‘%s’" #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" -msgstr "" +msgstr "Geldige waarden zijn :s[tart], :m[iddle], :e[nd] of :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." -msgstr "" +msgstr "Ongeldig achtervoegsel ‘%s’" -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" -msgstr "" +msgstr "Dubbelzinnige kolom: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" -msgstr "" +msgstr "Onbekende kolom: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" -msgstr "" +msgstr "Beschikbare kolommen:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" -msgstr "" +msgstr "Alle kolommen tonen" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" -msgstr "" +msgstr "Beschikbare kolommen tonen" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" +"Voeg :s[tart], :m[iddle], :e[nd] of :f[ull] toe om weglating te wijzigen" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" -msgstr "" +msgstr "Vereiste runtime voor %s (%s) gevonden in remote %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" -msgstr "" +msgstr "Wilt u deze installeren?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" -msgstr "" +msgstr "Vereiste runtime voor %s (%s) gevonden in meerdere remotes:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" -msgstr "" +msgstr "Welke wilt u installeren? (0 om af te breken)" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, c-format msgid "Configuring %s as new remote '%s'\n" -msgstr "" +msgstr "%s als nieuwe remote ‘%s’ configureren\n" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3397,7 +3466,7 @@ msgid "" msgstr "" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3405,126 +3474,126 @@ msgid "" "Configure this as new remote '%s'" msgstr "" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" -msgstr "" +msgstr "Installeren…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" -msgstr "" +msgstr "%d/%d installeren…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" -msgstr "" +msgstr "Bijwerken…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" -msgstr "" +msgstr "%d/%d bijwerken…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" -msgstr "" +msgstr "Verwijderen…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" -msgstr "" +msgstr "%d/%d verwijderen…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" -msgstr "" +msgstr "Info: %s is overgeslagen" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, c-format msgid "Warning: %s%s%s already installed" -msgstr "" +msgstr "Waarschuwing: %s%s%s al geïnstalleerd" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, c-format msgid "Error: %s%s%s already installed" -msgstr "" +msgstr "Fout: %s%s%s al geïnstalleerd" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, c-format msgid "Warning: %s%s%s not installed" -msgstr "" +msgstr "Waarschuwing: %s%s%s niet geïnstalleerd" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, c-format msgid "Error: %s%s%s not installed" -msgstr "" +msgstr "Fout: %s%s%s niet geïnstalleerd" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, c-format msgid "Warning: %s%s%s needs a later flatpak version" -msgstr "" +msgstr "Waarschuwing: %s%s%s vereist een nieuwere flatpak-versie" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, c-format msgid "Error: %s%s%s needs a later flatpak version" -msgstr "" +msgstr "Fout: %s%s%s vereist een nieuwere flatpak-versie" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" -msgstr "" +msgstr "Waarschuwing: Niet genoeg opslagruimte om deze handeling te voltooien" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" -msgstr "" +msgstr "Fout: Niet genoeg opslagruimte om deze handeling te voltooien" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, c-format msgid "Warning: %s" -msgstr "" +msgstr "Waarschuwing: %s" -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, c-format msgid "Error: %s" -msgstr "" +msgstr "Fout: %s" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, c-format msgid "Failed to install %s%s%s: " -msgstr "" +msgstr "%s%s%s installeren mislukt: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, c-format msgid "Failed to update %s%s%s: " -msgstr "" +msgstr "%s%s%s bijwerken mislukt: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, c-format msgid "Failed to install bundle %s%s%s: " -msgstr "" +msgstr "Bundel %s%s%s installeren mislukt: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, c-format msgid "Failed to uninstall %s%s%s: " -msgstr "" +msgstr "%s%s%s verwijderen mislukt: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" -msgstr "" +msgstr "Authenticatie vereist voor remote ‘%s’\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" -msgstr "" +msgstr "Browser openen?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" -msgstr "" +msgstr "Inloggen vereist de remote %s (rijk %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" -msgstr "" +msgstr "Wachtwoord" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, c-format msgid "" "\n" @@ -3532,7 +3601,7 @@ msgid "" "%s%s%s branch %s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, c-format msgid "" "\n" @@ -3540,7 +3609,7 @@ msgid "" "%s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, c-format msgid "" "\n" @@ -3549,162 +3618,161 @@ msgid "" msgstr "" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:947 +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" msgstr "" -#: app/flatpak-cli-transaction.c:949 +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" msgstr "" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" -msgstr "" +msgstr "Vervangen?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" -msgstr "" +msgstr "Bijwerken naar de gerebasede versie\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " -msgstr "" - -#: app/flatpak-cli-transaction.c:1009 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "" +msgstr "%s naar %s rebasen mislukt" -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, c-format msgid "New %s%s%s permissions:" -msgstr "" +msgstr "Nieuwe rechten van %s%s%s:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, c-format msgid "%s%s%s permissions:" -msgstr "" +msgstr "Rechten van %s%s%s:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " -msgstr "" +msgstr "Waarschuwing: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" -msgstr "" +msgstr "Op" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" -msgstr "" +msgstr "deels" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" -msgstr "" +msgstr "Deze wijzigingen doorzetten in de gebruikersinstallatie?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" -msgstr "" +msgstr "Deze wijzigingen doorzetten in de systeeminstallatie?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" -msgstr "" +msgstr "Deze wijzigingen doorzetten in de %s?" -#: app/flatpak-cli-transaction.c:1655 +# Ik heb de punten hier weggelaten voor consistentie met de rest van de mededelingen - Philip +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." -msgstr "" +msgstr "Veranderingen voltooid" -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." -msgstr "" +msgstr "Verwijdering voltooid" -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." -msgstr "" +msgstr "Installatie voltooid" -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." -msgstr "" +msgstr "Updates voltooid" #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" -msgstr "" +msgstr "Er waren één of meerdere fouten" #. translators: please keep the leading space #: app/flatpak-main.c:76 msgid " Manage installed applications and runtimes" -msgstr "" +msgstr "Geïnstalleerde toepassingen en runtimes beheren" #: app/flatpak-main.c:77 msgid "Install an application or runtime" -msgstr "" +msgstr "Toepassing of runtime installeren" #: app/flatpak-main.c:78 msgid "Update an installed application or runtime" -msgstr "" +msgstr "Geïnstalleerde toepassing of runtime bijwerken" #: app/flatpak-main.c:81 msgid "Uninstall an installed application or runtime" -msgstr "" +msgstr "Geïnstalleerde toepassing of runtime verwijderen" #: app/flatpak-main.c:84 msgid "Mask out updates and automatic installation" -msgstr "" +msgstr "Updates en automatische installatie verhullen" #: app/flatpak-main.c:85 msgid "Pin a runtime to prevent automatic removal" -msgstr "" +msgstr "Runtime vastpinnen om automatische verwijdering tegen te gaan" #: app/flatpak-main.c:86 msgid "List installed apps and/or runtimes" -msgstr "" +msgstr "Geïnstalleerde toepassingen en/of runtimes opsommen" #: app/flatpak-main.c:87 msgid "Show info for installed app or runtime" -msgstr "" +msgstr "Info over geïnstalleerde toepassing of runtime tonen" #: app/flatpak-main.c:88 msgid "Show history" -msgstr "" +msgstr "Geschiedenis tonen" #: app/flatpak-main.c:89 msgid "Configure flatpak" -msgstr "" +msgstr "Flatpak configureren" #: app/flatpak-main.c:90 msgid "Repair flatpak installation" -msgstr "" +msgstr "Flatpak-installatie herstellen" #: app/flatpak-main.c:91 msgid "Put applications or runtimes onto removable media" -msgstr "" +msgstr "Toepassingen of runtimes op verwijderbare media plaatsen" #. translators: please keep the leading newline and space #: app/flatpak-main.c:94 @@ -3712,10 +3780,12 @@ msgid "" "\n" " Find applications and runtimes" msgstr "" +"\n" +" Zoeken naar toepassingen en runtimes" #: app/flatpak-main.c:95 msgid "Search for remote apps/runtimes" -msgstr "" +msgstr "Zoeken naar toepassingen/runtimes van remote" #. translators: please keep the leading newline and space #: app/flatpak-main.c:98 @@ -3723,30 +3793,32 @@ msgid "" "\n" " Manage running applications" msgstr "" +"\n" +" Draaiende toepassingen beheren" #: app/flatpak-main.c:99 msgid "Run an application" -msgstr "" +msgstr "Toepassing starten" #: app/flatpak-main.c:100 msgid "Override permissions for an application" -msgstr "" +msgstr "Rechten voor een toepassing overschrijven" #: app/flatpak-main.c:101 msgid "Specify default version to run" -msgstr "" +msgstr "Standaardversie opgeven om uit te voeren" #: app/flatpak-main.c:102 msgid "Enter the namespace of a running application" -msgstr "" +msgstr "Namespace van een draaiende toepassing betreden" #: app/flatpak-main.c:103 msgid "Enumerate running applications" -msgstr "" +msgstr "Draaiende toepassingen opsommen" #: app/flatpak-main.c:104 msgid "Stop a running application" -msgstr "" +msgstr "Draaiende toepassing stoppen" #. translators: please keep the leading newline and space #: app/flatpak-main.c:107 @@ -3754,22 +3826,24 @@ msgid "" "\n" " Manage file access" msgstr "" +"\n" +"Bestandstoegang beheren" #: app/flatpak-main.c:108 msgid "List exported files" -msgstr "" +msgstr "Geëxporteerde bestanden opsommen" #: app/flatpak-main.c:109 msgid "Grant an application access to a specific file" -msgstr "" +msgstr "Toepassing toegang geven tot een specifiek bestand" #: app/flatpak-main.c:110 msgid "Revoke access to a specific file" -msgstr "" +msgstr "Toegang tot een specifiek bestand intrekken" #: app/flatpak-main.c:111 msgid "Show information about a specific file" -msgstr "" +msgstr "Informatie tonen over specifiek bestand" #. translators: please keep the leading newline and space #: app/flatpak-main.c:115 @@ -3777,26 +3851,28 @@ msgid "" "\n" " Manage dynamic permissions" msgstr "" +"\n" +"Dynamische rechten beheren" #: app/flatpak-main.c:116 msgid "List permissions" -msgstr "" +msgstr "Rechten opsommen" #: app/flatpak-main.c:117 msgid "Remove item from permission store" -msgstr "" +msgstr "Item van rechtenopslag verwijderen" #: app/flatpak-main.c:119 msgid "Set permissions" -msgstr "" +msgstr "Rechten instellen" #: app/flatpak-main.c:120 msgid "Show app permissions" -msgstr "" +msgstr "Toepassingsrechten tonen" #: app/flatpak-main.c:121 msgid "Reset app permissions" -msgstr "" +msgstr "Toepassingsrechten resetten" #. translators: please keep the leading newline and space #: app/flatpak-main.c:124 @@ -3804,30 +3880,32 @@ msgid "" "\n" " Manage remote repositories" msgstr "" +"\n" +"Externe pakketbronnen beheren" #: app/flatpak-main.c:125 msgid "List all configured remotes" -msgstr "" +msgstr "Alle geconfigureerde remotes opsommen" #: app/flatpak-main.c:126 msgid "Add a new remote repository (by URL)" -msgstr "" +msgstr "Nieuwe externe pakketbron toevoegen (als URL)" #: app/flatpak-main.c:127 msgid "Modify properties of a configured remote" -msgstr "" +msgstr "Eigenschappen bewerken van een geconfigureerde remote" #: app/flatpak-main.c:128 msgid "Delete a configured remote" -msgstr "" +msgstr "Geconfigureerde remote verwijderen" #: app/flatpak-main.c:130 msgid "List contents of a configured remote" -msgstr "" +msgstr "Inhoud van een geconfigureerde remote opsommen" #: app/flatpak-main.c:131 msgid "Show information about a remote app or runtime" -msgstr "" +msgstr "Informatie over een externe toepassing of runtime tonen" #. translators: please keep the leading newline and space #: app/flatpak-main.c:134 @@ -3835,82 +3913,84 @@ msgid "" "\n" " Build applications" msgstr "" +"\n" +"Toepassingen compileren" #: app/flatpak-main.c:135 msgid "Initialize a directory for building" -msgstr "" +msgstr "Map initialiseren voor compilatie" #: app/flatpak-main.c:136 msgid "Run a build command inside the build dir" -msgstr "" +msgstr "Opdracht uitvoeren in de compilatiemap" #: app/flatpak-main.c:137 msgid "Finish a build dir for export" -msgstr "" +msgstr "Compilatiemap voltooien voor export" #: app/flatpak-main.c:138 msgid "Export a build dir to a repository" -msgstr "" +msgstr "Compilatiemap exporteren naar een pakketbron" #: app/flatpak-main.c:139 msgid "Create a bundle file from a ref in a local repository" -msgstr "" +msgstr "Bundelbestand aanmaken vanuit een ref in een lokale pakketbron" #: app/flatpak-main.c:140 msgid "Import a bundle file" -msgstr "" +msgstr "Bundelbestand importeren" #: app/flatpak-main.c:141 msgid "Sign an application or runtime" -msgstr "" +msgstr "Toepassing of runtime ondertekenen" #: app/flatpak-main.c:142 msgid "Update the summary file in a repository" -msgstr "" +msgstr "Samenvattingsbestand in een pakketbron bijwerken" #: app/flatpak-main.c:143 msgid "Create new commit based on existing ref" -msgstr "" +msgstr "Nieuwe commit aanmaken gebaseerd op bestaande ref" #: app/flatpak-main.c:144 msgid "Show information about a repo" -msgstr "" +msgstr "Informatie over een repo tonen" #: app/flatpak-main.c:161 msgid "Show debug information, -vv for more detail" -msgstr "" +msgstr "Foutopsporingsinformatie tonen, -vv voor meer details" #: app/flatpak-main.c:162 msgid "Show OSTree debug information" -msgstr "" +msgstr "OSTree-foutopsporingsinformatie tonen" #: app/flatpak-main.c:168 msgid "Print version information and exit" -msgstr "" +msgstr "Versie-informatie tonen en afsluiten" #: app/flatpak-main.c:169 msgid "Print default arch and exit" -msgstr "" +msgstr "Standaardarchitectuur tonen en sluiten" #: app/flatpak-main.c:170 msgid "Print supported arches and exit" -msgstr "" +msgstr "Ondersteunde architecturen afdrukken en sluiten" #: app/flatpak-main.c:171 msgid "Print active gl drivers and exit" -msgstr "" +msgstr "Actieve GL-drivers tonen en sluiten" #: app/flatpak-main.c:172 msgid "Print paths for system installations and exit" -msgstr "" +msgstr "Paden voor systeeminstallaties tonen en sluiten" #: app/flatpak-main.c:173 msgid "Print the updated environment needed to run flatpaks" -msgstr "" +msgstr "Bijgewerkte omgeving benodigd om Flatpaks uit te voeren tonen" #: app/flatpak-main.c:174 msgid "Only include the system installation with --print-updated-env" -msgstr "" +msgstr "Enkel de systeeminstallatie toevoegen met --print-updated-env" #: app/flatpak-main.c:179 msgid "Work on the user installation" @@ -3926,7 +4006,7 @@ msgstr "" #: app/flatpak-main.c:211 msgid "Builtin Commands:" -msgstr "" +msgstr "Ingebouwde opdrachten:" #: app/flatpak-main.c:297 #, c-format @@ -3944,365 +4024,394 @@ msgid "" "not appear on your desktop until the session is restarted." msgstr "" -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" -msgstr "" +msgstr "Zie ‘%s --help’" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" -msgstr "" +msgstr "‘%s’ is geen flatpak-opdracht. Bedoelde u ‘%s%s’?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" -msgstr "" +msgstr "‘%s’ is geen flatpak-opdracht" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" -msgstr "" +msgstr "Geen opdracht opgegeven" #: app/flatpak-main.c:976 msgid "error:" -msgstr "" +msgstr "fout:" #: app/flatpak-quiet-transaction.c:77 #, c-format msgid "Installing %s\n" -msgstr "" +msgstr "%s installeren\n" #: app/flatpak-quiet-transaction.c:81 #, c-format msgid "Updating %s\n" -msgstr "" +msgstr "%s bijwerken\n" #: app/flatpak-quiet-transaction.c:85 #, c-format msgid "Uninstalling %s\n" -msgstr "" +msgstr "%s verwijderen\n" #: app/flatpak-quiet-transaction.c:107 #, c-format msgid "Warning: Failed to install %s: %s\n" -msgstr "" +msgstr "Waarschuwing: %s installeren mislukt: %s\n" #: app/flatpak-quiet-transaction.c:110 #, c-format msgid "Error: Failed to install %s: %s\n" -msgstr "" +msgstr "Fout: %s installeren mislukt: %s\n" #: app/flatpak-quiet-transaction.c:116 #, c-format msgid "Warning: Failed to update %s: %s\n" -msgstr "" +msgstr "Waarschuwing: %s bijwerken mislukt: %s\n" #: app/flatpak-quiet-transaction.c:119 #, c-format msgid "Error: Failed to update %s: %s\n" -msgstr "" +msgstr "Fout: %s bijwerken mislukt: %s\n" #: app/flatpak-quiet-transaction.c:125 #, c-format msgid "Warning: Failed to install bundle %s: %s\n" -msgstr "" +msgstr "Waarschuwing: Bundel %s installeren mislukt: %s\n" #: app/flatpak-quiet-transaction.c:128 #, c-format msgid "Error: Failed to install bundle %s: %s\n" -msgstr "" +msgstr "Fout: Bundel %s installeren mislukt: %s\n" #: app/flatpak-quiet-transaction.c:134 #, c-format msgid "Warning: Failed to uninstall %s: %s\n" -msgstr "" +msgstr "Waarschuwing: %s verwijderen mislukt: %s\n" #: app/flatpak-quiet-transaction.c:137 #, c-format msgid "Error: Failed to uninstall %s: %s\n" -msgstr "" +msgstr "Fout: %s verwijderen mislukt: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" -msgstr "" +msgstr "%s al geïnstalleerd" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" -msgstr "" +msgstr "%s niet geïnstalleerd" #: app/flatpak-quiet-transaction.c:170 #, c-format msgid "%s needs a later flatpak version" -msgstr "" +msgstr "%s vereist een nieuwere flatpak-versie" #: app/flatpak-quiet-transaction.c:172 msgid "Not enough disk space to complete this operation" -msgstr "" +msgstr "Niet genoeg opslagruimte om deze handeling te voltooien" #: app/flatpak-quiet-transaction.c:239 #, c-format msgid "Info: %s is end-of-life, in favor of %s\n" -msgstr "" +msgstr "Info: %s is end-of-life, en wordt vervangen door %s\n" #: app/flatpak-quiet-transaction.c:241 #, c-format msgid "Info: %s is end-of-life, with reason: %s\n" -msgstr "" +msgstr "Info: %s is end-of-life, met reden: %s\n" #: app/flatpak-quiet-transaction.c:251 #, c-format msgid "Failed to rebase %s to %s: %s\n" -msgstr "" - -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "" +msgstr "Rebasen van %s naar %s mislukt %s\n" #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" -msgstr "" +msgstr "Geen authenticator voor remote ‘%s’ geconfigureerd" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" -msgstr "" +msgstr "Onbekend deeltype %s, geldige types zijn: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" -msgstr "" +msgstr "Onbekend beleidstype %s, geldige types zijn: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" -msgstr "" +msgstr "Ongeldige D-Bus-naam %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" -msgstr "" +msgstr "Onbekend socket-type %s, geldige types zijn: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" -msgstr "" +msgstr "Onbekend apparaattype %s, geldige types zijn: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" -msgstr "" +msgstr "Onbekend functietype %s, geldige types zijn: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" -msgstr "" +msgstr "Bestandssysteemlocatie ‘%s’ bevat ‘..’" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" "etc, home, xdg-*[/…], ~/dir, /dir" msgstr "" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" -msgstr "" +msgstr "Ongeldig omgevingsformaat %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" -msgstr "" +msgstr "Delen met host" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" -msgstr "" +msgstr "DELEN" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" -msgstr "" +msgstr "Niet meer delen met host" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" -msgstr "" +msgstr "Socket blootstellen aan toepassing" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" -msgstr "" +msgstr "SOCKET" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" -msgstr "" +msgstr "Socket niet blootstellen aan toepassing" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" -msgstr "" +msgstr "Apparaat blootstellen aan toepassing" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" -msgstr "" +msgstr "APPARAAT" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" -msgstr "" +msgstr "Apparaat niet blootstellen aan toepassing" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" -msgstr "" +msgstr "Functie toestaan" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" -msgstr "" +msgstr "FUNCTIE" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" -msgstr "" +msgstr "Functie niet toestaan" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" -msgstr "" +msgstr "Apparaat blootstellen aan toepassing (:ro voor alleen-lezen)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" -msgstr "" +msgstr "BESTANDSSYSTEEM[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" -msgstr "" +msgstr "Bestandssysteem niet aan toepassing blootstellen" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" -msgstr "" +msgstr "BESTANDSSYSTEEM" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" -msgstr "" +msgstr "Omgevingsvariabele instellen" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" -msgstr "" +msgstr "VAR=WAARDE" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" -msgstr "" +msgstr "FD" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" -msgstr "" +msgstr "Variabele verwijderen uit omgeving" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" -msgstr "" +msgstr "VAR" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" -msgstr "" +msgstr "DBUS-NAAM" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +msgid "Allow app to own name on the a11y bus" +msgstr "" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" -msgstr "" +msgstr "SUBSYSTEEM.SLEUTEL=WAARDE" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" +msgstr "Optie voor algemeen beieid verwijderen" + +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" msgstr "" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" msgstr "" -#: common/flatpak-context.c:1549 -msgid "FILENAME" +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" msgstr "" +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 +msgid "FILENAME" +msgstr "BESTANDSNAAM" + +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Subpad van persoonlijke map behouden" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4311,1278 +4420,1354 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 #, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "" -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "" - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" -msgstr "" +msgstr "Image is geen manifest" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" -msgstr "" +msgstr "Kon niet verbinden met systembus" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" -msgstr "" +msgstr "Gebruikersinstallatie" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" -msgstr "" +msgstr "Systeeminstallatie (%s)" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" -msgstr "" +msgstr "Geen overschrijvingen gevonden voor %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" -msgstr "" +msgstr "%s (commit %s) niet geïnstalleerd" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" -msgstr "" +msgstr "Fout bij parsen van systeem-flatpakrepo-bestand voor %s : %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " -msgstr "" +msgstr "Bij het openen van pakketbron %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" -msgstr "" +msgstr "De configuratiesleutel %s is niet ingesteld" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "" -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "" -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" -msgstr "" +msgstr "Onvoldoende geheugen" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" -msgstr "" +msgstr "Lezen van geëxporteerd bestand mislukt" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" -msgstr "" +msgstr "Fout bij lezen mimetype-XML-bestand" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" -msgstr "" +msgstr "Ongeldig mimetype-XML-bestand" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" -msgstr "" +msgstr "D-Bus-servicebestand ‘%s’ heeft een ongeldige naam" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "" -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "" -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "" -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "" -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" -msgstr "" +msgstr "%s is niet beschikbaar" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "" -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "" -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "" -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "" -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "" -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "" -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "" -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "" -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" -msgstr "" +msgstr "Deze versie van %s is reeds geïnstalleerd" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" -msgstr "" +msgstr "Opruimen van bron mislukt: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" -msgstr "" +msgstr "Laden van filter ‘%s’ mislukt" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" -msgstr "" +msgstr "Parsen van filter ‘%s’ mislukt" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "" -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " "URL passed to remote-add was valid." msgstr "" -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "" -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" -msgstr "" +msgstr "Geen overeenkomsten met %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" -msgstr "" +msgstr "%s/%s/%s niet geïnstalleerd" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" -msgstr "" +msgstr "Kon installatie van %s niet vinden" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" -msgstr "" +msgstr "Ongeldig bestandsformaat, geen %s-groep" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" -msgstr "" +msgstr "Ongeldige versie %s, enkel 1 ondersteund" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" -msgstr "" +msgstr "Ongeldig bestandsformaat, geen %s opgegeven" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" -msgstr "" +msgstr "Ongeldig bestandsformaat, GPG-sleutel ongeldig" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" -msgstr "" +msgstr "Verzamelings-ID vereist dat GPG-sleutel moet worden opgegeven" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" -msgstr "" +msgstr "Runtime %s, branch %s is reeds geïnstalleerd" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" -msgstr "" +msgstr "Toepassing %s, branch %s is reeds geïnstalleerd" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" -msgstr "" +msgstr "Ongeldig teken ‘/’ in remote-naam: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" -msgstr "" +msgstr "Een absoluut pad is vereist" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, c-format msgid "Unable to open path \"%s\": %s" -msgstr "" +msgstr "Kan pad ‘%s’ niet openen: %s" -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, c-format msgid "Unable to get file type of \"%s\": %s" -msgstr "" +msgstr "Kan bestandstype van ‘%s’ niet verkrijgen: %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" -msgstr "" +msgstr "Bestand ‘%s’ heeft niet-ondersteund bestandstype 0o%o" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" -msgstr "" +msgstr "Kan bestandssysteeminformatie voor ‘%s’ niet verkrijgen: %s" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" -msgstr "" +msgstr "Pad ‘%s’ is gereserveerd door Flatpak" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, c-format msgid "Unable to resolve symbolic link \"%s\": %s" -msgstr "" +msgstr "Kon symbolische link ‘%s’ niet volgen: %s" + +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "Lege tekenreeks is geen getal" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "‘%s’ is geen ongetekend getal" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "Getal ‘%s’ is buiten bereik [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" -msgstr "" +msgstr "Ref %s niet geïnstalleerd" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" -msgstr "" +msgstr "Toepassing %s niet geïnstalleerd" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" -msgstr "" +msgstr "Remote ‘%s’ bestaat al" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" -msgstr "" +msgstr "Zoals verzocht is %s enkel opgehaald maar niet geïnstalleerd" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" -msgstr "" +msgstr "Kon map %s niet aanmaken" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" -msgstr "" - -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "" +msgstr "Kon %s niet vergrendelen" -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" -msgstr "" +msgstr "Kon tijdelijke map in %s niet aanmaken" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" -msgstr "" +msgstr "Kon bestand %s niet aanmaken" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" -msgstr "" +msgstr "Kon symbolische link %s/%s niet aanmaken" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" -msgstr "" +msgstr "Enkel Bearer-authenticatie ondersteund" -#: common/flatpak-oci-registry.c:1004 +# Ik mis hier wat context, dit is een letterlijke vertaling - Philip +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" -msgstr "" +msgstr "Enige rijk in authenticatieverzoek" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" -msgstr "" +msgstr "Ongeldig rijk in authenticatieverzoek" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" -msgstr "" +msgstr "Autorisatie mislukt: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" -msgstr "" +msgstr "Autorisatie mislukt" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" -msgstr "" +msgstr "Onverwachte antwoordstatus %d bij aanvragen van token: %s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" -msgstr "" +msgstr "Ongeldig antwoord op authenticatieverzoek" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" -msgstr "" +msgstr "Ongeldig deltabestandsformaat" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" -msgstr "" +msgstr "Geen GPG-sleutel gevonden met ID %s (map: %s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, c-format msgid "Unable to lookup key ID %s: %d" -msgstr "" +msgstr "Kon sleutel-ID %s niet opzoeken: %d" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" -msgstr "" +msgstr "Fout bij ondertekenen van commit: %d" + +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Ongeldige configuratie van OCI-image" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Ongeldige controlesom van laag, %s verwacht, %s opgegeven" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "Geen ref opgegeven voor OCI-image %s" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Ongeldige ref (%s) opgegeven voor OCI-image %s, %s verwacht" #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" -msgstr "" +msgstr "Metagegevens downloaden: %u/(schatten) %s" #: common/flatpak-progress.c:260 #, c-format msgid "Downloading: %s/%s" -msgstr "" +msgstr "Downloaden: %s/%s" #: common/flatpak-progress.c:280 #, c-format msgid "Downloading extra data: %s/%s" -msgstr "" +msgstr "Extra gegevens downloaden: %s/%s" #: common/flatpak-progress.c:285 #, c-format msgid "Downloading files: %d/%d %s" -msgstr "" +msgstr "Bestanden downloaden: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" -msgstr "" +msgstr "Naam mag niet leeg zijn" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" -msgstr "" +msgstr "Naam mag niet langer zijn dan 255 tekens" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" -msgstr "" +msgstr "Naam mag niet starten met een punt" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" -msgstr "" +msgstr "Naam mag niet starten met %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" -msgstr "" +msgstr "Naam mag niet eindigen met een punt" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" -msgstr "" +msgstr "Enkel het laatste naamsegment mag een streepje bevatten" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" -msgstr "" +msgstr "Naamsegment mag niet starten met %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" -msgstr "" +msgstr "Naam mag geen %c bevatten" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" -msgstr "" +msgstr "Namen moeten ten minste 2 punten bevatten" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" -msgstr "" +msgstr "Arch mag niet leeg zijn" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" -msgstr "" +msgstr "Arch mag geen %c bevatten" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" -msgstr "" +msgstr "Branch mag niet leeg zijn" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" -msgstr "" +msgstr "Branch mag niet starten met %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" -msgstr "" +msgstr "Branch mag geen %c bevatten" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" -msgstr "" +msgstr "REF te lang" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" -msgstr "" +msgstr "Ongeldige remote-naam" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" -msgstr "" +msgstr "%s is geen toepassing of runtime" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" -msgstr "" +msgstr "Ongeldig aantal onderdelen in %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" -msgstr "" +msgstr "Ongeldige naam %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" -msgstr "" +msgstr "Ongeldige architectuur %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" -msgstr "" +msgstr "Ongeldige naam %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" -msgstr "" +msgstr "Ongeldige architectuur %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" -msgstr "" +msgstr "Ongeldige branch %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" -msgstr "" +msgstr "Onjuist aantal onderdelen in gedeeltelijke ref %s" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" -msgstr "" +msgstr " ontwikkelingsplatform" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" -msgstr "" +msgstr " platform" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" -msgstr "" +msgstr " toepassingsbasis" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" -msgstr "" +msgstr " foutopsporingssymbolen" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" -msgstr "" +msgstr " broncode" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" -msgstr "" +msgstr " vertalingen" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" -msgstr "" +msgstr " documentatie" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" -msgstr "" +msgstr "Ongeldige ID %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" -msgstr "" +msgstr "Ongeldige remote-naam: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" -msgstr "" +msgstr "Geen URL opgegeven" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "" +"GPG-verificatie moet worden ingechakeld wanneer een verzamelings-ID is " +"ingesteld" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Geen extra databronnen" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "Ongeldig(e) %s: Groep ‘%s’ ontbreekt" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "Ongeldig(e) %s: Sleutel ‘%s’ ontbreekt" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Ongeldige GPG-sleutel" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Fout bij kopiëren van 64x64-pictogram voor onderdeel %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Fout bij kopiëren van 128x128-pictogram voor onderdeel %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s is end-of-life, wordt genegeerd voor appstream" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Geen appstream-gegevens voor %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Ongeldige bundel, geen ref in metagegevens" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" msgstr "" +"Verzameling ‘%s’ van bundel komt niet overeen met verzameling ‘%s’ van remote" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Metagegevens in header en toepassing zijn inconsistent" -#: common/flatpak-run.c:2207 +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" -msgstr "" +msgstr "Geen systemd-gebruikerssessie beschikbaar, cgroups niet beschikbaar" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" -msgstr "" +msgstr "Kon instantie-ID niet toewijzen" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" -msgstr "" +msgstr "Bestand flatpak-info openen mislukt: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" -msgstr "" +msgstr "Bestand bwrapinfo.json openen mislukt: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" -msgstr "" +msgstr "Schrijven naar instantie-ID-FD mislukt: %s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" -msgstr "" +msgstr "Seccomp initialiseren mislukt" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, c-format msgid "Failed to add architecture to seccomp filter: %s" -msgstr "" +msgstr "Architectuur aan seccomp-filter toevoegen mislukt: %s" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" -msgstr "" +msgstr "Multiarch-architectuur aan seccomp-filter toevoegen mislukt: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, c-format msgid "Failed to block syscall %d: %s" -msgstr "" +msgstr "Syscall %d blokkeren mislukt: %s" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, c-format msgid "Failed to export bpf: %s" -msgstr "" +msgstr "BPF exporteren mislukt: %s" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" -msgstr "" +msgstr "‘%s’ openen mislukt" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" -msgstr "" +msgstr "ldconfig mislukt, afsluitstatus %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" -msgstr "" +msgstr "Kan gegenereerde ld.so.cache niet openen" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" +"%s uitvoeren is niet toegestaan door het door uw administrator ingestelde " +"beleid" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" +"`flatpak run` is niet bedoeld om als `sudo flatpak run` uitgevoerd te " +"worden. Maak in plaats hiervan gebruik van `sudo -i` of `sudo -l` en voer " +"`flatpak run` uit vanuit de nieuwe shell." -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" -msgstr "" +msgstr "Migratie van %s mislukt: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" +"Oude toepassingsgegevensmap %s migreren naar nieuwe naam %s mislukt: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" -msgstr "" +msgstr "Symbolische link aanmaken bij migreren van %s mislukt: %s" + +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Toepassingsinfobestand openen mislukt" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Kon synchronisatie-pipe niet aanmaken" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Synchroniseren met D-Bus-proxy mislukt" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" -msgstr "" +msgstr "Waarschuwing: Probleem bij zoeken naar verwante refs: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" -msgstr "" +msgstr "De toepassing %s vereist de runtime %s, welke niet kon worden gevonden" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" -msgstr "" +msgstr "De toepassing %s vereist de runtime %s, welke niet is geïnstalleerd" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" -msgstr "" +msgstr "Kan %s niet verwijderen, deze is benodigd door %s" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" -msgstr "" +msgstr "Remote %s is uitgeschakeld, update van %s wordt genegeerd" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" -msgstr "" +msgstr "%s is al geïnstalleerd" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" -msgstr "" +msgstr "%s is al geïnstalleerd van remote %s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" -msgstr "" +msgstr "Ongeldige .flatpakref: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" -msgstr "" +msgstr "Fout bij bijwerken van remote-metagegevens voor ‘%s’ : %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " "installed: %s" msgstr "" +"Waarschuwing: remote-ophaalfout wordt behandeld als niet-fataal omdat %s al " +"is geïnstalleerd: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" -msgstr "" +msgstr "Geen authenticator geïnstalleerd voor remote ‘%s’" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" -msgstr "" +msgstr "Tokens voor ref verkrijgen mislukt: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" -msgstr "" +msgstr "Tokens voor ref verkrijgen mislukt" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" -msgstr "" +msgstr "Ref %s van %s komt overeen met meer dan één transactiehandeling" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" -msgstr "" +msgstr "elke remote" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" -msgstr "" +msgstr "Geen transactiehandeling gevonden voor ref %s van %s" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" -msgstr "" +msgstr "Flatpakrepo-URL %s is geen bestand, HTTP of HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " -msgstr "" +msgstr "Kan afhankelijk bestand %s niet laden: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" -msgstr "" +msgstr "Ongeldige .flatpakrepo: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" -msgstr "" +msgstr "Transactie al uitgevoerd" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." msgstr "" +"Handelingen uitvoeren op een gebruikersinstallatie als root geweigerd! Dit " +"kan leiden tot onjuiste bestandseigendommen en rechtenfouten." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" -msgstr "" +msgstr "Afgebroken door gebruiker" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" -msgstr "" +msgstr "%s wordt overgeslagen vanwege een vorige fout" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" -msgstr "" +msgstr "Afgebroken vanwege fout (%s)" #: common/flatpak-uri.c:118 #, no-c-format msgid "Invalid %-encoding in URI" -msgstr "" +msgstr "Ongeldige %-codering in URI" #: common/flatpak-uri.c:135 msgid "Illegal character in URI" -msgstr "" +msgstr "Ongeldig teken in URI" #: common/flatpak-uri.c:169 msgid "Non-UTF-8 characters in URI" -msgstr "" +msgstr "Ongeldige UTF-8-tekens in URI" #: common/flatpak-uri.c:275 #, c-format msgid "Invalid IPv6 address ‘%.*s’ in URI" -msgstr "" +msgstr "Ongeldig IPv6-adres ‘%.*s’ in URI" #: common/flatpak-uri.c:330 #, c-format msgid "Illegal encoded IP address ‘%.*s’ in URI" -msgstr "" +msgstr "Ongeldig gecodeerd IP-adres ‘%.*s’ in URI" #: common/flatpak-uri.c:342 #, c-format msgid "Illegal internationalized hostname ‘%.*s’ in URI" -msgstr "" +msgstr "Ongeldig geïnternationaliseerde hostnaam ‘%.*s’ in URI" #: common/flatpak-uri.c:374 common/flatpak-uri.c:386 #, c-format msgid "Could not parse port ‘%.*s’ in URI" -msgstr "" +msgstr "Kon poort ‘%.*s’ in URI niet parsen" #: common/flatpak-uri.c:393 #, c-format msgid "Port ‘%.*s’ in URI is out of range" -msgstr "" +msgstr "Poort ‘%.*s’ in URI is buiten bereik" #: common/flatpak-uri.c:910 msgid "URI is not absolute, and no base URI was provided" -msgstr "" - -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "" - -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "" - -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "" +msgstr "URI is niet absoluut, en er is geen basis-URI opgegeven" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:83 #, c-format -msgid "Invalid glob character '%c'" +msgid "USB device query 'all' must not have data" msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:102 #, c-format -msgid "Missing glob on line %d" +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" msgstr "" -#: common/flatpak-utils.c:985 -#, c-format -msgid "Trailing text on line %d" -msgstr "" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "Ongeldige ID %s: %s" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:125 #, c-format -msgid "on line %d" +msgid "Invalid USB subclass" msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Unexpected word '%s' on line %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Invalid %s: Missing group ‘%s’" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:205 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" +msgid "USB device queries must be in the form TYPE:DATA" msgstr "" -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "" - -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:225 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" +msgid "Unknown USB query rule %s" msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:248 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" +msgid "Empty USB query" msgstr "" -#: common/flatpak-utils.c:5684 +#: common/flatpak-usb.c:274 #, c-format -msgid "%s is end-of-life, ignoring for appstream" +msgid "Multiple USB query rules of the same type is not supported" msgstr "" -#: common/flatpak-utils.c:5719 +#: common/flatpak-usb.c:283 #, c-format -msgid "No appstream data for %s: %s\n" -msgstr "" - -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" +msgid "'all' must not contain extra query rules" msgstr "" -#: common/flatpak-utils.c:6791 +#: common/flatpak-usb.c:291 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgid "USB queries with 'dev' must also specify vendors" msgstr "" -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "Glob kan niet overeenkomen met toepassingen" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Lege glob" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 -#, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "Te veel segmenten in glob" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:733 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "" +msgid "Invalid glob character '%c'" +msgstr "Ongeldig glob-teken ‘%c’" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:787 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "" +msgid "Missing glob on line %d" +msgstr "Ontbrekende glob op regel %d" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:791 #, c-format -msgid "Invalid require-flatpak argument %s" -msgstr "" +msgid "Trailing text on line %d" +msgstr "Tekst achteraan regel %d" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:795 #, c-format -msgid "%s needs a later flatpak version (%s)" -msgstr "" +msgid "on line %d" +msgstr "op regel %d" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "" +#: common/flatpak-utils.c:817 +#, c-format +msgid "Unexpected word '%s' on line %d" +msgstr "Onverwacht woord ‘%s’ op regel %d" -#: common/flatpak-utils.c:8401 +#: common/flatpak-utils.c:1980 #, c-format -msgid "“%s” is not an unsigned number" -msgstr "" +msgid "Invalid require-flatpak argument %s" +msgstr "Ongeldig argument %s van require-flatpak" -#: common/flatpak-utils.c:8411 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "" +msgid "%s needs a later flatpak version (%s)" +msgstr "%s vereist een nieuwere flatpak-versie (%s)" #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" -msgstr "" +msgstr "Geen OCI-remote, summary.xa.oci-pakketbron ontbreekt" #: oci-authenticator/flatpak-oci-authenticator.c:477 msgid "Not a OCI remote" -msgstr "" +msgstr "Geen OCI-remote" #: oci-authenticator/flatpak-oci-authenticator.c:488 msgid "Invalid token" -msgstr "" +msgstr "Ongeldige token" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" -msgstr "" +msgstr "Geen portal-ondersteuning gevonden" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" -msgstr "" +msgstr "Weigeren" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" -msgstr "" +msgstr "Bijwerken" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" -msgstr "" +msgstr "%s bijwerken?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." -msgstr "" +msgstr "De toepassing wil zichzelf bijwerken." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" +"Update-toegang kan te allen tijde worden gewijzigd via de privacy-" +"instellingen." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" -msgstr "" +msgstr "Bijwerken van toepassing niet toegestaan" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" +"Zelf updaten wordt niet ondersteund, nieuwe versie vereist nieuwe rechten" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" -msgstr "" +msgstr "Bijwerken is onverwachts gestopt" #. SECURITY: #. - Normal users need admin authentication to install software @@ -5591,12 +5776,12 @@ msgstr "" #. in the wheel group to install without authenticating. #: system-helper/org.freedesktop.Flatpak.policy.in:23 msgid "Install signed application" -msgstr "" +msgstr "Ondertekende toepassing installeren" #: system-helper/org.freedesktop.Flatpak.policy.in:24 #: system-helper/org.freedesktop.Flatpak.policy.in:42 msgid "Authentication is required to install software" -msgstr "" +msgstr "Authenticatie is vereist om software te installeren" #. SECURITY: #. - Normal users need admin authentication to install software @@ -5605,7 +5790,7 @@ msgstr "" #. in the wheel group to install without authenticating. #: system-helper/org.freedesktop.Flatpak.policy.in:41 msgid "Install signed runtime" -msgstr "" +msgstr "Ondertekende runtime installeren" #. SECURITY: #. - Normal users do not require admin authentication to update an @@ -5615,12 +5800,12 @@ msgstr "" #. updates. #: system-helper/org.freedesktop.Flatpak.policy.in:60 msgid "Update signed application" -msgstr "" +msgstr "Ondertekende toepassing bijwerken" #: system-helper/org.freedesktop.Flatpak.policy.in:61 #: system-helper/org.freedesktop.Flatpak.policy.in:80 msgid "Authentication is required to update software" -msgstr "" +msgstr "Authenticatie is vereist om software bij te werken" #. SECURITY: #. - Normal users do not require admin authentication to update a @@ -5630,18 +5815,18 @@ msgstr "" #. updates. #: system-helper/org.freedesktop.Flatpak.policy.in:79 msgid "Update signed runtime" -msgstr "" +msgstr "Ondertekende runtime bijwerken" #. SECURITY: #. - Normal users do not need authentication to update metadata #. from signed repositories. #: system-helper/org.freedesktop.Flatpak.policy.in:94 msgid "Update remote metadata" -msgstr "" +msgstr "Remote-metadata bijwerken" #: system-helper/org.freedesktop.Flatpak.policy.in:95 msgid "Authentication is required to update remote info" -msgstr "" +msgstr "Authenticatie is vereist om remote-info bij te werken" #. SECURITY: #. - Normal users do not need authentication to modify the @@ -5650,22 +5835,22 @@ msgstr "" #. in the wheel group to modify repos without authenticating. #: system-helper/org.freedesktop.Flatpak.policy.in:111 msgid "Update system repository" -msgstr "" +msgstr "Systeempakketbron bijwerken" #: system-helper/org.freedesktop.Flatpak.policy.in:112 msgid "Authentication is required to modify a system repository" -msgstr "" +msgstr "Authenticatie is vereist om een systeempakketbron te bewerken" #. SECURITY: #. - Normal users need admin authentication to install software #. system-wide. #: system-helper/org.freedesktop.Flatpak.policy.in:126 msgid "Install bundle" -msgstr "" +msgstr "Bundel installeren" #: system-helper/org.freedesktop.Flatpak.policy.in:127 msgid "Authentication is required to install software from $(path)" -msgstr "" +msgstr "Authenticatie is vereist om software te installeren van $(path)" #. SECURITY: #. - Normal users need admin authentication to uninstall software @@ -5674,11 +5859,11 @@ msgstr "" #. in the wheel group to uninstall without authenticating. #: system-helper/org.freedesktop.Flatpak.policy.in:144 msgid "Uninstall runtime" -msgstr "" +msgstr "Runtime verwijderen" #: system-helper/org.freedesktop.Flatpak.policy.in:145 msgid "Authentication is required to uninstall software" -msgstr "" +msgstr "Authenticatie is vereist om software te verwijderen" #. SECURITY: #. - Normal users need admin authentication to uninstall software @@ -5687,33 +5872,33 @@ msgstr "" #. in the wheel group to uninstall without authenticating. #: system-helper/org.freedesktop.Flatpak.policy.in:161 msgid "Uninstall app" -msgstr "" +msgstr "Toepassing verwijderen" #: system-helper/org.freedesktop.Flatpak.policy.in:162 msgid "Authentication is required to uninstall $(ref)" -msgstr "" +msgstr "Authenticatie is vereist om $(ref) te verwijderen" #. SECURITY: #. - Normal users need admin authentication to configure system-wide #. software repositories. #: system-helper/org.freedesktop.Flatpak.policy.in:177 msgid "Configure Remote" -msgstr "" +msgstr "Remote configureren" #: system-helper/org.freedesktop.Flatpak.policy.in:178 msgid "Authentication is required to configure software repositories" -msgstr "" +msgstr "Authenticatie is vereist om softwarebronnen te configureren" #. SECURITY: #. - Normal users need admin authentication to configure the system-wide #. Flatpak installation. #: system-helper/org.freedesktop.Flatpak.policy.in:192 msgid "Configure" -msgstr "" +msgstr "Configureren" #: system-helper/org.freedesktop.Flatpak.policy.in:193 msgid "Authentication is required to configure software installation" -msgstr "" +msgstr "Authenticatie is vereist om software-installatie te configureren" #. SECURITY: #. - Normal users do not require admin authentication to update @@ -5723,11 +5908,11 @@ msgstr "" #. updates. #: system-helper/org.freedesktop.Flatpak.policy.in:210 msgid "Update appstream" -msgstr "" +msgstr "Appstream bijwerken" #: system-helper/org.freedesktop.Flatpak.policy.in:211 msgid "Authentication is required to update information about software" -msgstr "" +msgstr "Authenticatie is vereist om informatie over software bij te werken" #. SECURITY: #. - Normal users do not require admin authentication to update @@ -5737,11 +5922,11 @@ msgstr "" #. updates. #: system-helper/org.freedesktop.Flatpak.policy.in:228 msgid "Update metadata" -msgstr "" +msgstr "Metagegevens bijwerken" #: system-helper/org.freedesktop.Flatpak.policy.in:229 msgid "Authentication is required to update metadata" -msgstr "" +msgstr "Authenticatie is vereist om metagegevens bij te werken" #. SECURITY: #. - Authorisation to actually install software is controlled by @@ -5792,10 +5977,24 @@ msgstr "" #. all users’ parental controls policies to true. #: system-helper/org.freedesktop.Flatpak.policy.in:287 msgid "Override parental controls" -msgstr "" +msgstr "Ouderlijk toezicht overschrijven" #: system-helper/org.freedesktop.Flatpak.policy.in:288 msgid "" "Authentication is required to install software which is restricted by your " "parental controls policy" msgstr "" +"Authenticatie is vereist om software te installeren welke is beperkt door uw " +"beleid van ouderlijk toezicht" + +#, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Kon map %s niet openen" + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "%s verwijderen mislukt voor rebase naar %s: " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "%s verwijderen mislukt voor rebase naar %s: %s\n" diff --git a/po/oc.gmo b/po/oc.gmo deleted file mode 100644 index 221ff6c5c542f6ae03efcb7b456768246e822ec0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7529 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 diff --git a/po/oc.po b/po/oc.po index 0e5d91c..0eb5767 100644 --- a/po/oc.po +++ b/po/oc.po @@ -2,176 +2,176 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" -"PO-Revision-Date: 2021-10-08 20:48+0200\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2023-03-14 20:45+0100\n" "Last-Translator: Quentin PAGÈS\n" "Language-Team: \n" "Language: oc\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 3.0\n" +"X-Generator: Poedit 3.2.2\n" "X-Poedit-Basepath: .\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARCH" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "FICHIÈR" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" msgstr "" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Tròp d'arguments" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" -msgstr "" +msgstr "« %s » es pas un repertòri valid" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " -msgstr "" +msgstr "« %s » es pas un repertòri valid : " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" -msgstr "" +msgstr "« %s » es pas un nom valid : %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" -msgstr "" +msgstr "« %s » es pas un nom de branca valid : %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" -msgstr "" +msgstr "« %s » es pas un nom de fichièr valid" #: app/flatpak-builtins-build.c:49 msgid "Use Platform runtime rather than Sdk" @@ -179,7 +179,7 @@ msgstr "" #: app/flatpak-builtins-build.c:50 msgid "Make destination readonly" -msgstr "" +msgstr "Far venir la destinacion en lectura sola" #: app/flatpak-builtins-build.c:51 msgid "Add bind mount" @@ -187,7 +187,7 @@ msgstr "" #: app/flatpak-builtins-build.c:51 msgid "DEST=SRC" -msgstr "" +msgstr "DEST=SRC" #: app/flatpak-builtins-build.c:52 msgid "Start build in this directory" @@ -202,7 +202,7 @@ msgstr "DIR" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "" @@ -222,472 +222,478 @@ msgstr "" msgid "Log system bus calls" msgstr "" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 -msgid "One line subject" -msgstr "" - -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 -msgid "SUBJECT" -msgstr "" - #: app/flatpak-builtins-build-commit-from.c:64 #: app/flatpak-builtins-build-export.c:60 -msgid "Full description" +msgid "One line subject" msgstr "" #: app/flatpak-builtins-build-commit-from.c:64 #: app/flatpak-builtins-build-export.c:60 -msgid "BODY" -msgstr "" +msgid "SUBJECT" +msgstr "SUBJÈCTE" #: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "" +#: app/flatpak-builtins-build-export.c:61 +msgid "Full description" +msgstr "Descripcion complèta" + +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 +msgid "BODY" +msgstr "CÒS" #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 -msgid "Don't update the summary" +msgid "Update the appstream branch" msgstr "" #: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 +msgid "Don't update the summary" +msgstr "" + +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "RAISON" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "VAL" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" -msgstr "" +msgstr "Orodatatge" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" -msgstr "" +msgstr "Generar pas d’indèx d’ensenhador" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" -msgstr "" +msgstr "Impossible d'analisar « %s »" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" -msgstr "" +msgstr "%s : cap de modificacion\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" -msgstr "" +msgstr "Fichièrs d’exclure" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "MOTIU" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" -msgstr "" +msgstr "Fichièrs excluses d’inclure" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" -msgstr "" +msgstr "ID de colleccion" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" -msgstr "" +msgstr "COMANDA" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" -msgstr "" +msgstr "Version de Flatpak de requerir" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" -msgstr "" +msgstr "MAJORA.MINORA.MICRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" -msgstr "" +msgstr "Info de donadas suplementàrias" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" -msgstr "" +msgstr "NOM" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "VALOR" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" -msgstr "" +msgstr "Exportacion %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" -msgstr "" +msgstr "Cap d’executable pas trobat\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " "GROUP=KEY[=VALUE]]" msgstr "" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -695,62 +701,63 @@ msgid "" "NAME=VAR[=VALUE]" msgstr "" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "" @@ -805,11 +812,11 @@ msgstr "" #: app/flatpak-builtins-build-init.c:60 msgid "TYPE" -msgstr "" +msgstr "TIPE" #: app/flatpak-builtins-build-init.c:61 msgid "Add a tag" -msgstr "" +msgstr "Apondre una etiqueta" #: app/flatpak-builtins-build-init.c:61 msgid "TAG" @@ -861,205 +868,208 @@ msgstr "" msgid "Build directory %s already initialized" msgstr "" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "TÍTOL" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" -msgstr "" +msgstr "COMENTARI" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "DESCRIPTION" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" -msgstr "" +msgstr "BRANCA" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" -msgstr "" +msgstr "CLAU=VALOR" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "" -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "" -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "" @@ -1131,109 +1141,109 @@ msgstr "" msgid "Must specify one of --list, --get, --set or --unset" msgstr "" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "DEST" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " "suppress this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " "collection ID set.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " "distribution of ‘%s’." msgstr "" -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " "this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" msgstr "" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1306,19 +1316,20 @@ msgstr "" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "" @@ -1337,7 +1348,7 @@ msgid "Show the document path" msgstr "" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Origina" @@ -1351,7 +1362,7 @@ msgid "Show applications with permission" msgstr "" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Permissions" @@ -1448,7 +1459,7 @@ msgstr "" #: app/flatpak-builtins-history.c:49 app/flatpak-builtins-history.c:50 msgid "TIME" -msgstr "" +msgstr "ORA" #: app/flatpak-builtins-history.c:50 msgid "Only show changes before TIME" @@ -1475,12 +1486,12 @@ msgid "Show the kind of change" msgstr "" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "" @@ -1489,24 +1500,24 @@ msgid "Show the application/runtime ID" msgstr "" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Branca" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "" @@ -1518,7 +1529,7 @@ msgstr "Installacion" msgid "Show the affected installation" msgstr "" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Distant" @@ -1527,7 +1538,7 @@ msgid "Show the remote" msgstr "" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Commit" @@ -1547,7 +1558,7 @@ msgstr "" msgid "Show the remote URL" msgstr "" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Utilizaire" @@ -1564,7 +1575,7 @@ msgid "Show the tool that was used" msgstr "" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Version" @@ -1589,66 +1600,68 @@ msgstr "" #: app/flatpak-builtins-history.c:469 msgid " - Show history" -msgstr "" +msgstr " - Mostrar l’istoric" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "" #: app/flatpak-builtins-info.c:56 msgid "Show user installations" -msgstr "" +msgstr "Mostrar las installacions utilizaire" #: app/flatpak-builtins-info.c:57 msgid "Show system-wide installations" -msgstr "" +msgstr "Mostrar las installacions per tot lo sistèma" #: app/flatpak-builtins-info.c:58 msgid "Show specific system-wide installations" msgstr "" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" -msgstr "" +msgstr "Mostrar la referéncia" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "" #: app/flatpak-builtins-info.c:61 msgid "Show origin" -msgstr "" +msgstr "Mostrar l’origina" #: app/flatpak-builtins-info.c:62 msgid "Show size" msgstr "Afichar la talha" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" -msgstr "" +msgstr "Mostrar las metadonadas" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "" #: app/flatpak-builtins-info.c:66 msgid "Show permissions" -msgstr "" +msgstr "Mostrar las permissions" #: app/flatpak-builtins-info.c:67 msgid "Query file access" msgstr "" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1656,17 +1669,17 @@ msgstr "" #: app/flatpak-builtins-info.c:68 msgid "Show extensions" -msgstr "" +msgstr "Mostrar las extensions" #: app/flatpak-builtins-info.c:69 msgid "Show location" -msgstr "" +msgstr "Mostrar l’emplaçament" #: app/flatpak-builtins-info.c:116 msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "" @@ -1675,85 +1688,87 @@ msgstr "" msgid "ref not present in origin" msgstr "" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "Identificant :" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" -msgstr "" +msgstr "Referéncia :" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" -msgstr "" +msgstr "Arquitectura :" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Branca :" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Version :" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Licéncia :" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" -msgstr "" +msgstr "Colleccion :" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" -msgstr "" +msgstr "Installacion :" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" -msgstr "" +msgstr "Installat :" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" -msgstr "" +msgstr "Environament d’execucion :" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Data :" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Subjècte :" @@ -1766,15 +1781,15 @@ msgid "Latest commit:" msgstr "" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Commit :" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Parent :" @@ -1783,14 +1798,14 @@ msgid "Alt-id:" msgstr "" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" -msgstr "" +msgstr "Fin de vida :" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "" @@ -1799,153 +1814,154 @@ msgid "Subdirectories:" msgstr "" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Extension :" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Origina :" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "desconegut" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Recèrca de correspondéncias…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, c-format msgid "No remote refs found for ‘%s’" msgstr "" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Branca invalida %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" -msgstr "" +msgstr "Passant : %s\n" #: app/flatpak-builtins-kill.c:68 #, c-format msgid "%s is not running" -msgstr "" +msgstr "%s es pas en execucion" #: app/flatpak-builtins-kill.c:82 msgid "INSTANCE - Stop a running application" @@ -1975,51 +1991,51 @@ msgstr "" msgid "Arch to show" msgstr "" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Nom" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Afichar lo nom" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Descripcion" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Afichar la descripcion" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "ID de l'aplicacion" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Afichar l’ID de l’aplicacion" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Afichar la version" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Environament d’execucion" @@ -2027,7 +2043,7 @@ msgstr "Environament d’execucion" msgid "Show the used runtime" msgstr "" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "" @@ -2039,7 +2055,7 @@ msgstr "Afichar l’installacion" msgid "Active commit" msgstr "Commit actiu" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "" @@ -2051,35 +2067,35 @@ msgstr "Darrièr commit" msgid "Show the latest commit" msgstr "" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Talha installada" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Opcions" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Afichar las opcions" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, fuzzy, c-format msgid "Unable to load details of %s: %s" msgstr "Unable to load metadata from remote %s: %s" -#: app/flatpak-builtins-list.c:189 -#, c-format +#: app/flatpak-builtins-list.c:188 +#, fuzzy, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Unable to load metadata from remote %s: %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr "" @@ -2091,7 +2107,7 @@ msgstr "" msgid "APP BRANCH - Make branch of application current" msgstr "" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "" @@ -2114,10 +2130,12 @@ msgid "" msgstr "" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "" @@ -2133,26 +2151,26 @@ msgstr "" msgid "[APP] - Override settings [for application]" msgstr "" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Tablèu" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Objècte" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Donadas" @@ -2176,7 +2194,6 @@ msgstr "" #: app/flatpak-builtins-permission-reset.c:146 #: app/flatpak-builtins-permission-show.c:121 -#, fuzzy msgid "Wrong number of arguments" msgstr "Nombre d'arguments incorrècte" @@ -2210,10 +2227,12 @@ msgid "[PATTERN…] - disable automatic removal of runtimes matching patterns" msgstr "" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "" @@ -2289,124 +2308,124 @@ msgstr "" msgid " - Enumerate running sandboxes" msgstr "" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" -msgstr "" +msgstr "PRIORITAT" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "" @@ -2433,59 +2452,59 @@ msgstr "" msgid "Can't remove remote '%s' with installed refs" msgstr "" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" -msgstr "" +msgstr "Mostrar lo parent" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Telecargar :" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" -msgstr "" +msgstr "Istoric :" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr "" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" -msgstr "" +msgstr " Subjècte :" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" -msgstr "" +msgstr " Data :" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "" @@ -2500,21 +2519,21 @@ msgstr "" #: app/flatpak-builtins-remote-list.c:50 msgid "Title" -msgstr "" +msgstr "Títol" #: app/flatpak-builtins-remote-list.c:50 msgid "Show the title" -msgstr "" +msgstr "Mostrar lo títol" #: app/flatpak-builtins-remote-list.c:51 msgid "Show the URL" -msgstr "" +msgstr "Mostrar l’URL" #: app/flatpak-builtins-remote-list.c:52 msgid "Show the collection ID" -msgstr "" +msgstr "Mostrar l’ID de la colleccion" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "" @@ -2536,7 +2555,7 @@ msgstr "Prioritat" #: app/flatpak-builtins-remote-list.c:55 msgid "Show the priority" -msgstr "" +msgstr "Mostrar la prioritat" #: app/flatpak-builtins-remote-list.c:57 msgid "Comment" @@ -2544,11 +2563,11 @@ msgstr "Comentari" #: app/flatpak-builtins-remote-list.c:57 msgid "Show comment" -msgstr "" +msgstr "Mostrar lo comentari" #: app/flatpak-builtins-remote-list.c:58 msgid "Show description" -msgstr "" +msgstr "Mostrar la descripcion" #: app/flatpak-builtins-remote-list.c:59 msgid "Homepage" @@ -2556,11 +2575,11 @@ msgstr "Pagina d’acuèlh" #: app/flatpak-builtins-remote-list.c:59 msgid "Show homepage" -msgstr "" +msgstr "Mostrar la pagina d'acuèlh" #: app/flatpak-builtins-remote-list.c:60 msgid "Icon" -msgstr "" +msgstr "Icòna" #: app/flatpak-builtins-remote-list.c:60 msgid "Show icon" @@ -2570,45 +2589,45 @@ msgstr "Afichar l'icòna" msgid " - List remote repositories" msgstr "" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Talha del telecargament" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" -msgstr "" +msgstr "Mostrar la talha de telecargament" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr "" #: app/flatpak-builtins-remote-modify.c:66 msgid "Enable GPG verification" -msgstr "" +msgstr "Activar la verificacion GPG" #: app/flatpak-builtins-remote-modify.c:67 msgid "Mark the remote as enumerate" @@ -2620,7 +2639,7 @@ msgstr "" #: app/flatpak-builtins-remote-modify.c:69 msgid "Set a new url" -msgstr "" +msgstr "Definir una URL novèla" #: app/flatpak-builtins-remote-modify.c:70 msgid "Set a new subset to use" @@ -2698,9 +2717,9 @@ msgid "Can't load object %s: %s\n" msgstr "" #: app/flatpak-builtins-repair.c:228 -#, fuzzy, c-format +#, c-format msgid "Commit invalid %s: %s\n" -msgstr "Branca invalida : %s %s" +msgstr "" #: app/flatpak-builtins-repair.c:231 #, c-format @@ -2731,224 +2750,231 @@ msgstr "" msgid "- Repair a flatpak installation" msgstr "" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "" -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "" -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "" -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "true" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "false" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "" -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" -msgstr "" +msgstr "Títol : %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" -msgstr "" +msgstr "Comentari : %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Descripcion : %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" -msgstr "" +msgstr "Pagina d'acuèlh : %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" -msgstr "" +msgstr "Icòna : %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Installat" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Telecargar" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "" @@ -3040,11 +3066,11 @@ msgstr "" msgid "Use PATH instead of the runtime's /usr" msgstr "" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "" @@ -3061,15 +3087,15 @@ msgstr "Distants" msgid "Show the remotes" msgstr "" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Cap de correspondéncia pas trobada" @@ -3091,7 +3117,7 @@ msgstr "" #: app/flatpak-builtins-uninstall.c:60 msgid "Uninstall all" -msgstr "" +msgstr "Tot desinstallar" #: app/flatpak-builtins-uninstall.c:61 msgid "Uninstall unused" @@ -3117,9 +3143,8 @@ msgid "Info: applications using the runtime %s%s%s branch %s%s%s:\n" msgstr "" #: app/flatpak-builtins-uninstall.c:238 -#, fuzzy msgid "Really remove?" -msgstr "Distant" +msgstr "Suprimir vertadièrament ?" #: app/flatpak-builtins-uninstall.c:255 msgid "[REF…] - Uninstall applications or runtimes" @@ -3146,6 +3171,7 @@ msgid "" msgstr "" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "" @@ -3170,6 +3196,7 @@ msgid "Warning: %s is not installed\n" msgstr "" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "" @@ -3210,6 +3237,7 @@ msgid "With --commit, only one REF may be specified" msgstr "" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Recèrca de novèlas mesas a jorn…\n" @@ -3219,174 +3247,168 @@ msgid "Unable to update %s: %s\n" msgstr "" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Pas res a far.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Quin volètz utilizar (0 per abandonar) ?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" "Hint: Use flatpak remote-add to add a remote" msgstr "" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" "Use this ref?" msgstr "" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" +msgid "Remotes found with refs similar to ‘%s’:" msgstr "" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Error pendent la mesa a jorn" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "" #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "" -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" -msgstr "" +msgstr "Colomnas disponiblas :\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" -msgstr "" +msgstr "Mostrar totas las colomnas" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" -msgstr "" +msgstr "Afichar las colomnas disponiblas" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Lo volètz vertadièrament installar ?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3395,7 +3417,7 @@ msgid "" msgstr "" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3403,128 +3425,126 @@ msgid "" "Configure this as new remote '%s'" msgstr "" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Installacion…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Installacion %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Mesa a jorn…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Mesa a jorn %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Desinstallacion…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Desinstallacion %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "" -#: app/flatpak-cli-transaction.c:512 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:516 +#, c-format msgid "Warning: %s%s%s already installed" -msgstr "%s ja installat" +msgstr "Avertiment : %s%s%s ja installat" -#: app/flatpak-cli-transaction.c:515 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:519 +#, c-format msgid "Error: %s%s%s already installed" -msgstr "%s ja installat" +msgstr "Error : %s%s%s ja installat" -#: app/flatpak-cli-transaction.c:521 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:525 +#, c-format msgid "Warning: %s%s%s not installed" -msgstr "%s es pas installat" +msgstr "Avertiment : %s%s%s es pas installat" -#: app/flatpak-cli-transaction.c:524 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:528 +#, c-format msgid "Error: %s%s%s not installed" -msgstr "%s es pas installat" +msgstr "Error : %s%s%s es pas installat" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "" -#: app/flatpak-cli-transaction.c:539 -#, fuzzy +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" -msgstr "Memòria insufisenta per acabar l'operacion" +msgstr "Avertiment : pas pro d’espaci disc per acabar aquesta operacion" -#: app/flatpak-cli-transaction.c:541 -#, fuzzy +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" -msgstr "Memòria insufisenta per acabar l'operacion" +msgstr "Error : pas pro d’espaci disc per acabar aquesta operacion" -#: app/flatpak-cli-transaction.c:546 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:550 +#, c-format msgid "Warning: %s" -msgstr "Avertiment : " +msgstr "Avertiment : %s" -#: app/flatpak-cli-transaction.c:548 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:552 +#, c-format msgid "Error: %s" -msgstr "Error :" +msgstr "Error : %s" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, c-format msgid "Failed to install %s%s%s: " msgstr "" -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, c-format msgid "Failed to update %s%s%s: " msgstr "" -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, c-format msgid "Failed to install bundle %s%s%s: " msgstr "" -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, c-format msgid "Failed to uninstall %s%s%s: " msgstr "" -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Dobrir lo navegador ?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Senhal" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, c-format msgid "" "\n" @@ -3532,7 +3552,7 @@ msgid "" "%s%s%s branch %s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, c-format msgid "" "\n" @@ -3540,7 +3560,7 @@ msgid "" "%s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, c-format msgid "" "\n" @@ -3549,112 +3569,110 @@ msgid "" msgstr "" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:947 +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" msgstr "" -#: app/flatpak-cli-transaction.c:949 +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" msgstr "" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" -msgstr "" +msgstr "Remplaçar ?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "" -#: app/flatpak-cli-transaction.c:1009 +#: app/flatpak-cli-transaction.c:1265 #, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "" - -#: app/flatpak-cli-transaction.c:1222 -#, fuzzy, c-format msgid "New %s%s%s permissions:" -msgstr "Definir las autorizacions" +msgstr "Novèlas permissions %s%s%s :" -#: app/flatpak-cli-transaction.c:1224 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:1267 +#, c-format msgid "%s%s%s permissions:" -msgstr "Listar las autorizacions" +msgstr "permissions %s%s%s :" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Avertiment : " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "parcial" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "" "Contunhar amb aquelas modificacions de l’installacion de l’utilizaire ?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Modificacions realizadas." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Desinstallacion efectuada." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Installacion acabada." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Mesas a jorn terminadas." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "" @@ -3693,11 +3711,11 @@ msgstr "" #: app/flatpak-main.c:88 msgid "Show history" -msgstr "" +msgstr "Mostrar l’istoric" #: app/flatpak-main.c:89 msgid "Configure flatpak" -msgstr "" +msgstr "Configurar flatpak" #: app/flatpak-main.c:90 msgid "Repair flatpak installation" @@ -3727,7 +3745,7 @@ msgstr "" #: app/flatpak-main.c:99 msgid "Run an application" -msgstr "" +msgstr "Executar una aplicacion" #: app/flatpak-main.c:100 msgid "Override permissions for an application" @@ -3947,33 +3965,33 @@ msgid "" "not appear on your desktop until the session is restarted." msgstr "" -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "Consultar « %s --help »" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "« %s » es pas una comanda flatpak. Voliatz dire « %s%s » ?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "« %s » es pas una comanda flatpak" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Cap de comanda es pas estada precisada" @@ -4036,16 +4054,16 @@ msgstr "" msgid "Error: Failed to uninstall %s: %s\n" msgstr "" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s ja installat" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s es pas installat" @@ -4074,238 +4092,267 @@ msgstr "" msgid "Failed to rebase %s to %s: %s\n" msgstr "" -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" "etc, home, xdg-*[/…], ~/dir, /dir" msgstr "" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "PARTEJAR" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "PERIFERIC" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" -msgstr "" +msgstr "FONCTIONALITAT" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" -msgstr "" +msgstr "VAR=VALOR" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "VAR" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +msgid "Allow app to own name on the a11y bus" +msgstr "" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4314,660 +4361,686 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 -#, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " -msgstr "" +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 +#, fuzzy, c-format +msgid "No entry for %s in remote %s summary flatpak cache" +msgstr "No flatpak cache in remote '%s' summary" -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "" -#: common/flatpak-dir.c:921 -#, fuzzy, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "No flatpak cache in remote '%s' summary" - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, fuzzy, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "No flatpak cache in remote '%s' summary" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" -msgstr "" +msgstr "Installacion per l’utilizaire" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "" -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "" -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "" -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Pas pro de memòria" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, fuzzy, c-format msgid "Invalid Exec argument %s" msgstr "Invalid group: %d" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "" -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "" -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "" -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "" -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "" -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "" -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "" -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "" -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "" -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "" -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "" -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "" -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "" -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, fuzzy, c-format msgid "No cached summary for remote '%s'" msgstr "No repo metadata cached for remote '%s'" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " "URL passed to remote-add was valid." msgstr "" -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "" -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Cap de correspondéncia per %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" -msgstr "" +msgstr "%s/%s/%s pas installat" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" -msgstr "" +msgstr "Impossible de trobar l'installacion %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, fuzzy, c-format msgid "Unable to open path \"%s\": %s" msgstr "Unable to load metadata from remote %s: %s" -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, fuzzy, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "Unable to load metadata from remote %s: %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "Una cadena voida es pas un nombre" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "« %s » es pas un nombre pas signat" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "Lo nombre « %s » es fòra limits [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Error d'autorizacion" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, c-format msgid "Unable to lookup key ID %s: %d" msgstr "" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -4988,381 +5061,434 @@ msgstr "" msgid "Downloading files: %d/%d %s" msgstr "" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 #, fuzzy msgid "Invalid remote name" msgstr "Invalid group: %d" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, fuzzy, c-format msgid "Invalid arch: %.*s: %s" msgstr "Invalid group: %d" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" -msgstr "" +msgstr "Nom invalid %s : %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "Branca invalida : %s %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, fuzzy, c-format msgid "Invalid branch: %s: %s" msgstr "Invalid group: %d" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, fuzzy, c-format msgid "Wrong number of components in partial ref %s" msgstr "Nombre d'arguments incorrècte" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" -msgstr "" +msgstr " platafòrma de desvolopament" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" -msgstr "" +msgstr " platafòrmas" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr " aplicacion de basa" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr "" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" -msgstr "" +msgstr " còdi font" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " traduccions" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr "" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" -msgstr "" +msgstr "Cap d’url pas especificada" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Cap de fonts de donadas suplementàrias" + +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" msgstr "" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" msgstr "" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Clau gpg invalida" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" msgstr "" -#: common/flatpak-run.c:2207 +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, c-format msgid "Failed to block syscall %d: %s" msgstr "" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, c-format msgid "Failed to export bpf: %s" msgstr "" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s es ja installat" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " "installed: %s" msgstr "" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 #, fuzzy msgid "any remote" msgstr "Distant" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "" -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." msgstr "" -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Abandonat per l’utilizaire" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "" @@ -5370,20 +5496,20 @@ msgstr "" #: common/flatpak-uri.c:118 #, no-c-format msgid "Invalid %-encoding in URI" -msgstr "" +msgstr "%-encoding invalid dins l'URI" #: common/flatpak-uri.c:135 msgid "Illegal character in URI" -msgstr "" +msgstr "Caractèr defendut dins l’URI" #: common/flatpak-uri.c:169 msgid "Non-UTF-8 characters in URI" -msgstr "" +msgstr "Caractèrs non-UTF-8 dins l'URI" #: common/flatpak-uri.c:275 #, c-format msgid "Invalid IPv6 address ‘%.*s’ in URI" -msgstr "" +msgstr "Adreça IPv6 invalida « %.*s » dins l’URI" #: common/flatpak-uri.c:330 #, c-format @@ -5398,146 +5524,122 @@ msgstr "" #: common/flatpak-uri.c:374 common/flatpak-uri.c:386 #, c-format msgid "Could not parse port ‘%.*s’ in URI" -msgstr "" +msgstr "Impossible d’analisar lo pòrt « %.*s » dins l’URI" #: common/flatpak-uri.c:393 #, c-format msgid "Port ‘%.*s’ in URI is out of range" -msgstr "" +msgstr "Lo pòrt « %.*s » dins l’URI es fòra plaja" #: common/flatpak-uri.c:910 msgid "URI is not absolute, and no base URI was provided" -msgstr "" - -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "" +msgstr "L'URI es pas absoluda, e cap d'URI de basa es pas estada provesida" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "" - -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "" - -#: common/flatpak-utils.c:927 -#, c-format -msgid "Invalid glob character '%c'" -msgstr "" - -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:83 #, c-format -msgid "Missing glob on line %d" +msgid "USB device query 'all' must not have data" msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:102 #, c-format -msgid "Trailing text on line %d" +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" msgstr "" -#: common/flatpak-utils.c:989 -#, c-format -msgid "on line %d" -msgstr "a la linha %d" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "Nom invalid %s : %s" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:125 #, c-format -msgid "Unexpected word '%s' on line %d" +msgid "Invalid USB subclass" msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Invalid %s: Missing group ‘%s’" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Invalid %s: Missing key ‘%s’" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" msgstr "" -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Clau gpg invalida" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Cap de fonts de donadas suplementàrias" - -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:205 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" +msgid "USB device queries must be in the form TYPE:DATA" msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:225 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" +msgid "Unknown USB query rule %s" msgstr "" -#: common/flatpak-utils.c:5684 +#: common/flatpak-usb.c:248 #, c-format -msgid "%s is end-of-life, ignoring for appstream" +msgid "Empty USB query" msgstr "" -#: common/flatpak-utils.c:5719 +#: common/flatpak-usb.c:274 #, c-format -msgid "No appstream data for %s: %s\n" +msgid "Multiple USB query rules of the same type is not supported" msgstr "" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" +#: common/flatpak-usb.c:283 +#, c-format +msgid "'all' must not contain extra query rules" msgstr "" -#: common/flatpak-utils.c:6791 +#: common/flatpak-usb.c:291 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgid "USB queries with 'dev' must also specify vendors" msgstr "" -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" msgstr "" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" +#: common/flatpak-utils.c:693 +msgid "Empty glob" msgstr "" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 -#, c-format -msgid "Wrong layer checksum, expected %s, was %s" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" msgstr "" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:733 #, c-format -msgid "No ref specified for OCI image %s" +msgid "Invalid glob character '%c'" msgstr "" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:787 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgid "Missing glob on line %d" msgstr "" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:791 #, c-format -msgid "Invalid require-flatpak argument %s" +msgid "Trailing text on line %d" msgstr "" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:795 #, c-format -msgid "%s needs a later flatpak version (%s)" -msgstr "" +msgid "on line %d" +msgstr "a la linha %d" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" +#: common/flatpak-utils.c:817 +#, c-format +msgid "Unexpected word '%s' on line %d" msgstr "" -#: common/flatpak-utils.c:8401 +#: common/flatpak-utils.c:1980 #, c-format -msgid "“%s” is not an unsigned number" +msgid "Invalid require-flatpak argument %s" msgstr "" -#: common/flatpak-utils.c:8411 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format -msgid "Number “%s” is out of bounds [%s, %s]" +msgid "%s needs a later flatpak version (%s)" msgstr "" #: oci-authenticator/flatpak-oci-authenticator.c:291 @@ -5552,40 +5654,44 @@ msgstr "" msgid "Invalid token" msgstr "Geton invalid" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Refusar" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Metre a jorn" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "Metre a jorn %s ?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "" -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "" @@ -5742,7 +5848,7 @@ msgstr "" #. updates. #: system-helper/org.freedesktop.Flatpak.policy.in:228 msgid "Update metadata" -msgstr "" +msgstr "Actualizar las metadonadas" #: system-helper/org.freedesktop.Flatpak.policy.in:229 msgid "Authentication is required to update metadata" @@ -5805,6 +5911,10 @@ msgid "" "parental controls policy" msgstr "" +#, fuzzy, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "No flatpak cache in remote '%s' summary" + #~ msgid "install" #~ msgstr "installar" @@ -5821,7 +5931,6 @@ msgstr "" #~ msgid "runtime" #~ msgstr "Environament d’execucion" -#, c-format #~ msgid "Replace it with %s?" #~ msgstr "Lo remplaçar per « %s » ?" diff --git a/po/pl.gmo b/po/pl.gmo deleted file mode 100644 index 09e043e4b47ade6da30988aaa32720f2347f9cc8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 120611 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 diff --git a/po/pl.po b/po/pl.po index 0948ed4..c7a7c0b 100644 --- a/po/pl.po +++ b/po/pl.po @@ -1,15 +1,15 @@ # Polish translation for flatpak. -# Copyright © 2016-2023 the flatpak authors. +# Copyright © 2016-2024 the flatpak authors. # This file is distributed under the same license as the flatpak package. -# Piotr Drąg , 2016-2023. -# Aviary.pl , 2016-2023. +# Piotr Drąg , 2016-2024. +# Aviary.pl , 2016-2024. # msgid "" msgstr "" "Project-Id-Version: flatpak\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" -"PO-Revision-Date: 2023-03-04 13:49+0100\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2024-09-10 18:27+0200\n" "Last-Translator: Piotr Drąg \n" "Language-Team: Polish \n" "Language: pl\n" @@ -19,104 +19,104 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Eksportuje środowisko wykonawcze zamiast programu" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Architektura pakietu" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARCHITEKTURA" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Adres URL do repozytorium" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Adres URL do pliku repozytorium Flatpak środowiska wykonawczego" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Dodaje klucz GPG z PLIKU (- dla standardowego wejścia)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "PLIK" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "Identyfikator klucza GPG do podpisania obrazu OCI" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "IDENTYFIKATOR-KLUCZA" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "IDENTYFIKATOR-KLUCZA" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "Katalog domowy GPG do wyszukiwania baz kluczy" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "KATALOG-DOMOWY" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "Zatwierdzenie OSTree, z którego utworzyć pakiet delty" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "ZATWIERDZENIE" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Eksportuje obraz OCI zamiast pakietu Flatpak" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -124,58 +124,58 @@ msgstr "" "POŁOŻENIE NAZWA-PLIKU NAZWA [GAŁĄŹ] — tworzy pakiet w jednym pliku " "z lokalnego repozytorium" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "Należy podać POŁOŻENIE, NAZWĘ-PLIKU i NAZWĘ" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Za dużo parametrów" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "„%s” nie jest prawidłowym repozytorium" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "„%s” nie jest prawidłowym repozytorium: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "„%s” nie jest prawidłową nazwą: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "„%s” nie jest prawidłową nazwą gałęzi: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -214,7 +214,7 @@ msgstr "" "Gdzie szukać niestandardowego katalogu środowiska programistycznego " "(domyślnie „usr”)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Używa alternatywnego pliku dla metadanych" @@ -234,106 +234,107 @@ msgstr "Zapisywanie wywołań magistrali sesji w dzienniku" msgid "Log system bus calls" msgstr "Zapisywanie wywołań magistrali systemu w dzienniku" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "KATALOG [POLECENIE [PARAMETR…]] — buduje w katalogu" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "Należy podać KATALOG" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "" "Nie zainicjowano katalogu budowania %s, należy użyć „flatpak build-init”" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "" "nieprawidłowe metadane, nie jest programem lub środowiskiem wykonawczym" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "Brak punktu rozszerzeń pasującego do %s w %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Brak „=” w opcji montowania dowiązania „%s”" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Nie można uruchomić programu" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Źródłowy katalog repozytorium" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "REPOZYTORIUM-ŹRÓDŁOWE" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Źródłowe odniesienie repozytorium" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "ODNIESIENIE-ŹRÓDŁOWE" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Jednowierszowy temat" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "TEMAT" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Pełny opis" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "TREŚĆ" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Aktualizuje gałąź AppStream" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Aktualizuje gałąź AppStream" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Bez aktualizowania podsumowania" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "Identyfikator klucza GPG do podpisania zatwierdzenia" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "Oznacza wersję jako niewspieraną" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "POWÓD" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -341,378 +342,383 @@ msgstr "" "Oznacza odniesienia pasujące do przedrostka POPRZEDNIEGO-IDENTYFIKATORA jako " "niewspierane, do zastąpienia podanym NOWYM-IDENTYFIKATOREM" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "POPRZEDNI-IDENTYFIKATOR=NOWY-IDENTYFIKATOR" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "Ustawia typ tokena wymagany do zainstalowania tego zatwierdzenia" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "WARTOŚĆ" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "Zastępuje czas zatwierdzenia („NOW” oznacza obecny czas)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "CZAS" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "Bez tworzenia indeksu podsumowania" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" "REPOZYTORIUM-DOCELOWE [ODNIESIENIE-DOCELOWE…] — tworzy nowe zatwierdzenie na " "podstawie istniejących zatwierdzeń" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "Należy podać REPOZYTORIUM-DOCELOWE" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "Jeśli nie podano --src-repo, to należy podać dokładnie jedno odniesienie " "docelowe" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" "Jeśli podano --src-ref, to należy podać dokładnie jedno odniesienie docelowe" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "Należy podać --src-repo lub --src-ref" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" "Nieprawidłowy format parametru użycia --end-of-life-rebase=POPRZEDNI-" "IDENTYFIKATOR=NOWY-IDENTYFIKATOR" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "Nieprawidłowa nazwa %s w --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "Nie można przetworzyć „%s”" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "Nie można zatwierdzić z częściowego zatwierdzenia źródłowego" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: brak zmian\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Architektura eksportu (musi być zgodna z komputerem)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Zatwierdza środowisko wykonawcze (/usr), nie /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Używa alternatywnego katalogu dla plików" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "PODKATALOG" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Wykluczone pliki" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "WZÓR" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Wykluczone pliki do dołączenia" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "" "Oznacza wersję jako niewspieraną, do zastąpienia podanym IDENTYFIKATOREM" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "Identyfikator" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Zastępuje czas zatwierdzenia" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "Identyfikator kolekcji" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "" "OSTRZEŻENIE: błąd podczas wykonywania polecenia desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "" "OSTRZEŻENIE: błąd podczas odczytywania z polecenia desktop-file-validate: " "%s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "" "OSTRZEŻENIE: sprawdzenie poprawności pliku desktop %s się nie powiodło: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "OSTRZEŻENIE: nie można odnaleźć klucza Exec w %s: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "" "OSTRZEŻENIE: nie odnaleziono pliku binarnego dla wiersza Exec w %s: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "OSTRZEŻENIE: ikona nie pasuje do identyfikatora programu w %s: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" "OSTRZEŻENIE: ikona jest wymieniona w pliku desktop, ale nie jest " "eksportowana: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "" "Nieprawidłowy typ adresu URI %s, obsługiwane są tylko adresy HTTP/HTTPS" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "Nie można odnaleźć podstawowej nazwy w %s, należy podać nazwę" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "Ukośniki są niedozwolone w nazwach dodatkowych danych" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Nieprawidłowy format sumy kontrolnej SHA256: „%s”" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Dodatkowe dane o zerowym rozmiarze są nieobsługiwane" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "POŁOŻENIE KATALOG [GAŁĄŹ] — tworzy repozytorium z katalogu budowania" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "Należy podać POŁOŻENIE i KATALOG" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "„%s” nie jest prawidłowym identyfikatorem kolekcji: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Nie podano nazwy w metadanych" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Zatwierdzenie: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Razem metadanych: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Zapisane metadane: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Razem treść: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Zapisana treść: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Zapisane bajty treści:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Ustawiane polecenie" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "POLECENIE" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Wymagana wersja Flatpak" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "WIĘKSZA.MNIEJSZA.MIKRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Bez przetwarzania eksportów" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Informacje o dodatkowych danych" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Dodaje informacje o punkcie rozszerzeń" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NAZWA=ZMIENNA[=WARTOŚĆ]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Usuwa informacje o punkcie rozszerzeń" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NAZWA" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Ustawia priorytet rozszerzenia (tylko dla rozszerzeń)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "WARTOŚĆ" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Zmienia środowisko programistyczne używane dla programu" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "ŚRODOWISKO-PROGRAMISTYCZNE" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Zatwierdza środowisko wykonawcze używane dla programu" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "ŚRODOWISKO-WYKONAWCZE" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Ustawia opcję ogólnych metadanych" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GRUPA=KLUCZ[=WARTOŚĆ]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Bez dziedziczenia uprawnień ze środowiska wykonawczego" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "%s nie zostanie wyeksportowane, błędne rozszerzenie\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "%s nie zostanie wyeksportowane, niedozwolona nazwa pliku eksportu\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "Eksportowanie %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Odnaleziono więcej niż jeden plik wykonywalny\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "Używanie %s jako polecenia\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Nie odnaleziono żadnych plików wykonywalnych\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Nieprawidłowy parametr --require-version: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "Za mało elementów w parametrze %s opcji --extra-data" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -721,7 +727,7 @@ msgstr "" "Za mało elementów w parametrze %s opcji --metadata, musi być w formacie " "GRUPA=KLUCZ[=WARTOŚĆ]]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -731,64 +737,65 @@ msgstr "" "Za mało elementów w parametrze %s opcji --extension, musi być w formacie " "NAZWA=ZMIENNA[=WARTOŚĆ]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "Nieprawidłowa nazwa rozszerzenia %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "KATALOG — finalizuje katalog budowania" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Nie zainicjowano katalogu budowania %s" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Już sfinalizowano katalog budowania %s" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Proszę przejrzeć wyeksportowane pliki i metadane\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Zastępuje odniesienie dla zaimportowanego pakietu" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "ODNIESIENIE" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Importuje obraz OCI zamiast pakietu Flatpak" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Nie odnaleziono odniesienia „%s” w rejestrze" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "" "Wiele obrazów w rejestrze, należy podać odniesienie za pomocą opcji --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "Importowanie %s (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "" "POŁOŻENIE NAZWA-PLIKU — importuje pakiet plików do lokalnego repozytorium" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "Należy podać POŁOŻENIE i NAZWĘ-PLIKU" @@ -905,90 +912,90 @@ msgstr "„%s” nie jest prawidłową nazwą programu: %s" msgid "Build directory %s already initialized" msgstr "Już zainicjowano katalog budowania %s" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Instalowana architektura" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Wyszukuje środowisko wykonawcze o podanej nazwie" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "" "POŁOŻENIE [IDENTYFIKATOR [GAŁĄŹ]] — podpisuje program lub środowisko " "wykonawcze" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "Należy podać POŁOŻENIE" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Nie podano identyfikatorów kluczy GPG" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Przekierowuje to repozytorium do nowego adresu URL" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Czytelna nazwa używana dla tego repozytorium" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "TYTUŁ" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "Jednowierszowy komentarz dla tego repozytorium" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "KOMENTARZ" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "Akapit opisu dla tego repozytorium" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "OPIS" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "Adres URL strony dla tego repozytorium" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "Adres URL ikony dla tego repozytorium" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Domyślna gałąź używana dla tego repozytorium" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "GAŁĄŹ" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "IDENTYFIKATOR-KOLEKCJI" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" @@ -996,126 +1003,129 @@ msgstr "" "Trwale wdraża identyfikator kolekcji do konfiguracji repozytoriów klienta, " "tylko do obsługi wczytywania bocznego" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" "Trwale wdraża identyfikator kolekcji do konfiguracji repozytoriów klienta" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Nazwa programu uwierzytelniającego dla tego repozytorium" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "" "Automatycznie instaluje program uwierzytelniający dla tego repozytorium" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "" "Bez automatycznego instalowania programu uwierzytelniającego dla tego " "repozytorium" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Opcja programu uwierzytelniającego" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "KLUCZ=WARTOŚĆ" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Importuje nowy domyślny klucz publiczny GPG z PLIKU" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "Identyfikator klucza GPG do podpisania podsumowania" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Tworzy pliki delty" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Bez aktualizowania gałęzi AppStream" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" "Maksymalna liczba równoległych zadań podczas tworzenia delt (domyślnie: " "LICZBA-PROCESORÓW)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "LICZBA-ZADAŃ" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "Bez tworzenia delt pasujących odniesień" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Czyści nieużywane obiekty" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "Czyści, ale nic nie usuwa" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" "Przechodzi tylko przez podaną GŁĘBIĘ elementów nadrzędnych każdego " "zatwierdzenia (domyślnie: -1=nieskończoność)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "GŁĘBIA" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Tworzenie delty: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Tworzenie delty: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Utworzenie delty %s się nie powiodło (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Utworzenie delty %s się nie powiodło (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "POŁOŻENIE — aktualizuje metadane repozytorium" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Aktualizowanie danych AppStream\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Aktualizowanie podsumowania\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Razem obiektów: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Brak nieosiągalnych obiektów\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "Usunięto %u obiektów, uwolniono %s\n" @@ -1187,25 +1197,25 @@ msgstr "Można użyć tylko jednego z --list, --get, --set lub --unset" msgid "Must specify one of --list, --get, --set or --unset" msgstr "Należy podać jedną z opcji --list, --get, --set lub --unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Wyszukuje program o podanej nazwie" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Kopiowana architektura" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "CEL" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "Zezwala na częściowe zatwierdzenia w utworzonym repozytorium" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " @@ -1214,14 +1224,14 @@ msgstr "" "Ostrzeżenie: powiązane odniesienie „%s” jest częściowo zainstalowane. Użycie " "opcji --allow-partial wyciszy ten komunikat.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" "Ostrzeżenie: pomijanie powiązanego odniesienia „%s”, ponieważ nie jest " "zainstalowane.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1230,14 +1240,14 @@ msgstr "" "Ostrzeżenie: pomijanie powiązanego odniesienia „%s”, ponieważ jego " "repozytorium „%s” nie ma ustawionego identyfikatora kolekcji.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" "Ostrzeżenie: pomijanie powiązanego odniesienia „%s”, ponieważ jest " "dodatkowymi danymi.\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1246,37 +1256,37 @@ msgstr "" "Repozytorium „%s” nie ma ustawionego identyfikatora kolekcji, który jest " "wymagany do rozpowszechniania „%s” typu P2P." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" "Ostrzeżenie: pomijanie odniesienia „%s” (środowisko wykonawcze „%s”), " "ponieważ jest dodatkowymi danymi.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" "ŚCIEŻKA-DO-PUNKTU-MONTOWANIA [ODNIESIENIE…] — kopiuje programy lub " "środowiska wykonawcze na nośniki wymienne" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "Należy podać ŚCIEŻKĘ-DO-PUNKTU-MONTOWANIA i ODNIESIENIE" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" "Odnaleziono odniesienie „%s” w wielu instalacjach: %s. Należy podać jedno." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" "Wszystkie odniesienia muszą być w tej samej instalacji (odnaleziono w %s " "i %s)." -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " @@ -1285,20 +1295,20 @@ msgstr "" "Ostrzeżenie: odniesienie „%s” jest częściowo zainstalowane. Użycie opcji --" "allow-partial wyciszy ten komunikat.\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" "Zainstalowane odniesienie „%s” jest dodatkowymi danymi i nie może być " "rozprowadzane w trybie offline" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" "Ostrzeżenie: nie można zaktualizować metadanych dla repozytorium „%s”: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1306,7 +1316,7 @@ msgstr "" "architektury „%s”: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1315,7 +1325,7 @@ msgstr "" "architektury „%s”: %s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1390,19 +1400,20 @@ msgstr "PLIK — pobiera informacje o wyeksportowanym pliku" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Nie wyeksportowano\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Które informacje wyświetlać" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "POLE,…" @@ -1421,7 +1432,7 @@ msgid "Show the document path" msgstr "Wyświetla ścieżkę do dokumentu" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Pochodzenie" @@ -1435,7 +1446,7 @@ msgid "Show applications with permission" msgstr "Wyświetla programy z uprawnieniem" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Uprawnienia" @@ -1565,12 +1576,12 @@ msgid "Show the kind of change" msgstr "Wyświetla rodzaj zmiany" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Odniesienie" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Wyświetla odniesienie" @@ -1579,24 +1590,24 @@ msgid "Show the application/runtime ID" msgstr "Wyświetla identyfikator programu/środowiska wykonawczego" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Architektura" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Wyświetla architekturę" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Gałąź" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Wyświetla gałąź" @@ -1608,7 +1619,7 @@ msgstr "Instalacja" msgid "Show the affected installation" msgstr "Wyświetla instalację, której to dotyczy" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Repozytorium" @@ -1617,7 +1628,7 @@ msgid "Show the remote" msgstr "Wyświetla repozytorium" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Zatwierdzenie" @@ -1637,7 +1648,7 @@ msgstr "Wyświetla poprzednie zatwierdzenie" msgid "Show the remote URL" msgstr "Wyświetla adres URL repozytorium" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Użytkownik" @@ -1654,7 +1665,7 @@ msgid "Show the tool that was used" msgstr "Wyświetla użyte narzędzie" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Wersja" @@ -1682,10 +1693,12 @@ msgid " - Show history" msgstr " — Wyświetla historię" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "Przetworzenie opcji --since się nie powiodło" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "Przetworzenie opcji --until się nie powiodło" @@ -1701,11 +1714,11 @@ msgstr "Wyświetla instalacje systemowe" msgid "Show specific system-wide installations" msgstr "Wyświetla podane instalacje systemowe" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Wyświetla odniesienie" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Wyświetla zatwierdzenie" @@ -1717,15 +1730,15 @@ msgstr "Wyświetla pochodzenie" msgid "Show size" msgstr "Wyświetla rozmiar" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Wyświetla metadane" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Wyświetla środowisko wykonawcze" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Wyświetla środowisko programistyczne" @@ -1737,8 +1750,8 @@ msgstr "Wyświetla uprawnienia" msgid "Query file access" msgstr "Odpytuje dostęp do plików" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1758,7 +1771,7 @@ msgstr "" "NAZWA [GAŁĄŹ] — pobiera informacje o zainstalowanym programie lub środowisku " "wykonawczym" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "Należy podać NAZWĘ" @@ -1767,85 +1780,87 @@ msgstr "Należy podać NAZWĘ" msgid "ref not present in origin" msgstr "odniesienia nie ma w pochodzeniu" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Ostrzeżenie: zatwierdzenie nie ma metadanych Flatpak\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "Identyfikator:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Odniesienie:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Architektura:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Gałąź:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Wersja:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Licencja:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Kolekcja:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Instalacja:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Zainstalowano:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Środowisko wykonawcze:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Środowisko programistyczne:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Data:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Temat:" @@ -1858,15 +1873,15 @@ msgid "Latest commit:" msgstr "Najnowsze zatwierdzenie:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Zatwierdzenie:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Element nadrzędny:" @@ -1875,14 +1890,14 @@ msgid "Alt-id:" msgstr "Alternatywny identyfikator:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "Niewspierane:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "Niewspierane-rebase:" @@ -1891,153 +1906,154 @@ msgid "Subdirectories:" msgstr "Podkatalogi:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Rozszerzenie:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Pochodzenie:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Podścieżki:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "niewspierane" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "nieznane" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Bez pobierania, tylko instaluje z lokalnej pamięci podręcznej" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Bez wdrażania, tylko pobiera do lokalnej pamięci podręcznej" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Bez instalowania powiązanych odniesień" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Bez sprawdzania poprawności/instalowania zależności wykonawczych" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "Bez automatycznego przypinania instalacji przez użytkownika" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Bez używania statycznych delt" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" "Dodatkowo instaluje środowisko programistyczne użyte do zbudowania podanych " "odniesień" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" "Dodatkowo instaluje informacje debugowania dla podanych odniesień i ich " "zależności" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Przyjmuje, że POŁOŻENIE to jednoplikowy pakiet .flatpak" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Przyjmuje, że POŁOŻENIE to opis programu .flatpakref" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "" "Sprawdza podpisy pakietów za pomocą klucza GPG z PLIKU (- dla standardowego " "wejścia)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Instaluje tylko tę podścieżkę" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Automatycznie odpowiada tak na wszystkie pytania" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Należy najpierw odinstalować, jeśli jest już zainstalowane" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "Wyświetla minimum informacji i nie zadaje pytań" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Aktualizuje instalację, jeśli jest już zainstalowane" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "Używa tego lokalnego repozytorium do wczytywania bocznego" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Należy podać nazwę pliku pakietu" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Zdalne pakiety nie są obsługiwane" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Należy podać nazwę pliku lub adres URI" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "" "[POŁOŻENIE/REPOZYTORIUM] [ODNIESIENIE…] — instaluje programy lub środowiska " "wykonawcze" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "Należy podać co najmniej jedno ODNIESIENIE" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Wyszukiwanie wyników…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, c-format msgid "No remote refs found for ‘%s’" msgstr "Nie odnaleziono zdalnych odniesień dla „%s”" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Nieprawidłowa gałąź %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Nic nie pasuje do %s w lokalnym repozytorium dla %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Nic nie pasuje do %s w repozytorium %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Pomijanie: %s\n" @@ -2075,52 +2091,52 @@ msgstr "Wyświetla listę zainstalowanych programów" msgid "Arch to show" msgstr "Wyświetlana architektura" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Wyświetla listę wszystkich odniesień (także lokalizacji/debugowania)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "" "Wyświetla listę wszystkich programów używających ŚRODOWISKA-WYKONAWCZEGO" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Nazwa" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Wyświetla nazwę" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Opis" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Wyświetla opis" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "Identyfikator programu" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Wyświetla identyfikator programu" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Wyświetla wersję" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Środowisko wykonawcze" @@ -2128,7 +2144,7 @@ msgstr "Środowisko wykonawcze" msgid "Show the used runtime" msgstr "Wyświetla używane środowisko wykonawcze" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Wyświetla repozytorium pochodzenia" @@ -2140,7 +2156,7 @@ msgstr "Wyświetla instalację" msgid "Active commit" msgstr "Aktywne zatwierdzenie" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Wyświetla aktywne zatwierdzenie" @@ -2152,35 +2168,35 @@ msgstr "Najnowsze zatwierdzenie" msgid "Show the latest commit" msgstr "Wyświetla najnowsze zatwierdzenie" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Rozmiar po instalacji" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Wyświetla rozmiar po instalacji" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Opcje" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Wyświetla opcje" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, c-format msgid "Unable to load details of %s: %s" msgstr "Nie można wczytać szczegółów %s: %s" -#: app/flatpak-builtins-list.c:189 +#: app/flatpak-builtins-list.c:188 #, c-format msgid "Unable to inspect current version of %s: %s" msgstr "Nie można zbadać obecnej wersji %s: %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr "" " — wyświetla listę zainstalowanych programów lub środowisk wykonawczych" @@ -2193,7 +2209,7 @@ msgstr "Architektura ustawiania na bieżącą" msgid "APP BRANCH - Make branch of application current" msgstr "PROGRAM GAŁĄŹ — ustawia gałąź programu jako bieżącą" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "Należy podać PROGRAM" @@ -2217,10 +2233,12 @@ msgstr "" "[WZÓR…] — wyłącza aktualizacje i automatyczną instalację pasujących wzorów" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "Brak zamaskowanych wzorów\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Zamaskowane wzory:\n" @@ -2236,26 +2254,26 @@ msgstr "Wyświetla istniejące zastępniki" msgid "[APP] - Override settings [for application]" msgstr "[PROGRAM] — zastępuje ustawienia [programu]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABLICA] [IDENTYFIKATOR] — wyświetla listę uprawnień" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Tablica" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Obiekt" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "Program" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Dane" @@ -2318,10 +2336,12 @@ msgstr "" "wzorów" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "Brak przypiętych wzorów\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "Przypięte wzory:\n" @@ -2397,124 +2417,124 @@ msgstr "Wyświetla, czy program jest w tle" msgid " - Enumerate running sandboxes" msgstr " — wylicza działające piaskownice" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Nie robi nic, jeśli podane repozytorium istnieje" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "POŁOŻENIE podaje plik konfiguracji, nie położenie repozytorium" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Wyłącza sprawdzanie poprawności GPG" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Oznacza repozytorium jako niewyliczeniowe" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Oznacza repozytorium jako nieużywane dla zależności" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "Ustawia priorytet (domyślnie 1, wyższy numer to wyższy priorytet)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORYTET" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "Nazwany podzbiór używany dla tego repozytorium" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "PODZBIÓR" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Czytelna nazwa tego repozytorium" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "Jednowierszowy komentarz dla tego repozytorium" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "Akapit opisu dla tego repozytorium" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "Adres URL strony dla tego repozytorium" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "Adres URL ikony dla tego repozytorium" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Domyślna gałąź używana dla tego repozytorium" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Importuje klucz GPG z PLIKU (- dla standardowego wejścia)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Ustawia ścieżkę do PLIKU lokalnego filtru" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Wyłącza repozytorium" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Nazwa programu uwierzytelniającego" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Automatycznie instaluje program uwierzytelniający" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "Bez automatycznego instalowania programu uwierzytelniającego" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "Bez podążania za przekierowaniem ustawionym w pliku podsumowania" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "Nie można wczytać adresu URI %s: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Nie można wczytać pliku %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NAZWA POŁOŻENIE — dodaje zdalne repozytorium" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "Sprawdzanie poprawności GPG jest wymagane, jeśli kolekcje są włączone" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "Repozytorium %s już istnieje" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Nieprawidłowa nazwa programu uwierzytelniającego %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "" @@ -2542,61 +2562,61 @@ msgstr "Usunąć je?" msgid "Can't remove remote '%s' with installed refs" msgstr "Nie można usunąć repozytorium „%s” z zainstalowanymi odniesieniami" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "Zatwierdzenie, dla którego wyświetlić informacje" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Wyświetla dziennik" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Wyświetla element nadrzędny" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Używa lokalnych pamięci podręcznych, nawet jeśli są przeterminowane" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "Wyświetla tylko odniesienia dostępne jako wczytywanie boczne" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " REPOZYTORIUM ODNIESIENIE — wyświetla informacje o programie lub środowisku " "wykonawczym w repozytorium" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "Należy podać REPOZYTORIUM i ODNIESIENIE" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Pobieranie:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "Historia:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Zatwierdzenie:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Temat:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Data:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Ostrzeżenie: zatwierdzenie %s nie ma metadanych Flatpak\n" @@ -2625,7 +2645,7 @@ msgstr "Wyświetla adres URL" msgid "Show the collection ID" msgstr "Wyświetla identyfikator kolekcji" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "Podzbiór" @@ -2681,39 +2701,39 @@ msgstr "Wyświetla ikonę" msgid " - List remote repositories" msgstr " — wyświetla listę zdalnych repozytoriów" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Wyświetla architektury i gałęzie" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Wyświetla tylko środowiska wykonawcze" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Wyświetla tylko programy" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Wyświetla tylko z dostępnymi aktualizacjami" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Ogranicza do tej architektury (* dla wszystkich)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Wyświetla środowisko wykonawcze" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Rozmiar do pobrania" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Wyświetla rozmiar do pobrania" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr "" " [REPOZYTORIUM lub URI] — wyświetla dostępne środowiska wykonawcze i programy" @@ -2844,224 +2864,231 @@ msgstr "Błąd podczas ponownej instalacji %s: %s\n" msgid "- Repair a flatpak installation" msgstr "— naprawia instalację Flatpak" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Usuwanie niewdrożonego odniesienia %s…\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Pomijanie niewdrożonego odniesienia %s…\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d/%d] Sprawdzanie poprawności %s…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "Próbne wykonanie: " -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "Usuwanie odniesienia %s z powodu brakujących obiektów\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "Usuwanie odniesienia %s z powodu nieprawidłowych obiektów\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "Usuwanie odniesienia %s z powodu %d\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "Sprawdzanie repozytoriów…\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "Brak repozytorium %s dla odniesienia %s\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "Repozytorium %s dla odniesienia %s jest wyłączone\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "Usuwanie nieużywanych obiektów\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "Usuwanie „.removed”\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "Ponowne instalowanie odniesień\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "Ponowne instalowanie usuniętych odniesień\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "Podczas usuwania AppStream dla %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "Podczas wdrażania AppStream dla %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Tryb repozytorium: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "Zindeksowane podsumowania: %s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "prawda" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "fałsz" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "Podsumowania podrzędne: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "Wersja pamięci podręcznej: %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "Zindeksowane delty: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Tytuł: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Komentarz: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Opis: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Strona domowa: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Ikona: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "Identyfikator kolekcji: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Domyślna gałąź: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "Adres URL przekierowania: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "Identyfikator wdrożenia kolekcji: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Nazwa programu uwierzytelniającego: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "Instalacja programu uwierzytelniającego: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "Suma klucza GPG: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "Gałęzie podsumowań: %zd\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Zainstalowano" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Pobieranie" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "Podzbiory" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "Skrót" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "Długość historii" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Wyświetla ogólne informacje o repozytorium" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Wyświetla listę gałęzi w repozytorium" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Wyświetla metadane gałęzi" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Wyświetla zatwierdzenia dla gałęzi" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "Wyświetla informacje o podzbiorach repozytorium" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "Ogranicza informacje do podzbiorów o tym przedrostku" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "POŁOŻENIE — zarządzanie repozytorium" @@ -3156,11 +3183,11 @@ msgstr "Używa ŚCIEŻKI zamiast /app programu" msgid "Use PATH instead of the runtime's /usr" msgstr "Używa ŚCIEŻKI zamiast /usr środowiska wykonawczego" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "PROGRAM [PARAMETR…] — uruchamia program" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "Nie zainstalowano środowiska wykonawczego/%s/%s/%s" @@ -3177,16 +3204,16 @@ msgstr "Repozytoria" msgid "Show the remotes" msgstr "Wyświetla repozytoria" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "" "TEKST — wyszukuje programy/środowiska wykonawcze repozytorium według tekstu" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "Należy podać TEKST" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Brak wyników" @@ -3268,6 +3295,7 @@ msgstr "" "usunięte; flatpak-pin(1) zawiera więcej informacji:\n" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Nie ma nic nieużywanego do odinstalowania\n" @@ -3292,6 +3320,7 @@ msgid "Warning: %s is not installed\n" msgstr "Ostrzeżenie: %s nie jest zainstalowane\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "Żadne z podanych odniesień nie są zainstalowane" @@ -3332,6 +3361,7 @@ msgid "With --commit, only one REF may be specified" msgstr "Używając opcji --commit można podać tylko jedno ODNIESIENIE" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Wyszukiwanie aktualizacji…\n" @@ -3341,28 +3371,29 @@ msgid "Unable to update %s: %s\n" msgstr "Nie można zaktualizować %s: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Nie ma nic do zrobienia.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "Odnaleziono repozytorium „%s” w wielu instalacjach:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Którego użyć (0 przerwie)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "Nie wybrano repozytorium do rozwiązania „%s”, które istnieje w wielu " "instalacjach" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3371,13 +3402,13 @@ msgstr "" "Nie odnaleziono repozytorium „%s”\n" "Wskazówka: można użyć polecenia „flatpak remote-add”, aby dodać repozytorium" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Nie odnaleziono repozytorium „%s” w instalacji %s" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3386,143 +3417,134 @@ msgstr "" "Odnaleziono odniesienie „%s” w repozytorium „%s” (%s).\n" "Użyć tego odniesienia?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "Nie wybrano odniesienia do rozwiązania wyników dla „%s”" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "Odnaleziono podobne odniesienia do „%s” w repozytorium „%s” (%s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "Odnaleziono zainstalowane odniesienie „%s” (%s). Czy to w porządku?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "Wszystko powyższe" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "Odnaleziono podobne zainstalowane odniesienie do „%s”:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"Odnaleziono podobne odniesienia do „%s” w repozytorium „%s” (%s).\n" -"Użyć tego repozytorium?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "Odnaleziono repozytoria z odniesieniami podobnymi do „%s”:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "Nie wybrano repozytorium do rozwiązania wyników dla „%s”" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "Odnaleziono repozytoria z odniesieniami podobnymi do „%s”:" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "Aktualizowanie danych AppStream dla repozytorium użytkownika %s" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Aktualizowanie danych AppStream dla repozytorium %s" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Błąd podczas aktualizowania" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "Nie odnaleziono repozytorium „%s”" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Niejednoznaczny przyrostek: „%s”." #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "" "Możliwe wartości to :s[tart] (początek), :m[iddle] (środek), :e[nd] (koniec) " "lub :f[ull] (pełne)" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Nieprawidłowy przyrostek: „%s”." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Niejednoznaczna kolumna: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Nieznana kolumna: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Dostępne kolumny:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Wyświetla wszystkie kolumny" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Wyświetla dostępne kolumny" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" "Dołączenie :s[tart], :m[iddle], :e[nd] lub :f[ull] zmieni sposób skracania" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "" "Wymagane środowisko wykonawcze dla %s (%s) zostało odnalezione " "w repozytorium %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Zainstalować je?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "" "Odnaleziono wymagane środowisko wykonawcze dla %s (%s) w repozytoriach:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Które zainstalować (0 przerwie)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Konfigurowanie %s jako nowe repozytorium „%s”\n" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3534,7 +3556,7 @@ msgstr "" "Zachować repozytorium, aby móc instalować z niego w przyszłości?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3545,126 +3567,126 @@ msgstr "" " %s\n" "Należy skonfigurować jako nowe repozytorium „%s”" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Instalowanie…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Instalowanie %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Aktualizowanie…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Aktualizowanie %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Odinstalowywanie…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Odinstalowywanie %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Informacja: %s zostało pominięte" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, c-format msgid "Warning: %s%s%s already installed" msgstr "Ostrzeżenie: już zainstalowano %s%s%s" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, c-format msgid "Error: %s%s%s already installed" msgstr "Błąd: już zainstalowano %s%s%s" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, c-format msgid "Warning: %s%s%s not installed" msgstr "Ostrzeżenie: nie zainstalowano %s%s%s" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, c-format msgid "Error: %s%s%s not installed" msgstr "Błąd: nie zainstalowano %s%s%s" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "Ostrzeżenie: %s%s%s wymaga nowszej wersji Flatpak" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "Błąd: %s%s%s wymaga nowszej wersji Flatpak" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" msgstr "Ostrzeżenie: za mało miejsca na dysku, aby ukończyć to działanie" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" msgstr "Błąd: za mało miejsca na dysku, aby ukończyć to działanie" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, c-format msgid "Warning: %s" msgstr "Ostrzeżenie: %s" -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, c-format msgid "Error: %s" msgstr "Błąd: %s" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, c-format msgid "Failed to install %s%s%s: " msgstr "Zainstalowanie %s%s%s się nie powiodło: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, c-format msgid "Failed to update %s%s%s: " msgstr "Zaktualizowanie %s%s%s się nie powiodło: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Zainstalowanie pakietu %s%s%s się nie powiodło: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Odinstalowanie %s%s%s się nie powiodło: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "Wymagane jest uwierzytelnienie dla repozytorium „%s”\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Otworzyć przeglądarkę?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "Wymagane jest logowanie do repozytorium %s (obszar %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Hasło" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, c-format msgid "" "\n" @@ -3675,7 +3697,7 @@ msgstr "" "Informacja: (przypięte) środowisko wykonawcze %s%s%s, gałąź %s%s%s jest " "niewspierane, w zamian jest %s%s%s, gałąź %s%s%s\n" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, c-format msgid "" "\n" @@ -3686,7 +3708,7 @@ msgstr "" "Informacja: środowisko wykonawcze %s%s%s, gałąź %s%s%s jest niewspierane, " "w zamian jest %s%s%s, gałąź %s%s%s\n" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, c-format msgid "" "\n" @@ -3698,7 +3720,7 @@ msgstr "" "%s%s%s, gałąź %s%s%s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, c-format msgid "" "\n" @@ -3708,7 +3730,7 @@ msgstr "" "Informacja: (przypięte) środowisko wykonawcze %s%s%s, gałąź %s%s%s jest " "niewspierane z powodu:\n" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, c-format msgid "" "\n" @@ -3718,7 +3740,7 @@ msgstr "" "Informacja: środowisko wykonawcze %s%s%s, gałąź %s%s%s jest niewspierane " "z powodu:\n" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, c-format msgid "" "\n" @@ -3727,90 +3749,88 @@ msgstr "" "\n" "Informacja: program %s%s%s, gałąź %s%s%s jest niewspierany z powodu:\n" -#: app/flatpak-cli-transaction.c:947 +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" msgstr "Informacja: programy używające tego rozszerzenia:\n" -#: app/flatpak-cli-transaction.c:949 +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" msgstr "Informacja: programy używające tego środowiska wykonawczego:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "Zastąpić?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "Aktualizowanie do zmienionej wersji\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "Zmiana %s na %s się nie powiodła: " -#: app/flatpak-cli-transaction.c:1009 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Odinstalowanie %s dla zmiany na %s się nie powiodło: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, c-format msgid "New %s%s%s permissions:" msgstr "Nowe uprawnienia %s%s%s:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, c-format msgid "%s%s%s permissions:" msgstr "Uprawnienia %s%s%s:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Ostrzeżenie: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Dz" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "częściowo" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Kontynuować te zmiany w instalacji użytkownika?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Kontynuować te zmiany w instalacji systemowej?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Kontynuować te zmiany w: %s?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Ukończono zmiany." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Ukończono odinstalowywanie." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Ukończono instalację." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Ukończono aktualizacje." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Wystąpił jeden lub więcej błędów" @@ -4125,7 +4145,7 @@ msgstr "" "Flatpak mogą nie pojawić się w środowisku pulpitu do czasu ponownego " "uruchomienia sesji." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." @@ -4134,28 +4154,28 @@ msgstr "" "w instalacji użytkownika, albo użyć powłoki roota, aby działać w instalacji " "użytkownika root." -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" "Podano wiele instalacji dla polecenia, które działa na jednej instalacji" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "„%s --help” wyświetli więcej informacji" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "„%s” nie jest poleceniem Flatpak. Czy chodziło o „%s%s”?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "„%s” nie jest poleceniem Flatpak" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Nie podano polecenia" @@ -4218,16 +4238,16 @@ msgstr "Ostrzeżenie: odinstalowanie %s się nie powiodło: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Błąd: odinstalowanie %s się nie powiodło: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "Już zainstalowano %s" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "Nie zainstalowano %s" @@ -4256,59 +4276,55 @@ msgstr "Informacja: %s jest niewspierane z powodu: %s\n" msgid "Failed to rebase %s to %s: %s\n" msgstr "Zmiana %s na %s się nie powiodła: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Odinstalowanie %s dla zmiany na %s się nie powiodło: %s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "Nie skonfigurowano programu uwierzytelniającego dla repozytorium „%s”" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Nieznany typ udziału %s, prawidłowe typy: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Nieznany typ polityki %s, prawidłowe typy: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Nieprawidłowa nazwa D-Bus %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Nieznany typ gniazda %s, prawidłowe typy: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Nieznany typ urządzenia %s, prawidłowe typy: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Nieznany typ funkcji %s, prawidłowe typy: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "Położenie w systemie plików „%s” zawiera „..”" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" "--filesystem=/ jest niedostępne, należy użyć --filesystem=host, aby osiągnąć " "podobny efekt" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4317,181 +4333,214 @@ msgstr "" "Nieznane położenie systemu plików %s, prawidłowe położenia: host, host-os, " "host-etc, home, xdg-*[/…], ~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Nieznany format środowiska %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "Nazwa zmiennej środowiskowej nie może zawierać „=”: %s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "Parametry --add-policy muszą być w formacie PODSYSTEM.KLUCZ=WARTOŚĆ" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "Wartości --add-policy nie mogą zaczynać się od znaku „!”" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "Parametry --remove-policy muszą być w formacie PODSYSTEM.KLUCZ=WARTOŚĆ" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "Wartości --remove-policy nie mogą zaczynać się od znaku „!”" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Udostępnia temu komputerowi" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "UDZIAŁ" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Przestaje udostępniać temu komputerowi" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Udostępnia gniazdo programowi" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "GNIAZDO" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Nie udostępnia gniazda programowi" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Udostępnia urządzenie programowi" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "URZĄDZENIE" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Nie udostępnia urządzenia programowi" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Zezwala na funkcję" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "FUNKCJA" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Bez zezwolenia na funkcję" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "Udostępnia system plików programowi (:ro dla tylko do odczytu)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "SYSTEM-PLIKÓW[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Nie udostępnia systemu plików programowi" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "SYSTEM-PLIKÓW" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Ustawia zmienną środowiskową" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "ZMIENNA=WARTOŚĆ" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "Odczytuje zmienne środowiskowe w formacie env -0 z FD" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "FD" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "Usuwa zmienną ze środowiska" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "ZMIENNA" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Zezwala programowi na posiadanie nazwy na magistrali sesji" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "NAZWA_D-BUS" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Umożliwia programowi rozmawianie z nazwą na magistrali sesji" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "Bez zezwolenia programowi na rozmawianie z nazwą na magistrali sesji" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Zezwala programowi na posiadanie nazwy na magistrali systemu" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Umożliwia programowi rozmawianie z nazwą na magistrali systemu" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "Bez zezwolenia programowi na rozmawianie z nazwą na magistrali systemu" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +msgid "Allow app to own name on the a11y bus" +msgstr "Zezwala programowi na posiadanie nazwy na magistrali ułatwień dostępu" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Dodaje ogólną opcję polityki" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "PODSYSTEM.KLUCZ=WARTOŚĆ" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Usuwa ogólną opcję polityki" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "Trwała podścieżka katalogu domowego" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "NAZWA-PLIKU" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Trwała podścieżka katalogu domowego" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Bez wymagania działającej sesji (bez tworzenia cgroups)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "„%s” nie zostanie zastąpione tmpfs: %s" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "„%s” nie będzie udostępniane piaskownicy: %s" @@ -4500,438 +4549,434 @@ msgstr "„%s” nie będzie udostępniane piaskownicy: %s" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "Dostęp do katalogu domowego nie zostanie udzielony: %s" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "Nie można dostarczyć tymczasowego katalogu domowego w piaskownicy: %s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "" "Identyfikator skonfigurowanej kolekcji „%s” nie jest w pliku podsumowania" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Nie można wczytać podsumowania z repozytorium %s: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "Brak odniesienia „%s” w repozytorium %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 #, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "" -"Brak wpisu dla %s w pamięci podręcznej Flatpak podsumowania repozytorium " -"„%s” " +"Brak wpisu dla %s w pamięci podręcznej Flatpak podsumowania repozytorium %s" -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "" "Brak dostępnego podsumowania lub pamięci podręcznej Flatpak dla repozytorium " "%s" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "Brak wpisu dla %s w pamięci podręcznej podsumowania repozytorium „%s” " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Brak „xa.data” w podsumowaniu dla repozytorium %s" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Nieobsługiwana wersja podsumowania %d dla repozytorium %s" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "Indeks OCI repozytorium nie ma adresu URI rejestru" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Nie można odnaleźć odniesienia %s w repozytorium %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "Obraz nie jest w manifeście" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" "Zatwierdzenie nie ma żądanego odniesienia „%s” w metadanych dowiązania " "odniesienia" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "" "Identyfikator skonfigurowanej kolekcji „%s” nie jest w metadanych dowiązania" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" "Nie można odnaleźć najnowszej sumy kontrolnej dla odniesienia %s " "w repozytorium %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" "Brak wpisu dla %s w rozsianej pamięci podręcznej Flatpak podsumowania " "repozytorium %s" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "" "Metadane zatwierdzenia dla %s nie zgadzają się z oczekiwanymi metadanymi" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "Nie można połączyć się z magistralą systemu" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "Instalacja użytkownika" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "Instalacja systemowa (%s)" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Nie odnaleziono zastępników dla %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "Nie zainstalowano %s (zatwierdzenie %s)" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "Błąd podczas przetwarzania pliku repozytorium Flatpak dla %s: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Podczas otwierania repozytorium %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "Klucz konfiguracji %s nie jest ustawiony" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "Brak obecnych wzorów %s pasujących do %s" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "Brak zatwierdzenia AppStream do wdrożenia" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" "Nie można pobrać z niezaufanego, niesprawdzonego przez GPG repozytorium" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" "Dodatkowe dane nie są obsługiwane dla niesprawdzonych przez GPG lokalnych " "instalacji systemowych" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Nieprawidłowa suma kontrolna dla adresu URI dodatkowych danych %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Pusta nazwa dla adresu URI %s dodatkowych danych" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Nieobsługiwany adres URI %s dodatkowych danych" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Wczytanie lokalnych dodatkowych danych %s się nie powiodło: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Błędny rozmiar dodatkowych danych %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "Podczas pobierania %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Błędny rozmiar dodatkowych danych %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Nieprawidłowa suma kontrolna dodatkowych danych %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "Już zainstalowano %s, zatwierdzenie %s" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "Podczas pobierania %s z repozytorium %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "Odnaleziono podpisy GPG, ale żadne nie są w zaufanej bazie kluczy" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "Zatwierdzenie dla „%s” nie ma dowiązania odniesienia" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "" "Zatwierdzenie dla „%s” nie jest w oczekiwanych dowiązanych odniesieniach: %s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "Tylko programy mogą być ustawione jako bieżące" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Za mało pamięci" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Odczytanie z wyeksportowanego pliku się nie powiodło" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Błąd podczas odczytywania pliku XML typu MIME" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Nieprawidłowy plik XML typu MIME" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "Plik usługi D-Bus „%s” ma błędną nazwę" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "Nieprawidłowy parametr Exec %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "Podczas pobierania odłączonych metadanych: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "Brak dodatkowych danych w odłączonych metadanych" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "Podczas tworzenia dodatkowego katalogu: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Nieprawidłowa suma kontrolna dodatkowych danych" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Błędny rozmiar dodatkowych danych" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "Podczas zapisywania pliku dodatkowych danych „%s”: " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "Brak dodatkowych danych %s w odłączonych metadanych" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "Skrypt „apply_extra” się nie powiódł, stan wyjścia %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" "Instalacja programu %s jest zabroniona przez zasady ustawione przez " "administratora" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "Podczas rozwiązywania odniesienia %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s jest niedostępne" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Nie można utworzyć katalogu wdrażania" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Odczytanie zatwierdzenia %s się nie powiodło: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "Podczas wymeldowywania %s do %s: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "Podczas wymeldowywania podścieżki metadanych: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "Podczas wymeldowywania podścieżki „%s”: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Podczas usuwania istniejącego dodatkowego katalogu: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Podczas zastosowywania dodatkowych danych: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Nieprawidłowe odniesienie zatwierdzenia %s: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "Wdrożone odniesienie %s nie pasuje do zatwierdzenia (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "Gałąź wdrożonego odniesienia %s nie pasuje do zatwierdzenia (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "Już zainstalowano %s, gałąź %s" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "Nie można odmontować systemu plików revokefs-fuse w %s: " -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Ta wersja programu %s jest już zainstalowana" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "Nie można zmienić repozytorium podczas instalacji pakietu" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "Nie można zaktualizować do podanego zatwierdzenia bez uprawnień roota" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "Nie można usunąć %s, jest wymagane dla: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "Nie zainstalowano %s, gałęzi %s" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "Nie zainstalowano %s, zatwierdzenie %s" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "Usuwanie nieużywanych obiektów z repozytorium się nie powiodło: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "Wczytanie filtru „%s” się nie powiodło" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "Przetworzenie filtru „%s” się nie powiodło" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "Zapisanie pamięci podręcznej podsumowań się nie powiodło: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "Brak podsumowania OCI w pamięci podręcznej dla repozytorium „%s”" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "Brak podsumowania w pamięci podręcznej dla repozytorium „%s”" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "" "Nieprawidłowa suma kontrolna zindeksowanego podsumowania %s odczytanego z %s" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " @@ -4941,246 +4986,275 @@ msgstr "" "podsumowania. Proszę sprawdzić, czy adres URL przekazywany do remote-add " "jest prawidłowy." -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "" "Nieprawidłowa suma kontrolna zindeksowanego podsumowania %s dla repozytorium " "„%s”" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "Dla %s dostępnych jest wiele gałęzi, należy podać jedną z: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Nic nie pasuje do %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Nie można odnaleźć odniesienia %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Błąd podczas wyszukiwania repozytorium %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Błąd podczas wyszukiwania lokalnego repozytorium: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "Nie zainstalowano %s/%s/%s" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Nie można odnaleźć instalacji %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "Nieprawidłowy format pliku, brak grupy %s" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Nieprawidłowa wersja %s, obsługiwana jest tylko wersja 1" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "Nieprawidłowy format pliku, nie podano %s" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "Nieprawidłowy format pliku, nieprawidłowy klucz GPG" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "Identyfikator kolekcji wymaga dostarczenia klucza GPG" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Już zainstalowano środowisko wykonawcze %s, gałąź %s" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Już zainstalowano program %s, gałąź %s" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" "Nie można usunąć repozytorium „%s” z zainstalowanym odniesieniem %s (co " "najmniej)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Nieprawidłowy znak „/” w nazwie repozytorium: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "Nie podano konfiguracji dla repozytorium %s" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Pomijanie usuwania odniesienia serwera lustrzanego (%s, %s)…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "Wymagana jest ścieżka bezwzględna" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, c-format msgid "Unable to open path \"%s\": %s" msgstr "Nie można otworzyć ścieżki „%s”: %s" -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "Nie można uzyskać typu pliku „%s”: %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "Plik „%s” ma nieobsługiwany typ 0o%o" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "Nie można uzyskać informacji o systemie plików dla „%s”: %s" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "Ignorowanie blokującej ścieżki autofs „%s”" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "Ścieżka „%s” jest zastrzeżona przez Flatpak" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "Nie można rozwiązać dowiązania symbolicznego „%s”: %s" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "Pusty ciąg nie jest liczbą" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "„%s” nie jest liczbą bez znaku" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "Liczba „%s” jest poza zakresem [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "Nie zainstalowano odniesienia %s" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "Nie zainstalowano programu %s" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "Repozytorium „%s” już istnieje" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "Jak zażądano, %s zostało tylko pobrane, ale nie zainstalowane" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "Nie można utworzyć katalogu %s" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "Nie można zablokować %s" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "Nie można otworzyć katalogu %s" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "Nie można utworzyć tymczasowego katalogu w %s" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "Nie można utworzyć pliku %s" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Nie można zaktualizować dowiązania symbolicznego %s/%s" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "Obsługiwane jest tylko uwierzytelnianie na okaziciela" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "Tylko obszar w żądaniu uwierzytelnienia" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "Nieprawidłowy obszar w żądaniu uwierzytelnienia" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "Upoważnienie się nie powiodło: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Upoważnienie się nie powiodło" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "Nieoczekiwany stan odpowiedzi %d podczas żądania tokena: %s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "Nieprawidłowa odpowiedź żądania uwierzytelnienia" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "Nieprawidłowy format pliku delty" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "Nie odnaleziono klucza GPG z identyfikatorem %s (katalog domowy: %s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Nie można wyszukać identyfikatora klucza %s: %d" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "Błąd podczas podpisywania zatwierdzenia: %d" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Nieprawidłowa konfiguracja obrazu OCI" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Błędna suma kontrolna warstwy, oczekiwano %s, wynosi %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "Nie podano odniesienia dla obrazu OCI %s" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Podano błędne odniesienie (%s) dla obrazu OCI %s, oczekiwano %s" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5201,323 +5275,376 @@ msgstr "Pobieranie dodatkowych danych: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Pobieranie plików: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Nazwa nie może być pusta" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Nazwa nie może mieć więcej niż 255 znaków" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Nazwa nie może zaczynać się od kropki" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Nazwa nie może zaczynać się od %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Nazwa nie może kończyć się kropką" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Tylko ostatni segment nazwy może zawierać -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Segment nazwy nie może zaczynać się od %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Nazwa nie może zawierać %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "Nazwy muszą zawierać co najmniej dwie kropki" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "Architektura nie może być pusta" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "Architektura nie może zawierać %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Gałąź nie może być pusta" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Gałąź nie może zaczynać się od %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Gałąź nie może zawierać %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "Odniesienie jest za długie" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "Nieprawidłowa nazwa repozytorium" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s nie jest programem ani środowiskiem wykonawczym" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Błędna liczba składników w %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "Nieprawidłowa nazwa %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "Nieprawidłowa architektura: %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Nieprawidłowa nazwa %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "Nieprawidłowa architektura: %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "Nieprawidłowa gałąź: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "Błędna liczba składników w częściowym odniesieniu %s" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr " platforma programistyczna" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr " platforma" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr " podstawa programu" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr " symbole debugowania" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr " kod źródłowy" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " tłumaczenia" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr " dokumentacja" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "Nieprawidłowy identyfikator %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Błędna nazwa repozytorium: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "Nie podano adresu URL" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "" "Sprawdzanie poprawności GPG musi być włączone, kiedy ustawiony jest " "identyfikator kolekcji" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Otwarcie pliku informacji o programie się nie powiodło" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Brak źródeł dodatkowych danych" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Utworzenie potoku synchronizacji się nie powiodło" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "Nieprawidłowe %s: brak grupy „%s”" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Synchronizacja z pośrednikiem D-Bus się nie powiodła" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "Nieprawidłowe %s: brak klucza „%s”" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Nieprawidłowy klucz GPG" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Błąd podczas kopiowania ikony 64×64 dla składnika %s: %s\n" -#: common/flatpak-run.c:2207 +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Błąd podczas kopiowania ikony 128×128 dla składnika %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s jest niewspierane, ignorowanie dla AppStream" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Brak danych AppStream dla %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Nieprawidłowy pakiet, brak odniesienia w metadanych" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "Kolekcja „%s” pakietu nie zgadza się z kolekcją „%s” repozytorium" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Metadane w nagłówku i programie są niespójne" + +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "Brak dostępnej sesji użytkownika systemd, cgroups nie są dostępne" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "Nie można przydzielić identyfikatora wystąpienia" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Otwarcie pliku „flatpak-info” się nie powiodło: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Otwarcie pliku „bwrapinfo.json” się nie powiodło: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "Zapisanie do FD identyfikatora wystąpienia się nie powiodło: %s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "Inicjacja seccomp się nie powiodła" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Dodanie architektury do filtru seccomp się nie powiodło: %s" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "" "Dodanie wieloarchitekturowej architektury do filtru seccomp się nie " "powiodło: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, c-format msgid "Failed to block syscall %d: %s" msgstr "Zablokowanie wywołania systemowego %d się nie powiodło: %s" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, c-format msgid "Failed to export bpf: %s" msgstr "Wyeksportowanie bpf się nie powiodło: %s" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "Otwarcie „%s” się nie powiodło" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ldconfig się nie powiodło, stan wyjścia %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "Nie można otworzyć utworzonego ld.so.cache" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" "Uruchomienie programu %s jest zabronione przez zasady ustawione przez " "administratora" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" "„flatpak run” nie powinno być wykonywane jako „sudo flatpak run”. Należy " "użyć „sudo -i” lub „su -l” zamiast tego i wywołać „flatpak run” z nowej " "powłoki." -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "Migracja z %s się nie powiodła: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" "Migracja poprzedniego katalogu danych programu %s do nowej nazwy %s się nie " "powiodła: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "" "Utworzenie dowiązania symbolicznego podczas migracji %s się nie powiodło: %s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Otwarcie pliku informacji o programie się nie powiodło" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Utworzenie potoku synchronizacji się nie powiodło" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Synchronizacja z pośrednikiem D-Bus się nie powiodła" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Ostrzeżenie: problem podczas wyszukiwania powiązanych odniesień: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "Program %s wymaga środowiska wykonawczego %s, którego nie odnaleziono" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "" "Program %s wymaga środowiska wykonawczego %s, które nie jest zainstalowane" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "Nie można odinstalować %s, które jest wymagane przez %s" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Repozytorium %s jest wyłączone, ignorowanie aktualizacji %s" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "Już zainstalowano %s" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s jest już zainstalowane z repozytorium %s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "Nieprawidłowy plik .flatpakref: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "Błąd podczas aktualizowania metadanych repozytorium dla „%s”: %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " @@ -5526,55 +5653,55 @@ msgstr "" "Ostrzeżenie: traktowanie błędu pobierania repozytorium jako niekrytycznego, " "ponieważ %s jest już zainstalowane: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "Nie zainstalowano programu uwierzytelniającego dla repozytorium „%s”" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "Uzyskanie tokenów dla odniesienia się nie powiodło: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "Uzyskanie tokenów dla odniesienia się nie powiodło" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "Odniesienie %s z %s pasuje do więcej niż jednej transakcji" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" msgstr "dowolnego repozytorium" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "Nie odnaleziono transakcji dla odniesienia %s z %s" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "" "Adres URL repozytorium Flatpak %s nie jest adresem „file”, HTTP ani HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "Nie można wczytać zależnego pliku %s: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "Nieprawidłowy plik .flatpakrepo: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "Transakcja została już wykonana" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." @@ -5582,16 +5709,16 @@ msgstr "" "Odmowa działania na instalacji użytkownika jako root. Może to spowodować " "niepoprawnych właścicieli plików i błędy uprawnień." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Przerwane przez użytkownika" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "Pomijanie %s z powodu poprzedniego błędu" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "Przerwano z powodu niepowodzenia (%s)" @@ -5638,137 +5765,113 @@ msgstr "Port „%.*s” w adresie URI jest poza zakresem" msgid "URI is not absolute, and no base URI was provided" msgstr "Adres URI nie jest bezwzględny i nie podano podstawy adresu URI" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "Wzorzec nie pasuje do programów" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" +msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "Pusty wzorzec" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "Za dużo segmentów we wzorcu" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "Nieprawidłowy identyfikator %s: %s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" -msgstr "Nieprawidłowy znak wzorca „%c”" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" -msgstr "Brak wzorca w %d. wierszu" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" -msgstr "Kończący tekst w %d. wierszu" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "w %d. wierszu" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "Nieoczekiwany wyraz „%s” w %d. wierszu" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "Nieprawidłowe %s: brak grupy „%s”" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "Nieprawidłowe %s: brak klucza „%s”" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Nieprawidłowy klucz GPG" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Brak źródeł dodatkowych danych" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Błąd podczas kopiowania ikony 64×64 dla składnika %s: %s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Błąd podczas kopiowania ikony 128×128 dla składnika %s: %s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s jest niewspierane, ignorowanie dla AppStream" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "Wzorzec nie pasuje do programów" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Brak danych AppStream dla %s: %s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Pusty wzorzec" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "Nieprawidłowy pakiet, brak odniesienia w metadanych" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "Za dużo segmentów we wzorcu" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "Kolekcja „%s” pakietu nie zgadza się z kolekcją „%s” repozytorium" - -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "Metadane w nagłówku i programie są niespójne" +msgid "Invalid glob character '%c'" +msgstr "Nieprawidłowy znak wzorca „%c”" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "Nieprawidłowa konfiguracja obrazu OCI" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "Brak wzorca w %d. wierszu" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "Błędna suma kontrolna warstwy, oczekiwano %s, wynosi %s" +msgid "Trailing text on line %d" +msgstr "Kończący tekst w %d. wierszu" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "Nie podano odniesienia dla obrazu OCI %s" +msgid "on line %d" +msgstr "w %d. wierszu" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "Podano błędne odniesienie (%s) dla obrazu OCI %s, oczekiwano %s" +msgid "Unexpected word '%s' on line %d" +msgstr "Nieoczekiwany wyraz „%s” w %d. wierszu" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "Nieprawidłowy parametr require-flatpak %s" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s wymaga nowszej wersji Flatpak (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "Pusty ciąg nie jest liczbą" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "„%s” nie jest liczbą bez znaku" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "Liczba „%s” jest poza zakresem [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "Nie jest repozytorium OCI, nie ma summary.xa.oci-repository" @@ -5781,44 +5884,48 @@ msgstr "Nie jest repozytorium OCI" msgid "Invalid token" msgstr "Nieprawidłowy token" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "Nie odnaleziono obsługi portali" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Odmów" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Zaktualizuj" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "Zaktualizować %s?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "Program chce się zaktualizować." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" "Dostęp do aktualizacji można zmienić w każdej chwili w ustawieniach " "prywatności." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "Aktualizacja programu jest zabroniona" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" "Samodzielna aktualizacja nie jest obsługiwana, nowa wersja wymaga nowych " "uprawnień" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "Aktualizacja została nieoczekiwanie zakończona" diff --git a/po/pt.gmo b/po/pt.gmo deleted file mode 100644 index 5712baf9969069a4474de9ef9faa06a041e1b34f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 107149 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\n" "Language-Team: Portuguese\n" @@ -20,104 +20,104 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 3.0.1\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Exporta runtime em vez da aplicação" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Arquitetura para a qual será empacotada" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARQUITETURA" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Url para o repo" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Url para o ficheiro de flatpakrepo de runtime" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Adiciona uma chave GPG do FICHEIRO (- para stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "FICHEIRO" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "ID da chave GPG para assinar a imagem OCI" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "ID-CHAVE" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "ID-CHAVE" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "Diretório do GPG para usar quando estiver à procura por chaveiros" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "HOMEDIR" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "Commit OSTree para criar um pacote delta de" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "COMMIT" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Exporta a imagem oci em vez do pacote flatpak" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -125,58 +125,58 @@ msgstr "" "LOCALIZAÇÃO ARQUIVO NOME [RAMO] – Cria um único ficheiro de pacote de um " "repositório local" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "LOCALIZAÇÃO, ARQUIVO e NOME devem ser especificados" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Número excessivo de argumentos" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "“%s” não é um repositório válido" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "“%s” não é um repositório válido: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "“%s” não é um nome válido: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "“%s” não é um nome de ramo válido: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -211,7 +211,7 @@ msgstr "DIR" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Onde procurar por diretório de sdk personalizado (padrão é “usr”)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Usa um ficheiro alternativo para os metadados" @@ -231,104 +231,105 @@ msgstr "Registra o log das chamadas de barramento de sessão" msgid "Log system bus calls" msgstr "Registra o log das chamadas de barramento de sistema" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "DIRETÓRIO [COMANDO [ARGUMENTO…]] – Compila no diretório" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "DIRETÓRIO deve ser especificado" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "Diretório de compilação %s não inicializado, use flatpak build-init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "metadados inválido, não é aplicação ou runtime" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "Nenhum ponto de extensão correspondendo %s em %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Em falta “=” na opção de montagem associativa “%s”" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Não foi possível iniciar a aplicação" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Diretório de repositório fonte" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "SRC-REPO" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Ref de repositório fonte" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "SRC-REF" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Assunto em uma linha" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "ASSUNTO" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Descrição completa" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "CORPO" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Atualiza o ramo de appstream" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Atualiza o ramo de appstream" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Não atualiza o sumário" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "ID da chave GPG para assinar o commit" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "Marca a compilação como fim de vida" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "MOTIVO" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -336,372 +337,377 @@ msgstr "" "Marca refs correspondentes ao prefixo de IDANTIGO como fim de vida, para " "serem substituídos com o IDNOVO dado" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "IDANTIGO=IDNOVO" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "Define o tipo de token necessário para instalar este commit" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "VALOR" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "Sobrepõe o carimbo de tempo do commit (NOW para o tempo atual)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "CARIMBO-DE-TEMPO" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "Não gera um índice de resumo" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "DST-REPO [DST-REF…] – Faz um novo commit de commits existentes" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "DST-REPO deve ser especificado" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "Se --src-repo não for especificado, exatamente uma ref destino deve ser " "especificado" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" "Se --src-ref for especificado, exatamente uma ref destino deve ser " "especificado" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "--src-repo ou --src-ref devem ser especificados" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" "Formato de argumento inválido para o uso de --end-of-life-" "rebase=IDANTIGO=IDNOVO" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "Nome inválido %s em --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "Não foi possível analisar “%s”" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "Não foi possível fazer commit de commit fonte parcial" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: nenhuma alteração\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Arquitetura alvo da exportação (deve ser compatível com o hospedeiro)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Faz commit de runtime (/usr), não /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Usa o dicionário alternativo para os ficheiros" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "SUBDIR" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Ficheiros a excluir" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "PADRÃO" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Ficheiros excluídos a incluir" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "Marca a compilação como fim de vida, a ser substituída com o ID dado" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Sobrepõe o carimbo de tempo do commit" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "ID de coleção" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "AVISO: Erro ao executar desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "AVISO: Erro ao ler de desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "AVISO: Falha ao validar o ficheiro desktop %s: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "AVISO: Não foi possível localizar a chave Exec em %s: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "AVISO: Binário não localizado para a linha Exec em %s: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "AVISO: Ícone não correspondendo a id da aplicação no %s: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "AVISO: Ícone referenciado no ficheiro desktop, mas não exportado: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Tipo de uri inválida %s, há suporte apenas a http/https" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "" "Não foi possível localizar o nome base em %s, especifique explicitamente um " "nome base" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "Nenhuma barra permitida no nome de dados extras" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Formato inválido para a soma de verificação sha256: “%s”" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Tamanhos zerado de dados extras sem suporte" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "" "LOCALIZAÇÃO DIRETÓRIO [RAMO] – Cria um repositório de um diretório de " "compilação" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "LOCALIZAÇÃO e DIRETÓRIO devem ser especificados" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "“%s” não é um ID de coleção válido: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Nenhum nome especificado nos metadados" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Commit: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Metadados totais: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Metadados escritos: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Conteúdo total: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Conteúdo escrito: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Conteúdo de bytes escritos:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Comando para definir" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "COMANDO" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Versão do Flatpak para exigir" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "MAIOR.MENOR.MICRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Não processa exportações" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Info de dados extras" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Adiciona info do ponto de extensão" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NOME=VARIÁVEL[=VALOR]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Remove info do ponto de extensão" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NOME" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Define a prioridade da extensão (apenas para extensões)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "VALOR" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Altera o sdk usado para a aplicação" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Altera o runtime usado para a aplicação" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "RUNTIME" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Define a opção de metadados genérica" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GRUPO=CHAVE[=VALOR]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Não herda permissões do runtime" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "Não exportando %s, extensão errada\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "Não exportando %s, nome de ficheiro de exportação não permitido\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "Exportando %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Mais de um executável localizado\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "Usando %s como comando\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Nenhum executável localizado\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Argumento --require-version inválido: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "Elementos insuficientes no argumento de --extra-data %s" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -710,7 +716,7 @@ msgstr "" "Elementos insuficientes no argumento de --metadata %s, formato deve ser " "GRUPO=CHAVE[=VALOR]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -720,64 +726,65 @@ msgstr "" "Elementos insuficientes no argumento de --extension %s, formato deve ser " "NOME=VAR[=VALOR]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "Nome de extensão inválido %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "DIRETÓRIO – Finaliza um diretório de compilação" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Diretório de compilação %s não inicializado" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Diretório de compilação %s já finalizado" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Por favor, reveja os ficheiros exportados e os metadados\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Sobrepõe a ref usada para o pacote importado" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REF" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Importa a imagem oci em vez do pacote flatpak" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Ref “%s” não localizado no registro" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "Várias imagens no registro, especifique uma ref com --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "Importando %s (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "" "LOCALIZAÇÃO FICHEIRO – Importa um ficheiro de pacote para um repositório " "local" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "LOCALIZAÇÃO e ARQUIVO devem ser especificados" @@ -892,88 +899,88 @@ msgstr "“%s” não é um nome de aplicação válido: %s" msgid "Build directory %s already initialized" msgstr "Diretório de compilação %s já inicializado" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Arquitetura para a qual será instalada" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Procura pelo runtime com o nome especificado" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "LOCALIZAÇÃO [ID [RAMO]] – Assina uma aplicação ou runtime" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "LOCALIZAÇÃO deve ser especificada" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Nenhum id de chave gpg especificado" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Redireciona este repositório a um novo URL" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Um nome legal para usar para este repositório" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "TÍTULO" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "Um comentário de uma linha para este repositório" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "COMENTÁRIO" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "Uma descrição de parágrafo completo para este repositório" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "DESCRIÇÃO" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "URL de um website para este repositório" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "URL de um ícone para este repositório" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Ramo padrão para usar para este repositório" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "RAMO" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "ID-COLEÇÃO" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" @@ -981,119 +988,122 @@ msgstr "" "Implementa permanentemente ID de coleção em configurações remotas de " "cliente, apenas para suporte a download local" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" "Implementa permanentemente ID de coleção em configurações remotas de cliente" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Nome do autenticador para este repositório" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "Instala automaticamente um autenticador para este repositório" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "Não instala automaticamente um autenticador para este repositório" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Opção do autenticador" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "CHAVE=VALOR" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Importa nova chave pública GPG padrão do ARQUIVO" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "ID da chave GPG para assinar o sumário" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Gera ficheiros delta" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Não atualiza o ramo de appstream" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "Máximo de trabalhos paralelos ao criar deltas (padrão: NUMCPUs)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "NUM-TRABALHOS" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "Não cria deltas correspondendo a refs" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Suprime objetos não usados" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "Suprime, mas não remove nada" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "Atravessa apenas NÍVEL pais para cada commit (padrão: -1=infinito)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "NÍVEL" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Gerando delta: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Gerando delta: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Falha ao gerar delta %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Falha ao gerar delta %s (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "LOCALIZAÇÃO – Atualiza metadados de um repositório" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "A atualizar ramo do appstream\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "A atualizar resumo\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Objetos totais: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Nenhum objeto alcançável\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "%u objetos excluídos, %s liberado\n" @@ -1165,25 +1175,25 @@ msgstr "Pode usar apenas um entre --list, --get, --set ou --unset" msgid "Must specify one of --list, --get, --set or --unset" msgstr "Deve-se especificar um entre --list, --get, --set ou --unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Procura pela aplicação com o nome especificado" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Arquitetura para copiar" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "DEST" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "Permite commits parciais no repositório criado" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " @@ -1192,12 +1202,12 @@ msgstr "" "Aviso: A ref “%s” relacionada está parcialmente instalada. Use --allow-" "partial para suprimir esta mensagem.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "Aviso: Omitindo a ref “%s” relacionada porque não está instalada.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1206,12 +1216,12 @@ msgstr "" "Aviso: Omitindo a ref “%s” relacionada porque seu remoto “%s” não tem um " "conjunto de ID de coleção.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "Aviso: Omitindo a ref “%s” relacionada porque é extra-data.\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1220,32 +1230,32 @@ msgstr "" "O remoto “%s” não tem um conjunto de ID de coleção, necessário para a " "distribuição P2P de “%s”." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "Aviso: Omitindo a ref “%s” (runtime de “%s”) porque é extra-data.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "CAMINHO-MONT [REF…] – Copia apps ou runtimes em mídia removível" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "CAMINHO-MONT e REF devem ser especificados" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" "Ref “%s” localizada em várias instalações: %s. Você deve especificar uma." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" "As refs devem estar todas na mesma instalação (localizadas em %s e %s)." -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " @@ -1254,18 +1264,18 @@ msgstr "" "Aviso: A ref “%s” está parcialmente instalada. Use --allow-partial para " "suprimir esta mensagem.\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "A ref “%s” instalada é extra-data e não pode ser distribuída offline" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" "Aviso: Não foi possível atualizar metadados do repo para remoto “%s”: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1273,7 +1283,7 @@ msgstr "" "arquitetura “%s”: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1282,7 +1292,7 @@ msgstr "" "arquitetura “%s”: %s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1357,19 +1367,20 @@ msgstr "ARQUIVO – Obtém informações sobre um ficheiro exportado" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Não exportado\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Quais informações mostrar" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "CAMPO,…" @@ -1388,7 +1399,7 @@ msgid "Show the document path" msgstr "Mostra o caminho do documento" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Origem" @@ -1402,7 +1413,7 @@ msgid "Show applications with permission" msgstr "Mostra aplicações com permissão" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Permissões" @@ -1532,12 +1543,12 @@ msgid "Show the kind of change" msgstr "Mostra o tipo de alteração" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Ref" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Mostra a ref" @@ -1546,24 +1557,24 @@ msgid "Show the application/runtime ID" msgstr "Mostra o ID de aplicação/runtime" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Arch" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Mostra a arquitetura" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Ramo" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Mostra o ramo" @@ -1575,7 +1586,7 @@ msgstr "Instalação" msgid "Show the affected installation" msgstr "Mostra a instalação afetada" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Remoto" @@ -1584,7 +1595,7 @@ msgid "Show the remote" msgstr "Mostra o remoto" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Commit" @@ -1604,7 +1615,7 @@ msgstr "Mostra o commit anterior" msgid "Show the remote URL" msgstr "Mostra o ID do remoto" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Usuário" @@ -1621,7 +1632,7 @@ msgid "Show the tool that was used" msgstr "Mostra a ferramenta que foi usada" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Versão" @@ -1649,10 +1660,12 @@ msgid " - Show history" msgstr " – Mostra histórico" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "Falha ao analisar a opção --since" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "Falha ao analisar a opção --until" @@ -1668,11 +1681,11 @@ msgstr "Mostra instalações do sistema" msgid "Show specific system-wide installations" msgstr "Mostra instalações específicas do sistema" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Mostra a ref" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Mostra o commit" @@ -1684,15 +1697,15 @@ msgstr "Mostra a origem" msgid "Show size" msgstr "Mostra o tamanho" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Mostra os metadados" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Mostra o runtime" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Mostra o sdk" @@ -1704,8 +1717,8 @@ msgstr "Mostra as permissões" msgid "Query file access" msgstr "Consulta o acesso a ficheiros" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1724,7 +1737,7 @@ msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "" "NOME [RAMO] – Obtém informações sobre uma aplicação e/ou um runtime instalado" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "NOME deve ser especificado" @@ -1733,85 +1746,87 @@ msgstr "NOME deve ser especificado" msgid "ref not present in origin" msgstr "ref não presente na origem" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Aviso: O commit tem nenhum metadado de flatpak\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Ref:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Arq.:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Ramo:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Versão:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Licença:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Coleção:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Instalação:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Instalado:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Runtime:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Data:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Assunto:" @@ -1824,15 +1839,15 @@ msgid "Latest commit:" msgstr "Último commit:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Commit:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Pai:" @@ -1841,14 +1856,14 @@ msgid "Alt-id:" msgstr "Alt-id:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "Fim de vida:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "Rebase de fim de vida:" @@ -1857,145 +1872,146 @@ msgid "Subdirectories:" msgstr "Subdiretórios:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Extensões:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Origem:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Subcaminhos:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "sem mantenedor" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "desconhecido" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Não faz pull, apenas instala do cache local" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Não implementa (deploy), apenas baixa para o cache local" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Não instala refs relacionadas" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Não verifica/instala dependências de runtime" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "Não fixar instalações explícitas automaticamente" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Não usa deltas estáticos" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Presume LOCALIZAÇÃO como sendo um pacote de ficheiro único .flatpak" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Presume LOCALIZAÇÃO como sendo uma descrição de aplicação .flatpakref" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "Verifica assinaturas de pacote com chave GPG do ARQUIVO (- para stdin)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Instala apenas este subcaminho" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Responde sim automaticamente para todas as perguntas" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Desinstala primeiro, se já instalado" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "Produz saída mínima e não faz perguntas" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Atualiza instalação se já instalada" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "Usa este repositório local para transferências locais" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Ficheiro do pacote deve ser especificado" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Não há suporte a pacotes remotos" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Ficheiro ou uri deve ser especificado" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "[LOCALIZAÇÃO/REMOTO] [REF…] – Instala aplicações ou runtimes" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "Pelo menos um REF deve ser especificado" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "A procurar por correspondências…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, fuzzy, c-format msgid "No remote refs found for ‘%s’" msgstr "Nenhuma ref de remoto localizada similar a “%s”" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Ramo inválido %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Nada corresponde a %s no repositório local para o remoto %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Nada corresponde a %s no remoto %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Ignorando: %s\n" @@ -2033,51 +2049,51 @@ msgstr "Lista aplicações instaladas" msgid "Arch to show" msgstr "Arquitetura para mostrar" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Lista todos os refs (incluindo localidade/depuração)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "Lista todas as aplicações usando RUNTIME" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Nome" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Mostra o nome" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Descrição" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Mostra a descrição" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "ID de aplicação" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Mostra o ID de aplicação" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Mostra a versão" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Runtime" @@ -2085,7 +2101,7 @@ msgstr "Runtime" msgid "Show the used runtime" msgstr "Mostra o runtime usado" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Mostra o remoto origem" @@ -2097,7 +2113,7 @@ msgstr "Mostra a instalação" msgid "Active commit" msgstr "Commit ativo" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Mostra o commit ativo" @@ -2109,35 +2125,35 @@ msgstr "Último commit" msgid "Show the latest commit" msgstr "Mostra o último commit" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Tamanho instalado" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Mostra o tamanho instalado" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Opções" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Mostra as opções" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, fuzzy, c-format msgid "Unable to load details of %s: %s" msgstr "Não foi possível carregar metadados do remoto %s: %s" -#: app/flatpak-builtins-list.c:189 -#, c-format +#: app/flatpak-builtins-list.c:188 +#, fuzzy, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Não foi possível criar o ficheiro %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " – Lista as aplicações e/ou runtimes instalados" @@ -2149,7 +2165,7 @@ msgstr "Arquitetura para a qual será tornada atual" msgid "APP BRANCH - Make branch of application current" msgstr "APLICAÇÃO RAMO – Faz o ramo da aplicação atual" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "APLICATIVO deve ser especificado" @@ -2174,10 +2190,12 @@ msgstr "" "padrões" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "Nenhum padrão mascarado\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Padrões mascarados:\n" @@ -2193,26 +2211,26 @@ msgstr "Mostra sobreposições existentes" msgid "[APP] - Override settings [for application]" msgstr "[APLICATIVO] – Sobrepõe as configurações [para uma aplicação]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABELA] [ID] – Lista permissões" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Tabela" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Objeto" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "App" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Dados" @@ -2270,10 +2288,12 @@ msgstr "" "[PADRÃO…] - desativa remoção automática de runtimes correspondendo a padrões" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "Nenhum padrão fixado\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "Padrões fixados:\n" @@ -2349,125 +2369,125 @@ msgstr "Mostra se a aplicação está em segundo plano" msgid " - Enumerate running sandboxes" msgstr " – Enumera as caixas de proteção em execução" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Faz nada se o remoto fornecido existir" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "" "LOCALIZAÇÃO especifica um ficheiro de configuração, não a localização do repo" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Desabilita verificação GPG" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Marca o remoto como não enumerado" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Marca o remoto como não usar para dependências" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "Define prioridade (padrão 1, maior é mais prioritário)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORIDADE" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "O subconjunto nomeado a ser usado para este remoto" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "SUBCONJUNTO" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Um nome legal para usar para este remoto" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "Um comentário de uma linha para este remoto" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "Uma descrição de parágrafo completo para este remoto" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "URL para um website para este remoto" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "URL para um ícone para este remoto" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Ramo padrão para usar para este remoto" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Importa uma chave GPG do ARQUIVO (- para stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Define o caminho para o filtro local ARQUIVO" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Desabilita o remoto" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Nome do autenticador" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Instala automaticamente autenticador" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "Não instala automaticamente autenticador" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "Não segue o redirecionamento definido no ficheiro de resumo" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "Não foi possível carregar a uri %s: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Não foi possível carregar o ficheiro %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NOME LOCALIZAÇÃO – Adiciona um repositório remoto" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "Verificação GPG é exigida se coleções estiverem habilitadas" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "O remoto %s já existe" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Nome de autenticador inválido %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "Aviso: Não foi possível atualizar metadados extras para “%s”: %s\n" @@ -2494,60 +2514,60 @@ msgstr "Removê-las?" msgid "Can't remove remote '%s' with installed refs" msgstr "Não é possível remover o remoto “%s” com refs instaladas" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "Commit para mostrar informações" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Mostra o registo" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Mostrar pasta principal" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Usa caches locais mesmo se eles estiverem velhos" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "Lista apenas refs disponíveis como downloads locais" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " REMOTO REF – Mostra informações sobre uma aplicação ou runtime em um remoto" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "REMOTO e REF devem ser especificados" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Baixar:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "Histórico:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Commit:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Assunto:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Data:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Aviso: O commit %s tem nenhum metadado de flatpak\n" @@ -2576,7 +2596,7 @@ msgstr "Mostra o URL" msgid "Show the collection ID" msgstr "Mostra o ID da coleção" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "Subconjunto" @@ -2632,39 +2652,39 @@ msgstr "Mostra ícone" msgid " - List remote repositories" msgstr " – Lista repositórios remotos" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Mostra arquiteturas e ramos" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Mostra apenas runtimes" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Mostra apenas aplicações" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Mostra apenas aqueles com atualizações disponíveis" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Limita a essa arquitetura (* para todas)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Mostra o runtime" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Tamanho baixado" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Mostra o tamanho baixado" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr " [REMOTO ou URI] – Mostra runtimes e aplicações disponíveis" @@ -2793,224 +2813,231 @@ msgstr "Erro ao reinstalar %s: %s\n" msgid "- Repair a flatpak installation" msgstr "– Corrige uma instalação do flatpak" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "A remover ref não implantada %s…\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "A ignorar ref não implantada %s…\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d/%d] A verificar %s…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "Simulação: " -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "A eliminar ref %s por causa de objetos em falta\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "A eliminar ref %s devido a objetos inválidos\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "A eliminar ref %s devido a %d\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "A verificar remotos...\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "O remoto %s para ref %s está em falta\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "O remoto %s para ref %s está desativado\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "A suprimir objetos\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "A apagar .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "A reinstalar refs\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "A reinstalar refs removidas\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "Ao remover appstream para %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "Ao implantar appstream para %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Modo repo: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "Resumos indexados: %s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "verdadeiro" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "falso" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "Sub-resumos: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "Versão do cache: %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "Deltas indexados: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Título: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Comentário: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Descrição: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Página inicial: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Ícone: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "ID de coleção: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Ramo padrão: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "URL de redirecionamento: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "ID de coleção de implementação: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Nome do autenticador: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "Instalação do autenticador: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "Hash de chave GPG: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "%zd ramos de resumo\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Instalado" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Transferir" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "Subconjuntos" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "Digest" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "Tamanho do histórico" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Mostra informações gerais sobre um repositório" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Lisa os ramos no repositório" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Mostra metadados para um ramo" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Mostra commits para um ramo" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "Mostra informações sobre os subconjuntos de repo" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "Limita as informações a subconjuntos com este prefixo" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "LOCALIZAÇÃO – Manutenção de repositório" @@ -3106,11 +3133,11 @@ msgstr "Usa PATH em vez do /app da aplicação" msgid "Use PATH instead of the runtime's /usr" msgstr "Usa PATH em vez de /usr do runtime" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "APLICAÇÃO [ARGUMENTO…] – Executa umA APLICAÇÃO" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "runtime/%s/%s/%s não instalado" @@ -3127,15 +3154,15 @@ msgstr "Remotos" msgid "Show the remotes" msgstr "Mostra os remotos" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "TEXTO – Pesquisa aplicações/runtimes remotos para texto" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "TEXTO deve ser especificado" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Nenhuma correspondência localizada" @@ -3216,6 +3243,7 @@ msgstr "" "flatpak-pin(1):\n" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Nada não usado para desinstalar\n" @@ -3240,6 +3268,7 @@ msgid "Warning: %s is not installed\n" msgstr "Aviso: %s não está instalado\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "" @@ -3280,6 +3309,7 @@ msgid "With --commit, only one REF may be specified" msgstr "Com --commit, apenas um REF pode ser especificado" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "A procurar por atualizações…\n" @@ -3289,27 +3319,28 @@ msgid "Unable to update %s: %s\n" msgstr "Não foi possível atualizar %s: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Nada para fazer.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "O remoto “%s” foi localizado em várias instalações:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Qual QUER usar (0 para abortar)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "Nenhum remoto escolhido para resolver “%s” que existe em várias instalações" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3318,13 +3349,13 @@ msgstr "" "Remoto “%s” não localizado\n" "Dica: Use flatpak remote-add para adicionar um remoto" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Remoto “%s” não localizado na instalação %s" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3333,139 +3364,130 @@ msgstr "" "Localizada ref “%s” em remoto “%s” (%s).\n" "Usar essa ref?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "Nenhuma ref escolhida para resolver ocorrências para “%s”" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "Refs similares localizadas para “%s” no remoto “%s” (%s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "Localizada ref instalada “%s” (%s). Isso está correto?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "Todas acima" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "Refs instaladas similares localizadas para “%s”:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"Localizada(s) ref(s) similares para “%s” em remoto “%s” (%s).\n" -"Usar este remoto?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "Remotos localizados com refs similares a “%s”:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "Nenhum remoto escolhido para resolver ocorrências para “%s”" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "Remotos localizados com refs similares a “%s”:" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "A atualizar dados de appstream para remoto %s de utilizador" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "A atualizar dados de appstream para remoto %s" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Erro ao atualizar" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "Remoto “%s” não localizado" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Sufixo ambíguo: “%s”." #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "Valores possíveis são :s[tart], :m[iddle], :e[nd] or :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Sufixo inválido: “%s”." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Coluna ambígua: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Coluna desconhecida: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Colunas disponíveis:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Mostra todas as colunas" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Mostra colunas disponíveis" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" "Anexe :s[tart], :m[iddle], :e[nd] or :f[ull] para alterar como reticências " "são aplicadas" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "Runtime exigido para %s (%s) localizado no remoto %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Quer instalá-lo?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "Runtime exigido para %s (%s) localizado em remotos:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Qual quer instalar (0 para abortar)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Configurando %s como novo remoto “%s”\n" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3477,7 +3499,7 @@ msgstr "" "O remoto deve ser mantido para instalações futuras?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3488,128 +3510,128 @@ msgstr "" " %s\n" "Configure este como o novo remoto “%s”" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Instalando…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "A instalar %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "A atualizar…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "A atualizar %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "A desinstalar…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "A desinstalar %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Info: %s foi ignorado" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, fuzzy, c-format msgid "Warning: %s%s%s already installed" msgstr "%s já instalado" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, fuzzy, c-format msgid "Error: %s%s%s already installed" msgstr "%s já instalado" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, fuzzy, c-format msgid "Warning: %s%s%s not installed" msgstr "Aviso: %s não está instalado\n" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, fuzzy, c-format msgid "Error: %s%s%s not installed" msgstr "%s/%s/%s não instalado" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, fuzzy, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "%s precisa de uma versão posterior do flatpak" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, fuzzy, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "%s precisa de uma versão posterior do flatpak" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 #, fuzzy msgid "Warning: Not enough disk space to complete this operation" msgstr "Espaço em disco insuficiente para concluir esta operação" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 #, fuzzy msgid "Error: Not enough disk space to complete this operation" msgstr "Espaço em disco insuficiente para concluir esta operação" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, fuzzy, c-format msgid "Warning: %s" msgstr "Aviso: " -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, fuzzy, c-format msgid "Error: %s" msgstr "Erro:" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, fuzzy, c-format msgid "Failed to install %s%s%s: " msgstr "Falha ao desinstalar %s para realizar rebase de %s: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, fuzzy, c-format msgid "Failed to update %s%s%s: " msgstr "Falha ao %s %s: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, fuzzy, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Falha ao desinstalar %s para realizar rebase de %s: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, fuzzy, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Falha ao desinstalar %s para realizar rebase de %s: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "Autenticação necessária para remoto “%s”\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Abrir navegador?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "A autenticação exigiu o remoto %s (domínio %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Palavra-passe" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, fuzzy, c-format msgid "" "\n" @@ -3617,7 +3639,7 @@ msgid "" "%s%s%s branch %s%s%s\n" msgstr "Info: (afixado) %s//%s está em fim de suporte, em favor de %s\n" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, fuzzy, c-format msgid "" "\n" @@ -3625,7 +3647,7 @@ msgid "" "%s%s%s\n" msgstr "Info: %s//%s está em fim de vida, em favor de %s\n" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, fuzzy, c-format msgid "" "\n" @@ -3634,113 +3656,109 @@ msgid "" msgstr "Info: %s//%s está em fim de vida, em favor de %s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, fuzzy, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Info: (fixado) %s//%s está em fim de vida, com motivo:\n" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, fuzzy, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Info: %s//%s está em fim de suporte, com motivo:\n" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, fuzzy, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Info: %s//%s está em fim de suporte, com motivo:\n" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, fuzzy, c-format msgid "Info: applications using this extension:\n" msgstr "Aplicações que usam este runtime:\n" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, fuzzy, c-format msgid "Info: applications using this runtime:\n" msgstr "Aplicações que usam este runtime:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "A atualizar para a versão após rebase\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "Falha ao realizar rebase de %s para %s: " -#: app/flatpak-cli-transaction.c:1009 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Falha ao desinstalar %s para realizar rebase de %s: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, fuzzy, c-format msgid "New %s%s%s permissions:" msgstr "Novas %s permissões:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, fuzzy, c-format msgid "%s%s%s permissions:" msgstr "%s permissões:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Aviso: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Op" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "parcial" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Prosseguir com estas alterações para a instalação de utilizador?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Prosseguir com essas alterações para a instalação da sistema?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Prosseguir com essas alterações ao %s?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Alterações concluídas." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Desinstalação concluída." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Instalação concluída." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Atualização concluída." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Houve um ou mais erros" @@ -4051,7 +4069,7 @@ msgstr "" "Flatpak podem não aparecer na sua área de trabalho até que a sessão seja " "reiniciada." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." @@ -4060,29 +4078,29 @@ msgstr "" "instalação do utilizador, ou use o shell como root para operar na instalação " "do utilizador-root." -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" "Várias instalações especificadas para um comando que trabalha em uma " "instalação" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "Veja “%s --help”" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "'%s' não é um comando do flatpak. Quis dizer '%s%s'?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "“%s” não é um comando do flatpak" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Nenhum comando especificado" @@ -4145,16 +4163,16 @@ msgstr "Aviso: Falha ao %s %s: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Erro: Falha ao %s %s: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s já instalado" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s não instalado" @@ -4183,59 +4201,55 @@ msgstr "Info: %s está em fim de vida, com motivo: %s\n" msgid "Failed to rebase %s to %s: %s\n" msgstr "Falha ao realizar rebase de %s para %s: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Falha ao desinstalar %s para rebase de %s: %s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "Nenhum autenticador configurador para remoto “%s”" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Tipo de partilha desconhecida %s, tipos válidos são: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Tipo de política desconhecida %s, tipos válidos são: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Nome de dbus inválido %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Tipo de socket desconhecido %s, tipos válidos são: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Tipo de dispositivo desconhecido %s, tipos válidos são: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Tipo de recurso desconhecido %s, tipos válidos são: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "A localização do sistema de ficheiros “%s” contém “..”" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" "--filesystem=/ não está disponível, use --filesystem=host para um resultado " "similar" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4244,185 +4258,219 @@ msgstr "" "Localização de sistema de ficheiros desconhecida %s, localizações válidas " "são: host, host-os, host-etc, home, xdg-*[/…], ~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Formato de env inválido %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "O nome de variável de ambiente não pode conter “=”: %s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" "Os argumentos de --add-policy devem estar no formato SUBSISTEMA.CHAVE=VALOR" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "os valores de --add-policy não podem iniciar com “!”" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -"Os argumentos de --remove-policy devem estar no formato SUBSISTEMA." -"CHAVE=VALOR" +"Os argumentos de --remove-policy devem estar no formato " +"SUBSISTEMA.CHAVE=VALOR" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "Os valores de --remove-policy não podem iniciar com “!”" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Partilha com o host" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "PARTILHA" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Desfaz partilha com o host" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Expõe o socket para a aplicação" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "SOCKET" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Não expõe o socket para a aplicação" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Expõe o dispositivo para a aplicação" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "DISPOSITIVO" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Não expõe o dispositivo para a aplicação" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Permite a funcionalidade" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "FUNCIONALIDADE" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Não permite funcionalidade" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "" "Expõe o sistema de ficheiros para a aplicação (:ro para apenas leitura)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "SISTEMA_DE_FICHEIROS[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Não expõe o sistema de ficheiros para a aplicação" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "SISTEMA_DE_FICHEIROS" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Define uma variável de ambiente" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VAR=VALOR" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "Lê as variáveis de ambiente no formato env -0 do FD" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "FD" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "Remove a variável do ambiente" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "VAR" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Permite a aplicação ter um nome no barramento de sessão" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "NOME_DBUS" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Permite a aplicação falar com um nome no barramento de sessão" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "Proíbe a aplicação de falar com um nome no barramento de sessão" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Permite a aplicação ter um nome no barramento de sistema" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Permite a aplicação falar com um nome no barramento de sistema" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "Proíbe a aplicação de falar com um nome no barramento de sistema" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Permite a aplicação ter um nome no barramento de sistema" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Adiciona uma opção de política genérica" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "SUBSISTEMA.CHAVE=VALOR" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Remove uma opção de política genérica" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "Persiste o subcaminho do diretório pessoal" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "ARQUIVO" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Persiste o subcaminho do diretório pessoal" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Não exige uma sessão em execução (sem criação de cgroups)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4431,426 +4479,423 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, fuzzy, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "Não foi possível criar um diretório temporário em %s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "O ID de coleção “%s” configurado não está no ficheiro de resumo" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Não foi possível carregar resumo do remoto %s: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "Ref inexistente “%s” no remoto %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 -#, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 +#, fuzzy, c-format +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "Nenhuma entrada para %s no cache de flatpak do sumário do remoto '%s' " -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "Nenhum sumário ou cache do Flatpak disponível para o remoto %s" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "Nenhuma entrada para %s no cache de resumo do remoto “%s” " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Faltando xa.data no resumo para %s remoto" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Versão de resumo %d não suportada para %s remoto" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "Índice de OCI remoto tem nenhuma uri de registro" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Não foi possível localizar o ref %s no remoto %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "A imagem não é um manifesto" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" "O commit não tem solicitação de ref “%s” nos metadados de associação de ref" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "O ID de coleção “%s” configurado não está nos metadados de associação" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" "Não foi possível localizar a última soma de verificação para o ref %s no " "remoto %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" "Nenhuma entrada para %s no cache esparso de flatpak do resumo do remoto %s" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "Metadados do commit para %s não correspondem aos metadados esperados" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "Não foi possível conectar ao barramento de sistema" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "Instalação do utilizador" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "Instalação do sistema (%s)" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Nenhuma substituição localizada para %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "%s (commit %s) não instalado" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "Erro ao analisar o ficheiro de flatpakrepo de sistema para %s: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Ao abrir o repositório %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "A chave de configuração %s não está definida" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "Nenhum padrão %s atual correspondendo a %s" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "Nenhum commit de appstream para implementar" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "Não foi possível obter de remoto sem gpg verificada e não confiado" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" "Sem suporte a dados extras para instalações de sistema local sem gpg " "verificada" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Soma de verificação inválida para uri dados extras %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Nome vazio para uri de dados extras %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Sem suporte à uri de dados extras %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Falha ao carregar extra-data local %s: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Tamanho inválido para extra-data %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "Enquanto baixava %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Tamanho inválido para dados extras %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Checksum inválida para dados extras %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s commit %s já está instalado" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "Enquanto executava pull de %s a partir do remoto %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "Assinaturas GPG localizadas, mas nenhuma está no chaveiro de confiadas" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "O commit para “%s” tem nenhuma associação de ref" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "O commit para “%s” não está nos refs limites esperados: %s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "Apenas aplicações podem ser atualizados" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Memória insuficiente" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Falha ao ler do ficheiro exportado" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Erro ao ler o ficheiro xml de tipo mime" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Ficheiro inválido de xml de tipo mim" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "O ficheiro de serviço D-Bus “%s” tem um nome errado" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "Exec com argumento inválido %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "Enquanto obtinha metadados destacados: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "Dados extras em falta nos metadados destacados" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "Enquanto criava extradir: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Soma de verificação inválida para dados extras" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Tamanho inválido para dados extras" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "Enquanto escrevia o ficheiro de dados extras “%s”: " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "Dados extras %s em falta nos metadados destacados" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "script apply_extra falhou, status de saída %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "Instalar %s não é permitido pela política definida pelo administrador" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "Enquanto tentava resolver ref %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s não está disponível" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Não foi possível criar um diretório de deploy" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Falha ao ler commit %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "Enquanto tentava fazer checkout de %s para %s: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "Enquanto tentava fazer checkout do subcaminho de metadados: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "Enquanto tentava fazer checkout do subcaminho “%s”: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Enquanto tentava remover diretório extra existente: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Enquanto tentava aplicar dados extras: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Ref de commit inválido %s: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "Ref implementado %s não coincide com o commit (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "O ramo do ref implementado %s não coincide com o commit (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s ramo %s já está instalado" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "" "Não foi possível desmontar o sistema de ficheiros revokefs-fuse em %s: " -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Essa versão de %s já está instalada" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "Não é possível alterar remoto durante instalação de pacote" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "" "Não é possível atualizar para um commit específico sem permissões de root" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "Não foi possível remover %s, pois é necessário para: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s ramo %s não está instalado" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "%s commit %s não instalado" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "A supressão de repositório falhou: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "Falha ao carregar o filtro “%s”" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "Falha ao analisar o filtro “%s”" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "Falha ao escrever cache de resumo: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "Nenhum resumo de oci em cache para o remoto “%s”" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "Nenhum resumo em cache para “%s” remoto" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "Soma de verificação inválida para resumo indexado %s lido de %s" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " @@ -4859,243 +4904,272 @@ msgstr "" "Listagem de remoto para %s não disponível; o servidor não tem ficheiro de " "resumo. Certifique-se que o URL passado para remote-add é válida." -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "Soma de verificação inválida para resumo indexado %s para “%s” remoto" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "Vários ramos disponíveis para %s, você deve especificar uma entre: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Sem combinações com %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Não foi possível localizar ref %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Erro ao pesquisar remoto %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Erro ao pesquisar repositório local: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s não instalado" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Não foi possível localizar instalação de %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "Formato de ficheiro inválido, grupo %s inexistente" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Versão inválida %s, há suporte apenas a 1" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "Formato de ficheiro inválido, nenhuma %s especificada" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "Formato de ficheiro inválido, chave gpg inválida" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "ID de coleção requer que a chave GPG seja fornecida" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Runtime %s, ramo %s já está instalado" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Aplicativo %s, ramo %s já está instalado" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" "Não é possível remover o remoto “%s” com a ref %s instalada (pelo menos)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Caractere inválido “/” no nome do remoto: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "Nenhuma configuração para o remoto %s especificado" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Ignorando exclusão de ref espelho (%s, %s)…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, fuzzy, c-format msgid "Unable to open path \"%s\": %s" msgstr "Não foi possível atualizar %s: %s\n" -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, fuzzy, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "Não foi possível criar o ficheiro %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, fuzzy, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "Não foi possível atualizar o link simbólico %s/%s" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "A string vazia não é um número" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "“%s” não é um número não assinado" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "O número “%s” está fora dos limites [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "Ref %s não instalado" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "Aplicativo %s não instalado" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "O remoto “%s” já existe" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "Conforme requisitado, %s foi obtida, mas não instalada" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "Não foi possível criar um diretório %s" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "Não foi possível travar %s" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "Não foi possível abrir o diretório %s" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "Não foi possível criar um diretório temporário em %s" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "Não foi possível criar o ficheiro %s" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Não foi possível atualizar o link simbólico %s/%s" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "Há suporte apenas à autenticação via token (Bearer)" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "Apenas reino na solicitação de autenticação" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "Reino inválido na solicitação de autenticação" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "Autorização falhou: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Autorização falhou" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "Status de resposta inesperada %d ao solicitar token: %s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "Resposta inválida à solicitação de autenticação" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "Formato de ficheiro delta inválido" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "Nenhuma chave gpg localizada com ID %s (homedir: %s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, fuzzy, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Não foi possível procurar o ID de chave %s: %d" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "Erro ao assinar o commit: %d" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Configuração de imagem OCI inválida" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Soma de verificação de camada errada, esperava %s, era %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "Nenhuma ref especificada para a imagem OCI %s" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Ref incorreta (%s) especificada para a imagem OCI %s, esperava %s" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5116,318 +5190,371 @@ msgstr "Baixando dados extras: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Baixando ficheiros: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Nome não pode estar vazio" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Nome não pode ser maior que 255 caracteres" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Nome não pode iniciar com um ponto" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Nome não pode iniciar com %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Nome não pode terminar com um ponto" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Apenas o último segmento de nome pode conter -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Segmento de nome não pode iniciar com %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Nome não pode conter %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "Nome deve conter pelo menos 2 pontos" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "A arq. não pode estar vazia" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "A arq. não pode conter %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Ramos não podem estar vazios" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Ramos não podem iniciar com %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Ramos não podem conter %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "Ref muito longa" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "Nome remoto inválido" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s não é uma aplicação ou runtime" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Número incorreto de componentes em %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "Nome inválido %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "Arq. inválida: %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Nome inválido %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "Arq. inválida: %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "Ramo inválido: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "Número incorreto de componentes no ref parcial %s" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr " plataforma de desenvolvimento" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr " plataforma" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr " base de aplicação" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr " símbolos de depuração" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr " código-fonte" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " traduções" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr " docs" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "ID inválido %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Nome inválido de remoto: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "Nenhum url especificado" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "" "Verificação GPG deve estar habilitada quando um ID de coleção for definido" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Falha ao abrir ficheiro de informação da aplicação" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Nenhuma fonte de dados extras" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Não foi possível criar um pipe de sincronização" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "%s inválido: Faltando grupo “%s”" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Falha ao sincronizar com proxy de dbus" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "%s inválido: Faltando chave “%s”" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Chave gpg inválida" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Erro ao copiar ícone 64x64 para componente %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Erro ao copiar ícone 128x128 para componente %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s está em fim de vida, a ignorar para appstream" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Nenhum dado de appstream para %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Pacote inválido, nenhuma ref nos metadados" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "A coleção “%s” de pacotes não correspondem à coleção “%s” do remoto" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Metadados no cabeçalho e aplicação estão inconsistentes" -#: common/flatpak-run.c:2207 +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "" "Nenhuma sessão de utilizador de systemd disponível, cgroups não disponível" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "Não foi possível alocar id de instância" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Falha ao abrir ficheiro flatpak-info: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Falha ao abrir ficheiro bwrapinfo.json: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "Falha ao escrever no descritor de ficheiro do ID de instância: %s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "Inicialização de seccomp falhou" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Falha ao adicionar arquitetura ao filtro seccomp: %s" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Falha ao adicionar arquitetura multiarch ao filtro seccomp: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, c-format msgid "Failed to block syscall %d: %s" msgstr "Falha ao bloquear a chamada de sistema %d: %s" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, c-format msgid "Failed to export bpf: %s" msgstr "Falha ao exportar bpf: %s" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "Falha ao abrir “%s”" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ldconfig falhou, status de saída %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "Não foi possível abrir o ld.so.cache gerado" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" "A execução de %s não é permitida pela política definida pelo administrador" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" "“flatpak run” não se destina a ser executado como `sudo flatpak run`, use " "`sudo -i` ou `su -l` no lugar e invoque “flatpak run” de dentro do novo " "shell." -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "Falha ao migrar de %s: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" "Falha ao migrar o diretório de dados antigo %s da aplicação para o novo nome " "%s: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Falha ao criar link simbólico ao migrar %s: %s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Falha ao abrir ficheiro de informação da aplicação" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Não foi possível criar um pipe de sincronização" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Falha ao sincronizar com proxy de dbus" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Aviso: Problema ao procurar por refs relacionadas: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "A aplicação %s requer o runtime %s, que não foi localizado" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "A aplicação %s requer o runtime %s, que não está instalado" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "Não foi possível desinstalar %s, o qual é necessário para %s" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Remoto %s desativado, a ignorar atualização de %s" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s já está instalado" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s já está instalada pelo remoto %s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr ".flatpakref inválido: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "Erro ao atualizar metadados de remoto para “%s”: %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " @@ -5436,55 +5563,55 @@ msgstr "" "Aviso: Tratando erro de obtenção de remoto como não fatal, já que %s já está " "instalado: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "Nenhum autenticador instalado para remoto “%s”" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "Falha ao obter tokens para ref: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "Falha ao obter tokens para ref" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 #, fuzzy msgid "any remote" msgstr "Remoto" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "URL de Flatpakrepo %s não é ficheiro, HTTP ou HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "Não foi possível carregar o ficheiro dependente %s: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr ".flatpakrepo inválido: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "Transação já executada" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." @@ -5492,16 +5619,16 @@ msgstr "" "Recusando-se a operar em uma instalação de utilizador como root! Isso pode " "levar à propriedade incorreta do ficheiro e a erros de permissão." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Abortado pelo utilizador" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "Ignorando %s por causa do erro anterior" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "Abortado devido a falha (%s)" @@ -5548,137 +5675,113 @@ msgstr "" msgid "URI is not absolute, and no base URI was provided" msgstr "" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "Glob não pode corresponder aplicações" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" +msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "Glob vazio" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "Número excessivo de argumentos no glob" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "ID inválido %s: %s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" -msgstr "Caractere de glob “%c” inválido" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" -msgstr "Faltando glob na linha %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" -msgstr "Texto ao final na linha %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "na linha %d" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "Palavra inesperada “%s” na linha %d" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "%s inválido: Faltando grupo “%s”" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "%s inválido: Faltando chave “%s”" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Chave gpg inválida" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Nenhuma fonte de dados extras" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Erro ao copiar ícone 64x64 para componente %s: %s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Erro ao copiar ícone 128x128 para componente %s: %s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s está em fim de vida, a ignorar para appstream" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "Glob não pode corresponder aplicações" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Nenhum dado de appstream para %s: %s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Glob vazio" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "Pacote inválido, nenhuma ref nos metadados" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "Número excessivo de argumentos no glob" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "A coleção “%s” de pacotes não correspondem à coleção “%s” do remoto" - -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "Metadados no cabeçalho e aplicação estão inconsistentes" +msgid "Invalid glob character '%c'" +msgstr "Caractere de glob “%c” inválido" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "Configuração de imagem OCI inválida" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "Faltando glob na linha %d" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "Soma de verificação de camada errada, esperava %s, era %s" +msgid "Trailing text on line %d" +msgstr "Texto ao final na linha %d" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "Nenhuma ref especificada para a imagem OCI %s" +msgid "on line %d" +msgstr "na linha %d" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "Ref incorreta (%s) especificada para a imagem OCI %s, esperava %s" +msgid "Unexpected word '%s' on line %d" +msgstr "Palavra inesperada “%s” na linha %d" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "Argumento de require-flatpak inválido %s" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s precisa de uma versão posterior do flatpak (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "A string vazia não é um número" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "“%s” não é um número não assinado" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "O número “%s” está fora dos limites [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "Não é um remoto OCI, em falta summary.xa.oci-repository" @@ -5691,42 +5794,46 @@ msgstr "Não é um remoto OCI" msgid "Invalid token" msgstr "Token inválido" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "Não foi localizado suporte a portal" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Negar" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Atualizar" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "Atualizar %s?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "A aplicação quer atualizar-se si própria." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" "Acesso a atualização pode ser alterado a qualquer momento a partir das " "configurações de privacidade." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "Atualização de aplicação não permitida" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "Sem suporte à autoatualização, nova versão requer novas permissões" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "Atualização encerrada inesperadamente" @@ -5948,6 +6055,30 @@ msgstr "" "Autenticação é necessária para instalar software que está restrito por sua " "política de controlo parental" +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "Localizada(s) ref(s) similares para “%s” em remoto “%s” (%s).\n" +#~ "Usar este remoto?" + +#, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "Nenhuma entrada para %s no cache de resumo do remoto “%s” " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Falha ao desinstalar %s para realizar rebase de %s: " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Falha ao desinstalar %s para rebase de %s: %s\n" + +#, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Não foi possível abrir o diretório %s" + #~ msgid "install" #~ msgstr "instalar" diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo deleted file mode 100644 index 2961b46ee215e8445b160edfc7241fb2c6e8e337..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 113399 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°DSUw>;6#mv)14-w#R;E1|+U0V-eDLWOrf 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, 2017. # Bruno Lopes , 2020-2021. # Matheus Barbosa , 2022. -# Rafael Fontenelle , 2017-2022. +# Rafael Fontenelle , 2017-2024. # msgid "" msgstr "" "Project-Id-Version: flatpak main\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" -"PO-Revision-Date: 2022-09-29 10:37-0300\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2024-07-22 12:56-0300\n" "Last-Translator: Rafael Fontenelle \n" -"Language-Team: Brazilian Portuguese \n" +"Language-Team: Brazilian Portuguese \n" "Language: pt_BR\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1)\n" -"X-Generator: Gtranslator 42.0\n" +"X-Generator: Gtranslator 46.0\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Exporta runtime em vez do aplicativo" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Arquitetura para a qual será empacotada" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARQUITETURA" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Url para o repo" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Url para o arquivo de flatpakrepo de runtime" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Adiciona uma chave GPG do ARQUIVO (- para stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "ARQUIVO" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "ID da chave GPG para assinar a imagem OCI" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "ID-CHAVE" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "ID-CHAVE" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "Diretório do GPG para usar quando estiver procurando por chaveiros" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "HOMEDIR" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "Commit OSTree para criar um pacote delta de" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "COMMIT" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Exporta a imagem oci em vez do pacote flatpak" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -126,58 +126,58 @@ msgstr "" "LOCALIZAÇÃO ARQUIVO NOME [RAMO] – Cria um único arquivo de pacote de um " "repositório local" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "LOCALIZAÇÃO, ARQUIVO e NOME devem ser especificados" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Número excessivo de argumentos" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "“%s” não é um repositório válido" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "“%s” não é um repositório válido: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "“%s” não é um nome válido: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "“%s” não é um nome de ramo válido: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -212,7 +212,7 @@ msgstr "DIR" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Onde procurar por diretório de sdk personalizado (padrão é “usr”)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Usa um arquivo alternativo para os metadados" @@ -232,104 +232,105 @@ msgstr "Registra o log das chamadas de barramento de sessão" msgid "Log system bus calls" msgstr "Registra o log das chamadas de barramento de sistema" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "DIRETÓRIO [COMANDO [ARGUMENTO…]] – Compila no diretório" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "DIRETÓRIO deve ser especificado" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "Diretório de compilação %s não inicializado, use flatpak build-init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "metadados inválido, não é aplicativo ou runtime" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "Nenhum ponto de extensão correspondendo %s em %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Faltando “=” na opção de montagem associativa “%s”" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Não foi possível iniciar o aplicativo" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Diretório de repositório fonte" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "SRC-REPO" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Ref de repositório fonte" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "SRC-REF" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Assunto em uma linha" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "ASSUNTO" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Descrição completa" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "CORPO" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Atualiza o ramo de appstream" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Atualiza o ramo de appstream" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Não atualiza o sumário" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "ID da chave GPG para assinar o commit" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "Marca a compilação como fim de vida" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "MOTIVO" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -337,372 +338,377 @@ msgstr "" "Marca refs correspondentes ao prefixo de IDANTIGO como fim de vida, para " "serem substituídos com o IDNOVO dado" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "IDANTIGO=IDNOVO" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "Define o tipo de token necessário para instalar este commit" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "VALOR" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "Sobrepõe o carimbo de tempo do commit (NOW para o tempo atual)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "CARIMBO-DE-TEMPO" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "Não gera um índice de resumo" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "DST-REPO [DST-REF…] – Faz um novo commit de commits existentes" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "DST-REPO deve ser especificado" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "Se --src-repo não for especificado, exatamente uma ref destino deve ser " "especificado" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" "Se --src-ref for especificado, exatamente uma ref destino deve ser " "especificado" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "--src-repo ou --src-ref devem ser especificados" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" "Formato de argumento inválido para o uso de --end-of-life-" "rebase=IDANTIGO=IDNOVO" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "Nome inválido %s em --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "Não foi possível analisar “%s”" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "Não foi possível fazer commit de commit fonte parcial" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: nenhuma alteração\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Arquitetura alvo da exportação (deve ser compatível com o hospedeiro)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Faz commit de runtime (/usr), não /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Usa o dicionário alternativo para os arquivo" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "SUBDIR" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Arquivos para excluir" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "PADRÃO" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Arquivos excluídos para incluir" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "Marca a compilação como fim de vida, a ser substituída com o ID dado" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Sobrepõe o carimbo de tempo do commit" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "ID de coleção" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "AVISO: Erro ao executar desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "AVISO: Erro ao ler de desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "AVISO: Falha ao validar o arquivo desktop %s: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "AVISO: Não foi possível localizar a chave Exec em %s: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "AVISO: Binário não localizado para a linha Exec em %s: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "AVISO: Ícone não correspondendo a id do aplicativo no %s: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "AVISO: Ícone referenciado no arquivo desktop, mas não exportado: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Tipo de uri inválida %s, há suporte apenas a http/https" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "" "Não foi possível localizar o nome base em %s, especifique explicitamente um " "nome base" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "Nenhuma barra permitida no nome de dados extras" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Formato inválido para a soma de verificação sha256: “%s”" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Tamanhos zerado de dados extras sem suporte" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "" "LOCALIZAÇÃO DIRETÓRIO [RAMO] – Cria um repositório de um diretório de " "compilação" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "LOCALIZAÇÃO e DIRETÓRIO devem ser especificados" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "“%s” não é um ID de coleção válido: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Nenhum nome especificado nos metadados" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Commit: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Metadados totais: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Metadados escritos: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Conteúdo total: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Conteúdo escrito: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Conteúdo de bytes escritos:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Comando para definir" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "COMANDO" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Versão do Flatpak para exigir" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "MAIOR.MENOR.MICRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Não processa exportações" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Info de dados extras" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Adiciona info do ponto de extensão" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NOME=VARIÁVEL[=VALOR]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Remove info do ponto de extensão" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NOME" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Define a prioridade da extensão (apenas para extensões)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "VALOR" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Altera o sdk usado para o aplicativo" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Altera o runtime usado para o aplicativo" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "RUNTIME" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Define a opção de metadados genérica" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GRUPO=CHAVE[=VALOR]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Não herda permissões do runtime" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "Não exportando %s, extensão errada\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "Não exportando %s, nome de arquivo de exportação não permitido\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "Exportando %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Mais de um executável localizado\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "Usando %s como comando\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Nenhum executável localizado\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Argumento --require-version inválido: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "Elementos insuficientes no argumento de --extra-data %s" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -711,7 +717,7 @@ msgstr "" "Elementos insuficientes no argumento de --metadata %s, formato deve ser " "GRUPO=CHAVE[=VALOR]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -721,63 +727,64 @@ msgstr "" "Elementos insuficientes no argumento de --extension %s, formato deve ser " "NOME=VAR[=VALOR]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "Nome de extensão inválido %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "DIRETÓRIO – Finaliza um diretório de compilação" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Diretório de compilação %s não inicializado" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Diretório de compilação %s já finalizado" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Por favor, reveja os arquivos exportados e os metadados\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Sobrepõe a ref usada para o pacote importado" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REF" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Importa a imagem oci em vez do pacote flatpak" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Ref “%s” não localizado no registro" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "Várias imagens no registro, especifique uma ref com --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "Importando %s (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "" "LOCALIZAÇÃO ARQUIVO – Importa um arquivo de pacote para um repositório local" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "LOCALIZAÇÃO e ARQUIVO devem ser especificados" @@ -892,88 +899,88 @@ msgstr "“%s” não é um nome de aplicativo válido: %s" msgid "Build directory %s already initialized" msgstr "Diretório de compilação %s já inicializado" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Arquitetura para a qual será instalada" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Procura pelo runtime com o nome especificado" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "LOCALIZAÇÃO [ID [RAMO]] – Assina um aplicativo ou runtime" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "LOCALIZAÇÃO deve ser especificada" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Nenhum id de chave gpg especificado" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Redireciona esse repositório a uma nova URL" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Um nome legal para usar para este repositório" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "TÍTULO" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "Um comentário de uma linha para este repositório" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "COMENTÁRIO" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "Uma descrição de parágrafo completo para este repositório" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "DESCRIÇÃO" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "URL de um website para este repositório" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "URL de um ícone para este repositório" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Ramo padrão para usar para este repositório" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "RAMO" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "ID-COLEÇÃO" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" @@ -981,119 +988,122 @@ msgstr "" "Implementa permanentemente ID de coleção em configurações remotas de " "cliente, apenas para suporte a download local" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" "Implementa permanentemente ID de coleção em configurações remotas de cliente" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Nome do autenticador para este repositório" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "Instala automaticamente um autenticador para este repositório" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "Não instala automaticamente um autenticador para este repositório" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Opção do autenticador" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "CHAVE=VALOR" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Importa nova chave pública GPG padrão do ARQUIVO" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "ID da chave GPG para assinar o sumário" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Gera arquivos delta" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Não atualiza o ramo de appstream" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "Máximo de trabalhos paralelos ao criar deltas (padrão: NUMCPUs)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "NUM-TRABALHOS" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "Não cria deltas correspondendo a refs" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Suprime objetos não usados" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "Suprime, mas não remove nada" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "Atravessa apenas NÍVEL pais para cada commit (padrão: -1=infinito)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "NÍVEL" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Gerando delta: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Gerando delta: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Falha ao gerar delta %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Falha ao gerar delta %s (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "LOCALIZAÇÃO – Atualiza metadados de um repositório" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Atualizando ramo do appstream\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Atualizando resumo\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Objetos totais: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Nenhum objeto alcançável\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "%u objetos excluídos, %s liberado\n" @@ -1165,25 +1175,25 @@ msgstr "Pode usar apenas um entre --list, --get, --set ou --unset" msgid "Must specify one of --list, --get, --set or --unset" msgstr "Deve-se especificar um entre --list, --get, --set ou --unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Procura pelo aplicativo com o nome especificado" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Arquitetura para copiar" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "DEST" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "Permite commits parciais no repositório criado" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " @@ -1192,12 +1202,12 @@ msgstr "" "Aviso: A ref “%s” relacionada está parcialmente instalada. Use --allow-" "partial para suprimir esta mensagem.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "Aviso: Omitindo a ref “%s” relacionada porque não está instalada.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1206,12 +1216,12 @@ msgstr "" "Aviso: Omitindo a ref “%s” relacionada porque seu remoto “%s” não tem um " "conjunto de ID de coleção.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "Aviso: Omitindo a ref “%s” relacionada porque é extra-data.\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1220,32 +1230,32 @@ msgstr "" "O remoto “%s” não tem um conjunto de ID de coleção, necessário para a " "distribuição P2P de “%s”." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "Aviso: Omitindo a ref “%s” (runtime de “%s”) porque é extra-data.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "CAMINHO-MONT [REF…] – Copia apps ou runtimes em mídia removível" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "CAMINHO-MONT e REF devem ser especificados" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" "Ref “%s” localizada em várias instalações: %s. Você deve especificar uma." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" "As refs devem estar todas na mesma instalação (localizadas em %s e %s)." -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " @@ -1254,18 +1264,18 @@ msgstr "" "Aviso: A ref “%s” está parcialmente instalada. Use --allow-partial para " "suprimir esta mensagem.\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "A ref “%s” instalada é extra-data e não pode ser distribuída offline" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" "Aviso: Não foi possível atualizar metadados do repo para remoto “%s”: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1273,7 +1283,7 @@ msgstr "" "arquitetura “%s”: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1282,7 +1292,7 @@ msgstr "" "arquitetura “%s”: %s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1357,19 +1367,20 @@ msgstr "ARQUIVO – Obtém informações sobre um arquivo exportado" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Não exportado\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Quais informações mostrar" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "CAMPO,…" @@ -1388,7 +1399,7 @@ msgid "Show the document path" msgstr "Mostra o caminho do documento" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Origem" @@ -1402,7 +1413,7 @@ msgid "Show applications with permission" msgstr "Mostra aplicativos com permissão" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Permissões" @@ -1531,12 +1542,12 @@ msgid "Show the kind of change" msgstr "Mostra o tipo de alteração" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Ref" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Mostra a ref" @@ -1545,24 +1556,24 @@ msgid "Show the application/runtime ID" msgstr "Mostra o ID de aplicativo/runtime" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Arq." #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Mostra a arquitetura" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Ramo" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Mostra o ramo" @@ -1574,7 +1585,7 @@ msgstr "Instalação" msgid "Show the affected installation" msgstr "Mostra a instalação afetada" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Remoto" @@ -1583,7 +1594,7 @@ msgid "Show the remote" msgstr "Mostra o remoto" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Commit" @@ -1603,7 +1614,7 @@ msgstr "Mostra o commit anterior" msgid "Show the remote URL" msgstr "Mostra o ID do remoto" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Usuário" @@ -1620,7 +1631,7 @@ msgid "Show the tool that was used" msgstr "Mostra a ferramenta que foi usada" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Versão" @@ -1648,10 +1659,12 @@ msgid " - Show history" msgstr " – Mostra histórico" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "Falha ao analisar a opção --since" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "Falha ao analisar a opção --until" @@ -1667,11 +1680,11 @@ msgstr "Mostra instalações do sistema" msgid "Show specific system-wide installations" msgstr "Mostra instalações específicas do sistema" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Mostra a ref" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Mostra o commit" @@ -1683,15 +1696,15 @@ msgstr "Mostra a origem" msgid "Show size" msgstr "Mostra o tamanho" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Mostra os metadados" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Mostra o runtime" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Mostra o sdk" @@ -1703,8 +1716,8 @@ msgstr "Mostra as permissões" msgid "Query file access" msgstr "Consulta o acesso a arquivos" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1723,7 +1736,7 @@ msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "" "NOME [RAMO] – Obtém informações sobre um aplicativo e/ou um runtime instalado" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "NOME deve ser especificado" @@ -1732,85 +1745,87 @@ msgstr "NOME deve ser especificado" msgid "ref not present in origin" msgstr "ref não presente na origem" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Aviso: O commit tem nenhum metadado de flatpak\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Ref:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Arq.:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Ramo:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Versão:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Licença:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Coleção:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Instalação:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Instalado:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Runtime:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Data:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Assunto:" @@ -1823,15 +1838,15 @@ msgid "Latest commit:" msgstr "Último commit:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Commit:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Pai:" @@ -1840,14 +1855,14 @@ msgid "Alt-id:" msgstr "Alt-id:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "Fim de vida:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "Rebase de fim de vida:" @@ -1856,147 +1871,148 @@ msgid "Subdirectories:" msgstr "Subdiretórios:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Extensões:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Origem:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Subcaminhos:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "sem mantenedor" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "desconhecido" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Não faz pull, apenas instala do cache local" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Não implementa (deploy), apenas baixa para o cache local" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Não instala refs relacionadas" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Não verifica/instala dependências de runtime" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "Não fixar instalações explícitas automaticamente" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Não usa deltas estáticos" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "Adicionalmente, instala o SDK usado para compilar as refs dadas" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" "Adicionalmente, instala as informações de depuração para as refs dadas e " "suas dependências" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Presume LOCALIZAÇÃO como sendo um pacote de arquivo único .flatpak" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Presume LOCALIZAÇÃO como sendo uma descrição de aplicativo .flatpakref" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "Verifica assinaturas de pacote com chave GPG do ARQUIVO (- para stdin)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Instala apenas esse subcaminho" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Responde sim automaticamente para todas as perguntas" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Desinstala primeiro, se já instalado" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "Produz saída mínima e não faz perguntas" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Atualiza instalação se já instalada" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "Usa este repositório local para downloads locais" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Arquivo do pacote deve ser especificado" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Não há suporte a pacotes remotos" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Arquivo ou uri deve ser especificado" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "[LOCALIZAÇÃO/REMOTO] [REF…] – Instala aplicativos ou runtimes" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "Pelo menos um REF deve ser especificado" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Procurando por correspondências…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, c-format msgid "No remote refs found for ‘%s’" msgstr "Nenhuma ref de remoto localizada para “%s”" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Ramo inválido %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Nada corresponde a %s no repositório local para o remoto %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Nada corresponde a %s no remoto %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Ignorando: %s\n" @@ -2034,51 +2050,51 @@ msgstr "Lista aplicativos instalados" msgid "Arch to show" msgstr "Arquitetura para mostrar" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Lista todos as refs (incluindo localidade/depuração)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "Lista todos os aplicativos usando RUNTIME" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Nome" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Mostra o nome" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Descrição" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Mostra a descrição" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "ID de aplicativo" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Mostra o ID de aplicativo" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Mostra a versão" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Runtime" @@ -2086,7 +2102,7 @@ msgstr "Runtime" msgid "Show the used runtime" msgstr "Mostra o runtime usado" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Mostra o remoto origem" @@ -2098,7 +2114,7 @@ msgstr "Mostra a instalação" msgid "Active commit" msgstr "Commit ativo" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Mostra o commit ativo" @@ -2110,35 +2126,35 @@ msgstr "Último commit" msgid "Show the latest commit" msgstr "Mostra o último commit" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Tamanho instalado" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Mostra o tamanho instalado" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Opções" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Mostra as opções" -#: app/flatpak-builtins-list.c:179 -#, fuzzy, c-format +#: app/flatpak-builtins-list.c:178 +#, c-format msgid "Unable to load details of %s: %s" -msgstr "Não foi possível carregar metadados do remoto %s: %s" +msgstr "Não foi possível carregar detalhes de %s: %s" -#: app/flatpak-builtins-list.c:189 +#: app/flatpak-builtins-list.c:188 #, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Não foi possível inspecionar a versão atual de %s: %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " – Lista os aplicativos e/ou runtimes instalados" @@ -2150,7 +2166,7 @@ msgstr "Arquitetura para a qual será tornada atual" msgid "APP BRANCH - Make branch of application current" msgstr "APLICATIVO RAMO – Faz o ramo do aplicativo atual" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "APLICATIVO deve ser especificado" @@ -2175,10 +2191,12 @@ msgstr "" "padrões" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "Nenhum padrão mascarado\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Padrões mascarados:\n" @@ -2194,26 +2212,26 @@ msgstr "Mostra sobreposições existentes" msgid "[APP] - Override settings [for application]" msgstr "[APLICATIVO] – Sobrepõe as configurações [para um aplicativo]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABELA] [ID] – Lista permissões" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Tabela" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Objeto" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "App" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Dados" @@ -2272,10 +2290,12 @@ msgstr "" "padrões" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "Nenhum padrão fixado\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "Padrões fixados:\n" @@ -2351,125 +2371,125 @@ msgstr "Mostra se o aplicativo está em segundo plano" msgid " - Enumerate running sandboxes" msgstr " – Enumera as caixas de proteção em execução" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Faz nada se o remoto fornecido existir" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "" "LOCALIZAÇÃO especifica um arquivo de configuração, não a localização do repo" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Desabilita verificação GPG" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Marca o remoto como não enumerado" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Marca o remoto como não usar para dependências" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "Define prioridade (padrão 1, maior é mais prioritário)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORIDADE" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "O subconjunto nomeado a ser usado para este remoto" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "SUBCONJUNTO" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Um nome legal para usar para este remoto" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "Um comentário de uma linha para este remoto" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "Uma descrição de parágrafo completo para este remoto" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "URL para um website para este remoto" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "URL para um ícone para este remoto" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Ramo padrão para usar para este remoto" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Importa uma chave GPG do ARQUIVO (- para stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Define o caminho para o filtro local ARQUIVO" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Desabilita o remoto" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Nome do autenticador" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Instala automaticamente autenticador" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "Não instala automaticamente autenticador" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "Não segue o redirecionamento definido no arquivo de resumo" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "Não foi possível carregar a uri %s: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Não foi possível carregar o arquivo %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NOME LOCALIZAÇÃO – Adiciona um repositório remoto" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "Verificação GPG é exigida se coleções estiverem habilitadas" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "O remoto %s já existe" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Nome de autenticador inválido %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "Aviso: Não foi possível atualizar metadados extras para “%s”: %s\n" @@ -2496,60 +2516,60 @@ msgstr "Removê-las?" msgid "Can't remove remote '%s' with installed refs" msgstr "Não é possível remover o remoto “%s” com refs instaladas" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "Commit para mostrar informações" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Exibe log" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Mostra pai" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Usa caches locais mesmo se eles estiverem velhos" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "Lista apenas refs disponíveis como downloads locais" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " REMOTO REF – Mostra informações sobre um aplicativo ou runtime em um remoto" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "REMOTO e REF devem ser especificados" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Baixar:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "Histórico:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Commit:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Assunto:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Data:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Aviso: O commit %s tem nenhum metadado de flatpak\n" @@ -2578,7 +2598,7 @@ msgstr "Mostra a URL" msgid "Show the collection ID" msgstr "Mostra o ID da coleção" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "Subconjunto" @@ -2634,39 +2654,39 @@ msgstr "Mostra ícone" msgid " - List remote repositories" msgstr " – Lista repositórios remotos" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Mostra arquiteturas e ramos" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Mostra apenas runtimes" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Mostra apenas aplicativos" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Mostra apenas aqueles com atualizações disponíveis" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Limita a essa arquitetura (* para todas)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Mostra o runtime" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Tamanho baixado" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Mostra o tamanho baixado" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr " [REMOTO ou URI] – Mostra runtimes e aplicativos disponíveis" @@ -2795,224 +2815,231 @@ msgstr "Erro ao reinstalar %s: %s\n" msgid "- Repair a flatpak installation" msgstr "– Corrige uma instalação do flatpak" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Removendo ref não implantada %s…\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Ignorando ref não implantada %s…\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d/%d] Verificando %s…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "Simulação: " -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "Excluindo ref %s por causa de objetos faltantes\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "Excluindo ref %s devido a objetos inválidos\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "Excluindo ref %s devido a %d\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "Verificando remotos...\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "O remoto %s para ref %s está em falta\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "O remoto %s para ref %s está desabilitado\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "Suprimindo objetos\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "Apagando .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "Reinstalando refs\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "Reinstalando refs removidas\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "Ao remover appstream para %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "Ao implantar appstream para %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Modo repo: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "Resumos indexados: %s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "verdadeiro" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "falso" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "Sub-resumos: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "Versão do cache: %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "Deltas indexados: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Título: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Comentário: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Descrição: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Página inicial: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Ícone: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "ID de coleção: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Ramo padrão: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "URL de redirecionamento: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "ID de coleção de implementação: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Nome do autenticador: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "Instalação do autenticador: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "Hash de chave GPG: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "%zd ramos de resumo\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Instalado" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Baixar" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "Subconjuntos" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "Digest" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "Tamanho do histórico" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Mostra informações gerais sobre um repositório" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Lisa os ramos no repositório" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Mostra metadados para um ramo" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Mostra commits para um ramo" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "Exibe informações sobre os subconjuntos de repo" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "Limita as informações a subconjuntos com este prefixo" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "LOCALIZAÇÃO – Manutenção de repositório" @@ -3108,11 +3135,11 @@ msgstr "Usa PATH em vez do /app do aplicativo" msgid "Use PATH instead of the runtime's /usr" msgstr "Usa PATH em vez de /usr do runtime" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "APLICATIVO [ARGUMENTO…] – Executa um aplicativo" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "runtime/%s/%s/%s não instalado" @@ -3129,15 +3156,15 @@ msgstr "Remotos" msgid "Show the remotes" msgstr "Mostra os remotos" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "TEXTO – Pesquisa aplicativos/runtimes remotos para texto" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "TEXTO deve ser especificado" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Nenhuma correspondência localizada" @@ -3216,6 +3243,7 @@ msgstr "" "flatpak-pin(1):\n" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Nada não usado para desinstalar\n" @@ -3240,6 +3268,7 @@ msgid "Warning: %s is not installed\n" msgstr "Aviso: %s não está instalado\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "Nenhuma das refs especificadas estão instaladas" @@ -3280,6 +3309,7 @@ msgid "With --commit, only one REF may be specified" msgstr "Com --commit, apenas um REF pode ser especificado" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Procurando por atualizações…\n" @@ -3289,27 +3319,28 @@ msgid "Unable to update %s: %s\n" msgstr "Não foi possível atualizar %s: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Nada para fazer.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "O remoto “%s” foi localizado em várias instalações:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Qual você deseja usar (0 para abortar)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "Nenhum remoto escolhido para resolver “%s” que existe em várias instalações" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3318,13 +3349,13 @@ msgstr "" "Remoto “%s” não localizado\n" "Dica: Use flatpak remote-add para adicionar um remoto" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Remoto “%s” não localizado na instalação %s" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3333,139 +3364,130 @@ msgstr "" "Localizada ref “%s” em remoto “%s” (%s).\n" "Usar essa ref?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "Nenhuma ref escolhida para resolver ocorrências para “%s”" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "Refs similares localizadas para “%s” no remoto “%s” (%s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "Localizada ref instalada “%s” (%s). Isso está correto?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "Todas acima" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "Refs instaladas similares localizadas para “%s”:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"Localizada(s) ref(s) similares para “%s” em remoto “%s” (%s).\n" -"Usar esse remoto?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "Remotos localizados com refs similares a “%s”:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "Nenhum remoto escolhido para resolver ocorrências para “%s”" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "Remotos localizados com refs similares a “%s”:" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "Atualizando dados de appstream para remoto %s de usuário" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Atualizando dados de appstream para remoto %s" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Erro ao atualizar" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "Remoto “%s” não localizado" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Sufixo ambíguo: “%s”." #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "Valores possíveis são :s[tart], :m[iddle], :e[nd] or :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Sufixo inválido: “%s”." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Coluna ambígua: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Coluna desconhecida: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Colunas disponíveis:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Mostra todas as colunas" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Mostra colunas disponíveis" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" "Anexe :s[tart], :m[iddle], :e[nd] or :f[ull] para alterar como reticências " "são aplicadas" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "Runtime exigido para %s (%s) localizado no remoto %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Você deseja instalá-lo?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "Runtime exigido para %s (%s) localizado em remotos:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Qual você deseja instalar (0 para abortar)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Configurando %s como novo remoto “%s”\n" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3477,7 +3499,7 @@ msgstr "" "O remoto deve ser mantido para instalações futuras?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3488,126 +3510,126 @@ msgstr "" " %s\n" "Configure esse como o novo remoto “%s”" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Instalando…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Instalando %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Atualizando…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Atualizando %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Desinstalando…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Desinstalando %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Info: %s foi ignorado" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, c-format msgid "Warning: %s%s%s already installed" msgstr "Aviso: %s%s%s já instalado" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, c-format msgid "Error: %s%s%s already installed" msgstr "Erro: %s%s%s já instalado" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, c-format msgid "Warning: %s%s%s not installed" msgstr "Aviso: %s%s%s não está instalado" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, c-format msgid "Error: %s%s%s not installed" msgstr "Erro: %s%s%s não instalado" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "Aviso: %s%s%s precisa de uma versão posterior do flatpak" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "Erro: %s%s%s precisa de uma versão posterior do flatpak" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" msgstr "Aviso: Espaço em disco insuficiente para completar essa operação" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" msgstr "Erro: Espaço em disco insuficiente para completar essa operação" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, c-format msgid "Warning: %s" msgstr "Aviso: %s" -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, c-format msgid "Error: %s" msgstr "Erro: %s" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, c-format msgid "Failed to install %s%s%s: " msgstr "Falha ao instalar %s%s%s: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, c-format msgid "Failed to update %s%s%s: " msgstr "Falha ao atualizar %s%s%s: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Falha ao instalar o pacote %s%s%s: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Falha ao desinstalar %s%s%s: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "Autenticação necessária para remoto “%s”\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Abrir navegador?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "A autenticação exigiu o remoto %s (domínio %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Senha" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, c-format msgid "" "\n" @@ -3618,7 +3640,7 @@ msgstr "" "Info: (fixado) o runtime %s%s%s ramo %s%s%s chegou ao fim de vida, em favor " "de %s%s%s ramo %s%s%s\n" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, c-format msgid "" "\n" @@ -3629,7 +3651,7 @@ msgstr "" "Info: o runtime %s%s%s ramo %s%s%s chegou ao fim de vida, em favor de %s%s%s " "ramo %s%s%s\n" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, c-format msgid "" "\n" @@ -3641,7 +3663,7 @@ msgstr "" "%s%s%s ramo %s%s%s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, c-format msgid "" "\n" @@ -3651,7 +3673,7 @@ msgstr "" "Info: (fixado) o runtime %s%s%s ramo %s%s%s chegou ao fim de vida, com " "motivo:\n" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, c-format msgid "" "\n" @@ -3660,7 +3682,7 @@ msgstr "" "\n" "Info: o runtime %s%s%s ramo %s%s%s chegou ao fim de vida, com motivo:\n" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, c-format msgid "" "\n" @@ -3669,90 +3691,88 @@ msgstr "" "\n" "Info: o aplicativo %s%s%s ramo %s%s%s chegou ao fim de vida, com motivo:\n" -#: app/flatpak-cli-transaction.c:947 +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" msgstr "Info: aplicativos que usam este runtime:\n" -#: app/flatpak-cli-transaction.c:949 +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" msgstr "Info: aplicativos que usam este runtime:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "Substituir?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "Atualizando para a versão após rebase\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "Falha ao realizar rebase de %s para %s: " -#: app/flatpak-cli-transaction.c:1009 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Falha ao desinstalar %s para realizar rebase de %s: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, c-format msgid "New %s%s%s permissions:" msgstr "Novas permissões de %s%s%s:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, c-format msgid "%s%s%s permissions:" msgstr "Permissões de %s%s%s:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Aviso: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Op" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "parcial" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Prosseguir com essas alterações para a instalação de usuário?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Prosseguir com essas alterações para a instalação da sistema?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Prosseguir com essas alterações ao %s?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Alterações concluídas." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Desinstalação concluída." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Instalação concluída." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Atualização concluída." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Houve um ou mais erros" @@ -4063,7 +4083,7 @@ msgstr "" "Flatpak podem não aparecer em sua área de trabalho até que a sessão seja " "reiniciada." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." @@ -4072,29 +4092,29 @@ msgstr "" "instalação do usuário, ou use o shell como root para operar na instalação do " "usuário-root." -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" "Várias instalações especificadas para um comando que trabalha em uma " "instalação" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "Veja “%s --help”" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "“%s” não é um comando do flatpak. Você quis dizer “%s%s”?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "“%s” não é um comando do flatpak" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Nenhum comando especificado" @@ -4157,16 +4177,16 @@ msgstr "Aviso: Falha ao desinstalar %s: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Erro: Falha ao desinstalar %s: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s já instalado" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s não instalado" @@ -4195,59 +4215,55 @@ msgstr "Info: %s está em fim de vida, com motivo: %s\n" msgid "Failed to rebase %s to %s: %s\n" msgstr "Falha ao realizar rebase de %s para %s: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Falha ao desinstalar %s para rebase de %s: %s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "Nenhum autenticador configurador para remoto “%s”" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Tipo de compartilhamento desconhecido %s, tipos válidos são: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Tipo de política desconhecida %s, tipos válidos são: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Nome de dbus inválido %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Tipo de soquete desconhecido %s, tipos válidos são: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Tipo de dispositivo desconhecido %s, tipos válidos são: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Tipo de recurso desconhecido %s, tipos válidos são: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "A localização do sistema de arquivos “%s” contém “..”" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" "--filesystem=/ não está disponível, use --filesystem=host para um resultado " "similar" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4256,612 +4272,644 @@ msgstr "" "Localização de sistema de arquivos desconhecida %s, localizações válidas " "são: host, host-os, host-etc, home, xdg-*[/…], ~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Formato de env inválido %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "O nome de variável de ambiente não pode conter “=”: %s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" "Os argumentos de --add-policy devem estar no formato SUBSISTEMA.CHAVE=VALOR" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "os valores de --add-policy não podem iniciar com “!”" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -"Os argumentos de --remove-policy devem estar no formato SUBSISTEMA." -"CHAVE=VALOR" +"Os argumentos de --remove-policy devem estar no formato " +"SUBSISTEMA.CHAVE=VALOR" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "Os valores de --remove-policy não podem iniciar com “!”" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Compartilha com o host" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "COMPARTILHAR" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Desfaz compartilhamento com o host" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Expõe o soquete para o aplicativo" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "SOQUETE" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Não expõe o soquete para o aplicativo" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Expõe o dispositivo para o aplicativo" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "DISPOSITIVO" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Não expõe o dispositivo para o aplicativo" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Permite a funcionalidade" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "FUNCIONALIDADE" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Não permite funcionalidade" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "" "Expõe o sistema de arquivos para o aplicativo (:ro para somente leitura)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "SISTEMA_DE_ARQUIVOS[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Não expõe o sistema de arquivos para o aplicativo" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "SISTEMA_DE_ARQUIVOS" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Define uma variável de ambiente" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VAR=VALOR" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "Lê as variáveis de ambiente no formato env -0 do FD" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "FD" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "Remove a variável do ambiente" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "VAR" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Permite o aplicativo ter um nome no barramento de sessão" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "NOME_DBUS" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Permite o aplicativo falar com um nome no barramento de sessão" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "Proíbe o aplicativo de falar com um nome no barramento de sessão" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Permite o aplicativo ter um nome no barramento de sistema" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Permite o aplicativo falar com um nome no barramento de sistema" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "Proíbe o aplicativo de falar com um nome no barramento de sistema" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Permite o aplicativo ter um nome no barramento de sistema" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Adiciona uma opção de política genérica" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "SUBSISTEMA.CHAVE=VALOR" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Remove uma opção de política genérica" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "Persiste o subcaminho do diretório pessoal" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "ARQUIVO" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Persiste o subcaminho do diretório pessoal" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Não exige uma sessão em execução (sem criação de cgroups)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" -msgstr "" +msgstr "Não será substituído “%s” por tmpfs: %s" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" -msgstr "" +msgstr "Não será compartilhado “%s” com caixa de proteção: %s" #. Even if the error is one that we would normally silence, like #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" -msgstr "" +msgstr "Não será permitido acesso ao diretório pessoal: %s" -#: common/flatpak-context.c:2828 -#, fuzzy, c-format +#: common/flatpak-context.c:3150 +#, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" -msgstr "Não foi possível criar um diretório temporário em %s" +msgstr "" +"Não foi possível fornecer um diretório pessoal temporário no sandbox: %s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "O ID de coleção “%s” configurado não está no arquivo de resumo" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Não foi possível carregar resumo do remoto %s: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "Ref inexistente “%s” no remoto %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 #, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " -msgstr "Nenhuma entrada para %s no cache de flatpak do sumário do remoto “%s” " +msgid "No entry for %s in remote %s summary flatpak cache" +msgstr "Nenhuma entrada para %s no cache de flatpak do sumário do remoto %s" -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "Nenhum sumário ou cache do Flatpak disponível para o remoto %s" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "Nenhuma entrada para %s no cache de resumo do remoto “%s” " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Faltando xa.data no resumo para %s remoto" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Versão de resumo %d não suportada para %s remoto" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "Índice de OCI remoto tem nenhuma uri de registro" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Não foi possível localizar a ref %s no remoto %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "A imagem não é um manifesto" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" "O commit não tem solicitação de ref “%s” nos metadados de associação de ref" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "O ID de coleção “%s” configurado não está nos metadados de associação" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" "Não foi possível localizar a última soma de verificação para a ref %s no " "remoto %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" "Nenhuma entrada para %s no cache esparso de flatpak do resumo do remoto %s" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "Metadados do commit para %s não correspondem aos metadados esperados" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "Não foi possível conectar ao barramento de sistema" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "Instalação do usuário" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "Instalação do sistema (%s)" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Nenhuma substituição localizada para %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "%s (commit %s) não instalado" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "Erro ao analisar o arquivo de flatpakrepo de sistema para %s: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Ao abrir o repositório %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "A chave de configuração %s não está definida" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "Nenhum padrão %s atual correspondendo a %s" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "Nenhum commit de appstream para implementar" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "Não foi possível obter de remoto sem gpg verificada e não confiado" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" "Sem suporte a dados extras para instalações de sistema local sem gpg " "verificada" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Soma de verificação inválida para uri dados extras %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Nome vazio para uri de dados extras %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Sem suporte à uri de dados extras %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Falha ao carregar extra-data local %s: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Tamanho inválido para extra-data %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "Enquanto baixava %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Tamanho inválido para dados extras %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Soma de verificação inválida para dados extras %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s commit %s já está instalado" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "Enquanto executava pull de %s a partir do remoto %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "Assinaturas GPG localizadas, mas nenhuma está no chaveiro de confiadas" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "O commit para “%s” tem nenhuma associação de ref" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "O commit para “%s” não está nas refs limites esperados: %s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "Apenas aplicativos podem ser atualizados" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Memória insuficiente" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Falha ao ler do arquivo exportado" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Erro ao ler o arquivo xml de tipo mime" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Arquivo inválido de xml de tipo mim" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "O arquivo de serviço D-Bus “%s” tem um nome errado" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "Exec com argumento inválido %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "Enquanto obtinha metadados destacados: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "Dados extras faltando nos metadados destacados" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "Enquanto criava extradir: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Soma de verificação inválida para dados extras" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Tamanho inválido para dados extras" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "Enquanto escrevia o arquivo de dados extras “%s”: " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "Dados extras %s faltando nos metadados destacados" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "script apply_extra falhou, status de saída %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "Instalar %s não é permitido pela política definida pelo administrador" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "Enquanto tentava resolver ref %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s não está disponível" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Não foi possível criar um diretório de deploy" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Falha ao ler commit %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "Enquanto tentava fazer checkout de %s para %s: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "Enquanto tentava fazer checkout do subcaminho de metadados: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "Enquanto tentava fazer checkout do subcaminho “%s”: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Enquanto tentava remover diretório extra existente: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Enquanto tentava aplicar dados extras: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Ref de commit inválido %s: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "Ref implementado %s não coincide com o commit (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "O ramo da ref implementado %s não coincide com o commit (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s ramo %s já está instalado" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "Não foi possível desmontar o sistema de arquivos revokefs-fuse em %s: " -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Essa versão de %s já está instalada" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "Não é possível alterar remoto durante instalação de pacote" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "" "Não é possível atualizar para um commit específico sem permissões de root" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "Não foi possível remover %s, pois é necessário para: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s ramo %s não está instalado" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "%s commit %s não instalado" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "A supressão de repositório falhou: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "Falha ao carregar o filtro “%s”" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "Falha ao analisar o filtro “%s”" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "Falha ao escrever cache de resumo: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "Nenhum resumo de oci em cache para o remoto “%s”" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "Nenhum resumo em cache para “%s” remoto" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "Soma de verificação inválida para resumo indexado %s lido de %s" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " @@ -4870,243 +4918,273 @@ msgstr "" "Listagem de remoto para %s não disponível; o servidor não tem arquivo de " "resumo. Certifique-se que a URL passada para remote-add é válida." -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "Soma de verificação inválida para resumo indexado %s para “%s” remoto" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "Vários ramos disponíveis para %s, você deve especificar uma entre: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Sem combinações com %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Não foi possível localizar ref %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Erro ao pesquisar remoto %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Erro ao pesquisar repositório local: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s não instalado" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Não foi possível localizar instalação de %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "Formato de arquivo inválido, grupo %s inexistente" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Versão inválida %s, há suporte apenas a 1" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "Formato de arquivo inválido, nenhuma %s especificada" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "Formato de arquivo inválido, chave gpg inválida" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "ID de coleção requer que a chave GPG seja fornecida" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Runtime %s, ramo %s já está instalado" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Aplicativo %s, ramo %s já está instalado" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" "Não é possível remover o remoto “%s” com a ref %s instalada (pelo menos)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Caractere inválido “/” no nome do remoto: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "Nenhuma configuração para o remoto %s especificado" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Ignorando exclusão de ref espelho (%s, %s)…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" -msgstr "" +msgstr "Um caminho absoluto é exigido" -#: common/flatpak-exports.c:923 -#, fuzzy, c-format +#: common/flatpak-exports.c:933 +#, c-format msgid "Unable to open path \"%s\": %s" -msgstr "Não foi possível atualizar %s: %s\n" +msgstr "Não foi possível abrir o caminho “%s”: %s" -#: common/flatpak-exports.c:930 -#, fuzzy, c-format +#: common/flatpak-exports.c:940 +#, c-format msgid "Unable to get file type of \"%s\": %s" -msgstr "Não foi possível criar o arquivo %s" +msgstr "Não foi possível obter o tipo de arquivo de “%s”: %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" -msgstr "" +msgstr "O aplicativo “%s” tem o tipo não suportado 0o%o" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" +"Não foi possível obter as informações de sistema de arquivos para “%s”: %s" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" -msgstr "" +msgstr "Ignorando o bloqueio do caminho de autofs “%s”" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" -msgstr "" +msgstr "O caminho \"%s\" está reservado pelo Flatpak" -#: common/flatpak-exports.c:1051 -#, fuzzy, c-format +#: common/flatpak-exports.c:1061 +#, c-format msgid "Unable to resolve symbolic link \"%s\": %s" -msgstr "Não foi possível atualizar o link simbólico %s/%s" +msgstr "Não foi possível resolver o link simbólico “%s”: %s" + +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "A string vazia não é um número" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "“%s” não é um número não assinado" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "O número “%s” está fora dos limites [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "Ref %s não instalado" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "Aplicativo %s não instalado" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "O remoto “%s” já existe" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "Conforme requisitado, %s foi obtida, mas não instalada" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "Não foi possível criar um diretório %s" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "Não foi possível travar %s" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "Não foi possível abrir o diretório %s" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "Não foi possível criar um diretório temporário em %s" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "Não foi possível criar o arquivo %s" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Não foi possível atualizar o link simbólico %s/%s" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "Há suporte apenas à autenticação via token (Bearer)" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "Apenas reino na solicitação de autenticação" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "Reino inválido na solicitação de autenticação" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "Autorização falhou: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Autorização falhou" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "Status de resposta inesperada %d ao solicitar token: %s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "Resposta inválida à solicitação de autenticação" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "Formato de arquivo delta inválido" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "Nenhuma chave gpg localizada com ID %s (homedir: %s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Não foi possível procurar o ID de chave %s: %d" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "Erro ao assinar o commit: %d" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Configuração de imagem OCI inválida" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Soma de verificação de camada errada, esperava %s, era %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "Nenhuma ref especificada para a imagem OCI %s" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Ref errada (%s) especificada para a imagem OCI %s, esperava %s" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5127,318 +5205,371 @@ msgstr "Baixando dados extras: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Baixando arquivos: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Nome não pode estar vazio" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Nome não pode ser maior que 255 caracteres" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Nome não pode iniciar com um ponto" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Nome não pode iniciar com %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Nome não pode terminar com um ponto" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Apenas o último segmento de nome pode conter -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Segmento de nome não pode iniciar com %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Nome não pode conter %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "Nome deve conter pelo menos 2 pontos" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "A arq. não pode estar vazia" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "A arq. não pode conter %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Ramos não podem estar vazios" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Ramos não podem iniciar com %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Ramos não podem conter %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "Ref muito longa" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "Nome remoto inválido" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s não é um aplicativo ou runtime" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Número incorreto de componentes em %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "Nome inválido %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "Arq. inválida: %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Nome inválido %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "Arq. inválida: %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "Ramo inválido: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "Número incorreto de componentes na ref parcial %s" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr " plataforma de desenvolvimento" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr " plataforma" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr " base de aplicação" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr " símbolos de depuração" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr " código-fonte" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " traduções" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr " docs" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "ID inválido %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Nome inválido de remoto: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "Nenhuma url especificada" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "" "Verificação GPG deve estar habilitada quando um ID de coleção for definido" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Falha ao abrir arquivo de informação do aplicativo" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Nenhuma fonte de dados extras" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Não foi possível criar um pipe de sincronização" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "%s inválido: Faltando grupo “%s”" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Falha ao sincronizar com proxy de dbus" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "%s inválido: Faltando chave “%s”" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Chave gpg inválida" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Erro ao copiar ícone 64x64 para componente %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Erro ao copiar ícone 128x128 para componente %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s está em fim de vida, ignorando para appstream" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Nenhum dado de appstream para %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Pacote inválido, nenhuma ref nos metadados" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "A coleção “%s” de pacotes não correspondem à coleção “%s” do remoto" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Metadados no cabeçalho e aplicativo estão inconsistentes" -#: common/flatpak-run.c:2207 +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "" "Nenhuma sessão de usuário de systemd disponível, cgroups não disponível" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "Não foi possível alocar id de instância" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Falha ao abrir arquivo flatpak-info: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Falha ao abrir arquivo bwrapinfo.json: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "Falha ao escrever no descritor de arquivo do ID de instância: %s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "Inicialização de seccomp falhou" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Falha ao adicionar arquitetura ao filtro seccomp: %s" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Falha ao adicionar arquitetura multiarch ao filtro seccomp: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, c-format msgid "Failed to block syscall %d: %s" msgstr "Falha ao bloquear a chamada de sistema %d: %s" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, c-format msgid "Failed to export bpf: %s" msgstr "Falha ao exportar bpf: %s" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "Falha ao abrir “%s”" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ldconfig falhou, status de saída %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "Não foi possível abrir o ld.so.cache gerado" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" "A execução de %s não é permitida pela política definida pelo administrador" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" "“flatpak run” não se destina a ser executado como `sudo flatpak run`, use " "`sudo -i` ou `su -l` no lugar e invoque “flatpak run” de dentro do novo " "shell." -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "Falha ao migrar de %s: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" "Falha ao migrar o diretório de dados antigo %s do aplicativo para o novo " "nome %s: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Falha ao criar link simbólico ao migrar %s: %s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Falha ao abrir arquivo de informação do aplicativo" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Não foi possível criar um pipe de sincronização" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Falha ao sincronizar com proxy de dbus" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Aviso: Problema ao procurar por refs relacionadas: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "O aplicativo %s requer o runtime %s, que não foi localizado" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "O aplicativo %s requer o runtime %s, que não está instalado" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "Não foi possível desinstalar %s, o qual é necessário para %s" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Remoto %s desabilitado, ignorando atualização de %s" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s já está instalado" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s já está instalada pelo remoto %s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr ".flatpakref inválido: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "Erro ao atualizar metadados de remoto para “%s”: %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " @@ -5447,54 +5578,54 @@ msgstr "" "Aviso: Tratando erro de obtenção de remoto como não fatal, já que %s já está " "instalado: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "Nenhum autenticador instalado para remoto “%s”" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "Falha ao obter tokens para ref: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "Falha ao obter tokens para ref" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "A ref %s de %s corresponde a mais de uma operação de transação" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" msgstr "qualquer remoto" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "Nenhuma operação de transação localizada para a ref %s de %s" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "URL de Flatpakrepo %s não é arquivo, HTTP ou HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "Não foi possível carregar o arquivo dependente %s: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr ".flatpakrepo inválido: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "Transação já executada" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." @@ -5502,16 +5633,16 @@ msgstr "" "Recusando-se a operar em uma instalação de usuário como root! Isso pode " "levar à propriedade incorreta do arquivo e a erros de permissão." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Abortado pelo usuário" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "Ignorando %s por causa do erro anterior" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "Abortado devido a falha (%s)" @@ -5558,137 +5689,113 @@ msgstr "Porta “%.*s” na URI está fora da faixa" msgid "URI is not absolute, and no base URI was provided" msgstr "A URI não é absoluta e nenhuma URI base foi fornecida" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "Glob não pode corresponder aplicativos" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" +msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "Glob vazio" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "Número excessivo de argumentos no glob" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "ID inválido %s: %s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" -msgstr "Caractere de glob “%c” inválido" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" -msgstr "Faltando glob na linha %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" -msgstr "Texto ao final na linha %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "na linha %d" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "Palavra inesperada “%s” na linha %d" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "%s inválido: Faltando grupo “%s”" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "%s inválido: Faltando chave “%s”" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Chave gpg inválida" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Nenhuma fonte de dados extras" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Erro ao copiar ícone 64x64 para componente %s: %s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Erro ao copiar ícone 128x128 para componente %s: %s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s está em fim de vida, ignorando para appstream" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "Glob não pode corresponder aplicativos" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Nenhum dado de appstream para %s: %s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Glob vazio" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "Pacote inválido, nenhuma ref nos metadados" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "Número excessivo de argumentos no glob" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "A coleção “%s” de pacotes não correspondem à coleção “%s” do remoto" - -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "Metadados no cabeçalho e aplicativo estão inconsistentes" +msgid "Invalid glob character '%c'" +msgstr "Caractere de glob “%c” inválido" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "Configuração de imagem OCI inválida" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "Faltando glob na linha %d" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "Soma de verificação de camada errada, esperava %s, era %s" +msgid "Trailing text on line %d" +msgstr "Texto ao final na linha %d" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "Nenhuma ref especificada para a imagem OCI %s" +msgid "on line %d" +msgstr "na linha %d" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "Ref errada (%s) especificada para a imagem OCI %s, esperava %s" +msgid "Unexpected word '%s' on line %d" +msgstr "Palavra inesperada “%s” na linha %d" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "Argumento de require-flatpak inválido %s" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s precisa de uma versão posterior do flatpak (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "A string vazia não é um número" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "“%s” não é um número não assinado" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "O número “%s” está fora dos limites [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "Não é um remoto OCI, faltando summary.xa.oci-repository" @@ -5701,42 +5808,46 @@ msgstr "Não é um remoto OCI" msgid "Invalid token" msgstr "Token inválido" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "Não foi localizado suporte a portal" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Negar" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Atualizar" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "Atualizar %s?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "O aplicativo deseja atualizar a si próprio." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" "Acesso a atualização pode ser alterado a qualquer momento a partir das " "configurações de privacidade." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "Atualização de aplicativo não permitida" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "Sem suporte à autoatualização, nova versão requer novas permissões" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "Atualização encerrada inesperadamente" @@ -5958,6 +6069,30 @@ msgstr "" "Autenticação é necessária para instalar software que está restrito por sua " "política de controle parental" +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "Localizada(s) ref(s) similares para “%s” em remoto “%s” (%s).\n" +#~ "Usar esse remoto?" + +#, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "Nenhuma entrada para %s no cache de resumo do remoto “%s” " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Falha ao desinstalar %s para realizar rebase de %s: " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Falha ao desinstalar %s para rebase de %s: %s\n" + +#, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Não foi possível abrir o diretório %s" + #~ msgid "install" #~ msgstr "instalar" diff --git a/po/quot.sed b/po/quot.sed deleted file mode 100644 index 0122c46..0000000 --- a/po/quot.sed +++ /dev/null @@ -1,6 +0,0 @@ -s/"\([^"]*\)"/“\1”/g -s/`\([^`']*\)'/‘\1’/g -s/ '\([^`']*\)' / ‘\1’ /g -s/ '\([^`']*\)'$/ ‘\1’/g -s/^'\([^`']*\)' /‘\1’ /g -s/“”/""/g diff --git a/po/remove-potcdate.sin b/po/remove-potcdate.sin deleted file mode 100644 index 2436c49..0000000 --- a/po/remove-potcdate.sin +++ /dev/null @@ -1,19 +0,0 @@ -# Sed script that remove the POT-Creation-Date line in the header entry -# from a POT file. -# -# The distinction between the first and the following occurrences of the -# pattern is achieved by looking at the hold space. -/^"POT-Creation-Date: .*"$/{ -x -# Test if the hold space is empty. -s/P/P/ -ta -# Yes it was empty. First occurrence. Remove the line. -g -d -bb -:a -# The hold space was nonempty. Following occurrences. Do nothing. -x -:b -} diff --git a/po/ro.gmo b/po/ro.gmo deleted file mode 100644 index 25d67662b27f66def14f4f19c44df91e55c868ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 100838 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 diff --git a/po/ro.po b/po/ro.po index ce46321..769ce89 100644 --- a/po/ro.po +++ b/po/ro.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" "PO-Revision-Date: 2020-07-02 15:35+0200\n" "Last-Translator: Florentina Mușat \n" @@ -20,104 +20,104 @@ msgstr "" "20)) ? 1 : 2);;\n" "X-Generator: Poedit 2.3.1\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Exportă executarea în locul aplicației" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Arhitectura pentru care se împachetează" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARHI" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Url pentru deposit" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Url pentru fișierul depozit flatpak de executare" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Adaugă o cheie GPG de la FIȘIER (- pentru stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "FIȘIER" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "ID-ul cheii GPG cu care se semnează imaginea OCI" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "ID-CHEIE" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "ID-CHEIE" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "Directorul personal GPG de utilizat când se caută după inele de chei" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "DIRPERSONAL" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "Comitul OSTree de la care se creează un pachet delta" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "COMIT" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Exportă imaginea oci în locul pachetului flatpak" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -125,58 +125,58 @@ msgstr "" "LOCAȚIE NUMEFIȘIER NUME [RAMURĂ] - Creează un singur pachet de fișier de la " "un depozit local" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "LOCAȚIA, NUMEFIȘIER și NUME trebuie specificate" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Prea multe argumente" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "„%s” nu este un depozit valid" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "„%s” nu este un depozit valid: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "„%s” nu este un nume valid: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "„%s” nu este un nume de ramură valid: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -212,7 +212,7 @@ msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "" "Unde să se caute pentru directoare sdk personalizate (implicite pentru „usr”)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Utilizează fișierul alternativ pentru datele meta" @@ -232,105 +232,106 @@ msgstr "Înregistrează apelurile magistralei sesiunii" msgid "Log system bus calls" msgstr "Înregistrează apelurile magistralei sistemului" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "DIRECTOR [COMANDĂ [ARGUMENT…]] - Generează în director" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "DIRECTOR trebuie specificat" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "" "Directorul de generare %s nu este inițializat, utilizați build-init flatpak" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "date meta nevalide, nu este aplicație sau executare" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "Nu există un punct de extensie care potrivește %s în %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Lipsește „=” în opțiunea de montare de legătură „%s”" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Nu se poate porni aplicația" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Directorul de depozit al sursei" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "DEPOZIT-SRC" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Referința depozitului sursă" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "REF-SRC" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Subiect pe o linie" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "SUBIECT" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Descriere completă" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "CORP" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Actualizează ramura appstream" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Actualizează ramura appstream" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Nu actualiza rezumatul" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "ID-ul cheii GPG cu care să se semneze comitul" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "Marchează generarea ca sfârșit de fișier" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "MOTIV" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -338,373 +339,378 @@ msgstr "" "Marchează referințele care se potrivesc cu prefixul IDVECHI ca sfârșit de " "fișier, pentru a fi înlocuit cu IDNOU dat" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "IDVECHI=IDNOU" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "Stabilește tipul de jeton necesar pentru a instala acest comit" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "VAL" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "Suprascrie datarea comitului (ACUM pentru timpul curent)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "DATARE" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 #, fuzzy msgid "Don't generate a summary index" msgstr "Nu actualiza rezumatul" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" "DEPO-DST [REF-DST…] - Alcătuiește un comit nou din comiturile existente" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "DEPO-DST trebuie specificat" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "Dacă --src-repo nu este specificat, trebuie specificat exact o ref de " "destinație" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" "Dacă --src-ref este specificat, trebuie specificat exact o ref de destinație" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "Ori --src-repo ori --src-ref trebuie specificat" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" "Format de argument nevalid de utilizat --end-of-life-rebase=IDVECHI=IDNOU" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "Nume nevalid %s în --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "Nu s-a putut parsa „%s”" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "Nu se poate comite de la comitul de sursă parțial" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: nicio schimbare\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "" "Arhitectura pentru care se exportă (trebuie să fie compatibilă cu gazda)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Executarea de comit (/usr), nu /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Utilizează directorul alternativ pentru fișiere" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "SUBDIR" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Fișiere de exclus" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "MODEL" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Fișiere excluse de inclus" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "" "Marchează generarea ca sfârșit-de-fișier, pentru a fi înlocuit cu ID-ul dat" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Suprascrie datarea comitului" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "ID colecție" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "AVERTISMENT: Eroare la rularea desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "AVERTISMENT: Eroare la citirea de la desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "AVERTISTMENT: Nu s-a putut valida fișierul desktop %s: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "AVERTISMENT: Nu se poate găsi cheia exec în %s: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "AVERTISMENT: Nu s-a putut găsi binarul pentru linia Exec în %s: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "AVERTISMENT: Iconița nu se potrivește id-ului aplicației în %s: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" "AVERTISMENT: Iconița este referită în fișierul desktop dar nu este " "exportată: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Tip uri nevalid %s, doar http/https suportate" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "Nu se poate găsi numele de bază în %s, specificați un nume explicit" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "Nu sunt permise barele oblice în numele de date extra" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Format nevalid pentru suma de control sha256: „%s”" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Dimensiunile de date extra de zero nu sunt suportate" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "" "LOCAȚIE DIRECTOR [RAMURĂ] - Creează un depozit de la un director de generare" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "LOCAȚIA și DIRECTORUL trebuie specificate" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "„%s” nu este un ID de colecție valid: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Nu există niciun nume specificat în datele meta" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Comit: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Date meta totale: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Date meta scrise: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Total conținut: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Conținut scris: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Octeți de conținut scriși:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Comanda de stabilit" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "COMANDĂ" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Versiunea Flatpak de cerut" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "MAJOR.MINOR.MICRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Nu procesa exporturile" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Informații de date extra" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Adaugă informații de punct de extensie" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NUME=VARIABILĂ[=VALOARE]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Elimină informațiile de punct de extensie" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NUME" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Stabilește prioritatea extensiei (doar pentru extensii)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "VALOARE" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Modifică sdk-ul utilizat pentru această aplicație" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Modifică executarea utilizată pentru aplicație" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "EXECUTARE" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Stabilește opțiunea generică a datelor meta" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GRUP=CHEIE[=VALOARE]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Nu moșteni permisiunile de la executare" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "Nu se exportă %s, extensie greșită\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "Nu se exportă %s, nume de fișier de exportare nepermis\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "Se exportă %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Mai mult de un executabil găsit\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "Se utilizează %s ca și comandă\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Nu s-a găsit niciun executabil\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Argument --require-version nevalid: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "Prea puține elemente în argumentul --extra-data %s" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -713,7 +719,7 @@ msgstr "" "Prea puține elemente în argumentul --metadata %s, formatul ar trebui să fie " "GRUP=CHEIE[=VALOARE]]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -723,62 +729,63 @@ msgstr "" "Prea puține elemente în argumentul --extension %s, formatul ar trebui să fie " "NUME=VAR[=VALOARE]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, fuzzy, c-format msgid "Invalid extension name %s" msgstr "Nume de autentificator %s nevalid" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "DIRECTOR - Finalizează un director de generare" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Directorul de generare %s nu este inițializat" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Directorul de generare %s este deja finalizat" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Revizuiți fișierele exportate și datele meta\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Suprascrie ref-ul utilizat pentru pachetul importat" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REF" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Importă imaginea oci în locul pachetului flatpak" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Ref-ul „%s” nu s-a găsit în registru" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "Imagini multiple în registru, specificați o ref cu --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "Se importă %s (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "LOCAȚIE NUMEFIȘIER - Importă un pachet de fișier într-un depozit local" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "LOCAȚIE și NUMEFIȘIER trebuie specificate" @@ -893,88 +900,88 @@ msgstr "„%s nu este un nume de aplicație valid: %s" msgid "Build directory %s already initialized" msgstr "Directorul de generare %s este deja inițializat" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Arhitectura pentru care se instalează" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Caută după o executare cu numele specificat" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "LOCAȚIE [ID [RAMURĂ]] - Semnează o aplicație sau executare" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "LOCAȚIA trebuie specificată" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Nu este specificat niciun id de cheie gpg" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Redirectează acest depozit la un URL nou" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Un nume drăguț de utilizat pentru acest depozit" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "TITLU" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "Un comentariu de o linie pentru acest depozit" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "COMENTARIU" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "O descriere de un paragraf complet pentru acest depozit" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "DESCRIERE" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "URL pentru o pagină web pentru acest depozit" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "URL pentru o iconiță pentru acest depozit" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Ramura implicită de utilizat pentru acest depozit" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "RAMURĂ" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "ID-COLECȚIE" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" @@ -982,124 +989,127 @@ msgstr "" "Implementați permanent ID-ul de colecție la configurările de la distanță ale " "clientului, doar pentru suport de încărcare laterală" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" "Implementați permanent ID-ul colecției la configurările de la distanță ale " "clientului" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Numele autentificatorului pentru acest depozit" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "Instalează automat autentificatorul pentru acest depozit" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "Nu instala automat autentificatorul pentru acest depozit" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Opțiune autentificator" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "CHEIE=VALOARE" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Importă cheia publică GPG implicită nouă de la FIȘIER" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "ID-ul cheii GPG cu care să se semneze rezumatul" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Generează fișierele delta" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Nu actualiza ramura appstream" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" "Numărul maxim de sarcini paralele atunci când se creează deltele (implicit: " "NUMCPU-uri)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "NUMĂR-SARCINI" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "Nu crea delte care se potrivesc cu ref-uri" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Elimină obiectele neutilizate" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" "Traversează doar superiorii în ADÂNCIME pentru fiecare comit (implicit " "-1=infinit)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "ADÂNCIME" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Se generează delta: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Se generează delta: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Nu s-a putut genera delta %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Nu s-a putut genera delta %s (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "LOCAȚIE - Actualizează datele meta ale depozitului" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Se actualizează ramura appstream\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Se actualizează rezumatul\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Obiecte totale: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Nu sunt obiecte de neatins\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "S-au șters %u obiecte, s-a eliberat %s\n" @@ -1171,25 +1181,25 @@ msgstr "Se poate utiliza doar una dintre --list, --get, --set sau --unset" msgid "Must specify one of --list, --get, --set or --unset" msgstr "Trebuie să specificați una dintre --list, --get, --set sau --unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Caută după aplicația cu numele specificat" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Arhitectura de copiat" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "DEST" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "Permite comiturile parțiale în depozitul creat" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " @@ -1198,13 +1208,13 @@ msgstr "" "Avertisment: Ref-ul aferent „%s” este instalat parțial. Utilizați --allow-" "partial pentru a suprima acest mesaj.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" "Avertisment: Se omite ref-ului asociat „%s” pentru că nu este instalat.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1213,13 +1223,13 @@ msgstr "" "Avertisment: Se omite ref-ul asociat „%s” pentru că „%s” de la distanță nu " "are stabilit un ID de colecție.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, fuzzy, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" "Avertisment: Se omite ref-ului asociat „%s” pentru că nu este instalat.\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1228,36 +1238,36 @@ msgstr "" "„%s” de la distanță nu are stabilit un ID de colecție, care este necesar " "pentru distribuția P2P a „%s”." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, fuzzy, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" "Avertisment: Se omite ref-ului asociat „%s” pentru că nu este instalat.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" "CALE-MONTARE [REF…] - Copiază aplicațiile sau executările pe media detașabile" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "CALE-MONTARE și REF trebuie specificate" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" "Ref-ul „%s” a fost găsit în instalări multiple: %s. Trebuie să specificați " "una." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" "Ref-urile trebuie toate să fie în aceeași instalare (a fost găsit în %s și " "%s)." -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " @@ -1266,19 +1276,19 @@ msgstr "" "Avertisment: Ref-ul „%s” este instalat parțial. Utilizați --allow-partial " "pentru a suprima acest mesaj.\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" "Avertisment: Nu s-au putut actualiza datele meta ale depozitului pentru „%s” " "de la distanță: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1286,7 +1296,7 @@ msgstr "" "distanță, arhitectura „%s”: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1295,7 +1305,7 @@ msgstr "" "arhitectura „%s”: %s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1370,19 +1380,20 @@ msgstr "FIȘIER - Obțineți informații despre un fișier exportat" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Nu este exportat\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Ce informații să fie arătate" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "CÂMP,…" @@ -1401,7 +1412,7 @@ msgid "Show the document path" msgstr "Arată calea documentului" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Origine" @@ -1415,7 +1426,7 @@ msgid "Show applications with permission" msgstr "Arată aplicațiile cu permisiune" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Permisiuni" @@ -1546,12 +1557,12 @@ msgid "Show the kind of change" msgstr "Arată tipul de modificare" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Ref" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Arată ref-ul" @@ -1560,24 +1571,24 @@ msgid "Show the application/runtime ID" msgstr "Arată ID-urile de aplicație/executare" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Arhitectură" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Arată arhitectura" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Ramifică" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Arată ramura" @@ -1589,7 +1600,7 @@ msgstr "Loc de instalare" msgid "Show the affected installation" msgstr "Arată instalarea afectată" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Locație la distanță" @@ -1598,7 +1609,7 @@ msgid "Show the remote" msgstr "Arată depozitul de la distanță" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Comite" @@ -1618,7 +1629,7 @@ msgstr "Arată comitul anterior" msgid "Show the remote URL" msgstr "Arată URL-ul de la distanță" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Utilizator" @@ -1635,7 +1646,7 @@ msgid "Show the tool that was used" msgstr "Arată unealta care a fost utilizată" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Versiune" @@ -1663,10 +1674,12 @@ msgid " - Show history" msgstr " - Arată istoricul" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "Nu s-a putut parsa opțiunea --since" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "Nu s-a putut parsa opțiunea --until" @@ -1682,11 +1695,11 @@ msgstr "Arată instalările la nivelul întregului sistem" msgid "Show specific system-wide installations" msgstr "Arată instalări specifice la nivelul întregului sistem" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Arată ref-ul" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Arată comitul" @@ -1698,15 +1711,15 @@ msgstr "Arată originea" msgid "Show size" msgstr "Arată dimensiunea" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Arată datele meta" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Arată executarea" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Arată sdk-ul" @@ -1718,8 +1731,8 @@ msgstr "Arată permisiunile" msgid "Query file access" msgstr "Interoghează accesul la fișiere" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1739,7 +1752,7 @@ msgstr "" "NUME [RAMURĂ] - Obține informații despre o aplicație instalată sau o " "executare" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "NUMELE trebuie specificat" @@ -1748,85 +1761,87 @@ msgstr "NUMELE trebuie specificat" msgid "ref not present in origin" msgstr "ref-ul nu este prezent în origine" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Avertisment: Comitul nu are date meta flatpak\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Ref:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Arhitectură:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Ramura:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Versiune:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Licență:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Colecție:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Instalare:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Instalat:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Executare:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Data:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Subiect:" @@ -1839,15 +1854,15 @@ msgid "Latest commit:" msgstr "Ultimul comit:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Comit:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Superior:" @@ -1856,14 +1871,14 @@ msgid "Alt-id:" msgstr "ID-alternativ:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "Sfârșit-de-viață:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "Sfârșit-de-viață-rebase:" @@ -1872,147 +1887,148 @@ msgid "Subdirectories:" msgstr "Subdirectoare:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Extensii:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Origine:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Subcăi:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "neîntreținute" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "necunoscută" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Nu trage, doar instalează de la cache-ul local" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Nu implementa, doar descarcă de la cache-ul local" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Nu instala ref-urile asociate" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Nu verifica/instala dependențele executării" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Nu utiliza delta-uri statice" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Presupune că LOCAȚIA este un pachet dintr-un singur fișier .flatpak" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Presupune că LOCAȚIA este o descriere de aplicație .flatpakref" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "" "Verifică semnăturile pachetului cu cheia GPG de la FIȘIER (- pentru stdin)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Instalează doar această subcale" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Răspunde cu da automat la toate întrebările" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Dezinstalați mai întâi dacă este deja instalat" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "Produce ieșire minimă și nu pune întrebări" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Actualizează instalarea dacă este deja instalat" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "Utilizează acest depozit local pentru încărcările laterale" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Numele de fișier al pachetului trebuie specificat" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Pachetele de la distanță nu sunt suportate" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Numele de fișier sau uri trebuie specificat" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "[LOCAȚIE/LA DISTANȚĂ] [REF…] - Instalează aplicații sau executări" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "Cel puțin o REF trebuie specificată" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Se caută după potriviri…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, fuzzy, c-format msgid "No remote refs found for ‘%s’" msgstr "Nu s-au găsit ref-uri similare cu „%s”" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Ramură nevalidă %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "" "Nimic nu se potrivește cu %s în depozitul local pentru %s de la distanță" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Nimic nu se potrivește cu %s în %s de la distanță" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Se omite: %s\n" @@ -2050,51 +2066,51 @@ msgstr "Listează aplicațiile instalate" msgid "Arch to show" msgstr "Arhitectura de arătat" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Listează toate ref-urile (inclusiv cele locale/de depanare)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "Listează toate aplicațiile utilizând EXECUTARE" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Nume" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Arată numele" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Descriere" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Arată descrierea" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "ID aplicație" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Arată ID-ul aplicației" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Arată versiunea" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Executare" @@ -2102,7 +2118,7 @@ msgstr "Executare" msgid "Show the used runtime" msgstr "Arată executarea utilizată" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Arată originea de la distanță" @@ -2114,7 +2130,7 @@ msgstr "Arată instalarea" msgid "Active commit" msgstr "Comitul activ" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Arată comitul activ" @@ -2126,35 +2142,35 @@ msgstr "Ultimul comit" msgid "Show the latest commit" msgstr "Arată ultimul comit" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Dimensiunea instalată" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Arată dimensiunea instalată" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Opțiuni" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Arată opțiunile" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, fuzzy, c-format msgid "Unable to load details of %s: %s" -msgstr "Nu se poate încărca rezumatul de la depozitul de la distanță %s: %s" +msgstr "Nu se poate crea linia de asamblare de sincronizare" -#: app/flatpak-builtins-list.c:189 -#, c-format +#: app/flatpak-builtins-list.c:188 +#, fuzzy, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Nu se poate crea linia de asamblare de sincronizare" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - Listează aplicațiile instalate și/sau executările" @@ -2166,7 +2182,7 @@ msgstr "Arhitectura pentru care se face curentă" msgid "APP BRANCH - Make branch of application current" msgstr "RAMURĂ APLICAȚIE - Faceți ramura aplicației curentă" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "APLICAȚIA trebuie specificată" @@ -2191,10 +2207,12 @@ msgstr "" "instalărilor automate" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "Nu sunt modele mascate\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Modele mascate:\n" @@ -2210,26 +2228,26 @@ msgstr "Arată suprascrierile existente" msgid "[APP] - Override settings [for application]" msgstr "[APLICAȚIE] - Suprascrie configurările [pentru aplicație]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABEL] [ID] - Listează permisiunile" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Tabel" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Obiect" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "Aplicație" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Date" @@ -2291,12 +2309,12 @@ msgstr "" "instalărilor automate" #: app/flatpak-builtins-pin.c:75 -#, fuzzy +#, fuzzy, c-format msgid "No pinned patterns\n" msgstr "Nu sunt modele mascate\n" #: app/flatpak-builtins-pin.c:80 -#, fuzzy +#, fuzzy, c-format msgid "Pinned patterns:\n" msgstr "Modele mascate:\n" @@ -2372,127 +2390,127 @@ msgstr "Arată dacă aplicația este fundal" msgid " - Enumerate running sandboxes" msgstr " - Enumerați sandbox-urile care rulează" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Nu face nimic dacă depozitul de la distanță furnizat există" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "LOCAȚIA specifică un fișier de configurare, nu locația depozitului" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Dezactivează verificarea GPG" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Marchează depozitul de la distanță ca nu enumerați" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Marchează depozitul de la distanță ca nu utilizați pentru depozite" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "Stabiliți prioritatea (implicit 1, mai mare este mai prioritat)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORITATE" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 #, fuzzy msgid "The named subset to use for this remote" msgstr "Un nume drăguț de utilizat pentru acest depozit de la distanță" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Un nume drăguț de utilizat pentru acest depozit de la distanță" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "" "Un comentariu pe o singură linie de utilizat pentru acest depozit de la " "distanță" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "O descriere de un paragraf complet pentru acest depozit de la distanță" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "URL-ul pentru un site web pentru acest depozit de la distanță" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "URL-ul pentru o iconiță pentru acest depozit de la distanță" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Ramura implicită de utilizat pentru acest depozit de la distanță" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Importă cheia GPG de la FIȘIER (- pentru stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Stabilește calea către FIȘIERUL filtru local" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Dezactivează depozitul de la distanță" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Numele autentificatorului" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Instalează automat autentificatorul" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "Nu instala automat autentificatorul" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "Nu urmări redirectarea stabilită în fișierul rezumat" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "Nu se poate încărca uri-ul %s: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Nu se poate încărca fișierul %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NUME LOCAȚIE - Adaugă un depozit de la distanță" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "Verificarea GPG este necesară dacă sunt activate colecțiile" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "Depozitul de la distanță %s deja există" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Nume de autentificator %s nevalid" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "Avertisment: Nu se pot actualiza datele meta extra pentru „%s”: %s\n" @@ -2521,61 +2539,61 @@ msgid "Can't remove remote '%s' with installed refs" msgstr "" "Nu se poate elimina depozitul de la distanță „%s” cu ref-urile instalate" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "Comitul pentru care se arată informațiile" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Afișează istoricul" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Arată superiorul" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Utilizează cache-uri locale chiar dacă sunt învechite" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "Listează doar ref-urile disponibile ca încărcări laterale" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " REF DE LA DISTANȚĂ - Arată informațiile despre o aplicație sau o executare " "într-un depozit de la distanță" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "DE LA DISTANȚĂ și REF trebuie specificate" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Descărcare:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "Istoric:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Comit:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Subiect:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Dată:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Avertisment: Comitul %s nu are date meta flatpak\n" @@ -2604,7 +2622,7 @@ msgstr "Arată URL-ul" msgid "Show the collection ID" msgstr "Arată ID-ul colecției" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "" @@ -2661,39 +2679,39 @@ msgstr "Arată o iconiță" msgid " - List remote repositories" msgstr " - Listează depozitele de la distanță" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Arată arhitecturile și ramurile" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Arată doar executările" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Arată doar aplicațiile" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Arată-le doar pe acelea pentru care sunt disponibile actualizări" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Limitează la această arhitectură (* pentru toate)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Arată executarea" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Dimensiunea descărcării" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Arată dimensiunea descărcării" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr "" " [DE LA DISTANȚĂ sau URI] - Arată executările și aplicațiile disponibile" @@ -2826,226 +2844,233 @@ msgstr "Eroare la reinstalarea %s: %s\n" msgid "- Repair a flatpak installation" msgstr "- Repară o instalare flatpak" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Se elimină ref-ul nedesfășurat %s…\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Se omite ref-ul nedesfășurat %s…\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, fuzzy, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "Se verifică %s…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "" -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "Se șterge ref-ul %s din cauza obiectelor care lipsesc\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "Se șterge ref-ul %s din cauza obiectelor nevalide\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "Se șterge ref-ul %s din cauza la %d\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "Depozitul de la distanță %s pentru ref-ul %s lipsește\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "Depozitul de la distanță %s pentru ref-ul %s este dezactivat\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "Se elimină obiectele\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "Se șterge .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "Se reinstalarează ref-urile\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "Se reinstalează ref-urile eliminate\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "În timpul eliminării appstream pentru %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "În timpul desfășurării appstream pentru %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Mod depozit: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "adevărat" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "fals" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "" -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Titlu: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Comentariu: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Descriere: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Pagină principală: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Iconiță: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "ID colecție: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Ramura implicită: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "URL de redirectare: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "Desfășoară ID-ul de colecție: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Nume de autentificare: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "Instalarea de autentificator: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "Valoare de dispersie a cheii GPG: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, fuzzy, c-format msgid "%zd summary branches\n" msgstr "ramuri %zd\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Instalat" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Descarcă" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 #, fuzzy msgid "History length" msgstr "Istoric:" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Tipărește informații generale despre depozit" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Listează ramurile din depozit" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Tipărește datele meta pentru o ramură" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Arată comiturile pentru o ramură" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 #, fuzzy msgid "Print information about the repo subsets" msgstr "Tipărește informații generale despre depozit" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "LOCAȚIE - Mentenanță depozit" @@ -3141,11 +3166,11 @@ msgstr "" msgid "Use PATH instead of the runtime's /usr" msgstr "" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "APLICAȚIE [ARGUMENT…] - Rulează o aplicație" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "executarea/%s/%s/%s nu este instalată" @@ -3162,15 +3187,15 @@ msgstr "Locații la distanță" msgid "Show the remotes" msgstr "Arată depozitele de la distanță" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "TEXT - Caută aplicații/executări de la distanță pentru text" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "TEXTUL trebuie specificat" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Nu s-au găsit potriviri" @@ -3251,6 +3276,7 @@ msgid "" msgstr "" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Nimic neutilizat de dezinstalat\n" @@ -3275,6 +3301,7 @@ msgid "Warning: %s is not installed\n" msgstr "Avertisment: %s nu este instalat\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "" @@ -3315,6 +3342,7 @@ msgid "With --commit, only one REF may be specified" msgstr "Cu --commit, doar un REF poate fi specificat" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Se caută după actualizări…\n" @@ -3324,28 +3352,29 @@ msgid "Unable to update %s: %s\n" msgstr "Nu se poate actualiza %s: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Nimic de făcut.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "Depozitul de la distanță „%s” a fost găsit în instalări multiple:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Pe care doriți să-l utilizați (0 pentru a renunța)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "Niciun depozit de la distanță nu a fost ales pentru a rezolva „%s” care " "există în instalări multiple" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3355,13 +3384,13 @@ msgstr "" "Indiciu: Utilizați adăugarea la distanță flatpak pentru a adăuga un depozit " "de la distanță" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Depozitul de la distanță „%s” nu a fost găsit în instalarea %s" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3370,145 +3399,135 @@ msgstr "" "A fost găsit ref-ul „%s” în depozitul de la distanță „%s” (%s).\n" "Utilizați acest ref?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "Niciun ref ales pentru a rezolva potrivirile pentru „%s”" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "" "Ref-uri similare găsite pentru „%s” în depozitul de la distanță „%s” (%s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "S-a găsit instalat ref-ul „%s” (%s). Este corect?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "Toate cele de mai sus" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "Ref-uri instalate similare găsite pentru „%s”:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"S-au găsit ref-(uri) similare pentru „%s” în depozitul de la distanță „%s” " -"(%s).\n" -"Utilizați acest depozit de la distanță?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "Au fost găsite depozite de la distanță cu ref-uri similare cu „%s”:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "" "Niciun depozit de la distanță nu a fost ales pentru a rezolva potrivirile " "pentru „%s”" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "Au fost găsite depozite de la distanță cu ref-uri similare cu „%s”:" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "" "Se actualizează datele appstream pentru depozitul de la distanță al " "utilizatorului %s" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Se actualizează datele appstream pentru depozitul de la distanță %s" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Eroare la actualizare" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "Depozitul de la distanță „%s” nu s-a găsit" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Sufix ambiguu: „%s”." #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "Valorile posibile sunt: :s[tart], :m[iddle], :e[nd] or :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Sufix nevalid: „%s”." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Coloană ambiguă: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Coloană necunoscută: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Coloane disponibile:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Arată toate coloanele" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Arată coloanele disponibile" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" "Adăugați :s[tart], :m[iddle], :e[nd] or :f[ull] pentru a modifica elipsarea" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "" "Executare necesară pentru %s (%s) găsită în depozitul de la distanță %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Doriți să o instalați?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "Executare necesară pentru %s (%s) găsită în depozitele de la distanță:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Pe care doriți să o instalați (0 pentru a renunța)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, fuzzy, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Se configurează %s ca depozitul de la distanță nou „%s”" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3520,7 +3539,7 @@ msgstr "" "Ar trebui păstrat depozitul de la distanță pentru instalări viitoare?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3531,130 +3550,130 @@ msgstr "" " %s\n" "Configurează aceasta ca depozit de la distanță nou „%s”" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Se instalează…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Se instalează %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Se actualizează…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Se actualizează %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Se dezinstalează…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Se dezinstalează %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Informații: %s a fost omis" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, fuzzy, c-format msgid "Warning: %s%s%s already installed" msgstr "%s este deja instalat" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, fuzzy, c-format msgid "Error: %s%s%s already installed" msgstr "%s este deja instalat" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, fuzzy, c-format msgid "Warning: %s%s%s not installed" msgstr "Avertisment: %s nu este instalat\n" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, fuzzy, c-format msgid "Error: %s%s%s not installed" msgstr "%s/%s/%s nu este instalat" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, fuzzy, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "%s are nevoie de o versiune ulterioară flatpak" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, fuzzy, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "%s are nevoie de o versiune ulterioară flatpak" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 #, fuzzy msgid "Warning: Not enough disk space to complete this operation" msgstr "Nu există destul spațiu pe disc pentru a completa această operație" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 #, fuzzy msgid "Error: Not enough disk space to complete this operation" msgstr "Nu există destul spațiu pe disc pentru a completa această operație" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, fuzzy, c-format msgid "Warning: %s" msgstr "Avertisment: " -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, fuzzy, c-format msgid "Error: %s" msgstr "Eroare:" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, fuzzy, c-format msgid "Failed to install %s%s%s: " msgstr "Nu s-a putut face rebase %s la %s: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, fuzzy, c-format msgid "Failed to update %s%s%s: " msgstr "Nu s-a putut să %s %s: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, fuzzy, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Nu s-a putut face rebase %s la %s: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, fuzzy, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Nu s-a putut face rebase %s la %s: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "Autentificarea necesară pentru depozitul de la distanță „%s”\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Deschideți navigatorul?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "" "Autentificarea este necesară pentru depozitul de la distanță %s (domeniul " "%s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Parolă" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, fuzzy, c-format msgid "" "\n" @@ -3662,7 +3681,7 @@ msgid "" "%s%s%s branch %s%s%s\n" msgstr "Informații: %s este sfârșit-de-viață, în favoarea a %s\n" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, fuzzy, c-format msgid "" "\n" @@ -3670,7 +3689,7 @@ msgid "" "%s%s%s\n" msgstr "Informații: %s este sfârșit-de-viață, în favoarea a %s\n" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, fuzzy, c-format msgid "" "\n" @@ -3679,117 +3698,113 @@ msgid "" msgstr "Informații: %s este sfârșit-de-viață, în favoarea a %s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, fuzzy, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Informații: %s este sfârșit-de-viață, cu motivul: %s\n" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, fuzzy, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Informații: %s este sfârșit-de-viață, cu motivul: %s\n" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, fuzzy, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "Informații: %s este sfârșit-de-viață, cu motivul: %s\n" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, fuzzy, c-format msgid "Info: applications using this extension:\n" msgstr "" "\n" "Se caută aplicații și executări" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, fuzzy, c-format msgid "Info: applications using this runtime:\n" msgstr "" "\n" "Se caută aplicații și executări" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "Se actualizează versiunea rebased\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "Nu s-a putut face rebase %s la %s: " -#: app/flatpak-cli-transaction.c:1009 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Nu s-a putut face rebase %s la %s: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, fuzzy, c-format msgid "New %s%s%s permissions:" msgstr "Permisiuni %s noi:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, fuzzy, c-format msgid "%s%s%s permissions:" msgstr "Permisiuni %s:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Avertisment: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Op" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "parțial" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Procedați cu aceste modificări la instalarea utilizatorului?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Procedați cu aceste modificări la instalarea sistemului?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Procedați cu aceste modificări la %s?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Modificări complete." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Dezinstalare completă." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Instalare completă." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Actualizări complete." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Au fost una sau mai multe erori" @@ -4100,35 +4115,35 @@ msgstr "" "variabila de mediu XDG_DATA_DIRS, deci aplicațiile instalate de Flapak pot " "să nu apară pe desktop până ce sesiunea este repornită." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" "Instalări multiple specificate pentru o comandă care funcționează pe o " "instalare" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "Consultați „%s --help”" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "„%s” nu este o comandă flatpak. Ați vrut să spuneți „%s%s”?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "„%s” nu este o comandă flatpak" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Nu s-a specificat nicio comandă" @@ -4191,16 +4206,16 @@ msgstr "%s Nu s-a putut %s %s: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Eroare la reinstalarea %s: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s este deja instalat" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s nu este instalat" @@ -4229,58 +4244,54 @@ msgstr "Informații: %s este sfârșit-de-viață, cu motivul: %s\n" msgid "Failed to rebase %s to %s: %s\n" msgstr "Nu s-a putut face rebase %s la %s: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Nu s-a putut face rebase %s la %s: %s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "" "Nu s-a configurat niciun autentificator pentru depozitul de la distanță „%s”" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Tip de partajare necunoscut %s, tipurile valide sunt: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Tip de politică necunoscută %s, tipurile valide sunt: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Nume dbus nevalid %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Tip de soclu necunoscut %s, tipurile valide sunt: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Tip de dispozitiv necunoscut %s, tipurile valide sunt: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Tip de funcționalitate necunoscut %s, tipurile valide sunt: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4289,185 +4300,219 @@ msgstr "" "Locație de sistem de fișiere necunoscută %s locațiile valide sunt: host-os, " "host-etc, home, xdg-*[/…], ~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Format env nevalid %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" "Argumentele --add-policy trebuie să fie sub forma CHEIE.SUBSISTEM=VALOARE" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "Valorile --add-policy nu pot începe cu „!”" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" "Argumentele --remove-policy trebuie să fie sub forma CHEIE.SUBSISTEM=VALOARE" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "Valorile --remove-policy nu pot începe cu „!”" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Partajează cu gazda" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "PARTAJEAZĂ" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Anulați partajarea cu gazda" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Expune soclul la aplicație" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "SOCLU" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Nu expune soclul la aplicație" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Expune dispozitivul la aplicație" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "DISPOZITIV" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Nu expune dispozitivul la aplicație" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Permite funcționalitatea" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "FUNCȚIONALITATE" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Nu permite funcționalitatea" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "Expune sistemul de fișiere la aplicație (:ro pentru doar citire)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "SISTEMFIȘIERE[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Nu expune sistemul de fișiere la aplicație" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "SISTEMFIȘIERE" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Stabilește variabila de mediu" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VAR=VALOARE" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 #, fuzzy msgid "Remove variable from environment" msgstr "Elimină elementul de la stocarea permisiunilor" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 #, fuzzy msgid "VAR" msgstr "VAL" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Permite aplicației să posede un nume la magistrala sesiunii" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "NUME_DBUS" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Permite aplicației să vorbească numelui la magistrala sesiunii" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "Nu permite aplicației să vorbească numelui la magistrala sesiunii" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Permite aplicației să posede un nume la magistrala sistemului" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Permite aplicației să vorbească numelui la magistrala sistemului" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "Nu permite aplicației să vorbească numelui la magistrala sistemului" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Permite aplicației să posede un nume la magistrala sistemului" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Adaugă o opțiune de politică generică" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "CHEIE.SUBSISTEM=VALOARE" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Elimină opțiunea de politică generică" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "Persistă subcalea directorului personal" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "NUME FIȘIER" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Persistă subcalea directorului personal" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Nu necesită o sesiune care rulează (nicio creare de cgroups)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4476,442 +4521,437 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, fuzzy, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "Nu se poate crea directorul de implementare" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Nu se poate încărca rezumatul de la depozitul de la distanță %s: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "Niciun astfel de ref „%s” în depozitul de la distanță %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 -#, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 +#, fuzzy, c-format +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "" "Nicio intrare pentru %s în cache-ul flatpak al rezumatului de la distanță " "„%s” " -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "" "Niciun rezumat sau cache Flatpak disponibil pentru depozitul de la distanță " "%s" -#: common/flatpak-dir.c:921 -#, fuzzy, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "" -"Nicio intrare pentru %s în cache-ul flatpak al rezumatului de la distanță " -"„%s” " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, fuzzy, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Niciun rezumat oci cache-uit pentru depozitul de la distanță „%s”" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, fuzzy, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Niciun rezumat cache-uit pentru depozitul de la distanță „%s”" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "Indexul OCI de la distanță nu are niciun uri de registru" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Nu s-a putut găsi ref-ul %s în depozitul de la distanță %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "Imaginea nu este un manifest" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" "Comitul nu are nicio ref „%s” cerută în datele meta de legare a ref-ului" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, fuzzy, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "" "Comitul nu are nicio ref „%s” cerută în datele meta de legare a ref-ului" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" "Nu s-a putut găsi suma de control cea mai recentă pentru ref-ul %s în " "depozitul de la distanță %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, fuzzy, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" "Nicio intrare pentru %s în cache-ul rar flatpak de rezumat de la distanță " -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "" "Datele meta de comit pentru %s nu se potrivesc cu datele meta așteptate" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "Nu se poate conecta la magistrala sistemului" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "Instalarea utilizatorului" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "Instalare (%s) de sistem" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Nicio suprascriere găsită pentru %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "%s (comitul %s) nu este instalat" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "Eroare la parsarea depozitului flatpak de sistem pentru %s: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "În timpul deschiderii depozitului %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "Cheia de configurare %s nu este stabilită" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, fuzzy, c-format msgid "No current %s pattern matching %s" msgstr "Nu există o mască curentă care se potrivește cu %s" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "Niciun comit de appstream de implementat" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" "Nu se poate trage de la depozitul de la distanță verificat ne-gpg în care nu " "este încredere" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" "Datele extra nu sunt suportate pentru instalări de sistem locale " "neverificate-gpg" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Sumă de control nevalidă pentru uri-ul de date extra %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Nume gol pentru uri-ul de date extra %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Uri de date extra %s nesuportat" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Nu s-au putut încărca datele extra locale %s: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Dimensiune greșită pentru datele extra %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "În timpul descărcării %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Dimensiune greșită pentru datele extra %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Sumă de control nevalidă pentru datele extra %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s comitul %s este deja instalat" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "În timpul tragerii %s de la depozitul de la distanță %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "" "S-au găsit semnăturile GPG, dar niciuna nu este într-un inel de chei de " "încredere" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "Comitul pentru „%s” nu are nicio legătură ref" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "Comitul pentru „%s” nu se află în ref-urile de legătură așteptate: %s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 #, fuzzy msgid "Only applications can be made current" msgstr "" "\n" "Se caută aplicații și executări" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Nu există memorie suficientă" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Nu s-a putut citi de la fișierul exportat" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Eroare la citirea fișierul xml de tip mime" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Fișier xml de tip mime nevalid" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "Fișierul de serviciu D-Bus „%s” are numele greșit" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, fuzzy, c-format msgid "Invalid Exec argument %s" msgstr "Argument require-flatpak nevalid %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "În timpul obținerii datelor meta detașate: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "Datele extra care lipsesc în datele meta detașate" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "În timpul creării directorului extra: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Sumă de control nevalidă pentru datele extra" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Dimensiune greșită pentru datele extra" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "În timp ce se scrie fișierul de date extra „%s”: " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "Datele extra %s lipsesc în datele extra detașate" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "scriptul apply_extra a eșuat, starea de ieșire %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" "Instalarea %s nu este permisă de setul de politici de către administrator" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "În timpul încercării de rezolvare a ref-ului %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s nu este disponibil" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Nu se poate crea directorul de implementare" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Nu s-a putut citi comitul %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "În timpul încercării de a face checkout %s în %s: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "În timpul încercării de a face checkout al subcăii de date meta: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "În timpul încercării de a face checkout al subcăii „%s”: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "În timpul încercării de a elimina directorul extra existent: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "În timpul încercării de aplicare a datelor extra: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Ref de comit %s nevalid: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "Ref-ul implementat %s nu se potrivește cu comitul (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "Ramura ref-ului implementat %s nu se potrivește cu comitul (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s ramura %s este deja instalată" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "Nu s-a putut demonta sistemul de fișiere revokefs-fuse la %s: " -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Această versiune a %s este deja instalată" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "" "Nu se poate modifica depozitul de la distanță în timpul instalării unui " "pachet" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "Nu se poate actualiza la un comit specific fără permisiuni root" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "Nu se poate elimina %s, acesta este necesar pentru: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s ramura %s nu este instalată" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "%s comitul %s nu este instalat" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "Eliminarea depozitului a eșuat: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "Nu s-a putut încărca filtrul „%s”" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "Nu s-a putut parsa filtrul „%s”" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "Nu s-a putut scrie cache-ul rezumatului: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "Niciun rezumat oci cache-uit pentru depozitul de la distanță „%s”" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, fuzzy, c-format msgid "No cached summary for remote '%s'" msgstr "Niciun rezumat oci cache-uit pentru depozitul de la distanță „%s”" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "Sumă de control nevalidă pentru datele extra %s" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " @@ -4921,245 +4961,274 @@ msgstr "" "niciun fișier de rezumat. Verificați dacă a fost valid URL-ul trecut la " "remote-add." -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "Sumă de control nevalidă pentru datele extra %s" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "" "Ramuri multiple disponibile pentru %s, trebuie să specificați una dintre: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Nimic nu se potrivește cu %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Nu se poate găsi ref-ul %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Eroare la căutarea depozitului de la distanță %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Eroare la căutarea depozitului local: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s nu este instalat" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Nu se poate găsi instalarea %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "Format de fișier nevalid, niciun grup %s" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Versiune nevalidă %s, doar 1 suportat" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "Format de fișier nevalid, niciun %s specificat" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "Format de fișier nevalid, cheie gpg nevalidă" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "ID-ul colecției necesită furnizarea cheii GPG" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Executarea %s, ramura %s este deja instalată" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Aplicația %s, ramura %s este deja instalată" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" "Nu se poate elimina depozitul de la distanță „%s” cu ref-ul instalat %s (cel " "puțin)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Caracter nevalid „/” în numele depozitului de la distanță: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "Nu s-a specificat nicio configurare pentru depozitul de la distanță %s" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Se omite ștergerea oglinzii ref-ului (%s, %s)…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, fuzzy, c-format msgid "Unable to open path \"%s\": %s" msgstr "Nu se poate actualiza %s: %s\n" -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, fuzzy, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "Nu se poate crea linia de asamblare de sincronizare" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, fuzzy, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "Nu se poate actualiza %s: %s\n" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "Șirul gol nu este un număr" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "„%s” nu este un număr pozitiv" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "Numărul „%s” se află în afara intervalului [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "Ref-ul %s nu este instalat" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "Aplicația %s nu este instalată" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "Depozitul de la distanță „%s” deja există" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "După cum s-a cerut, %s a fost doar tras, da nu și instalat" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, fuzzy, c-format msgid "Unable to create directory %s" msgstr "Nu se poate crea linia de asamblare de sincronizare" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, fuzzy, c-format msgid "Unable to lock %s" msgstr "Nu se poate găsi ID-ul cheii %s: %d)" -#: common/flatpak-instance.c:581 -#, fuzzy, c-format -msgid "Unable to open directory %s" -msgstr "Nu se poate conecta la magistrala sistemului" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, fuzzy, c-format msgid "Unable to create temporary directory in %s" msgstr "Nu se poate crea directorul de implementare" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, fuzzy, c-format msgid "Unable to create file %s" msgstr "Nu se poate crea linia de asamblare de sincronizare" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, fuzzy, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Nu se poate actualiza %s: %s\n" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "Doar autentificarea Bearer este suportată" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "Doar domeniul în cererea de autentificare" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "Domeniu nevalid în cererea de autentificare" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "Autorizarea a eșuat: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Autorizarea a eșuat" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "Stare de răspuns neașteptată %d când se cere jetonul: %s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "Răspuns de cerere de autentificare nevalid" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "Format de fișier delta nevalid" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "Nu s-a găsit nicio cheie gpg cu ID-ul %s (directorul personal: %s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, fuzzy, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Nu se poate găsi ID-ul cheii %s: %d)" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "Eroare la semnarea comitului: %d" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Configurare de imagine OCI nevalidă" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Sumă de control a stratului greșită, s-a așteptat %s, a fost %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "Nu s-a specificat niciun ref pentru imaginea OCI %s" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Ref greșit (%s) specificat pentru imaginea OCI %s, s-a așteptat %s" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5180,322 +5249,377 @@ msgstr "Se descarcă datele extra: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Se descarcă fișierele: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Numele nu poate fi gol" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Numele nu poate fi mai lung decât 255 de caractere" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Numele nu poate începe cu un punct" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Numele nu poate începe cu %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Numele nu poate să se termine cu un punct" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Doar ultimul segment al numelui poate să conțină -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Segmentul numelui nu poate să înceapă cu %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Numele nu poate să conțină %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "Numele trebuie să conțină cel puțin 2 puncte" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 #, fuzzy msgid "Arch can't be empty" msgstr "Ramura nu poate fi goală" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, fuzzy, c-format msgid "Arch can't contain %c" msgstr "Ramura nu poate să conțină %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Ramura nu poate fi goală" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Ramura nu poate începe cu %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Ramura nu poate să conțină %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 #, fuzzy msgid "Invalid remote name" msgstr "Nume al depozitului de la distanță greșit: %s" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s nu este aplicație sau executare" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Număr de componente greșit în %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, fuzzy, c-format msgid "Invalid name %.*s: %s" msgstr "Nume nevalid %s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, fuzzy, c-format msgid "Invalid arch: %.*s: %s" msgstr "Ramură nevalidă %s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Nume nevalid %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, fuzzy, c-format msgid "Invalid arch: %s: %s" msgstr "Ramură nevalidă %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, fuzzy, c-format msgid "Invalid branch: %s: %s" msgstr "Ramură nevalidă %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, fuzzy, c-format msgid "Wrong number of components in partial ref %s" msgstr "Număr de componente greșit în executarea %s" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 #, fuzzy msgid " development platform" msgstr "Utilizează executarea de dezvoltare" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr "" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 #, fuzzy msgid " application base" msgstr "Aplicație" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr "" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr "" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 #, fuzzy msgid " translations" msgstr "Loc de instalare" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr "" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "ID nevalid %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Nume al depozitului de la distanță greșit: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "Niciun url specificat" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "" "Verificarea GPG trebuie să fie activată când un ID de colecție este stabilit" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Nu s-a putut deschide fișierul de informații ale aplicației" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Nu sunt surse de date extra" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Nu se poate crea linia de asamblare de sincronizare" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "%s nevalid: Lipsește grupul „%s”" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Nu s-a putut sincroniza cu proxy-ul dbus" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "%s nevalid: Lipsește cheia „%s”" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Cheie gpg nevalidă" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Eroare la copierea iconiței 64x64 pentru componenta %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Eroare la copierea iconiței 128x128 pentru componenta %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, fuzzy, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s este sfârșit-de-fișier, se ignoră\n" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Nu sunt date appstream pentru %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Pachet nevalid, nu există ref în datele meta" -#: common/flatpak-run.c:2207 +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "" +"Colecția „%s” a pachetului nu se potrivește cu colecția „%s” a depozitului " +"de la distanță" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Datele meta din antet și aplicație nu sunt consistente" + +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "" "Nu este disponibilă nicio sesiune de utilizator systemd, cgroups nu sunt " "disponibile" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "Nu se poate aloca id-ul de instanță" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Nu s-a putut deschide fișierul de informații flatpak: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Nu s-a putut deschide fișierul bwrapinfo.json: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "Nu s-a putut scrie id-ul instanței fd: %s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "Inițializarea seccomp a eșuat" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, fuzzy, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Nu s-a putut adăuga arhitectura la filtrul seccomp" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, fuzzy, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Nu s-a putut adăuga arhitectura multi-arhitectură la filtrul seccomp" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, fuzzy, c-format msgid "Failed to block syscall %d: %s" msgstr "Nu s-a putut bloca syscall-ul %d" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, fuzzy, c-format msgid "Failed to export bpf: %s" msgstr "Nu s-a putut exporta bpf" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "Nu s-a putut deschide „%s”" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "idconfig a eșuat, stare de ieșire %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "Nu s-a putut deschide ld.so.cache generat" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" "Rularea %s nu este permisă de politica stabilită de către administrator" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "Nu s-a putut migra de la %s: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" "Nu s-a putut migra directorul vechi de date %s al aplicației la numele nou " "%s: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Nu s-a putut crea legătura simbolică în timpul migrării %s: %s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Nu s-a putut deschide fișierul de informații ale aplicației" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Nu se poate crea linia de asamblare de sincronizare" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Nu s-a putut sincroniza cu proxy-ul dbus" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Avertisment: A apărut o problemă la căutarea pentru ref-uri legate: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "Aplicația %s necesită executarea %s care nu a fost găsită" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "Aplicația %s necesită executarea %s care nu este instalată" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "Nu se poate dezinstala %s care este necesar pentru %s" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "" "Depozitul de la distanță %s a fost dezactivat, se ignoră actualizarea %s" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s este deja instalat" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s este deja instalat pentru depozitul de la distanță %s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr ".flatpakref nevalid: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "Eroare la actualizarea datelor meta de la distanță pentru „%s”: %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " @@ -5504,55 +5628,55 @@ msgstr "" "Avertisment: Tratarea erorii de preluare a depozitului de la distanță ca " "nefatală deoarece %s este deja instalat: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "Niciun autentificator instalat pentru depozitul de la distanță „%s”" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "Nu s-au putut obține jetoanele pentru ref: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "Nu s-au putut obține jetoanele pentru ref" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 #, fuzzy msgid "any remote" msgstr "Locație la distanță" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "URL-ul Flatpakrepo %s nu este un fișier, HTTP, sau HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "Nu se poate încărca fișierul dependent %s: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr ".flatpakrepo nevalid: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "Tranzacția este deja executată" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." @@ -5560,16 +5684,16 @@ msgstr "" "Se refuză operarea pe o instalare a utilizatorului ca root! Aceasta poate " "duce la proprietate incorectă de fișiere și erori de permisiune." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Anulat de utilizator" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "Se omite %s din cauza erorii anterioare" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, fuzzy, c-format msgid "Aborted due to failure (%s)" msgstr "Anulat din cauza eșecului" @@ -5616,139 +5740,113 @@ msgstr "" msgid "URI is not absolute, and no base URI was provided" msgstr "" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "Glob gol" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "Prea multe segmente în glob" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "ID nevalid %s: %s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" -msgstr "Caracter de glob nevalid „%c”" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" -msgstr "Glob care lipsește la linia %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" -msgstr "Text de urmărire la linia %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "la linia %d" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "Cuvânt neașteptat „%s” pe linia %d" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "%s nevalid: Lipsește grupul „%s”" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "%s nevalid: Lipsește cheia „%s”" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Cheie gpg nevalidă" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Nu sunt surse de date extra" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Eroare la copierea iconiței 64x64 pentru componenta %s: %s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Eroare la copierea iconiței 128x128 pentru componenta %s: %s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, fuzzy, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s este sfârșit-de-fișier, se ignoră\n" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Nu sunt date appstream pentru %s: %s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Glob gol" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "Pachet nevalid, nu există ref în datele meta" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "Prea multe segmente în glob" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "" -"Colecția „%s” a pachetului nu se potrivește cu colecția „%s” a depozitului " -"de la distanță" - -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "Datele meta din antet și aplicație nu sunt consistente" +msgid "Invalid glob character '%c'" +msgstr "Caracter de glob nevalid „%c”" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "Configurare de imagine OCI nevalidă" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "Glob care lipsește la linia %d" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "Sumă de control a stratului greșită, s-a așteptat %s, a fost %s" +msgid "Trailing text on line %d" +msgstr "Text de urmărire la linia %d" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "Nu s-a specificat niciun ref pentru imaginea OCI %s" +msgid "on line %d" +msgstr "la linia %d" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "Ref greșit (%s) specificat pentru imaginea OCI %s, s-a așteptat %s" +msgid "Unexpected word '%s' on line %d" +msgstr "Cuvânt neașteptat „%s” pe linia %d" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "Argument require-flatpak nevalid %s" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s are nevoie de o versiune ulterioară flatpak (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "Șirul gol nu este un număr" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "„%s” nu este un număr pozitiv" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "Numărul „%s” se află în afara intervalului [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "" @@ -5762,44 +5860,48 @@ msgstr "Nu este un depozit de la distanță OCI" msgid "Invalid token" msgstr "Jeton nevalid" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "Nu s-a găsit niciun suport pentru portal" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Refuză" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Actualizează" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "Actualizați %s?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "Aplicația vrea să se actualizeze." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" "Accesul pentru actualizare poate fi modificat oricând din setările de " "confidențialitate." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "Actualizarea aplicației nu este permisă" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" "Actualizarea de sine nu este suportată, versiunea nouă necesită permisiuni " "noi" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "Actualizarea s-a terminat neașteptat" @@ -6025,6 +6127,33 @@ msgstr "" "Autentificarea este necesară pentru a instala software care este " "restricționat de politica de control parental" +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "S-au găsit ref-(uri) similare pentru „%s” în depozitul de la distanță " +#~ "„%s” (%s).\n" +#~ "Utilizați acest depozit de la distanță?" + +#, fuzzy, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "" +#~ "Nicio intrare pentru %s în cache-ul flatpak al rezumatului de la distanță " +#~ "„%s” " + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Nu s-a putut face rebase %s la %s: " + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Nu s-a putut face rebase %s la %s: %s\n" + +#, fuzzy, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Nu se poate conecta la magistrala sistemului" + #~ msgid "install" #~ msgstr "instalează" diff --git a/po/ru.gmo b/po/ru.gmo deleted file mode 100644 index b2ebd6234bbc5af9bc05595119b846a9d4f24161..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 145549 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, 2017. # Артемий Судаков , 2020. +# Дмитрий , 2023. # msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" -"PO-Revision-Date: 2022-06-29 15:02+0300\n" -"Last-Translator: Aleksandr Melman \n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2023-02-21 22:52+0700\n" +"Last-Translator: Dmitry \n" "Language-Team: Russian \n" "Language: ru\n" "MIME-Version: 1.0\n" @@ -19,106 +20,106 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -"X-Generator: Poedit 3.0.1\n" +"X-Generator: Poedit 3.0\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" -msgstr "Экспортировать среду исполнения вместо приложения" +msgstr "Экспортировать среду выполнения вместо приложения" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Архитектура для пакета" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "АРХИТЕКТУРА" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "URL репозитория" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" -msgstr "URL файла flatpakrepo среды исполнения" +msgstr "URL файла flatpakrepo среды выполнения" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Добавить ключ GPG из ФАЙЛА (- из стандартного потока ввода)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "ФАЙЛ" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "ID Ключа GPG для подписи образа OCI" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "ID-КЛЮЧА" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "ID-КЛЮЧА" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "Домашний каталог GPG для поиска связок ключей" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "ДОМАШНИЙ_КАТАЛОГ" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "Коммит OSTree для создания дельта-пакета из" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "КОММИТ" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Экспортировать образ oci вместо пакета flatpak" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -126,58 +127,58 @@ msgstr "" "ПУТЬ ИМЯ_ФАЙЛА ИМЯ [ВЕТВЬ] - Создать один файл с пакетом из локального " "репозитория" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "Должны быть указаны ПУТЬ, ИМЯ_ФАЙЛА и ИМЯ" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Слишком много аргументов" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "'%s' не является корректным репозиторием" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "'%s' не является корректным репозиторием: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "'%s' не является корректным именем: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "'%s' не является корректным именем ветви: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -185,7 +186,7 @@ msgstr "'%s' не является корректным именем файла" #: app/flatpak-builtins-build.c:49 msgid "Use Platform runtime rather than Sdk" -msgstr "Использовать обычную среду исполнения вместо отладочной" +msgstr "Использовать обычную среду выполнения вместо отладочной" #: app/flatpak-builtins-build.c:50 msgid "Make destination readonly" @@ -212,7 +213,7 @@ msgstr "КАТАЛОГ" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Где искать модифицированный каталог sdk (по умолчанию 'usr')" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Использовать другой файл метаданных" @@ -232,106 +233,107 @@ msgstr "Журналировать вызовы пользовательской msgid "Log system bus calls" msgstr "Журналировать вызовы системной шины" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "КАТАЛОГ [КОМАНДА [параметры...]] - Сборка в каталоге" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "Должен быть указан КАТАЛОГ" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "" "Каталог сборки %s не инициализирован, воспользуйтесь flatpak build-init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "" "некорректные метаданные, не является ни приложением, ни средой выполнения" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "Не найдена точка расширения, подходящая для %s в %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Отсутствует '=' в параметре связанного монтирования '%s'" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Невозможно запустить приложение" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Каталог репозитория-источника" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "ИСТ-РЕПО" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Ссылка репозитория-источника" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "ИСТ-ССЫЛ" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Тема в одну строку" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "ТЕМА" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Полное описание" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "СОДЕРЖИМОЕ" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Обновить ветвь appstream" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Обновить ветвь appstream" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Не обновлять сводную информацию" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "ID ключа GPG для подписи коммита" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "Пометить сборку как окончившую срок поддержки" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "ПРИЧИНА" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -339,369 +341,374 @@ msgstr "" "Пометить ссылки, совпадающие с префиксом СТАР_ID, как заменённые на НОВ_ID и " "более не поддерживаемые" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "СТАР_ID=НОВ_ID" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "Задать тип токена, нужного для установки данного коммита" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "ЗНАЧ" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "Переназначить отметку времени коммита (NOW для текущего времени)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "ВРЕМ_МЕТКА" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "Не создавать индекс сводки" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" "НАЗН-РЕПО [НАЗН-ССЫЛКА]... - Сделать новый коммит на основе существующеих " "коммитов" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "Должен быть указан НАЗН-РЕПО" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "Если --src-repo не задана, должна быть указана ровно одна ссылка назначения" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" "Если --src-ref задана, должна быть указана ровно одна ссылка назначения" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "Необходимо указать либо --src-repo, либо --src-ref" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "Неверный формат аргумента для --end-of-life-rebase=СТАР_ID=НОВ_ID" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "Неверное имя %s в --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "Невозможно разобрать '%s'" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "Невозможно сделать коммит из частичного исходного коммита" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: не изменено\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Имя архитектуры для экспорта (должна быть совместима с хостом)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Зафиксировать среду выполнения (/usr), не /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Использовать другой каталог для файлов" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "ПОДКАТАЛОГ" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Исключить файлы" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "ШАБЛОН" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Исключенные файлы для добавления" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "Отметить сборку как заменённую указанным ID и более не поддерживаемую" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Переназначить отметку времени коммита" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "ID коллекции" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "ПРЕДУПРЕЖДЕНИЕ: Ошибка выполнения desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "ПРЕДУПРЕЖДЕНИЕ: Ошибка чтения из desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "ПРЕДУПРЕЖДЕНИЕ: Ошибка при проверке файла desktop %s: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "ПРЕДУПРЕЖДЕНИЕ: не найден Exec ключ в %s: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "" "ПРЕДУПРЕЖДЕНИЕ: программа %s, указанная в строке Exec, не найдена: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "ПРЕДУПРЕЖДЕНИЕ: иконка %s не совпадает с ID приложения: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" "ПРЕДУПРЕЖДЕНИЕ: иконка прописана в файле desktop, но не экспортирована: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Некорректный тип uri %s, поддерживается только http/https" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "Невозможно найти базовое имя в %s, укажите его" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "" "Не разрешается использовать символ '/' в названии дополнительных данных" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Неверный формат контрольной суммы sha256: '%s'" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Дополнительные данные нулевого размера не поддерживаются" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "ПУТЬ КАТАЛОГ [ВЕТВЬ] - Создать репозиторий из каталога сборки" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "Должны быть указаны ПУТЬ и КАТАЛОГ" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "'%s' не является корректным ID коллекции: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Не указано имя в метаданных" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Коммит: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Всего метаданных: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Записано метаданных: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Всего данных: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Данных записано: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Байтов контента записано:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Указать команду" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "КОМАНДА" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Какую версию flatpak требовать" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "ЗНАЧИТЕЛЬНАЯ.МИНОРНАЯ.МИКРО" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Не обрабатывать экспортируемое" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Информация о дополнительных данных" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Добавить информацию о точке расширения" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "ИМЯ=ПЕРЕМЕННАЯ[=ЗНАЧЕНИЕ]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Удалить информацию о точке расширения" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "ИМЯ" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Установить приоритет расширения (только для расширений)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "ЗНАЧЕНИЕ" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Заменить sdk, используемый приложением" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Заменить среду выполнения, используемую приложением" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" -msgstr "СРЕДА_ИСПОЛНЕНИЯ" +msgstr "СРЕДА_ВЫПОЛНЕНИЯ" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Установить параметр обобщенной политики" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "ГРУППА=КЛЮЧ[=ЗНАЧЕНИЕ]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Не наследовать разрешения из среды выполнения" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "Не экспортируется %s, некорректное расширение\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "Не экспортируется %s, не разрешенное имя файла\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "Экспортирую %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Найдено больше одного исполняемого файла\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "Использовать %s как команду\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Не найдено исполняемых файлов\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Неверный аргумент --require-version: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "Слишком мало элементов у параметра --extra-data %s" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -710,7 +717,7 @@ msgstr "" "Слишком мало элементов в аргументе --metadata %s, формат должен иметь вид " "ГРУППА=КЛЮЧ[=ЗНАЧЕНИЕ]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -720,62 +727,63 @@ msgstr "" "Слишком мало элементов в аргументе --extension %s, формат должен иметь вид " "ИМЯ=ПЕРЕМЕННАЯ[=ЗНАЧЕНИЕ]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "Некорректное имя расширения %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "КАТАЛОГ - Финализировать каталог сборки" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Каталог сборки %s не инициализирован" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Каталог сборки %s уже финализирован" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Пожалуйста, перепроверьте экспортированные файлы и метаданные\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Переопределить ссылку на импортированный пакет" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "ССЫЛКА" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Импортировать образ oci вместо пакета flatpak" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Ссылка '%s' не найдена в реестре" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "Множество изображений в реестре, укажите ссылку с помощью --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "Импорт: %s (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "ПУТЬ ИМЯ_ФАЙЛА - Импортировать файл с пакетом в локальный репозиторий" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "Должны быть указаны ПУТЬ и ИМЯ_ФАЙЛА" @@ -786,7 +794,7 @@ msgstr "Используемая архитектура" #: app/flatpak-builtins-build-init.c:54 msgid "Initialize var from named runtime" -msgstr "Инициализировать переменую из названной среды исполнения" +msgstr "Инициализировать переменую из названной среды выполнения" #: app/flatpak-builtins-build-init.c:55 msgid "Initialize apps from named app" @@ -853,25 +861,25 @@ msgid "Re-initialize the sdk/var" msgstr "Переинициализировать sdk/окружение" #: app/flatpak-builtins-build-init.c:118 -#, fuzzy, c-format +#, c-format msgid "Requested extension %s/%s/%s is only partially installed" -msgstr "Требуемое расширение %s установлено частично" +msgstr "Требуемое расширение %s/%s/%s установлено частично" #: app/flatpak-builtins-build-init.c:147 -#, fuzzy, c-format +#, c-format msgid "Requested extension %s/%s/%s not installed" -msgstr "Требуемое расширение %s не установлено" +msgstr "Требуемое расширение %s/%s/%s не установлено" #: app/flatpak-builtins-build-init.c:207 msgid "" "DIRECTORY APPNAME SDK RUNTIME [BRANCH] - Initialize a directory for building" msgstr "" -"КАТАЛОГ ИМЯ_ПРИЛОЖЕНИЯ SDK СРЕДА_ИСП [ВЕТВЬ] - Инициализировать каталог для " +"КАТАЛОГ ИМЯ_ПРИЛОЖЕНИЯ SDK СРЕДА_ВЫП [ВЕТВЬ] - Инициализировать каталог для " "сборки" #: app/flatpak-builtins-build-init.c:214 msgid "RUNTIME must be specified" -msgstr "Должна быть указана СРЕДА_ИСП" +msgstr "Должна быть указана СРЕДА_ВЫП" #: app/flatpak-builtins-build-init.c:235 #, c-format @@ -890,88 +898,88 @@ msgstr "'%s' не является корректным именем прило msgid "Build directory %s already initialized" msgstr "Каталог сборки %s уже инициализирован" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Архитектура для установки" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" -msgstr "Искать среду исполнения с указанным именем" +msgstr "Искать среду выполнения с указанным именем" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "ПУТЬ [ID [ВЕТВЬ]] - Подписать приложение или среду выполнения" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "Должен быть указан ПУТЬ" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Ключ/ключи GPG не указаны" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Перенаправить этот репозиторий на новый адрес" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Красивое имя для репозитория" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "ЗАГОЛОВОК" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "Комментарий к этому репозиторию в одну строку" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "КОММЕНТАРИЙ" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "Полное описание этого репозитория" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "ОПИСАНИЕ" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "URL веб-сайта этого репозитория" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "URL логотипа этого репозитория" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Ветвь по умолчанию для репозитория" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "ВЕТВЬ" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "ID-КОЛЛЕКЦИИ" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" @@ -979,123 +987,126 @@ msgstr "" "Постоянно загружать ID коллекции в клиентские удаленные конфигурации, только " "для поддержки параллельной загрузки" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "Постоянно загружать ID коллекции в клиентские удаленные конфигурации" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Имя аутентификатора для этого репозитория" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "Автоматически установливать аутентификатор для этого репозитория" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "Не установливать автоматически аутентификатор для этого репозитория" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Параметр аутентификатора" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "КЛЮЧ=ЗНАЧЕНИЕ" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "" "Импортировать новый используемый по умолчанию публичный ключ GPG из ФАЙЛА" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "ID Ключа GPG для подписи сводной информации" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Создать дельта файлы" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Не обновлять ветвь appstream" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" "Максимальное число параллельных задач при создании дельт (по умолчанию: " "число ЦПУ)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "КОЛИЧЕСТВО-ЗАДАЧ" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "Не создавать дельты, совпадающие со ссылками" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Очистить неиспользуемые объекты" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "Очистить, но ничего не удалять" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" "Обходить только родителей DEPTH для каждого коммита (по умолчанию: " "-1=бесконечное количество)." -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "ГЛУБИНА" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Создание дельты: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Создание дельты: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Ошибка при создании дельты %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Ошибка при создании дельты %s (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "ПУТЬ - Обновить метаданные репозитория" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Обновление ветви appstream\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Обновление сводной информации\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Всего объектов: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Нет недоступных объектов\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "Удалено %u объектов, %s освобождено\n" @@ -1167,25 +1178,25 @@ msgstr "Можно использовать только одно из --list, - msgid "Must specify one of --list, --get, --set or --unset" msgstr "Необходимо указать одно из --list, --get, --set или --unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Искать приложение с указанным именем" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Архитектура для копирования" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "НАЗНАЧЕНИЕ" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "Разрешить частичные коммиты в созданном репозитории" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " @@ -1194,13 +1205,13 @@ msgstr "" "Предупреждение: Связанная ссылка '%s' установлена частично. Используйте --" "allow-partial, чтобы скрыть это сообщение.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" "Предупреждение: Пропуск связанной ссылки ‘%s’, так как она не установлена.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1209,13 +1220,13 @@ msgstr "" "Предупреждение: Пропуск связанной ссылки ‘%s’, так как у её удалённого " "репозитория ‘%s’ не указан ID коллекции.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" "Предупреждение: пропуск связанной ссылки '%s', потому что это extra-data.\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1224,35 +1235,35 @@ msgstr "" "У удалённого репозитория ‘%s’ не указан ID коллекции, который требуется для " "распространения ‘%s’ с помощью P2P." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" -"Предупреждение: Пропуск ссылки '%s' (среда исполнения для ‘%s’), потому что " +"Предупреждение: Пропуск ссылки '%s' (среда выполнения для ‘%s’), потому что " "это extra-data.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" -"ПУТЬ-МОНТ [ССЫЛКА…] - Скопировать приложения или среды исполнения на съёмный " +"ПУТЬ-МОНТ [ССЫЛКА…] - Скопировать приложения или среды выполнения на съёмный " "носитель" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "ПУТЬ-МОНТ и ССЫЛКА должны быть указаны" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" "Ссылка ‘%s’ найдена в нескольких установках: %s. Вы должны указать одну." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "Все ссылки должны быть в одном месте установки (найдено в %s и %s)." -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " @@ -1261,21 +1272,21 @@ msgstr "" "Предупреждение: Ссылка '%s' установлена частично. Используйте --allow-" "partial, чтобы убрать это сообщение.\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" "Установленная ссылка ‘%s’ является extra-data и не может распространяться " "оффлайн" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" "Предупреждение: Невозможно обновить метаданные для удалённого репозитория " "‘%s’: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1283,7 +1294,7 @@ msgstr "" "репозитория ‘%s’ архитектуры ‘%s’: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1292,7 +1303,7 @@ msgstr "" "архитектуры ‘%s’: %s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1367,19 +1378,20 @@ msgstr "ФАЙЛ - Получить информацию об экспортир #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Не экспортировано\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Какую информацию показывать" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "ПОЛЕ,…" @@ -1398,7 +1410,7 @@ msgid "Show the document path" msgstr "Показать путь к документу" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Источник" @@ -1412,7 +1424,7 @@ msgid "Show applications with permission" msgstr "Показать приложения с разрешением" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Разрешения" @@ -1542,38 +1554,38 @@ msgid "Show the kind of change" msgstr "Показать вид изменений" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Ссылка" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Показать ссылки" #: app/flatpak-builtins-history.c:60 msgid "Show the application/runtime ID" -msgstr "Показать ID приложения/среды исполнения" +msgstr "Показать ID приложения/среды выполнения" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Архитектура" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Показать архитектуру" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Ветвь" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Показать ветвь" @@ -1585,7 +1597,7 @@ msgstr "Тип установки" msgid "Show the affected installation" msgstr "Показать затронутую установку" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Удалённый репозиторий" @@ -1594,7 +1606,7 @@ msgid "Show the remote" msgstr "Показать удалённый репозиторий" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Коммит" @@ -1614,7 +1626,7 @@ msgstr "Показать предыдущий коммит" msgid "Show the remote URL" msgstr "Показать URL удалённого репозитория" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Пользователь" @@ -1631,7 +1643,7 @@ msgid "Show the tool that was used" msgstr "Показать используемый инструментарий" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Версия" @@ -1659,10 +1671,12 @@ msgid " - Show history" msgstr " - Показать историю" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "Ошибка разбора параметра --since" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "Ошибка разбора параметра --until" @@ -1678,11 +1692,11 @@ msgstr "Показать установленное для всех пользо msgid "Show specific system-wide installations" msgstr "Показать установленное в указанном каталоге" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Показать ссылки" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Показать коммит" @@ -1694,15 +1708,15 @@ msgstr "Показать происхождение" msgid "Show size" msgstr "Показать размер" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Показать метаданные" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" -msgstr "Показать среды исполнения" +msgstr "Показать среды выполнения" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Показать sdk" @@ -1714,8 +1728,8 @@ msgstr "Показать разрешения" msgid "Query file access" msgstr "Управление доступом к файлам" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1733,9 +1747,9 @@ msgstr "Показать расположение" msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "" "ИМЯ [ВЕТВЬ] - Получить информацию об установленном приложении или среде " -"исполнения" +"выполнения" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "Должно быть указано ИМЯ" @@ -1744,85 +1758,87 @@ msgstr "Должно быть указано ИМЯ" msgid "ref not present in origin" msgstr "ссылка отсутствует в источнике" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Предупреждение: коммиит не содержит метаданных Flatpak\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Ссылка:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Архитектура:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Ветвь:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Версия:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Лицензия:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Коллекция:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Установка:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Установлено:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" -msgstr "Среда исполнения:" +msgstr "Среда выполнения:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Дата:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Заголовок:" @@ -1835,15 +1851,15 @@ msgid "Latest commit:" msgstr "Последний коммит:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Коммит:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Родитель:" @@ -1852,14 +1868,14 @@ msgid "Alt-id:" msgstr "Альт-ID:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "Конец-поддержки:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "Конец-поддержки-замена:" @@ -1868,149 +1884,150 @@ msgid "Subdirectories:" msgstr "Поддиректории:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Расширение:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Источник:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Подпути:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "не-сопровождается" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "неизвестно" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "" "Не обращаться к репозиторию, вместо этого установить из локального кеша" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Не начинать установку, вместо этого скачать только в кеш" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Не устанавливать связанные ссылки" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" -msgstr "Не проверять и не устанавливать зависимости среды исполнения" +msgstr "Не проверять и не устанавливать зависимости среды выполнения" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "Не закреплять автоматически установленное явно" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Не использовать статические дельты" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "Дополнительно установить SDK, используемый для создания данных ссылок" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" "Дополнительно установить отладочную информацию для заданных ссылок и их " "зависимостей" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "ПУТЬ является файлом с пакетом" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "ПУТЬ является описанием приложения в формате .flatpakref" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "Проверять подписи пакета ключом GPG из ФАЙЛА (- из стандартного ввода)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Установить только указанный подкаталог" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Автоматически отвечать да на все вопросы" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Сперва удалить, если уже установлено" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "Выводить минимум информации и не задавать вопросов" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Обновить, если уже установлено" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "Использовать этот репозиторий для параллельной загрузки" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Должно быть указано имя файла с пакетом" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Пакеты из удалённых репозиториев не поддерживаются" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Должно быть указано имя файла или адрес" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "" -"[ПУТЬ/УДАЛЁННЫЙ_РЕПО] [ССЫЛКА…] - Установить приложения или среды исполнения" +"[ПУТЬ/УДАЛЁННЫЙ_РЕПО] [ССЫЛКА…] - Установить приложения или среды выполнения" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "Должна быть указана хотя бы одна ССЫЛКА" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Поиск совпадений…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, c-format msgid "No remote refs found for ‘%s’" msgstr "Для '%s' не найдено удаленных ссылок" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Некорректная ветвь %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Нет совпадений с %s в локальном репозитории для удалённого %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Нет совпадений с %s в удалённом репозитории %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Пропуск: %s\n" @@ -2038,7 +2055,7 @@ msgstr "Показать дополнительную информацию" #: app/flatpak-builtins-list.c:47 msgid "List installed runtimes" -msgstr "Показать установленные среды исполнения" +msgstr "Показать установленные среды выполнения" #: app/flatpak-builtins-list.c:48 msgid "List installed applications" @@ -2048,59 +2065,59 @@ msgstr "Показать установленные приложения" msgid "Arch to show" msgstr "Показать указанную архитектуру" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Перечислить все ссылки (включая локализации и отладочные)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" -msgstr "Показать приложения, использующие СРЕДУ_ИСПОЛНЕНИЯ" +msgstr "Показать приложения, использующие СРЕДУ_ВЫПОЛНЕНИЯ" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Имя" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Показать имя" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Описание" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Показать описание" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "ID Приложения" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Показать ID приложения" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Показать версию" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" -msgstr "Среда исполнения" +msgstr "Среда выполнения" #: app/flatpak-builtins-list.c:63 msgid "Show the used runtime" -msgstr "Показать используемую среду исполнения" +msgstr "Показать используемую среду выполнения" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Показать удалённый репозиторий источника" @@ -2112,7 +2129,7 @@ msgstr "Показать установку" msgid "Active commit" msgstr "Активный коммит" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Показать активный коммит" @@ -2124,37 +2141,37 @@ msgstr "Последний коммит" msgid "Show the latest commit" msgstr "Показать последний коммит" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Установленный размер" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Показать установленный размер" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Параметры" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Показать параметры" -#: app/flatpak-builtins-list.c:179 -#, fuzzy, c-format +#: app/flatpak-builtins-list.c:178 +#, c-format msgid "Unable to load details of %s: %s" -msgstr "Невозможно загрузить сводку с удаленного репозитория %s: %s" +msgstr "Не удалось загрузить сведения о %s: %s" -#: app/flatpak-builtins-list.c:189 +#: app/flatpak-builtins-list.c:188 #, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Невозможно проверить текущую версию %s: %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" -msgstr " - Показать список установленных приложений и/или сред исполнения" +msgstr " - Показать список установленных приложений и/или сред выполнения" #: app/flatpak-builtins-make-current.c:38 msgid "Arch to make current for" @@ -2164,7 +2181,7 @@ msgstr "Архитектура, которая станет текущей дл msgid "APP BRANCH - Make branch of application current" msgstr "ПРИЛОЖЕНИЕ ВЕТВЬ - Сделать ветвь приложения текущей" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "Должно быть указано ПРИЛОЖЕНИЕ" @@ -2189,10 +2206,12 @@ msgstr "" "под шаблон" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "Нет замаскированных шаблонов\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Замаскированные шаблоны:\n" @@ -2208,26 +2227,26 @@ msgstr "Показать существующие переопределения msgid "[APP] - Override settings [for application]" msgstr "ПРИЛОЖЕНИЕ - Переопределить настройки [для приложения]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[ТАБЛИЦА] [ID] - Показать список разрешений" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Таблица" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Объект" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "Приложение" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Данные" @@ -2282,13 +2301,15 @@ msgstr "Удалить соответствующие закрепления" #: app/flatpak-builtins-pin.c:56 msgid "[PATTERN…] - disable automatic removal of runtimes matching patterns" msgstr "" -"[ШАБЛОН…] - отключить автоудаление сред исполнения, подходящих под шаблонны" +"[ШАБЛОН…] - отключить автоудаление сред выполнения, подходящих под шаблонны" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "Нет закреплённых шаблонов\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "Закреплённые шаблоны:\n" @@ -2326,7 +2347,7 @@ msgstr "Показать коммит приложения" #: app/flatpak-builtins-ps.c:54 msgid "Show the runtime ID" -msgstr "Показать ID среды исполнения" +msgstr "Показать ID среды выполнения" #: app/flatpak-builtins-ps.c:55 msgid "R.-Branch" @@ -2334,7 +2355,7 @@ msgstr "Ветвь среды" #: app/flatpak-builtins-ps.c:55 msgid "Show the runtime branch" -msgstr "Показать ветвь среды исполнения" +msgstr "Показать ветвь среды выполнения" #: app/flatpak-builtins-ps.c:56 msgid "R.-Commit" @@ -2342,7 +2363,7 @@ msgstr "Коммит среды" #: app/flatpak-builtins-ps.c:56 msgid "Show the runtime commit" -msgstr "Показать коммит среды исполнения" +msgstr "Показать коммит среды выполнения" #: app/flatpak-builtins-ps.c:57 msgid "Active" @@ -2364,125 +2385,125 @@ msgstr "Показать, работает ли приложение в фоне msgid " - Enumerate running sandboxes" msgstr " - Перечислить работающие песочницы" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Ничего не делать если удалённый репозиторий уже существует" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "ПУТЬ указывает на файл с конфигурацией, а не на репозиторий" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Отключить проверку GPG" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Пометить удалённый репозиторий как не просматриваемый" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "" "Пометить удалённый репозиторий как не используемый для поиска зависимостей" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "Установить приоритет (по умолчанию 1, чем больше тем выше приоритет)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "ПРИОРИТЕТ" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "Именованное подмножество для данного удалённого репозитория" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "ПОДМНОЖЕСТВО" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Красивое имя для удалённого репозитория" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "Однострочный комментарий для этого удалённого репозитория" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "Полное описание для удалённого репозитория" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "URL веб-сайта для этого удалённого репозитория" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "URL логотипа для этого удалённого репозитория" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Ветвь по-умолчанию для этого удалённого репозитория" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Импортировать ключ GPG из ФАЙЛА (- для стандартного потока ввода)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Указать путь к ФАЙЛУ локального фильтра" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Отключить удалённый репозиторий" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Имя аутентификатора" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Автоматически устанавливать аутентификатор" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "Не устанавливать аутентификатор автоматически" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "Не следовать перенаправлению, заданному в файле сводки" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "Не удалось загрузить адрес %s: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Не удалось загрузить файл %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "ИМЯ ПУТЬ - Добавить удалённый репозиторий" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "Проверка GPG обязательна, если коллекции включены" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "Удалённый репозиторий %s уже существует" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Некорректное имя аутентификатора %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "" @@ -2510,61 +2531,61 @@ msgstr "Удалить их?" msgid "Can't remove remote '%s' with installed refs" msgstr "Невозможно удалить репозиторий '%s' с установленными ссылками" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "Показать информацию для указанного коммита" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Показать журнал" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Показать родителя" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Использовать локальный кэш, даже если он устарел" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "Список ссылок, доступных только для параллельной загрузки" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " УДАЛЁННЫЙ_РЕПО ССЫЛКА - Показать информацию о приложении или среде " -"исполнения в удалённом репозитории" +"выполнения в удалённом репозитории" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "Должны быть указаны УДАЛЁННЫЙ_РЕПО и ССЫЛКА" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Загрузить:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "История:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Коммит:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Тема:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Дата:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Предупреждение: Коммит %s не содержит метаданных flatpak\n" @@ -2593,7 +2614,7 @@ msgstr "Показать адрес" msgid "Show the collection ID" msgstr "Показать ID коллекции" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "Подмножество" @@ -2649,42 +2670,42 @@ msgstr "Показать значок" msgid " - List remote repositories" msgstr " - Показать удалённые репозитории" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Показать архитектуры и ветви" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Показать только среды исполнения" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Показать только приложения" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Показать элементы с доступными обновлениями" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Показать только указанные архитектуры (* для всех)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" -msgstr "Показать среду исполнения" +msgstr "Показать среду выполнения" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Размер загрузки" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Показать размер загрузки" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr "" -" [УДАЛЁННЫЙ_РЕПО или URI] - Показать доступные среды исполнения и приложения" +" [УДАЛЁННЫЙ_РЕПО или URI] - Показать доступные среды выполнения и приложения" #: app/flatpak-builtins-remote-modify.c:66 msgid "Enable GPG verification" @@ -2815,224 +2836,231 @@ msgstr "Ошибка при переустановке %s: %s\n" msgid "- Repair a flatpak installation" msgstr "- Исправить установку flatpak" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Удаление неразвёрнутой ссылки %s…\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Пропуск неразвёрнутой ссылки %s…\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d/%d] Проверяется %s...\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "Пробный запуск: " -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "Удаление ссылки %s из-за отсутствующих объектов\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "Удаление ссылки %s из-за недействительных объектов\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "Удаление ссылки %s из-за %d\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "Проверка удалённых репозиториев...\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "Удаленный репозиторий %s для ссылки %s отсутствует\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "Удалённый репозиторий %s для ссылки %s отключён\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "Очистка объектов\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "Удаление .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "Переустановка ссылок\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "Переустановка удалённых ссылок\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "Во время удаления appstream для %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "Во время развёртывания appstream для %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Режим репозитория: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "Индексированные сводки: %s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "true" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "false" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "Дочерние сводки: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "Версия кэша: %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "Индексированные дельты: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Заголовок: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Комментарий: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Описание: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Домашняя страница: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Значок: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "ID коллекции: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Ветвь по-умолчанию: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "Адрес перенаправления: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "ID коллекции развертывания: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Имя аутентификатора: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "Установка аутентификатора: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "Хеш ключа GPG: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "%zd итоговые ветви\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Установлено" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Загрузка" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "Подмножества" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "Дайджест" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "Длина истории" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Вывести общую информацию о репозитории" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Список ветвей в репозитории" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Вывести метаданные для ветви" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Показать коммиты для ветви" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "Вывести информацию о подмножествах в репозитории" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "Ограничить информацию подмножествами с данным префиксом" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "ПУТЬ - Сопровождение репозитория" @@ -3050,15 +3078,15 @@ msgstr "Ветвь для использования" #: app/flatpak-builtins-run.c:70 msgid "Use development runtime" -msgstr "Использовать среду исполнения для разработчиков" +msgstr "Использовать среду выполнения для разработчиков" #: app/flatpak-builtins-run.c:71 msgid "Runtime to use" -msgstr "Используемая среда исполнения" +msgstr "Используемая среда выполнения" #: app/flatpak-builtins-run.c:72 msgid "Runtime version to use" -msgstr "Версия среды исполнения" +msgstr "Версия среды выполнения" #: app/flatpak-builtins-run.c:75 msgid "Log accessibility bus calls" @@ -3098,7 +3126,7 @@ msgstr "Запустить указанный коммит" #: app/flatpak-builtins-run.c:83 msgid "Use specified runtime commit" -msgstr "Использовать указанный коммит среды исполнения" +msgstr "Использовать указанный коммит среды выполнения" #: app/flatpak-builtins-run.c:84 msgid "Run completely sandboxed" @@ -3128,13 +3156,13 @@ msgstr "Использовать ПУТЬ вместо /app приложения #: app/flatpak-builtins-run.c:91 msgid "Use PATH instead of the runtime's /usr" -msgstr "Использовать ПУТЬ вместо /usr среды исполнения" +msgstr "Использовать ПУТЬ вместо /usr среды выполнения" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "ПРИЛОЖЕНИЕ [АРГУМЕНТ…] - Запустить приложение" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "runtime/%s/%s/%s не установлено" @@ -3151,15 +3179,15 @@ msgstr "Удаленные репозитории" msgid "Show the remotes" msgstr "Показать удалённые репозитории" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "ТЕКСТ - Искать удалённые приложения/среды по тексту" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "ТЕКСТ должен быть указан" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Совпадений не найдено" @@ -3199,21 +3227,21 @@ msgstr "Удалить данные для %s?" #: app/flatpak-builtins-uninstall.c:220 #, c-format msgid "Info: applications using the extension %s%s%s branch %s%s%s:\n" -msgstr "" +msgstr "Информация: приложения, использующие расширение %s%s%s ветвь %s%s%s:\n" #: app/flatpak-builtins-uninstall.c:223 -#, fuzzy, c-format +#, c-format msgid "Info: applications using the runtime %s%s%s branch %s%s%s:\n" -msgstr "Приложения, использующие эту среду исполнения:\n" +msgstr "" +"Информация: приложения, использующие среду выполнения %s%s%s ветвь %s%s%s:\n" #: app/flatpak-builtins-uninstall.c:238 -#, fuzzy msgid "Really remove?" -msgstr "любой удаленный репозиторий" +msgstr "Действительно удалить?" #: app/flatpak-builtins-uninstall.c:255 msgid "[REF…] - Uninstall applications or runtimes" -msgstr "[ССЫЛКА…] - Удалить приложения или среды исполнения" +msgstr "[ССЫЛКА…] - Удалить приложения или среды выполнения" #: app/flatpak-builtins-uninstall.c:264 msgid "Must specify at least one REF, --unused, --all or --delete-data" @@ -3237,10 +3265,11 @@ msgid "" "flatpak-pin(1):\n" msgstr "" "\n" -"Эти среды исполнения в установке '%s' закреплены и не будут удалены; см. " +"Эти среды выполнения в установке '%s' закреплены и не будут удалены; см. " "flatpak-pin(1):\n" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Нет неиспользуемого для удаления\n" @@ -3265,6 +3294,7 @@ msgid "Warning: %s is not installed\n" msgstr "Предупреждение: %s не установлено\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "Ни одна из указанных ссылок не установлена" @@ -3298,13 +3328,14 @@ msgstr "Обновлять только указанный подкаталог" #: app/flatpak-builtins-update.c:90 msgid "[REF…] - Update applications or runtimes" -msgstr "[ССЫЛКА…] - Обновить приложения или среды исполнения" +msgstr "[ССЫЛКА…] - Обновить приложения или среды выполнения" #: app/flatpak-builtins-update.c:121 msgid "With --commit, only one REF may be specified" msgstr "При указании --commit, должна быть указана хотя бы одна ССЫЛКА" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Поиск обновлений…\n" @@ -3314,28 +3345,29 @@ msgid "Unable to update %s: %s\n" msgstr "Не удалось обновить %s: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Нечего выполнять.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "Удалённый репозиторий ‘%s’ найден в нескольких установках:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Какой вы хотите использовать (0 - отмена)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "Не выбран удаленный репозиторий для разрешения '%s', который существует в " "нескольких местах" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3345,13 +3377,13 @@ msgstr "" "Подсказка: Используйте flatpak remote-add для добавления удаленного " "репозитория" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Удаленный репозиторий '%s' не найден в месте %s" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3360,140 +3392,131 @@ msgstr "" "Найдена ссылка '%s' в репозитории '%s' (%s).\n" "Использовать эту ссылку?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "Не выбрана ссылка для разрешения совпадений '%s'" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "Похожие ссылки для '%s' найдены в репозитории '%s' (%s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "Найдена установленная ссылка '%s' (%s). Она верна?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "Все вышеперечисленное" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "Похожие установочные ссылки, найденные для '%s':" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"Найдена одна или более ссылок, похожих на '%s', в репозитории '%s' (%s).\n" -"Использовать этот репозиторий?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "Репозитории со ссылками, похожими на '%s':" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "Не выбран репозиторий для получения результатов '%s'" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "Репозитории со ссылками, похожими на '%s':" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "" "Обновление данных appstream для пользовательского удалённого репозитория %s" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Обновление данных appstream для удалённого репозитория %s" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Ошибка обновления" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "Репозиторий '%s' не найден" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Неоднозначный суффикс: '%s'." #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "Возможные значения: :s[tart], :m[iddle], :e[nd] или :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Неверный суффикс '%s'." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Неоднозначный столбец: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Неизвестный столбец '%s'" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Доступные столбцы:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Показать все столбцы" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Показать доступные столбцы" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "Добавьте :s[tart], :m[iddle], :e[nd], :f[ull] для изменения эллепсии" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "" -"Требуемая среда исполнения для %s (%s) найдена в удалённом репозитории %s\n" +"Требуемая среда выполнения для %s (%s) найдена в удалённом репозитории %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Хотите установить её?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "" -"Требуемая среда исполнения для %s (%s) найдена в следующих репозиториях:" +"Требуемая среда выполнения для %s (%s) найдена в следующих репозиториях:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Которую версию установить (0 - отмена)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Настройка %s как новый удаленный репозиторий '%s'\n" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3505,300 +3528,302 @@ msgstr "" "Должен ли этот репозиторий использоваться для будущих установок?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" " %s\n" "Configure this as new remote '%s'" msgstr "" -"Приложение %s зависит от сред исполнения из:\n" +"Приложение %s зависит от сред выполнения из:\n" " %s\n" "Добавить его как новый удалённый репозиторий '%s'" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Установка…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Установка %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Обновление…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Обновление: %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Удаление…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Удаление %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Информация: %s был пропущен" -#: app/flatpak-cli-transaction.c:512 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:516 +#, c-format msgid "Warning: %s%s%s already installed" -msgstr "%s уже установлен" +msgstr "Предупреждение: %s%s%s уже установлено" -#: app/flatpak-cli-transaction.c:515 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:519 +#, c-format msgid "Error: %s%s%s already installed" -msgstr "%s уже установлен" +msgstr "Ошибка: %s%s%s уже установлено" -#: app/flatpak-cli-transaction.c:521 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:525 +#, c-format msgid "Warning: %s%s%s not installed" -msgstr "Предупреждение: %s не установлено\n" +msgstr "Предупреждение: %s%s%s не установлено" -#: app/flatpak-cli-transaction.c:524 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:528 +#, c-format msgid "Error: %s%s%s not installed" -msgstr "%s/%s/%s не установлено" +msgstr "Ошибка: %s%s%s не установлено" -#: app/flatpak-cli-transaction.c:530 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:534 +#, c-format msgid "Warning: %s%s%s needs a later flatpak version" -msgstr "%s требует более новую версию flatpak" +msgstr "Предупреждение: %s%s%s требует более новую версию flatpak" -#: app/flatpak-cli-transaction.c:533 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:537 +#, c-format msgid "Error: %s%s%s needs a later flatpak version" -msgstr "%s требует более новую версию flatpak" +msgstr "Ошибка: %s%s%s требует более новую версию flatpak" -#: app/flatpak-cli-transaction.c:539 -#, fuzzy +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" -msgstr "Недостаточно места на диске для завершения этой операции" +msgstr "" +"Предупреждение: недостаточно места на диске для завершения этой операции" -#: app/flatpak-cli-transaction.c:541 -#, fuzzy +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" -msgstr "Недостаточно места на диске для завершения этой операции" +msgstr "Ошибка: недостаточно места на диске для завершения этой операции" -#: app/flatpak-cli-transaction.c:546 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:550 +#, c-format msgid "Warning: %s" -msgstr "Предупреждение: " +msgstr "Предупреждение: %s" -#: app/flatpak-cli-transaction.c:548 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:552 +#, c-format msgid "Error: %s" -msgstr "Ошибка:" +msgstr "Ошибка: %s" -#: app/flatpak-cli-transaction.c:563 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:567 +#, c-format msgid "Failed to install %s%s%s: " -msgstr "Не удалось удалить %s для перебазирования в %s: " +msgstr "Не удалось установить %s%s%s: " -#: app/flatpak-cli-transaction.c:570 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:574 +#, c-format msgid "Failed to update %s%s%s: " -msgstr "Не удалось %s %s: " +msgstr "Не удалось обновить %s%s%s: " -#: app/flatpak-cli-transaction.c:577 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:581 +#, c-format msgid "Failed to install bundle %s%s%s: " -msgstr "Не удалось удалить %s для перебазирования в %s: " +msgstr "Не удалось установить пакет %s%s%s: " -#: app/flatpak-cli-transaction.c:584 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:588 +#, c-format msgid "Failed to uninstall %s%s%s: " -msgstr "Не удалось удалить %s для перебазирования в %s: " +msgstr "Не удалось удалить %s%s%s: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "Требуется авторизация для обновления удаленной информации о '%s'\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Открыть в браузере?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "Удаленному репозиторию %s необходим логин (область %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Пароль" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:747 +#, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, in favor of " "%s%s%s branch %s%s%s\n" msgstr "" -"Информация: конец срока поддержки для закреплённого %s//%s наступил в пользу " -"%s\n" +"\n" +"Информация: (закрепленная) среда выполнения %s%s%s ветвь %s%s%s конец срока " +"поддержки, в пользу %s%s%s ветвь %s%s%s\n" -#: app/flatpak-cli-transaction.c:749 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:753 +#, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, in favor of %s%s%s branch " "%s%s%s\n" msgstr "" "\n" -"Информация: %s%s %s прекращает свое существование, в пользу %s\n" +"Информация: среда выполнения %s%s%s ветвь %s%s%s конец срока поддержки, в " +"пользу %s%s%s ветвь %s%s%s\n" -#: app/flatpak-cli-transaction.c:752 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:756 +#, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, in favor of %s%s%s branch " "%s%s%s\n" msgstr "" "\n" -"Информация: %s%s %s прекращает свое существование, в пользу %s\n" +"Информация: приложение %s%s%s ветвь %s%s%s конец срока поддержки, в пользу " +"%s%s%s ветвь %s%s%s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:768 +#, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -"Информация: конец срока поддержки закреплённого %s//%s наступил по причине:\n" +"\n" +"Информация: (закрепленная) среда выполнения %s%s%s ветвь %s%s%s конец срока " +"поддержки по причине:\n" -#: app/flatpak-cli-transaction.c:770 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:774 +#, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" "\n" -"Информация: %s%s %s прекращает свое существование, по причине:\n" +"Информация: среда выполнения %s%s%s ветвь %s%s%s конец срока поддержки по " +"причине:\n" -#: app/flatpak-cli-transaction.c:773 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:777 +#, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" "\n" -"Информация: %s%s %s прекращает свое существование, по причине:\n" +"Информация: приложение %s%s%s ветвь %s%s%s конец срока поддержки по " +"причине:\n" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" -msgstr "Приложения, использующие эту среду исполнения:\n" +msgstr "Информация: приложения, использующие это расширение:\n" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" -msgstr "Приложения, использующие эту среду исполнения:\n" +msgstr "Информация: приложения, использующие эту среду выполнения:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "Заменить?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "Обновление перебазированной версии\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "Ошибка: Не удалось перезбазировать %s в %s: " -#: app/flatpak-cli-transaction.c:1009 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Не удалось удалить %s для перебазирования в %s: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, c-format msgid "New %s%s%s permissions:" msgstr "Новые разрешения %s%s%s:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, c-format msgid "%s%s%s permissions:" msgstr "Разрешения %s%s%s:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Предупреждение: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Оп" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "частично" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Перейти к пользовательской установке с этими изменениями?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Перейти к системой установке с этими изменениями?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Перейти к %s с этими изменениями?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Изменения внесены." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Удаление завершено." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Установка завершена." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Обновление завершено." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Произошла одна или более ошибок" #. translators: please keep the leading space #: app/flatpak-main.c:76 msgid " Manage installed applications and runtimes" -msgstr " Управление установленными приложениями и средами исполнения" +msgstr " Управление установленными приложениями и средами выполнения" #: app/flatpak-main.c:77 msgid "Install an application or runtime" -msgstr "Установить приложение или среду исполнения" +msgstr "Установить приложение или среду выполнения" #: app/flatpak-main.c:78 msgid "Update an installed application or runtime" -msgstr "Обновить установленное приложение или среду исполнения" +msgstr "Обновить установленное приложение или среду выполнения" #: app/flatpak-main.c:81 msgid "Uninstall an installed application or runtime" -msgstr "Удалить установленное приложение или среду исполнения" +msgstr "Удалить установленное приложение или среду выполнения" #: app/flatpak-main.c:84 msgid "Mask out updates and automatic installation" @@ -3810,11 +3835,11 @@ msgstr "Закрепить среду исполнения для предотв #: app/flatpak-main.c:86 msgid "List installed apps and/or runtimes" -msgstr "Показать список установленных приложений и/или сред исполнения" +msgstr "Показать список установленных приложений и/или сред выполнения" #: app/flatpak-main.c:87 msgid "Show info for installed app or runtime" -msgstr "Показать информацию об установленных приложениях или средах исполнения" +msgstr "Показать информацию об установленных приложениях или средах выполнения" #: app/flatpak-main.c:88 msgid "Show history" @@ -3963,7 +3988,7 @@ msgstr "Список содержимого удалённого репозит #: app/flatpak-main.c:131 msgid "Show information about a remote app or runtime" -msgstr "Показать информацию об установленных приложениях или средах исполнения" +msgstr "Показать информацию об установленных приложениях или средах выполнения" #. translators: please keep the leading newline and space #: app/flatpak-main.c:134 @@ -4000,7 +4025,7 @@ msgstr "Импортировать файл с пакетом" #: app/flatpak-main.c:141 msgid "Sign an application or runtime" -msgstr "Подписать приложение или среду исполнения" +msgstr "Подписать приложение или среду выполнения" #: app/flatpak-main.c:142 msgid "Update the summary file in a repository" @@ -4091,7 +4116,7 @@ msgstr "" "переменной окружения XDG_DATA_DIRS, поэтому приложения, установленные " "Flatpak, могут не отображаться на вашем рабочем столе до перезапуска сеанса." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." @@ -4100,28 +4125,28 @@ msgstr "" "с установкой пользователя, или используйте оболочку root для работы с " "установкой пользователя root." -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" "Для одной команды, работающей с одной установкой, указано несколько установок" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "См '%s --help'" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "'%s' не является командой flatpak. Вы имели в виду '%s%s'?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "'%s' не является командой flatpak" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Команда не указана" @@ -4145,55 +4170,55 @@ msgid "Uninstalling %s\n" msgstr "Удаление %s\n" #: app/flatpak-quiet-transaction.c:107 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to install %s: %s\n" -msgstr "%s не удалось %s %s: %s\n" +msgstr "Предупреждение: не удалось установить %s: %s\n" #: app/flatpak-quiet-transaction.c:110 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to install %s: %s\n" -msgstr "Ошибка при переустановке %s: %s\n" +msgstr "Ошибка: не удалось установить %s: %s\n" #: app/flatpak-quiet-transaction.c:116 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to update %s: %s\n" -msgstr "Не удалось обновить %s: %s\n" +msgstr "Предупреждение: не удалось обновить %s: %s\n" #: app/flatpak-quiet-transaction.c:119 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to update %s: %s\n" -msgstr "Не удалось обновить %s: %s\n" +msgstr "Ошибка: не удалось обновить %s: %s\n" #: app/flatpak-quiet-transaction.c:125 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to install bundle %s: %s\n" -msgstr "Не удалось удалить %s для перебазирования в %s: %s\n" +msgstr "Предупреждение: не удалось установить пакет %s: %s\n" #: app/flatpak-quiet-transaction.c:128 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to install bundle %s: %s\n" -msgstr "Ошибка при переустановке %s: %s\n" +msgstr "Ошибка: не удалось установить пакет %s: %s\n" #: app/flatpak-quiet-transaction.c:134 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to uninstall %s: %s\n" -msgstr "%s не удалось %s %s: %s\n" +msgstr "Предупреждение: не удалось удалить %s: %s\n" #: app/flatpak-quiet-transaction.c:137 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to uninstall %s: %s\n" -msgstr "Ошибка при переустановке %s: %s\n" +msgstr "Ошибка: не удалось удалить %s: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s уже установлен" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s не установлен" @@ -4222,59 +4247,55 @@ msgstr "Информация: конец срока поддержки %s нас msgid "Failed to rebase %s to %s: %s\n" msgstr "Не удалось перебазировать %s в %s: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Не удалось удалить %s для перебазирования в %s: %s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "Аутентификатор для удаленного репозитория '%s' не настроен" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Неизвестный тип общего каталога %s, доступные типы: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Неизвестный тип политики %s, доступные типы: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Некорректное имя dbus %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Неизвестный тип сокета %s, доступные типы: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Неизвестный тип устройства %s, доступные типы: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Неизвестный тип функционала %s, доступные типы: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "Путь \"%s\" файловой системы содержит \"..\"" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" "--filesystem=/ не поддерживается, используйте --filesystem=host для " "получения схожего результата" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4283,610 +4304,641 @@ msgstr "" "Неизвестный путь файловой системы %s, доступные типы: host, host-os, host-" "etc, home, xdg-*[/…], ~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Неверный формат переменной окружения %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "Имя переменной окружения не должно содежать'=': %s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "Аргмуенты --add-policy должны быть в форме ПОДСИСТЕМА.КЛЮЧ=ЗНАЧЕНИЕ" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "Значения --add-policy не могут начинаться с '!'" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "Аргмуенты --remove-policy должны быть в форме ПОДСИСТЕМА.КЛЮЧ=ЗНАЧЕНИЕ" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "Значения --remove-policy не могут начинаться с '!'" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Добавить общий каталог с хостом" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "ОБЩ_КАТАЛОГ" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Убрать общий каталог с хостом" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Пробросить сокет приложению" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "СОКЕТ" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Убрать проброс сокета приложению" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Пробросить устройство приложению" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "УСТРОЙСТВО" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Убрать проброс устройства приложению" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Разрешить использовать этот функционал" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "ФУНКЦИОНАЛ" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Запретить использование этого функционала" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "Пробросить файловую систему приложению (:ro только для чтения)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "ФАЙЛ_СИСТЕМА[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Не пробрасывать файловую систему для приложения" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "ФАЙЛ_СИСТЕМА" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Установить переменную окружения" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "ПЕРЕМЕННАЯ=ЗНАЧЕНИЕ" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "Читать переменные окружения в формате env -0 из ДЕСКРИПТОРа" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "ДЕСКРИПТОР" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "Удалить переменную из окружения" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "ПЕРЕМЕННАЯ" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Разрешить приложению владеть именем на сессионной шине" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "ИМЯ_DBUS" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Разрешить приложению обмениваться с именем используя сессионную шину" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "Запрещать приложению обмениваться с именем используя сессионную шину" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Разрешить приложению владеть именем используя системную шину" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Разрешить приложению обмениваться с именем используя системную шину" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "Запретить приложению обмениваться с именем используя системную шину" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Разрешить приложению владеть именем используя системную шину" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Добавить параметр обобщенной политики" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "ПОДСИСТЕМА.КЛЮЧ=ЗНАЧЕНИЕ" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Удалить параметр обобщенной политики" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "Постоянный путь к домашнему каталогу" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "ИМЯ_ФАЙЛА" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Постоянный путь к домашнему каталогу" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Не требует запуска сеанса (создание cgroups не требуется)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" -msgstr "" +msgstr "Не заменять \"%s\" на tmpfs: %s" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" -msgstr "" +msgstr "Не делиться \"%s\" с песочницей: %s" #. Even if the error is one that we would normally silence, like #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" -msgstr "" +msgstr "Запретить доступ к домашнему каталогу: %s" -#: common/flatpak-context.c:2828 -#, fuzzy, c-format +#: common/flatpak-context.c:3150 +#, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" -msgstr "Невозможно создать временный каталог в %s" +msgstr "Не удалось указать временный домашний каталог в песочнице: %s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "Заданный ID коллекции \"%s\" отсутствует в файле сводки" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Невозможно загрузить сводку с удаленного репозитория %s: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "Ссылки %s в удалённом репозитории %s не существует" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 -#, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 +#, fuzzy, c-format +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "" "Нет записи для %s в удаленном репозитории '%s' суммарного кеша flatpak " -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "Отсутствует сводка пути к кэшу Flatpak в удаленном репозитории %s" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "Нет записи для %s в кэше сводки удаленного репозитория '%s' " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Отсутствует xa.data в сводке удалённого репозитория %s" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Неподдерживаемая версия %d сводки в удалённом репозитории %s" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "Удаленный индекс OCI не является регистрационным uri" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Не удалось найти ссылку %s в удаленном репозитории %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "Изображение не является манифестом" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "В коммите нет запрошенной ссылки '%s' в метаданных привязки ссылки" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "Заданный ID коллекции ‘%s’ отсутствует в связанных метаданных" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" "Не удалось найти последнюю хеш-сумму для ссылки %s в удаленном репозитории %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" "Нет записи для %s в удаленном репозитории %s в сводной информации кэша " "flatpak" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "Коммит метаданных для %s не соответствует ожидаемым метаданным" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "Не удается подключиться к системой шине" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "Пользовательская установка" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "Системная (%s) установка" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Перезаписей для %s не найдено" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "%s (коммит %s) не установлен" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "Ошибка разборка системного файла flatpakrepo %s: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Во время открытия репозитория %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "Ключ конфигурации %s не задан" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "Нет текущих %s, подходящих под шаблон %s" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "Отсутствует коммит для развёртывания" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" "Не могу получить(запулить) данные с ненадежного, не проверенного gpg " "репозитория" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" "Дополнительные данные не поддерживаются для локальных систем без проверки gpg" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Некорректная контрольная сумма дополнительных данных по адресу %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Пустое имя для дополнительных данных по адресу %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Не поддерживаемые дополнительные данные по адресу %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Не удалось загрузить локальные дополнительные данные %s: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Неверный размер для дополнительных данных %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "Во время загрузки %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Неправильный размер дополнительных данных по адресу %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Некорректная контрольная сумма дополнительных данных по адресу %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s коммит %s уже установлен" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "Во время получения %s из удалённого репозитория %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "" "Найдены подписи GPG, но ни одна из них не находится в доверенном брелке" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "Коммит для '%s' не имеет привязки к ссылке" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "Коммит для '%s' не соответствует ожидаемым ссылкам: %s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "Текущими можно сделать только приложения" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Не достаточно памяти" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Ошибка чтения из экспортированного файла" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Ошибка чтения MIME типа xml файла" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Некорректный MIME тип xml файла" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "У сервисного файла D-Bus '%s' некорректное имя" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "Неверный аргумент для Exec %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "Во время получения отсоединённых метаданных: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "Дополнительные данные отсутствуют в отдельных метаданных" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "Во время создания каталога с дополнительными данными: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Некорректная контрольная сумма для дополнительных данных" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Некорректный размер дополнительных данных" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "Во время записи в файл дополнительных данных '%s': " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "В отдельных метаданных отсутствуют отдельные данные %s" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "скрипт apply_extra завершился с ошибкой %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "Установка %s запрещена политикой, установленной вашим администратором" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "Во время поиска назначения ссылки %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s не доступно" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Невозможно создать каталог для развёртывания" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Ошибка чтения коммита %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "Во время получения %s в %s: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "Во время получения метаданных подкаталога " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "Во врмея попытки проверить подпуть '%s': " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Во время удаления существующего каталога с дополнительными данными: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Во время применения дополнительных данных: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Неверная ссылка на коммит %s: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "Развернутая ссылка %s не соответствует коммиту (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "Развернутая ссылка %s ветви не соответствует коммиту (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s ветвь %s уже установлена" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "Не удалось отмонтировать файловую систему revokefs-fuse от %s: " -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Указанная версия %s уже установлена" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "Невозможно изменить удалённый репозиторий во время установки пакета" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "Невозможно обновить конкретный коммит без прав root" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "Невозможно удалить %s, она нужна для: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s ветвь %s не установлена" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "%s коммита %s не установлен" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "Не удалось удалить репозиторий: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "Не удалось загрузить фильтр '%s'" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "Не удалось проанализировать фильтр '%s'" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "Не удалось записать сводный кеш: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "Нет сводки кешированного oci удаленного репозитория '%s'" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "Нет кэшированной сводки для удаленного репозитория '%s'" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "" "Неверная контрольная сумма для индексированной сводки %s, считанной из %s" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " @@ -4895,247 +4947,276 @@ msgstr "" "Удаленный список для %s недоступен; На сервере нет сводного файла. " "Проверьте, что URL, переданный удаленному добавлению, действителен." -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "" "Некорректная контрольная сумма индексированной сводки %s для удалённого " "репозитория '%s'" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "Для %s доступно несколько ветвей, необходимо указать одну из: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Совпадений не обнаружено %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Невозможно найти ссылку %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Не удалось выполнить поиск по репозиторию %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Не удалось выполнить поиск по локальному репозиторию: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s не установлено" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Не возможно найти %s в установленных" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "Неверный формат файла, отсутствие %s группы" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Неверная версия %s, поддерживается только 1" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "Неверный формат файла, %s не указан" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "Неверный формат файла, неверный ключ gpg" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "ID коллекции требует предоставления ключа GPG" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" -msgstr "Среда исполнения %s, ветвь %s уже установлена" +msgstr "Среда выполнения %s, ветвь %s уже установлена" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Приложение %s, ветвь %s уже установлена" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" "Не удалось удалить удаленный репозиторий '%s' с установленной ссылкой %s " "(как минимум)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Недопустимый символ '/' в имени удалённого репозитория: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "Не указана конфигурация для удаленного репозитория %s" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Пропуск удаления зеркальной ссылки (%s,%s)…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" -msgstr "" +msgstr "Требуется абсолютный путь" -#: common/flatpak-exports.c:923 -#, fuzzy, c-format +#: common/flatpak-exports.c:933 +#, c-format msgid "Unable to open path \"%s\": %s" -msgstr "Не удалось обновить %s: %s\n" +msgstr "Не удалось открыть путь \"%s\": %s" -#: common/flatpak-exports.c:930 -#, fuzzy, c-format +#: common/flatpak-exports.c:940 +#, c-format msgid "Unable to get file type of \"%s\": %s" -msgstr "Невозможно создать файл %s" +msgstr "Не удалось получить тип файла \"%s\": %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" -msgstr "" +msgstr "Файл \"%s\" имеет неподдерживаемый тип 0o%o" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" -msgstr "" +msgstr "Не удалось получить информацию о файловой системе для \"%s\": %s" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" -msgstr "" +msgstr "Игнорирование блокировки пути autofs \"%s\"" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" -msgstr "" +msgstr "Путь \"%s\" зарезервирован Flatpak" -#: common/flatpak-exports.c:1051 -#, fuzzy, c-format +#: common/flatpak-exports.c:1061 +#, c-format msgid "Unable to resolve symbolic link \"%s\": %s" -msgstr "Невозможно обновить символьную ссылку %s/%s" +msgstr "Не удалось разрешить символическую ссылку \"%s\": %s" + +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "Пустая строка не является числом" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "“%s” не является положительным числом" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "Число '%s' выходит за пределы допустимых значений [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "Ссылка %s не установлена" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "Приложение %s не установлено" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "Удалённый репозиторий '%s' уже существует" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "" "Требуемое расширение %s было получено(запуленно), но не было установлено" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "Невозможно создать каталог %s" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "Невозможно заблокировать %s" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "Невозможно открыть каталог %s" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "Невозможно создать временный каталог в %s" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "Невозможно создать файл %s" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Невозможно обновить символьную ссылку %s/%s" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "Поддерживается аутентификация только типа Bearer" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "В запросе аутентификации только область" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "Некорректная область в запросе аутентификации" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "Авторизация не удалась: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Авторизация не удалась" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "Неожиданный код состояния %d в ответе на запрос токена: %s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "Неверный ответ на запрос аутентификации" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "Неверный формат файлы дельты" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "Ключ gpg с идентификатором %s не найден (homedir: %s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Невозможно найти ID ключа %s: %d" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "Ошибка подписи коммита: %d" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Некорректная конфигурация образа OCI" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Неправильный слой контрольных сумм, ожидалось %s, было %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "Ссылка для изображения OCI %s не указана" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Неправильная ссылка (%s) указана для OCI изображения %s, ожидалось %s" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5156,315 +5237,369 @@ msgstr "Загрузка дополнительных данных: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Загрузка файлов: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Имя не должно быть пустым" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Имя не должно быть больше 255 символов" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Имя не должно начинаться с точки" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Имя не должно начинаться с %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Имя не должно заканчиваться точкой" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Только последняя часть имени может содержать -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Часть имени не должна начинаться с %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Имя не должно содержать %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "Имена должны содержать как минимум две точки" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "Архитектура не может быть пустой" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "Архитектура не может содержать %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Ветвь не должна быть пустой" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Ветвь не должна начинаться с %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Ветвь не должна содержать %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "Ссылка слишком длинная" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "Неправильное имя удаленного репозитория" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s не является именем приложения или среды запуска" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Неверное количество компонентов в %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "Некорректное имя %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "Некорректная архитектура: %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Некорректное имя %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "Некорректная архитектура: %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "Некорректная ветвь: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "Неверное количество компонентов в частичной ссылке %s" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr " среда разработки" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" -msgstr " среда исполнения" +msgstr " платформа" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr " базовое приложение" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr " отладочные символы" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr " исходный код" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " переводы" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr " документация" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "Некорректный ID %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Неправильное имя удаленного репозитория: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "Адрес не указан" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "Проверка GPG должна быть включена, когда установлен ID коллекции" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Ошибка при открытии файла с информацией приложения" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Нет источников дополнительных данных" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Невозможно создать канал синхронизации" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "Некорректный %s: Пропущена группа '%s'" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Ошибка при синхронизации с прокси dbus" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "Некорректный %s: Пропущен ключ '%s'" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Некорректный ключ gpg" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Ошибка копирования иконки 64x64 для компонента %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Ошибка копирования иконки 128x128 для компонента %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "срок поддержки %s закончился, игнорируется для appstream" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Нет appstream данных для %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Некорректный пакет, отсутствует ссылка на метаданные" -#: common/flatpak-run.c:2207 +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "" +"Коллекция '%s' пакета не соответствует коллекции '%s' удаленного репозитория" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Метаданные в заголовке и приложении несовместимы" + +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "Отсутствует пользовательская сессия systemd, cgroups недоступны" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "Невозможно выделить идентификатор экземпляра" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Не удалось открыть файл flatpak-info: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Не удалось открыть файл bwrapinfo.json: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "Не удалось записать файловый дескриптор с ID экземпляра: %s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "Не удалось инициализировать seccomp" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Не удалось добавить архитектуру в фильтр seccomp: %s" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Не удалось добавить многоархивную архитектуру к фильтру seccomp: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, c-format msgid "Failed to block syscall %d: %s" msgstr "Не удалось заблокировать системный вызов %d: %s" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, c-format msgid "Failed to export bpf: %s" msgstr "Не удалось экспортировать bpf: %s" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "Не удалось открыть '%s'" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ошибка ldconfig, статус ошибки %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "Невозможно открыть сгенерированный файл ld.so.cache" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "Запуск %s не разрешен политикой, установленной вашим администратором" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" "\"flatpak run\" не предназначен для запуска как `sudo flatpak run`. Вместо " "этого используйте `sudo -i` или `su -l` и вызывайте \"flatpak run\" из новой " "оболочки." -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "Не удалось перенести с %s: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" "Не удалось переместить старую папку с данными приложения %s в папку с новым " "именем %s: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Не удалось создать символическую ссылку при переносе %s: %s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Ошибка при открытии файла с информацией приложения" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Невозможно создать канал синхронизации" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Ошибка при синхронизации с прокси dbus" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Предупреждение: Проблема при поиске связанных ссылок: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "Приложение %s требует среду выполнения %s, которую не удалось найти" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "Приложение %s требует среду выполнения %s, которая не установлена" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "Невозможно удалить %s который нуждается в %s" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Удалённый репозиторий %s отключен, обновление %s пропущено" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s уже установлен" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s уже установлен из репозитория %s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "Неверный .flatpakref: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "Ошибка при обновлении метаданных для '%s': %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " @@ -5473,54 +5608,54 @@ msgstr "" "Предупреждение: обработка ошибки удаленной выборки как нефатальной, " "поскольку %s уже установлен: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "Нет аутентификатора для удаленного репозитория '%s'" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "Не удалось получить токены для ссылки: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "Не удалось получить токены для ссылки" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "Ссылка %s из %s соответствует более чем одной транзакционной операции" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" msgstr "любой удаленный репозиторий" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "Не найдена операция транзакции для ссылки %s из %s" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "URL Flatpakrepo %s не файл, HTTP или HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "Не удается загрузить зависимый файл %s: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "Неверный .flatpakrepo: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "Транзакция уже выполнена" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." @@ -5528,16 +5663,16 @@ msgstr "" "Отказ от работы на пользовательской установке от имени пользователя root! " "Это может привести к поломке прав файлов и ошибкам разрешений." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Прервано пользователем" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "Пропуск %s из-за предыдущей ошибки" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "Прервано из-за ошибки (%s)" @@ -5584,139 +5719,112 @@ msgstr "Порт '%.*s' в URI находится вне диапазона" msgid "URI is not absolute, and no base URI was provided" msgstr "URI не абсолютный, и базовый URI не указан" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "Glob не может соответствовать приложениям" - -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "Пустой glob" - -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "Слишком много частей в glob'е" - -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:83 #, c-format -msgid "Invalid glob character '%c'" -msgstr "Недопустимый знак '%c' в glob'е" +msgid "USB device query 'all' must not have data" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:102 #, c-format -msgid "Missing glob on line %d" -msgstr "Пропущен glob на строке %d" +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:985 -#, c-format -msgid "Trailing text on line %d" -msgstr "Завершающий текст в строке %d" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "Некорректный ID %s: %s" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:125 #, c-format -msgid "on line %d" -msgstr "на строке %d" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "Неожиданное слово '%s' на строке %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "Некорректный %s: Пропущена группа '%s'" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:205 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "Некорректный %s: Пропущен ключ '%s'" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Некорректный ключ gpg" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Нет источников дополнительных данных" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:225 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Ошибка копирования иконки 64x64 для компонента %s: %s\n" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:248 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Ошибка копирования иконки 128x128 для компонента %s: %s\n" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:5684 +#: common/flatpak-usb.c:274 #, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "срок поддержки %s закончился, игнорируется для appstream" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5719 +#: common/flatpak-usb.c:283 #, c-format -msgid "No appstream data for %s: %s\n" +msgid "'all' must not contain extra query rules" msgstr "" -"Нет appstream данных для %s: %s\n" -"\n" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "Некорректный пакет, отсутствует ссылка на метаданные" - -#: common/flatpak-utils.c:6791 +#: common/flatpak-usb.c:291 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgid "USB queries with 'dev' must also specify vendors" msgstr "" -"Коллекция '%s' пакета не соответствует коллекции '%s' удаленного репозитория" -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "Метаданные в заголовке и приложении несовместимы" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "Glob не может соответствовать приложениям" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "Некорректная конфигурация образа OCI" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Пустой glob" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 -#, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "Неправильный слой контрольных сумм, ожидалось %s, было %s" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "Слишком много частей в glob'е" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:733 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "Ссылка для изображения OCI %s не указана" +msgid "Invalid glob character '%c'" +msgstr "Недопустимый знак '%c' в glob'е" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:787 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "Неправильная ссылка (%s) указана для OCI изображения %s, ожидалось %s" +msgid "Missing glob on line %d" +msgstr "Пропущен glob на строке %d" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:791 #, c-format -msgid "Invalid require-flatpak argument %s" -msgstr "Неверный аргумент require-flatpak %s" +msgid "Trailing text on line %d" +msgstr "Завершающий текст в строке %d" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:795 #, c-format -msgid "%s needs a later flatpak version (%s)" -msgstr "%s требует более новую версию flatpak (%s)" +msgid "on line %d" +msgstr "на строке %d" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "Пустая строка не является числом" +#: common/flatpak-utils.c:817 +#, c-format +msgid "Unexpected word '%s' on line %d" +msgstr "Неожиданное слово '%s' на строке %d" -#: common/flatpak-utils.c:8401 +#: common/flatpak-utils.c:1980 #, c-format -msgid "“%s” is not an unsigned number" -msgstr "“%s” не является положительным числом" +msgid "Invalid require-flatpak argument %s" +msgstr "Неверный аргумент require-flatpak %s" -#: common/flatpak-utils.c:8411 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "Число '%s' выходит за пределы допустимых значений [%s, %s]" +msgid "%s needs a later flatpak version (%s)" +msgstr "%s требует более новую версию flatpak (%s)" #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" @@ -5731,44 +5839,48 @@ msgstr "Не является удалённым репозиторием OCI" msgid "Invalid token" msgstr "Некорректный токен" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "Поддержки порталов не обнаружено" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Отклонить" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Обновить" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "Обновить %s?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." -msgstr "Приложение хочет обновиться само по себе." +msgstr "Приложение хочет обновить себя." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" "Доступ к обновлению можно изменить в любое время из настроек " "конфиденциальности." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "Обновления приложений не разрешены" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" "Самостоятельное обновление не поддерживается, новая версия требует новых " "разрешений" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "Обновление закончилось неожиданно" @@ -5793,7 +5905,7 @@ msgstr "Требуется авторизация для установки пр #. in the wheel group to install without authenticating. #: system-helper/org.freedesktop.Flatpak.policy.in:41 msgid "Install signed runtime" -msgstr "Установить подписанную исполняемую среду" +msgstr "Установить подписанную среду выполнения" #. SECURITY: #. - Normal users do not require admin authentication to update an @@ -5862,7 +5974,7 @@ msgstr "Требуется авторизация для установки пр #. in the wheel group to uninstall without authenticating. #: system-helper/org.freedesktop.Flatpak.policy.in:144 msgid "Uninstall runtime" -msgstr "Удалить среду исполнения" +msgstr "Удалить среду выполнения" #: system-helper/org.freedesktop.Flatpak.policy.in:145 msgid "Authentication is required to uninstall software" @@ -5990,6 +6102,30 @@ msgstr "" "Для установки программного обеспечения требуется аутентификация, которая " "ограничена вашей политикой родительского контроля" +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "Найдена одна или более ссылок, похожих на '%s', в репозитории '%s' (%s).\n" +#~ "Использовать этот репозиторий?" + +#, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "Нет записи для %s в кэше сводки удаленного репозитория '%s' " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Не удалось удалить %s для перебазирования в %s: " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Не удалось удалить %s для перебазирования в %s: %s\n" + +#, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Невозможно открыть каталог %s" + #~ msgid "install" #~ msgstr "установить" diff --git a/po/sk.gmo b/po/sk.gmo deleted file mode 100644 index 81f68f1efdfa3934bf29e40522ea15d3b2ea4c01..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10870 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 diff --git a/po/sk.po b/po/sk.po index f57c0fa..37b372e 100644 --- a/po/sk.po +++ b/po/sk.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" "PO-Revision-Date: 2017-01-23 18:19+0100\n" "Last-Translator: Dušan Kazik \n" "Language-Team: Slovak \n" @@ -18,161 +18,161 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0;\n" "X-Generator: Poedit 1.8.11\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Exportuje prostredie namiesto aplikácie" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARCHITEKTÚRA" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Url pre repozitár" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Pridá kľúč GPG zo SÚBORU (- pre štandardný vstup)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "SÚBOR" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "ZAČLENENIE" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" msgstr "" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Príliš veľa parametrov" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "„%s“ nie je platným repozitárom" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, fuzzy, c-format msgid "'%s' is not a valid repository: " msgstr "„%s“ nie je platným repozitárom" -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "„%s“ nie je platným názvom: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "„%s“ nie je platným názvom vetvy: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, fuzzy, c-format msgid "'%s' is not a valid filename" @@ -207,7 +207,7 @@ msgstr "ADRESÁR" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Použije alternatívny súbor pre metaúdaje" @@ -227,476 +227,482 @@ msgstr "" msgid "Log system bus calls" msgstr "" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 #, fuzzy msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "ADRESÁR [PRÍKAZ [parametre...]] - Zostavenie v adresári" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "ADRESÁR musí byť určený" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 #, fuzzy msgid "metadata invalid, not application or runtime" msgstr "Podpíše aplikáciu alebo prostredie" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Nie je možné spustiť aplikáciu" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "ZDROJ-REPOZITÁR" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Predmet na jeden riadok" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "PREDMET" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Úplný popis" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "TELO" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 -msgid "Don't update the summary" +msgid "Update the appstream branch" msgstr "" #: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 +msgid "Don't update the summary" +msgstr "" + +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 #, fuzzy msgid "Either --src-repo or --src-ref must be specified" msgstr "Musí byť určený NÁZOV vzdialeného repozitára" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Súbory na vylúčenie" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "VZOR" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Vylúčené súbory na zahrnutie" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, fuzzy, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "Zlyhalo otvorenie súboru temp" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, fuzzy, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "„%s“ nie je platným názvom aplikácie: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Nie je určený žiadny názov v metaúdajoch" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Príkaz, ktorý sa má nastaviť" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "PRÍKAZ" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Nespracuje exporty" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Informácie o údajoch navyše" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 #, fuzzy msgid "NAME" msgstr "NÁZOV_SÚBORU" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "PROSTREDIE" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, fuzzy, c-format msgid "Exporting %s\n" msgstr "Aktualizovanie zhrnutia\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " "GROUP=KEY[=VALUE]]" msgstr "" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -704,63 +710,64 @@ msgid "" "NAME=VAR[=VALUE]" msgstr "" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, fuzzy, c-format msgid "Invalid extension name %s" msgstr "Neplatný identifikátor pid %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 #, fuzzy msgid "DIRECTORY - Finalize a build directory" msgstr "ADRESÁR [PRÍKAZ [parametre...]] - Zostavenie v adresári" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Adresár zostavenia %s nie je inicializovaný" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Adresár zostavenia %s je už uzavretý" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, fuzzy, c-format msgid "Ref '%s' not found in registry" msgstr "„%s“ nie je platným repozitárom" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, fuzzy, c-format msgid "Importing %s (%s)\n" msgstr "Aktualizovanie: %s z %s\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "" @@ -872,213 +879,216 @@ msgstr "„%s“ nie je platným názvom aplikácie: %s" msgid "Build directory %s already initialized" msgstr "Adresár zostavenia %s je už inicializovaný" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Architektúra, pre ktorú sa má inštalovať" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 #, fuzzy msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "Podpíše aplikáciu alebo rozhranie" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "UMIESTNENIE musí byť určené" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "NÁZOV" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 #, fuzzy msgid "COMMENT" msgstr "ZAČLENENIE" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 #, fuzzy msgid "URL for a website for this repository" msgstr "Exportuje adresár zostavenia do repozitára" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 #, fuzzy msgid "URL for an icon for this repository" msgstr "Aktualizuje súbor zhrnutia v repozitári" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "VETVA" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 #, fuzzy msgid "Name of authenticator for this repository" msgstr "Aktualizuje súbor zhrnutia v repozitári" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 #, fuzzy msgid "Autoinstall authenticator for this repository" msgstr "Aktualizuje súbor zhrnutia v repozitári" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 #, fuzzy msgid "Don't autoinstall authenticator for this repository" msgstr "Aktualizuje súbor zhrnutia v repozitári" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 #, fuzzy msgid "Authenticator option" msgstr "Zobrazí voľby pomocníka" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "HĹBKA" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Generovanie delta súboru: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Generovanie delta súboru: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, fuzzy, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Zlyhalo generovanie delta súboru %s (%.10s): %s\n" -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, fuzzy, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Zlyhalo generovanie delta súboru %s (%.10s-%.10s): %s\n" -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Aktualizovanie zhrnutia\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Objektov celkom: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "Odstránených %u objektov, %s uvoľnených\n" @@ -1156,112 +1166,112 @@ msgstr "" msgid "Must specify one of --list, --get, --set or --unset" msgstr "" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 #, fuzzy msgid "Arch to copy" msgstr "Architektúra. ktorá sa má zobraziť" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 #, fuzzy msgid "DEST" msgstr "CIEĽ=ZDROJ" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " "suppress this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " "collection ID set.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " "distribution of ‘%s’." msgstr "" -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 #, fuzzy msgid "MOUNT-PATH and REF must be specified" msgstr "ADRESÁR musí byť určený" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " "this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, fuzzy, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "Nepodarilo sa aktualizovať metaúdaje navyše pre %s" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, fuzzy, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "Nepodarilo sa aktualizovať metaúdaje navyše pre %s" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, fuzzy, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" msgstr "Nepodarilo sa aktualizovať metaúdaje navyše pre %s" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, fuzzy, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1336,12 +1346,13 @@ msgstr "" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Neexportované\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 #, fuzzy msgid "What information to show" @@ -1349,7 +1360,7 @@ msgstr "Vypíše informácie o verzii a skončí" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "" @@ -1370,7 +1381,7 @@ msgid "Show the document path" msgstr "Zobrazí referenciu" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "" @@ -1386,7 +1397,7 @@ msgid "Show applications with permission" msgstr "Zobrazí voľby pomocníka" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 #, fuzzy msgid "Permissions" @@ -1517,12 +1528,12 @@ msgid "Show the kind of change" msgstr "" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 #, fuzzy msgid "Show the ref" msgstr "Zobrazí referenciu" @@ -1533,25 +1544,25 @@ msgid "Show the application/runtime ID" msgstr "Spustí aplikáciu" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 #, fuzzy msgid "Branch" msgstr "Vetva, ktorá sa má použiť" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 #, fuzzy msgid "Show the branch" msgstr "Zobrazí referenciu" @@ -1566,7 +1577,7 @@ msgstr "Inštalovanie: %s\n" msgid "Show the affected installation" msgstr "Nepodarilo sa nájsť inštaláciu %s" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 #, fuzzy msgid "Remote" msgstr "Žiadny vzdialený repozitár %s" @@ -1577,7 +1588,7 @@ msgid "Show the remote" msgstr "Zobrazí referenciu" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "" @@ -1601,7 +1612,7 @@ msgstr "Zobrazí referenciu" msgid "Show the remote URL" msgstr "Zobrazí referenciu" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "" @@ -1619,7 +1630,7 @@ msgid "Show the tool that was used" msgstr "" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "" @@ -1648,10 +1659,12 @@ msgid " - Show history" msgstr "" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "" @@ -1667,11 +1680,11 @@ msgstr "" msgid "Show specific system-wide installations" msgstr "" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Zobrazí referenciu" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Zobrazí začlenenie" @@ -1684,16 +1697,16 @@ msgstr "Zobrazí pôvod" msgid "Show size" msgstr "Zobrazí referenciu" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 #, fuzzy msgid "Show runtime" msgstr "Zobrazí referenciu" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 #, fuzzy msgid "Show sdk" msgstr "Zobrazí referenciu" @@ -1710,8 +1723,8 @@ msgstr "" "\n" "Správa prístupu k súborom" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1731,7 +1744,7 @@ msgstr "Zobrazí voľby pomocníka" msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "NÁZOV musí byť určený" @@ -1740,91 +1753,93 @@ msgstr "NÁZOV musí byť určený" msgid "ref not present in origin" msgstr "" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 #, fuzzy msgid "Branch:" msgstr "Vetva, ktorá sa má použiť" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 #, fuzzy msgid "Version:" msgstr "Zobrazí voľby pomocníka" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 #, fuzzy msgid "Collection:" msgstr "Spustí aplikáciu" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 #, fuzzy msgid "Installation:" msgstr "Inštalovanie: %s\n" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 #, fuzzy msgid "Installed:" msgstr "Nainštalovanie balíka" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 #, fuzzy msgid "Runtime:" msgstr "Prostredie. ktoré sa má použiť" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "" @@ -1837,15 +1852,15 @@ msgid "Latest commit:" msgstr "" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "" @@ -1854,14 +1869,14 @@ msgid "Alt-id:" msgstr "" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "" @@ -1870,152 +1885,152 @@ msgid "Subdirectories:" msgstr "" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 #, fuzzy msgid "Extension:" msgstr "Zobrazí voľby pomocníka" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 #, fuzzy msgid "Uninstall first if already installed" msgstr "Aplikácia %s vetva %s je už nainštalovaná" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 #, fuzzy msgid "Update install if already installed" msgstr "Aplikácia %s vetva %s je už nainštalovaná" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Názov súboru balíka musí byť určený" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Vzdialené balíky nie sú podporované" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 #, fuzzy msgid "Filename or uri must be specified" msgstr "Musí byť určený NÁZOV vzdialeného repozitára" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 #, fuzzy msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "Podpíše aplikáciu alebo rozhranie" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 #, fuzzy msgid "At least one REF must be specified" msgstr "ADRESÁR musí byť určený" -#: app/flatpak-builtins-install.c:335 -#, fuzzy +#: app/flatpak-builtins-install.c:336 +#, fuzzy, c-format msgid "Looking for matches…\n" msgstr "Žiadne aktualizácie.\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, c-format msgid "No remote refs found for ‘%s’" msgstr "" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, fuzzy, c-format msgid "Invalid branch %s: %s" msgstr "„%s“ nie je platným názvom vetvy: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, fuzzy, c-format msgid "Nothing matches %s in remote %s" msgstr "Nič nevyhovuje názvu %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, fuzzy, c-format msgid "Skipping: %s\n" msgstr "Aktualizovanie zhrnutia\n" @@ -2058,58 +2073,58 @@ msgstr "Vypíše zoznam nainštalovaných aplikácií" msgid "Arch to show" msgstr "Architektúra. ktorá sa má zobraziť" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #, fuzzy msgid "List all applications using RUNTIME" msgstr "Vypíše zoznam nainštalovaných aplikácií" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 #, fuzzy msgid "Show the name" msgstr "Zobrazí referenciu" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 #, fuzzy msgid "Description" msgstr "Úplný popis" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 #, fuzzy msgid "Show the description" msgstr "Spustí aplikáciu" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 #, fuzzy msgid "Application ID" msgstr "Spustí aplikáciu" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 #, fuzzy msgid "Show the application ID" msgstr "Spustí aplikáciu" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 #, fuzzy msgid "Show the version" msgstr "Spustí aplikáciu" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 #, fuzzy msgid "Runtime" msgstr "Prostredie. ktoré sa má použiť" @@ -2119,7 +2134,7 @@ msgstr "Prostredie. ktoré sa má použiť" msgid "Show the used runtime" msgstr "Zobrazí referenciu" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 #, fuzzy msgid "Show the origin remote" msgstr "Zobrazí pôvod" @@ -2133,7 +2148,7 @@ msgstr "Nepodarilo sa nájsť inštaláciu %s" msgid "Active commit" msgstr "" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 #, fuzzy msgid "Show the active commit" msgstr "Zobrazí referenciu" @@ -2147,38 +2162,38 @@ msgstr "" msgid "Show the latest commit" msgstr "Zobrazí referenciu" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 #, fuzzy msgid "Installed size" msgstr "Nainštalovanie podpísaného prostredia" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 #, fuzzy msgid "Show the installed size" msgstr "Nainštalovanie podpísaného prostredia" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 #, fuzzy msgid "Show options" msgstr "Zobrazí voľby pomocníka" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, fuzzy, c-format msgid "Unable to load details of %s: %s" msgstr "Zlyhalo čítanie začlenenia %s: " -#: app/flatpak-builtins-list.c:189 -#, c-format +#: app/flatpak-builtins-list.c:188 +#, fuzzy, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Zlyhalo čítanie začlenenia %s: " -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr "" @@ -2190,7 +2205,7 @@ msgstr "" msgid "APP BRANCH - Make branch of application current" msgstr "" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "" @@ -2214,10 +2229,12 @@ msgid "" msgstr "" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "" @@ -2233,26 +2250,26 @@ msgstr "" msgid "[APP] - Override settings [for application]" msgstr "" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "" @@ -2314,10 +2331,12 @@ msgid "[PATTERN…] - disable automatic removal of runtimes matching patterns" msgstr "" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "" @@ -2404,128 +2423,128 @@ msgstr "Zobrazí referenciu" msgid " - Enumerate running sandboxes" msgstr "" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Nevykoná nič, ak poskytnutý vzdialený repozitár už existuje" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Zakáže overovanie pomocou GPG" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "" "Nastaví prioritu (predvolená hodnota je 1, vyššia hodnota znamená väčšiu " "prioritu)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORITA" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Importuje kľúč GPG zo SÚBORU (- pre štandardný vstup)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Zakáže vzdialený repozitár" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 #, fuzzy msgid "Autoinstall authenticator" msgstr "Neplatný identifikátor pid %s" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 #, fuzzy msgid "NAME LOCATION - Add a remote repository" msgstr "NÁZOV [UMIESTNENIE] - Pridanie vzdialeného repozitára" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "Vzdialený repozitár %s už existuje" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, fuzzy, c-format msgid "Invalid authenticator name %s" msgstr "Neplatný identifikátor pid %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, fuzzy, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "Nepodarilo sa aktualizovať metaúdaje navyše pre %s" @@ -2553,64 +2572,64 @@ msgstr "Žiadny vzdialený repozitár %s" msgid "Can't remove remote '%s' with installed refs" msgstr "" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 #, fuzzy msgid "Show parent" msgstr "Zobrazí referenciu" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 #, fuzzy msgid "REMOTE and REF must be specified" msgstr "ADRESÁR musí byť určený" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 #, fuzzy msgid "Download:" msgstr "Zobrazí referenciu" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 #, fuzzy msgid "History:" msgstr "Zobrazí začlenenie" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 #, fuzzy msgid " Commit:" msgstr "Zobrazí začlenenie" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr "" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr "" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "" @@ -2642,7 +2661,7 @@ msgstr "Zobrazí referenciu" msgid "Show the collection ID" msgstr "Spustí aplikáciu" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "" @@ -2706,42 +2725,42 @@ msgstr "Zobrazí voľby pomocníka" msgid " - List remote repositories" msgstr "" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 #, fuzzy msgid "Show the runtime" msgstr "Zobrazí referenciu" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 #, fuzzy msgid "Download size" msgstr "Zobrazí referenciu" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 #, fuzzy msgid "Show the download size" msgstr "Zobrazí referenciu" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr "" @@ -2878,233 +2897,237 @@ msgstr "Inštalovanie: %s\n" msgid "- Repair a flatpak installation" msgstr "" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, fuzzy, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Neplatný identifikátor pid %s" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, fuzzy, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Neplatný identifikátor pid %s" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "" -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "" -#: app/flatpak-builtins-repair.c:488 -#, fuzzy +#: app/flatpak-builtins-repair.c:498 +#, fuzzy, c-format msgid "Erasing .removed\n" msgstr "Inštalovanie: %s z %s\n" -#: app/flatpak-builtins-repair.c:513 -#, fuzzy +#: app/flatpak-builtins-repair.c:523 +#, fuzzy, c-format msgid "Reinstalling refs\n" msgstr "Inštalovanie: %s z %s\n" -#: app/flatpak-builtins-repair.c:515 -#, fuzzy +#: app/flatpak-builtins-repair.c:525 +#, fuzzy, c-format msgid "Reinstalling removed refs\n" msgstr "Inštalovanie: %s z %s\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, fuzzy, c-format msgid "While removing appstream for %s: " msgstr "Počas otvárania repozitára %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, fuzzy, c-format msgid "While deploying appstream for %s: " msgstr "Počas otvárania repozitára %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "" -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, fuzzy, c-format msgid "Comment: %s\n" msgstr "Príkaz, ktorý sa má nastaviť" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, fuzzy, c-format msgid "Description: %s\n" msgstr "Úplný popis" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, fuzzy, c-format msgid "Deploy collection ID: %s\n" msgstr "Spustí aplikáciu" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, fuzzy, c-format msgid "Authenticator name: %s\n" msgstr "Neplatný identifikátor pid %s" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, fuzzy, c-format msgid "Authenticator install: %s\n" msgstr "Zobrazí voľby pomocníka" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 #, fuzzy msgid "Installed" msgstr "Nainštalovanie balíka" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 #, fuzzy msgid "History length" msgstr "Zobrazí začlenenie" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 #, fuzzy msgid "Print general information about the repository" msgstr "Vypíše informácie o verzii a skončí" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 #, fuzzy msgid "List the branches in the repository" msgstr "Aktualizuje súbor zhrnutia v repozitári" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 #, fuzzy msgid "Show commits for a branch" msgstr "Zobrazí referenciu" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 #, fuzzy msgid "Print information about the repo subsets" msgstr "Vypíše informácie o verzii a skončí" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "" @@ -3198,11 +3221,11 @@ msgstr "" msgid "Use PATH instead of the runtime's /usr" msgstr "" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, fuzzy, c-format msgid "runtime/%s/%s/%s not installed" msgstr "Aplikácia %s %s nie je nainštalovaná" @@ -3222,16 +3245,16 @@ msgstr "Žiadny vzdialený repozitár %s" msgid "Show the remotes" msgstr "Zobrazí referenciu" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 #, fuzzy msgid "TEXT must be specified" msgstr "NÁZOV musí byť určený" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 #, fuzzy msgid "No matches found" msgstr "Nič nevyhovuje názvu %s" @@ -3312,6 +3335,7 @@ msgid "" msgstr "" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "" @@ -3336,6 +3360,7 @@ msgid "Warning: %s is not installed\n" msgstr "Aplikácia %s vetva %s nie je nainštalovaná" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "" @@ -3378,7 +3403,7 @@ msgid "With --commit, only one REF may be specified" msgstr "ADRESÁR musí byť určený" #: app/flatpak-builtins-update.c:162 -#, fuzzy +#, fuzzy, c-format msgid "Looking for updates…\n" msgstr "Žiadne aktualizácie.\n" @@ -3388,184 +3413,177 @@ msgid "Unable to update %s: %s\n" msgstr "Zlyhalo čítanie začlenenia %s: " #: app/flatpak-builtins-update.c:274 -#, fuzzy +#, fuzzy, c-format msgid "Nothing to do.\n" msgstr "Nič nevyhovuje názvu %s" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" "Hint: Use flatpak remote-add to add a remote" msgstr "" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, fuzzy, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Nepodarilo sa nájsť inštaláciu %s" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" "Use this ref?" msgstr "" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" +msgid "Remotes found with refs similar to ‘%s’:" msgstr "" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, fuzzy, c-format msgid "Updating appstream data for user remote %s" msgstr "" "Chyba počas aktualizácie metaúdajov navyše pre „%s“: %s\n" "\n" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, fuzzy, c-format msgid "Updating appstream data for remote %s" msgstr "" "Chyba počas aktualizácie metaúdajov navyše pre „%s“: %s\n" "\n" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 #, fuzzy msgid "Error updating" msgstr "Aktualizovanie zhrnutia\n" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "" #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, fuzzy, c-format msgid "Invalid suffix: '%s'." msgstr "Neplatný identifikátor pid %s" -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, fuzzy, c-format msgid "Unknown column: %s" msgstr "Neznámy príkaz „%s“" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 #, fuzzy msgid "Show all columns" msgstr "Zobrazí voľby pomocníka" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, fuzzy, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "" "Požadované prostredie pre %s (%s) nie je nainštalované. Vyhľadáva sa...\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 #, fuzzy msgid "Do you want to install it?" msgstr "Nájdené vo vzdialenom repozitári %s. Chcete vykonať inštaláciu?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, fuzzy, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "" "Požadované prostredie pre %s (%s) nie je nainštalované. Vyhľadáva sa...\n" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, fuzzy, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Nedá sa nájsť %s vo vzdialenom repozitári %s" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3574,7 +3592,7 @@ msgid "" msgstr "" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, fuzzy, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3585,128 +3603,128 @@ msgstr "" " %s\n" "Konfigurovať ju ako nový vzdialený repozitár „%s“" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 #, fuzzy msgid "Installing…" msgstr "Inštalovanie: %s\n" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, fuzzy, c-format msgid "Installing %d/%d…" msgstr "Inštalovanie: %s\n" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, fuzzy, c-format msgid "Updating %d/%d…" msgstr "Aktualizovanie: %s z %s\n" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 #, fuzzy msgid "Uninstalling…" msgstr "Inštalovanie: %s\n" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, fuzzy, c-format msgid "Uninstalling %d/%d…" msgstr "Inštalovanie: %s\n" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, fuzzy, c-format msgid "Warning: %s%s%s already installed" msgstr "Aplikácia %s vetva %s je už nainštalovaná" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, fuzzy, c-format msgid "Error: %s%s%s already installed" msgstr "Aplikácia %s vetva %s je už nainštalovaná" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, fuzzy, c-format msgid "Warning: %s%s%s not installed" msgstr "Aplikácia %s vetva %s nie je nainštalovaná" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, fuzzy, c-format msgid "Error: %s%s%s not installed" msgstr "Aplikácia %s %s nie je nainštalovaná" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, fuzzy, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "Spustí aplikáciu" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, fuzzy, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "Spustí aplikáciu" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" msgstr "" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" msgstr "" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, c-format msgid "Warning: %s" msgstr "" -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, fuzzy, c-format msgid "Error: %s" msgstr "chyba:" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, fuzzy, c-format msgid "Failed to install %s%s%s: " msgstr "Zlyhalo čítanie začlenenia %s: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, fuzzy, c-format msgid "Failed to update %s%s%s: " msgstr "Zlyhalo čítanie začlenenia %s: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, fuzzy, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Zlyhalo čítanie začlenenia %s: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, fuzzy, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Zlyhalo čítanie začlenenia %s: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, fuzzy, c-format msgid "Authentication required for remote '%s'\n" msgstr "Na aktualizáciu softvéru sa vyžaduje overenie totožnosti" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, c-format msgid "" "\n" @@ -3714,7 +3732,7 @@ msgid "" "%s%s%s branch %s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, c-format msgid "" "\n" @@ -3722,7 +3740,7 @@ msgid "" "%s%s%s\n" msgstr "" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, c-format msgid "" "\n" @@ -3731,118 +3749,114 @@ msgid "" msgstr "" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, fuzzy, c-format msgid "Info: applications using this extension:\n" msgstr "Podpíše aplikáciu alebo prostredie" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, fuzzy, c-format msgid "Info: applications using this runtime:\n" msgstr "Podpíše aplikáciu alebo prostredie" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, fuzzy, c-format msgid "Failed to rebase %s to %s: " msgstr "Zlyhalo čítanie začlenenia %s: " -#: app/flatpak-cli-transaction.c:1009 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Zlyhalo čítanie začlenenia %s: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, fuzzy, c-format msgid "New %s%s%s permissions:" msgstr "Zobrazí voľby pomocníka" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, fuzzy, c-format msgid "%s%s%s permissions:" msgstr "Zobrazí voľby pomocníka" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "" #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 #, fuzzy msgid "Proceed with these changes to the user installation?" msgstr "Nepodarilo sa nájsť inštaláciu %s" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 #, fuzzy msgid "Proceed with these changes to the system installation?" msgstr "Nepodarilo sa nájsť inštaláciu %s" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, fuzzy, c-format msgid "Proceed with these changes to the %s?" msgstr "Nepodarilo sa nájsť inštaláciu %s" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "" -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 #, fuzzy msgid "Uninstall complete." msgstr "Odinštalovanie prostredia" -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 #, fuzzy msgid "Installation complete." msgstr "Inštalovanie: %s\n" -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 #, fuzzy msgid "Updates complete." msgstr "Použije alternatívny súbor pre metaúdaje" #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "" @@ -4166,33 +4180,33 @@ msgid "" "not appear on your desktop until the session is restarted." msgstr "" -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, fuzzy, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "„%s“ nie je platným názvom aplikácie: %s" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Nebol určený žiadny príkaz" @@ -4255,16 +4269,16 @@ msgstr "Zlyhalo čítanie začlenenia %s: " msgid "Error: Failed to uninstall %s: %s\n" msgstr "Inštalovanie: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, fuzzy, c-format msgid "%s already installed" msgstr "Aplikácia %s vetva %s je už nainštalovaná" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "" @@ -4293,238 +4307,267 @@ msgstr "" msgid "Failed to rebase %s to %s: %s\n" msgstr "Zlyhalo čítanie začlenenia %s: " -#: app/flatpak-quiet-transaction.c:264 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Zlyhalo čítanie začlenenia %s: " - #: common/flatpak-auth.c:58 #, fuzzy, c-format msgid "No authenticator configured for remote `%s`" msgstr "Na aktualizáciu softvéru sa vyžaduje overenie totožnosti" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, fuzzy, c-format msgid "Invalid dbus name %s" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" "etc, home, xdg-*[/…], ~/dir, /dir" msgstr "" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Zdieľa s hostiteľom" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "SOKET" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "ZARIADENIE" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Umožní funkciu" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "FUNKCIA" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Neumožní funkciu" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "SYSTÉM_SÚBOROV" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "NÁZOV_DBUS" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +msgid "Allow app to own name on the a11y bus" +msgstr "" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "NÁZOV_SÚBORU" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4533,671 +4576,697 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, fuzzy, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, fuzzy, c-format msgid "No such ref '%s' in remote %s" msgstr "Nedá sa nájsť %s vo vzdialenom repozitári %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 #, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "" -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "" - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, fuzzy, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Aplikácia %s vetva %s je už nainštalovaná" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, fuzzy, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Aplikácia %s vetva %s je už nainštalovaná" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 #, fuzzy msgid "Remote OCI index has no registry uri" msgstr "NÁZOV [UMIESTNENIE] - Pridanie vzdialeného repozitára" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, fuzzy, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Nedá sa nájsť %s vo vzdialenom repozitári %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, fuzzy, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "Nedá sa nájsť %s vo vzdialenom repozitári %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 #, fuzzy msgid "User installation" msgstr "Inštalovanie: %s\n" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, fuzzy, c-format msgid "System (%s) installation" msgstr "Inštalovanie: %s\n" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, fuzzy, c-format msgid "%s (commit %s) not installed" msgstr "Aplikácia %s %s nie je nainštalovaná" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, fuzzy, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "" "Chyba počas aktualizácie metaúdajov navyše pre „%s“: %s\n" "\n" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Počas otvárania repozitára %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, fuzzy, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Nesprávna veľkosť pre údaje navyše %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, fuzzy, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, fuzzy, c-format msgid "Wrong size for extra-data %s" msgstr "Nesprávna veľkosť pre údaje navyše %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, fuzzy, c-format msgid "While downloading %s: " msgstr "Počas otvárania repozitára %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Nesprávna veľkosť pre údaje navyše %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, fuzzy, c-format msgid "%s commit %s already installed" msgstr "Aplikácia %s vetva %s je už nainštalovaná" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "" -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 #, fuzzy msgid "Only applications can be made current" msgstr "Podpíše aplikáciu alebo prostredie" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Nedostatok pamäte" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Zlyhalo čítanie z exportovaného súboru" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, fuzzy, c-format msgid "Invalid Exec argument %s" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "" -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "" -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "" -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "" -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "Aplikácia %s nie je dostupná" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "" -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "" -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "" -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Počas pokusu o odstránenie existujúceho adresára navyše: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Počas pokusu o aplikáciu údajov navyše: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, fuzzy, c-format msgid "Invalid commit ref %s: " msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "Aplikácia %s vetva %s je už nainštalovaná" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "" -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Táto verzia aplikácie %s je už nainštalovaná" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "Aplikácia %s vetva %s nie je nainštalovaná" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, fuzzy, c-format msgid "%s commit %s not installed" msgstr "Aplikácia %s %s nie je nainštalovaná" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, fuzzy, c-format msgid "Failed to load filter '%s'" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, fuzzy, c-format msgid "Failed to parse filter '%s'" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 #, fuzzy msgid "Failed to write summary cache: " msgstr "Zlyhalo vytvorenie dočasného súboru" -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, fuzzy, c-format msgid "No oci summary cached for remote '%s'" msgstr "Aplikácia %s vetva %s je už nainštalovaná" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, fuzzy, c-format msgid "No cached summary for remote '%s'" msgstr "Aplikácia %s vetva %s je už nainštalovaná" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "Nesprávna veľkosť pre údaje navyše %s" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " "URL passed to remote-add was valid." msgstr "" -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "Nesprávna veľkosť pre údaje navyše %s" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "" -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Nič nevyhovuje názvu %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, fuzzy, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Nedá sa nájsť %s%s%s%s%s vo vzdialenom repozitári %s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, fuzzy, c-format msgid "%s/%s/%s not installed" msgstr "Aplikácia %s %s nie je nainštalovaná" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Nepodarilo sa nájsť inštaláciu %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, fuzzy, c-format msgid "Invalid file format, no %s group" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, fuzzy, c-format msgid "Invalid file format, no %s specified" msgstr "Neplatný identifikátor pid %s" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 #, fuzzy msgid "Invalid file format, gpg key invalid" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Prostredie %s, vetva %s je už nainštalovaná" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Aplikácia %s, vetva %s je už nainštalovaná" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, fuzzy, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Nedá sa nájsť %s vo vzdialenom repozitári %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, fuzzy, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, fuzzy, c-format msgid "Unable to open path \"%s\": %s" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, fuzzy, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, fuzzy, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "" + +#: common/flatpak-installation.c:835 #, fuzzy, c-format msgid "Ref %s not installed" msgstr "Aplikácia %s %s nie je nainštalovaná" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, fuzzy, c-format msgid "App %s not installed" msgstr "Aplikácia %s %s nie je nainštalovaná" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, fuzzy, c-format msgid "Remote '%s' already exists" msgstr "Vzdialený repozitár %s už existuje" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, fuzzy, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "Požadované rozšírenie %s je nainštalované iba čiastočne" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, fuzzy, c-format msgid "Unable to create directory %s" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, fuzzy, c-format msgid "Unable to lock %s" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-instance.c:581 -#, fuzzy, c-format -msgid "Unable to open directory %s" -msgstr "Zlyhalo otvorenie dočasného súboru flatpak-info" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, fuzzy, c-format msgid "Unable to create file %s" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, fuzzy, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 #, fuzzy msgid "Only realm in authentication request" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 #, fuzzy msgid "Invalid realm in authentication request" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, fuzzy, c-format msgid "Authorization failed: %s" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 #, fuzzy msgid "Invalid authentication request response" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 #, fuzzy msgid "Invalid delta file format" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, fuzzy, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, fuzzy, c-format msgid "Error signing commit: %d" msgstr "Inštalovanie: %s\n" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "" + #: common/flatpak-progress.c:236 #, fuzzy, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5218,389 +5287,446 @@ msgstr "Zobrazí referenciu" msgid "Downloading files: %d/%d %s" msgstr "Zobrazí referenciu" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 #, fuzzy msgid "Invalid remote name" msgstr "Žiadny vzdialený repozitár %s" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, fuzzy, c-format msgid "%s is not application or runtime" msgstr "Podpíše aplikáciu alebo prostredie" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, fuzzy, c-format msgid "Wrong number of components in %s" msgstr "Príliš veľa parametrov" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, fuzzy, c-format msgid "Invalid name %.*s: %s" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, fuzzy, c-format msgid "Invalid arch: %.*s: %s" msgstr "„%s“ nie je platným názvom vetvy: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, fuzzy, c-format msgid "Invalid name %s: %s" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, fuzzy, c-format msgid "Invalid arch: %s: %s" msgstr "„%s“ nie je platným názvom vetvy: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, fuzzy, c-format msgid "Invalid branch: %s: %s" msgstr "„%s“ nie je platným názvom vetvy: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, fuzzy, c-format msgid "Wrong number of components in partial ref %s" msgstr "Príliš veľa parametrov" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 #, fuzzy msgid " development platform" msgstr "Použije vývojové prostredie" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr "" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 #, fuzzy msgid " application base" msgstr "Spustí aplikáciu" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr "" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr "" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 #, fuzzy msgid " translations" msgstr "Inštalovanie: %s\n" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr "" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, fuzzy, c-format msgid "Invalid id %s: %s" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, fuzzy, c-format msgid "Bad remote name: %s" msgstr "Žiadny vzdialený repozitár %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 #, fuzzy msgid "No url specified" msgstr "Nebol určený žiadny príkaz" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "" -#: common/flatpak-run.c:1241 +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Žiadne zdroje údajov navyše" + +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "" + +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "" + +#: common/flatpak-repo-utils.c:2901 #, fuzzy -msgid "Failed to open app info file" -msgstr "Zlyhalo otvorenie súboru s informáciami o aplikácii: %s" +msgid "Invalid gpg key" +msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" +#: common/flatpak-repo-utils.c:3237 +#, fuzzy, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Aktualizovanie zhrnutia\n" + +#: common/flatpak-repo-utils.c:3243 +#, fuzzy, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Aktualizovanie zhrnutia\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" msgstr "" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" +#: common/flatpak-repo-utils.c:3417 +#, fuzzy, c-format +msgid "No appstream data for %s: %s\n" +msgstr "" +"Chyba počas aktualizácie metaúdajov navyše pre „%s“: %s\n" +"\n" + +#: common/flatpak-repo-utils.c:3764 +#, fuzzy +msgid "Invalid bundle, no ref in metadata" +msgstr "Neplatný identifikátor pid %s" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" msgstr "" -#: common/flatpak-run.c:2207 +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, fuzzy, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Zlyhalo otvorenie dočasného súboru flatpak-info" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, fuzzy, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Zlyhalo otvorenie dočasného súboru flatpak-info" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, fuzzy, c-format msgid "Failed to write to instance id fd: %s" msgstr "Zlyhalo vytvorenie dočasného súboru" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, fuzzy, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Zlyhal zápis dočasného súboru" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, fuzzy, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Zlyhal zápis dočasného súboru" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, fuzzy, c-format msgid "Failed to block syscall %d: %s" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, fuzzy, c-format msgid "Failed to export bpf: %s" msgstr "Zlyhalo čítanie z exportovaného súboru" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, fuzzy, c-format msgid "Failed to open ‘%s’" msgstr "Zlyhalo otvorenie dočasného súboru flatpak-info" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, fuzzy, c-format msgid "Failed to migrate from %s: %s" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, fuzzy, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Zlyhalo čítanie začlenenia %s: " -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +#, fuzzy +msgid "Failed to open app info file" +msgstr "Zlyhalo otvorenie súboru s informáciami o aplikácii: %s" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, fuzzy, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "Na inštaláciu softvéru sa vyžaduje overenie totožnosti" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, fuzzy, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "Na inštaláciu softvéru sa vyžaduje overenie totožnosti" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, fuzzy, c-format msgid "%s is already installed" msgstr "Aplikácia %s vetva %s je už nainštalovaná" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, fuzzy, c-format msgid "%s is already installed from remote %s" msgstr "Aplikácia %s vetva %s je už nainštalovaná" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, fuzzy, c-format msgid "Invalid .flatpakref: %s" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, fuzzy, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "" "Chyba počas aktualizácie metaúdajov navyše pre „%s“: %s\n" "\n" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " "installed: %s" msgstr "" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, fuzzy, c-format msgid "No authenticator installed for remote '%s'" msgstr "Na aktualizáciu softvéru sa vyžaduje overenie totožnosti" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, fuzzy, c-format msgid "Failed to get tokens for ref: %s" msgstr "Zlyhalo otvorenie súboru temp" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 #, fuzzy msgid "Failed to get tokens for ref" msgstr "Zlyhalo otvorenie súboru temp" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 #, fuzzy msgid "any remote" msgstr "Žiadny vzdialený repozitár %s" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, fuzzy, c-format msgid "Can't load dependent file %s: " msgstr "Objektov celkom: %u\n" -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, fuzzy, c-format msgid "Invalid .flatpakrepo: %s" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." msgstr "" -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "" @@ -5647,140 +5773,112 @@ msgstr "" msgid "URI is not absolute, and no base URI was provided" msgstr "" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" msgstr "" -#: common/flatpak-utils.c:906 -#, fuzzy -msgid "Too many segments in glob" -msgstr "Príliš veľa parametrov" - -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:111 #, fuzzy, c-format -msgid "Invalid glob character '%c'" +msgid "Invalid USB class" msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:125 #, c-format -msgid "Missing glob on line %d" +msgid "Invalid USB subclass" msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Trailing text on line %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "on line %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:205 #, c-format -msgid "Unexpected word '%s' on line %d" +msgid "USB device queries must be in the form TYPE:DATA" msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:225 #, c-format -msgid "Invalid %s: Missing group ‘%s’" +msgid "Unknown USB query rule %s" msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing key ‘%s’" +msgid "Empty USB query" msgstr "" -#: common/flatpak-utils.c:2375 -#, fuzzy -msgid "Invalid gpg key" -msgstr "Neplatný identifikátor pid %s" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Žiadne zdroje údajov navyše" - -#: common/flatpak-utils.c:5431 -#, fuzzy, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Aktualizovanie zhrnutia\n" - -#: common/flatpak-utils.c:5437 -#, fuzzy, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Aktualizovanie zhrnutia\n" - -#: common/flatpak-utils.c:5684 +#: common/flatpak-usb.c:274 #, c-format -msgid "%s is end-of-life, ignoring for appstream" +msgid "Multiple USB query rules of the same type is not supported" msgstr "" -#: common/flatpak-utils.c:5719 -#, fuzzy, c-format -msgid "No appstream data for %s: %s\n" +#: common/flatpak-usb.c:283 +#, c-format +msgid "'all' must not contain extra query rules" msgstr "" -"Chyba počas aktualizácie metaúdajov navyše pre „%s“: %s\n" -"\n" -#: common/flatpak-utils.c:6689 -#, fuzzy -msgid "Invalid bundle, no ref in metadata" -msgstr "Neplatný identifikátor pid %s" - -#: common/flatpak-utils.c:6791 +#: common/flatpak-usb.c:291 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgid "USB queries with 'dev' must also specify vendors" msgstr "" -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" msgstr "" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" +#: common/flatpak-utils.c:693 +msgid "Empty glob" msgstr "" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 -#, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "" +#: common/flatpak-utils.c:712 +#, fuzzy +msgid "Too many segments in glob" +msgstr "Príliš veľa parametrov" -#: common/flatpak-utils.c:7095 -#, c-format -msgid "No ref specified for OCI image %s" -msgstr "" +#: common/flatpak-utils.c:733 +#, fuzzy, c-format +msgid "Invalid glob character '%c'" +msgstr "Neplatný identifikátor pid %s" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:787 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgid "Missing glob on line %d" msgstr "" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:791 #, c-format -msgid "Invalid require-flatpak argument %s" +msgid "Trailing text on line %d" msgstr "" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:795 #, c-format -msgid "%s needs a later flatpak version (%s)" +msgid "on line %d" msgstr "" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" +#: common/flatpak-utils.c:817 +#, c-format +msgid "Unexpected word '%s' on line %d" msgstr "" -#: common/flatpak-utils.c:8401 +#: common/flatpak-utils.c:1980 #, c-format -msgid "“%s” is not an unsigned number" +msgid "Invalid require-flatpak argument %s" msgstr "" -#: common/flatpak-utils.c:8411 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format -msgid "Number “%s” is out of bounds [%s, %s]" +msgid "%s needs a later flatpak version (%s)" msgstr "" #: oci-authenticator/flatpak-oci-authenticator.c:291 @@ -5796,43 +5894,45 @@ msgstr "" msgid "Invalid token" msgstr "Neplatný identifikátor pid %s" -#: portal/flatpak-portal.c:2264 -#, fuzzy +#: portal/flatpak-portal.c:2337 +#, fuzzy, c-format msgid "No portal support found" msgstr "Nič nevyhovuje názvu %s" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 #, fuzzy msgid "Update" msgstr "Žiadne aktualizácie.\n" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, fuzzy, c-format msgid "Update %s?" msgstr "Aktualizovanie zhrnutia\n" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "" -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 -#, fuzzy +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, fuzzy, c-format msgid "Update ended unexpectedly" msgstr "Aktualizovanie podpísaného prostredia" @@ -6070,6 +6170,18 @@ msgid "" "parental controls policy" msgstr "Na inštaláciu softvéru sa vyžaduje overenie totožnosti" +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Zlyhalo čítanie začlenenia %s: " + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Zlyhalo čítanie začlenenia %s: " + +#, fuzzy, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Zlyhalo otvorenie dočasného súboru flatpak-info" + #, fuzzy #~ msgid "update" #~ msgstr "Žiadne aktualizácie.\n" diff --git a/po/stamp-po b/po/stamp-po deleted file mode 100644 index 9788f70..0000000 --- a/po/stamp-po +++ /dev/null @@ -1 +0,0 @@ -timestamp diff --git a/po/sv.gmo b/po/sv.gmo deleted file mode 100644 index b8a8b664efcff50defe0749435d0c97a9bf480d1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 111968 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�M@?Cmn@exFFH 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 Tk2c0_xU^r, 2016. # Josef Andersson , 2017, 2018. # Luna Jernberg , 2020. -# Anders Jonsson , 2021, 2022. +# Anders Jonsson , 2021, 2022, 2023. # msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" -"PO-Revision-Date: 2022-08-03 14:35+0200\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2023-02-09 22:55+0100\n" "Last-Translator: Anders Jonsson \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -19,163 +19,163 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 3.1.1\n" +"X-Generator: Poedit 3.2.2\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Exportera exekveringsmiljö istället för program" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Arkitektur att skapa bunt för" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARK" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "URL till förråd" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "URL för flatpakrepo-fil i exekveringsmiljö" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Lägg till GPG-nyckel från FIL (- för standard in)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "FIL" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "GPG-nyckel-ID att signera OCI-avbilden med" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "NYCKEL-ID" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "NYCKEL-ID" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "GPG-hemkatalog att använda vid sökning efter nyckelringar" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "HEMKAT" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "OSTree-incheckning att skapa deltabunt från" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "INCHECKNING" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Exportera oci-avbild istället för flatpak-bunt" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" msgstr "PLATS FILNAMN NAMN [GREN] - Skapa en enfilsbunt från ett lokalt förråd" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "PLATS, FILNAMN och NAMN måste anges" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "För många argument" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "”%s” är inte ett giltigt förråd" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "”%s” är inte ett giltigt förråd: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "”%s” är inte ett giltigt namn: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "”%s” är inte ett giltigt grennamn: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -211,7 +211,7 @@ msgstr "KAT" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Var anpassad sdk-katalog ska eftersökas (standardvärdet är ”usr”)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Använd alternativ fil för metadata" @@ -231,105 +231,106 @@ msgstr "Logga sessionsbussanrop" msgid "Log system bus calls" msgstr "Logga systembussanrop" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "KATALOG [KOMMANDO [ARGUMENT…]] - Bygg i katalog" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "KATALOG måste anges" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "Byggkatalog %s är inte initierad, använd flatpak build-init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "metadata ogiltigt, inte program eller exekveringsmiljö" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "Ingen tilläggspunkt matchar %s i %s" # sebras: how is this translated? -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Saknar ”=” i bindningsmonteringsargument ”%s”" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Kunde inte starta program" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Katalog för källförråd" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "KÄLL-REPO" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Ref i källförråd" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "KÄLL-REF" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Enradsämne" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "ÄMNE" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Fullständig beskrivning" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "TEXT" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Uppdatera appstream-grenen" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Uppdatera appstream-grenen" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Uppdatera inte sammanfattningen" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "GPG-nyckel-ID att signera incheckning med" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "Markera bygge som att det passerat slutet på sin livstid" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "ANLEDNING" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -337,370 +338,375 @@ msgstr "" "Markera referenser som matchar prefixet GAMMALT_ID som att de passerat " "slutet på sin livstid, att ersättas med det angivna NYTT_ID" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "GAMMALT_ID=NYTT_ID" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "Ställ in typ av token som krävs för att installera denna incheckning" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "VÄR" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "Åsidosätt tidsstämpel för incheckningen (NOW för aktuell tid)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "TIDSSTÄMPEL" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "Generera inte ett sammanfattningsindex" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" "MÅL-FÖRRÅD [MÅL-REF…] - Skapa en ny incheckning baserad på befintliga " "incheckningar" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "MÅL-FÖRRÅD måste anges" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "Om --src-repo inte anges måste exakt en målreferens anges" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "Om --src-ref anges måste exakt en målreferens anges" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "Antingen --src-repo eller --src-ref måste anges" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" "Ogiltigt argumentformat för användning --end-of-life-" "rebase=GAMMALT_ID=NYTT_ID" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "Ogiltigt namn %s i --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "Det gick inte att tolka ”%s”" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "Det går inte att checka in från en partiell källkodsincheckning" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: ingen förändring\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Arkitektur att exportera till (måste vara värdkompatibel)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Checka in exekveringsmiljö (/usr), inte /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Använd alternativ katalog för filerna" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "UNDERKAT" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Filer att exkludera" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "MÖNSTER" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Exkluderade filer att inkludera" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "" "Markera bygge som att det passerat slutet på sin livstid, att ersättas med " "angivet ID" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Åsidosätt tidsstämpel för incheckningen" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "Samlings-ID" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "VARNING: Fel vid körning av desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "VARNING: Fel vid läsning av desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "VARNING: Misslyckades med att validera desktop-filen %s: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "VARNING: Det går inte att hitta Exec-nyckeln i %s: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "VARNING: Binär inte funnen för Exec-rad i %s: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "VARNING: Ikon matchar inte program-id i %s: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "VARNING: Ikon hänvisad till i desktop-fil men inte exporterad: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Ogiltig urityp %s, endast http/https stöds" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "Kunde inte hitta basnamn i %s, ange ett namn explicit" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "Inga snedstreck tillåtna i namn för extra data" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Ogiltigt format för sha256-kontrollsumman: ”%s”" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Extra datastorlekar med noll i storlek stöds ej" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "PLATS KATALOG [GREN] - Skapa ett förråd från en byggkatalog" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "PLATS och KATALOG måste anges" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "”%s” är inte ett giltigt samlings-ID: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Inget namn angivet i metadata" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Incheckning: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Total metadata: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Skrivna metadata: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Totalt innehåll: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Skrivet innehåll: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Skrivna innehållsbyte:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Kommando att ställa in" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "KOMMANDO" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Flatpak-version att kräva" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "MAJOR.MINOR.MICRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Behandla inte exporter" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Extra datainfo" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Lägg till info om tilläggspunkt" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NAMN=VARIABEL[=VÄRDE]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Ta bort info om tilläggspunkt" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NAMN" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Ställ in tilläggsprioritet (endast för tillägg)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "VÄRDE" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Ändra vilken sdk som används för programmet" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Ändra exekveringsmiljö som används för programmet" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "EXEKVERINGSMILJÖ" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Ställ in alternativ för generella metadata" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GRUPP=NYCKEL[=VÄRDE]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Ärv inte rättigheter från exekveringsmiljö" # Kontrollerar filnamnet, så denna sträng handlar om filändelser snarare än tillägg till ett program -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "Exporterar inte %s, fel filändelse\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "Exporterar inte %s, exportfilnamnet tillåts inte\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "Exporterar %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Fler än en körbar fil funnen\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "Använder %s som ett kommando\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Ingen körbar fil funnen\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Ogiltigt argument för --require-version: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "För få element i --extra-data-argumentet %s" # TODO: parentheses not matching? -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -708,7 +714,7 @@ msgid "" msgstr "" "För få element i --metadata-argumentet %s, formatet är GRUPP=NYCKEL[=VÄRDE]]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -717,62 +723,63 @@ msgid "" msgstr "" "För få element i --extension-argumentet %s, formatet är NAMN=VAR[=VÄRDE]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "Ogiltigt tilläggsnamn %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "KATALOG - Slutför en byggkatalog" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Byggkatalog %s är inte initierad" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Byggkatalog %s redan slutförd" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Granska de exporterade filerna och metadata\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Åsidosätt referensen som använts för den importerade bunten" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REF" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Importera oci-avbild istället för flatpak-bunt" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Ref ”%s” hittades inte i registret" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "Flera avbilder i registret, ange en ref med --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "Importerar %s (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "PLATS FILNAMN - Importera en filbunt in i ett lokalt förråd" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "PLATS och FILNAMN måste anges" @@ -885,88 +892,88 @@ msgstr "”%s” är inte ett giltigt programnamn: %s" msgid "Build directory %s already initialized" msgstr "Byggkatalog %s är redan initierad" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Ark att installera för" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Leta efter exekveringsmiljö med angivet namn" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "PLATS [ID [GREN]] - Signera ett program eller en exekveringsmiljö" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "PLATS måste anges" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Inga GPG-nyckel-ID angivna" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Omdirigera detta förråd till en ny URL" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Ett enkelt namn att använda för detta förråd" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "TITEL" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "Enradskommentar för detta förråd" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "KOMMENTAR" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "Ett helt beskrivningsstycke för detta förråd" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "BESKRIVNING" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "URL för en webbplats för detta förråd" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "URL för en ikon för detta förråd" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Standardgren att använda för detta förråd" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "GREN" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "SAMLINGS-ID" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" @@ -974,121 +981,124 @@ msgstr "" "Distribuera permanent samlings-ID till fjärrklienters konfigurationer, " "endast för sidoinläsningsstöd" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "Distribuera permanent samlings-ID till fjärrklienters konfigurationer" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Namn på autentiserare för detta förråd" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "Installera automatiskt autentiserare för detta förråd" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "Installera inte automatiskt autentiserare för detta förråd" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Autentiseraralternativ" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "NYCKEL=VÄRDE" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Importera ny öppen GPG-standardnyckel från FIL" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "GPG-nyckel-ID att signera sammanfattningen med" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Generera deltafiler" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Uppdatera inte appstream-grenen" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "Max antal parallella jobb när deltan skapas (standard: ANTALCPU)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "ANT-JOBB" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "Skapa inte deltan som matchar referenser" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Rensa oanvända objekt" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "Rensa men ta inte bort något på riktigt" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" "Gå endast DJUP steg upp i hierarkin för varje incheckning (standard: " "-1=oändligt)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "DJUP" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Genererar delta: %s (%.10s)\n" # sebras: from-empty? why is there a dash? -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Genererar delta: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Misslyckades med att generera delta %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Misslyckades med att generera delta %s (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "PLATS - Uppdatera förrådsmetadata" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Uppdaterar appstream-gren\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Uppdaterar sammanfattning\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Totalt antal objekt: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Inga onåbara objekt\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "Tog bort %u objekt, %s frigjort\n" @@ -1160,25 +1170,25 @@ msgstr "Kan endast använda en av --list, --get, --set eller --unset" msgid "Must specify one of --list, --get, --set or --unset" msgstr "Måste ange en av --list, --get, --set eller --unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Sök efter program med det angivna namnet" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Ark att kopiera" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "MÅL" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "Tillåt partiella incheckningar i det skapade förrådet" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " @@ -1187,13 +1197,13 @@ msgstr "" "Varning: Relaterad ref ”%s” är partiellt installerad. Använd --allow-partial " "för att undertrycka detta meddelande.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" "Varning: Utelämnar relaterad ref ”%s” för att den inte är installerad.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1202,12 +1212,12 @@ msgstr "" "Varning: Utelämnar relaterad ref ”%s” för att dess fjärrförråd ”%s” inte har " "ett samlings-ID inställt.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "Varning: Utelämnar relaterad ref ”%s” för att den är extra-data.\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1216,35 +1226,35 @@ msgstr "" "Fjärrförrådet ”%s” har inte ett samlings-ID inställt, vilket krävs för P2P-" "distribution av ”%s”." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" "Varning: Utelämnar ref ”%s” (exekveringsmiljön för ”%s”) för att den är " "extra-data.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" "MONTERINGSSÖKVÄG [REF…] - Kopiera program eller exekveringsmiljöer till " "flyttbara media" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "MONTERINGSSÖKVÄG och REF måste anges" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "Hittade ref ”%s” i flera installationer: %s. Du måste ange en." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" "Referenser måste alla vara i samma installation (hittades i %s och %s)." -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " @@ -1253,21 +1263,21 @@ msgstr "" "Varning: Ref ”%s” är partiellt installerad. Använd --allow-partial för att " "undertrycka detta meddelande.\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" "Installerad ref ”%s” är extra-data, och kan inte distribueras i frånkopplat " "läge" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" "Varning: Det gick inte att uppdatera förrådsmetadata för fjärrförråd ”%s”: " "%s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1275,7 +1285,7 @@ msgstr "" "”%s”: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1284,7 +1294,7 @@ msgstr "" "”%s”: %s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1358,19 +1368,20 @@ msgstr "FIL - Hämta information om en exporterad fil" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Inte exporterad\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Vilken information som ska visas" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "FÄLT,…" @@ -1389,7 +1400,7 @@ msgid "Show the document path" msgstr "Visa dokumentets sökväg" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Ursprung" @@ -1403,7 +1414,7 @@ msgid "Show applications with permission" msgstr "Visa program med rättigheter" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Rättigheter" @@ -1532,12 +1543,12 @@ msgid "Show the kind of change" msgstr "Visa typen av ändring" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Ref" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Visa ref" @@ -1546,24 +1557,24 @@ msgid "Show the application/runtime ID" msgstr "Visa ID för programmet/exekveringsmiljön" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Ark" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Visa arkitekturen" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Gren" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Visa grenen" @@ -1575,7 +1586,7 @@ msgstr "Installation" msgid "Show the affected installation" msgstr "Visa den påverkade installationen" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Fjärrförråd" @@ -1584,7 +1595,7 @@ msgid "Show the remote" msgstr "Visa fjärrförrådet" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Incheckning" @@ -1604,7 +1615,7 @@ msgstr "Visa föregående incheckning" msgid "Show the remote URL" msgstr "Visa fjärrförråds-URL" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Användare" @@ -1621,7 +1632,7 @@ msgid "Show the tool that was used" msgstr "Visa verktyget som användes" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Version" @@ -1649,10 +1660,12 @@ msgid " - Show history" msgstr " - Visa historik" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "Misslyckades med att tolka flaggan --since" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "Misslyckades med att tolka flaggan --until" @@ -1668,11 +1681,11 @@ msgstr "Visa systeminstallationer" msgid "Show specific system-wide installations" msgstr "Visa specifika systemomfattande installationer" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Visa ref" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Visa incheckning" @@ -1685,15 +1698,15 @@ msgstr "Visa ursprung" msgid "Show size" msgstr "Visa storlek" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Visa metadata" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Visa exekveringsmiljö" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Visa sdk" @@ -1705,8 +1718,8 @@ msgstr "Visa rättigheter" msgid "Query file access" msgstr "Efterfråga filåtkomst" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1725,7 +1738,7 @@ msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "" "NAMN [GREN] - Hämta information om installerat program eller exekveringsmiljö" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "NAMN måste anges" @@ -1734,85 +1747,87 @@ msgstr "NAMN måste anges" msgid "ref not present in origin" msgstr "ref finns inte i ursprung" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Varning: Incheckning har inga flatpak-metadata\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Ref:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Ark:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Gren:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Version:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Licens:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Samling:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Installation:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Installerad:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Exekvering:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Datum:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Ämne:" @@ -1825,15 +1840,15 @@ msgid "Latest commit:" msgstr "Senaste incheckning:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Incheckning:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Överordnad:" @@ -1842,14 +1857,14 @@ msgid "Alt-id:" msgstr "Alt-id:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "End-of-life:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "End-of-life-rebase:" @@ -1858,149 +1873,150 @@ msgid "Subdirectories:" msgstr "Underkataloger:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Tillägg:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Ursprung:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Undersökvägar:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "underhålls inte" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "okänd" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Hämta inte, installera endast från lokal cache" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Distribuera inte, hämta bara ner till lokal cache" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Installera inte relaterade referenser" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Verifiera/installera ej exekveringsberoenden" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "Nåla inte automatiskt explicita installationer" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Använd inte statiska deltan" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" "Installera dessutom den SDK som används för att bygga de angivna referenserna" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" "Installera dessutom felsökningsinfo för de angivna referenserna och deras " "beroenden" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Anta att PLATS är en enfils .flatpak-bunt" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Anta att PLATS är en programbeskrivning av typen .flatpakref" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "Kontrollera buntsignaturer med GPG-nyckel från FIL (- för standard in)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Installera endast denna underkatalog" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Svara automatiskt ja på alla frågor" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Avinstallera först om redan installerad" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "Producera minimal utmatning och ställ inga frågor" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Uppdatera installation om den redan är installerad" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "Använd detta lokala förråd för sidoinläsning" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Buntfilnamn måste anges" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Fjärrbuntar stöds ej" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Filnamn eller uri måste anges" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "" "[PLATS/FJÄRRFÖRRÅD] [REF…] - Installera program eller exekveringsmiljöer" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "Minst en REF måste anges" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Söker efter matchningar…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, c-format msgid "No remote refs found for ‘%s’" msgstr "Inga fjärreferenser hittades för ”%s”" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Ogiltig gren %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Ingenting matchar %s i lokalt förråd för fjärrförrådet %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Ingenting matchar %s i fjärrförrådet %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Hoppar över: %s\n" @@ -2038,51 +2054,51 @@ msgstr "Lista installerade program" msgid "Arch to show" msgstr "Arkitektur att visa" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Lista alla referenser (inklusive locale/debug)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "Lista alla program som använder EXEKVERINGSMILJÖ" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Namn" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Visa namn" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Beskrivning" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Visa beskrivning" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "Program-ID" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Visa program-ID" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Visa version" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Exekveringsmiljö" @@ -2090,7 +2106,7 @@ msgstr "Exekveringsmiljö" msgid "Show the used runtime" msgstr "Visa exekveringsmiljön som används" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Visa ursprungsfjärrförrådet" @@ -2102,7 +2118,7 @@ msgstr "Visa installationen" msgid "Active commit" msgstr "Aktiv incheckning" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Visa aktiv incheckning" @@ -2114,35 +2130,35 @@ msgstr "Senaste incheckning" msgid "Show the latest commit" msgstr "Visa senaste incheckning" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Installerad storlek" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Visa installerad storlek" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Flaggor" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Visa flaggor" -#: app/flatpak-builtins-list.c:179 -#, fuzzy, c-format +#: app/flatpak-builtins-list.c:178 +#, c-format msgid "Unable to load details of %s: %s" -msgstr "Kunde inte läsa in sammanfattning från fjärrförrådet %s: %s" +msgstr "Kunde inte läsa in detaljer för %s: %s" -#: app/flatpak-builtins-list.c:189 +#: app/flatpak-builtins-list.c:188 #, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Kunde inte inspektera aktuell version för %s: %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - Lista installerade program och/eller exekveringsmiljöer" @@ -2154,7 +2170,7 @@ msgstr "Ark att göra aktuell för" msgid "APP BRANCH - Make branch of application current" msgstr "PROG GREN - Gör gren av program aktuell" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "PROG måste anges" @@ -2179,10 +2195,12 @@ msgstr "" "matchar mönster" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "Inga maskerade mönster\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Maskerade mönster:\n" @@ -2198,26 +2216,26 @@ msgstr "Visa befintliga åsidosättningar" msgid "[APP] - Override settings [for application]" msgstr "[PROGRAM] - Åsidosätt inställningar [för program]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABELL] [ID] - Lista rättigheter" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Tabell" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Objekt" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "Program" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Data" @@ -2276,10 +2294,12 @@ msgstr "" "matchar mönster" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "Inga nålade mönster\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "Nålade mönster:\n" @@ -2355,124 +2375,124 @@ msgstr "Visa huruvida programmet är i bakgrunden" msgid " - Enumerate running sandboxes" msgstr " - Räkna upp sandlådor som körs" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Gör ingenting om angivet fjärrförråd existerar" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "PLATS specificerar en konfigurationsfil, inte förrådsplatsen" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Inaktivera GPG-verifiering" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Markera fjärrförrådet som icke uppräkningsbart" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Markera fjärrförrådet med att det inte används för beroenden" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "Ställ in prioritet (standard är 1, högre är mer prioriterade)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORITET" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "Den namngivna delmängden att använda för detta fjärrförråd" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "DELMÄNGD" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Ett enkelt namn att använda för detta fjärrförråd" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "En enradskommentar för detta fjärrförråd" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "Ett helt stycke med beskrivning för detta fjärrförråd" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "URL för en webbplats för detta fjärrförråd" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "URL för en ikon för detta fjärrförråd" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Standardgren att använda för detta fjärrförråd" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Importera GPG-nyckel från FIL (- för standard in)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Ställ in sökväg till FIL för lokalt filter" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Inaktivera fjärrförrådet" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Namn på autentiserare" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Installera automatiskt autentiserare" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "Installera inte automatiskt autentiserare" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "Följ inte omdirigeringen som satts i sammanfattningsfilen" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "Det går inte att läsa in uri %s: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Det går inte att läsa in filen %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NAMN PLATS - Lägg till ett fjärrförråd" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "GPG-verifiering krävs om samlingar är aktiverat" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "Fjärrförrådet %s existerar redan" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Ogiltigt autentiserarnamn %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "Varning: Det gick inte att uppdatera extra metadata för ”%s”: %s\n" @@ -2500,61 +2520,61 @@ msgid "Can't remove remote '%s' with installed refs" msgstr "" "Det går inte att ta bort fjärrförrådet ”%s” med installerade referenser" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "Incheckning att visa information för" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Visa logg" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Visa överordnad" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Använd lokala cachar även om de är gamla" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "Lista endast referenser tillgängliga som sidoinläsningar" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " FJÄRRFÖRRÅD REF - visa information om ett program eller en exekveringsmiljö " "i ett fjärrförråd" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "FJÄRRFÖRRÅD och REF måste anges" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Hämta:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "Historik:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Incheckning:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Ämne:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Datum:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Varning: Incheckning %s har inga flatpak-metadata\n" @@ -2583,7 +2603,7 @@ msgstr "Visa URL:en" msgid "Show the collection ID" msgstr "Visa samlings-ID" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "Delmängd" @@ -2639,39 +2659,39 @@ msgstr "Visa ikon" msgid " - List remote repositories" msgstr " - Lista fjärrförråd" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Visa arkitekturer och grenar" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Visa endast exekveringsmiljöer" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Visa endast program" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Visa endast de där uppdateringar finns tillgängliga" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Begränsa till denna ark (* för alla)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Visa exekveringsmiljön" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Hämtningsstorlek" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Visa hämtningsstorlek" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr "" " [FJÄRRFÖRRÅD eller URI] - Visa tillgängliga exekveringsmiljöer och program" @@ -2801,224 +2821,231 @@ msgstr "Fel vid ominstallation av %s: %s\n" msgid "- Repair a flatpak installation" msgstr "- Reparera en flatpak-installation" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Tar bort ej distribuerad ref %s…\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Hoppar över ej distribuerad ref %s…\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d/%d] Verifierar %s…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "Torrkörning: " -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "Tar bort ref %s på grund av saknade objekt\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "Tar bort ref %s på grund av ogiltiga objekt\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "Tar bort ref %s på grund av %d\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "Kontrollerar fjärrförråd…\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "Fjärrförråd %s för ref %s saknas\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "Fjärrförråd %s för ref %s är inaktiverat\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "Rensa objekt\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "Tar bort .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "Ominstallerar referenser\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "Ominstallerar borttagna referenser\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "Under borttagning av appstream för %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "Under distribuering av appstream för %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Förrådsläge: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "Indexerade sammanfattningar: %s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "sant" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "falskt" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "Undersammanfattningar: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "Cacheversion: %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "Indexerade deltan: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Titel: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Kommentar: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Beskrivning: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Webbsida: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Ikon: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "Samlings-ID: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Standardgren: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "Omdirigerings-URL: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "Distributionssamlings-ID: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Namn på autentiserare: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "Autentiserarinstallation: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "GPG-nyckelhash: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "%zd sammanfattningsgrenar\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Installerad" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Hämta" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "Delmängder" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "Sammandrag" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "Historiklängd" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Skriv ut allmän information om förrådet" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Lista grenar i förrådet" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Skriv ut metadata för en gren" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Visa incheckningar för en gren" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "Skriv ut information om förrådsdelmängderna" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "Begränsa information till delmängder med detta prefix" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "PLATS - underhåll av förråd" @@ -3110,11 +3137,11 @@ msgstr "Använd SÖKVÄG istället för programmets /app" msgid "Use PATH instead of the runtime's /usr" msgstr "Använd SÖKVÄG istället för exekveringsmiljöns /usr" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "PROGRAM [ARGUMENT…] - Kör ett program" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "runtime/%s/%s/%s inte installerad" @@ -3131,15 +3158,15 @@ msgstr "Fjärrförråd" msgid "Show the remotes" msgstr "Visa fjärrförråden" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "TEXT - Sök i fjärrprogram/exekveringsmiljöer efter text" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "TEXT måste anges" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Inga träffar" @@ -3218,6 +3245,7 @@ msgstr "" "bort; se flatpak-pin(1):\n" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Inget oanvänt att avinstallera\n" @@ -3242,6 +3270,7 @@ msgid "Warning: %s is not installed\n" msgstr "Varning: %s är inte installerad\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "Inga av de angivna referenserna är installerade" @@ -3282,6 +3311,7 @@ msgid "With --commit, only one REF may be specified" msgstr "Med --commit får endast en REF anges" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Söker efter uppdateringar…\n" @@ -3291,28 +3321,29 @@ msgid "Unable to update %s: %s\n" msgstr "Kunde inte uppdatera %s: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Inget att göra.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "Fjärrförrådet ”%s” hittades i flera installationer:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Vilken vill du använda (0 för att avbryta)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "Inget fjärrförråd valt för att identifiera ”%s” som finns i flera " "installationer" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3321,13 +3352,13 @@ msgstr "" "Fjärrförrådet ”%s” hittades inte\n" "Tips: Använd flatpak remote-add för att lägga till ett fjärrförråd" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Fjärrförrådet ”%s” hittades inte i %s-installationen" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3336,141 +3367,131 @@ msgstr "" "Hittade ref ”%s” i fjärrförrådet ”%s” (%s).\n" "Använd denna ref?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "Ingen ref vald för att identifiera matchningar för ”%s”" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "Liknande referenser hittades för ”%s” i fjärrförrådet ”%s” (%s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "Hittade installerad ref ”%s” (%s). Stämmer detta?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "Alla ovanstående" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "Liknande installerade referenser hittades för ”%s”:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"Hittade en eller flera liknande referenser för ”%s” i fjärrförrådet ”%s” " -"(%s).\n" -"Använd detta fjärrförråd?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "Fjärrförråd hittades med referenser liknande ”%s”:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "Inget fjärrförråd valt för att identifiera matchningar för ”%s”" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "Fjärrförråd hittades med referenser liknande ”%s”:" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "Uppdaterar appstream-data för användarfjärrförrådet %s" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Uppdaterar appstream-data för fjärrförrådet %s" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Fel vid uppdatering" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "Fann inte fjärrförrådet ”%s”" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Tvetydigt suffix: ”%s”." #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "" "Möjliga värden är :s[tart], :m[iddle] (mitt), :e[nd] (slut) eller :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Ogiltigt suffix: ”%s”." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Tvetydig kolumn: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Okänd kolumn: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Tillgängliga kolumner:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Visa alla kolumner" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Visa tillgängliga kolumner" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" "Lägg till :s[tart], :m[iddle] (mitt), :e[nd] (slut) eller :f[ull] för att " "ändra elliptisering" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "Exekveringsmiljön som krävs för %s (%s) hittades i fjärrförrådet %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Vill du installera den?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "Exekveringsmiljön som krävs för %s (%s) hittades i fjärrförråd:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Vilka vill du installera (0 för att avbryta)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Konfigurerar %s som ett nytt fjärrförråd ”%s”\n" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3482,7 +3503,7 @@ msgstr "" "Vill du behålla fjärrförrådet för framtida installationer?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3493,126 +3514,126 @@ msgstr "" " %s\n" "Konfigurera detta som ett nytt fjärrförråd ”%s”" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Installerar…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Installerar %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Uppdaterar…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Uppdaterar %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Avinstallerar…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Avinstallerar %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Info: %s hoppades över" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, c-format msgid "Warning: %s%s%s already installed" msgstr "Varning: %s%s%s redan installerad" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, c-format msgid "Error: %s%s%s already installed" msgstr "Fel: %s%s%s redan installerad" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, c-format msgid "Warning: %s%s%s not installed" msgstr "Varning: %s%s%s inte installerad" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, c-format msgid "Error: %s%s%s not installed" msgstr "Fel: %s%s%s inte installerad" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "Varning: %s%s%s behöver en senare flatpak-version" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "Fel: %s%s%s behöver en senare flatpak-version" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" msgstr "Varning: Otillräckligt diskutrymme för att slutföra denna åtgärd" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" msgstr "Fel: Otillräckligt diskutrymme för att slutföra denna åtgärd" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, c-format msgid "Warning: %s" msgstr "Varning: %s" -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, c-format msgid "Error: %s" msgstr "Fel: %s" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, c-format msgid "Failed to install %s%s%s: " msgstr "Misslyckades med att installera %s%s%s: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, c-format msgid "Failed to update %s%s%s: " msgstr "Misslyckades med att uppdatera %s%s%s: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Misslyckades med att installera bunten %s%s%s: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Misslyckades med att avinstallera %s%s%s: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "Autentisering krävs för fjärrförrådet ”%s”\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Öppna webbläsare?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "Inloggning krävde fjärrförrådet %s (rike %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Lösenord" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, c-format msgid "" "\n" @@ -3623,7 +3644,7 @@ msgstr "" "Info: (nålad) exekveringsmiljö %s%s%s gren %s%s%s har nått slutet på sin " "livstid, till förmån för %s%s%s gren %s%s%s\n" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, c-format msgid "" "\n" @@ -3634,7 +3655,7 @@ msgstr "" "Info: exekveringsmiljö %s%s%s gren %s%s%s har nått slutet på sin livstid, " "till förmån för %s%s%s gren %s%s%s\n" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, c-format msgid "" "\n" @@ -3646,7 +3667,7 @@ msgstr "" "för %s%s%s gren %s%s%s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, c-format msgid "" "\n" @@ -3656,7 +3677,7 @@ msgstr "" "Info: (nålad) exekveringsmiljö %s%s%s gren %s%s%s har nått slutet på sin " "livstid, med anledning:\n" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, c-format msgid "" "\n" @@ -3666,7 +3687,7 @@ msgstr "" "Info: exekveringsmiljö %s%s%s gren %s%s%s har nått slutet på sin livstid, " "med anledning:\n" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, c-format msgid "" "\n" @@ -3676,90 +3697,88 @@ msgstr "" "Info: program %s%s%s gren %s%s%s har nått slutet på sin livstid, med " "anledning:\n" -#: app/flatpak-cli-transaction.c:947 +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" msgstr "Info: program använder detta tillägg:\n" -#: app/flatpak-cli-transaction.c:949 +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" msgstr "Info: program använder denna exekveringsmiljö:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "Ersätt?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "Uppdaterar till ombaserad version\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "Misslyckades med att ombasera %s till %s: " -#: app/flatpak-cli-transaction.c:1009 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Misslyckades med att avinstallera %s för ombasering till %s: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, c-format msgid "New %s%s%s permissions:" msgstr "Nya rättigheter för %s%s%s:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, c-format msgid "%s%s%s permissions:" msgstr "Rättigheter för %s%s%s:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Varning: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Åtg" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "partiell" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Fortsätt med dessa ändringar till användarinstallationen?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Fortsätt med dessa ändringar till systeminstallationen?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Fortsätt med dessa ändringar till %s?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Ändringar slutförda." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Avinstallation slutförd." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Installation slutförd." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Uppdateringar slutförda." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Det fanns ett eller flera fel" @@ -4068,7 +4087,7 @@ msgstr "" "XDG_DATA_DIRS, så program som installerats av Flatpak kanske inte dyker upp " "på ditt skrivbord förrän sessionen har startats om." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." @@ -4077,29 +4096,29 @@ msgstr "" "användarinstallationen, eller använd ett root-skal för att köra på root-" "användarens installation." -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" "Flera installationer angavs för ett kommando som är avsett för en " "installation" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "Se ”%s --help”" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "”%s” är inte ett flatpak-kommando. Menade du ”%s%s”?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "”%s” är inte ett flatpak-kommando" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Inget kommando angivet" @@ -4162,16 +4181,16 @@ msgstr "Varning: Misslyckades med att avinstallera %s: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Fel: Misslyckades med att avinstallera %s: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s redan installerad" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s inte installerad" @@ -4200,52 +4219,48 @@ msgstr "Info: %s har nått slutet på sin livstid, med anledning: %s\n" msgid "Failed to rebase %s to %s: %s\n" msgstr "Misslyckades med att ombasera %s till %s: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Misslyckades med att avinstallera %s för ombasering till %s: %s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "Ingen autentiserare konfigurerad för fjärrförrådet ”%s”" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Okänd delningstyp %s, giltiga typer är: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Okänd policytyp %s, giltiga typer är: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Ogiltigt dbusnamn %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Okänd uttagstyp %s, giltiga typer är: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Okänd enhetstyp %s, giltiga typer är: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Okänd funktionstyp %s, giltiga typer är: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "Filsystemsplatsen ”%s” innehåller ”..”" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" @@ -4253,7 +4268,7 @@ msgstr "" "liknande resultat" # host and home are hardcoded -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4262,617 +4277,648 @@ msgstr "" "Okänd filsystemsplats %s, giltiga platser är: host, host-os, host-etc, home, " "xdg-*[/…], ~/kat, /kat" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Ogiltigt miljöformat %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "Miljövariabeln får inte innehålla '=': %s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" "Argument till --add-policy måste vara på formen UNDERSYSTEM.NYCKEL=VÄRDE" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "Värden till --add-policy får inte starta med ”!”" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" "Argument till --remove-policy måste vara på formen UNDERSYSTEM.NYCKEL=VÄRDE" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "Värden till --remove-policy får inte starta med ”!”" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Dela med värd" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "DELNING" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Avsluta delning med värd" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Exponera uttag för program" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "UTTAG" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Exponera inte detta uttag för program" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Exponera enhet för program" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "ENHET" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Exponera inte enhet för program" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Tillåt funktion" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "FUNKTION" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Tillåt inte funktion" # :ro can't be translated -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "Exponera filsystem för program (:ro för skrivskyddat)" # :ro can't be translated -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "FILSYSTEM[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Exponera inte filsystem för program" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "FILSYSTEM" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Ställ in miljövariabel" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VAR=VÄRDE" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "Läs miljövariabler i formatet env -0 från FH" # Filhandtag -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "FH" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "Ta bort variabel från miljö" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "VAR" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Tillåt program att äga namn på sessionsbussen" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "DBUSNAMN" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Tillåt program att prata med namn på sessionsbussen" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "Tillåt inte program att prata med namn på sessionsbussen" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Tillåt program att äga namn på systembussen" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Tillåt program att prata med namn på systembussen" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "Tillåt inte program att prata med namn på systembussen" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Tillåt program att äga namn på systembussen" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Lägg till alternativ för generell policy" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "UNDERSYSTEM.NYCKEL=VÄRDE" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Ta bort alternativet för generell policy" -# https://github.com/flatpak/flatpak/commit/d5909171bbd7f0157066e2b73007d326fa74df88 -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "Gör undersökväg i hemkatalog beständig" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "FILNAMN" +# https://github.com/flatpak/flatpak/commit/d5909171bbd7f0157066e2b73007d326fa74df88 +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Gör undersökväg i hemkatalog beständig" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Kräv inte en körande session (inget cgroups-skapande)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" -msgstr "" +msgstr "Ersätter inte ”%s” med tmpfs: %s" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" -msgstr "" +msgstr "Delar inte ”%s” med sandlåda: %s" #. Even if the error is one that we would normally silence, like #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" -msgstr "" +msgstr "Tillåter inte åtkomst till hemkatalog: %s" -#: common/flatpak-context.c:2828 -#, fuzzy, c-format +#: common/flatpak-context.c:3150 +#, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" -msgstr "Kunde inte skapa temporär katalog i %s" +msgstr "Kunde inte tillhandahålla en temporär hemkatalog i sandlådan: %s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "Konfigurerat samlings-ID ”%s” inte i sammanfattningsfil" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Kunde inte läsa in sammanfattning från fjärrförrådet %s: %s" # sebras: how to translate in here? -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "Ingen sådan ref ”%s” i fjärrförrådet %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 -#, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 +#, fuzzy, c-format +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "" "Ingen post för %s i flatpak-sammanfattningscache för fjärrförrådet ”%s” " -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "" "Ingen sammanfattning eller Flatpak-cache tillgänglig för fjärrförrådet %s" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "Ingen post för %s i sammanfattningscache för fjärrförrådet ”%s” " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Saknar xa.data i sammanfattning för fjärrförrådet %s" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Sammanfattningsversion %d som inte stöds för fjärrförrådet %s" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "OCI-index för fjärrförråd har ingen register-uri" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Det gick inte att hitta ref %s i fjärrförrådet %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "Avbilden är inte ett manifest" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "Incheckning har ingen begärd ref ”%s” i refbindningsmetadata" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "Konfigurerat samlings-ID ”%s” inte i bindningsmetadata" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" "Det gick inte att hitta senaste kontrollsumma för ref %s i fjärrförrådet %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "" "Ingen post för %s i gles flatpak-sammanfattningscache för fjärrförrådet %s" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "Incheckningsmetadata för %s matchar inte förväntade metadata" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "Kunde inte ansluta till systembussen" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "Användarinstallation" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "Systeminstallation (%s)" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Inga åsidosättningar funna för %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "%s (incheckning %s) inte installerad" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "Fel vid tolkning av systemets flatpakrepo-fil för %s: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Medan förråd %s öppnas: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "Konfigurationsnyckeln %s har inte satts" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "Inget aktuellt %s-mönster matchar %s" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "Ingen appstream-incheckning att distribuera" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" "Det går inte att hämta från ej betrott fjärrförråd som ej är gpg-verifierat" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" "Extra data stöds inte för lokala systeminstallationer som ej verifierats med " "gpg" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Ogiltig kontrollsumma för extra data-uri %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Tomt namn för extra data-uri %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Extra data-uri %s som ej stöds" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Misslyckades med att läsa lokala extra data %s: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Fel storlek för extra data %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "Medan %s hämtas: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Fel storlek för extra data %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Ogiltig kontrollsumma för extra data %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s incheckning %s redan installerad" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "Medan %s hämtas från fjärrförrådet %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "GPG-signaturer hittades, men ingen är i den betrodda nyckelringen" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "Incheckning för ”%s” har ingen refbindning" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "Incheckning för ”%s” är inte bland förväntade bundna referenser: %s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "Endast program kan göras aktuella" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Inte tillräckligt med minne" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Misslyckades med att läsa från exporterad fil" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Fel vid läsning av xml-fil för mimetyp" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Ogiltig xml-fil för mimetyp" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "D-Bus-tjänstfilen ”%s” har fel namn" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "Ogiltigt Exec-argument %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "Under hämtning av frånkopplade metadata: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "Extra data saknas i frånkopplade metadata" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "Under tiden extrakatalog skapas: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Ogiltig kontrollsumma för extra data" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Fel storlek för extra data" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "Under skrivning av extra data-filen ”%s”: " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "Extra data %s saknas i frånkopplade metadata" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "misslyckades med skriptet apply_extra, avslutningsstatus %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" "Installation av %s tillåts inte av policyn som har satts av din administratör" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "Under upplösningsförsök för ref %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s är inte tillgängligt" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Det går inte att skapa distributionskatalog" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Misslyckades läsa incheckning %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "Under utcheckningsförsök av %s i %s: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "Under utcheckningsförsök av metadataundersökväg: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "Under utcheckningsförsök av undersökvägen ”%s”: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Under försök att ta bort befintlig extra katalog: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Under försök att tillämpa extra data: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Ogiltig incheckningsref %s: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "Distribuerad ref %s matchar inte incheckning (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "Distribuerad referens %s-gren matchar inte incheckning (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s gren %s redan installerad" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "Det gick inte att avmontera revokefs-fuse-filsystem på %s: " -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Denna version av %s är redan installerad" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "Kan inte ändra fjärrförråd under buntinstallering" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "" "Det går inte att uppdatera till en specifik incheckning utan root-rättigheter" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "Det går inte att ta bort %s, det behövs för: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s gren %s är inte installerad" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "%s incheckning %s inte installerad" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "Rensning av förråd misslyckades: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "Misslyckades med att läsa in filtret ”%s”" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "Misslyckades med att tolka filtret ”%s”" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "Misslyckades med att skriva sammanfattningscache: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "Ingen oci-sammanfattning cachad för fjärrförrådet ”%s”" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "Ingen cachad sammanfattning för fjärrförrådet ”%s”" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "Ogiltig kontrollsumma för indexerad sammanfattning %s lästes från %s" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " @@ -4881,246 +4927,275 @@ msgstr "" "Fjärrlista för %s inte tillgänglig; servern har ingen sammanfattningsfil. " "Kontrollera att URL:en som skickades till remote-add var giltig." -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "" "Ogiltig kontrollsumma för indexerad sammanfattning %s för fjärrförrådet ”%s”" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "Flera grenar tillgängliga för %s, du måste ange en av: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Ingenting matchar %s" # sebras: how to translate in here? -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Det går inte att hitta ref %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Fel vid sökning av fjärrförråd %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Fel vid sökning i lokalt förråd: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s inte installerad" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Det gick inte att hitta installationen %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "Ogiltigt filformat, ingen %s-grupp" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Ogiltig version %s, endast 1 stöds" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "Ogiltigt filformat, ingen %s angiven" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "Ogiltigt filformat, gpg-nyckel ogiltig" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "Samlings-ID kräver att GPG-nyckel tillhandahålls" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Exekveringsmiljö %s, gren %s är redan installerad" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Program %s, gren %s är redan installerad" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" "Det går inte att ta bort fjärrförrådet ”%s” med installerad ref %s " "(åtminstone)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Ogiltigt tecken ”/” i namn på fjärrförråd: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "Ingen konfiguration angavs för fjärrförrådet %s" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Hoppar över borttagning av spegelref (%s, %s)…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" -msgstr "" +msgstr "En absolut sökväg krävs" -#: common/flatpak-exports.c:923 -#, fuzzy, c-format +#: common/flatpak-exports.c:933 +#, c-format msgid "Unable to open path \"%s\": %s" -msgstr "Kunde inte uppdatera %s: %s\n" +msgstr "Kunde inte öppna sökvägen ”%s”: %s" -#: common/flatpak-exports.c:930 -#, fuzzy, c-format +#: common/flatpak-exports.c:940 +#, c-format msgid "Unable to get file type of \"%s\": %s" -msgstr "Kunde inte skapa filen %s" +msgstr "Kunde inte erhålla filtypen för ”%s”: %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" -msgstr "" +msgstr "Filen ”%s” har typen 0o%o som inte stöds" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" -msgstr "" +msgstr "Kunde inte hämta filsystemsinformation för ”%s”: %s" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" -msgstr "" +msgstr "Ignorerar blockerande autofs-sökväg ”%s”" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" -msgstr "" +msgstr "Sökvägen ”%s” är reserverad av Flatpak" -#: common/flatpak-exports.c:1051 -#, fuzzy, c-format +#: common/flatpak-exports.c:1061 +#, c-format msgid "Unable to resolve symbolic link \"%s\": %s" -msgstr "Kunde inte uppdatera symbolisk länk %s/%s" +msgstr "Kunde inte slå upp symbolisk länk ”%s”: %s" + +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "Tom sträng är inte ett tal" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "”%s” är inte ett teckenlöst tal" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "Talet ”%s” är utanför gränserna [%s, %s]" -#: common/flatpak-installation.c:831 +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "Ref %s inte installerad" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "Program %s inte installerat" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "Fjärrförrådet ”%s” existerar redan" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "Som begärt hämtades bara %s, men installerades inte" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "Kunde inte skapa katalogen %s" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "Kunde inte låsa %s" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "Kunde inte öppna katalogen %s" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "Kunde inte skapa temporär katalog i %s" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "Kunde inte skapa filen %s" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Kunde inte uppdatera symbolisk länk %s/%s" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "Endast Bearer-autentisering stöds" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "Endast rike i autentiseringsbegäran" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "Ogiltigt rike i autentiseringsbegäran" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "Auktorisering misslyckades: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Auktorisering misslyckades" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "Oväntad svarsstatus %d då token begärdes: %s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "Ogiltigt svar på autentiseringsbegäran" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "Ogiltigt deltafilformat" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "Ingen gpg-nyckel hittades med ID %s (hemkat: %s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Kunde inte slå upp nyckel-ID %s: %d" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "Fel vid signering av incheckning: %d" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Ogiltig OCI-avbildskonfiguration" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Fel kontrollsumma för lager, förväntade %s, var %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "Ingen ref angiven för OCI-avbild %s" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Fel ref (%s) angiven för OCI-avbild %s, förväntade %s" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5141,316 +5216,369 @@ msgstr "Hämtar extra data: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Hämtar filer: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Namn kan inte vara tomt" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Namn kan inte vara längre än 255 tecken" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Namn kan inte börja med en punkt" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Namn kan inte börja med %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Namn kan inte sluta med en punkt" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Endast det sista namnsegmentet kan innehålla -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Namnsegment kan inte börja med %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Namn kan inte innehålla %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "Namn måste innehålla minst 2 punkter" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "Ark kan inte vara tom" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "Ark kan inte innehålla %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Gren kan inte vara tom" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Gren kan inte börja med %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Gren kan inte innehålla %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "Ref för lång" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "Ogiltigt namn på fjärrförråd" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s är inte ett program eller en exekveringsmiljö" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Fel antal komponenter i %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "Ogiltigt namn %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "Ogiltig ark: %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Ogiltigt namn %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "Ogiltig ark: %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "Ogiltig gren: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "Fel antal komponenter i partiell ref %s" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr " utvecklingsplattform" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr " plattform" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr " programbas" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr " felsökningssymboler" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr " källkod" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " översättningar" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr " dokumentation" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "Ogiltigt id %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Ogiltigt namn på fjärrförråd: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "Ingen URL angiven" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "GPG-verifiering måste vara aktiverat då ett samlings-ID har satts" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Misslyckades med att öppna programinfo-fil" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Inga extra data-källor" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Kunde inte skapa sync-rör" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "Ogiltig %s: Saknar grupp ”%s”" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Misslyckades med att synkronisera med dbus-proxy" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "Ogiltig %s: Saknar nyckel ”%s”" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Ogiltig gpg-nyckel" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Fel vid kopiering av 64x64-ikon för komponent %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Fel vid kopiering av 128x128-ikon för komponent %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s har nått slutet på sin livstid, ignorerar för appstream" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Inga appstream-data för %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Ogiltig bunt, ingen ref i metadata" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "Samlingen ”%s” för bunt matchar inte samlingen ”%s” för fjärrförråd" -#: common/flatpak-run.c:2207 +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Metadata i huvud och program är inkonsekventa" + +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "Ingen systemd-användarsession tillgänglig, cgroups inte tillgängligt" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "Kunde inte allokera instans-ID" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Misslyckades med att öppna flatpak-info-fil: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Misslyckades med att öppna bwrapinfo.json-fil: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "Misslyckades med att skriva till filhandtag för instans-ID: %s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "Initiering av seccomp misslyckades" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Misslyckades med att lägga till arkitektur till seccomp-filter: %s" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "" "Misslyckades med att lägga till multiarch-arkitektur till seccomp-filter: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, c-format msgid "Failed to block syscall %d: %s" msgstr "Misslyckades med att blockera systemanrop %d: %s" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, c-format msgid "Failed to export bpf: %s" msgstr "Misslyckades med att exportera bpf: %s" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "Misslyckades med att öppna ”%s”" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "misslyckades med ldconfig, avslutningsstatus %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "Det går inte att öppna genererad ld.so.cache" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" "Körning av %s tillåts inte av policyn som har satts av din administratör" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" -"”flatpak run” är inte avsett att köras som ”sudo flatpak run”, använd ”sudo -" -"i” eller ”su -l” istället och anropa ”flatpak run” inifrån det nya skalet." +"”flatpak run” är inte avsett att köras som ”sudo flatpak run”, använd ”sudo " +"-i” eller ”su -l” istället och anropa ”flatpak run” inifrån det nya skalet." -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "Misslyckades att migrera från %s: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "" "Misslyckades med att migrera gammal programdatakatalog %s till nytt namn %s: " "%s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Misslyckades med att skapa symbolisk länk vid migrering av %s: %s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Misslyckades med att öppna programinfo-fil" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Kunde inte skapa sync-rör" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Misslyckades med att synkronisera med dbus-proxy" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Varning: Problem vid sökning efter relaterade referenser: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "Programmet %s kräver exekveringsmiljön %s som inte hittades" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "Programmet %s kräver exekveringsmiljön %s som inte är installerad" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "Det går inte att avinstallera %s som behövs av %s" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Fjärrförråd %s inaktiverat, ignorerar uppdatering för %s" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s är redan installerad" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s är redan installerad från fjärrförrådet %s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "Ogiltig .flatpakref: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "Fel vid uppdatering av fjärrmetadata för ”%s”: %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " @@ -5459,54 +5587,54 @@ msgstr "" "Varning: Behandlar fjärrhämtningsfel som icke ödesdigert då %s redan är " "installerad: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "Ingen autentiserare installerad för fjärrförrådet ”%s”" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "Misslyckades med att erhålla token för ref: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "Misslyckades med att erhålla token för ref" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "Ref %s från %s matchar mer än en transaktionsåtgärd" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" msgstr "alla fjärrförråd" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "Ingen transaktionsåtgärd hittades för ref %s från %s" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "Flatpakrepo-URL %s är inte file, HTTP eller HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "Det går inte att läsa in beroende fil %s: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "Ogiltig .flatpakrepo: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "Transaktion redan utförd" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." @@ -5514,16 +5642,16 @@ msgstr "" "Vägrar att operera på en användarinstallation som root! Detta kan leda till " "felaktigt filägarskap och rättighetsfel." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Avbröts av användare" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "Hoppar över %s på grund av tidigare fel" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "Avbröts på grund av fel (%s)" @@ -5570,137 +5698,113 @@ msgstr "Port ”%.*s” i URI är utanför intervallet" msgid "URI is not absolute, and no base URI was provided" msgstr "URI är inte absolut, och ingen bas-URI angavs" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "Matchningen kan inte matcha program" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" +msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "Tom matchning" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "För många segment i matchning" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "Ogiltigt id %s: %s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" -msgstr "Ogiltigt matchningstecken ”%c”" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" -msgstr "Saknar matchning på rad %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" -msgstr "Eftersläpande text på rad %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "på rad %d" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "Oväntat ord ”%s” på rad %d" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "Ogiltig %s: Saknar grupp ”%s”" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "Ogiltig %s: Saknar nyckel ”%s”" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Ogiltig gpg-nyckel" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Inga extra data-källor" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Fel vid kopiering av 64x64-ikon för komponent %s: %s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Fel vid kopiering av 128x128-ikon för komponent %s: %s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s har nått slutet på sin livstid, ignorerar för appstream" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "Matchningen kan inte matcha program" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Inga appstream-data för %s: %s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Tom matchning" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "Ogiltig bunt, ingen ref i metadata" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "För många segment i matchning" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "Samlingen ”%s” för bunt matchar inte samlingen ”%s” för fjärrförråd" - -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "Metadata i huvud och program är inkonsekventa" +msgid "Invalid glob character '%c'" +msgstr "Ogiltigt matchningstecken ”%c”" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "Ogiltig OCI-avbildskonfiguration" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "Saknar matchning på rad %d" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "Fel kontrollsumma för lager, förväntade %s, var %s" +msgid "Trailing text on line %d" +msgstr "Eftersläpande text på rad %d" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "Ingen ref angiven för OCI-avbild %s" +msgid "on line %d" +msgstr "på rad %d" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "Fel ref (%s) angiven för OCI-avbild %s, förväntade %s" +msgid "Unexpected word '%s' on line %d" +msgstr "Oväntat ord ”%s” på rad %d" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "Ogiltigt argument %s för require-flatpak" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s behöver en senare flatpak-version (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "Tom sträng är inte ett tal" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "”%s” är inte ett teckenlöst tal" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "Talet ”%s” är utanför gränserna [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "Inte ett oci-fjärrförråd, saknar summary.xa.oci-repository" @@ -5713,41 +5817,45 @@ msgstr "Inte ett OCI-fjärrförråd" msgid "Invalid token" msgstr "Ogiltig token" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "Inget portalstöd hittades" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Neka" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Uppdatera" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "Uppdatera %s?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "Programmet vill uppdatera sig själv." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" "Uppdateringsåtkomst kan ändras när som helst från sekretessinställningarna." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "Programuppdatering inte tillåten" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "Självuppdatering stöds inte, nya versionen kräver nya rättigheter" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "Uppdateringen avslutades oväntat" @@ -5968,3 +6076,28 @@ msgid "" msgstr "" "Autentisering krävs för att installera program som begränsas av din policy " "för föräldrakontroller" + +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "Hittade en eller flera liknande referenser för ”%s” i fjärrförrådet ”%s” " +#~ "(%s).\n" +#~ "Använd detta fjärrförråd?" + +#, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "Ingen post för %s i sammanfattningscache för fjärrförrådet ”%s” " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Misslyckades med att avinstallera %s för ombasering till %s: " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Misslyckades med att avinstallera %s för ombasering till %s: %s\n" + +#, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Kunde inte öppna katalogen %s" diff --git a/po/tr.gmo b/po/tr.gmo deleted file mode 100644 index 1f116f396fe2ebd496a5a84bc97a1b6cb48f6924..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 106371 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 X#F9mab)0hYTpUC4(wH<0Ys2_|oPuTT diff --git a/po/tr.po b/po/tr.po index 174efe5..57313c9 100644 --- a/po/tr.po +++ b/po/tr.po @@ -1,182 +1,182 @@ # Turkish translation for flatpak. -# Copyright (C) 2017-2022 flatpak's COPYRIGHT HOLDER +# Copyright (C) 2017-2023 flatpak's COPYRIGHT HOLDER # This file is distributed under the same license as the flatpak package. # # Çağatay Yiğit Şahin , 2017. # Muhammet Kara , 2017. # Serdar Sağlam , 2019. -# Sabri Ünal , 2022. +# Sabri Ünal , 2022, 2023. # msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" -"PO-Revision-Date: 2022-06-20 23:22+0300\n" -"Last-Translator: Sabri Ünal \n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2024-04-01 16:09+0300\n" +"Last-Translator: Sabri Ünal \n" "Language-Team: Türkçe \n" "Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Poedit 3.1\n" +"X-Generator: Poedit 3.4.2\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Uygulama yerine çalışma ortamını dışa aktar" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Paketleneceği mimari" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "MİMARİ" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Depo için url" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Çalışma ortamı flatpakrepo dosyası için url" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "DOSYA'dan GPG anahtarı ekle (stdin için -)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "DOSYA" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "OCI görüntüsünün imzalanacağı GPG Anahtar Kimliği" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "ANAHTAR-KİMLİK" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "ANAHTAR-KİMLİK" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "Anahtarlık aramak için GPG Evdizini" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "EVDİZİN" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" -msgstr "OSTree, adresinden bir delta paketi oluşturmayı taahhüt et" +msgstr "Delta paketi oluşturmak için OSTree işlemesi" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" -msgstr "DEĞİŞİKLİK" +msgstr "İŞLEME" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Flatpak paketi yerine oci görüntüsü dışa aktar" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" msgstr "KONUM DOSYAADI AD [DAL] - Yerel depodan tek dosya paketi oluştur" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "KONUM, DOSYAADI ve AD belirtilmelidir" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Çok fazla argüman" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "'%s' geçerli bir depo değil" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "'%s' geçerli bir depo değil: " -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "'%s' geçerli bir ad değil: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "'%s' geçerli bir dal adı değil: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -184,7 +184,7 @@ msgstr "'%s' geçerli bir dosya adı değil" #: app/flatpak-builtins-build.c:49 msgid "Use Platform runtime rather than Sdk" -msgstr "Sdk'dansa Platform çalışma ortamını kullan" +msgstr "Sdkʼdense Platform çalışma ortamını kullan" #: app/flatpak-builtins-build.c:50 msgid "Make destination readonly" @@ -209,9 +209,9 @@ msgstr "DİZİN" #: app/flatpak-builtins-build.c:53 msgid "Where to look for custom sdk dir (defaults to 'usr')" -msgstr "Özel sdk dizini için bakılacak yer ('usr'ye öntanımlar)" +msgstr "Özel sdk dizini için bakılacak yer ('usr' öntanımlıdır)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Üst veri için alternatif dosya kullan" @@ -225,110 +225,111 @@ msgstr "İnşa için uygulama evdizin dizinini dışa aktar" #: app/flatpak-builtins-build.c:57 app/flatpak-builtins-run.c:73 msgid "Log session bus calls" -msgstr "Oturum veriyolu çağrılarını günlükle" +msgstr "Oturum veri yolu çağrılarını günlükle" #: app/flatpak-builtins-build.c:58 app/flatpak-builtins-run.c:74 msgid "Log system bus calls" -msgstr "Sistem veriyolu çağrılarını günlükle" +msgstr "Sistem veri yolu çağrılarını günlükle" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "DİZİN [KOMUT [ARGÜMAN…]] - Dizinde inşa et" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "DİZİN belirtilmelidir" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "İnşa dizini %s ilklenmedi, flatpak build-init'i kullanın" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "üst veri geçersiz, uygulama veya çalışma ortamı değil" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "%s'e uyan Uzantı noktası %s'te yok" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Bağlama noktası seçeneği '%s'te eksik '='" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Uygulama başlatılamadı" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Kaynak depo dizini" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "KAYNAK-DEPO" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Kaynak depo referansı" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "KAYNAK-REFERANS" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Tek satır konu" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "KONU" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Tam açıklama" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "GÖVDE" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Appstream dalını güncelle" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Appstream dalını güncelle" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Özeti güncelleme" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" -msgstr "Değişikliği imzalamak için GPG Anahtar Kimliği" +msgstr "İşlemeyi imzalamak için GPG Anahtar Kimliği" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "İnşayı end-of-life olarak işaretle" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "NEDEN" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -336,370 +337,374 @@ msgstr "" "ESKİKİMLİK ön ekiyle eşleşen referansları, verilen YENİKİMLİK ile " "değiştirilmek üzere end-of-life olarak işaretle" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" -msgstr "ESKİKİMLİK=YENİKİMLIK" +msgstr "ESKİKİMLİK=YENİKİMLİK" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" -msgstr "Bu değişikliği kurmak için gereken jeton türünü belirle" +msgstr "Bu işlemeyi kurmak için gereken jeton türünü belirle" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "DEĞER" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" -msgstr "Değişiklik zaman damgasını geçeriz kıl (şimdiki zaman için NOW)" +msgstr "İşleme zaman damgasını geçeriz kıl (şimdiki zaman için NOW)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "ZAMANDAMGASI" # Burada index için normalde Dizin çevirisi kullanabiliyorduk, Directory için de Dizin çevirisini kullandığımızdan karışmasın diye fihrist olarak çevirdim. Sabri. -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "Özet fihristi oluşturma" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "" -"HEDEF-DEPO [HEDEF-REFERANS]… - Varolan değişikliklere dayalı yeni bir " -"değişiklik yap" +"HEDEF-DEPO [HEDEF-REFERANS]… - Var olan işlemelere dayalı yeni işleme yap" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "HEDEF-DEPO belirtilmelidir" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "--src-repo belirtilmemişse sadece tek bir hedef referans belirtilmelidir" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "--src-ref belirtilmişse, sadece tek bir hedef referans belirtilmelidir" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" -msgstr "--src-repo ya da --src-ref belirtilmelidir." +msgstr "--src-repo ya da --src-ref belirtilmelidir" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" "Geçersiz argüman kullanım biçimi --end-of-life-rebase=ESKİKİMLİK=YENİKİMLİK" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "--end-of-life-rebase içinde geçersiz %s adı" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "'%s' ayrıştırılamadı" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" -msgstr "Kısmi kaynak değişikliğinden değişiklik yapılamaz" +msgstr "Kısmi kaynak işlemesinden işleme yapılamaz" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: değişiklik yok\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Dışa aktarılacağı mimari (makinayla uyumlu olmalıdır)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" -msgstr "Çalışma ortamını (/usr) değiştir, /app'i değil" +msgstr "Çalışma ortamını (/usr) işle, /app'i değil" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Dosyalar için alternatif dizin kullan" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "ALTDİZİN" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Hariç tutulacak dosyalar" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "DESEN" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Dahil edilecek hariç tutulmuş dosyalar" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "" "İnşayı, verilen kimlikle değiştirilmek üzere end-of-life olarak işaretle" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" -msgstr "KİMLIK" +msgstr "KİMLİK" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" -msgstr "Değişikliğin zaman damgasını geçersiz kıl" +msgstr "İşleme zaman damgasını geçersiz kıl" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "Koleksiyon Kimliği" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "UYARI: desktop-file-validate çalıştırılırken hata: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "UYARI: desktop-file-validate'den okunurken hata: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "UYARI: %s masaüstü dosyası doğrulanamadı: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "UYARI: %s içinde Exec anahtarı bulunamadı: %s\n" # Binary için İkili dosya çevirisi kullanıldı -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "UYARI: %s içinde Exec satırı için ikili dosya bulunamadı: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "UYARI: Simge, %s içindeki uygulama kimliğiyle uyuşmuyor: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" "UYARI: Simge, Masaüstü dosyasında başvurulmuş ancak dışa aktarılmadı: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Geçersiz uri türü %s, sadece http/https destekli" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "%s'te temel ad bulunamadı, bir ad belirtin" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "Ek veri adında yan çizgi kullanılamaz" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" -msgstr "sha256 sağlama toplamı için geçersiz format: '%s'" +msgstr "Sha256 sağlama toplamı için geçersiz format: '%s'" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Sıfır ek veri boyutu desteklenmemektedir" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "KONUM DİZİN [DAL] - İnşa dizininden yeni depo oluştur" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "KONUM ve DİZİN belirtilmelidir" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "‘%s’ geçerli koleksiyon kimliği değil: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "Üst veride ad belirtilmemiş" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" -msgstr "Değişiklik: %s\n" +msgstr "İşleme: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Toplam Üst Veri: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Yazılan Üst Veri: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Toplam İçerik: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Yazılan İçerik: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Yazılan İçerik Baytları:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Ayarlanacak komut" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "KOMUT" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Gerektirilecek Flatpak sürümü" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "BÜYÜK.KÜÇÜK.MİNİK" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Dışa aktarmaları işleme" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Ek veri bilgisi" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Uzantı noktası bilgisi ekle" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "AD=DEĞİŞKEN[=DEĞER]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Uzantı noktası bilgisi kaldır" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "AD" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Uzantı önceliğini belirle (sadece uzantılar için)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "DEĞER" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" -msgstr "Uygulama için kullanılan SDK'yı değiştir" +msgstr "Uygulama için kullanılan SDKʼyi değiştir" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Uygulama için kullanılan çalışma ortamını değiştir" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "ÇALIŞMAORTAMI" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Genel üst veri seçeneğini belirle" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GRUP=ANAHTAR[=DEĞER]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Çalışma ortamından izinleri devralma" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "%s dışa aktarılamıyor, yanlış uzantı\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "%s dışa aktarılamıyor, izin verilmeyen dışa aktarma dosya adı\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "%s dışa aktarılıyor\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Birden çok yürütülebilir dosya bulundu\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "%s komut olarak kullanılıyor\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Yürütülebilir bulunamadı\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Geçersiz --require-version argümanı: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" -msgstr "--extra-data argümanı %s'te çok az öge " +msgstr "--extra-data argümanı %s'te çok az öge" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -707,7 +712,7 @@ msgid "" msgstr "" "--metadata argümanı %s'te çok az öge, format GRUP=ANAHTAR[=DEĞER] olmalıdır" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -716,62 +721,63 @@ msgid "" msgstr "" "--extension argümanı %s'te çok az öge, format AD=DEĞİŞKEN[=DEĞER] olmalıdır" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "Geçersiz uzantı adı %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "DİZİN - İnşa dizinini sonlandır" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "İnşa dizini %s ilklendirilmemiş" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "İnşa dizini %s zaten sonlandırılmış" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Lütfen dışa aktarılmış dosyaları ve üst veriyi gözden geçirin\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "İçe aktarılan paket için kullanılan referansı geçersiz kıl" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REFERANS" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Flatpak paketi yerine oci görüntüsü içe aktar" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Referans '%s' sicilde bulunamadı" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "Sicilde birden fazla görüntü, --ref'le bir referans belirtin" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "%s içe aktarılıyor (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "KONUM DOSYAADI - Dosya paketini yerel depoya içe aktar" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "KONUM ve DOSYAADI belirtilmelidir" @@ -818,7 +824,7 @@ msgstr "UZANTI_ETİKETİ" #: app/flatpak-builtins-build-init.c:59 msgid "Initialize /usr with a writable copy of the sdk" -msgstr "/usr'yi SDK'nın yazılabilir bir kopyasıyla ilklendir" +msgstr "/usr'yi SDKʼnin yazılabilir bir kopyasıyla ilklendir" #: app/flatpak-builtins-build-init.c:60 msgid "Specify the build type (app, runtime, extension)" @@ -842,21 +848,21 @@ msgstr "Bu SDK uzantısını /usr'ye dahil et" #: app/flatpak-builtins-build-init.c:64 msgid "Where to store sdk (defaults to 'usr')" -msgstr "SDK'nın saklanacağı yer ('usr'ye öntanımlar)" +msgstr "SDKʼnin saklanacağı yer ('usr' öntanımlıdır)" #: app/flatpak-builtins-build-init.c:65 msgid "Re-initialize the sdk/var" -msgstr "Sdk/var'ı yeniden ilklendir" +msgstr "Sdk/varʼı yeniden ilklendir" #: app/flatpak-builtins-build-init.c:118 -#, fuzzy, c-format +#, c-format msgid "Requested extension %s/%s/%s is only partially installed" -msgstr "Talep edilen uzantı %s sadece kısmi olarak kurulmuş" +msgstr "Talep edilen uzantı %s/%s/%s sadece kısmi olarak kurulmuş" #: app/flatpak-builtins-build-init.c:147 -#, fuzzy, c-format +#, c-format msgid "Requested extension %s/%s/%s not installed" -msgstr "Talep edilen uzantı %s kurulu değil" +msgstr "Talep edilen uzantı %s/%s/%s kurulu değil" #: app/flatpak-builtins-build-init.c:207 msgid "" @@ -885,88 +891,88 @@ msgstr "'%s' geçerli bir uygulama adı değil: %s" msgid "Build directory %s already initialized" msgstr "İnşa dizini %s zaten ilklendirilmiş" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Kurulacağı mimari" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Belirtilmiş adla çalışma ortamı ara" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "KONUM [KİMLİK [DAL]] - Uygulamayı veya çalışma ortamını imzala" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "KONUM belirtilmelidir" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Gpg anahtar kimliği belirtilmemiş" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Bu depoyu yeni URL'ye yönlendir" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Bu depo için kullanılacak güzel bir ad" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "BAŞLIK" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "Bu depo için tek satırlık yorum" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "YORUM" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "Bu depo için tek paragraflık açıklama" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "AÇIKLAMA" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "Bu depo için bir web sitesi URL'si" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "Bu depo için simge URL'si" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Bu depo için kullanılacak öntanımlı dal" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "DAL" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "KOLEKSİYON-KİMLİĞİ" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" @@ -974,121 +980,123 @@ msgstr "" "Koleksiyon kimliğini yalnızca yan kurulum desteği için istemci uzak " "yapılandırmalarına kalıcı olarak dağıt" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" "Koleksiyon kimliğini istemci uzak yapılandırmalarına kalıcı olarak dağıt" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Bu depo için kimlik doğrulayıcının adı" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "Bu depo için kimlik doğrulayıcıyı kendiliğinden kur" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "Bu depo için kimlik doğrulayıcıyı kendiliğinden kurma" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Kimlik doğrulayıcı seçeneği" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "ANAHTAR=DEĞER" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Yeni öntanımlı GPG genel anahtarını DOSYA'dan içe aktar" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "Özetin imzalanacağı GPG anahtar kimliği" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Delta dosyaları oluştur" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Appstream dalını güncelleme" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "Delta oluştururken en fazla paralel iş (öntanımlı: NUMCPU'lar)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "Referanslarla eşleşen deltalar oluşturma" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Kullanılmayan nesneleri buda" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "Buda fakat hiçbir şeyi gerçekte kaldırma" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" -"Her değişiklik için sadece DERİNLİK ebeveynlerini çaprazla (öntanımlı: " -"-1=sonsuz)" +"Her işleme için sadece DERİNLİK ebeveynlerini çaprazla (öntanımlı: -1=sonsuz)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "DERİNLİK" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Delta oluşturuluyor: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Delta oluşturuluyor: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "%s delta oluşturulamadı (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "%s delta oluşturulamadı (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "KONUM - Depo üst verisini güncelle" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Appstream dalı güncelleniyor\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Özet güncelleniyor\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Toplam nesne: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Ulaşılamayan nesne yok\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "%u nesne silindi, %s temizlendi\n" @@ -1160,25 +1168,25 @@ msgstr "--list, --get, --set ya da --unset içinden sadece biri kullanılabilir" msgid "Must specify one of --list, --get, --set or --unset" msgstr "--list, --get, --set ya da --unset içinden birisi belirtilmelidir" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Belirtilmiş adla uygulama ara" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Kopyalanacak mimari" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "HEDEF" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" -msgstr "Oluşturulan depoda kısmi değişikliklere izin ver" +msgstr "Oluşturulan depoda kısmi işlemelere izin ver" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " @@ -1187,12 +1195,12 @@ msgstr "" "Uyarı: İlgili referans ‘%s’ kısmen kuruldu. Mesajı bastırmak için --allow-" "partial kullanın.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "Uyarı: Kurulu olmadığı için ilgili ‘%s’ referansı atlanıyor.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1201,14 +1209,14 @@ msgstr "" "Uyarı: Uzak ‘%2$s’ ayarlanmış koleksiyon kimliği içermediği için İlgili " "‘%1$s’ referansı atlanıyor.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" "Uyarı: Ek veri olduğu için ilgili ‘%s’ referansı atlanıyor.\n" "\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1216,35 +1224,35 @@ msgid "" msgstr "" "Uzak ‘%s’, ‘%s’ P2P dağıtımı için gerekli koleksiyon kimliğine sahip değil." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" "Uyarı: Ek veri olduğu için ‘%s’ referansı (‘%s’ çalışma ortamı) atlanıyor.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" "BAĞLANMA-YOLU [REFERANS…] - Uygulamaları ya da çalışma ortamlarını " "taşınabilir ortama kopyala" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "BAĞLANMA-YOLU ve REFERANS belirtilmelidir" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" "‘%s’ referansı birden çok kurulumda bulundu: %s. Bir tane belirtmelisiniz." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "" "Referansların hepsi aynı kurulumda olmalıdır (%s ve %s içinde bulundu)." -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " @@ -1253,24 +1261,24 @@ msgstr "" "Uyarı: Referans ‘%s’ kısmen kuruldu. Mesajı bastırmak için --allow-partial " "kullanın.\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" -msgstr "Kurulu referans ‘%s’ ek veri, ve çevrim dışı olarak dağıtılamaz." +msgstr "Kurulu referans ‘%s’ ek veri, ve çevrim dışı olarak dağıtılamaz" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" -msgstr "Uyarı: Depo üstverisi ‘%s’ uzağı için güncellenemedi: %s\n" +msgstr "Uyarı: Depo üst verisi ‘%s’ uzağı için güncellenemedi: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" "Uyarı: Appstream verisi uzak ‘%s’ mimari ‘%s’ için güncellenemedi: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1278,7 +1286,7 @@ msgstr "" "Uyarı: Appstream verisi uzak ‘%s’ mimari ‘%s’ için bulunamadı: %s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "Appstream2 verisi uzak ‘%s’ mimari ‘%s’ için bulunamadı: %s\n" @@ -1351,19 +1359,20 @@ msgstr "DOSYA - Dışa aktarılmış bir belgeyle ilgili bilgi al" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Dışa aktarılmamış\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Hangi bilgiler gösterilecek" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "ALAN,…" @@ -1382,7 +1391,7 @@ msgid "Show the document path" msgstr "Belge yolunu göster" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Köken" @@ -1396,7 +1405,7 @@ msgid "Show applications with permission" msgstr "Uygulamaları, izinleriyle birlikte göster" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "İzinler" @@ -1523,12 +1532,12 @@ msgid "Show the kind of change" msgstr "Değişiklik türünü göster" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Referans" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Referansı göster" @@ -1537,24 +1546,24 @@ msgid "Show the application/runtime ID" msgstr "Uygulama/çalışma ortamı kimliğini göster" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Mimari" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Mimariyi göster" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Dal" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Dalı göster" @@ -1566,7 +1575,7 @@ msgstr "Kurulum" msgid "Show the affected installation" msgstr "Etkilenen kurulumları göster" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Uzak" @@ -1576,27 +1585,27 @@ msgstr "Uzağı göster" # İsim anlamında, fiil anlamında değil. #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" -msgstr "Değişiklik" +msgstr "İşleme" #: app/flatpak-builtins-history.c:65 msgid "Show the current commit" -msgstr "Geçerli değişikliği göster" +msgstr "Geçerli işlemeyi göster" #: app/flatpak-builtins-history.c:66 msgid "Old Commit" -msgstr "Eski Değişiklik" +msgstr "Eski İşleme" #: app/flatpak-builtins-history.c:66 msgid "Show the previous commit" -msgstr "Önceki değişikliği göster" +msgstr "Önceki işlemeyi göster" #: app/flatpak-builtins-history.c:67 msgid "Show the remote URL" msgstr "Uzak URL'yi göster" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Kullanıcı" @@ -1613,7 +1622,7 @@ msgid "Show the tool that was used" msgstr "Kullanılan aracı göster" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Sürüm" @@ -1641,10 +1650,12 @@ msgid " - Show history" msgstr " - Geçmişi göster" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "--since seçeneği ayrıştırılamadı" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "--until seçeneği ayrıştırılamadı" @@ -1660,13 +1671,13 @@ msgstr "Sistem-geneli kurulumları göster" msgid "Show specific system-wide installations" msgstr "Belirli sistem-geneli kurulumları göster" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Referansı göster" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" -msgstr "Değişikliği göster" +msgstr "İşlemeyi göster" #: app/flatpak-builtins-info.c:61 msgid "Show origin" @@ -1676,15 +1687,15 @@ msgstr "Kökeni göster" msgid "Show size" msgstr "Boyut göster" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Üst veri göster" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Çalışma ortamı göster" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Sdk göster" @@ -1696,8 +1707,8 @@ msgstr "İzinleri göster" msgid "Query file access" msgstr "Dosya erişimini sorgula" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1716,7 +1727,7 @@ msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "" "AD [DAL] - Kurulu uygulamalar ve/veya çalışma ortamları hakkında bilgi al" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "AD belirtilmelidir" @@ -1725,106 +1736,108 @@ msgstr "AD belirtilmelidir" msgid "ref not present in origin" msgstr "referans kökende yok" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" -msgstr "Uyarı: Değişiklik flatpak üst verisi içermiyor\n" +msgstr "Uyarı: İşleme flatpak üst verisi içermiyor\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" -msgstr "Kimlik" +msgstr "Kimlik:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Ref:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Mimari:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Dal:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Sürüm:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Lisans:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Koleksiyon:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Kurulum:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Kurulu:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Çalışma ortamı:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" -msgstr "Sdk" +msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Tarih:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Konu:" #: app/flatpak-builtins-info.c:240 app/flatpak-builtins-info.c:295 msgid "Active commit:" -msgstr "Etkin değişiklik:" +msgstr "Etkin işleme:" #: app/flatpak-builtins-info.c:241 app/flatpak-builtins-info.c:298 msgid "Latest commit:" -msgstr "Son değişiklik:" +msgstr "Son işleme:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" -msgstr "Değişiklik:" +msgstr "İşleme:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Üst:" @@ -1833,163 +1846,164 @@ msgid "Alt-id:" msgstr "Alt-kimlik:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" -msgstr "Ömrünün sonu:" +msgstr "Ömür-sonu:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" -msgstr "" +msgstr "Ömür-sonu-yeniden-temellendirme:" #: app/flatpak-builtins-info.c:254 app/flatpak-builtins-info.c:317 msgid "Subdirectories:" msgstr "Alt dizinler:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Uzantı:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Köken:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Alt yollar:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "bakımsız" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "bilinmeyen" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Çekme, sadece yerel önbellekten kur" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Dağıtma, sadece yerel önbelleğe indir" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "İlişkili referansları kurma" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Çalışma ortamı bağımlılıklarını doğrulama/kurma" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "Açık kurulumları kendiliğinden sabitleme" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Sabit deltaları kullanma" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" -msgstr "Verilen referansları oluşturmak için kullanılan SDK'yı ek olarak kur" +msgstr "Verilen referansları oluşturmak için kullanılan SDKʼyi ek olarak kur" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" "Verilen referanslar ve bağımlılıkları için hata ayıklama bilgilerini ek " "olarak kur" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "KONUM'un .flatpak tek dosya paketi olduğunu varsay" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "KONUM'un .flatpakref uygulama açıklaması olduğunu varsay" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "Paket imzalarını DOSYA'daki (stdin için -) GPG anahtarıyla denetle" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Sadece bu alt yolu kur" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Tüm soruları otomatik olarak evetle cevapla" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Kurulu ise önce kaldır" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "En az çıktı üret ve soru sorma" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Kurulu ise kurulumu güncelle" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "Yan kurulumlar için bu yerel depoyu kullan" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Paket dosya adı belirtilmelidir" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Uzak paketler desteklenmemektedir" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Dosya adı veya uri belirtilmelidir" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "[KONUM/UZAK] [REFERANS…] - Uygulamalar veya çalışma ortamları kur" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "En az bir REFERANS belirtilmelidir" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Eşleşmeler aranıyor…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, c-format msgid "No remote refs found for ‘%s’" msgstr "‘%s’ için uzak referans bulunamadı" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Geçersiz dal %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Uzak %2$s için, %1$s yerel depodaki hiçbir şeyle eşleşmiyor" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Uzak %2$s için, %1$s hiçbir şeyle eşleşmiyor" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Atlanıyor: %s\n" @@ -2027,51 +2041,51 @@ msgstr "Kurulu uygulamaları listele" msgid "Arch to show" msgstr "Gösterilecek mimari" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Tüm referansları listele (yerel/hata ayıklama dahil)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "ÇALIŞMA ORTAMINI kullanan tüm uygulamaları listele" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Ad" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Adı göster" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Açıklama" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Açıklamayı göster" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "Uygulama Kimliği" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Uygulama kimliğini göster" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Sürümü göster" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Çalışma ortamı" @@ -2080,7 +2094,7 @@ msgid "Show the used runtime" msgstr "Kullanılan çalışma ortamını göster" # Fuzzy: Durduğu yere bakmak lazım. -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Uzak kökeni göster" @@ -2090,49 +2104,50 @@ msgstr "Kurulumu göster" #: app/flatpak-builtins-list.c:67 msgid "Active commit" -msgstr "Etkin işlem" +msgstr "Etkin işleme" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" -msgstr "Etkin işlemi göster" +msgstr "Etkin işlemeyi göster" #: app/flatpak-builtins-list.c:68 msgid "Latest commit" -msgstr "Son işlem" +msgstr "Son işleme" #: app/flatpak-builtins-list.c:68 msgid "Show the latest commit" -msgstr "En son değişikliği göster" +msgstr "En son işlemeyi göster" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Kurulu boyut" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Kurulu boyutu göster" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Seçenekler" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Seçenekleri göster" -#: app/flatpak-builtins-list.c:179 -#, fuzzy, c-format +#: app/flatpak-builtins-list.c:178 +#, c-format msgid "Unable to load details of %s: %s" -msgstr "%s uzağından özet yüklenemedi: %s" +msgstr "%s ayrıntıları yüklenemedi: %s" -#: app/flatpak-builtins-list.c:189 +# ilk %s için iyelik kullanılmadı. Referansın türü belli değil. +#: app/flatpak-builtins-list.c:188 #, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "%s geçerli sürümü incelenemedi: %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - Kurulu uygulamaları ve/veya çalışma ortamlarını listele" @@ -2144,7 +2159,7 @@ msgstr "Mevcutun yapılacağı mimariler" msgid "APP BRANCH - Make branch of application current" msgstr "UYGULAMA DAL - Uygulamanın dalını mevcut yap" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "UYGULAMA belirtilmelidir" @@ -2169,10 +2184,12 @@ msgstr "" "kurulumlarını devre dışı bırak" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "Maskelenen desen yok\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Maskelenen desenler:\n" @@ -2188,26 +2205,26 @@ msgstr "Mevcut geçersiz kılmaları göster" msgid "[APP] - Override settings [for application]" msgstr "[UYGULAMA] - Ayarları geçersiz kıl [uygulama için]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABLO] [KİMLİK] - İzinleri listele" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Tablo" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Nesne" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "Uygulama" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Veri" @@ -2266,10 +2283,12 @@ msgstr "" "dışı bırak" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "Sabitlenmiş desen yok\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "Sabitlenmiş desenler:\n" @@ -2303,7 +2322,7 @@ msgstr "Uygulama dalını göster" #: app/flatpak-builtins-ps.c:53 msgid "Show the application commit" -msgstr "Uygulama değişikliğini göster" +msgstr "Uygulama işlemesini göster" #: app/flatpak-builtins-ps.c:54 msgid "Show the runtime ID" @@ -2318,14 +2337,14 @@ msgstr "ÇO.-Dalı" msgid "Show the runtime branch" msgstr "Çalışma ortamı dalını göster" -# R. kelimesi Runtime kelimesinin kısaltması olması sebebiyle ÇO (Çalışma Ortamı) olarak kukllanıldı. +# R. kelimesi Runtime kelimesinin kısaltması olması sebebiyle ÇO (Çalışma Ortamı) olarak kullanıldı. #: app/flatpak-builtins-ps.c:56 msgid "R.-Commit" -msgstr "ÇO.-Değişikliği" +msgstr "ÇO.-İşlemesi" #: app/flatpak-builtins-ps.c:56 msgid "Show the runtime commit" -msgstr "Çalışma ortamı değişikliğini göster" +msgstr "Çalışma ortamı işlemesini göster" #: app/flatpak-builtins-ps.c:57 msgid "Active" @@ -2347,124 +2366,124 @@ msgstr "Uygulamanın arka planda olma durumunu göster" msgid " - Enumerate running sandboxes" msgstr " - Çalışan yalıtılmış alanları numaralandır" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Sağlanan uzak varsa hiçbir şey yapma" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "KONUM yapılandırma dosyasını belirtir, depo konumunu değil" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "GPG doğrulamayı devredışı bırak" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Uzağı belirtilmemiş olarak işaretle" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "Uzağı bağımlılık için olarak işaretleme" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "Öncelik belirle (öntanımlı 1, yüksek sayı daha öncelikli)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "ÖNCELİK" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "Bu uzak için kullanılacak adlandırılmış alt küme" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "ALTKÜME" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Bu uzak için kullanılacak güzel bir ad" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "Bu depo için tek satırlık yorum" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "Bu uzak için kullanılacak tek paragraflık açıklama" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "Bu uzak için web sitesi URL'si" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "Bu uzak için simge URL'si" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Bu uzak için kullanılacak öntanımlı dal" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "DOSYA'dan GPG anahtarı içe aktar (stdin için -)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Yerel süzgeç DOSYA yolunu belirle" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Uzağı devredışı bırak" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Kimlik doğrulayıcının adı" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Kimlik doğrulayıcıyı kendiliğinden kur" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "Kimlik doğrulayıcıyı kendiliğinden kurma" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "Özet dosyasındaki yönlendirme kümesini takip etme" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "%s uri yüklenemedi: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "%s dosyası yüklenemedi: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "AD KONUM - Uzak depo ekle" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "Koleksiyonlar etkinse GPG doğrulaması gerekir" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "Uzak %s zaten var" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Geçersiz kimlik doğrulayıcı adı %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "Uyarı: '%s' için ek üst veri güncellenemedi: %s\n" @@ -2491,64 +2510,64 @@ msgstr "Kaldırılsın mı?" msgid "Can't remove remote '%s' with installed refs" msgstr "'%s' uzağı kurulu referanslarla kaldırılamıyor" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" -msgstr "Bilgi için gösterilecek değişiklik" +msgstr "Bilgi için gösterilecek işleme" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Günlüğü göster" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Ebeveyni göster" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Eski olsalar bile yerel önbellekleri kullan" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "Sadece yan kurulum olarak kullanılabilen referansları listele" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " UZAK REFERANS - Uzaktaki uygulama ya da çalışma zamanı hakkındaki bilgileri " "göster" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "UZAK ve REFERANS belirtilmelidir" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "İndir:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "Geçmiş:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" -msgstr " Değişiklik:" +msgstr " İşleme:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Konu:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Tarih:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" -msgstr "Uyarı: Değişiklik %s flatpak üst verisi içermiyor\n" +msgstr "Uyarı: %s işlemesi flatpak üst verisi içermiyor\n" #: app/flatpak-builtins-remote-list.c:42 msgid "Show remote details" @@ -2574,7 +2593,7 @@ msgstr "URL'yi göster" msgid "Show the collection ID" msgstr "Koleksiyon kimliğini göster" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "Alt küme" @@ -2630,39 +2649,39 @@ msgstr "Simge göster" msgid " - List remote repositories" msgstr " - Uzak depoları listele" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Mimarileri ve dalları göster" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Sadece çalışma ortamlarını göster" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Sadece uygulamaları göster" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Sadece güncellemeleri olanları göster" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Bu mimariyle kısıtla (hepsi için *)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Çalışma ortamını göster" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "İndirme boyutu" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "İndirme boyutunu göster" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr "" " [UZAK ya da URI] - Kullanılabilir çalışma ortamlarını ve uygulamaları göster" @@ -2763,22 +2782,22 @@ msgstr "%s nesnesi yüklenemedi: %s\n" #: app/flatpak-builtins-repair.c:228 #, c-format msgid "Commit invalid %s: %s\n" -msgstr "Değişiklik geçersiz %s: %s\n" +msgstr "İşleme geçersiz %s: %s\n" #: app/flatpak-builtins-repair.c:231 #, c-format msgid "Deleting invalid commit %s: %s\n" -msgstr "Bağımsız değişiklik %s siliniyor: %s\n" +msgstr "%s geçersiz işlemesi siliniyor: %s\n" #: app/flatpak-builtins-repair.c:261 #, c-format msgid "Commit should be marked partial: %s\n" -msgstr "Değişiklik kısmi olarak işaretlenmelidir: %s\n" +msgstr "İşleme kısmi olarak işaretlenmelidir: %s\n" #: app/flatpak-builtins-repair.c:264 #, c-format msgid "Marking commit as partial: %s\n" -msgstr "Değişiklik kısmi olarak işaretleniyor: %s\n" +msgstr "İşleme kısmi olarak işaretleniyor: %s\n" #: app/flatpak-builtins-repair.c:293 #, c-format @@ -2794,226 +2813,233 @@ msgstr "%s yeniden kurulurken hata: %s\n" msgid "- Repair a flatpak installation" msgstr "- Flatpak kurulumunu onar" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Dağıtılmamış referans %s kaldırılıyor…\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Dağıtılmamış referans %s atlanıyor…\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d/%d] %s doğrulanıyor…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "Kuru çalıştırma: " -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "%s referansı eksik nesneler sebebiyle siniliyor\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "%s referansı geçersiz nesneler sebebiyle siliniyor\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "%s referansı %d sebebiyle siliniyor\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "Uzaklar denetleniyor...\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "%2$s referansı için %1$s uzağı kayıp\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "%2$s referansı için %1$s devre dışı\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "Nesneler budanıyor\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr ".removed siliniyor\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "Referanslar yeniden kuruluyor\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "Kaldırılan referanslar yeniden kuruluyor\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "%s için appstream kaldırılırken: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "%s için appstream dağıtılırken: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Depo kipi: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "İndeksli özetler: %s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "doğru" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "yanlış" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "Alt özetler: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "Önbellek sürümü: %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "İndeksli deltalar: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Başlık: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Yorum: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Açıklama: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Ana sayfa: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Simge: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "Koleksiyon Kimliği: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Öntanımlı dal: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" -msgstr "Yönlendirme URL'i: %s\n" +msgstr "Yönlendirme URL'si: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "Kullanıcı kimliğini dağıt: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Kimlik doğrulayıcı adı: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "Kimlik doğrulayıcı kur: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "GPG anahtar özeti: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "%zd özet dalları\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Kurulu" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "İndir" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "Alt kümeler" # Özet anlamında kullanılmış. # digest = ostree_checksum_from_bytes (checksum_bytes) -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "Özet" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "Geçmiş uzunluğu" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Depo hakkında genel bilgileri yazdır" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Arşivdeki dalları listele" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Dal için üst veriyi yazdır" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" -msgstr "Dal için değişiklikleri göster" +msgstr "Dal için işlemeleri göster" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "Depo alt kümeleri hakkında bilgileri yazdır" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "Bilgileri bu ön ek ile alt kümelere sınırla" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "KONUM - Arşiv bakım" @@ -3043,31 +3069,31 @@ msgstr "Kullanılacak çalışma ortamı sürümü" #: app/flatpak-builtins-run.c:75 msgid "Log accessibility bus calls" -msgstr "Erişilebilirlik veriyolu çağrılarını günlükle" +msgstr "Erişilebilirlik veri yolu çağrılarını günlükle" #: app/flatpak-builtins-run.c:76 msgid "Don't proxy accessibility bus calls" -msgstr "Erişilebilirlik veriyolu çağrılarını vekil sunucu yapma" +msgstr "Erişilebilirlik veri yolu çağrılarını vekil sunucu yapma" #: app/flatpak-builtins-run.c:77 msgid "Proxy accessibility bus calls (default except when sandboxed)" msgstr "" -"Erişilebilirlik veriyolu çağrılarını vekil sunucu yap (yalıtılmış alanlar " +"Erişilebilirlik veri yolu çağrılarını vekil sunucu yap (yalıtılmış alanlar " "dışında öntanımlı)" #: app/flatpak-builtins-run.c:78 msgid "Don't proxy session bus calls" -msgstr "Oturum veriyolu çağrılarını vekil sunucu yapma" +msgstr "Oturum veri yolu çağrılarını vekil sunucu yapma" #: app/flatpak-builtins-run.c:79 msgid "Proxy session bus calls (default except when sandboxed)" msgstr "" -"Oturum veriyolu çağrılarını vekil sunucu yap (yalıtılmış alanlar dışında " +"Oturum veri yolu çağrılarını vekil sunucu yap (yalıtılmış alanlar dışında " "öntanımlı)" #: app/flatpak-builtins-run.c:80 msgid "Don't start portals" -msgstr "Portalları başlatma" +msgstr "Kapıları başlatma" #: app/flatpak-builtins-run.c:81 msgid "Enable file forwarding" @@ -3075,11 +3101,11 @@ msgstr "Dosya yönlendirmelerini etkinleştir" #: app/flatpak-builtins-run.c:82 msgid "Run specified commit" -msgstr "Belirtilen değişikliği çalıştır" +msgstr "Belirtilen işlemeyi çalıştır" #: app/flatpak-builtins-run.c:83 msgid "Use specified runtime commit" -msgstr "Belirtilen çalışma ortamı değişikliğini kullan" +msgstr "Belirtilen çalışma ortamı işlemesini kullan" #: app/flatpak-builtins-run.c:84 msgid "Run completely sandboxed" @@ -3109,11 +3135,11 @@ msgstr "Uygulamanın /app dizini yerine YOL kullan" msgid "Use PATH instead of the runtime's /usr" msgstr "Çalışma ortamının /usr dizini yerine YOL kullan" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "UYGULAMA [ARGÜMAN…] - Uygulamayı çalıştır" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "çalışma ortamı/%s/%s/%s kurulu değil" @@ -3130,15 +3156,15 @@ msgstr "Uzaklar" msgid "Show the remotes" msgstr "Uzakları göster" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "METİN - Uzak uygulamaları/çalışma ortamlarını metin için ara" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "METİN belirtilmelidir" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Hiçbir sonuç bulunamadı" @@ -3178,17 +3204,16 @@ msgstr "%s verileri silinsin mi?" #: app/flatpak-builtins-uninstall.c:220 #, c-format msgid "Info: applications using the extension %s%s%s branch %s%s%s:\n" -msgstr "" +msgstr "Bilgi: %s%s%s eklentisinin %s%s%s dalını kullanan uygulamalar:\n" #: app/flatpak-builtins-uninstall.c:223 -#, fuzzy, c-format +#, c-format msgid "Info: applications using the runtime %s%s%s branch %s%s%s:\n" -msgstr "Çalışma ortamını kullanan uygulamalar:\n" +msgstr "%s%s%s çalışma ortamının %s%s%s dalını kullanan uygulamalar:\n" #: app/flatpak-builtins-uninstall.c:238 -#, fuzzy msgid "Really remove?" -msgstr "herhangi uzak" +msgstr "Gerçekten kaldırılsın mı?" #: app/flatpak-builtins-uninstall.c:255 msgid "[REF…] - Uninstall applications or runtimes" @@ -3220,6 +3245,7 @@ msgstr "" # Biraz bulanık oldu fakat sade oldu #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Kullanılmayan hiçbir şey yok\n" @@ -3244,6 +3270,7 @@ msgid "Warning: %s is not installed\n" msgstr "Uyarı: %s kurulu değil\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "Belirtilen referansların hiçbiri kurulmadı" @@ -3253,7 +3280,7 @@ msgstr "Güncelleneceği mimari" #: app/flatpak-builtins-update.c:57 msgid "Commit to deploy" -msgstr "Dağıtılacak değişiklik" +msgstr "Dağıtılacak işleme" #: app/flatpak-builtins-update.c:58 msgid "Remove old files even if running" @@ -3284,6 +3311,7 @@ msgid "With --commit, only one REF may be specified" msgstr "--commit ile, tek bir REFERANS belirtilebilir" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Güncellemeler aranıyor…\n" @@ -3293,27 +3321,28 @@ msgid "Unable to update %s: %s\n" msgstr "%s güncellenemedi: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Yapacak bir şey yok.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "Uzak ‘%s’ birden fazla kurulumda bulundu:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" -msgstr "Hangisini kurmak istiyorsunuz (iptal etmek için 0)?" +msgstr "Hangisini kurmak istiyorsunuz (vazgeçmek için 0)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "Birden fazla kurulumda bulunan ‘%s’ çözümü için uzak seçilmedi" # Vurgu ve netlik olması amacıyla komut tırnak içine alındı -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3322,13 +3351,13 @@ msgstr "" "Uzak \"%s\" bulunamadı\n" "İpucu: Uzak eklemek için \"flatpak remote-add\" komutunu kullanın" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Uzak \"%s\", %s kurulumunda bulunamadı" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3337,142 +3366,133 @@ msgstr "" "Referans ‘%s’ uzak ‘%s’ (%s) içinde bulundu.\n" "Bu referans kullanılsın mı?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "‘%s’ eşleşmelerini çözmek için referans seçilmedi" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "‘%1$s’ için, ‘%2$s’ (%3$s) uzağında benzer referanslar bulundu:" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "Kurulu referans ‘%s’ (%s) bulundu. Bu doğru mu?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "Üsttekilerin tamamı" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "‘%s’ için benzer kurulu referanslar bulundu:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"‘%s’için benzer referans(lar) uzak ‘%s’ (%s) içinde bulundu.\n" -"Bu uzak kullanılsın mı?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "‘%s’ benzeri referanslara sahip bulunan uzaklar:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "‘%s’ eşleşmelerini çözmek için uzak seçilmedi" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "‘%s’ benzeri referanslara sahip bulunan uzaklar:" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "Appstream verisi kullanıcı uzağı %s için güncelleniyor" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Appstream verisi uzak %s için güncelleniyor" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Güncelleme hatası" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "Uzak \"%s\" bulunamadı" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Belirsiz son ek: '%s'." # Çeviri uyarısı sebebiyle değerler çevrilmedi #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "" "Kullanılabilir değerler :s[tart] (başlangıç), :m[iddle] (orta), :e[nd] (son) " "ya da :f[ull] (hepsi)" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Geçersiz son ek: '%s'." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Belirsiz sütun: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Bilinmeyen sütun '%s'" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Kullanılabilir sütunlar:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Tüm sütunları göster" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Kullanılabilir sütunları göster" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" -"Elipsleştirmeyi değiştirmek için :s[tart] (başlangıç), :m[iddle] (orta), :" -"e[nd] (son) ya da :f[ull] (hepsi) ekleyin" +"Elipsleştirmeyi değiştirmek için :s[tart] (başlangıç), :m[iddle] " +"(orta), :e[nd] (son) ya da :f[ull] (hepsi) ekleyin" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "%s (%s) için gerekli çalışma ortamı %s uzağında bulundu\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Kurmak istiyor musunuz?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "%s (%s) için gerekli çalışma ortamı uzaklarda bulundu:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" -msgstr "Hangisini kurmak istiyorsunuz (iptal etmek için 0)?" +msgstr "Hangisini kurmak istiyorsunuz (vazgeçmek için 0)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "%s yeni uzak '%s' olarak yapılandırılıyor\n" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3484,7 +3504,7 @@ msgstr "" "Uzak gelecek kurulumlar için saklanmalı mı?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3495,272 +3515,272 @@ msgstr "" " %s\n" "Bunu yeni uzak '%s' olarak yapılandır" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Kuruluyor…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Kuruluyor %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Güncelleniyor…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Güncelleniyor %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Kaldırılıyor…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Kaldırılıyor %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Bilgi: %s atlandı" -#: app/flatpak-cli-transaction.c:512 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:516 +#, c-format msgid "Warning: %s%s%s already installed" -msgstr "%s zaten kurulu" +msgstr "Uyarı: %s%s%s zaten kurulu" -#: app/flatpak-cli-transaction.c:515 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:519 +#, c-format msgid "Error: %s%s%s already installed" -msgstr "%s zaten kurulu" +msgstr "Hata: %s%s%s zaten kurulu" -#: app/flatpak-cli-transaction.c:521 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:525 +#, c-format msgid "Warning: %s%s%s not installed" -msgstr "Uyarı: %s kurulu değil\n" +msgstr "Uyarı: %s%s%s kurulu değil" -#: app/flatpak-cli-transaction.c:524 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:528 +#, c-format msgid "Error: %s%s%s not installed" -msgstr "%s/%s/%s kurulu değil" +msgstr "Hata: %s%s%s kurulu değil" -#: app/flatpak-cli-transaction.c:530 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:534 +#, c-format msgid "Warning: %s%s%s needs a later flatpak version" -msgstr "%s daha üst bir flatpak sürümünü gerektiriyor" +msgstr "Uyarı: %s%s%s daha üst bir flatpak sürümünü gerektiriyor" -#: app/flatpak-cli-transaction.c:533 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:537 +#, c-format msgid "Error: %s%s%s needs a later flatpak version" -msgstr "%s daha üst bir flatpak sürümünü gerektiriyor" +msgstr "Hata: %s%s%s daha üst bir flatpak sürümünü gerektiriyor" -#: app/flatpak-cli-transaction.c:539 -#, fuzzy +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" -msgstr "Bu işlemi tamamlamak için yeterli disk alanı yok" +msgstr "Uyarı: Bu işlemi tamamlamak için yeterli disk alanı yok" -#: app/flatpak-cli-transaction.c:541 -#, fuzzy +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" -msgstr "Bu işlemi tamamlamak için yeterli disk alanı yok" +msgstr "Hata: Bu işlemi tamamlamak için yeterli disk alanı yok" -#: app/flatpak-cli-transaction.c:546 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:550 +#, c-format msgid "Warning: %s" -msgstr "Uyarı: " +msgstr "Uyarı: %s" -#: app/flatpak-cli-transaction.c:548 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:552 +#, c-format msgid "Error: %s" -msgstr "Hata:" +msgstr "Hata: %s" # flatpak_ref_get_name, rebased_to_ref, error->message -#: app/flatpak-cli-transaction.c:563 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:567 +#, c-format msgid "Failed to install %s%s%s: " -msgstr "%s, %s referansına yeniden temellendirmek için kaldırılamadı: " +msgstr "%s%s%s kurulamadı: " -#: app/flatpak-cli-transaction.c:570 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:574 +#, c-format msgid "Failed to update %s%s%s: " -msgstr "%s başarısız oldu %s: " +msgstr "%s%s%s güncellenemedi: " # flatpak_ref_get_name, rebased_to_ref, error->message -#: app/flatpak-cli-transaction.c:577 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:581 +#, c-format msgid "Failed to install bundle %s%s%s: " -msgstr "%s, %s referansına yeniden temellendirmek için kaldırılamadı: " +msgstr "%s%s%s paketi kurulamadı: " -# flatpak_ref_get_name, rebased_to_ref, error->message -#: app/flatpak-cli-transaction.c:584 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:588 +#, c-format msgid "Failed to uninstall %s%s%s: " -msgstr "%s, %s referansına yeniden temellendirmek için kaldırılamadı: " +msgstr "%s%s%s kaldırılamadı: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "Uzak '%s' için kimlik doğrulaması gerekiyor\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Tarayıcı açılsın mı?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" -msgstr "Oturum açma gerekli uzak %s (alan %s)\n" +msgstr "Oturum açma gerekli uzak %s (erişim alanı %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Parola" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:747 +#, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, in favor of " "%s%s%s branch %s%s%s\n" -msgstr "Bilgi: (sabitlenmiş) %s//%s ömrünün sonuna geldi, %s yararına\n" +msgstr "" +"\n" +"Bilgi: (Sabitlenmiş) çalışma ortamı %s%s%s, dal %s%s%s, ömrünün sonuna " +"geldi, %s%s%s dal %s%s%s yararına\n" -#: app/flatpak-cli-transaction.c:749 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:753 +#, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, in favor of %s%s%s branch " "%s%s%s\n" msgstr "" "\n" -"Bilgi: %s%s %s ömrünün sonuna geldi, %s yararına\n" +"Bilgi: Çalışma ortamı %s%s%s, dal %s%s%s, ömrünün sonuna geldi, %s%s%s dal " +"%s%s%s yararına\n" -#: app/flatpak-cli-transaction.c:752 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:756 +#, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, in favor of %s%s%s branch " "%s%s%s\n" msgstr "" "\n" -"Bilgi: %s%s %s ömrünün sonuna geldi, %s yararına\n" +"Bilgi: Uygulama %s%s%s, dal %s%s%s, ömrünün sonuna geldi, %s%s%s dal %s%s%s " +"yararına\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:768 +#, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" -msgstr "Bilgi: (sabitlenmiş) %s//%s ömrünün sonuna geldi, şu sebeple:\n" +msgstr "" +"\n" +"Bilgi: (Sabitlenmiş) çalışma ortamı %s%s%s, dal %s%s%s, ömrünün sonuna " +"geldi, şu sebeple:\n" -#: app/flatpak-cli-transaction.c:770 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:774 +#, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" "\n" -"Bilgi: %s%s %s ömrünün sonuna geldi, şu sebeple:\n" +"Bilgi: Çalışma ortamı %s%s%s, dal %s%s%s, ömrünün sonuna geldi, şu sebeple:\n" -#: app/flatpak-cli-transaction.c:773 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:777 +#, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "" "\n" -"Bilgi: %s%s %s ömrünün sonuna geldi, şu sebeple:\n" +"Bilgi: Uygulama %s%s%s, dal %s%s%s, ömrünün sonuna geldi, şu sebeple:\n" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" -msgstr "Çalışma ortamını kullanan uygulamalar:\n" +msgstr "Bilgi: Eklentiyi kullanan uygulamalar:\n" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" -msgstr "Çalışma ortamını kullanan uygulamalar:\n" +msgstr "Bilgi: Çalışma ortamını kullanan uygulamalar:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "Değiştirilsin mi?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "Yeniden temellendirilmiş sürüme güncelleniyor\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "%s, %s referansına yeniden temellendirilemedi: " -# flatpak_ref_get_name, rebased_to_ref, error->message -#: app/flatpak-cli-transaction.c:1009 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "%s, %s referansına yeniden temellendirmek için kaldırılamadı: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, c-format msgid "New %s%s%s permissions:" msgstr "Yeni %s%s%s izinler:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, c-format msgid "%s%s%s permissions:" msgstr "%s%s%s izinler:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Uyarı: " # Operation kelimesinin kısaltması. #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "İş" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "kısmi" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Kullanıcı kurulumunda bu değişikliklerle devam edilsin mi?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Sistem kurulumunda bu değişikliklerle devam edilsin mi?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Bu değişikliklerle devam et %s?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Değişiklikler tamamlandı." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Kaldırma işlemi tamamlandı." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Kurulum tamamlandı." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Güncellemeler tamamlandı." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Bir veya daha fazla hata oluştu" @@ -3989,7 +4009,7 @@ msgstr "Depodaki özet dosyasını güncelle" #: app/flatpak-main.c:143 msgid "Create new commit based on existing ref" -msgstr "Var olan referansa dayalı yeni değişiklik yarat" +msgstr "Var olan referansa dayalı yeni işleme oluştur" #: app/flatpak-main.c:144 msgid "Show information about a repo" @@ -4055,7 +4075,7 @@ msgid "" "not appear on your desktop until the session is restarted." msgstr "" "%s dizinleri XDG_DATA_DIRS ortam değişkeni tarafından ayarlanan arama " -"yolunda olmadığınan, Flatpak tarafından yüklenen uygulamalar, oturum yeniden " +"yolunda olmadığınan, Flatpak tarafından kurulan uygulamalar, oturum yeniden " "başlatılana kadar masaüstünüzde görünmeyebilir." #: app/flatpak-main.c:311 @@ -4066,39 +4086,39 @@ msgid "" "not appear on your desktop until the session is restarted." msgstr "" "%s dizini XDG_DATA_DIRS ortam değişkeni tarafından ayarlanan arama yolunda " -"olmadığınan, Flatpak tarafından yüklenen uygulamalar, oturum yeniden " +"olmadığınan, Flatpak tarafından kurulan uygulamalar, oturum yeniden " "başlatılana kadar masaüstünüzde görünmeyebilir." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" "Sudo altında --user ile çalışmayı reddetti. Kullanıcı kurulumunda işlem " -"yapmak için sudo'yu atlayın ya da kök kullanıcının yüklemesinde işlem yapmak " +"yapmak için sudo'yu atlayın ya da kök kullanıcının kurulumunda işlem yapmak " "için kök kabuk kullanın." -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "Bir kurulumda çalışan komut için birden fazla kurulum belirtildi" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "Bakınız '%s --help'" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "'%s' flatpak komutu değil '%s%s' mi demek istediniz?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "'%s' flatpak komutu değil" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Komut belirtilmemiş" @@ -4121,65 +4141,56 @@ msgstr "Güncelleniyor %s\n" msgid "Uninstalling %s\n" msgstr "Kaldırılıyor %s\n" -# ilk s Warning veya Error kelimelerinin çevirilerini basıyor. -# İkincisi bölünmüş cümle ve işlem türünü basıyor. -# Üçüncü referans bilgisini basıyor. -# En son hata mesajı basılıyor. #: app/flatpak-quiet-transaction.c:107 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to install %s: %s\n" -msgstr "%s %s başarısız oldu (referans %s): %s\n" +msgstr "Uyarı: %s kurulamadı: %s\n" #: app/flatpak-quiet-transaction.c:110 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to install %s: %s\n" -msgstr "%s yeniden kurulurken hata: %s\n" +msgstr "Hata: %s kurulamadı: %s\n" #: app/flatpak-quiet-transaction.c:116 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to update %s: %s\n" -msgstr "%s güncellenemedi: %s\n" +msgstr "Uyarı: %s güncellenemedi: %s\n" #: app/flatpak-quiet-transaction.c:119 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to update %s: %s\n" -msgstr "%s güncellenemedi: %s\n" +msgstr "Hata: %s güncellenemedi: %s\n" -# flatpak_ref_get_name, rebased_to_ref, error->message #: app/flatpak-quiet-transaction.c:125 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to install bundle %s: %s\n" -msgstr "%s, %s referansına yeniden temellendirmek için kaldırılamadı: %s\n" +msgstr "Uyarı: %s paketi kaldırılamadı: %s\n" #: app/flatpak-quiet-transaction.c:128 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to install bundle %s: %s\n" -msgstr "%s yeniden kurulurken hata: %s\n" +msgstr "Hata: %s paketi kurulamadı: %s\n" -# ilk s Warning veya Error kelimelerinin çevirilerini basıyor. -# İkincisi bölünmüş cümle ve işlem türünü basıyor. -# Üçüncü referans bilgisini basıyor. -# En son hata mesajı basılıyor. #: app/flatpak-quiet-transaction.c:134 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to uninstall %s: %s\n" -msgstr "%s %s başarısız oldu (referans %s): %s\n" +msgstr "Uyarı: %s kaldırılamadı: %s\n" #: app/flatpak-quiet-transaction.c:137 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to uninstall %s: %s\n" -msgstr "%s yeniden kurulurken hata: %s\n" +msgstr "Hata: %s kaldırılamadı: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s zaten kurulu" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s kurulu değil" @@ -4208,53 +4219,48 @@ msgstr "Bilgi: %s ömrünün sonuna geldi, şu sebeple: %s\n" msgid "Failed to rebase %s to %s: %s\n" msgstr "%s, %s referansına yeniden temellendirilemedi: %s\n" -# flatpak_ref_get_name, rebased_to_ref, error->message -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "%s, %s referansına yeniden temellendirmek için kaldırılamadı: %s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "Uzak `%s` için kimlik doğrulayıcı yapılandırılmadı" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Bilinmeyen paylaşım türü %s, geçerli türler: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Bilinmeyen ilke türü %s, geçerli türler: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Geçersiz dbus adı %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Bilinmeyen soket türü %s, geçerli türler: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Bilinmeyen cihaz türü %s, geçerli türler: %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Bilinmeyen özellik türü %s, geçerli türler: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "Dosya sistemi konumu \"%s\", \"..\" içeriyor" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" @@ -4262,7 +4268,7 @@ msgstr "" "kullan" # Cümlenin sonundaki kısım çevrilebilir konumlar değil. -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4271,858 +4277,915 @@ msgstr "" "Bilinmeyen dosya sistemi konumu %s, geçerli konumlar: host, host-os, host-" "etc, home, xdg-*[/…], ~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Geçersiz env biçimi %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "Ortam değişkeni adı '=' içeremez: %s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "--add-policy argümanları ALTSİSTEM.ANAHTAR=DEĞER biçiminde olmalıdır" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "--add-policy değerleri \"!\" ile başlayamaz" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" "--remove-policy argümanları ALTSİSTEM.ANAHTAR=DEĞER biçiminde olmalıdır" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "--remove-policy değerleri \"!\" ile başlayamaz" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Makinayla paylaş" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "PAYLAŞ" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Makinayla paylaşma" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Soketi uygulamaya göster" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "SOKET" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Soketi uygulamaya gösterme" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Cihazı uygulamaya göster" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "CİHAZ" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Cihazı uygulamaya gösterme" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Özelliğe izin ver" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "ÖZELLİK" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Özelliğe izin verme" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "Dosya sistemini uygulamaya göster (salt-okuma için :ro)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "DOSYASİSTEMİ[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Dosya sistemini uygulamaya gösterme" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "DOSYASİSTEMİ" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Ortam değişkeni belirle" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "DEĞİŞKEN=DEĞER" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "FD'den ortam değişkenlerini env -0 biçiminde oku" # file descriptor kelimesinin kısaltması -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "DT" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "Değişkeni ortamdan kaldır" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "DEĞİŞKEN" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" -msgstr "Uygulamanın oturum veriyolunda kendi adı olmasına izin ver" +msgstr "Uygulamanın oturum veri yolunda kendi adı olmasına izin ver" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "DBUS_ADI" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" -msgstr "Uygulamanın oturum veriyolunda isme konuşmasına izin ver" +msgstr "Uygulamanın oturum veri yolunda isme konuşmasına izin ver" -#: common/flatpak-context.c:1543 -#, fuzzy +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" -msgstr "Uygulamanın oturum veriyolunda adla konuşmasına izin verme" +msgstr "Uygulamanın oturum veri yolunda adla konuşmasına izin verme" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" -msgstr "Uygulamanın sistem veriyolunda kendi adı olmasına izin ver" +msgstr "Uygulamanın sistem veri yolunda kendi adı olmasına izin ver" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" -msgstr "Uygulamanın sistem veriyolunda isme konuşmasına izin ver" +msgstr "Uygulamanın sistem veri yolunda isme konuşmasına izin ver" -#: common/flatpak-context.c:1546 -#, fuzzy +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" -msgstr "Uygulamanın sistem veriyolunda adla konuşmasına izin verme" +msgstr "Uygulamanın sistem veri yolunda adla konuşmasına izin verme" + +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Uygulamanın sistem veri yolunda kendi adı olmasına izin ver" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Genel ilke seçeneği ekle" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "ALTSİSTEM.ANAHTAR=DEĞER" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Genel ilke seçeneğini kaldır" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "Ev dizinini alt yolunu koru" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "DOSYAADI" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Ev dizinini alt yolunu koru" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Çalışan oturum gerektirme (cgroups yaratımı yok)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" -msgstr "" +msgstr "\"%s\" yolu tmpfs ile değiştirilmiyor: %s" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" -msgstr "" +msgstr "\"%s\" yolu yalıtılmış alan ile paylaşılmıyor: %s" #. Even if the error is one that we would normally silence, like #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" -msgstr "" +msgstr "Ev dizini erişimine izin verilmiyor: %s" -#: common/flatpak-context.c:2828 -#, fuzzy, c-format +#: common/flatpak-context.c:3150 +#, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" -msgstr "%s içinde geçici dizin oluşturulamadı" +msgstr "Yalıtılmış alanda geçici ev dizini sağlanamadı: %s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "Yapılandırılmış koleksiyon kimliği ‘%s’ özet dosyasında değil" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "%s uzağından özet yüklenemedi: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "Uzak %2$s içinde '%1$s' referansı bulunamadı" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 -#, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 +#, fuzzy, c-format +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "Uzak '%2$s' özet flatpak önbelleğinde %1$s için girdi yok " -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "%s uzağı için, Flatpak önbellek özeti yok" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "Uzak '%2$s' özet önbelleğinde %1$s için girdi yok " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Uzak %s için özette xa.data eksik" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Uzak %2$s için desteklenmeyen özet sürümü %1$d" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "Uzak OCI indeksinde sicil uri'si yok" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "%s referansı %s uzağında bulunamadı" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "Resim manifesto değil" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" -"Değişiklikte, referans bağlama üst verilerinde talep edilen ‘%s’ referansı " -"yok" +"İşlemede, referans bağlama üst verilerinde talep edilen ‘%s’ referansı yok" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "Yapılandırılmış koleksiyon kimliği ‘%s’ bağlayıcı üst verilerde değil" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "%2$s uzaklığında %1$s referansı için en son sağlama toplamı bulunamadı" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" -msgstr "Uzak '%2$s' özet flatpak seyrek önbelleğinde %1$s için girdi yok " +msgstr "Uzak '%2$s' özet flatpak seyrek önbelleğinde %1$s için girdi yok" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" -msgstr "%s değişiklik üst verisi beklenen üst verilerle eşleşmiyor" +msgstr "%s işleme üst verisi beklenen üst verilerle eşleşmiyor" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" -msgstr "Sistem veriyolunda bağlanamadı" +msgstr "Sistem veri yolunda bağlanamadı" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "Kullanıcı kurulumu" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "Sistem (%s) kurulumu" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "%s için geçersiz kılma bulunamadı" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" -msgstr "%s (değişiklik %s) kurulu değil" +msgstr "%s (işleme %s) kurulu değil" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "%s flatpakrepo dosyası ayrıştırılırken hata: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "%s deposu açılırken: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "Ayar anahtarı %s ayarlanmadı" # key, pattern -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "%2$s deseniyle eşleyen %1$s yok" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" -msgstr "Dağıtılacak appstream değişikliği yok" +msgstr "Dağıtılacak appstream işlemesi yok" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "Güvenilmeyen gpg olmayan doğrulanmış uzaktan çekilemez" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "non-gpg-verified yerel sistem kurulumları için ek veri desteklenmez" # for edatı görmezden gelindi -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Ek veri uri %s için sağlama toplamı geçersiz" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Ek veri uri'si %s için boş ad" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Desteklenmeyen ek veri uri'si %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Yerel ek veri %s yüklenemedi: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Ek veri %s için yanlış boyut" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " -msgstr "%s indirilirken:" +msgstr "%s indirilirken: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Ek veri %s için yanlış boyut" # for edatı görmezden gelindi -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Ek veri %s için sağlama toplamı geçersiz" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" -msgstr "%s değişikliği %s zaten kurulu" +msgstr "%s işlemesi %s zaten kurulu" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " -msgstr "Uzak %2$s'ten %1$s çekerken:" +msgstr "Uzak %2$s'ten %1$s çekerken: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "GPG imzaları bulundu, ancak hiçbiri güvenilir anahtarlıkta yok" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" -msgstr "‘%s’ için değişikliğ referans bağlaması yok" +msgstr "‘%s’ için işleme referans bağlaması yok" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" -msgstr "‘%s’ için değişiklik, beklenen sınır referanslarında değil: %s" +msgstr "‘%s’ için işleme, beklenen sınır referanslarında değil: %s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "Sadece uygulamalar geçerli yapılabilir" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Yeterli bellek yok" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" -msgstr "Dışa aktarılmış dosyadan okunamadı" +msgstr "Dışa aktarılan dosyadan okunamadı" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Mimetürü xml dosyası okunurken hata" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Geçersiz mimetürü xml dosyası" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" -msgstr "D-Bus servis dosyası '%s' adı hatalı" +msgstr "D-Bus hizmet dosyası '%s' adı yanlış" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "Geçersiz Exec argümanı %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " -msgstr "Ayrık üst veri alınırken:" +msgstr "Ayrık üst veri alınırken: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "Ayrılmış üst veride ek veriler eksik" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " -msgstr "Ek dizin oluşturulurken:" +msgstr "Ek dizin oluşturulurken: " # for edatı görmezden gelindi -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Ek veri sağlama toplamı geçersiz" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Ek veri için yanlış boyut" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " -msgstr "Ek veri dosyası '%s' yazılırken:" +msgstr "Ek veri dosyası '%s' yazılırken: " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "%s ek verisi ayrılmış üst verilerde eksik" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "apply_extra betiği başarısız oldu, çıkış durumu %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "%s kurulmasına, yöneticinizce ayarlanan ilke sebebiyle izin verilmiyor" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " -msgstr "Referans %s çözülmeye çalışılırken:" +msgstr "Referans %s çözülmeye çalışılırken: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s kullanılabilir değil" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Dağıtım dizini oluşturulamadı" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " -msgstr "Değişiklik %s okunamadı:" +msgstr "%s işlemesi okunamadı: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " -msgstr "%s'i %s'e geçirmeye çalışırken:" +msgstr "%s'i %s'e geçirmeye çalışırken: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " -msgstr "Üst veri alt dizini geçirilmeye çalışılırken:" +msgstr "Üst veri alt dizini geçirilmeye çalışılırken: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "‘%s’ alt yolu geçirilmeye çalışılırken: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " -msgstr "Var olan ek dizini kaldırmaya çalışırken:" +msgstr "Var olan ek dizini kaldırmaya çalışırken: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " -msgstr "Ek veriyi uygulamaya çalışırken:" +msgstr "Ek veriyi uygulamaya çalışırken: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " -msgstr "Geçersiz değişiklik referansı %s: " +msgstr "Geçersiz işleme referansı %s: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" -msgstr "Dağıtılan referans %s değişiklikle eşleşmiyor (%s)" +msgstr "Dağıtılan referans %s işlemesiyle eşleşmiyor (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" -msgstr "Dağıtılan referans %s dalı değişiklikle eşleşmiyor (%s)" +msgstr "Dağıtılan referans %s dalı işlemesiyle eşleşmiyor (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s dalı %s zaten kurulu" # S: mnt_dir -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "%s konumunda revokefs-fuse dosya sistemi bağlantısı kaldırılamadı : " -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "%s'in bu sürümü zaten kurulu" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "Paket kurulumu sırasında uzak değiştirilemedi" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "Kök izinleri olmadan belirli işleme güncellenemez" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "%s kaldırılamaz, şunun için ihtiyaç duyuluyor: %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s dalı %s kurulu değil" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" -msgstr "%s değişikliği %s kurulu değil" +msgstr "%s işlemesi %s kurulu değil" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "Depo budanamadı: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "'%s' süzgeci yüklenemedi" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "'%s' süzgeci ayrıştırılamadı" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "Özet ön belleği yazılamadı: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "Uzak '%s' için oci özeti önbelleklenmedi" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "Uzak '%s' için önbelleklenmiş özet yok" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "İndeksli özet %s için, %s dosyasından okunan sağlama toplamı geçersiz" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " "URL passed to remote-add was valid." msgstr "" "Uzak listeleme %s için kullanılabilir değil; sunucunun özet dosyası yok. " -"remote-add için kullanılan URL'yi doğruluğunu denetleyin." +"remote-add için kullanılan URL'nin doğruluğunu denetleyin." -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "Uzak '%2$s' içinde, indeksli özet %1$s için sağlama toplamı geçersiz" # : sonrasında kullanılabilir dallar listeleniyor -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "" "%s için birden fazla kullanılabilir dal, şunlardan birisini belirtmelisiniz: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "%s için eşleşme yok" # Bol %s içeren kısım referansın pek çok verisini içeriyor, bölmeye çalışmayın. -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Referans %s%s%s%s%s bulunamadı" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Uzak %s aranırken hata: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Yerel depo aranırken hata: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s kurulu değil" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "%s kurulumu bulunamadı" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "Geçersiz dosya biçimi, %s grubu yok" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Geçersiz sürüm %s, sadece 1 destekli" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "Geçersiz dosya biçimi, %s belirtilmemiş" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "Geçersiz dosya biçimi, gpg anahtarı geçersiz" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "Koleksiyon kimliği, GPG anahtarı sağlanmasını gerektirir" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Çalışma ortamı %s, dal %s zaten kurulu" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Uygulama %s, dal %s zaten kurulu" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "Uzak '%s' %s kurulu referansıyla kaldırılamıyor (en azından)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Uzak adda geçersiz '/' karakteri: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "Uzak %s için yapılandırma belirtilmedi" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Yansı referans (%s, %s) silme atlanıyor…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" -msgstr "" +msgstr "Mutlak yol gerekli" -#: common/flatpak-exports.c:923 -#, fuzzy, c-format +#: common/flatpak-exports.c:933 +#, c-format msgid "Unable to open path \"%s\": %s" -msgstr "%s güncellenemedi: %s\n" +msgstr "\"%s\" yolu açılamadı: %s" -#: common/flatpak-exports.c:930 -#, fuzzy, c-format +#: common/flatpak-exports.c:940 +#, c-format msgid "Unable to get file type of \"%s\": %s" -msgstr "%s dosyası oluşturulamadı" +msgstr "\"%s\" dosya türü alınamadı: %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" -msgstr "" +msgstr "\"%s\" dosyası desteklenmeyen 0o%o türünde" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" -msgstr "" +msgstr "\"%s\" için dosya sistemi bilgisi alınamadı: %s" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" -msgstr "" +msgstr "\"%s\" autofs yolu engellemesi yok sayılıyor" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" -msgstr "" +msgstr "\"%s\" yolu Flatpak tarafından ayrılmıştır" -#: common/flatpak-exports.c:1051 -#, fuzzy, c-format +#: common/flatpak-exports.c:1061 +#, c-format msgid "Unable to resolve symbolic link \"%s\": %s" -msgstr "Sembolik bağlantı %s/%s güncellenemedi" +msgstr "\"%s\" sembolik bağlantı çözülemedi: %s" + +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "Boş dize bir sayı değil" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "“%s” işaretsiz bir sayı değil" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "“%s” sayısı sınırların dışında [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" -msgstr "Referans %s kurulu değil" +msgstr "%s feferansı kurulu değil" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "%s uygulaması kurulu değil" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "Uzak '%s' zaten var" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "İstendiği gibi, %s yalnızca çekildi, ancak kurulmadı" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "%s dizini oluşturulamadı" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "%s kilitlenemedi" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "%s dizini açılamadı" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "%s içinde geçici dizin oluşturulamadı" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "%s dosyası oluşturulamadı" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Sembolik bağlantı %s/%s güncellenemedi" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "Sadece Bearer kimlik doğrulaması deneniyor" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" -msgstr "Kimlik doğrulama isteğinde sadece bölge" +msgstr "Kimlik doğrulama isteğinde sadece erişim alanı" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" -msgstr "Kimlik doğrulama isteğinde geçersiz bölge" +msgstr "Kimlik doğrulama isteğinde geçersiz erişim alanı" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "Yetkilendirme başarısız oldu: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Yetkilendirme başarısız oldu" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "Jeton istenirken beklenmedik yanıt durumu %d: %s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "Geçersiz kimlik doğrulama isteği yanıtı" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "Geçersiz delta dosya biçimi" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "%s kimlikli gpg anahtarı bulunamadı (evdizin: %s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, c-format msgid "Unable to lookup key ID %s: %d" msgstr "%s anahtar kimliği aranamıyor: %d" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" -msgstr "Değişiklik imzalanırken hata: %d" +msgstr "İşleme imzalanırken hata: %d" + +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Geçersiz OCI görüntü ayarı" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Yanlış katman sağlaması toplamı, beklenen %s, olan %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "OCI görüntüsü %s için referans belirtilmedi" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "OCI resmi %2$s için belirtilen referans (%1$s) yanlış, beklenen %3$s" #: common/flatpak-progress.c:236 #, c-format @@ -5144,315 +5207,368 @@ msgstr "Ek veriler indiriliyor: %s/%s" msgid "Downloading files: %d/%d %s" msgstr "Dosyalar indiriliyor: %d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Ad boş olamaz" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Ad 255 karakterden uzun olamaz" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Ad nokta ile başlayamaz" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Ad %c ile başlayamaz" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Ad nokta ile bitemez" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Sadece son ad bölümü tire içerebilir" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Ad bölümleri %c ile başlayamaz" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Ad %c içeremez" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "Adlar en az 2 bölüm içermelidir" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "Mimari boş olamaz" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "Mimari %c içeremez" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Dal boş olamaz" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Dal %c ile başlayamaz" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Dal %c içeremez" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "Referans çok uzun" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "Geçersiz uzak adı" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s uygulama ya da çalışma ortamı değil" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Yanlış bileşen sayısı %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "Geçersiz ad %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "Geçersiz mimari: %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Geçersiz ad %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "Geçersiz mimari: %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "Geçersiz dal: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "Kısmi referans %s içinde yanlış sayıda bileşen" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr " geliştirme platformu" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr " platform" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr " uygulama temeli" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr " hata ayıklama sembolleri" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr " kaynak kodu" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " çeviriler" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr " belgeler" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "Geçersiz id %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Kötü uzak adı: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "Url belirtilmemiş" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "Koleksiyon kimliği ayarlandığında GPG doğrulaması etkinleştirilmelidir" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Uygulama bilgi dosyası açılamadı" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Ek veri kaynağı yok" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Eşzamanlama veriyolu oluşturulamadı" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "Geçersiz %s: Kayıp grup ‘%s’" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Dbus vekiliyle eşzamanlanamadı" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "Geçersiz %s: Kayıp anahtar ‘%s’" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Geçersiz gpg anahtarı" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "64x64 simge %s bileşeni için kopyalanırken hata: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "128x128 simge %s bileşeni için kopyalanırken hata: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s end-of-life, appstream için yok sayılıyor" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "%s için appstream verisi bulunamadı: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Geçersiz paket, üst veride referans yok" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "Paket koleksiyonu ‘%s’ uzaktaki ‘%s’ koleksiyonuyla eşleşmiyor" -#: common/flatpak-run.c:2207 +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Başlıktaki ve uygulamadaki üst veriler tutarsız" + +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "Systemd kullanıcı oturumu yok, cgroups kullanılabilir değil" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "Örnek kimliği ayrılamadı" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "flatpak-info dosyası açılamadı: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "bwrapinfo.json dosyası açılamadı: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "Örnek kimliği fd'ye yazılamadı: %s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "Seccomp ilklendirme başarısız oldu" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Seccomp süzgecine mimari eklenemedi: %s" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Seccomp süzgecine multiarch mimarisi eklenemedi: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, c-format msgid "Failed to block syscall %d: %s" msgstr "Syscall %d engellenemedi: %s" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, c-format msgid "Failed to export bpf: %s" msgstr "Bpf dışa aktarılamadı: %s" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "‘%s’ açılamadı" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ldconfig başarısız oldu, çıkış durumu %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "Oluşturulan ld.so.cache açılamadı" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" "%s çalıştırılmasına, yöneticinizce ayarlanan ilke sebebiyle izin verilmiyor" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" "\"flatpak run\", `sudo flatpak run` olarak çalıştırılmak üzere " "tasarlanmamıştır. Bunun yerine `sudo -i` ya da `su -l`kullanın ve yeni " "kabuğun içinden \"flatpak run\" komutunu çalıştırın." # ilk %s previous_app_id_dir olup uygulamanın eski konumu anlanına gelmektedir. -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "%s konumundan taşınamadı: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "Eski uygulama veri dizini %s, yeni %s adına taşınamadı: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "%s taşınırken sembolik bağlantı oluşturulamadı: %s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Uygulama bilgi dosyası açılamadı" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Eşzamanlama veri yolu oluşturulamadı" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Dbus vekiliyle eşzamanlanamadı" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Uyarı: İlişkili referansları ararken sorun: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "%s uygulaması bulunmayan %s çalışma ortamını gerektirir" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "%s uygulaması kurulmamış %s çalışma ortamını gerektirir" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "%s kaldırılamıyor çünkü %s tarafından ihtiyaç duyuluyor" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Uzak %s devredışı, %s güncellemesi yok sayılıyor" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s zaten kurulu" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s, %s uzağından zaten kurulu" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "Geçersiz .flatpakref: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "'%s' için uzak üst veri güncellenirken hata: %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " @@ -5461,54 +5577,54 @@ msgstr "" "Uyarı: %s zaten kurulu olduğundan uzaktan alma hatası ölümcül kabul " "edilmiyor: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "Uzak `%s` için kimlik doğrulayıcı kurulmadı" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "Referans için jetonlar alınamadı: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "Referans için jetonlar alınamadı" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "%s referansı, %s uzağından birden fazla aktarım işlemiyle eşleşiyor" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" msgstr "herhangi uzak" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "%s referansı için %s uzağında aktarım işlemi bulunamadı" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "Flatpakrepo URL %s dosya değil, HTTP ya da HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "%s bağımlı dosyası yüklenemedi: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "Geçersiz .flatpakrepo: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "İşlem zaten yapıldı" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." @@ -5516,193 +5632,169 @@ msgstr "" "Kullanıcı kurulumunda kök olarak çalışmayı reddetti! Bu, hatalı dosya " "sahipliği ve izin hatalarına neden olabilir." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" -msgstr "Kullanıcı tarafından durduruldu" +msgstr "Kullanıcı tarafından vazgeçildi" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "Önceki hata sebebiyle %s atlanıyor" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" -msgstr "Başarısızlık nedeniyle durduruldu (%s)" +msgstr "Başarısızlık nedeniyle vazgeçildi (%s)" #: common/flatpak-uri.c:118 -#, fuzzy, no-c-format +#, no-c-format msgid "Invalid %-encoding in URI" -msgstr "Geçersiz uzantı adı %s" +msgstr "URI'de geçersiz %-kodlaması" #: common/flatpak-uri.c:135 msgid "Illegal character in URI" -msgstr "" +msgstr "URI'de geçersiz karakter" #: common/flatpak-uri.c:169 msgid "Non-UTF-8 characters in URI" -msgstr "" +msgstr "URI'de UTF-8 olmayan karakter" #: common/flatpak-uri.c:275 #, c-format msgid "Invalid IPv6 address ‘%.*s’ in URI" -msgstr "" +msgstr "URI’de geçersiz IPv6 adresi ‘%.*s’" #: common/flatpak-uri.c:330 #, c-format msgid "Illegal encoded IP address ‘%.*s’ in URI" -msgstr "" +msgstr "URI’de kural dışı kodlanmış IP adresi ‘%.*s’" #: common/flatpak-uri.c:342 #, c-format msgid "Illegal internationalized hostname ‘%.*s’ in URI" -msgstr "" +msgstr "URI’de kural dışı uluslararasılaştırılmış ana makine adı ‘%.*s’" #: common/flatpak-uri.c:374 common/flatpak-uri.c:386 -#, fuzzy, c-format +#, c-format msgid "Could not parse port ‘%.*s’ in URI" -msgstr "'%s' ayrıştırılamadı" +msgstr "URI’deki ‘%.*s’ bağlantı noktası ayrıştırılamadı" #: common/flatpak-uri.c:393 #, c-format msgid "Port ‘%.*s’ in URI is out of range" -msgstr "" +msgstr "URI’deki ‘%.*s’ bağlantı noktası kapsam dışında" #: common/flatpak-uri.c:910 msgid "URI is not absolute, and no base URI was provided" -msgstr "" +msgstr "URI mutlak değil ve temel URI sağlanmamış" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "Glob uygulamalarla eşleşmiyor" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" +msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "Glob boş" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "Glob'da çok fazla bölüm" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "Geçersiz id %s: %s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" -msgstr "Geçersiz glob karakter '%c'" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" -msgstr "%d. satırda kayıp glob" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" -msgstr "%d. satırda sondaki metin" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "%d. satırda" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "%2$d. satırda beklenmedik '%1$s' kelimesi" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "Geçersiz %s: Kayıp grup ‘%s’" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "Geçersiz %s: Kayıp anahtar ‘%s’" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Geçersiz gpg anahtarı" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Ek veri kaynağı yok" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "64x64 simge %s bileşeni için kopyalanırken hata: %s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "128x128 simge %s bileşeni için kopyalanırken hata: %s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s end-of-life, appstream için yok sayılıyor" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "Glob uygulamalarla eşleşmiyor" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "%s için appstream verisi bulunamadı: %s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Glob boş" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "Geçersiz paket, üst veride referans yok" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "Glob'da çok fazla bölüm" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "Paket koleksiyonu ‘%s’ uzaktaki ‘%s’ koleksiyonuyla eşleşmiyor" - -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "Başlıktaki ve uygulamadaki üst veriler tutarsız" +msgid "Invalid glob character '%c'" +msgstr "Geçersiz glob karakter '%c'" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "Geçersiz OCI görüntü ayarı" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "%d. satırda kayıp glob" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "Yanlış katman sağlaması toplamı, beklenen %s, olan %s" +msgid "Trailing text on line %d" +msgstr "%d. satırda sondaki metin" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "OCI görüntüsü %s için referans belirtilmedi" +msgid "on line %d" +msgstr "%d. satırda" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "OCI resmi %2$s için belirtilen referans (%1$s) yanlış, beklenen %3$s" +msgid "Unexpected word '%s' on line %d" +msgstr "%2$d. satırda beklenmedik '%1$s' kelimesi" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "Geçersiz require-flatpak argümanı %s" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s daha üst bir flatpak sürümünü gerektiriyor (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "Boş dize bir sayı değil" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "“%s” işaretsiz bir sayı değil" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "“%s” sayısı sınırların dışında [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "Oci uzağı değil, summary.xa.oci-repository kayıp" @@ -5715,41 +5807,45 @@ msgstr "OCI uzağı değil" msgid "Invalid token" msgstr "Geçersiz jeton" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" -msgstr "Portal desteği bulunamadı" +msgstr "Kapı desteği bulunamadı" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Reddet" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Güncelle" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "%s güncellensin mi?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." -msgstr "Uygulama kendisini güncellemek istiyor" +msgstr "Uygulama kendisini güncellemek istiyor." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "Güncelleme erişimi, gizlilik ayarlarından her zaman değiştirilebilir." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "Uygulama güncelleme izin verilmiyor" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" "Kendini güncelleme desteklenmiyor, yeni sürüm yeni izinler gerektiriyor" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "Güncelleme beklenmeyen bir şekilde sonlandı" @@ -5784,7 +5880,7 @@ msgstr "İmzalı çalışma ortamı kur" #. updates. #: system-helper/org.freedesktop.Flatpak.policy.in:60 msgid "Update signed application" -msgstr "İmzalı uygulama güncelle" +msgstr "İmzalı uygulamayı güncelle" #: system-helper/org.freedesktop.Flatpak.policy.in:61 #: system-helper/org.freedesktop.Flatpak.policy.in:80 @@ -5799,7 +5895,7 @@ msgstr "Uygulama güncellemek için kimlik doğrulaması gerekiyor" #. updates. #: system-helper/org.freedesktop.Flatpak.policy.in:79 msgid "Update signed runtime" -msgstr "İmzalı çalışma ortamı güncelle" +msgstr "İmzalı çalışma ortamını güncelle" #. SECURITY: #. - Normal users do not need authentication to update metadata @@ -5972,37 +6068,17 @@ msgstr "" "Ebeveyn denetim politikası tarafından kısıtlanan yazılımı kurmak için kimlik " "doğrulaması gerekiyor" -#~ msgid "install" -#~ msgstr "kur" - -#~ msgid "update" -#~ msgstr "güncelle" - -#~ msgid "install bundle" -#~ msgstr "paket kur" - -#~ msgid "uninstall" -#~ msgstr "kaldır" - -#~ msgid "(internal error, please report)" -#~ msgstr "(dahili hata, lütfen raporlayın)" - -#~ msgid "Warning:" -#~ msgstr "Uyarı:" - #, c-format -#~ msgid "%s%s%s branch %s%s%s" -#~ msgstr "%s%s%s dal %s%s%s" - -#~ msgid "(pinned) " -#~ msgstr "(iğnelenmiş) " - -#~ msgid "runtime" -#~ msgstr "çalışma ortamı" - -#~ msgid "app" -#~ msgstr "uygulama" +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "‘%s’için benzer referans(lar) uzak ‘%s’ (%s) içinde bulundu.\n" +#~ "Bu uzak kullanılsın mı?" #, c-format -#~ msgid "Replace it with %s?" -#~ msgstr "%s yerine koyulsun mu?" +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "Uzak '%2$s' özet önbelleğinde %1$s için girdi yok " + +#~ msgid "Unable to open directory %s" +#~ msgstr "%s dizini açılamadı" diff --git a/po/uk.gmo b/po/uk.gmo deleted file mode 100644 index 712d9953d4aeb9b87ab2fb0a2f0e121ffb097802..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 153759 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 O3-hViL3T$^Z~VVB%6)YJ diff --git a/po/uk.po b/po/uk.po index ad415fa..02a6cb6 100644 --- a/po/uk.po +++ b/po/uk.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" "PO-Revision-Date: 2022-07-24 09:46+0300\n" "Last-Translator: Yuri Chornoivan \n" "Language-Team: Ukrainian \n" @@ -19,104 +19,104 @@ msgstr "" "n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Lokalize 20.12.0\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "Експортувати середовище виконання замість програми" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "Архітектура для пакунка" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "АРХ" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "Адреса сховища" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "АДРЕСА" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "Адреса файла flatpakrepo середовища виконання" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "Додати ключ GPG з ФАЙЛА (- якщо дані слід взяти з stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "ФАЙЛ" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "Ідентифікатор ключа GPG для підписування образу OCI" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "ІД КЛЮЧА" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "ІД КЛЮЧА" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "Домашній каталог GPG, яким слід користуватися для пошуку сховищ ключів" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "ДОМАШНІЙ-КАТАЛОГ" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "Внесок OSTree для створення пакунка відмінностей від" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "COMMIT" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "Експортувати образ OCI замість пакунка flatpak" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" @@ -124,58 +124,58 @@ msgstr "" "РОЗТАШУВАННЯ НАЗВА_ФАЙЛА НАЗВА [ГІЛКА] - Створити пакунок з одного файла на " "основі локального сховища" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "Слід вказати РОЗТАШУВАННЯ, НАЗВУ_ФАЙЛА та НАЗВУ" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "Забагато аргументів" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "«%s» не є коректним сховищем" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "«%s» не є коректним сховищем:" -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "«%s» не є коректною назвою: %s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "«%s» не є коректною назвою гілки: %s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -210,7 +210,7 @@ msgstr "КАТАЛОГ" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "Місце, де слід шукати нетиповий каталог sdk (типовим є каталог usr)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "Використовувати альтернативний файл для метаданих" @@ -230,106 +230,107 @@ msgstr "Записувати до журналу виклики до канал msgid "Log system bus calls" msgstr "Записувати до журналу виклики до каналу системи" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "КАТАЛОГ [КОМАНДА [АРГУМЕНТ…]] - Зібрати у каталозі" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "Слід вказати КАТАЛОГ" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "" "Каталог збирання %s не ініціалізовано, скористайтеся командою flatpak build-" "init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "некоректні метадані, немає програми або середовища виконання" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "Немає точки розширення, яка відповідає %s у %s" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "Пропущено «=» у параметрі монтування прив’язки «%s»" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "Не вдалося запустити програму" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "Каталог сховища-джерела" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "СХОВ-ДЖ" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "Посилання сховища-джерела" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "ПОС-ДЖ" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "Тема у один рядок" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "SUBJECT" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "Повний опис" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "BODY" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "Оновити гілку appstream" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "Оновити гілку appstream" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "Не оновлювати резюме" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "Ідентифікатор ключа GPG для підписування внеску" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "Позначити збірку як таку, термін підтримки якої вичерпано" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "ПРИЧИНА" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" @@ -337,375 +338,380 @@ msgstr "" "Позначити посилання, які відповідають префіксу СТАРИЙІД як застарілі, такі, " "які слід замінити вказаним ідентифікатором НОВИЙІД" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "СТАРИЙІД=НОВИЙІД" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "Встановити тип ключа, який потрібен для встановлення цього внеску" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "ЗНАЧЕННЯ" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "Перевизначити часову позначку внеску (NOW — поточний момент)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "ЧАСОВА_ПОЗНАЧКА" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "Не створювати індекс резюме" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "СХОВ-ПР [ПОС-ПР]… - створити новий внесок на основі наявних внесків" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "Слід вказати СХОВ-ПР" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "" "Якщо не вказано --src-repo, має бути вказано точно одне посилання призначення" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "" "Якщо вказано --src-ref, має бути вказано точно одне посилання призначення" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "Слід вказати або --src-repo, або --src-ref" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "" "Некоректний формат аргументу для використання --end-of-life-" "rebase=СТАРИЙІД=НОВИЙІД" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "Некоректна назва %s у --end-of-life-rebase" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "Не вдалося обробити «%s»" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "Неможливо створити внесок на основі часткового внеску до джерела" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s: без змін\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "Архітектура експортування (має бути сумісною із основною системою)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "Записати до середовища виконання (/usr), а не до /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "Використовувати альтернативний каталог для файлів" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "ПІДКАТАЛОГ" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "Файли для виключення" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "ЗРАЗОК" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "Виключені файли для включення" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "" "Позначити збірку як застарілу, щоб її було замінено збіркою із вказаним " "ідентифікатором" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ІД" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "Перевизначити часову позначку внеску" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "Ідентифікатор збірки" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "" "ПОПЕРЕДЖЕННЯ: помилка під час спроби виконати desktop-file-validate: %s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "" "ПОПЕРЕДЖЕННЯ: помилка під час спроби прочитати дані від desktop-file-" "validate: %s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "ПОПЕРЕДЖЕННЯ: не вдалося перевірити файл desktop %s: %s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "ПОПЕРЕДЖЕННЯ: не вдалося знайти ключ Exec у %s: %s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "ПОПЕРЕДЖЕННЯ: не знайдено виконуваного файла для рядка Exec у %s: %s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "" "ПОПЕРЕДЖЕННЯ: піктограма не відповідає ідентифікатору програми у %s: %s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "" "ПОПЕРЕДЖЕННЯ: у файлі desktop є посилання на піктограму, але її не " "експортовано: %s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "Некоректний тип адреси %s, передбачено підтримку лише http/https" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "Не вдалося знайти базову назву у %s, вкажіть назву явним чином" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "У назві додаткових даних не можна використовувати навскісні риски" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Некоректний формат контрольної суми sha256: «%s»" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "Підтримки нульових розмірів додаткових даних не передбачено" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "" "РОЗТАШУВАННЯ КАТАЛОГ [ГІЛКА] - Створити сховище на основі каталогу збирання" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "Слід вказати РОЗТАШУВАННЯ і КАТАЛОГ" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "«%s» не є коректним ідентифікатором збірки: %s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "У метаданих не вказано назви" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "Внесок: %s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "Загалом метаданих: %u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "Записано метаданих: %u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "Загалом даних: %u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "Записано даних: %u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "Записано байтів даних:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "Команда для встановлення" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "КОМАНДА" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Версія Flatpak, яку слід вимагати" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "ОСНОВНА.ДРУГОРЯДНА.ТРЕТЬОРЯДНА" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "Не обробляти експортування" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "Відомості щодо додаткових даних" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "Додати дані щодо точки розширення" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "НАЗВА=ЗМІННА[=ЗНАЧЕННЯ]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "Вилучити дані щодо точки розширення" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "НАЗВА" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "Встановити пріоритетність розширення (лише для розширень)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "ЗНАЧЕННЯ" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "Змінити sdk, що використовується для програми" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "Змінити середовище виконання, що використовується для програми" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "СЕРЕДОВИЩЕ ВИКОНАННЯ" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "Встановити параметр загальних метаданих" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "ГРУПА=КЛЮЧ[=ЗНАЧЕННЯ]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "Не успадковувати права доступу з середовища виконання" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "Не експортуємо %s, помилковий суфікс\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "Не експортуємо %s, заборонена назва файла експортування\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "Експортуємо %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "Знайдено декілька виконуваних файлів\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "Використовуємо як команду %s\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "Не знайдено виконуваного файла\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "Некоректний аргумент --require-version: %s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "Замало елементів у аргументі --extra-data %s" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " @@ -714,7 +720,7 @@ msgstr "" "Замало елементів у аргументі --metadata %s; слід використовувати формат " "ГРУПА=КЛЮЧ[=ЗНАЧЕННЯ]]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -724,63 +730,64 @@ msgstr "" "Замало елементів у аргументі --extension %s, слід вказувати у форматі " "НАЗВА=ЗМІННА[=ЗНАЧЕННЯ]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "Некоректна назва розширення %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "КАТАЛОГ — завершити обробку каталогу збирання" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "Каталог збирання %s не ініціалізовано" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "Каталог збирання %s вже завершено" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "Будь ласка, перегляньте експортовані файли і метадані\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "Перевизначити посилання, використане для імпортованого пакунка" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "ПОСИЛАННЯ" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "Імпортувати образ OCI замість пакунка flatpak" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "Посилання «%s» немає у реєстрі" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "У реєстрі декілька образів, вкажіть посилання за допомогою --ref" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "Імпортуємо %s (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "" "РОЗТАШУВАННЯ НАЗВА_ФАЙЛА - Імпортувати файловий пакунок до локального сховища" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "Слід вказати РОЗТАШУВАННЯ і НАЗВУ ФАЙЛА" @@ -897,89 +904,89 @@ msgstr "«%s» не є коректною назвою програми: %s" msgid "Build directory %s already initialized" msgstr "Каталог збирання %s вже ініціалізовано" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "Архітектура для встановлення" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "Шукати середовище виконання із вказаною назвою" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "" "РОЗТАШУВАННЯ [ІД [ГІЛКА]] - Підписати програму або середовище виконання" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "Слід вказати РОЗТАШУВАННЯ" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "Не вказано ідентифікаторів ключів GPG" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "Переспрямувати це сховище на нову адресу" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "Зручна назва для цього сховища" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "ЗАГОЛОВОК" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "Однорядковий коментар до цього сховища" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "КОМЕНТАР" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "Розгорнутий опис цього сховища" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "ОПИС" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "Адреса сайта цього сховища" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "Адреса піктограми цього сховища" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "Типова гілка для цього сховища" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "ГІЛКА" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "ІД-ЗБІРКИ" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" @@ -987,124 +994,127 @@ msgstr "" "Остаточно розгорнути ідентифікатор збірки у налаштуваннях віддалених сховищ " "клієнта, лише для підтримки локальних вивантажень" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "" "Остаточно розгорнути ідентифікатор збірки у налаштуваннях віддалених сховищ " "клієнта" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "Назва засобу розпізнавання для цього сховища" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "Автоматично встановлювати засіб розпізнавання для цього сховища" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "Не встановлювати автоматично засіб розпізнавання для цього сховища" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "Параметр засобу розпізнавання" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "КЛЮЧ=ЗНАЧЕННЯ" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "Імпортувати новий типовий відкритий ключ GPG з файла ФАЙЛ" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "Ідентифікатор ключа GPG для підписування резюме" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "Створити файли різниці" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "Не оновлювати гілку appstream" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "" "Максимальна кількість паралельних завдань при створенні різниць (типово: к-" "ть процесорів)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "К-ТЬ-ЗАВДАНЬ" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "Не створювати посилань, які пов'язано із різницями" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "Вилучити невикористані об’єкти" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "Очистити, але нічого насправді не вилучати" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "" "Переносити лише ГЛИБИНУ батьківських елементів для кожного внеску (типово: " "-1=нескінченна кількість)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "ГЛИБИНА" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "Створюємо різницю: %s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "Створюємо різницю: %s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "Не вдалося створити різницю %s (%.10s): " -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "Не вдалося створити різницю %s (%.10s-%.10s): " -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "РОЗТАШУВАННЯ - Оновити метадані сховища" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "Оновлюємо гілку appstream\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "Оновлюємо резюме\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "Загалом об’єктів: %u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "Немає недосяжних об’єктів\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "Вилучено %u об’єктів, вивільнено %s\n" @@ -1179,25 +1189,25 @@ msgid "Must specify one of --list, --get, --set or --unset" msgstr "" "Слід вказати один із таких параметрів: --list, --get, --set або --unset" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "Шукати програму із вказаною назвою" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "Архітектура для копіювання" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "ПРИЗН" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "Дозволити часткові внески до створеного сховища" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " @@ -1206,14 +1216,14 @@ msgstr "" "Попередження: пов'язане посилання «%s» встановлено частково. Скористайтеся " "параметром --allow-partial, щоб придушити виведення цього повідомлення.\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "" "Попередження: пропускаємо пов'язане сховище «%s», оскільки його не " "встановлено.\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " @@ -1222,14 +1232,14 @@ msgstr "" "Попередження: пропускаємо пов'язане сховище «%s», оскільки для його " "віддаленого сховища «%s» не встановлено ідентифікатор збірки.\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "" "Попередження: пропускаємо пов'язане сховище «%s», оскільки це додаткові " "дані.\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " @@ -1238,35 +1248,35 @@ msgstr "" "Для віддаленого сховища «%s» не встановлено ідентифікатора збірки, який " "потрібне для поширення P2P «%s»." -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "" "Попередження: пропускаємо пов'язане сховище «%s» (середовище виконання " "«%s»), оскільки це додаткові дані.\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "" "ШЛЯХ-МОНТ СХОВ [СХОВ…] — скопіювати програми або середовища виконання на " "портативний носій даних" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "Має бути вказано ШЛЯХ-МОНТУВАННЯ і СХОВИЩЕ" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "" "Джерело «%s» виявлено у декількох встановленнях: %s. Вам слід вказати одне." -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "Усі сховища мають належати одному встановленню (знайдено у %s і %s)." -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " @@ -1275,21 +1285,21 @@ msgstr "" "Попередження: посилання «%s» встановлено частково. Скористайтеся параметром " "--allow-partial, щоб придушити виведення цього повідомлення.\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" "Встановлене пов'язане сховище «%s» є додатковими даними і не може " "поширюватися без з'єднання з інтернетом" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "" "Попередження: не вдалося оновити метадані сховища для віддаленого сховища " "«%s»: %s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1297,7 +1307,7 @@ msgstr "" "«%s», архітектура «%s»: %s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" @@ -1306,7 +1316,7 @@ msgstr "" "архітектура «%s»: %s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "" @@ -1382,19 +1392,20 @@ msgstr "ФАЙЛ - Отримати інформацію щодо експорт #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "Не експортовано\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "Які дані слід показувати" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "ПОЛЕ,…" @@ -1413,7 +1424,7 @@ msgid "Show the document path" msgstr "Показати шлях до документа" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "Походження" @@ -1427,7 +1438,7 @@ msgid "Show applications with permission" msgstr "Показати програми із правами доступу" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "Права доступу" @@ -1557,12 +1568,12 @@ msgid "Show the kind of change" msgstr "Показати тип зміни" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "Джерело" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "Показати сховище" @@ -1571,24 +1582,24 @@ msgid "Show the application/runtime ID" msgstr "Показати ідентифікатор програми або середовища виконання" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "Архітектура" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "Показати архітектуру" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "Гілка" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "Показати гілку" @@ -1600,7 +1611,7 @@ msgstr "Встановлення" msgid "Show the affected installation" msgstr "Показати відповідне встановлення" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "Віддалене сховище" @@ -1609,7 +1620,7 @@ msgid "Show the remote" msgstr "Показати віддалене сховище" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "Внесок" @@ -1629,7 +1640,7 @@ msgstr "Показати попередній внесок" msgid "Show the remote URL" msgstr "Показати адресу віддаленого сховища" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "Користувач" @@ -1646,7 +1657,7 @@ msgid "Show the tool that was used" msgstr "Показати інструмент, який було використано" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "Версія" @@ -1674,10 +1685,12 @@ msgid " - Show history" msgstr " - Показати журнал" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "Не вдало обробити параметр --since" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "Не вдало обробити параметр --until" @@ -1693,11 +1706,11 @@ msgstr "Показати загальносистемні встановленн msgid "Show specific system-wide installations" msgstr "Показати вказані загальносистемні встановлення" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "Показати посилання" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "Показати внесок" @@ -1709,15 +1722,15 @@ msgstr "Показ початку координат" msgid "Show size" msgstr "Показ розміру" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "Показ метаданих" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "Показ середовища виконання" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "Показ SDK" @@ -1729,8 +1742,8 @@ msgstr "Показати права доступу" msgid "Query file access" msgstr "Запит щодо доступу до файла" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1750,7 +1763,7 @@ msgstr "" "НАЗВА [ГІЛКА] - Отримати інформацію щодо встановленої програми або " "середовища виконання" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "Має бути вказано НАЗВУ" @@ -1759,85 +1772,87 @@ msgstr "Має бути вказано НАЗВУ" msgid "ref not present in origin" msgstr "посилання немає у джерелі" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "Попередження: у внеску немає метаданих flatpak\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "Ід.:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "Джерело:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "Арх.:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "Гілка:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "Версія:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "Ліцензування:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "Збірка:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "Встановлення:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "Встановлено:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "Середовище виконання:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "Sdk:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "Дата:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "Тема:" @@ -1850,15 +1865,15 @@ msgid "Latest commit:" msgstr "Останній внесок:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "Внесок:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "Батьківський:" @@ -1867,14 +1882,14 @@ msgid "Alt-id:" msgstr "Альт-ід.:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "Термін дії:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "End-of-life-rebase:" @@ -1883,151 +1898,152 @@ msgid "Subdirectories:" msgstr "Підкаталоги:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "Суфікс:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "Походження:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "Підшляхи:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "немає супроводу" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "невідомий" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "Не отримувати зі сховища, встановити лише з локального кешу" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "Не розгортати, лише отримати дані до локального кешу" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "Не встановлювати пов’язані посилання" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "Не перевіряти або не встановлювати залежності для виконання" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "Не пришпилювати автоматично явні встановлення" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "Не використовувати статичні різниці" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" "Додатково встановити SDK, який використано для збирання вказаних посилань" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" "Додатково встановити діагностичні дані для вказаних посилань та їхніх " "залежностей" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "Вважати значенням параметра МІСЦЕ однофайловий пакунок .flatpak" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "Вважати значенням параметра МІСЦЕ опис програми .flatpakref" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "" "Перевірити підписи пакунків за допомогою ключа GPG з ФАЙЛА (- якщо слід дані " "слід взяти з stdin)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "Встановити лише цей підшлях" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "Автоматично відповідати «так» на усі питання" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "Спочатку вилучити, якщо вже встановлено" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "Мінімізувати виведення даних і не задавати питань" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "Оновити встановлене, якщо вже встановлено" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "Використовувати це локальне сховище для локальних вивантажень" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "Слід вказати назву файла пакунка" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "Підтримки віддалених пакунків не передбачено" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "Слід вказати назву файла або адресу" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "" "[МІСЦЕ/СХОВИЩЕ] [НАЗВА…] - Встановити програму або середовища виконання" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "Слід вказати принаймні одне значення НАЗВА" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "Шукаємо відповідники…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, c-format msgid "No remote refs found for ‘%s’" msgstr "Не знайдено віддалених посилань для «%s»" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "Некоректна гілка %s: %s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "Не знайдено локальних відповідників %s для віддаленого сховища %s" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "Не знайдено локальних відповідників %s у віддаленому сховищі %s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "Пропускаємо: %s\n" @@ -2065,51 +2081,51 @@ msgstr "Вивести список встановлених програм" msgid "Arch to show" msgstr "Архітектура для показу" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "Вивести список усіх джерел (включно з locale/debug)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "Вивести список усіх програми, де використовується СЕРЕДОВИЩЕ ВИКОНАННЯ" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "Назва" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "Показати назву" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "Опис" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "Показати опис" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "Ід. програми" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "Показати ідентифікатор програми" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "Показати версію" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "Середовище виконання" @@ -2117,7 +2133,7 @@ msgstr "Середовище виконання" msgid "Show the used runtime" msgstr "Показувати використане середовище виконання" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "Показати походження віддаленого сховища" @@ -2129,7 +2145,7 @@ msgstr "Показати встановлення" msgid "Active commit" msgstr "Активний внесок" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "Показати активний внесок" @@ -2141,35 +2157,35 @@ msgstr "Останній внесок" msgid "Show the latest commit" msgstr "Показати останній внесок" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "Розмір встановленого" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "Показати розмір встановленого" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "Параметри" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "Показати параметри" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, fuzzy, c-format msgid "Unable to load details of %s: %s" -msgstr "Не вдалося завантажити резюме з віддаленого сховища %s: %s" +msgstr "Не вдалося створити файл %s" -#: app/flatpak-builtins-list.c:189 -#, c-format +#: app/flatpak-builtins-list.c:188 +#, fuzzy, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "Не вдалося створити файл %s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - Вивести список встановлених програм і/або середовищ виконання" @@ -2181,7 +2197,7 @@ msgstr "Архітектура, яку слід зробити поточною" msgid "APP BRANCH - Make branch of application current" msgstr "ПРОГРАМА ГІЛКА - Зробити гілку програми поточною" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "Слід вказати ПРОГРАМУ" @@ -2206,10 +2222,12 @@ msgstr "" "взірцю" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "Немає замаскованих взірців\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "Замасковані взірці:\n" @@ -2225,26 +2243,26 @@ msgstr "Показати наявні перевизначення" msgid "[APP] - Override settings [for application]" msgstr "[ПРОГРАМА] - Перевизначити параметри [для програми]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[ТАБЛИЦЯ] [ІД] - список прав доступу" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "Таблиця" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "Об'єкт" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "Програма" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "Дані" @@ -2303,10 +2321,12 @@ msgstr "" "відповідністю взірцю" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" msgstr "Немає пришпилених взірців\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" msgstr "Пришпилені взірці:\n" @@ -2382,127 +2402,127 @@ msgstr "Показувати, чи працює програма у фоново msgid " - Enumerate running sandboxes" msgstr " - пронумерувати запущені пісочниці" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "Нічого не робити, якщо вказане сховище існує" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "МІСЦЕ вказує на файл налаштувань, а не на розташування сховища" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "Вимкнути перевірку GPG" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "Позначити віддалене сховище як таке, яке не входить до переліку" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "" "Позначити віддалене сховище як таке, яке не використовується для залежностей" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "" "Встановити пріоритетність (типово 1, більше значення — вища пріоритетність)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "ПРІОРИТЕТНІСТЬ" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "" "Іменований піднабір, яким слід скористатися для цього віддаленого сховища" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "ПІДНАБІР" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "Зрозуміла назва для використання цього віддаленого сховища" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "Однорядковий коментар до цього віддаленого сховища" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "Розгорнутий опис цього віддаленого сховища" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "Адреса сайта цього віддаленого сховища" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "Адреса піктограми цього віддаленого сховища" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "Типова гілка для цього віддаленого сховища" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "Імпортувати ключ GPG з ФАЙЛА (- — імпортувати із stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "Встановити шлях до локального ФАЙЛа фільтрування" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "Вимкнути віддалене сховище" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "Назва розпізнавальника" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "Автоматично встановлювати засіб розпізнавання" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "Не встановлювати засіб розпізнавання автоматично" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "Не виконувати переспрямовування, яке встановлено у файлі резюме" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "Не вдалося завантажити адресу %s: %s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "Не вдалося завантажити файл %s: %s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "НАЗВА РОЗТАШУВАННЯ - Додати віддалене сховище" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "Якщо увімкнено збірку, слід пройти перевірку GPG" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "Запис віддаленого сховища %s вже існує" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "Некоректна назва засобу розпізнавання, %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "Попередження: не вдалося оновити додаткові метадані для «%s»: %s\n" @@ -2529,61 +2549,61 @@ msgstr "Вилучити їх?" msgid "Can't remove remote '%s' with installed refs" msgstr "Не можна вилучати віддалене сховище «%s» зі встановленими посиланнями" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "Внесок, щодо якого слід показати відомості" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "Показати журнал" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "Показати батьківський запис" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "Використовувати локальні кеші, навіть якщо вони є застарілими" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "Показати лише сховища, які доступні для локального вивантаження" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr "" " СХОВИЩЕ НАЗВА - Показати відомості щодо програми або середовища у " "віддаленому сховищі" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "Має бути вказано СХОВИЩЕ і НАЗВУ" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "Отримання:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "Журнал:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " Внесок:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " Тема:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " Дата:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "Попередження: у внеску %s немає метаданих flatpak\n" @@ -2612,7 +2632,7 @@ msgstr "Показати адресу" msgid "Show the collection ID" msgstr "Показати ідентифікатор збірки" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "Піднабір" @@ -2668,39 +2688,39 @@ msgstr "Показати піктограму" msgid " - List remote repositories" msgstr " - Вивести список віддалених сховищ" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "Показати архітектури і гілки" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "Показати лише середовища виконання" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "Показати лише програми" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "Показати лише ті, для яких доступні оновлення" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "Обмежитися вказаною архітектурою (* для усіх)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "Показати середовища виконання" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "Розмір отриманого" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "Показати розмір отриманого" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr "" " [СХОВИЩЕ або АДРЕСА] - Показати доступні середовища виконання і програми" @@ -2831,224 +2851,231 @@ msgstr "Помилка під час перевстановлення %s: %s\n" msgid "- Repair a flatpak installation" msgstr "- Відновити встановлення flatpak" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "Вилучаємо нерозгорнуте джерело %s…\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "Пропускаємо нерозгорнуте джерело %s…\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d з %d] Перевіряємо %s…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "Тестовий запуск: " -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "Вилучаємо %s через те, що не вистачає об'єктів\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "Вилучаємо %s через некоректність об'єктів\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "Вилучаємо посилання %s через %d\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "Перевіряємо віддалені сховища...\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "Не вистачає віддаленого сховища %s для посилання %s\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "Віддалене сховище %s для посилання %s вимкнено\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "Вилучаємо об'єкти\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "Вилучаємо .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "Повторно встановлюємо посилання\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "Повторно встановлюємо вилучені джерела\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "Під час вилучення appstream %s: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "Під час розгортання appstream %s: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "Режим сховища: %s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "Індексовані резюме: %s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "true" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "false" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "Підрезюме: " -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "Версія кешу: %d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "Індексовані різниці: %s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "Назва: %s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "Коментар: %s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "Опис: %s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "Домашня сторінка: %s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "Піктограма: %s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "Ідентифікатор збірки: %s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "Типова гілка: %s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "Адреса переспрямовування: %s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "Ідентифікатор розгортання збірки: %s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "Назва засобу розпізнавання: %s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "Встановлення засобу розпізнавання: %s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "Хеш-сума ключа GPG: %s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "%zd гілок резюме\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "Встановлено" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "Отримати" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "Піднабори" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "Контрольна сума" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "Довжина журналу" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "Вивести загальну інформацію щодо сховища" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "Вивести список гілок у сховищі" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "Вивести метадані для гілки" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "Показати внески для гілки" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "Вивести інформацію щодо піднаборів сховища" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "Обмежити відомості до піднаборів із цим префіксом" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "РОЗТАШУВАННЯ - Супровід сховища" @@ -3148,11 +3175,11 @@ msgstr "Використовувати PATH замість /app програми msgid "Use PATH instead of the runtime's /usr" msgstr "Використовувати PATH замість /usr середовища виконання" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "ПРОГРАМА [АРГУМЕНТ...] - Виконати програму" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "runtime/%s/%s/%s не встановлено" @@ -3169,15 +3196,15 @@ msgstr "Сховища" msgid "Show the remotes" msgstr "Показати віддалені сховища" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "ТЕКСТ - шукати у віддалених програмах або середовищах текст" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "Має бути вказано ТЕКСТ" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "Відповідників не знайдено" @@ -3259,6 +3286,7 @@ msgstr "" "див. flatpak-pin(1):\n" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "Не знайдено невикористаного для вилучення\n" @@ -3283,6 +3311,7 @@ msgid "Warning: %s is not installed\n" msgstr "Попередження: %s не встановлено\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "Не встановлено жодне із вказаних посилань" @@ -3323,6 +3352,7 @@ msgid "With --commit, only one REF may be specified" msgstr "З --commit можна вказувати лише одну НАЗВУ" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "Шукаємо оновлення…\n" @@ -3332,28 +3362,29 @@ msgid "Unable to update %s: %s\n" msgstr "Не вдалося оновити %s: %s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "Немає що виконувати.\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "Віддалене сховище «%s» знайдено у декількох встановленнях:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "Яким скористатися (0 — перервати)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "" "Не вибрано віддаленого сховища для визначення «%s», що існує у декількох " "встановленнях" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3363,13 +3394,13 @@ msgstr "" "Підказка: скористайтеся командою flatpak remote-add для додавання " "віддаленого сховища" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "Віддалене сховище «%s» не знайдено у встановленні %s" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3378,139 +3409,130 @@ msgstr "" "Знайдено посилання «%s» у віддаленому сховищі «%s» (%s).\n" "Використати це посилання?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "Не вибрано посилання для визначення відповідників для «%s»" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "Знайдено подібні посилання для «%s» у віддаленому сховищі «%s» (%s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "Знайдено встановлене посилання «%s» (%s). Чи є воно правильним?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "Усе з наведеного вище" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "Подібні встановлені посилання, які знайдено для «%s»:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"Знайдено подібні до «%s» посилання у віддаленому сховищі «%s» (%s).\n" -"Використовувати це віддалене сховище?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "Знайдено віддалені сховища із посиланнями, подібними до «%s»:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "Не вибрано віддаленого сховища для визначення відповідників «%s»" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "Знайдено віддалені сховища із посиланнями, подібними до «%s»:" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "Оновлюємо дані appstream для віддаленого сховища користувача %s" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "Оновлюємо дані appstream для віддаленого сховища %s" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "Помилка під час спроби оновлення" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "Не знайдено віддаленого сховища «%s»" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "Неоднозначний суфікс: «%s»." #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "Можливі значення — :s[початок], :m[середина], :e[кінець] або :f[усе]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "Некоректний суфікс: «%s»." -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "Неоднозначний стовпчик: %s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "Невідомий стовпчик: %s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "Доступні стовпчики:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "Показати усі стовпчики" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "Показати доступні стовпчики" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "" "Допишіть :s[початок], :m[середина], :e[кінець] або :f[усе], щоб змінити " "доповнення" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "Потрібне для %s (%s) середовище виконання виявлено у сховищі %s\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "Хочете встановити його?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "Потрібне для %s (%s) середовище виконання виявлено у таких сховищах:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "Який з пакунків встановити (0 — перервати)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "Налаштовуємо %s як нове віддалене сховище «%s»\n" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3522,7 +3544,7 @@ msgstr "" "Хочете зберегти віддалено сховище для наступних встановлень?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3533,126 +3555,126 @@ msgstr "" " %s\n" "Налаштуйте як нове сховище «%s»" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "Встановлюємо…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "Встановлюємо %d з %d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "Оновлення…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "Оновлюємо %d з %d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "Вилучаємо…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "Вилучаємо %d з %d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "Інформація: %s було пропущено" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, c-format msgid "Warning: %s%s%s already installed" msgstr "Попередження: %s%s%s вже встановлено" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, c-format msgid "Error: %s%s%s already installed" msgstr "Помилка: %s%s%s вже встановлено" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, c-format msgid "Warning: %s%s%s not installed" msgstr "Попередження: %s%s%s не встановлено" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, c-format msgid "Error: %s%s%s not installed" msgstr "Помилка: %s%s%s не встановлено" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "Попередження: %s%s%s потребує новішої версії flatpak" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "Помилка: %s%s%s потребує новішої версії flatpak" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" msgstr "Попередження: для завершення дії на диску недостатньо вільного місця" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" msgstr "Помилка: для завершення дії на диску недостатньо вільного місця" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, c-format msgid "Warning: %s" msgstr "Попередження: %s" -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, c-format msgid "Error: %s" msgstr "Помилка: %s" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, c-format msgid "Failed to install %s%s%s: " msgstr "Не вдалося встановити %s%s%s: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, c-format msgid "Failed to update %s%s%s: " msgstr "Не вдалося оновити %s%s%s: " -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, c-format msgid "Failed to install bundle %s%s%s: " msgstr "Не вдалося встановити пакунок %s%s%s: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, c-format msgid "Failed to uninstall %s%s%s: " msgstr "Не вдалося вилучити %s%s%s: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "Для доступу до віддаленого сховища «%s» слід пройти розпізнавання\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "Відкрити браузер?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "Для входу до сховища %s потрібне ім'я користувача (область %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "Пароль" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, c-format msgid "" "\n" @@ -3663,7 +3685,7 @@ msgstr "" "Інформація: строк супроводу (пришпиленого) середовища виконання %s%s%s, " "гілка %s%s%s, завершено, його замінником є %s%s%s, гілка %s%s%s\n" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, c-format msgid "" "\n" @@ -3674,7 +3696,7 @@ msgstr "" "Інформація: строк супроводу середовища виконання %s%s%s, гілка %s%s%s, " "завершено, його замінником є %s%s%s, гілка %s%s%s\n" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, c-format msgid "" "\n" @@ -3686,7 +3708,7 @@ msgstr "" "замінником є %s%s%s, гілка %s%s%s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, c-format msgid "" "\n" @@ -3696,7 +3718,7 @@ msgstr "" "Інформація: строк супроводу (пришпиленого) середовища виконання %s%s%s, " "гілка %s%s%s, завершено, причина:\n" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, c-format msgid "" "\n" @@ -3706,7 +3728,7 @@ msgstr "" "Інформація: строк супроводу середовища виконання %s%s%s, гілка %s%s%s, " "завершено, причина:\n" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, c-format msgid "" "\n" @@ -3716,90 +3738,88 @@ msgstr "" "Інформація: строк супроводу програми %s%s%s, гілка %s%s%s, завершено, " "причина:\n" -#: app/flatpak-cli-transaction.c:947 +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" msgstr "Інформація: програми, що використовують це розширення:\n" -#: app/flatpak-cli-transaction.c:949 +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" msgstr "Інформація: програми, що використовують це середовище виконання:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "Замінити?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "Оновлюємо до перенесеної версії\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "Не вдалося перенести %s на %s: " -#: app/flatpak-cli-transaction.c:1009 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "Не вдалося вилучити %s для перенесення на %s: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, c-format msgid "New %s%s%s permissions:" msgstr "Нові права доступу %s%s%s:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, c-format msgid "%s%s%s permissions:" msgstr "Права доступу %s%s%s:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "Попередження: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Дія" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "частка" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "Продовжити із цими змінами у встановленому користувачем?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "Продовжити із цими змінами у встановленому загальносистемно?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "Продовжити із цими змінами у %s?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "Внесення змін завершено." -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "Вилучення завершено." -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "Встановлення завершено." -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "Оновлення завершено." #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "Сталася одна або декілька помилок" @@ -4111,7 +4131,7 @@ msgstr "" "допомогою змінної середовища XDG_DATA_DIRS, отже, програми, встановлені " "Flatpak можуть не з'явитися на вашій стільниці, аж до перезапуску сеансу." -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." @@ -4120,29 +4140,29 @@ msgstr "" "sudo для роботи із встановленими для користувача пакунками або скористайтеся " "оболонкою root для роботи з встановленими root пакунками користувача." -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "" "Вказано декілька встановлень для для команди, яка працює для одного " "встановлення" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "Див. «%s --help»" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "«%s» не є командою flatpak. Можливо, ви мали на увазі «%s%s»?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "«%s» не є командою flatpak" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "Команду не вказано" @@ -4205,16 +4225,16 @@ msgstr "Попередження: не вдалося вилучити %s: %s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "Помилка: не вдалося вилучити %s: %s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s вже встановлено" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s не встановлено" @@ -4243,59 +4263,55 @@ msgstr "Інформація: термін підтримки %s сплив, п msgid "Failed to rebase %s to %s: %s\n" msgstr "Не вдалося перенести %s на %s: %s\n" -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "Не вдалося вилучити %s для перенесення на %s: %s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "Для віддаленого сховища «%s» не налаштовано способу розпізнавання" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "Невідомий тип спільного ресурсу %s, коректними типами є такі: %s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "Невідомий тип правил %s, коректними типами є такі: %s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "Некоректна назва D-Bus, %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "Невідомий тип сокета, %s, коректними типами є такі: %s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "Невідомий тип пристрою, %s. Коректними типами є %s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "Невідомий тип можливості %s, коректними типами є такі: %s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "Розташування файлової системи «%s» містить «..»" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" "--filesystem=/ є недоступним, скористайтеся --filesystem=host, щоб отримати " "той самий результат" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4304,186 +4320,220 @@ msgstr "" "Невідоме розташування файлової системи, %s, коректними розташуваннями є " "такі: host, host-os, host-etc, home, xdg-*[/…], ~/dir, /dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "Некоректне форматування середовища, %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "У змінній середовища не повинно бути символу «=»: %s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -"Аргументи --add-policy має бути записано у такому форматі: ПІДСИСТЕМА." -"КЛЮЧ=ЗНАЧЕННЯ" +"Аргументи --add-policy має бути записано у такому форматі: " +"ПІДСИСТЕМА.КЛЮЧ=ЗНАЧЕННЯ" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "Значення --add-policy не можуть починатися з «!»" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "" -"Аргументи --remove-policy має бути записано у такому форматі: ПІДСИСТЕМА." -"КЛЮЧ=ЗНАЧЕННЯ" +"Аргументи --remove-policy має бути записано у такому форматі: " +"ПІДСИСТЕМА.КЛЮЧ=ЗНАЧЕННЯ" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "Значення --remove-policy не можуть починатися з «!»" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "Надати спільний доступ вузлу" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "СПІЛЬНИЙ РЕСУРС" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "Скасувати надання спільного ресурсу вузлу" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "Відкрити сокет програмі" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "СОКЕТ" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "Не відкривати сокет програми" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "Відкрити пристрій програмі" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "ПРИСТРІЙ" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "Не відкривати пристрій програмі" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "Увімкнути можливість" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "МОЖЛИВІСТЬ" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "Вимкнути можливість" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "Відкрити файлову систему програмі (:ro — лише для читання)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "ФАЙЛОВА_СИСТЕМА[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "Не відкривати файлову систему програмі" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "ФАЙЛОВА СИСТЕМА" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "Встановити змінну середовища" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "ЗМІННА=ЗНАЧЕННЯ" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "" "Прочитати змінні середовища у форматі env -0 з файла із вказаним дескриптором" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "ДФ" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "Вилучити змінну з середовища" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "ЗМІННА" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "Дозволити програмі бути власником назви на каналі сеансу" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "НАЗВА_DBUS" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "Дозволити програмі обмінюватися даними з назвою на каналі сеансу" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "Заборонити програмі обмінюватися даними з назвою на каналі сеансу" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "Дозволити програмі бути власником назви на каналі системи" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "Дозволити програмі обмінюватися даними з назвою на каналі системи" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "Заборонити програмі обмінюватися даними з назвою на каналі системи" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "Дозволити програмі бути власником назви на каналі системи" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "Додати параметр загальних правил" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "ПІДСИСТЕМА.КЛЮЧ=ЗНАЧЕННЯ" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "Вилучити параметр загальних правил" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "Не змінювати підшлях домашнього каталогу" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "НАЗВА ФАЙЛА" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "Не змінювати підшлях домашнього каталогу" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "Не вимагати запущеного сеансу (без створення cgroup)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4492,429 +4542,426 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, fuzzy, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "Не вдалося створити тимчасовий каталог у %s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "Налаштованого ідентифікатора збірки «%s» немає у файлі резюме" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "Не вдалося завантажити резюме з віддаленого сховища %s: %s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "Немає такого джерела «%s» у сховищі %s" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 -#, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 +#, fuzzy, c-format +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "Немає запису %s у кеші flatpak резюме сховища «%s»" -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "Немає резюме або кешу Flatpak для сховища %s" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "Немає запису %s у кеші резюме сховища «%s»" - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "Не вистачає xa.data у резюме для віддаленого сховища %s" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "Непідтримувана версія резюме, %d, для віддаленого сховища %s" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "У покажчику віддаленого OCI немає адреси реєстру" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "Не вдалося знайти посилання %s у віддаленому сховищі %s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "Образ не є маніфестом" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "" "У внеску немає потрібного посилання «%s» у метаданих прив'язки до посилань" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "Налаштованого ідентифікатора збірки «%s» немає у метаданих прив'язки" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "" "Не вдалося знайти останню контрольну суму для %s у віддаленому сховищі %s" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "Немає запису %s у розрідженому кеші flatpak резюме сховища %s" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "Метадані внеску для %s не відповідають очікуваним метаданим" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "Не вдалося встановити зв'язок із системним каналом даних" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "Встановлення для користувача" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "Встановлення системи (%s)" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "Не знайдено перевизначень для %s" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "%s (внесок %s) не встановлено" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "" "Помилка під час спроби обробити загальносистемний файл flatpakrepo для %s: %s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "Під час спроби відкрити сховище %s: " -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "Ключ налаштування %s не встановлено" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" msgstr "Жоден з поточних взірців %s не відповідає %s" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "Немає внеску appstream для розгортання" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "" "Отримання даних з віддаленого сховища без довіри і перевірки gpg неможливе" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "" "Для локальних встановлень у системі без перевірки gpg не передбачено " "підтримки додаткових даних" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "Некоректна контрольна сума для адреси додаткових даних %s" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "Порожня назва для адреси додаткових даних %s" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "Непідтримувана адреса додаткових даних %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "Не вдалося завантажити локальні додаткові дані %s: %s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "Помилковий розмір додаткових даних %s" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "Під час спроби отримання %s: " -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "Помилковий розмір додаткових даних %s" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "Некоректна контрольна сума додаткових даних, %s" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "%s, внесок %s вже встановлено" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "Під час отримання %s з віддаленого сховища %s: " -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "" "Знайдено підписи GPG, але жоден із них не зберігається у сховищі надійних " "ключів" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "Внесок для «%s» не має прив'язки до сховищ" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "Внесок для «%s» не перебуває у межах очікуваних сховищ: %s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "Поточними можна робити лише програми" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "Не вистачає пам'яті" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "Не вдалося виконати читання з експортованого файла" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "Помилка під час читання файла xml типу MIME" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "Некоректний файл xml типу MIME" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "Файл служби D-Bus «%s» має помилкову назву" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "Некоректний аргумент Exec, %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "Під час спроби отримання від’єднаних метаданих: " -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "У від’єднаних метаданих немає додаткових даних" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "Під час створення каталогу додаткових даних: " -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "Некоректна контрольна сума додаткових даних" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "Помилковий розмір додаткових даних" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "Під час записування файла додаткових даних «%s»: " -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "У від’єднаних метаданих немає додаткових даних %s" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "Помилка скрипту apply_extra, стан виходу %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "" "Встановлення %s заборонено правилами, які встановлено адміністратором вашої " "системи" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "Під час спроби визначити посилання %s: " -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s недоступний" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "Не вдалося створити каталог розгортання" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "Не вдалося прочитати внесок %s: " -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "Під час спроби вивантаження %s до %s: " -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "Під час спроби вивантаження підшляху метаданих: " -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "Під час спроби отримати підлеглий шлях «%s»: " -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "Під час спроби вилучення наявного додаткового каталогу: " -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "Під час спроби застосування додаткових даних: " -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "Некоректне посилання на внесок %s: " -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "Розміщене джерело %s не відповідає внеску (%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "Гілка розміщеного посилання %s не відповідає внеску (%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "Гілку %s %s вже встановлено" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "Не вдалося демонтувати файлову систему revokefs-fuse у %s: " -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "Цю версію %s вже встановлено" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "Не можна змінювати сховище під час встановлення пакунка" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "Не вдалося оновитися до вказаного внеску без прав доступу root" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "Не вдалося вилучити %s: цей запис потрібен для %s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s, гілка %s не встановлено" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "%s, внесок %s не встановлено" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "Не вдалося спорожнити сховище: %s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "Не вдалося завантажити фільтр «%s»" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "Не вдалося обробити фільтр «%s»" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "Не вдалося записати кеш резюме: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "У кеші немає резюме oci для віддаленого сховища «%s»" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "Немає кешованого резюме для віддаленого сховища «%s»" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "" "Некоректна контрольна сума для індексованого резюме %s, яке прочитано з %s" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " @@ -4923,248 +4970,277 @@ msgstr "" "Список віддалених сховищ для %s є недоступним. На сервері немає файла " "резюме. Перевірте, чи правильно вказано адресу, яку передано remote-add." -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "" "Некоректна контрольна сума для індексованого резюме %s для віддаленого " "сховища «%s»" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "" "Доступними є декілька гілок %s, вам слід вказати одне з таких значень: " -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "Немає відповідників %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "Не вдалося знайти посилання %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "Помилка під час пошуку у віддаленому сховищі %s: %s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "Помилка під час пошуку у локальному сховищі: %s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s не встановлено" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "Не вдалося знайти встановлення %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "Некоректний формат файла, немає групи %s" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "Некоректна версія %s, передбачено підтримку лише версії 1" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "Некоректний формат файла, не вказано %s" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "Некоректний формат файла, ключ gpg є некоректним" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "Визначення ідентифікатора збірки потребує надання ключа GPG" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "Середовище виконання %s, гілка %s вже встановлено" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "Програму %s, гілка %s вже встановлено" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "" "Неможливо вилучити віддалене сховище «%s», оскільки (принаймні) встановлено " "сховище %s" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "Некоректний символ, «/», у назві віддаленого сховища: %s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "Не вказано налаштувань для віддаленого сховища %s" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "Пропускаємо вилучення посилання на дзеркало (%s, %s)…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, fuzzy, c-format msgid "Unable to open path \"%s\": %s" msgstr "Не вдалося оновити %s: %s\n" -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, fuzzy, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "Не вдалося створити файл %s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, fuzzy, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "Не вдалося оновити символічне посилання %s/%s" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "Порожній рядок не є числом" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "«%s» не є додатним числом" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "Число «%s» не належить до діапазону [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "Сховище %s не встановлено" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "Програму %s не встановлено" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "Запис віддаленого сховища «%s» вже існує" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "Як і було наказано, лише отримали %s, без встановлення" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "Не вдалося створити каталог %s" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "Не вдалося заблокувати %s" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "Не вдалося відкрити каталог «%s»" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "Не вдалося створити тимчасовий каталог у %s" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "Не вдалося створити файл %s" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "Не вдалося оновити символічне посилання %s/%s" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "Передбачено підтримку лише розпізнавання Bearer" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "У запиті щодо розпізнавання вказано лише область" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "У запиті щодо розпізнавання вказано некоректну область" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "Помилка під час спроби уповноваження: %s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "Помилка при авторизації" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "" "Неочікуваний стан відповіді %d під час надсилання запиту щодо ключа: %s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "Некоректне відповідь на запит щодо розпізнавання" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "Некоректне форматування файла різниці" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "Не знайдено ключа gpg із ідентифікатором %s (домашній каталог: %s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, c-format msgid "Unable to lookup key ID %s: %d" msgstr "Не вдалося знайти ключ із ідентифікатором %s: %d" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "Помилка у внеску підписування: %d" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "Некоректне налаштування образу OCI" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "Помилкова контрольна сума шару, мало бути %s, маємо %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "Не вказано сховища для образу OCI %s" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "Вказано помилкове сховище (%s) для образу OCI %s, мало бути %s" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5185,315 +5261,368 @@ msgstr "Отримуємо додаткові дані: %s з %s" msgid "Downloading files: %d/%d %s" msgstr "Отримуємо файли: %d з %d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "Назва не може бути порожньою" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "Назва не може бути довшою за 255 символів" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "Назва не може починатися з крапки" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "Назва не може починатися з %c" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "Назва не може завершуватися крапкою" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "Містити «-» може лише останній сегмент назви" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "Назва сегмента не може починатися з %c" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "Назва не може містити %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "У назві має бути принаймні 2 крапки" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "Архітектура не може бути порожньою" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "Архітектура не може містити %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "Гілка не може бути порожньою" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "Гілка не може починатися з %c" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "Гілка не може містити %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "Посилання є надто довгим" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "Некоректна назва віддаленого сховища" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s не є програмою або середовищем виконання" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "Помилкова кількість компонентів у %s" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "Некоректна назва %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "Некоректна архітектура: %.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "Некоректна назва %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "Некоректна архітектура: %s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "Некоректна гілка: %s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "Помилкова кількість компонентів у частковому посиланні %s" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr " платформа для розробки" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr " платформа" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr " основа для програм" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr " дані для діагностики" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr " початковий код" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " переклади" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr " документація" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "Некоректний ідентифікатор %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "Помилкова назва віддаленого сховища: %s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "Не вказано адреси" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "" "Якщо встановлено ідентифікатор збірки, має бути увімкнено перевірку за GPG" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "Не вдалося відкрити файл інформації щодо програми" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "Немає джерел додаткових даних" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "Не вдалося створити канал синхронізації" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "Некоректний %s: пропущено групу «%s»" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "Не вдалося виконати синхронізацію із проміжним D-Bus" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "Некоректний %s: пропущено ключ «%s»" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "Некоректний ключ gpg" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "Помилка під час копіювання піктограми 64x64 для компонента %s: %s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "Помилка під час копіювання піктограми 128x128 для компонента %s: %s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "Строк підтримки %s минув, ігноруємо для appstream" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "Немає даних appstream для %s: %s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "Некоректний пакунок, немає сховища у метаданих" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "Збірка «%s» пакунка не відповідає збірці «%s» віддаленого сховища" -#: common/flatpak-run.c:2207 +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "Метадані у заголовку і програмі є несумісними" + +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "Немає доступного сеансу користувача systemd, cgroups є недоступними" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "Не вдалося розмістити у пам'яті ідентифікатор екземпляра" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "Не вдалося відкрити файл flatpak-info: %s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "Не вдалося відкрити файл bwrapinfo.json: %s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "Не вдалося записати дескриптор файла до ідентифікатора екземпляра: %s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "Не вдалося ініціалізувати seccomp" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "Не вдалося додати архітектуру до фільтра seccomp: %s" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "Не вдалося додати архітектуру multiarch до фільтра seccomp: %s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, c-format msgid "Failed to block syscall %d: %s" msgstr "Не вдалося заблокувати системний виклик %d: %s" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, c-format msgid "Failed to export bpf: %s" msgstr "Не вдалося експортувати bpf: %s" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "Не вдалося відкрити «%s»" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "Помилка ldconfig, стан виходу %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "Не вдалося відкрити створений ld.so.cache" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "" "Запуск %s заборонено правилами, які встановлено адміністратором вашої системи" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" "«flatpak run» не призначено для запуску як «sudo flatpak run», скористайтеся " "замість цього «sudo -i» або «su -l» і викличте «flatpak run» з нової " "командної оболонки" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "Не вдалося перенести з %s: %s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "Не вдалося перенести каталог даних старої програми %s до нового %s: %s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "Не вдалося створити символічне посилання під час перенесення %s: %s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "Не вдалося відкрити файл інформації щодо програми" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "Не вдалося створити канал синхронізації" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "Не вдалося виконати синхронізацію із проміжним D-Bus" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "Попередження: проблема під час пошуку пов’язаних посилань: %s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "Програма %s потребує середовища виконання %s, яке не знайдено" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "Програма %s потребує середовища виконання %s, яке не встановлено" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "Не вдалося вилучити %s, оскільки цей запис потрібен для %s" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "Сховище %s вимкнено, ігноруємо оновлення %s" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s вже встановлено" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "%s вже встановлено із віддаленого сховища %s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "Некоректний .flatpakref: %s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "Помилка під час оновлення метаданих сховища для «%s»: %s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " @@ -5502,55 +5631,55 @@ msgstr "" "Попередження: вважаємо помилку отримання даних віддаленого сховища " "некритичною, оскільки %s вже встановлено: %s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "Не встановлено засобу розпізнавання для віддаленого сховища «%s»" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "Не вдалося отримати ключі для посилання: %s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "Не вдалося отримати ключі для посилання" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "Посилання %s з %s відповідає декількома діям з перенесення" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" msgstr "будь-яке віддалене сховище" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "Не знайдено операції для посилання %s з %s" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "" "Адреса Flatpakrepo %s не є ні файлом, ні адресою HTTP, ні адресою HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "Не вдалося завантажити залежний файл %s: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "Некоректний .flatpakrepo: %s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "Операцію вже виконано" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." @@ -5559,16 +5688,16 @@ msgstr "" "Виконання таких дій може призвести до помилок у визначенні власника об'єктів " "та прав доступу." -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "Перервано користувачем" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "Пропускаємо %s через попередню помилку" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "Перервано через критичну помилку (%s)" @@ -5615,137 +5744,113 @@ msgstr "Порт «%.*s» в адресі не належить до припу msgid "URI is not absolute, and no base URI was provided" msgstr "Адреса не є абсолютною, і не вказано базової адреси" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "Вираз-замінник не може відповідати програмам" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" +msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "Порожній вираз-замінник" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "Забагато аргументів у виразі-заміннику" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "Некоректний ідентифікатор %s: %s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" -msgstr "Некоректний символ у виразі-заміннику, «%c»" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" -msgstr "Пропущено вираз-замінник у рядку %d" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" -msgstr "Зайвий текст наприкінці рядка %d" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "у рядку %d" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "Неочікуване слово «%s» у рядку %d" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "Некоректний %s: пропущено групу «%s»" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "Некоректний %s: пропущено ключ «%s»" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "Некоректний ключ gpg" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "Немає джерел додаткових даних" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "Помилка під час копіювання піктограми 64x64 для компонента %s: %s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "Помилка під час копіювання піктограми 128x128 для компонента %s: %s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "Строк підтримки %s минув, ігноруємо для appstream" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "Вираз-замінник не може відповідати програмам" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "Немає даних appstream для %s: %s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "Порожній вираз-замінник" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "Некоректний пакунок, немає сховища у метаданих" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "Забагато аргументів у виразі-заміннику" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "Збірка «%s» пакунка не відповідає збірці «%s» віддаленого сховища" - -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "Метадані у заголовку і програмі є несумісними" +msgid "Invalid glob character '%c'" +msgstr "Некоректний символ у виразі-заміннику, «%c»" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "Некоректне налаштування образу OCI" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "Пропущено вираз-замінник у рядку %d" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "Помилкова контрольна сума шару, мало бути %s, маємо %s" +msgid "Trailing text on line %d" +msgstr "Зайвий текст наприкінці рядка %d" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "Не вказано сховища для образу OCI %s" +msgid "on line %d" +msgstr "у рядку %d" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "Вказано помилкове сховище (%s) для образу OCI %s, мало бути %s" +msgid "Unexpected word '%s' on line %d" +msgstr "Неочікуване слово «%s» у рядку %d" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "Некоректний аргумент require-flatpak, %s" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s потребує новішої версії flatpak (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "Порожній рядок не є числом" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "«%s» не є додатним числом" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "Число «%s» не належить до діапазону [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "Не є віддаленим сховищем oci, не вистачає summary.xa.oci-repository" @@ -5758,44 +5863,48 @@ msgstr "Не є віддаленим сховищем OCI" msgid "Invalid token" msgstr "Некоректний ключ" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "Не виявлено підтримки порталу" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "Заборонити" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "Оновлення" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "Оновити %s?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "Програма хоче оновити саму себе." -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "" "Параметри доступу до оновлення може бути будь-коли змінено за допомогою " "налаштувань конфіденційності." -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "Оновлення програми заборонено" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "" "Підтримки самостійного оновлення не передбачено. Нова версія потребує нових " "прав доступу." -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "Результати оновлення є неочікуваними" @@ -6022,3 +6131,27 @@ msgid "" msgstr "" "Для встановлення програмного забезпечення, доступ до якого обмежено вашими " "правилами батьківського контролю, слід пройти розпізнавання" + +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "Знайдено подібні до «%s» посилання у віддаленому сховищі «%s» (%s).\n" +#~ "Використовувати це віддалене сховище?" + +#, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "Немає запису %s у кеші резюме сховища «%s»" + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "Не вдалося вилучити %s для перенесення на %s: " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "Не вдалося вилучити %s для перенесення на %s: %s\n" + +#, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "Не вдалося відкрити каталог «%s»" diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo deleted file mode 100644 index e2d4d782a83dbce3defe25846e2eaf2dd2d76ade..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 97979 zcmdR%cVHD&8n-VBQY>Hr6cq-fN)iM`A&L+nK%^ul!2+VB+`yG2H|8clu=iee?FHA~ z>sr^c>bll-UAwM*t!rJ|+ROL+&Ut6<+$5m;eSdvdhiA??@9FQUb7u1TCSA`=@H?Vw zBC!?B8=6RTUoVl^WtMCciM zI37L%1NakEd;^m{z2l(lr^8_|3H!hkq2j#&_JcP=|5v4H63n` zxf+gyXTfdYeQ+v#8!BJJmv~Nt%GY8Tz(e66coEzc-VYVdFK{*-xipa|f-O+>aXZX| zZ^7+g?^Gf&1Wtj&VU3wjF!S|rUF@HOW8h0r@%Px@=W7J)hItYk2B*QHFa^89Q=s(Y zbSQnf6s`yFgR0Mmp~~qwsC>T-<-hwfU;lYf?mNQGVKLkS?h92eE8$#tCR9DV4M)PS z;0U;Nz0Yqk9F4gdD&7m>D0m(04qt$(zt^Gk;!CJ}uit=f!QN2rW1-4v1}ugRaD8|S zR66g2DxW8z^8X2x{(J$Y2kSK^5}UxS;0ACEl>07F`71N`l(`=S)lQB#`}3jVy8)`) z?}9tP`=Rvczfk%4K?ivEz2J73 zkA;)roiHDMYxcvNy?IZl@;@4?o!tOco{vG5-@l;B;cGK*kn#B*3{|g%P~ld>ZQ&7c zQ+Pd8c|HK8KMzBd*WY0;_#WI8eh%f{t;NT)0aW}$pwd$aH-z({>b(X^-uFHs zbO$ViFT;&t-&U^&BcS}3K>6R(xF1x!OW-E35pE9;htjj#pz7@nsCxehNQ#I2I0A;q`D1?2UOLRJ&XTC&J&sJoq=* z2Yzepxzg9$0H}OVgUZh#Q0?+)sD9>ZsPcFW?gC$do59W7e0$A@DxaO8>aiHAJTh=L zJO-*9o`D;|*NvY*mFJI8<&;v!a~dlA%c1K3Q7C_(LFsq@Lwq{7f@B%8b`g$2udwLQMfNw$R(@$o<;bC5H z2Sd3}hRV+Z;}KBdUjw&*H$v&>V^Hn-2dI1vKit>HIH>$ggM;91aC5jnRJk7srAOyL z`MVaXpSc4n{x_lO;RmRA3XbsUUknvq3sieN11f)y!olzhsPt@hq~!w+#Js@FZBXHz zVfGJ0mGisizQIvmPe#DL*zXFrft7G;xDqP9v!K#@Ka?JP099Utj`r!C3Ae($5URXZ zLZ$EbP~~td><|AA72dm0deHkA-`+NdJuwf5ig!DxdY=as@BUEbcRG~Z6~>#O+Us3V z{rjU({poiwfL)LE=^6$V|5T`Uu>h+58~~*!M?$sRv!VKz%b?2fX{dVn3`%~R<9s~h zVFBhkGoJ}nPY*-Y=X-D{>~g%%&v2-6m=4u%EP|t9z408Va{DVB0$+#ff4ZFD>vs%P zxh#On?@B1WItD7e=bQOaxGm<_U@zF?L|?C)LfMakY6q2Y1gwSA;7M>ed~*sDUkt}! zu7xV6GvF|IJsb_6h0@DkpyJ==6koqnpvt=nD*XpRmD8ngSNH&weBxB^zBN?6Oo#H9 zg3^nlpwe{#l-}KE=2whAL&*<5&Fl3pP;&c1<$sm&TsR8zoiGo+1*I3gf9LZv2C7}m zhkf7*sB|9(*Mm1grT=!Q_@0BRxBozu!+_uWeqaVvzrPC3hPOh6r^STg-59F;c7@7U zEmZj(3pa+>Lbc<2;ZE>NxCja#kWS6OMo?uQcom&w|p= z^WiLbIh+eWg{s$G&i3+^a5KyYLY3obQ000L+yuT4RiEEOl~=!We7`Ue_QO0Ej)b*P z^?Nc@cz3`t@Cm5$`4KAr!MVPiCPUTt-o^u=^1m9Yey@WH{}H$WeBI0+L6yfk=lT5g zfy(~?DF4+^?dt%zDLlyRPlMAj{{hPXJ5c5P1yp_g09Bt`p6~NH5eAs|fhyO7VSjiT z+#KFxeBSseRC>E#;PXEaPQkoA906OP!oL9ag?B;8KLu5;??aViuhl+1+e6t`K*hft z?gUrE9pLj&>FIT$k8cRv0`pE#;qPwdB~b19a2UWV%=`#cd>_LtVc$Ra{%9;zJ1Bw* zuL3H(2B>@-301Dwn)yC6zYkT+eK31@jSbK70_WJhr&R=VN!M^sRye;3aTZcrVO{KSI^}wwHQ6nE+M) zGojqe;6Qi?+y<_ODwhYK%KtSu1a`g5=VJs^In05QTMXszAgFq|2&&(?)9fFElKTXz ze0pB)>unGmig^d)-ca>&2vj&%8t;Rumlxp__yLr^ZLje4R0`E@Q*e8DhS@&~cgFk{ z+!GGG(&uA29ESN^sPexLD&AM2>Y>|JKEAPVBIapO`8^ma{l9~fyAmp#XQ9&j9UKWa zzS^@84#HdmC&44(c=!OE3%`NGVevJ-|EPzPF`osMj~AfQ*Xvr}uZ@6%G3OcQ!4a67 zU?DsQs$D$`mCg@g516>l`|k;rkBy+xIRr{>HdH)SQ0@B=D1A8F+;4}YFh2nU_%&3% z`(N+d^(5m$I2!vlxGlUKD!orZ^^0FX#oPS`Z@(Q>`If_ccoJ0k+yy278B{%YyV0j} zTc~tQflBB8Q299$O5e_gitj3@^gRyMjz5Ev>vfZ_r-4xM?Fc1b3%7&Ez}fH)DF5r; z?AyyIxHaYpQ1!A0oB&UNs`m$BANUGX{ysKy-#>c!;ZWf(fE&XT;f8QEEP&TSwXc`q zMwKMtLCtMB(Nh0>>&U~l*>RK4}M&6mqCxIX4msCrlk*MrAG>BT9=%V96f z_duol5vX#02`b+|LFwx@xBK#|f^t6)%KaiUKMWQBM^NR{;|{;SHyo;dQg9u31XO;H zhTY-mQ0Y3~%$Gp*Th~D8^FvVe^9fYETi)s0@f6q<^FdJI91hoo$3yA)$!33+nJa3!vL;;3g;ZSHM|8%kDi7B{2DgG{(oVu29JSipPxXL z!@vi9Jj0>NqXKRT8{k&(c;gjtFy;rL()lh_dHeta*ypcaek@eE%!9IDXgmli+|_U+ z_$R1zJPHfocTnMue8_WG7+|i1Lt!f%0?&ie*L&eM@G~eq+3aCou9Kk3s|>pOf<>4Q zfy(dwQ2PHUR64$d{op!}czxXhu8VmH>;{L!^z&Phy4lY*a|KlYy8w2D zjZp0)1J#e64y7NLLh13_Q2oUZQ2Fcms84?$RQ(r2m0L4Z{hk69&UJ7Hcn=%{KZnEN z;K#iCEGYTCp!&V#P~~wf91JgjDyKg~<^M&fdixZrzxV-4AG*^?tA8B~70z6!dfFE% z{Vh=GISDG93!vm~feP=hQ2Bcr_JnUhrSk)*dhhc$pU%lp_KTq8k23xqDjgR=)z@86 z?dUN$8omk@Pmd>jy89XjL!~1hD!;qJ9&j;K{iNUq@L;n)0V;i`!x3;b90(tRDyMg# z^zA3(;J&f*9wRZ;PvRfG9Q#9=he73I7pVSiKHLBsq2Hxa5lN?{+^2<87!D7`!z%KbJdy?@Tk-@t7#_j}sU zJBpy{Zxzgg7r+2M1~-HsLZ#zdV~=NixSPZ6u-^%)e_RR`?~!J{7|P#0P z)!yHL-Qjys`TG>A{C> z0{eGi5uEs(U(Xx}rH6Mx^}}z$aqt(jANM?cGv)HwN~Cr7furD=Q2DwKs=Yl8 zH-(=-`S0?wA3p}boiI;^ihl)^{+tc-;pJw27Rvv>pvIm5LWMuz6|cv6Q2IT|%oR|2 zR0~xOEpPxl7D^v3fhy-GVLkl8?3cdk^K%B2+ z_svlC@H$jF*8P`{XEf}Od3PxL6jb=XgM;A>Q2O~4RQ%7w&EWe`dif(%`$)Xy&Few6 z(_XMU+|0NYRR1s(s{Q3d#kUyl2#?QkS~ z3o4xT-(k)Ir$V*Q)8S;fn|a8)eqZYVI0gILVIBMiN`Lo#k2V2Mg0=7iSOMp~@9Xmt zxC7?9;c)mFR6X_ow>M9P(t{Kn0*{2!k1OC{crR4?-!St}#z7x=`64(B_gbj@onXA( z_!bPX-{?bMpJSlPsS*~z!;LpV7Y|f<{{%8>RzvCc;ZX6M2S>v@;ZXPvoCJG*f=cG!^Jf}jLZ!|t=d=bjuM{r-b(HB0x2B`d>1l9iUgz870gi7Zd#t)&=|6e#4 z4*Al%H^Hfx4}^;M&u~NdjPXs_9rLHguc5;I*~~q^^8L}q#=-Cs+{Z%oE6+jY|36Ur z_@i;t|9bPb#v&-Wy`ah|X*?B5KmG)z$DcvTZSu8`cMz2Q7$|?cL%AOar6Y4F3w%j$VNI@FysJ8vTuLw+54TD1Qx5_9w#r@H#jV z{uL^opP}??*mwRpMLkq{uZGggXQA}>XQ=#a^S$rCi=phRp!Dk)DE+(~O3$x@lK&7Y zpBwz(^FIhG+&tr+Q2vg9Du?6Y0C=w1-wIW3cbog8umJN*P~mj{(Yud>if1zH3(Mi= zaH;WdScv&NsPLYL+rzhv{eJT0y_<0*l-w0?1iS?*eXl^((?@V?_!Ct6xBS_+lOb?Z z%u~(02b_a>IaGKLLWT1b+!DSC<^M;h^soDiPk%osbDnXs*_T6=`%<$%*?5uh7URRl zf5M)~e+;EhUmJ%ey14kuq1tI9lwO?&2f_!T;(5#1y^FWcgDUsgQ0;R$l-!?S0AGjl z|BKlVT&GJydN2*jUlPjwG^ldD5vm+sG=2$Hf4$fB90pYmJ45O3JSh1(DE~)5g?9~9 z|L_=8dA?|T9m@Z^X8slin13;I(AB$-fQq*eZUM{8et)R)JJ{@xg6r$Vp52Xm8TW%qR~_6Dwn5d;O;CFBI+Xv9pvvz%D1F{?J#XFtO8@qN z%6|(~xtwmi(fBtg|L+@ncK7KW4b>mlLg{lW91f3#8kcT>%GdW$a@+UtoDKub^P$qa z94dd8L8aqbsPcOpsyyC-GvHTH<+gLrF0S9+3o4(B;Wn@Vsyu!NC&A00%Ka^~|Je8o zRD7HC^8UAgG7pCeCm-$rcZa*eW1#wrhoJQ3E2wz3THlxF7^rw=L8Yf0D!l!ms~@-# z<~FGEI1Y}74?wk>Z=m#Mn+?4DMB^MN`~Bc%uoWs_CqRvtkHS*;5mYhle#_VoiC4ug$+`es6F!OTb!BF8I1&iTDQ1QJ7mEZoo zySVXTTd4HcLY2oVsQ38)LcOg`~_nY}ssC@R>)a%a}DD$3B`B@I-?|dkK_d=!PBPh8poB8q%pzL>nimx2X ze>Ifcu~7PX1ynds!twA&sQMb$*ZZFbm5*BE!BFGnSy18LZ1xX8>DkLr<@*yv3ZkVBQj{AK3+tf(xMZ^(d(NJ{QXWrEo)d4b*)6PPjgN-OL|CrK?YWUmv5O^kQeI ze9wa}-B9T~7%HD9LzUm%P~*dEupjKPc^9|-83e~*-W{r49}d;dZ-;~6%P@f7LzU;2 zTln&r0u|3fDF4f#{GSh%j;El?{R3l<0bSfYbOe-rB~-tcfs#K8j)kkC>f;|!@qGkU zPJOoY`5XY1ukE1nzb{n24uCtu3!w7*5?lv<4_*DhUYNUX<;}gJ($Npf|9GhQ7DI)5 zG*rCjK-KFdQ0?GGsQf+vhr`d|1i1OuKHlA-!plIF^Mz31-e&eML)CA$fj*z3VSsri zl%6bw($iz0%H;;Ae(e#c^mZHM-G@SjGY4wiZidpU6QJV%15|jALzU;hja>uZZv;@` z6~X}S4He!hDEW(^^z|N?2j4UMO$YmYj)C&OJ5+f!LG?RFLY3QfP~qGTm9A%?`knWo z^0(!XE{Q2{8k`T0f=l4bP~|;!8y|lulwPz!rQ=$ta(@Y`e1Cyz$Nh$S`8iN>%c1n^ zQmFLZ3RNDDKLa=j8Nf6qXr^Hno{0HtSNn*H}s z`qzE9m+u9o2b;lZa3WOs91P{}T&VCag45ykuo!*;mHr7M{5U%ss=cp*Du>gc@_PrA zzPw}ZKfwU=rX#)l4#wS}>Ul9#evUEwo1yCO5vY3o3@W|7NBMAffGVH4Q0}cz?f(p@ zd|U<<|NT(;`KP(R2~}R78NY|SV(z-F&+jy28C1R&LDw%pjhjb7#d8}}xDP?K|0kgO zr|)3^2aNXI87iIoK=s>4L8b2xQ0cqd?4N_G*Z)Ap+da>ZV_U<)m={3#I|xed94NV) zpvvuGsPugfRUSj~{diCWRlc=w3OoU-{r(Lqyq*O<9mAl^yPA1{F#}Z(CqadC8&rN? zfr@wCF72mn$eg#ze?lbf2#&4kJrG3VGf4e}H$6iqNunMYQIt6OHxEz+iJD}vc?CA5e z4OBk2hpMNAQ1KlPXThsr4g4HRZvIYQ?qH~VUJGUa6jb`Zg^GW(3EuxmsQe!QmEU8b z<$fbnKHh`U zn{GS%^le}q3FUt}oC=pf)&Dh6>Ae^BfX_ntf7RUIh5_cUq2&7S;=|2{S`U?&xdzJp zP^kQ#36-CFp~~%L7{Fi598B`#M=>0S{ee*Z=?zeN_X<=y{0OSQ*?3o9zGLC8m{-A> z@J~?b=rY-t=ax|AJ_GIy_k#gEA4)&&fy(!@(3Ka|IM;28ci+i44=S7_RJsm(JZL&+MwFOIZ*BJ5jX+<0#zOpruzKNhmuc1^>ar-?c-bkr6(^!wTo`k z{QPMXsBpK20h|M`gAK+3(|!6MfzspGq4a1(vG3OxLX~4ZRQo*%YMy%&91ib+s`s~{ z>hVKkVutU3`az{9fEv&9;b1r$DxL-?e;1qk9Z==6LZxrOZa%*|8uxcm+Tr0)@m&p--oHTU+Y3t!r_?5 zLACR};S899s+XIf+Vx#<0bHlFOX4uN2r3`1L*?TesB&Jv%!fZ3N-xL3JzyD>9$X34 z?*0iizJ3igjtt-3muoqczXPH4=v=7waVJ!Kufk^dUsws3miut-g=!C$L-;S|i*zzOgp zvmZL&``-yFzTKeoD`h+yD!z-&{IHqdf=Yk)Jv;|M#g`AIU(=xKrv+*pImFyAh6?`< zsPcFgs-3+FRqyXW`TGcVhyR5dXMQsK_4f2~eT@B~>UW@-$3f+PB2;?zgVNhpsCci2 z(xZpW{5(`XK8LP6_wsUMpz=K%DxFPG`fxCm-1SiHn|zApQE{{x`Xn{S*370=#K`L8qkBcSqqj=5h275{Be;XP{R ze?iH81r=`B{X7R4w}T3QhOq)Fp2bk%9AxG*&HZMmaQ1HXrAPuo`cbeBP;v&NW#s=p(l6| zhAN-owLaam;W*5-P~~wpJPqClRqka;KaZ@3O3yLIlcDPA4CBRcF6JBHDEK2Rfy3*( zToY719Sk+!Jl)LKK;{2_sP*GZQ1N^MmEW(R=CR$Ec=KQ=_Z^_}u`^V?EH?9@X1)xn zULJ(X$E#5Be{0-msdpa=)o)LND(A&e{m3~`_5UE0zh|M+^MRRvgo<~QlpkltLg~-` zP~~zOR5+{6{3uj-&qJl>T{Cyt--o*~R6IjrA6N(_KO5?K#6qa~#QsqAd9?91*o66A zGw-p?yB`BpueU>m`+@NnC_U|4@AYjbsPb%pinj%-|2!Hh{r8yt`%v?WZ=uRz^9Eo3 zqoKkpgGz5RRQ`@IUIiumLJv7s3hf zdAK3mDDCTSE2wZLLzRCiRDJ9N19$|~{N++8|Bpb`d!oswcN?hmOol42eWBuQG5gDn ze}yWqx1r+u5Gp_4Lyhm79N^gxN^SsDI~{E1(Z+FRKM|_EPlKA59S)VgTi|&3G1U5I zNVC_^-J#0ic&KpihiXrcL-lX}f*Myh%6R{Ua39P~Q1kY`!y-7SrAuOOSOqmdz8e<9 zA7By|wR%0e5>{Y-5lVjaazFn(8md0ugi7z1Q1kJ;6@DH&-*^yI`YwfPuXjP!?;B9% z{h7JhSJ+=DE}uz>F0G&_4*`K zy}koAU+TNc=c5E}j(Hy_y=jFr;rUSd{5F*S|6&|;p!YW!%3nE@+%h;E9&5Y-s@*;h zcY&Y5U19z~ejQ#9Rc}|p06q`3j`uVuYeXllN2~|!vL*@4csP@q15HHso zDm`03mEU-?uYl6aMNsXe7OLJ3fB`%Yc7a{j;U9i~MXB$=Vi@L?+&{tnX%dM2*1?`( zCGja71GnVL>&l!2Kf7ah1DAf?;2*Ku54T6Tui)B{`z5$Zm-NFJ{dPw7159tjpWp`Y zc6cfNwncCt+#I{_iEjh$KjE5&{Xxjw!PO793D}*^bp`jkaOtOUYJlB8h}%Wnzr$6B zeLm)ag!eRN)$3l|&nC=L>`%gcKW6>T!2CJ<2)S3e26MfE-346xaQ)6nW&b(CGS(lt z9)wYZOcmS+>i2ti7jEZZcOLhTdFwUf5Ia$tDuj@d^qx-as3Ocb1b}Hu-ES(Gwc3L?qB2j5dV$v z3+x`^ek+q*g58hUT>)od&+wMG2Q%G5;x#w|HX-|x$JoT>F^c?Qy#X`_afBkNpDd)z{RRyZq>k;xSZ<@67ch_IsP%x+e3mnY~Z;>yRrZ{$lJGa$RJ3l>3R? z--*Aku}_-+Gq^tz`*%$48|>=|V;I-AxOKz)Pm|pS^K;zqjO?5+LgV@-a~kGA_3K91Q@9>C|FV06`$uta#QtLQx6qhx zazo54`NiD#!v1|Y0v=@PJ&*hEuzLWR!w7F0=0~{CV3*|5?--~tYe)0*3Nj11mYKU` zF0uQIvDdHFWS=3-hcOpp{s(*;^L%7J;r=AQL!oS98{i=|iY~ftytrDXxJToS) z!tVqw{k}!^46cv4<`d3~*nPmg#xaQ#gALPs0$%L|p;&x_e zFs_GP8h^WSm2v+h*NOPQ74z?5lkAaQ&GjMo`t9!#{o9}PO;tE>FS9Me9RBXc-m4B*nbMYH~W3@a3Epm_Yds#+W^irJDLB0`9!Wm@mtAtlgafYjMp)53qQc_ z4R|^%Gr#}FyuZm7Vb_oA8RRcip#0v)eH52|<8j-M`{TH(xk}A`F#cc0{WG{VGSj#} z9P0N5c5}GiLUtwQuL)bfIk-R0eLnmFev8a(E;*lK;Vw1V$rhIU9fR9a-SE2*`Q31P z1Rl%vH{{nd*^#iBt2_2(7S7q+>o*K@U&6VcYd4GQ0{9o~H^5J=$qzSfZ8EjSNytp) z`pDc1u-80Rzq7gWx%R^DGIN)`ephfk&-F*Hhs~{u`&zC?k?%{GJ8(TnIyZxDT>2Gq zy<=(L*X+{Be}vt?xGpfaYp{DA*#Pq;a0`n=YZLu8d|0W~133hvM-Oc?Uk^h|QdxZW8wRU)rICtXuH}1Q0 zZNdF@xQ*ie1Ne8YA^0yxb_}e?-2PXM-A`O!;8(wg;d1yn+zR_Ixt|IDVeSuNt|Y8` zG4BlrbKQlVe!nN)53#=oPUO<>2QHSpiEm&D*R90Q!LKAxZf4KzjKAZr;*d|9Ihkm-dXU^;ao>y_otZsafC65@P=Zy ziG}++cptLckfu}2^EBk%;r?LwGqUT$L(EP1E7u>e%g1eS%wD%W3Fj5uPQmTgc5d^q z*Y72+f7pGEv&sJREdKP{+tTMv%r~%~g`Y)OT!`D9n71dcaoCl^tFf=d{%GuH!yed; zwK&2sx?^8}-R1BlI0~87$dBhf54+2_?`M9FhqvJIV>54Nd={?9bslaDxn97}<6Ply z3iknq0|;-Q&=PKM_m{+Ezp(p_;C#}e-%~O7;h2YEUO;^FaPNls1WQMEyFq22Eg zsq8}uK!ea+6S++Ix@`>XJ~ow@b5u=mGqf(h=3+c#$a4fZvd*CA~c=I1%wiji%C zlX1V1OTXugfAPk|Cl*F`%qws^$jn<3miDLb=K2$14ux--+x8a5KG<)H-K&_FS-h*b z|IF^cgO}s)c&=Ru??ue#bAOJxbDMac`xe}`;C?#`_g3s4;`-U-#$dk%@$^P+I(Gjy zxtW+ZHJLvvFn(3IO~if%_IsP$X#C!YTUX52avg^IqfVN!5w{PyUyj{YT<>$gtNByV zyI`l^Uf8|sZxf~1ZDaQ%vA>P`qu>neZzjBQJhs8`_oCfzi2VWF{|&B-?EYNixZcNZ zF#aFI{zyDEn*4b9AMEt|3HCwee6INK=62>Jjz=N8quHm-|5n)FV)uJ;zaL>=!}Sby z$G{a9=nI(d!mQs9+<)tD6W7D{Fz~L5Mn@xT*%)4OT1M|~d4V3Lk z@Cxi+#;p$XRTkL6++T;CelKuoPguXNkbfQdaa<2^{|dYT`zmCw=gQ!32Ih~r4&c5! zGEZ{^8&!Tn^e`*2$T z|I4*GZcE^`xIYU|gncdCGmRsV(Qg;yOtbg4{@;J$wl%lk;kGW<8{EHb@=gM~@3`5W zv^{VBFUGt*_d7U&>_30t_Coyr9{vK~MP?A!+n5)@1G!dXe+t)AT+O6=F>Zguz6SHP zm=A-uLH$ZS5>t%ASgvikCXgQeMk2e^wE&q$-2XxxXJI~@`^&ix ze+vm`V+==Ne>3cZTMzgJvIoNLaNiN0iTgva7v_Uu{P!G&dH7p`+hxcd!lhpdbNE}q z{b3jiEbjNX&*Qon^WDflL3|sU8`g;pF@J^qf3d5?+>`5F?5Z)}0hhq(a5FfPEBwvF z&+8WdFW4Vy4(FPkj1{EiAj~`Ae<-{Wx&7f)TrXqy0N1YE{|>H(nOOK|alZ#wEB4`U z6LarFxKHBe65NWox?ny7p&7XU$h9$7AMB69ZX(yIT$f_L2;Kwrn`Ha}+40=Z<+_?M z!{3hB&&M!`t1s6xT>IgEB=(y}@M!E_Fn?3w;n??r@4|k#cO`8P!1(WE+`D2o z5t)PGZaAKb-D#M2!2GO)dj(TlQ}wk$RZ~-as-~(Xm2S*nIV07WYZp{u(cIeDl4?jw zU~W}o)skdT+tygskg5rqlFbdNOvZehV_m8~8C2EOBr`D|&B=yzOEPFqHl;JEmUMF} z9vl%grW%*DOHJj{WCkA=d5~)4|4d6&eZ5O=Fk)C{L{Qb744P7njY*PCN>`*CN3;ah zil-sHJXyPQkVz(kI(#%$Ez3u6U3)hKH{YpWYei~t8(Shl1u~@t=0P{Ym|uRwg3QuneSJYS4?FAZODE=&&^k>{XZC^1vuXRVjIx3l zC7qwH%dbz>CG&#Rl17>~Etv{;ji!aHHkf2%l3Gn-Pm8UkSh(w;w5~lg)+B?H>7g$w zG^Twq&5jF%S{t*ob}gI6WU`iw2Iv>@hbpr?*{q)HR|SHRRHKt}x|J=xJoLOi*`oZW zU9;+i)EM`FhgvVhCa76j)wm>y)T-Jb)7sEb)!Y{Nice;GC0vJAn@)Nqu1}|z1@$Qu zPw8%4(yD&fwUu9&8&jXIsiFyI#Z7CfqRdMtXxKi|HMtf9)2XSpbZgL%q^^jVK6i3E zKg+A?5sFt4V?(kqKto(gqrknODf-%F+}PC8)s%Nl@`LhZQ&mbj9cop4j7sF^SJl?$H>K&>+vv}hFy=J2 zWP*lPMi)jYx@Pqq>K%iM`BN+QuBa@YTQIwL?@4z(3jMK@}yG{m8V%`Lv0 z95Q$ag352EEz^>0m^3Er2cy2+7hsOi(lkkMtu)A_8tC#F*pivn`WC|SgXjNCvU5XN zTgr=qy4L#o{HChrswK@;O-pG~nVRNQlV&6?eJu>3;qdiag>8<}mM97uQ*E#;Lsv6wD)-j~DiDW}6D@zoWl?7AFi{?$6#kf1SibihDB3+l$ zl4@F;o6#62zp$u$=KQ(E^D5su>yp2kM+doys&NYf^P7MinBV7v9W6AHCdEpg)2n#ne#nLIjU)L8^gX{HCXyt=e=Sdwf^Hftv9+i2P;o^xqm2u^9} zgyfi#dNOuLgSczQeiEdhP0NzO67t`O`qsJWqon98YLiWxpETBJ5?oYYA5iP+2bjsJ zwCd}bI1-UGHoc)xQx9Vkv;L}~hJV08b-V@1|{8TMf-%y=e(wc6iQ%l#kHZ;01BWsyyt*c9| zEDY4W7bJ>Q@)Qcgd3LU3V@ouP4kdEuIo?}duD_1c9>l1YpfIygo$I2!ps-9|r5&g0|vn$X0Yg4U*5Ek2Y`^eDYT z?Unhi`^Wlt28d)sQwzPACc?houSqwyR8gkGYP>C}sBUc}jncTtswUlJzHqm~$q{H! zmt&nvjzcEtX5I0?GOS~wkXu=&xd~9##%Cn%gMPs|Q^TY@)xv^9T>@!Iu56-XEN!UluC4ZQDu=I z7}Z|rJXw7eWteRxgE^(siYiM==V^Sb3JSszJHrI7KIukKE6lZfpf%@o(yx~^q~*0(t`ilYD3cQjvd zoy}T(hnf<`%<<8+CAGb{@4knQq#~D6i~pP76-!enxhsrJ3mvizG0Z)i1NsyS%ylYM zCkssLt$!tshIDPJj%gRmQq7B8-{bZkP>8iAE>iMf=twI2*Yc7T|BVG_ZNK9p{(tk| zkZh@<6RG;O-1r7+Bc~tu)}DRuVNHpNv{myT3sqfouXs9eGWAfW-rgykf48>}N8fDn z2*+D8++oY&(s#3g<{9cUJF)b`NNWoNz3Zxis(5(v(z%Q4mTYR6ovk6QjTY8ZbU^G; ztY8J%#yniP$1ZRk6+Tp`oMqT)np!%2?}VS}8KTL5wnvy+RkLhKGjo;N#8mbi ztW3i~N=$Wo9)|W~gLmvWI^@{LRtpRq=0ta_j@p|F6MjFimVT&4J67s`vgwUJx-VTERs1FOv1R<|u;W3?$}BuS}9_s!{a6olVIa@#K9yvpyH+4L&(kIp%= zR1=Tc``r*H-p++$XlI>f(uGy0sdH{_hVCYh^|b|=bU}@3$zs!lzz;i2^qW~#Gl({( z8}pYmEm1wXb&$0u^P#P`pk_sF+!!lzRo8N5l)Wrg34ZH{Kxyr+Tk)ARDXUwz{or;i ztzO+cS4A3(tg`vQs3<-c{@Q(JOgKZJ42nxqVQS5yHL}PKJwz4_q1x^u4J?eUd~=FB^~$c2d|h_xE-y2z#6l5>>AmjZV4DCG*Qn65SR8T zjRjxGz1xG+#F&DO8(lZzw;7x@Z8%Jd9wRtA^iyL{6vt9#$?P$zF>CQl>2xY4op$?} znv7FOQWOn6@<{WR#`tb03eTqEF61aS`rlYg><`*p#5{*)mqfL0qIAWhN{b>6rNSsf z^%^;*HPbvQ&-oftCH3-2qM&>y7qigvgt>-abDO;{S{}EM9rPlcQfKej4AJALn1ziq zSsQwZY(=tx66M@V&&oKSbDO#Un$K|OSG{KxpUQ=DQXTRnA=W>*^t0315=?DtNoImQ zn^P?ql|?<~XbCFQOpVEDYgRIpG0RpS^eNS@v$sCVKRa@@9Xd0_FvzJlBka(!wb5;& zkRm+;qQS)_7IcW3yUj6f_1V6TT~} zOH9w7%5DhTYRk24>7sX|i`wFf<}^B@K|G-~Zese>`4#)kE1FxJm|k2~Ig5WQrj?hJ zX^x}&O83vCit=gP>`^iev66CKOoK|x_hv(IhE40plbc<|W)4{~wht9YP%(XWP(FWN zWeN8S{e)JVkR{Qqk5HnShpPe?rh1`lU<+;H73Az?Dx9fq$Di_z!iah6xQ3oyQJG&} zTvi$^^mj9CPt`8Yq-Q+Q!arO9@JH#r6PsRcnP=vxp$yARHkn!)x;=to;zBo4*US{4 zmv=SYlC|y8YGUgG>*&O@PWL#+&*11h*C6Mf`lF69xyCkx-3&CR;|#MY7c}0QUA2FX z8$Im`hfa-de(%_amG!Y!(ddx@Nr>((=F}2;hs5+~VdF;%A*?KZjxG@kv{G&({7rTo@zIK41w-|ErBw0pX? zqKbZ;bcGAnR0}ohjxxBt!EiIU)9u*UhVXColHI|L`v~`O&2CMr7WovGO&hLV#5UQdqW*1PM z6sRS3%`S>Dn!?yHVUdLkE+nkBLkComl(3_OMoPWS-gP={W5S{gr^4uY_F2(%({sF- z!t>Zc`sGc9(Vco8KmXEbp^lJa2|2D#<#DJTGmOzA*DaiuxCB)w-!t+sK=sCI%; zxNH}ZUiJox_o^(OSD_h5bhlq+(ac1#KlzcLpJ}e)@p2OnwzOa3O?92@*A(l)N3f(m zU7hf^n)kS_C7Z3lZzh<4c8%5F`n3jgfYyd;dg|iF&bxK9clyFIij8)+VlwMkzh0a@ z-$KeYZ7U?u=*)`@+Fy~6XoE$o!>kUYA<+||j>pbot{K8wo?@Ek9xpGiYEHSdyR5s3 ziYD>Q6WkM^5tBx!{1e5^ReFFC6lfgc$XhRLnkij91CssNaT8W@1t~nb0%Xu@Vke6c zNAq?qka9ijxWmdFcldR2trir%ZLZt;$<=LGs1|{RPnWJD4jR}%a7Q~LJEJw9uqn8b(^NcO zVxiY?Q14VYQM|IIzE%4%uF3gf-r3;do`%Jy-)@W{xM<24ieyzNSekA~GT>xq%JSqU z+hKq_2@7bloEK7wYQqbC%x}Knx#>{iW z*{RkOY)r5+XI83o=tS<2` zZuQ(e)~pLwB`L3*5EC<|CuS5ERn9LjPRuANo-;j<82s1O1(CXo?`|6fN0YBGEEGn=Qnz5I;@U?bzB}P0dCQ$8-HNQh2(D+Qum7zGu*Qo zr^_7f(E2_83^i^ zE}&h=Zeqdc+}6N3pJm!lWzV}I#knN6K)3!Rn^-Hj>ZZDO0Yy_iH^S4Iv7{*&yIp1! zLuA(bnxyhOm2C-&!|#;nd`*W~HAh`WlW{7^WH~3Y_Kxj*ha37D%-kMOHlfbRD|Au{ zoNw){T?oFU7^O99?NC^uYr5VY7WBD@R{JU=YFry6Zn*2<-8~ARYobfjR-cBAYyzEQ z^$O09$+ckrjD|Wy+9lA5SwG05BnziAq0TkW`44xZV$o+e&a{6wa}N#N+OX{);#IzV z@p|u?Krkap>F}#P2hC)m% zzBTEIxoOIfjW^TQSmQVCYqfr0wXw1-=A4~iQ^V>hEh;LzT|B=cnH%d0mP*mgnq>)H zd`_ahJCV4qS7pi>)jDhN;)m+YfcafOE!i~2P!sm=qdt1STPHqy#nKqTV1_r5eUNEb& zvP{!vu_7_!e^`IcaQpi<2+{p(4<=M&x7ktG@v#e2uneX4wRYg42v)1*d747p9kK zx}tbENvNejCL!V394ln^9$C!*-88*)T8T}M^sH%3QhuW7G>IpmGifF+0j`uJN>h(?O^*r>1H<`U} zR~ynK<5n>4h?8$dsxcx?%;cn`s~&aogsxrD*j`Akd(1&q%LvVKrmnS_PL$(9*(0vG zzFa@JMpxfu&#e~kTy3}EkV$3yz-PxPn1kAOq9&4sN|Ti=6n?`>83TTDkG^*_t)`TuCu~aeYoA} zUR%koQ0>*HY;4*T4Z{lcD0^O|gry{(EKR!uo4pbxIua2s<)u*J3FJIx@KrS}oSV_f z37Rp}C|~L7S2_td8xT7Lgyd$$|JR}U6;QYzz(y~xsIU`U!t$3hh`;uT*~D_51%-Y! zO{ukq0}7|9wVD-v?h)ot_O~p?d|ZCH1ioMLkB&upT&67on`m>TX3A#u2G%luH z?Sj76u5vI7-VBI4NV&M3Rs?rYDYi}GIcb>DVwm~x_RuY^v ziv<$Jphu=9_9RMkpzz?58{YNu7`r!Xbk8K~>te2j!Cbwe%8=!@kE2;gry?4_!)Zz+ zpci7?nGvn--Rb*q_d(hoiG}Bh>D$&|-{jg^dC>~OFf)v_|F)6JjL}OiOS2`q>R2PU9nDFlbEcO}pER#{PYpX(@Uc^q+C@+q(0#%T z+lL$+>_m>nVXL>u)gJWOdM@pDi8eNl0CGT9V1 zS-(*f+ryrnVi9LgA(J|$$a>9<4DMKe=)&lf%p{^$G~An&{!;;MJOFmDbo1(WGA=Pc zJlP&@muI_+D4f{glkBOL=)_Jom3|5kTeACO(Ant1jZbFN(bUi>d~~MQP5wLNK1xXx zfICkUJ3|wtMx&IPncA9#>UM29Idc?+x{$?f7?yj9U#r|T&sidWni*uvrsG^ZM=(nI zTIAN^6t;1_b>m00R&A-;CY?X#CxvkP9^w8=2kcU6q&&}_ujKZ1WP#eii zJ;SM9hCx@q+5+XVe=$7~;6+V{G-X93?_H&DND=jaW zTQbl6JFUDlF}IYnb@^pQm9z9=j_^3!G%bnT!bVdFfA(6h!l9BHDwex-lb!}v#RHIH z=vyHj8;Ls}m%9$Hs?}JKa4y+CdU-0Nckxt7Y(48)u?ob!Jm5uDTG2U2_wA09q*MTM z3STX>D#K5+&U(8q&g85z*X)v~%@h_bbPDynv%t4qbTC|j`*&(frhC7x@wh@)Nz2_$ zW*Ju0hP5FdoA3TwpneAIQmc?`JSGfEi8HIo@S`z4>dr(o$5ttDZX?r~)LMhUvwxhJ zbLwMmRc2YBM|h?}uH`d3_wOZ9M{W`3dIn<5EF%nF!DEWts5g-2R;^SW(oZGpd4yDL z1F%0tLy7qvf?%ZWXA}nW=Fgp0HlHtE%(W+`@e{_8-JW&~*&Q*CY|)pcJcmf?(;ogY zkKg5_Z_3cyp(2TJHOBb`saN(rZF{8QpN@o5ZjQ%5;aI0)4#e+wrCA1MeY@xJuGec$F45YzEiaPxhl`zlYpq!q^A)Sx*v6WRIJ=)m z>iHH#x_O!U2A7RoolwfMTWM|T983%RV8vG|>g$R0SH)TzrJ-Ij%xd_Ci;I_#^h z)18J#>Lowl@94TGhq?ZL<4aX8bzz)pctlnnTKCBz@5U9(SRE$W7yaIltma-_pmZOm7P9#|2Fd*Al? zj%d6mmr`V(uh`)l_hm6>8*Wy(?%XRlOD0VR?I4v_>Z6q2P%_20qH@ZC4u1PRi_R8hgc%{yy$$ghT6zl9$Opfg4n3i zj5>N@LiWwnT&OV!`qzu4Hj%AzK*qCQfnfNZr|<*SkWZdjNWHv8UUUG?)UAN&63)ym z!krT5C)t>8UBVZaQp_*i++Mm8K6*fX>6JBm@-s`tY91OGH~FfDv#}#(QbydJN%L^c zigYF}tTH<)rL7IsS7+k>{idj;I}tZCqt~WL!lOc(%F%jNB#lIA?aaPgqEAogfp+-t zVXx^k_tVQ#`?1wgLGnAEu4NYHhKcL~KHGcqydqSN2HxyYbj&*VLW-tY?nwsCbeSH@ z`ZGDM=1ec#h~@^zWNm>8r<1I>m+bAS$^SR`aBsDQ9f|84P!wuBYo$7AzYXR(m3V9F z%u`2q4cBR2?WO!&Bz|HkHH}US;pk3!^W5eFeJOIa9vo}6#8kt**qR9zN*jk|7A4}3 zIZ7)kc}XfZFR;^pJZsdk{P+f3qO@8c%`}ib_l}gtjRHLv^{!!?%UW~LZJOVXDy3z+ z6%1QVJ|un3W-6LQPZFCYX-h1-6l36TGyiSjK^v0nNA;+;g$-tP5xv~kNJ!?Jyq_-h$+rmG5 zQRf?0batJaKXwuufjo$8;hRG)c3&{X$7?@z|0ol7#+oMNBJP?#vS zVcQ~(eXJ(tls%Z@+C%O(ZB|bGh(@kxJ3tmGcWi;_r#)_tB9x>1Ja0=Cr)tr9S@_39 zxk0W$C>S}fbWfL_aMwnHqY~PT(m$2OYLddvAnn8~p0tmOuU zDI<4PdanSj^>b`e5kG6B!KL196InygnbT(ep98SR8k#VLx)-)47k2oeViKy&2zQV^ z8dlm6^@?9c_vMbps2J4Mu#?0`-01tGEf=MqJ|Kap9`(~+!rhiKef>$bw>-re5!FQQ zj;q@jk##sR?3E}>Gn3HNz;EWdk?psAgDg>|_ROBCzOu*5GC^%KH_fyh=8a6OT1+53 zs^Sk!=eqer$n|t;lpB4xx*&gGT&avr7<^o77E}3Y8{Ogz^XC;kd^gGmqW;CV%uf2M z4ylhiL`sGyvK`!&PV3TgMtJ)Q1{KKCJAC~iOrDBKSbk@rUeS8Q2*HWj`k0k@r1Kut+C_k9*m5l(wcwU#8_{Jd=!T98{-gVN}v5dfaEmRfVyv zxz1XS3V(#u!&Rc|&y_SYyT_HydW$-;^6jS1>4`~sEB7`bwe6j>n#Yq{)Vq`Kkxq1O z+iMm>Q=$97dbr1e>o|Y3}1oQX0Kx(8N5B zF$|50RgsQvx^<4!#}!A^yrWMsEM>}#R_0Fgm;~h6=8o%b>^ZCwSvIarrR)zOYWQWg z8iv|2ny6{7p%<}qNtczraKp?sG^s7KK>uNDG8V?7zQv6&PGwYh(SBRj#m?E zf03o$p;~KFnthFh38nj_UkKAlwKq%-4bfZ1{{5ir4v7~~dbE$@C-f+ZZ!YfXcDeub zdDy($wNXZ5KEUbD(27~hv{18X*i^x0*H0dx=%E{@h8N&&Cu61F8?-C^{W)<{yNm$Ym0`QUcl=Htsmsim zW}l7>?(Q2|JksQ^eKd{0T+d3~pF~p;MZGi|pezByblVYPiV@4KIw(9;)Y`Xb!WtTt>;7Q#7u>g7KY_911M%${aW>ao)6O2r2e@Xd_9C;3+P{NKZTEp4P zhH}%|O>z1SJ~|=o(ddAd^VvRQ*~r2*=-52|Ce9MQrbF$sjjS*4xdiF^qCR?eN>S}d z@3K-d?qh~TX*$9T8Ly_I6&(Lm5dIS}@{YzHv= z)plF|dRKKO3~YRsoH~+t`+g*}3>%jnAj=kkdCM+Z!?RE35N(#_M5B!PBok+p%jn)u zN!XtBYZ8};4mse-`*L@_*O#!~flr}B$^|>t;h$G93!5t0*l(HbWO#Jmv#R2KW9B1o zu~oFUHoedolY8Go*(%uD|o@ zV%~E~Ua#f27~Q)f{?0$Ys%x2FdVQi*=bkCONSA7!H6o zVudZfQyIMnPOdx3XtC=Otw3$pEZ)MLbzL2cXC^xFJj8ruOHZE`&4w1Uk2g&hWX!EY zbXm7>h{+9?-Xr{YLN>PcG2~3Zvtr?XZu>|(^Z`m`beb=ot;kZ{em3Cfds|sOP!OFL zS++5EBCR*G;}P-_ulrhw-$cvCsE=LI#@gq^J^PI+!M6$P$g+O5f1C1uWx{tny6qFr5iHaCUdD9Xd5ZT`F^imBTBFM8#N)EU>G^oJ-w$Z|};_|sA75eTNAA)voL1?BLZP8`2J{Ec}lKJ(8 zxxQRh$%o7kwpD?xt0~9qiolJkEfl7g?YO_|o?z-9Uge%!mZ&VLWVT$ncNza^lPXb3 zEfHckDm#sHUwzXab=Y>9SFm|d*ek%f*R=49#(plWEhJVImN;!nbrxo{0+CjPJrLTR z{cJd^m#9ho?;)t~$!-d^&y+rK$u}lg+xVqYszvW<7Px5q!p6N)mR)K}F%*dZ(4tzR zYr~rEM~U$mp!dVBb} z4^l=t_1v4uS@aj6;uV)E=tbYA4=1}4_FFJ)UN6&=6UATG>i!N+T$gz`L?+1-e^x?! z)Lgtmpkqa~7B)*3MZSPKE}JX0%&v6fg8SF^Bb98=*P$BWOJlSIvte^X%M5L; z($b@@Ad)1aJSAF>7BW6pWFyZw+yWlj&cHy2B?b7P;`){@{>A z_?PuMv2rEv{#3)79kr3VW>=?)6kBdo7Owx34=M)dY^PRTvAVAp;!;o0I;3ZhtEd@1 z)m_=llFW_2l)c({c)}fr#*8MXdSDUlZ|hV#L#yT<+Od^3@#=iCnpbB!>h@YCq7z_| z6nmLywhJ@fLe}D*4a0w3k!H|hUh)vwIz&~vl*s-o2Y$2dF_Rx(b`W1qSr&w8+{vS zexr{pyMc#I_{y^8vFt&)qZ#%^*tl!hJi{>*#aHiXW51N$O-KyX-Q@7ro)FlfJHN_7 ztr>6JUbcH+qLH3u$CL1=q&YPDHFAOOR-%72$btj)Zu}Io|@g%hM`W!o5 zWDY9Ms3^kaam+2A4|UYq_{$DPF3oOhIP6JeliT_u8@2q<&_2peot%PoqB;sc8$cxG zmd)+7Oro7tk%>jQLqBzJBTAn+#B8+Ca~~t-9bkWyDeLGuF^-n|w6f7TKQ!306nkRl zR+nBQm>|1%Po)!jqLqD$#aROP7g*-6LBx7riRrsTPK=cqYXQG2=}zP;C2GOSf3!hQ z%Tt)_?BE=I<~-oIx!*US_3%K(303JSgFYR_1JUd-u27{g%7PCpF6Sl-p-5I?i8B7j z>7&5|d-bL4`RiMP*=M{&p!p?7^8ZhD-`X72b*8&N>sR!tifiJW(_DO#REmtxnIyI| zo{BH!IPp}eC>Jr<@r+|UU^|x&rzC?w0)d3N2qAG17KmU=Eer;s7N~0e%Jkmd{mFmf zJkR^QYwfkWTY~uH%c+S+^j`0}zw5oPcR_@Md;z%9Pv*6QS&D@wL8&FJFQ*VHvi6t9{S>@1E?fpS|(w%dh@& zPwnSOvju@CDr1HTmTks_OcQX(kcP@Czpz_YCI}gz(t7}=2ku2TZzvqj=!?g|+xwYy zV;GR+23K=`;?vZ4Ddvz3P11E?!S=SZeIsK&GMh3q7T8R6D4F$f&~y#hG(JAhVlb7~ z!vmusc+;n|?-2c=FipG_{v~ycD;-4>tZFFzg@u1(6+;w8@RbLA?1%MukZl3u+dM|_ z`X~x8j-pA=nC(fQ`1;KNg5^Xg*v^3TaD#?lZ0x5(nR0Ue2+t=P#&>D5GXH9Gc6!1( zB}}j~q@+GWs*KiSTO$na{5#D9MGJFz77=Cd?E3_V_5F`Qw~Qd$#Z+80h+CI5N858x z(#*1f;2DqG|6LmSe;x(H`ph^T<_P01h#2v5s~DYhoCxD&oGU0`nME^w^?e51LeG~U;Y=KY)4u!?R^2iwrW*aABbe#;bD(D&)oU-p6CU zzl&o)4ELdrpZ(uxaR4ZBzYh$$bxaCiX99yHsk1EDivMw{>Q`#XTuFulh`&N1Ru(_w zjZ8b1eTmp31T|q+Dn+@pSw0@3CM(vyq+@R4r`rw<_gz`eWr3ab&xytm2T_7p)-PTl zB5h}kaMINPs7Rt&SzGZKu;Ta~hW%~%pnT`&) zH%P;&H`7c_YNprJbaf2Op)?`(me4SP^>JJ2fT~r1Kg-K{u`qbKX3K{{H#iY?x6@!`9ti)_G;$hu{fSOF%Xpk}~X6!2RAd zP0q`~7*#e4*GV)v9nOZK-0&I`4Ik*i1AY51^ic0{fdR}Z$dNeJcD-k-W+eZBLBMrg z-Vt(M2tI@3GoURTHy@6vc@-B>&*;tHg&8O7ojSLSroAl`(Mj+-5JV})nd7w~v-o8| zV(cSG0|kT9fbxCDSizn^Lk4uI_xOXSu~gNb{q9vQdfh_Z>o1}i^4LAuyLf@=K=#3Y znR~VxZX~UK<5HQz668rXIZMowegrd~I?j|52c`~cjtUkwzA^yeX z1f=U6di}LJVoH(C3Do-q)61UQ_1tsyUAybMepK82!#&Ua_`mP^$*x^Pze0C)b3H)X zhhBkGw4D0x9lPk+WR{@%n=lpbsnM&t6X~Dc z|L~`l$^=y8`QNs+LL68LTbbg2UaQxNi;vrj>-p(p`PA20t+l?` zYFCye%E$ zX`F9=bu*uOkYT_h`P7;G;oW>{6>D(ec(L#WzJ}lH)2-$g?Q5f1t-aaoG|rUtr?_$- z2wMKm$Bz}~8u&dQOb4KGxD5{k07`UL9(Pt2T5IdA<_&-tIj+J*jQg*V&svW*F|z_o(ME`8hd-&+KVZAfFN(QMVp#KZabXq9;P;a9V`JSTw=hdJQSAkdXU`n|c4J%{ z50T~DjfrCZw(to>wTN8y!zKl&tv*+(#x|?a<>v}?*%AKLZcbqy>4w*ydG34Y){a+e z{aEdp-QPQGLuzd1XCCD%lkMi&Z#O3M)ni!I#QvLaK5C!8LC9j}x-b6b91yp-cD&O# z)_QnVA0sa2D_2^Ny_D6`V&Qv=unv(M?pZHbyg)DbyE{M9xj9F975( z`)kFSix`z~bcjf5nHt*jCp+IfC@$Z?obw}7#M8!d=hleh{FA_T=JTuhBv9H;NPyP* z#d%}1TFu4S<-k&4W$_tLa&dI30IpwbSYtNEe0t{FjjKKNK{JZ;d)4tQpubd3vlRA*ZvKYQq16EMO^Ctne=vG_@?QA)&ClB5E(-u9b zlw`YJYi+LNi>Jz^7w*6cw10oyJ&XC&XT^C^i{jcwzA=?=j&&EBJVAr*V^nL7Y+&;` zN3fkFVgC&@h{SX8URF2Lv((M!ck%$~cmQR6;VKYxiq<-(ALNf`+H-5IjSZaS;>tXl zk?#E+huTwl%h7@?w$@K~8aGmELsVLsEY9EK5n1`Bn40Qru4WNbi~Izj-u7-h!oKIr zGlQDxFYB#+>O5tdySKW>PYh}xE!H8(^ammY84kDr1dl!6oMB$KH{)rJx+ z72^*mVl7|K^0{mI;+@XD8=a9!eTsy$xYvXLm=&8N_?MVZO?+vzxDWX=bH;+pOSdgQ$9I{HcxafU(d&GK~Bi>vC+=TnmPa@qp;ez zT#Pi^>kuwZ6el4RPIQjn&L7-i4@Rwe>$LAS+s&(gL!H*z>7IVnHVzBStGlt-eN6+!=N#CbBSl>$+B_9&4uBq0IRo<9t~zaP(r z?&ZG^41c(PukoKf?+(K{ySE0C42h#S_YnLBi`bqY1qQVq@c{Y&B*|2MFe09`+7N)% zFRW@{4(lgRe*j3*4{ZDEdX|0yLgmw6GL)C*C8qEcf6idZbf zK@Y6*G*pygemx)C$X6cPiNE%+IJMGgJSgsb29}4NY&FL~uZpSZeCh(_wyzhc_WHoK!c5q-E#l#5C8SFc- zAUNpUmG<&E9HmSWDQG-;9Lk_c;XHxlo6fEi;^K!sb&gCHvkfDUH%Lg*g$-H(wT;k% z)vC})mFQDRBh#-S+8~=|fq)P#3JAdiy;WKzL2{*JZY6(oKC+5Q(8_@&$5O&`^#8GYGBND&3}V+fUIS)e~}Ovw7N6* zpbHmw&+{CfdzfxyrUFTGG9fF3;@m05&J##qxpO-=a01uNGr^Q5Dh70P~iqisy z6KO)KDhq)s^_EFo?JXns-Wb__$b@L0y9(3;p4L9tzvJ-19Tu_WePhLd^Ppd?W|Q1= zMzVErZ2_#L=OBqedc{to32s??=a2iVACldW3DrhDDXNyQ9APK(6Y07NEFXJ7rW;I{ zVVPl60xuUg1oQ405ospuOi*oo5ZkmhplVVvA3t84x(+XCn2vw=r2HV}V`eVR1})0W zC4oW7h9vHnD12cRgLgh|7@3LHWx{W1E-uFcVR!CWK0WRVWcq``ade3ep-19YKMAN%GGHc z?X0Z(2%I8>o&l^cF8G;RCM7VMfg%itIe)8r9awx79|b0C1+5WYt2Kb>yTb&Dg6gkH zm=ZxbRO>MehZ_ou2hVlvH7_flR^M^CGWDjVfKvtg&&X077IFo%W-B5Ui{o@J%-2)^ z^Djt%iQRddTxGTH3n$?-h?l81MkT?NmEj!g3z|&PB+OB(*uOAOSyARu;X9TygOJYU zQkPW0&A^@_Qs@|*>ews@J(wcY0q90Xi}u&rAH}aMTfI!f8n&?OwkO z142Xu2N6>e#tfRTl%y~!>_%yNf37A8mvbw55pCn8mrYiEVr+%^f#wo7i}?|(w0H%4 zIT_9-uCHL zvJqKU3|hD#G|patPZ$e2e=0w*pfeEnt? z?2M)jXD{G_>hnmSlY!>si^nsUC-etqGLh(17IY9-_|zq7I-GLu60HqOn55f`h%BFK z5CW?`42#5}iW!M%17tPqg5bDqR=*KW-D7W`jVm?FvPqqX72P| z)F&sW`sPjwN*e}`8-`fz+Y-S*Hc7sYpD4~fMy(;x<2!b6pZgvhGsY#o7sE0W0Rj-u z?fG%FGYB-c*4|i$J#<^Z;^gP;=H*N@J0+rFB``?IvEk5gj!|O~GY#b1om8Ayf1Sun zdY~QM^(T-C^Gun^1^f+$%e7^6ac6=89h7=DoJY?C{qw~etQ>{ny8Eg{8 zk-K1iZlzc`;=9kPi81xbM$Y~UPq1^A6=dq<03o4lt34CqX?5tdJqSGrVkj=s9Evs4 zWKAI!%{0+Ubdkl^uXK-3u{cTvlopy}t+kU-W1#2wHkqd9aNx3{bj786-Ff(cXC=3m z#VH%x5-7hhQ=Gm5);k!Y^WbXt(o_$Jk5V1H6!efxpJAs`Yy=83BWCAA0TGK7wcT7Q zCN|v)uL)~$WXI!T*f|cf7`-I)aWNe=^2MVJQZWl-?BEN2nnIue15}EUC7ILZ#;*XS zmh(z+v^R3u5fq?vVGCaF9`VKa@ix$s54=-K;nk2B4FF;xr((zuUf!TJ6d$F{XzxHE z;M>=c@)q;y2CO};jceVJ(eBKx@KrWjvxQa`P@~b}mIeA+3Lj3V*qDm6i{7~G2;IxG z2n(vBs@XSpYJK7sOY25m;;#S67nkx?VmQBncDa6|-;$*g@dr-%3V;@aB#+l%L02oK zQ3xZzCp)>c8>=QbPV_(;(X_@l&b6CIY#ioF%8(}G#aDSR>1}4ssPNQ!{qUi8?ClXZ znds-c8Eg{m*+)oRe(-l$I)!K+pim|t$rh|Z|H4-{TWeo)sV_D#X?)4BsXf$LUo`Q~ zqpuKU<3N3+`NWNUow|=AbV{K$uY`I)K{Jy|ijAqif(;~=7I1F(a~`MAgh->w+NT@& z^&<$A0O`{FFeO->WUhlC_dE;%w&K29#o3z(y{PSwtC?0RIX9YcG2M58ptk$DpZp2` z)$+N=&}*SU!H)nj(ApVX7M6OPI%?G>pjDfvMMOlxR29MjQr^i?_5i^a0K=HXfJza}BIa?5A91qQgY2xL9t9;r z`br8YRKeb+Ly0Gl}TPX_*sxWOC0X zWp%F~%dcMjA5e!fM;85|YGk{lpS0yFDk2s$$YlyD_FahkDJXjM=|)f~_9;-=UP{bW z!3P4O<^K|8sQehl?(Y>|Gg8qb48~V+P5vF;n5adOS%DNz=uEXHo|u4#5QJD!!n42# zun14(S?d_#J5SqwzB<}HH>%-EdSNDvbOfEvQCM9AEiw55{070A-LsD==Oun4Em!S# zAHn6Be3lp|KF@YS+4wU%cJG4um)2q^VKicI1yoN#wT+s-khN^ln*%cQpqbz&a0I=z zCng2BU74?^ne*e01ghrMWzZLTr>L4vj(!D5ef*>q3}ZAm6)45blF(B#5CtotX;cO~ zFlS$Hv+@h5w(wS1=%aJD!S9&%kr(lH{M%vN1xP_0wd7uKj}m-INH)3^lomUkf_mv) znAKz93sf`gK<$^m#VvQFx~hqB#uhUD-fD%N%|cSL3x{%H`ut)UZ?b++tCpG9Lj0|= zY}^Z>Ckc~c&kfcab@mJ6(^a#{Vg0N1WwFCKujK2NnR2(O6i!Hn<;}M3J@X_VHV)i7Vrz#3$7O^ z77{W5)b3zas#-x=4_+)2O~;@4pY&%<&@z`8R0$$C78)HACx_Ine!oMjz_PMQkJ${< zsPs?~!4$Zwu*zWh(e(`rw1f1WiW$brqiBWAq!THTsG>ZQc!Lxx;NBzE&{2Fcu(?E3 z#ZkHH(z39ytn_i^XUFrkNk4U3Ya57~Fn{^6E(4_K%>j{=`&0fg%oH2sRwt=Nh-jAu z4rV5)%hsA3wuCvUiH>5dgL{Q zo=RaE0d!%2(%)S-I0=`mE4Ob;=7ail>)$ndy&@Qf5tr zM7VxmlUq>EVp^fcXH)VEV=!0A46K-)+g5rSLH^V4(u%YoC!lL%h+iW^bZ!r!8Icj? z*#a{5huo5SkCjekN93MHi88o?ls+i_lp{qtp-_aOEfi|N$Yf?g zL#FSkv#im3FDMigwU^2HGe(MnCL+;(~dbDj`ao!ujzGUInmM zgQ$iudAa_m9Fvj%DabV7NmS2uM+Yd}2LMKr0PyCAy-!pB)Sm^E2NKmFGL{X6cvysM zZe8@z!Je{WVhQ`87BQBjy^=lzmS$s)fxyq~_<`kL@+#%`^ea)$j2}8=x>o}tj3jaO zgYP18?cD>I95PCp2pgv_ii5q`I?YLbMFtu7*_Hr|%iVfN&;{@ViLXfhO ztk8}&aSJ&Cv$YLqEo}#TSu#>z^ElQXKrwRLh4g$5gp$xe^>5S1ejFXX+ zA@QRsup}4f)C%NyH%Fubc`S?5tf&AghI7Yn_UMT6I6@M!TO6uqk_dedS_7}v-w{k2 zu_G!L##}PRV2R3AegIt&n6yS8bz_u2kX!+mFlhE%y9o|KIeFp~E=*xW2=9dUihoFQ zEkOYkxajx~a6WO3hPTknH=)!A7Q^qX)NU_EnT_qr!0uTR3>4&FlSgrSDCz%WDg^-< znnSXOz+RmEN+^N|`JK8NS9Y(aAf0eQMmD^W*hks{hhss00mys-_^L$>UxOIgJNhUI z#sYL%P2!*#q=0cP!tDGyrA^hh8~zrIOxGCPjJj1=frz2P)4tp$(v$ zbUlpVjKfo6|Cpdz;g(QTn3bmPaD}A5IGJFhNi$3ELRi$WL}N7++K;^}yzXiAYmw0(Jzx_FU z8@T^iIe@jKS>lH^Y*VrLJ-ONVTjY_3ptTcpL?v!%Dvj8VrBT8GQ;=?g!A5o&R~tcy zMFbEdjvhA`?zd0eN6>=&ILwDaR=EP9Y&}&MpHNJSU^gk^Rne4)VYHBskxT*s>ugAC zUd$||K*TAV@4){1JAh`MR`2ZtbRfl@*eJ9a+?4xEqn<#I=dtQI>PVG_Y;Im>-8`QdvXwd|L$iFZkOplFA#uu9 zQV1r+!Br*1W+UcvAe80=0cPMmO}q4@`u0!j&F(+xnN&+MSEW`@e`_jTPI^R4#v>v* zyOm_%q7#Uy#ki*EfXE)IiWGu2E_5EB8B``Y1R!!K4+2S~vWn|G@X&tJjX}DIkf9fL1+DhnkA4Jk<+fCs3V>{Y zya26ky(L(@r|`cAaOmW#k9*6Ki+=-ad1eif&>sDtj1}wwq){9nYcLp2EhC*p98zDm zS~WLg8tS#y7VSLVKyrf2HO7507rtx1Qw>G^1^`imBpOdnW)dkHuG1VT8y2qera@?5&43j7B|}hVMI7TYq@Pk*)CcxQIwvTNGZUw_&$@GC zJU}cHUk6`VaLYtc2i+BIzEhGaYpAqa*ro8^hBzIWJk*$GvsLZdld8wCq$jn*E2C3q z5W(L^p+PLm+Z;B9unOTehuJSmG?JwV*ec|}l}hLrx8+MqWd$xSpb{$qcxH6l7*0`O zkNcMZrp-74^>AxoI%!mYfeFY;q|18$>@auN}L6Ss%qsdB)G6~z|Q zIl(*k#CA1~fwg2hV2G2rwedwPBSsen$`wuxg@NWRb0?I40w%@_^RSvL*2k9$4)NmJ z11?p?cD=D!o{J{%eAq=)A!q<>MPP+z`AU=VrV-Zj&zU?DRXv z<5HWyTCoFC*}-?-w*X)~S9S2vpTp|jznd@GrNf1<+H)7d`EWy-u3B@4P*vBB2dcTt z7tvkk{#`>>({zEiHa!o*qLH811GSwtTV~LZJcs=r1TG7w?nn*6#|)F(-COVy+o`e3 z)NGJK*`3w>wNSQgGh)@{H1#U?EAKqR>UB}ScY1Ph_%~B6bs*^#&aSa%Z#orxw8<$QcT*geOCnK!!m>m}E zWM6fj%CFFkLuJdu#gKvP7vUWZX4#+P4f_L!YN>p}QX!lNC;-W>f2pW72^9umE@v6k zpfDgIFmkafzwv%}ls+Y6lvySa2efJgmsz5gr-l5?o1?q&1^Exl%42P9*Xq`f zEJhYH*Lu9fD>{M5i3nA4bzmDYdRfF}4!615O<$6UnfoLh50NkLG?B&=9sg2>akhih6EZCHFW)ma)h z*O{del;WG=e!Gbu_6PflxHB^7G|^1>WHdrs#*xe5CUD8&3RJ-2qByLbwWe9IlC4iM ze%IUVFTfOEeeEr?hngiwH8@A#P>Bi|ugteLF6Lw7Fe`xp(7MFoBmRd;O2h82dT>!H z4i&3wt%qY0+bR64Tt_ms_LmJE+92J2*P5jL%`sP=4WEJtqXmP9p?w|~>O6A3#8e4G z(d-8_?T&8dxU_GV+LV4F>yel+V`CQi$^tU!ivMt#%@sgfNHCJXE@PyeJHvc{>rbCj zD_j_~ByzBS)VhDYL&M<1``wWd5FRg=DMu#l-ZGv*gnnCgVUEC(yScXN*AWwlUX!`! zxHUU2Ylk^`$0-rew)b^!QSXC?ruB|Wfa}#0BQWo>uLoc2T#3si z+hO%bU~0j9JCDy|n3`Fcvbk}cqqby1pfuZE&%^0eie?ho#S6uevHTcx?vugJM@q%| z{f73ZsEL%G6JUhLu;dVi+VfXo1lO_fYlUm`og169xB)KmOzxtwE)ND#u|6@L$Qm`w zRBVoIjTwIvdY9VBad&yJfgINOPUE`Ho`=}Iv7_$(2mC8AN{ds-}jA@arBh(AOysHvb;^~u%lN;MlGgr$Kd zP)em57{EdY3K}&h8w_w%(xxG$k7%$aB#&dnc5pwRh5NGKYdI_RQaJ$vz-bN~v<&fyo}gRtm|M4#{jepTpsXXpp#jXjYv=anGmeHAjdX zk3zZ(VX|sp+ASz|_$;ngd;PiBYuI6W?gHOV1IF1Xu%gE#GZ-awmw@+cOY>>)&R7;L zkN+o}qW`stagnr1q&j{opfN8a;kX&S^hv6IneaA0br(o3hpwo4s|gnZ-$)SE@TLZ( z#6_HlNtHx}&*132eYcgU=Vc=SE!nM&r7{q;X;0(x@X$ z+t6huhn^OFC4{k06b ziH9q>r9;X}HYjI2T4cj+i%Td92B-zx8Aky1>@$Qy7-a+B|NVgvKBD`%B+SS`H-1LC z2-!Tca9M1d(3d|;johN5(|MD#TNo14DG@;dZZC*X%uO${sF?0w1pK%$F%=TMx_L9A zx`QJT6<*Oc)7Gsg(X6Pkxy`|w(H-TGtwtng{rs%1vN-HsH ze8%3uQ((morR015BOEh927S5mH616GuKww# zHCF-cI#Q=`6FOUL`yP_s_zwv!+@1uHLs`n?yg9=WFPFcgvN-XEqH`A2^0#>OqkHoL zZy$Nd9N+2*Kf;;!B~70D!2m1$q@x8v8(6`u6MA+>-HEH9u>ocJ)I+-~oqC+1k35IQqBRSZ@=`yuppu)s)?{(4P% zJ{FTsy;i!6RUC;UR4t{^RO7nmq3_YLBO69kV7&doU!$MG>9sfIjD}Y@3?Iw89Nrpk z*7MfPEK=re4dfKi+ce`Akw=L{^%ZHi^GA1Z2LT1nWV|3X4d{Mke?j%!CN-*kSV74M z82{Bc7B)*SD|y=~9Y_V-Fl$B5r4#5hk`s)Rh7h}I`}WBRu6j`xAJ6>Y9UB=9z1R<# zw|k(H$AeT+RxB)@lUo03sSW$qS`UOch*_fnlH#2Y0N4zzJ(|kH*T5RWFt@^9FHak; zU_x3DVS_NC(M6_RS?6DQQ2yd@8VNv!a4>j=-PJg9|LK3|I^*XO(d0>yX!!>T) z&=?qfwRBQ#;-Q5tZ~1CpOYxZND+$?lEx61#d8#F3`3&%}nC@GX{X2`@_@uVkbXP~`2N2ksG zk;t|zmW5E>;uy1)&JVL0qNZg&JLu*xaOGsU1Qw1uY-4=rjP20yf?f3}VXI%#lKK+^Lv&3GOKYwgfJJ>R@tbLcm|l)D{Vf46v@FU@0Lh`s)6-H=DqR_E;<|Em6xazf1U({gH@iqfQVK< z-VEV5v4E}OgEw~37T#LE(^*ETrs#ojpt$|zET0ZcfuioA;wQABvKYqAIOS74uipzsgq{pO$aH*wY<78w%uJ z;bL2JeyzhAmEk_v=@{$;&-~SOhTWJQ8yG`_vL#^^1=e?O8jh`WaqZCPT?h+twIkx7 zNV)}2S2+p#ba7RycWRcJQ)k^Pij1M6A2_XnzA9EvdAR_=yp#$Ok*$HGA1@jq_bU>A zT$p8m$l?WJqTO$noP>J@8m6HbFQxO=0g&wI6o5O8Q+ScGBucPV@w%8|ggk9gBok~o zA>0*lOEr9A{-eC~Z|Q(zJM?2gJhC_>?<4XF{|(|6sEHLE0wmUk5&Z$Nu?;1Nif&{qNO(FpP`hH~DDU|JjK*R`8d9 z!d&esr>7sF?38~4e8>y@G*v?Wy@#n~5cWx?+c#rbVg!r!N$!?q(N{#X=n>CY2_Z(E zaMVx(Y&?=NwuBLfn$z=S~vZVpPuEMQ3HL;e*%BFMOLJB<{qH z`30;LAU2Fvl-5R#)DS*b^N33`d#9#uz{+Hp+QPkYJqI3}jTu|b?uX?U=~O2gV|16` zg0nyTmKLi*Xx*M5kFC2?QcgtZ1Krv2VrGfMYcjdIHzPNKXHz%BNi;UbmfZRRc}^jo zstSQU4eOQpvs*H76Y^Fx|5L7>-~Q|k&nDn{bmb3NTh>{=nV&g< ze?h~x=6E?T#7HDseQSLZOOG4nS{&nwhyoZ;+hns4WI^>%x>RoshW+e6aQNRpKKPM6 zP+b3X-v{sGdg1|(1Oh2V*cS{Sy%n{9Th!gMmJ(zX79g%E*cn78Aw44Xm2y6o9vZC0 z*903Z#FoBKStd!QHIzb`QmNRKnTo?NtU^LnMI)_UL~T^o zJ`U;0ZEit&2M@Q0bcb=N4bi^1LcJ}xUCy>MRD?k&{1bDF=Ncv=(uG9w07b$nhc!em zzfwUjH(V{J3G_pw5f8p={lCj7Y-(lXNgSM^p_@#SXTr7}t8xRRbB#(!5`$WCVg)DJdRf8g2Bfck+h8-?!yr=6d_6 zC7Op+$7dB}T0wH(6DNeqAx$G+9TMG!Efyhp;B>fhEn_c?)d)s4{BwJEt2xqoIPTs& zkm>yF?e6hOttA7o@h0uV2}^M&z6QLM4HnbG(_rw~)3O>XDlUicg8?DWf|2>)&)&v$ zQ^4(loo1a;rW<(G02!LEGVfXBcNo!DVA85-SEb=pKMilUCT(BpfqTSpz2Nm~xjTlG_bqEu9N=b)y zV!4tre^S&AN85(qY0VT*=VJ z3g*D}A*Q>>k^HUY)LfI~N6@W#s(U^$+5-aRu$fNquDP@*TUYc6wP7ghb7Rn8ejF)K z!Xw>=SpkfG4h0{Id(?)t@j6p`vtf(_d0~(%*U~nvEPx!!>XHr1$N`rI8PZ-rIYUOE7`KiaVosK-e_t@_~4ZyQCeb&g)5y5KVGq;9{+c4w%)AGU%RN6RN~dE(|rK)E4h zAzlPcV)db6q{o2keAt}kWhKJS3KG^@x!4Kbk|Gk)We9(v^Wuzc@ zew;MN?$Wvdo, 2021-2022. +# lumingzh , 2021-2024. # msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" -"PO-Revision-Date: 2022-01-05 14:26+0800\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" +"PO-Revision-Date: 2024-10-27 08:17+0800\n" "Last-Translator: lumingzh \n" -"Language-Team: Chinese - China \n" +"Language-Team: Chinese (China) \n" "Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0\n" -"X-Generator: Gtranslator 41.0\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Gtranslator 47.0\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "导出运行时而不是应用" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "要打包的架构" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "架构" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "仓库网址" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "网址" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "运行时 flatpakrepo 文件的网址" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "从文件添加 GPG 密钥(- 用于 stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "文件" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "签名 OCI 镜像使用的 GPG 密钥身份标识" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "KEY-ID" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "KEY-ID" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "查找密钥环时使用的 GPG 主目录" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "主目录" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" -msgstr "创建增量包使用的 OSTree 交付" +msgstr "创建增量包使用的 OSTree 提交" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" -msgstr "交付" +msgstr "提交" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "导出 OCI 镜像而不是 flatpak 捆绑包" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" msgstr "位置 文件名 名称 [分支] - 从本地仓库创建单文件捆绑包" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "必须指定位置、文件名和名称" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "参数太多" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "“%s”不是有效的仓库" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "“%s”不是有效的仓库:" -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "“%s”不是有效的名称:%s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "“%s”不是有效的分支名称:%s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -207,7 +207,7 @@ msgstr "目录" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "在哪里查找自定义 SDK 目录(默认“usr”)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "为元数据使用替代文件" @@ -227,474 +227,480 @@ msgstr "日志会话总线调用" msgid "Log system bus calls" msgstr "日志系统总线调用" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "目录 [命令 [参数…]] - 在目录中构建" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "必须指定目录" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "构建目录 %s 未初始化,使用 flatpak build-init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "元数据无效,不是应用或运行时" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "在 %2$s 中没有匹配 %1$s 的扩展点" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "在绑定挂载选项“%s”中缺少“=”" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "无法启动应用" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "源仓库目录" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "SRC-REPO" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "源仓库引用" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "SRC-REF" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "单行主题" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "主题" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "完整描述" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "正文" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "更新 appstream 分支" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "更新 appstream 分支" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "不更新摘要" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" -msgstr "签名交付使用的 GPG 密钥身份标识" +msgstr "签署提交时使用的 GPG 密钥身份标识" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "将构建标记为寿命完结" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "原因" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" msgstr "将匹配旧身份标识的引用标记为寿命完结,使用给定的新身份标识进行替换" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "OLDID=NEWID" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" -msgstr "设置安装该交付需要的令牌类型" +msgstr "设置安装该提交需要的令牌类型" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "值" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" -msgstr "覆盖交付的时间戳(NOW 为当前时间)" +msgstr "覆盖提交的时间戳(NOW 为当前时间)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "时间戳" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 msgid "Don't generate a summary index" msgstr "不生成摘要索引" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" -msgstr "DST-REPO [DST-REF…] - 从现有交付中创建新交付" +msgstr "DST-REPO [DST-REF…] - 从现有提交中创建新提交" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "必须指定 DST-REPO" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "如果 --src-repo 没有指定,则必须指定绝对的目标引用" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "如果 --src-ref 没有指定,则必须指定绝对的目标引用" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "必须指定 --src-repo 或 --src-ref" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "无效的参数使用格式 --end-of-life-rebase=OLDID=NEWID" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "--end-of-life-rebase 中存在无效名称 %s" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "无法解析“%s”" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" -msgstr "无法从部分源交付中交付" +msgstr "无法从部分源记录中提交" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s:无变化\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "要导出的架构(必须与主机兼容)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" -msgstr "交付运行时(/usr),不是 /app" +msgstr "提交运行时(/usr),不是 /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "为文件使用替代目录" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "子目录" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "要排除的文件" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" -msgstr "范例" +msgstr "匹配模式" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "要包含的排除文件" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "将构建标记为寿命完结,使用给定的身份标识进行替换" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" -msgstr "覆盖交付的时间戳" +msgstr "覆盖提交的时间戳" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "集合标识" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "警告:运行 desktop-file-validate 时出错:%s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "警告:从 desktop-file-validate 读取时出错:%s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "警告:校验桌面文件 %s 时失败:%s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "警告:在 %s 中无法找到运行密钥:%s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "警告:在 %s 中未找到要运行的二进制文件:%s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "警告:图标与 %s 中的应用标识不匹配:%s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "警告:桌面文件中引用的图标未导出:%s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "无效的网址类型 %s,仅支持 http/https" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "在 %s 中找不到基本名称,请明确指定名称" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "在额外数据名称中不允许有斜线符号" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "SHA256 校验和的格式无效:“%s”" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "不支持零的额外数据大小" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "位置 目录 [分支] - 从构建目录创建仓库" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "必须指定位置和目录" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "“%s”不是有效的集合标识:%s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "在元数据中未指定名称" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" -msgstr "交付:%s\n" +msgstr "提交:%s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "元数据总计:%u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "写入的元数据:%u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "内容总计:%u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "写入内容:%u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "写入内容字节:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "要设置的命令" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "命令" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "Flatpak 版本要求" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "MAJOR.MINOR.MICRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "不处理导出" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "额外数据信息" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "添加扩展点信息" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NAME=VARIABLE[=VALUE]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "移除扩展点信息" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "名称" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "设置扩展优先级(仅用于扩展)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "值" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "更改用于应用的 SDK" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "更改用于应用的运行时" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "运行时" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "设置常规元数据选项" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "组=密钥[=值]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "不要从运行时继承权限" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "" "无法导出 %s,扩展错误\n" "\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "无法导出 %s,不允许的导出文件名\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "正在导出 %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "找到多个可执行文件\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "使用 %s 作为命令\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "未发现可执行文件\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "无效的 --require-version 参数:%s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "--extra-data 参数 %s 中的元素太少" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " "GROUP=KEY[=VALUE]]" msgstr "--metadata 参数 %s 中的元素太少,格式应为:组=密钥[=值]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -702,62 +708,63 @@ msgid "" "NAME=VAR[=VALUE]" msgstr "--extension 参数 %s 中的元素太少,格式应为:名称=变量[=值]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, c-format msgid "Invalid extension name %s" msgstr "无效的扩展名称 %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "目录 - 完成构建目录" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "构建目录 %s 未初始化" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "构建目录 %s 已完成" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "请审阅导出的文件和元数据\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "覆盖用于导入包的引用" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "引用" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "导入 OCI 镜像而不是 flatpak 捆绑包" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "在注册表中未发现引用“%s”" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "注册表中有多个镜像,使用 --ref 指定一个引用" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "正在导入 %s(%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "位置 文件名 - 导入文件捆绑包至本地仓库" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "必须指定位置和文件名" @@ -835,14 +842,14 @@ msgid "Re-initialize the sdk/var" msgstr "重新初始化 SDK/变量" #: app/flatpak-builtins-build-init.c:118 -#, fuzzy, c-format +#, c-format msgid "Requested extension %s/%s/%s is only partially installed" -msgstr "请求的扩展 %s 仅部分安装" +msgstr "请求的扩展 %s/%s/%s 仅安装了部分" #: app/flatpak-builtins-build-init.c:147 -#, fuzzy, c-format +#, c-format msgid "Requested extension %s/%s/%s not installed" -msgstr "请求的扩展 %s 未安装" +msgstr "请求的扩展 %s/%s/%s 未安装" #: app/flatpak-builtins-build-init.c:207 msgid "" @@ -868,205 +875,208 @@ msgstr "“%s”不是有效的应用名称:%s" msgid "Build directory %s already initialized" msgstr "构建目录 %s 已初始化" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "安装目标的架构" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "使用指定名称查找运行时" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "位置 [身份标识 [分支]] - 签名应用或运行时" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "必须指定位置" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "未指定 GPG 密钥身份标识" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "将该仓库重定向至新网址" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "用于该仓库的好名字" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "标题" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "用于该仓库的单行注释" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "注释" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "用于该仓库的完整分段描述" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "描述" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "用于该仓库的网站网址" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "用于该仓库的图标网址" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "用于该仓库的默认分支" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "分支" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "COLLECTION-ID" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" msgstr "将集合身份标识永久部署到客户端远程配置,仅用于侧载支持" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "将集合身份标识永久部署到客户端远程配置" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "用于该仓库的身份验证器名称" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "为该仓库自动安装身份验证器" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "不要为该仓库自动安装身份验证器" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "身份验证器选项" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "KEY=VALUE" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "从文件导入新的默认 GPG 公钥" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "用于签名摘要的 GPG 密钥标识" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "生成增量文件" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "不更新 appstream 分支" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "创建增量时的最大并行作业数量(默认:处理器数量)" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "NUM-JOBS" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "不创建匹配引用的增量" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "修剪未使用的对象" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "修剪但并不真正移除任何东西" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" -msgstr "为每次交付仅遍历的上级深度(默认:-1=无限)" +msgstr "为每次提交仅遍历的上级深度(默认:-1=infinite)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "深度" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "生成增量:%s(%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "生成增量:%s(%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "生成增量 %s 失败(%.10s):" -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "生成增量 %s 失败(%.10s-%.10s):" -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "位置 - 更新仓库元数据" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "更新 appstream 分支\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "更新摘要\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "对象总计:%u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "没有无法访问的对象\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "已删除 %u 个对象,已释放 %s\n" @@ -1138,109 +1148,109 @@ msgstr "只能使用 --list、--get、--set 或 --unset 之一" msgid "Must specify one of --list, --get, --set or --unset" msgstr "必须指定 --list、--get、--set 或 --unset 之一" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "用指定名称查找应用" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "要复制的架构" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "目标" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" -msgstr "允许在创建的仓库中部分交付" +msgstr "允许在创建的仓库中部分提交" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " "suppress this message.\n" msgstr "警告:相关引用“%s”是部分安装。使用 --allow-partial 隐藏该消息。\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "警告:由于相关引用“%s”未安装而对其省略。\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " "collection ID set.\n" msgstr "警告:由于相关引用“%s”的远程仓库“%s”没有设置集合标识而对其省略。\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "警告:由于相关引用“%s”是额外数据而对其省略。\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " "distribution of ‘%s’." msgstr "远程仓库“%s”没有设置对“%s”进行 P2P 发行所需的集合标识。" -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "警告:由于引用“%s”(“%s”的运行时)是额外数据而对其省略。\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "MOUNT-PATH [引用…] - 将应用或运行时复制到可移动媒体上" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "必须指定 MOUNT-PATH 和引用" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "在多个安装中发现引用“%s”:%s。您必须指定一个。" -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "引用必须全部位于同一安装中(在 %s 和 %s 中找到)。" -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " "this message.\n" msgstr "警告:引用“%s”是部分安装。使用 --allow-partial 隐藏该消息。\n" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "已安装引用“%s”是额外数据,且无法离线发行" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "警告:无法为远程仓库“%s”更新仓库元数据:%s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "警告:无法为远程仓库“%s”架构“%s”更新 appstream 数据:%s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" msgstr "警告:无法找到用于远程仓库“%s”架构“%s”的 appstream 数据:%s;%s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "无法找到用于远程仓库“%s”架构“%s”的 appstream2 数据:%s\n" @@ -1313,19 +1323,20 @@ msgstr "文件 - 获取关于导出文件的信息" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "未导出\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "显示什么信息" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "领域,…" @@ -1344,7 +1355,7 @@ msgid "Show the document path" msgstr "显示文档路径" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "来源" @@ -1358,7 +1369,7 @@ msgid "Show applications with permission" msgstr "显示获得权限的应用" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "权限" @@ -1372,9 +1383,8 @@ msgid "[APPID] - List exported files" msgstr "[应用标识] - 列出导出的文件" #: app/flatpak-builtins-document-unexport.c:43 -#, fuzzy msgid "Specify the document ID" -msgstr "显示文档标识" +msgstr "指定文档标识" #: app/flatpak-builtins-document-unexport.c:58 msgid "FILE - Unexport a file to apps" @@ -1483,12 +1493,12 @@ msgid "Show the kind of change" msgstr "显示更改的类型" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "引用" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "显示引用" @@ -1497,24 +1507,24 @@ msgid "Show the application/runtime ID" msgstr "显示应用/运行时标识" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "架构" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "显示架构" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "分支" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "显示分支" @@ -1526,7 +1536,7 @@ msgstr "安装" msgid "Show the affected installation" msgstr "显示受影响的安装" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "远程" @@ -1535,27 +1545,27 @@ msgid "Show the remote" msgstr "显示远程仓库" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" -msgstr "交付" +msgstr "提交" #: app/flatpak-builtins-history.c:65 msgid "Show the current commit" -msgstr "显示当前交付" +msgstr "显示当前提交" #: app/flatpak-builtins-history.c:66 msgid "Old Commit" -msgstr "旧交付" +msgstr "旧提交" #: app/flatpak-builtins-history.c:66 msgid "Show the previous commit" -msgstr "显示上一次交付" +msgstr "显示上一次提交" #: app/flatpak-builtins-history.c:67 msgid "Show the remote URL" msgstr "显示远程仓库网址" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "用户" @@ -1572,7 +1582,7 @@ msgid "Show the tool that was used" msgstr "显示曾经使用的工具" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "版本" @@ -1600,10 +1610,12 @@ msgid " - Show history" msgstr " - 显示历史" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "解析 --since 选项失败" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "解析 --until 选项失败" @@ -1619,13 +1631,13 @@ msgstr "显示系统级安装" msgid "Show specific system-wide installations" msgstr "显示指定的系统级安装" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "显示引用" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" -msgstr "显示交付" +msgstr "显示提交" #: app/flatpak-builtins-info.c:61 msgid "Show origin" @@ -1635,15 +1647,15 @@ msgstr "显示来源" msgid "Show size" msgstr "显示大小" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "显示元数据" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "显示运行时" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "显示 SDK" @@ -1655,8 +1667,8 @@ msgstr "显示权限" msgid "Query file access" msgstr "查询文件访问" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1674,7 +1686,7 @@ msgstr "显示位置" msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "名称 [分支] - 获取关于已安装应用或运行时的信息" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "必须指定名称" @@ -1683,106 +1695,108 @@ msgstr "必须指定名称" msgid "ref not present in origin" msgstr "引用在来源中不存在" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" -msgstr "警告:交付中没有 flatpak 元数据\n" +msgstr "警告:提交中没有 flatpak 元数据\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "标识:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "引用:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "架构:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "分支:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "版本:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "许可证:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "集合:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "安装:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "已安装:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "运行时:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "SDK:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "日期:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "主题:" #: app/flatpak-builtins-info.c:240 app/flatpak-builtins-info.c:295 msgid "Active commit:" -msgstr "激活交付:" +msgstr "激活提交:" #: app/flatpak-builtins-info.c:241 app/flatpak-builtins-info.c:298 msgid "Latest commit:" -msgstr "最新交付:" +msgstr "最新提交:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" -msgstr "交付:" +msgstr "提交:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "上级:" @@ -1791,14 +1805,14 @@ msgid "Alt-id:" msgstr "替代标识:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "寿命完结:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "报废的基础系统:" @@ -1807,145 +1821,146 @@ msgid "Subdirectories:" msgstr "子目录:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "扩展:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "来源:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "子路径:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "无人维护" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "未知" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "不要提取,仅从本地缓存安装" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "不要部署,仅下载到本地缓存" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "不要安装相关的引用" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "不要验证/安装运行时依赖" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "不要自动置顶明确的安装" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "不要使用静态增量" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" -msgstr "" +msgstr "附带安装用于构建给定引用的 SDK" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "另外 为给定的引用及其依赖安装调试信息包" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "假定位置是 .flatpak 单文件捆绑包" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "假定位置是 .flatpakref 应用描述" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "用来自文件(- 用于 stdin)的 GPG 密钥检查捆绑包签名" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "仅安装此子路径" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "对所有问题自动回答是" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "如果已安装会先卸载" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "显示最少的输出信息且不会询问问题" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "如果已经安装会更新安装" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "对侧载使用该本地仓库" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "必须指定捆绑包文件名" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "不支持远程捆绑包" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "必须指定文件名或网址" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "[位置/远程] [引用…] - 安装应用程序或运行时" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "必须至少指定一个引用" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "寻找匹配项…\n" -#: app/flatpak-builtins-install.c:456 -#, fuzzy, c-format +#: app/flatpak-builtins-install.c:457 +#, c-format msgid "No remote refs found for ‘%s’" -msgstr "未发现与“%s”相似的远程引用" +msgstr "未发现用于“%s”的远程引用" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "无效的分支 %s:%s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "未在用于远程仓库 %2$s 的本地仓库中发现 %1$s 的匹配项" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "未在远程仓库 %2$s 中发现 %1$s 的匹配项" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "正在跳过:%s\n" @@ -1983,51 +1998,51 @@ msgstr "列出已安装的应用" msgid "Arch to show" msgstr "要显示的架构" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "列出所有引用(包括本地化/调试)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "列出所有使用指定运行时的应用" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "名称" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "显示名字" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "描述" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "显示说明" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "应用程序 ID" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "显示应用程序标识" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "显示版本" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "运行时" @@ -2035,7 +2050,7 @@ msgstr "运行时" msgid "Show the used runtime" msgstr "显示使用的运行时" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "显示来源的远程仓库" @@ -2045,49 +2060,49 @@ msgstr "显示安装" #: app/flatpak-builtins-list.c:67 msgid "Active commit" -msgstr "激活交付" +msgstr "激活提交" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" -msgstr "显示激活的交付" +msgstr "显示激活的提交" #: app/flatpak-builtins-list.c:68 msgid "Latest commit" -msgstr "最新交付" +msgstr "最新提交" #: app/flatpak-builtins-list.c:68 msgid "Show the latest commit" -msgstr "显示最新的交付" +msgstr "显示最新的提交" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "安装大小" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "显示安装后的大小" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "选项" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "显示选项" -#: app/flatpak-builtins-list.c:179 -#, fuzzy, c-format +#: app/flatpak-builtins-list.c:178 +#, c-format msgid "Unable to load details of %s: %s" -msgstr "无法从远程仓库 %s 加载摘要:%s" +msgstr "无法加载 %s 的详情:%s" -#: app/flatpak-builtins-list.c:189 +#: app/flatpak-builtins-list.c:188 #, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "无法检查 %s 的当前版本:%s" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - 列出已安装的应用和/或运行时" @@ -2099,7 +2114,7 @@ msgstr "要使之成为当前运行的架构" msgid "APP BRANCH - Make branch of application current" msgstr "应用 分支 - 使指定分支的应用成为当前运行的" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "必须指定应用" @@ -2119,15 +2134,17 @@ msgstr "移除匹配项屏蔽" #: app/flatpak-builtins-mask.c:54 msgid "" "[PATTERN…] - disable updates and automatic installation matching patterns" -msgstr "[范例…] - 禁用范例匹配项的更新和自动安装" +msgstr "[匹配模式…] - 禁用更新和自动安装匹配模式" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" -msgstr "没有屏蔽的范例\n" +msgstr "没有屏蔽的匹配模式\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" -msgstr "屏蔽的范例:\n" +msgstr "屏蔽的匹配模式:\n" #: app/flatpak-builtins-override.c:42 msgid "Remove existing overrides" @@ -2141,26 +2158,26 @@ msgstr "显示现存覆盖" msgid "[APP] - Override settings [for application]" msgstr "[应用] - 覆盖设置 [用于应用]" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[表格] [标识] - 列出权限" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "表格" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "对象" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "应用" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "数据" @@ -2214,15 +2231,17 @@ msgstr "移除匹配的置顶" #: app/flatpak-builtins-pin.c:56 msgid "[PATTERN…] - disable automatic removal of runtimes matching patterns" -msgstr "[范例…] - 禁用对匹配范例的运行时的自动移除" +msgstr "[匹配模式…] - 禁用对匹配匹配模式的运行时的自动移除" #: app/flatpak-builtins-pin.c:75 +#, c-format msgid "No pinned patterns\n" -msgstr "没有置顶的范例\n" +msgstr "没有置顶的匹配模式\n" #: app/flatpak-builtins-pin.c:80 +#, c-format msgid "Pinned patterns:\n" -msgstr "置顶的范例:\n" +msgstr "置顶的匹配模式:\n" #: app/flatpak-builtins-ps.c:47 msgid "Instance" @@ -2254,7 +2273,7 @@ msgstr "显示应用程序分支" #: app/flatpak-builtins-ps.c:53 msgid "Show the application commit" -msgstr "显示应用程序交付" +msgstr "显示应用程序提交" #: app/flatpak-builtins-ps.c:54 msgid "Show the runtime ID" @@ -2270,11 +2289,11 @@ msgstr "显示运行时分支" #: app/flatpak-builtins-ps.c:56 msgid "R.-Commit" -msgstr "R.-交付" +msgstr "R.-提交" #: app/flatpak-builtins-ps.c:56 msgid "Show the runtime commit" -msgstr "显示运行时交付" +msgstr "显示运行时提交" #: app/flatpak-builtins-ps.c:57 msgid "Active" @@ -2296,124 +2315,124 @@ msgstr "显示应用是否处于后台状态" msgid " - Enumerate running sandboxes" msgstr " - 列出正在运行的沙盒" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "如果提供的远程仓库不存在则不进行任何操作" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "该位置指定的是配置文件,不是仓库位置" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "禁用 GPG 校验" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "将该远程仓库标记为不被列举" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "将该远程仓库标记为不被用于依赖" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "设置优先级(默认 1,越高越优先)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "优先级" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 msgid "The named subset to use for this remote" msgstr "用于该远程仓库的已命名子集" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "子集" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "用于该远程仓库的好名字" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "用于该远程仓库的单行注释" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "用于该远程仓库的完整分段描述" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "用于该远程仓库的网站地址" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "用于该远程仓库的图标网址" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "用于该远程仓库的默认分支" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "从文件导入 GPG 密钥(- 用于 stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "设置本地筛选器文件的路径" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "禁用该远程仓库" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "身份验证器名称" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "自动安装身份验证器" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "不要自动安装身份验证器" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "不要跟随摘要文件中设置的重定向" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "无法加载网址 %s:%s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "无法加载文件 %s:%s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "名称 位置 - 添加远程仓库" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "如果启用了集合则需要 GPG 校验" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "远程仓库 %s 已经存在" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "无效的验证器名称 %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "警告:无法为“%s”更新额外元数据:%s\n" @@ -2440,62 +2459,62 @@ msgstr "移除它们吗?" msgid "Can't remove remote '%s' with installed refs" msgstr "无法移除具有已安装引用的远程仓库“%s”" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" -msgstr "要显示信息的交付" +msgstr "提交显示信息于" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "显示日志" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "显示上级" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "即使它们是陈旧的仍要使用本地缓存" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "仅列出作为侧载可用的引用" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr " 远程仓库 引用 - 显示远程仓库中应用或运行时的有关信息" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "必须指定远程仓库和引用" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "下载:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "历史:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" -msgstr " 交付:" +msgstr " 提交:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " 主题:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " 日期:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" -msgstr "警告:交付 %s 没有 flatpak 元数据\n" +msgstr "警告:提交 %s 没有 flatpak 元数据\n" #: app/flatpak-builtins-remote-list.c:42 msgid "Show remote details" @@ -2521,7 +2540,7 @@ msgstr "显示网址" msgid "Show the collection ID" msgstr "显示集合标识" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "子集" @@ -2577,39 +2596,39 @@ msgstr "显示图示" msgid " - List remote repositories" msgstr " - 列出远程仓库" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "显示架构和分支" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "仅显示运行时" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "仅显示应用" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "仅显示有可用更新的" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "限制为该架构(* 为全部)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "显示运行时" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "下载大小" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "显示下载大小" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr " [远程仓库或网址] - 显示可用的运行时和应用程序" @@ -2705,24 +2724,24 @@ msgid "Can't load object %s: %s\n" msgstr "无法加载对象 %s:%s\n" #: app/flatpak-builtins-repair.c:228 -#, fuzzy, c-format +#, c-format msgid "Commit invalid %s: %s\n" -msgstr "对象无效:%s.%s\n" +msgstr "无效的提交 %s:%s\n" #: app/flatpak-builtins-repair.c:231 -#, fuzzy, c-format +#, c-format msgid "Deleting invalid commit %s: %s\n" -msgstr "无效的交付引用 %s:" +msgstr "正在删除无效的提交 %s:%s\n" #: app/flatpak-builtins-repair.c:261 #, c-format msgid "Commit should be marked partial: %s\n" -msgstr "" +msgstr "提交应被标记为部分的:%s\n" #: app/flatpak-builtins-repair.c:264 #, c-format msgid "Marking commit as partial: %s\n" -msgstr "" +msgstr "正在标记提交为部分的:%s\n" #: app/flatpak-builtins-repair.c:293 #, c-format @@ -2738,224 +2757,231 @@ msgstr "重新安装 %s 时出错:%s\n" msgid "- Repair a flatpak installation" msgstr "- 修复 flatpak 安装" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "正在移除非部署的引用 %s…\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "正在跳过非部署的引用 %s…\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "[%d/%d] 正在校验 %s…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "演练:" -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "由于缺失对象正在删除引用 %s\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "由于无效对象正在删除引用 %s\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "由于 %2$d 正在删除引用 %1$s\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "正在检查远程仓库…\n" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "引用 %2$s 的远程仓库 %1$s 缺失\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "引用 %2$s 的远程仓库 %1$s 已禁用\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "正在修剪对象\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "正在擦除 .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "重新安装引用\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "重新安装已移除的引用\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "正在移除 %s 的 appstream 时:" -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "正在部署 %s 的 appstream 时:" -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "仓库模式:%s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "索引的摘要:%s\n" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "正确的" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "失败的" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "子摘要:" -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "缓存版本:%d\n" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "索引的增量:%s\n" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "标题:%s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "评论:%s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "描述:%s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "主页:%s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "图标:%s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "集合标识:%s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "默认分支:%s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "重定向网址:%s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "部署集合标识:%s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "身份验证器名称:%s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "身份验证器安装:%s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "GPG 密钥哈希:%s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, c-format msgid "%zd summary branches\n" msgstr "%zd 摘要分支\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "已安装" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "下载" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "子集" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "摘要" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 msgid "History length" msgstr "历史长度" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "显示有关仓库的常规信息" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "列出仓库中的分支" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "显示分支的元数据" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" -msgstr "显示分支的交付" +msgstr "显示分支的提交" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 msgid "Print information about the repo subsets" msgstr "显示有关仓库子集的信息" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "限制为带有该前缀的子集的信息" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "位置 - 仓库维护" @@ -3013,11 +3039,11 @@ msgstr "启用文件转发" #: app/flatpak-builtins-run.c:82 msgid "Run specified commit" -msgstr "运行指定的交付" +msgstr "运行指定的提交" #: app/flatpak-builtins-run.c:83 msgid "Use specified runtime commit" -msgstr "使用指定的运行时交付" +msgstr "使用指定的运行时提交" #: app/flatpak-builtins-run.c:84 msgid "Run completely sandboxed" @@ -3047,11 +3073,11 @@ msgstr "使用路径替代应用的 /app" msgid "Use PATH instead of the runtime's /usr" msgstr "使用路径替代运行时的 /usr" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "应用 [参数…] - 运行应用" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "运行时 /%s/%s/%s 未安装" @@ -3068,15 +3094,15 @@ msgstr "远程仓库" msgid "Show the remotes" msgstr "显示远程仓库" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "文字 - 搜索含指定文字的远程应用/运行时" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "必须指定文字" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "找不到匹配项" @@ -3116,22 +3142,20 @@ msgstr "删除 %s 的数据吗?" #: app/flatpak-builtins-uninstall.c:220 #, c-format msgid "Info: applications using the extension %s%s%s branch %s%s%s:\n" -msgstr "" +msgstr "信息:使用扩展 %s%s%s 分支 %s%s%s 的应用程序:\n" #: app/flatpak-builtins-uninstall.c:223 -#, fuzzy, c-format +#, c-format msgid "Info: applications using the runtime %s%s%s branch %s%s%s:\n" -msgstr "使用该运行时的应用程序:\n" +msgstr "信息:使用运行时 %s%s%s 分支 %s%s%s 的应用程序:\n" #: app/flatpak-builtins-uninstall.c:238 -#, fuzzy msgid "Really remove?" -msgstr "远程" +msgstr "确定移除吗?" #: app/flatpak-builtins-uninstall.c:255 -#, fuzzy msgid "[REF…] - Uninstall applications or runtimes" -msgstr "[引用…] - 更新应用程序或运行时" +msgstr "[引用…] - 卸载应用程序或运行时" #: app/flatpak-builtins-uninstall.c:264 msgid "Must specify at least one REF, --unused, --all or --delete-data" @@ -3156,13 +3180,14 @@ msgstr "" "这些运行时在安装“%s”中是置顶的且不会被移除;查阅 flatpak-pin(1):\n" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "无可卸载的未使用项目\n" #: app/flatpak-builtins-uninstall.c:444 -#, fuzzy, c-format +#, c-format msgid "No installed refs found for ‘%s’" -msgstr "找到与“%s”相似的已安装引用:" +msgstr "未找到用于“%s”的已安装引用" #: app/flatpak-builtins-uninstall.c:447 #, c-format @@ -3180,6 +3205,7 @@ msgid "Warning: %s is not installed\n" msgstr "警告:%s 未安装\n" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "指定的引用都没有安装" @@ -3189,7 +3215,7 @@ msgstr "要更新的架构" #: app/flatpak-builtins-update.c:57 msgid "Commit to deploy" -msgstr "要部署的交付" +msgstr "要部署的提交" #: app/flatpak-builtins-update.c:58 msgid "Remove old files even if running" @@ -3220,6 +3246,7 @@ msgid "With --commit, only one REF may be specified" msgstr "带有 --commit,仅可指定一个引用" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "正在查找更新…\n" @@ -3229,26 +3256,27 @@ msgid "Unable to update %s: %s\n" msgstr "无法更新 %s:%s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "无事可做。\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "在多个安装中发现远程仓库“%s”:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "您要使用哪个(0 为放弃)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "没有选择远程仓库以解决存在于多个安装中的“%s”" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3257,13 +3285,13 @@ msgstr "" "未找到远程仓库“%s”\n" "提示:使用 flatpak remote-add 来添加远程仓库" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "在 %2$s 安装中未发现远程仓库“%1$s”" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3272,137 +3300,128 @@ msgstr "" "在远程仓库“%2$s”(%3$s)中找到引用“%1$s”。\n" "使用该引用吗?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "未选择引用来解决“%s”的匹配项" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "在远程仓库“%2$s”(%3$s)中找到与“%1$s”相似的引用:" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "找到已安装的引用“%s”(%s)。这结果正确吗?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "上面全部" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "找到与“%s”相似的已安装引用:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"在远程仓库“%2$s”(%3$s)中找到与“%1$s”相似的引用。\n" -"使用该远程仓库吗?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "找到具有与“%s”相似引用的远程仓库:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "未选择远程仓库以解决“%s”的匹配项" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "找到具有与“%s”相似引用的远程仓库:" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "正在为用户远程仓库 %s 更新 appstream 数据" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "正在为远程仓库 %s 更新 appstream 数据" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "更新时出错" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "未找到远程仓库“%s”" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "后缀不明确:“%s”。" #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "可能的值为 :s[tart]、:m[iddle]、:e[nd] 或 :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "无效后缀:“%s”。" -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "列不明确:%s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "未知列:%s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "可用列:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "显示所有列" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "显示可用列" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "附加 :s[tart]、:m[iddle]、:e[nd] 或 :f[ull] 以更改文字省略位置" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "在远程仓库 %3$s 中找到 %1$s(%2$s)需要的运行时\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "您想要安装它吗?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "在远程仓库中找到 %s(%s)需要的运行时:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "您要安装哪个(0 为放弃)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "将 %s 配置为新的远程仓库“%s”\n" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3413,7 +3432,7 @@ msgstr "" "要保留该远程仓库以用于未来的安装吗?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3424,259 +3443,266 @@ msgstr "" " %s\n" "将其配置为新的远程仓库“%s”" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "正在安装…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "正在安装 %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "正在更新…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "正在更新 %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "正在卸载…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "正在卸载 %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "信息:%s 已跳过" -#: app/flatpak-cli-transaction.c:512 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:516 +#, c-format msgid "Warning: %s%s%s already installed" -msgstr "%s 已安装" +msgstr "警告:%s%s%s 已安装" -#: app/flatpak-cli-transaction.c:515 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:519 +#, c-format msgid "Error: %s%s%s already installed" -msgstr "%s 已安装" +msgstr "错误:%s%s%s 已安装" -#: app/flatpak-cli-transaction.c:521 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:525 +#, c-format msgid "Warning: %s%s%s not installed" -msgstr "警告:%s 未安装\n" +msgstr "警告:%s%s%s 未安装" -#: app/flatpak-cli-transaction.c:524 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:528 +#, c-format msgid "Error: %s%s%s not installed" -msgstr "%s/%s/%s 未安装" +msgstr "错误:%s%s%s 未安装" -#: app/flatpak-cli-transaction.c:530 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:534 +#, c-format msgid "Warning: %s%s%s needs a later flatpak version" -msgstr "%s 需要更高的 flatpak 版本" +msgstr "警告:%s%s%s 需要更高的 flatpak 版本" -#: app/flatpak-cli-transaction.c:533 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:537 +#, c-format msgid "Error: %s%s%s needs a later flatpak version" -msgstr "%s 需要更高的 flatpak 版本" +msgstr "错误:%s%s%s 需要更高的 flatpak 版本" -#: app/flatpak-cli-transaction.c:539 -#, fuzzy +#: app/flatpak-cli-transaction.c:543 msgid "Warning: Not enough disk space to complete this operation" -msgstr "没有足够的硬盘空间以完成该操作" +msgstr "警告:没有足够的硬盘空间以完成该操作" -#: app/flatpak-cli-transaction.c:541 -#, fuzzy +#: app/flatpak-cli-transaction.c:545 msgid "Error: Not enough disk space to complete this operation" -msgstr "没有足够的硬盘空间以完成该操作" +msgstr "错误:没有足够的硬盘空间以完成该操作" -#: app/flatpak-cli-transaction.c:546 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:550 +#, c-format msgid "Warning: %s" -msgstr "警告:" +msgstr "警告:%s" -#: app/flatpak-cli-transaction.c:548 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:552 +#, c-format msgid "Error: %s" -msgstr "错误:" +msgstr "错误:%s" -#: app/flatpak-cli-transaction.c:563 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:567 +#, c-format msgid "Failed to install %s%s%s: " -msgstr "卸载 %s 以重新建基于 %s 失败:" +msgstr "安装 %s%s%s 失败:" -#: app/flatpak-cli-transaction.c:570 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:574 +#, c-format msgid "Failed to update %s%s%s: " -msgstr "无法 %s %s:" +msgstr "更新 %s%s%s 失败" -#: app/flatpak-cli-transaction.c:577 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:581 +#, c-format msgid "Failed to install bundle %s%s%s: " -msgstr "卸载 %s 以重新建基于 %s 失败:" +msgstr "安装捆绑包 %s%s%s 失败:" -#: app/flatpak-cli-transaction.c:584 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:588 +#, c-format msgid "Failed to uninstall %s%s%s: " -msgstr "卸载 %s 以重新建基于 %s 失败:" +msgstr "卸载 %s%s%s 失败:" -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "远程仓库“%s”需要身份验证\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "打开浏览器吗?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "需要登录的远程仓库 %s(域 %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "密码" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:747 +#, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, in favor of " "%s%s%s branch %s%s%s\n" -msgstr "信息:(置顶)%s//%s 寿命完结,使用 %s\n" +msgstr "" +"\n" +"信息:(已置顶)运行时 %s%s%s 分支 %s%s%s 已结束生命周期,替代为 %s%s%s 分支 " +"%s%s%s\n" -#: app/flatpak-cli-transaction.c:749 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:753 +#, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, in favor of %s%s%s branch " "%s%s%s\n" -msgstr "信息:%s//%s 寿命完结,使用 %s\n" +msgstr "" +"\n" +"信息:运行时 %s%s%s 分支 %s%s%s 已结束生命周期,替代为 %s%s%s 分支 %s%s%s\n" -#: app/flatpak-cli-transaction.c:752 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:756 +#, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, in favor of %s%s%s branch " "%s%s%s\n" -msgstr "信息:%s//%s 寿命完结,使用 %s\n" +msgstr "" +"\n" +"信息:应用 %s%s%s 分支 %s%s%s 已结束生命周期,替代为 %s%s%s 分支 %s%s%s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:768 +#, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" -msgstr "信息:(置顶)%s//%s 寿命完结,原因为:\n" +msgstr "" +"\n" +"信息:(已置顶)运行时 %s%s%s 分支 %s%s%s 已结束生命周期,原因:\n" -#: app/flatpak-cli-transaction.c:770 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:774 +#, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" -msgstr "信息:%s//%s 寿命完结,原因为:\n" +msgstr "" +"\n" +"信息:运行时 %s%s%s 分支 %s%s%s 已结束生命周期,原因:\n" -#: app/flatpak-cli-transaction.c:773 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:777 +#, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" -msgstr "信息:%s//%s 寿命完结,原因为:\n" +msgstr "" +"\n" +"信息:应用 %s%s%s 分支 %s%s%s 已结束生命周期,原因:\n" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, c-format msgid "Info: applications using this extension:\n" -msgstr "使用该运行时的应用程序:\n" +msgstr "信息:使用该扩展的应用程序:\n" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, c-format msgid "Info: applications using this runtime:\n" -msgstr "使用该运行时的应用程序:\n" +msgstr "信息:使用该运行时的应用程序:\n" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" -msgstr "" +msgstr "替换吗?" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "正在更新到重新建基版本\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "重新建基 %s 至 %s 失败:" -#: app/flatpak-cli-transaction.c:1009 +#: app/flatpak-cli-transaction.c:1265 #, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "卸载 %s 以重新建基于 %s 失败:" - -#: app/flatpak-cli-transaction.c:1222 -#, fuzzy, c-format msgid "New %s%s%s permissions:" -msgstr "新的 %s 权限:" +msgstr "新的 %s%s%s 权限:" -#: app/flatpak-cli-transaction.c:1224 -#, fuzzy, c-format +#: app/flatpak-cli-transaction.c:1267 +#, c-format msgid "%s%s%s permissions:" -msgstr "%s 权限:" +msgstr "%s%s%s 权限:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "警告:" #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "操作" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "部分的" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "继续对用户安装进行这些更改吗?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "继续对系统安装进行这些更改吗?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "继续对 %s 进行这些更改吗?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "更改完成。" -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "卸载完成。" -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "安装完成。" -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "更新完成。" #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "存在一个或多个错误" @@ -3905,7 +3931,7 @@ msgstr "更新仓库中的摘要文件" #: app/flatpak-main.c:143 msgid "Create new commit based on existing ref" -msgstr "基于现有引用创建新的交付" +msgstr "基于现有引用创建新的提交" #: app/flatpak-main.c:144 msgid "Show information about a repo" @@ -3983,7 +4009,7 @@ msgstr "" "请注意 %s 目录不在由 XDG_DATA_DIRS 环境变量设置的搜索路径中,因此通过 " "Flatpak 安装的应用在会话重启前可能不会出现在您的桌面。" -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." @@ -3991,27 +4017,27 @@ msgstr "" "拒绝在 sudo 下带 --user 操作。在用户级安装时删去 sudo,或者在根用户级安装时使" "用根 shell 操作。" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 msgid "" "Multiple installations specified for a command that works on one installation" msgstr "为在用于一个安装的命令指定了多个安装" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "参见“%s --help”" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "“%s”不是 flatpak 命令。您的意思是“%s%s”吗?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "“%s”不是 flatpak 命令" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "未指定命令" @@ -4035,55 +4061,55 @@ msgid "Uninstalling %s\n" msgstr "正在卸载 %s\n" #: app/flatpak-quiet-transaction.c:107 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to install %s: %s\n" -msgstr "%s 未能执行 %s %s:%s\n" +msgstr "警告:安装 %s 失败:%s\n" #: app/flatpak-quiet-transaction.c:110 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to install %s: %s\n" -msgstr "重新安装 %s 时出错:%s\n" +msgstr "错误:安装 %s 失败:%s\n" #: app/flatpak-quiet-transaction.c:116 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to update %s: %s\n" -msgstr "无法更新 %s:%s\n" +msgstr "警告:更新 %s 失败:%s\n" #: app/flatpak-quiet-transaction.c:119 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to update %s: %s\n" -msgstr "无法更新 %s:%s\n" +msgstr "错误:更新 %s 失败:%s\n" #: app/flatpak-quiet-transaction.c:125 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to install bundle %s: %s\n" -msgstr "卸载 %s 以重新建基于 %s 失败:%s\n" +msgstr "警告:安装捆绑包 %s 失败:%s\n" #: app/flatpak-quiet-transaction.c:128 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to install bundle %s: %s\n" -msgstr "重新安装 %s 时出错:%s\n" +msgstr "错误:安装捆绑包 %s 失败:%s\n" #: app/flatpak-quiet-transaction.c:134 -#, fuzzy, c-format +#, c-format msgid "Warning: Failed to uninstall %s: %s\n" -msgstr "%s 未能执行 %s %s:%s\n" +msgstr "警告:卸载 %s 失败:%s\n" #: app/flatpak-quiet-transaction.c:137 -#, fuzzy, c-format +#, c-format msgid "Error: Failed to uninstall %s: %s\n" -msgstr "重新安装 %s 时出错:%s\n" +msgstr "错误:卸载 %s 失败:%s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "%s 已安装" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s 未安装" @@ -4112,57 +4138,53 @@ msgstr "信息:%s 寿命完结,原因为:%s\n" msgid "Failed to rebase %s to %s: %s\n" msgstr "无法将 %s 重新建基于 %s:%s\n" -#: app/flatpak-quiet-transaction.c:264 -#, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "卸载 %s 以重新建基于 %s 失败:%s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "没有为远程仓库“%s”配置的身份验证器" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "未知共享类型 %s,有效的类型为:%s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "未知策略类型 %s,有效的类型为:%s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "无效的 dbus 名称 %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "未知套接字类型 %s,有效的类型为:%s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "未知设备类型 %s,有效的类型为:%s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "未知功能类型 %s,有效的类型为:%s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "文件系统位置“%s”包含“..”" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "--filesystem=/ 不可用,使用 --filesystem=host 获得相似结果" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4171,601 +4193,633 @@ msgstr "" "未知文件系统位置 %s,有效的位置为:host、host-os、host-etc、home、xdg-*[/…]、" "~/dir、/dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "无效的环境格式 %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "环境变量名称不能包含“=”:%s" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "--add-policy 参数的格式必须为 SUBSYSTEM.KEY=VALUE" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "--add-policy 值不能以“!”开头" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "--remove-policy 参数的格式必须为 SUBSYSTEM.KEY=VALUE" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "--remove-policy 值不能以“!”开头" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "与主机共享" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "共享" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "取消与主机共享" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "将套接字暴露给应用" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "套接字" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "不要将套接字暴露给应用" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "将设备暴露给应用" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "设备" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "不要将设备暴露给应用" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "允许功能" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "功能" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "不允许功能" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "将文件系统暴露给应用(:ro 为只读)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "文件系统[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "不要将文件系统暴露给应用" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "文件系统" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "设置环境变量" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VAR=VALUE" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "以 env -0 格式从 FD 读取环境变量" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "FD" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "Remove variable from environment" msgstr "从环境中移除变量" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 msgid "VAR" msgstr "变量" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" -msgstr "允许应用在会话总线上拥有自己的名称" +msgstr "允许应用在会话总线上拥有名称" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "DBUS_NAME" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "允许应用与会话总线上的名字对话" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "不允许应用与会话总线上的名字对话" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "允许应用在系统总线上拥有自己的名称" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "允许应用与系统总线上的名字对话" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "不允许应用与系统总线上的名字对话" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +msgid "Allow app to own name on the a11y bus" +msgstr "允许应用在无障碍总线上拥有名称" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "添加常规策略选项" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "SUBSYSTEM.KEY=VALUE" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "移除常规策略选项" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "保留主目录子路径" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "添加 USB 设备至可枚举列表" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "VENDOR_ID:PRODUCT_ID" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "添加 USB 设备至隐藏列表" + +#: common/flatpak-context.c:1694 +#, fuzzy +msgid "A list of USB devices that are enumerable" +msgstr "可枚举的 USB 设备列表" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "列表" + +#: common/flatpak-context.c:1695 +#, fuzzy +msgid "File containing a list of USB devices to make enumerable" +msgstr "包含可枚举 USB 设备列表的文件" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "文件名" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "保留主目录子路径" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "不要求正在运行的会话(不创建 cgroups)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" -msgstr "" +msgstr "不用 tmpfs 替代“%s”:%s" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" -msgstr "" +msgstr "不与沙盒共享“%s”:%s" #. Even if the error is one that we would normally silence, like #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" -msgstr "" +msgstr "不允许访问主目录:%s" -#: common/flatpak-context.c:2828 -#, fuzzy, c-format +#: common/flatpak-context.c:3150 +#, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" -msgstr "无法在 %s 中创建临时目录" +msgstr "无法在沙盒中提供临时主目录:%s" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "已配置的集合标识“%s”不在摘要文件中" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "无法从远程仓库 %s 加载摘要:%s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "在远程仓库 %2$s 中没有引用“%1$s”" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 #, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " -msgstr "在远程仓库“%2$s”摘要 flatpak 缓存中没有 %1$s 的条目 " +msgid "No entry for %s in remote %s summary flatpak cache" +msgstr "在远程仓库 %2$s 摘要 flatpak 缓存中没有 %1$s 的条目" -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "远程仓库 %s 没有可用的摘要或 Flatpak 缓存" -#: common/flatpak-dir.c:921 -#, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "在远程仓库“%2$s”摘要缓存中没有 %1$s 的条目 " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, c-format msgid "Missing xa.data in summary for remote %s" msgstr "远程仓库 %s 的摘要中缺失 xa.data" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, c-format msgid "Unsupported summary version %d for remote %s" msgstr "不支持用于远程仓库 %2$s 的摘要版本 %1$d" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "远程 OCI 索引没有注册网址" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, c-format msgid "Couldn't find ref %s in remote %s" msgstr "在远程仓库 %2$s 中无法找到引用 %1$s" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "镜像不是清单" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" -msgstr "交付在引用绑定元数据中没有请求的引用“%s”" +msgstr "提交在引用绑定元数据中没有请求的引用“%s”" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "已配置的集合标识“%s”不在绑定元数据中" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "无法在远程仓库 %2$s 中找到引用 %1$s 的最新校验和" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "在远程仓库 %2$s 摘要 flatpak 解析缓存中没有 %1$s 的条目" -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" -msgstr "用于 %s 的交付元数据与预期不匹配" +msgstr "用于 %s 的提交元数据与预期不匹配" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "无法连接到系统总线" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "用户级安装" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "系统级(%s)安装" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "找不到 %s 的覆盖" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" -msgstr "%s(交付 %s)未安装" +msgstr "%s(提交 %s)未安装" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "解析 %s 的系统 flatpakrepo 文件时出错:%s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "打开仓库 %s 时:" -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "未设置配置密钥 %s" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, c-format msgid "No current %s pattern matching %s" -msgstr "当前 %s 没有范例匹配 %s" +msgstr "当前 %s 没有匹配模式 %s" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" -msgstr "没有 appstream 交付可部署" +msgstr "没有 appstream 提交可部署" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "无法从不信任的无 GPG 校验的远程仓库提取" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "无 GPG 校验的本地系统级安装不支持额外数据" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "额外数据网址 %s 校验和无效" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "额外数据网址 %s 的空白名称" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "不支持的额外数据网址 %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "加载本地额外数据 %s 失败:%s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "额外数据 %s 的大小错误" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "下载 %s 时:" -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "额外数据 %s 的大小错误" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "额外数据 %s 的校验和无效" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" -msgstr "%s 交付 %s 已安装" +msgstr "%s 提交 %s 已安装" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "从远程仓库 %2$s 提取 %1$s 时:" -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "找到 GPG 签名,但都不在信任的密钥环中" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" -msgstr "“%s”的交付没有引用绑定" +msgstr "“%s”的提交没有引用绑定" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" -msgstr "“%s”的交付不在预期的绑定引用中:%s" +msgstr "“%s”的提交不在预期的绑定引用中:%s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 msgid "Only applications can be made current" msgstr "仅应用程序可被作为当前" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "内存不足" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "从导出的文件读取失败" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "读取 mimetype xml 文件时出错" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "无效的 mimetype xml 文件" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "D-Bus 服务文件“%s”名称错误" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, c-format msgid "Invalid Exec argument %s" msgstr "无效的执行参数 %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "获取分离的元数据时:" -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "分离的元数据中缺少额外的数据" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "创建 extradir 时:" -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "额外数据的校验和无效" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "额外数据的大小错误" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "写入额外数据文件“%s”时:" -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "分离的元数据中缺少额外的数据 %s" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "apply_extra 脚本失败,退出状态为 %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "您的管理员设置的策略不允许安装 %s" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "尝试解决引用 %s 时:" -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s 不可用" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "无法创建部署目录" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " -msgstr "读取交付 %s 失败:" +msgstr "读取提交 %s 失败:" -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "尝试检验 %s 至 %s 时:" -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "尝试检验元数据子路径时:" -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "尝试检验子路径“%s”时:" -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "尝试移除现存额外目录时:" -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "尝试应用额外数据时:" -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " -msgstr "无效的交付引用 %s:" +msgstr "无效的提交引用 %s:" -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" -msgstr "已部署的引用 %s 不匹配交付(%s)" +msgstr "已部署的引用 %s 不匹配提交(%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" -msgstr "已部署的引用 %s 分支不匹配交付(%s)" +msgstr "已部署的引用 %s 分支不匹配提交(%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "%s 分支 %s 已安装" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "无法取消挂载位于 %s 的 revokefs-fuse 文件系统:" -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "此版本的 %s 已安装" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "捆绑包安装期间无法更改远程仓库" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" -msgstr "没有 root 权限无法更新至指定交付" +msgstr "没有 root 权限无法更新至指定提交" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "无法移除 %s,需要它的有:%s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s 分支 %s 未安装" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" -msgstr "%s 交付 %s 未安装" +msgstr "%s 提交 %s 未安装" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "修剪仓库失败:%s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "加载筛选器“%s”失败" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "解析筛选器“%s”失败" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "写入摘要缓存失败:" -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "远程仓库“%s”没有已缓存的 OCI 摘要" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, c-format msgid "No cached summary for remote '%s'" msgstr "远程仓库“%s”没有已缓存的摘要" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "从“%2$s”读取的已索引摘要 %1$s 的校验和无效" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " @@ -4774,241 +4828,270 @@ msgstr "" "%s 的远程列表不可用;服务器没有摘要文件。请检查传递给 remote-add 的网址是否有" "效。" -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "远程仓库“%2$s”的已索引摘要 %1$s 的校验和无效" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "%s 有多个可用分支,您必须指定一个:" -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "没有 %s 的匹配项" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "无法找到引用 %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "搜索远程仓库 %s 时出错:%s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "搜索本地仓库时出错:%s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s 未安装" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "无法找到安装 %s" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "无效的文件格式,没有 %s 组" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "无效的版本 %s,仅支持 1" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "无效的文件格式,没有指定 %s" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "无效的文件格式,GPG 密钥无效" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "集合标识要求提供 GPG 密钥" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "运行时 %s、分支 %s 已安装" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "应用 %s、分支 %s 已安装" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "无法移除具有已安装引用 %2$s(至少)的远程仓库“%1$s”" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "远程仓库名称中有无效字符“/”:%s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "没有为远程仓库 %s 指定配置" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "正在跳过删除镜像引用(%s,%s)…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" -msgstr "" +msgstr "需要绝对路径" -#: common/flatpak-exports.c:923 -#, fuzzy, c-format +#: common/flatpak-exports.c:933 +#, c-format msgid "Unable to open path \"%s\": %s" -msgstr "无法更新 %s:%s\n" +msgstr "无法打开路径“%s”:%s" -#: common/flatpak-exports.c:930 -#, fuzzy, c-format +#: common/flatpak-exports.c:940 +#, c-format msgid "Unable to get file type of \"%s\": %s" -msgstr "无法创建文件 %s" +msgstr "无法获取“%s”的文件类型:%s" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" -msgstr "" +msgstr "文件“%s”具有不支持的类型 0o%o" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" -msgstr "" +msgstr "无法获取“%s”的文件系统信息:%s" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" -msgstr "" +msgstr "正在忽略阻塞的 autofs 路径“%s”" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" -msgstr "" +msgstr "路径“%s”已被 Flatpak 预订" -#: common/flatpak-exports.c:1051 -#, fuzzy, c-format +#: common/flatpak-exports.c:1061 +#, c-format msgid "Unable to resolve symbolic link \"%s\": %s" -msgstr "无法更新符号链接 %s/%s" +msgstr "无法解析符号链接“%s”:%s" + +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "空字符串不是数字" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "“%s”不是未签名的数字" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "数字“%s”超出范围 [%s, %s]" -#: common/flatpak-installation.c:831 +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "引用 %s 未安装" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "应用 %s 未安装" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "远程仓库“%s”已存在" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "根据请求,%s 仅被提取,没有安装" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, c-format msgid "Unable to create directory %s" msgstr "无法创建目录 %s" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, c-format msgid "Unable to lock %s" msgstr "无法锁定 %s" -#: common/flatpak-instance.c:581 -#, c-format -msgid "Unable to open directory %s" -msgstr "无法打开目录 %s" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, c-format msgid "Unable to create temporary directory in %s" msgstr "无法在 %s 中创建临时目录" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, c-format msgid "Unable to create file %s" msgstr "无法创建文件 %s" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, c-format msgid "Unable to update symbolic link %s/%s" msgstr "无法更新符号链接 %s/%s" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "仅支持 Bearer 身份验证" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 msgid "Only realm in authentication request" msgstr "身份验证中仅请求领域" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 msgid "Invalid realm in authentication request" msgstr "身份验证中请求的领域无效" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, c-format msgid "Authorization failed: %s" msgstr "身份验证失败:%s" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "身份验证失败" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "请求令牌时遇到意料之外的响应状态 %d:%s" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 msgid "Invalid authentication request response" msgstr "无效的身份验证请求响应" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 msgid "Invalid delta file format" msgstr "无效的增量文件格式" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "未找到身份标识 %s 的 GPG 密钥(主目录:%s)" -#: common/flatpak-oci-registry.c:2476 -#, fuzzy, c-format +#: common/flatpak-oci-registry.c:2493 +#, c-format msgid "Unable to lookup key ID %s: %d" -msgstr "无法查找密钥标识 %s:%d)" +msgstr "无法查找密钥标识 %s:%d" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" -msgstr "签署交付时出错:%d" +msgstr "签署提交时出错:%d" + +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "无效的 OCI 镜像配置" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "错误的层校验和,预期为 %s,实际为 %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "没有为 OCI 镜像 %s 指定引用" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "为 OCI 镜像 %2$s 指定了错误的引用(%1$s),预期为 %3$s" #: common/flatpak-progress.c:236 #, c-format @@ -5030,559 +5113,587 @@ msgstr "正在下载额外数据:%s/%s" msgid "Downloading files: %d/%d %s" msgstr "正在下载文件:%d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "名称不能为空" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "名称不能超过 255 个字符" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "名称不能以句号开头" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "名称不能以 %c 开头" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "名称不能以句号结尾" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "只有姓氏段可以包含 -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "名称段不能以 %c 开头" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "名称不能包含 %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "名称必须包含至少两个句点" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 msgid "Arch can't be empty" msgstr "架构不能为空" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, c-format msgid "Arch can't contain %c" msgstr "架构不能包含 %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "分支不能为空" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "分支不能以 %c 开头" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "分支不能包含 %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "引用太长了" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 msgid "Invalid remote name" msgstr "无效的远程仓库名称" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s 不是应用程序或运行时" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "%s 中组件数量错误" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, c-format msgid "Invalid name %.*s: %s" msgstr "无效名称 %.*s: %s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, c-format msgid "Invalid arch: %.*s: %s" msgstr "无效架构:%.*s: %s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "无效名称 %s: %s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, c-format msgid "Invalid arch: %s: %s" msgstr "无效架构:%s: %s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, c-format msgid "Invalid branch: %s: %s" msgstr "无效分支:%s: %s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, c-format msgid "Wrong number of components in partial ref %s" msgstr "部分引用 %s 中组件数量错误" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 msgid " development platform" msgstr " 开发平台" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr " 平台" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 msgid " application base" msgstr " 应用程序基础" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr " 调试符号" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr " 源代码" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 msgid " translations" msgstr " 翻译" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr " 文档" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "无效标识 %s: %s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "不好的远程仓库名称:%s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "未指定网址" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "设置集合标识时必须启用 GPG 校验" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "打开应用信息文件失败" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "没有额外的数据源" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "无法创建同步管道" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "无效的 %s:缺失“%s”组" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "与 dbus 代理同步失败" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "无效的 %s:缺失“%s”键" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "无效的 GPG 密钥" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "复制组件 %s 的 64x64 图标时出错:%s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "复制组件 %s 的 128x128 图标时出错:%s\n" + +#: common/flatpak-repo-utils.c:3382 +#, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s 寿命完结,将为 appstream 忽略" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "没有 %s 的 appstream 数据:%s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "无效捆绑包,元数据中没有引用" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "捆绑包集合“%s”不匹配远程仓库的集合“%s”" + +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "标头和应用中的元数据不一致" -#: common/flatpak-run.c:2207 +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "没有可用的 systemd 用户会话,cgroups 不可用" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "无法分配实例标识" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "打开 flatpak-info 文件失败:%s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "打开 bwrapinfo.json 文件失败:%s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, c-format msgid "Failed to write to instance id fd: %s" msgstr "写入实例标识 FD 失败:%s" -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "初始化 seccomp 失败" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "将架构添加到 seccomp 筛选器失败:%s" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "将多体系结构添加到 seccomp 筛选器失败:%s" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, c-format msgid "Failed to block syscall %d: %s" msgstr "封锁系统调用 %d 失败:%s" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, c-format msgid "Failed to export bpf: %s" msgstr "导出 bpf 失败:%s" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "打开“%s”失败" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ldconfig 失败,退出状态为 %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "无法打开生成的 ld.so.cache" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "您的管理员设置的策略不允许运行 %s" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" "“flatpak run”不是设计为以“sudo flatpak run”运行的。使用“sudo -i”或者“su -l”代" "替且从新的 shell 内部调用“flatpak run”。" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "从 %s 迁移失败:%s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "将旧应用数据目录 %s 迁移至新名称 %s 失败:%s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "迁移 %s 时创建符号链接失败:%s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "打开应用信息文件失败" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "无法创建同步管道" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "与 dbus 代理同步失败" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "警告:查找相关引用时遇到问题:%s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "应用程序 %s 需要的运行时 %s 未找到" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "应用程序 %s 需要的运行时 %s 未安装" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "无法卸载 %2$s 需要的 %1$s" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "远程仓库 %s 被禁用,将忽略 %s 更新" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "%s 已安装" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "已经从远程仓库 %2$s 安装了 %1$s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "无效的 .flatpakref:%s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "更新“%s”的远程仓库元数据时出错:%s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " "installed: %s" msgstr "警告:既然 %s 已经安装将把远程获取错误作为非致命性错误处理:%s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, c-format msgid "No authenticator installed for remote '%s'" msgstr "没有为远程仓库“%s”安装身份验证器" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, c-format msgid "Failed to get tokens for ref: %s" msgstr "为引用获取令牌失败:%s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 msgid "Failed to get tokens for ref" msgstr "为引用获取令牌失败" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" -msgstr "" +msgstr "来自 %2$s 的引用 %1$s 匹配了多于一个处理操作" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 -#, fuzzy +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 msgid "any remote" -msgstr "远程" +msgstr "任何远程仓库" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" -msgstr "" +msgstr "未发现用于来自 %2$s 应用 %1$s 的处理操作" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "Flatpakrepo 网址 %s 不是文件、HTTP 或 HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "无法加载依赖文件 %s:" -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "无效的 .flatpakrepo:%s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "事务已被执行" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." msgstr "拒绝以 root 执行用户级安装!这会导致错误的文件归属和权限错误。" -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "被用户中止" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "由于先前的错误,正在跳过 %s" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, c-format msgid "Aborted due to failure (%s)" msgstr "因失败而中止(%s)" #: common/flatpak-uri.c:118 -#, fuzzy, no-c-format +#, no-c-format msgid "Invalid %-encoding in URI" -msgstr "无效的扩展名称 %s" +msgstr "URI 中无效的 %-编码" #: common/flatpak-uri.c:135 msgid "Illegal character in URI" -msgstr "" +msgstr "URI 中有非法字符" #: common/flatpak-uri.c:169 msgid "Non-UTF-8 characters in URI" -msgstr "" +msgstr "URI 中存在非 UTF-8 字符" #: common/flatpak-uri.c:275 #, c-format msgid "Invalid IPv6 address ‘%.*s’ in URI" -msgstr "" +msgstr "URI 中无效的 IPv6 地址“%.*s”" #: common/flatpak-uri.c:330 #, c-format msgid "Illegal encoded IP address ‘%.*s’ in URI" -msgstr "" +msgstr "URI 中有编码方式非法的 IP 地址“%.*s”" #: common/flatpak-uri.c:342 #, c-format msgid "Illegal internationalized hostname ‘%.*s’ in URI" -msgstr "" +msgstr "URI 中有非法的国际化主机名“%.*s”" #: common/flatpak-uri.c:374 common/flatpak-uri.c:386 -#, fuzzy, c-format +#, c-format msgid "Could not parse port ‘%.*s’ in URI" -msgstr "无法解析“%s”" +msgstr "无法解析 URI 中的端口“%.*s”" #: common/flatpak-uri.c:393 #, c-format msgid "Port ‘%.*s’ in URI is out of range" -msgstr "" +msgstr "URI 中的端口“%.*s”超出范围" #: common/flatpak-uri.c:910 msgid "URI is not absolute, and no base URI was provided" -msgstr "" +msgstr "URI 不是绝对路径,且未提供基础 URI" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" -msgstr "Glob 无法匹配应用" - -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "空白 glob" - -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "Glob 中太多分段" - -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:83 #, c-format -msgid "Invalid glob character '%c'" -msgstr "无效的 glob 字符“%c”" +msgid "USB device query 'all' must not have data" +msgstr "USB 设备查询“all”不能具有数据" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:102 #, c-format -msgid "Missing glob on line %d" -msgstr "第 %d 行缺失 glob" +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "USB 查询规则“cls”必须为 CLASS:SUBCLASS 或 CLASS:* 的形式" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:111 #, c-format -msgid "Trailing text on line %d" -msgstr "第 %d 行的拖尾文字" +msgid "Invalid USB class" +msgstr "无效的 USB 类" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:125 #, c-format -msgid "on line %d" -msgstr "在第 %d 行" +msgid "Invalid USB subclass" +msgstr "无效的 USB 子类" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "第 %2$d 行的意外词语“%1$s”" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "USB 查询规则“dev”必须具有有效的 4 位数 16 进制产品标识符" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "无效的 %s:缺失“%s”组" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "USB 查询规则“vnd”必须具有有效的 4 位数 16 进制厂商标识符" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:205 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "无效的 %s:缺失“%s”键" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "无效的 GPG 密钥" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "USB 设备查询必须为 TYPE:DATA 的形式" -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "没有额外的数据源" +#: common/flatpak-usb.c:225 +#, c-format +msgid "Unknown USB query rule %s" +msgstr "未知的 USB 查询规则 %s" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:248 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "复制组件 %s 的 64x64 图标时出错:%s\n" +msgid "Empty USB query" +msgstr "空的 USB 查询" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:274 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "复制组件 %s 的 128x128 图标时出错:%s\n" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "不支持同一类型的多 USB 查询规则" -#: common/flatpak-utils.c:5684 +#: common/flatpak-usb.c:283 #, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s 寿命完结,将为 appstream 忽略" +msgid "'all' must not contain extra query rules" +msgstr "“all”不能包含额外查询规则" -#: common/flatpak-utils.c:5719 +#: common/flatpak-usb.c:291 #, c-format -msgid "No appstream data for %s: %s\n" -msgstr "没有 %s 的 appstream 数据:%s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "使用“dev”的 USB 查询必须同时指定厂商" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "无效捆绑包,元数据中没有引用" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "Glob 无法匹配应用" -#: common/flatpak-utils.c:6791 -#, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "捆绑包集合“%s”不匹配远程仓库的集合“%s”" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "空白 glob" -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "标头和应用中的元数据不一致" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "Glob 中太多分段" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "无效的 OCI 镜像配置" +#: common/flatpak-utils.c:733 +#, c-format +msgid "Invalid glob character '%c'" +msgstr "无效的 glob 字符“%c”" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:787 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "错误的层校验和,预期为 %s,实际为 %s" +msgid "Missing glob on line %d" +msgstr "第 %d 行缺失 glob" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:791 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "没有为 OCI 镜像 %s 指定引用" +msgid "Trailing text on line %d" +msgstr "第 %d 行的拖尾文字" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:795 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "为 OCI 镜像 %2$s 指定了错误的引用(%1$s),预期为 %3$s" +msgid "on line %d" +msgstr "在第 %d 行" + +#: common/flatpak-utils.c:817 +#, c-format +msgid "Unexpected word '%s' on line %d" +msgstr "第 %2$d 行的意外词语“%1$s”" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "无效的 require-flatpak 参数 %s" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s 需要更新的 flatpak 版本(%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "空字符串不是数字" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "“%s”不是未签名的数字" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "数字“%s”超出范围 [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "不是 OCI 远程仓库,缺失 summary.xa.oci-repository" @@ -5595,40 +5706,44 @@ msgstr "不是 OCI 远程仓库" msgid "Invalid token" msgstr "无效的令牌" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "未发现传送门支持" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "拒绝" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "更新" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "更新 %s 吗?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "该应用程序想要更新自身。" -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "您可以随时通过隐私设置更改更新访问。" -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "不允许更新应用程序" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "不支持自我更新,新版本需要新的权限" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "更新意外结束" @@ -5848,6 +5963,30 @@ msgid "" "parental controls policy" msgstr "安装受您的家长控制策略限制的软件需要身份验证" +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "在远程仓库“%2$s”(%3$s)中找到与“%1$s”相似的引用。\n" +#~ "使用该远程仓库吗?" + +#, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "在远程仓库“%2$s”摘要缓存中没有 %1$s 的条目 " + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "卸载 %s 以重新建基于 %s 失败:" + +#, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "卸载 %s 以重新建基于 %s 失败:%s\n" + +#, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "无法打开目录 %s" + #~ msgid "install" #~ msgstr "安装" diff --git a/po/zh_TW.gmo b/po/zh_TW.gmo deleted file mode 100644 index a741cbe37faebcdbb2df7d45a28404030dd0530b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 86977 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�}OsSdofY6jiNOqHP@0>gB5b*3(tImLIL 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%0DLa7 za=j!rkWA9lASrP-2c!%c8ZY@DeMPnjBr9=_Hdt&d`sU%JySZ8@Kf>XwJuuV43qc2c~!%fdClFt($F6CX#N>4d8nDx1L)L`wXHJK^wC3g zb_Dh*5Fw(Qla~r z>#=Qt)40D6B&rXjVS80JQO3M96zYXdB$Ml03hUPT(nt06#}k%Hn}7OFz%gsk{)Go) z?VtZ~41fN7^bdVMJ-iz;=MxnFwHq0-@t1$fVS2LuA2l=6#r(LLDL2qd^a2lCL~b=H zyQo8hT1L-5xIQSV)v%{g+kq7PKn_fc?fISD4xQX8n5Io=rPMx8KE=T_l<|5u#xgtTq_~&g@+s+PM-=a0%b5p_ut3IoqDZMB z%3GFsu65tlu8thS*N7JUL);4QHeiidKacB?4AB)WX@^mc!;yP&8!%+7#}jMzQJ>c~ zds!Wn>Q=weCEB>9kkJN^#V=Ls5dp>}MI9rcy;~K`ts#wEtck2S4DD9FpZ4&o{Q_I3 ztC&XdKwglu7P>5QrvN%vdzPr)wIFl_01y&haktB!?o zWAYFSO8%;df4SVH-#i2KEyBdjb9`3@O+NqsVL$$Rz{6gD-G6}c7+5cRxlez{xOeU^ z6yHLhe%ZN`$eQH+e?Imx83o;%EqdvE55j?^a&DsD6cuZ&K?Cb`W!1`$9{b|ozdZ3- z-*G%X+xPWHpMG+bZ*O9$n=%{5AsV^=pS8s*$x#*KN4iZs7n8WUz}GhP!POLJZ@Ct! z)lU?ElyX5UU^}hPD*|T-JvF*?D8ZQ*D`^RJ7N}e>7qfcfywbnaNL)>M?S~+0e2IpX zWW+zRdde9F1_k5n#s2j{#=Q-#B326@>N(QWpoo9QIZX!LG>RVu?`2^{OqH%)eQI*g zkPQH95#|$QRlFBtnx-ZA#FQ_AQc5lN?WI8^@HJsNG6V@cdNI_1D|*x7fLtICHzo0@ zD+j}rDpTtzBaPLEh=F-PG=lK#6yrSJg`IM}*}@c12qgmePR-xaM_VVR1ar0Rvw`l~ zx|?OF%AzCDBm^|rDseiXSLiHS>M$mZ37VwRP={sx>I-m=5O$Dk+guZfvrVd;T?PZ0 zTJnW_y-;uPB20zP%)}hw|SkncBeAmK{#g3Ihg(Ruz{A< z=lfL+WO`$+0H)<-m86-%yPEP$mX+iP%!cudmW4*#6VGvbgG`Y)WhJS}b{t)C3C}$) z&}HYsV#?T-K)i->*})H%T4zgTm(Itas4%@p(TBDUPE})ZxKQcaeR?Uzmf(GIC%stOJ#{D~pE{Uch#Md%WmM zFuFa&{wwpXd)KiVdh7vL&;@SjhIAwGa_{9C9AW%)Ee(_+-7_K6OC(2-WRMKFQdah2 z#K!$$#BVV1>1nQ3CBCTEKP&-!2}7JHM{D*VfvuDg(2p&zIXcqYfT`#!zMkfR0MA8n zE7S+OIyi>$S3R;bRxy3C`LgGS;b+rXxt>z!Bd)>3E@g)a|F8i+V!0>m@ove4+2Ihh zxmzBmN7BG{aabwbnlP3fcHegj#Z+LMv!BO}coCOOGC(~#8n0cyM#x781p?|G#OEh0MSB>gb8Qub-eIp~;Sa^ywGJvQLkGeBw{XKlwu* z$1m^q+W1ROh@8YE9*Y@sH^YQmtL>Rm=}8#V1LxQ{%rm t**FQnUw;18F;{_5(@f4#*7h@-D(!t%Zpo7#24?`)~2D5l8?4 diff --git a/po/zh_TW.po b/po/zh_TW.po index 00a582f..80f70cc 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: flatpak master\n" "Report-Msgid-Bugs-To: https://github.com/flatpak/flatpak/issues\n" -"POT-Creation-Date: 2024-08-14 14:48+0100\n" +"POT-Creation-Date: 2025-01-09 13:37-0300\n" "PO-Revision-Date: 2020-05-17 17:53+0000\n" "Last-Translator: Yi-Jyun Pan \n" "Language-Team: Chinese (Traditional) \n" @@ -20,161 +20,161 @@ msgstr "" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Weblate 4.0.4\n" -#: app/flatpak-builtins-build-bundle.c:57 +#: app/flatpak-builtins-build-bundle.c:58 msgid "Export runtime instead of app" msgstr "匯出執行時期環境而非程式" -#: app/flatpak-builtins-build-bundle.c:58 +#: app/flatpak-builtins-build-bundle.c:59 msgid "Arch to bundle for" msgstr "套組的架構" -#: app/flatpak-builtins-build-bundle.c:58 -#: app/flatpak-builtins-build-export.c:61 app/flatpak-builtins-build-init.c:53 -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-create-usb.c:45 -#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:65 +#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-export.c:62 app/flatpak-builtins-build-init.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-info.c:55 app/flatpak-builtins-install.c:66 #: app/flatpak-builtins-list.c:49 app/flatpak-builtins-make-current.c:38 -#: app/flatpak-builtins-remote-info.c:53 app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-info.c:54 app/flatpak-builtins-remote-ls.c:55 #: app/flatpak-builtins-run.c:66 app/flatpak-builtins-search.c:36 #: app/flatpak-builtins-uninstall.c:54 app/flatpak-builtins-update.c:56 msgid "ARCH" msgstr "ARCH" -#: app/flatpak-builtins-build-bundle.c:59 +#: app/flatpak-builtins-build-bundle.c:60 msgid "Url for repo" msgstr "軟體庫的 URL" -#: app/flatpak-builtins-build-bundle.c:59 #: app/flatpak-builtins-build-bundle.c:60 -#: app/flatpak-builtins-build-update-repo.c:67 -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-update-repo.c:68 #: app/flatpak-builtins-build-update-repo.c:72 -#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:77 -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-list.c:51 +#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-history.c:67 app/flatpak-builtins-remote-add.c:79 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:51 #: app/flatpak-builtins-remote-modify.c:69 #: app/flatpak-builtins-remote-modify.c:84 #: app/flatpak-builtins-remote-modify.c:85 msgid "URL" msgstr "URL" -#: app/flatpak-builtins-build-bundle.c:60 +#: app/flatpak-builtins-build-bundle.c:61 msgid "Url for runtime flatpakrepo file" msgstr "執行時期環境 flatpakrepo 檔的 URL" -#: app/flatpak-builtins-build-bundle.c:61 +#: app/flatpak-builtins-build-bundle.c:62 msgid "Add GPG key from FILE (- for stdin)" msgstr "取用 FILE 作為 GPG 金鑰加入(- 代表 stdin)" -#: app/flatpak-builtins-build-bundle.c:61 app/flatpak-builtins-build.c:54 -#: app/flatpak-builtins-build-export.c:66 -#: app/flatpak-builtins-build-update-repo.c:82 -#: app/flatpak-builtins-install.c:78 app/flatpak-builtins-remote-add.c:81 -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-build-bundle.c:62 app/flatpak-builtins-build.c:54 +#: app/flatpak-builtins-build-export.c:67 +#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-install.c:79 app/flatpak-builtins-remote-add.c:83 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:88 #: app/flatpak-builtins-remote-modify.c:90 msgid "FILE" msgstr "FILE" -#: app/flatpak-builtins-build-bundle.c:62 +#: app/flatpak-builtins-build-bundle.c:63 msgid "GPG Key ID to sign the OCI image with" msgstr "用以簽署 OCI 映像檔的 GPG 金鑰 ID" -#: app/flatpak-builtins-build-bundle.c:62 -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 -#: app/flatpak-builtins-build-update-repo.c:83 -msgid "KEY-ID" -msgstr "KEY-ID" - #: app/flatpak-builtins-build-bundle.c:63 #: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-import-bundle.c:48 #: app/flatpak-builtins-build-sign.c:44 #: app/flatpak-builtins-build-update-repo.c:84 +msgid "KEY-ID" +msgstr "KEY-ID" + +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "GPG Homedir to use when looking for keyrings" msgstr "查找鑰匙圈時所要使用的 GPG 家目錄" -#: app/flatpak-builtins-build-bundle.c:63 -#: app/flatpak-builtins-build-commit-from.c:68 -#: app/flatpak-builtins-build-export.c:70 -#: app/flatpak-builtins-build-import-bundle.c:48 -#: app/flatpak-builtins-build-sign.c:44 -#: app/flatpak-builtins-build-update-repo.c:84 +#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-commit-from.c:69 +#: app/flatpak-builtins-build-export.c:71 +#: app/flatpak-builtins-build-import-bundle.c:49 +#: app/flatpak-builtins-build-sign.c:45 +#: app/flatpak-builtins-build-update-repo.c:85 msgid "HOMEDIR" msgstr "HOMEDIR" -#: app/flatpak-builtins-build-bundle.c:64 +#: app/flatpak-builtins-build-bundle.c:65 msgid "OSTree commit to create a delta bundle from" msgstr "建立增減檔套組用的 OSTree 提交" -#: app/flatpak-builtins-build-bundle.c:64 app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-build-bundle.c:65 app/flatpak-builtins-remote-info.c:55 #: app/flatpak-builtins-update.c:57 msgid "COMMIT" msgstr "COMMIT" -#: app/flatpak-builtins-build-bundle.c:65 +#: app/flatpak-builtins-build-bundle.c:66 msgid "Export oci image instead of flatpak bundle" msgstr "匯出 OCI 映像檔而非 flatpak 套組" -#: app/flatpak-builtins-build-bundle.c:620 +#: app/flatpak-builtins-build-bundle.c:621 msgid "" "LOCATION FILENAME NAME [BRANCH] - Create a single file bundle from a local " "repository" msgstr "LOCATION FILENAME NAME [BRANCH] - 根據本機軟體庫建立一個單一檔案套組" -#: app/flatpak-builtins-build-bundle.c:627 +#: app/flatpak-builtins-build-bundle.c:628 msgid "LOCATION, FILENAME and NAME must be specified" msgstr "必須指定 LOCATION、FILENAME、NAME" -#: app/flatpak-builtins-build-bundle.c:630 -#: app/flatpak-builtins-build-export.c:843 -#: app/flatpak-builtins-build-import-bundle.c:190 -#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:75 +#: app/flatpak-builtins-build-bundle.c:631 +#: app/flatpak-builtins-build-export.c:844 +#: app/flatpak-builtins-build-import-bundle.c:191 +#: app/flatpak-builtins-build-init.c:217 app/flatpak-builtins-build-sign.c:76 #: app/flatpak-builtins-document-export.c:112 #: app/flatpak-builtins-document-info.c:75 #: app/flatpak-builtins-document-list.c:182 #: app/flatpak-builtins-document-unexport.c:70 #: app/flatpak-builtins-history.c:480 app/flatpak-builtins-info.c:130 -#: app/flatpak-builtins-install.c:147 app/flatpak-builtins-install.c:216 -#: app/flatpak-builtins-list.c:420 app/flatpak-builtins-make-current.c:72 +#: app/flatpak-builtins-install.c:148 app/flatpak-builtins-install.c:217 +#: app/flatpak-builtins-list.c:417 app/flatpak-builtins-make-current.c:72 #: app/flatpak-builtins-override.c:73 -#: app/flatpak-builtins-permission-list.c:157 +#: app/flatpak-builtins-permission-list.c:159 #: app/flatpak-builtins-permission-remove.c:132 -#: app/flatpak-builtins-remote-add.c:316 +#: app/flatpak-builtins-remote-add.c:318 #: app/flatpak-builtins-remote-delete.c:68 -#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:407 +#: app/flatpak-builtins-remote-list.c:239 app/flatpak-builtins-remote-ls.c:405 msgid "Too many arguments" msgstr "引數過多" -#: app/flatpak-builtins-build-bundle.c:645 -#: app/flatpak-builtins-build-commit-from.c:337 -#: app/flatpak-builtins-build-commit-from.c:350 -#: app/flatpak-builtins-build-import-bundle.c:199 +#: app/flatpak-builtins-build-bundle.c:646 +#: app/flatpak-builtins-build-commit-from.c:338 +#: app/flatpak-builtins-build-commit-from.c:351 +#: app/flatpak-builtins-build-import-bundle.c:200 #, c-format msgid "'%s' is not a valid repository" msgstr "「%s」不是有效的軟體庫" -#: app/flatpak-builtins-build-bundle.c:649 +#: app/flatpak-builtins-build-bundle.c:650 #, c-format msgid "'%s' is not a valid repository: " msgstr "「%s」不是有效的軟體庫:" -#: app/flatpak-builtins-build-bundle.c:660 app/flatpak-builtins-build-sign.c:87 -#: common/flatpak-dir.c:13102 +#: app/flatpak-builtins-build-bundle.c:661 app/flatpak-builtins-build-sign.c:88 +#: common/flatpak-dir.c:13269 #, c-format msgid "'%s' is not a valid name: %s" msgstr "「%s」不是有效的名稱:%s" -#: app/flatpak-builtins-build-bundle.c:663 -#: app/flatpak-builtins-build-export.c:864 app/flatpak-builtins-build-sign.c:90 -#: common/flatpak-dir.c:13108 +#: app/flatpak-builtins-build-bundle.c:664 +#: app/flatpak-builtins-build-export.c:865 app/flatpak-builtins-build-sign.c:91 +#: common/flatpak-dir.c:13275 #, c-format msgid "'%s' is not a valid branch name: %s" msgstr "「%s」不是有效的分支名稱:%s" -#: app/flatpak-builtins-build-bundle.c:677 -#: app/flatpak-builtins-build-import-bundle.c:203 +#: app/flatpak-builtins-build-bundle.c:678 +#: app/flatpak-builtins-build-import-bundle.c:204 #: app/flatpak-builtins-build-init.c:281 #, c-format msgid "'%s' is not a valid filename" @@ -209,7 +209,7 @@ msgstr "DIR" msgid "Where to look for custom sdk dir (defaults to 'usr')" msgstr "要在何處查找自訂的 SDK 目錄(預設為「usr」)" -#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:66 +#: app/flatpak-builtins-build.c:54 app/flatpak-builtins-build-export.c:67 msgid "Use alternative file for the metadata" msgstr "為中介資料使用替代檔案" @@ -229,473 +229,479 @@ msgstr "記錄工作階段匯流排呼叫" msgid "Log system bus calls" msgstr "記錄系統匯流排呼叫" -#: app/flatpak-builtins-build.c:207 +#: app/flatpak-builtins-build.c:208 msgid "DIRECTORY [COMMAND [ARGUMENT…]] - Build in directory" msgstr "DIRECTORY [COMMAND [ARGUMENT…]] - 在目錄中組建" -#: app/flatpak-builtins-build.c:230 app/flatpak-builtins-build-finish.c:653 +#: app/flatpak-builtins-build.c:231 app/flatpak-builtins-build-finish.c:655 msgid "DIRECTORY must be specified" msgstr "必須指定 DIRECTORY" -#: app/flatpak-builtins-build.c:241 app/flatpak-builtins-build-export.c:886 +#: app/flatpak-builtins-build.c:242 app/flatpak-builtins-build-export.c:887 #, c-format msgid "Build directory %s not initialized, use flatpak build-init" msgstr "組建目錄 %s 尚未初始化,請使用 flatpak build-init" -#: app/flatpak-builtins-build.c:260 +#: app/flatpak-builtins-build.c:261 msgid "metadata invalid, not application or runtime" msgstr "中介資料無效,沒有應用程式或執行時期環境" -#: app/flatpak-builtins-build.c:391 +#: app/flatpak-builtins-build.c:392 #, c-format msgid "No extension point matching %s in %s" msgstr "%2$s 中沒有符合 %1$s 的擴充點" -#: app/flatpak-builtins-build.c:566 +#: app/flatpak-builtins-build.c:568 #, c-format msgid "Missing '=' in bind mount option '%s'" msgstr "綁定用掛載選項「%s」中遺失「=」" -#: app/flatpak-builtins-build.c:607 common/flatpak-run.c:4809 +#: app/flatpak-builtins-build.c:609 common/flatpak-run.c:3586 +#, c-format msgid "Unable to start app" msgstr "無法啟動程式" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "Source repo dir" msgstr "來源軟體庫目錄" -#: app/flatpak-builtins-build-commit-from.c:57 +#: app/flatpak-builtins-build-commit-from.c:58 msgid "SRC-REPO" msgstr "SRC-REPO" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "Source repo ref" msgstr "來源軟體庫參照" -#: app/flatpak-builtins-build-commit-from.c:58 +#: app/flatpak-builtins-build-commit-from.c:59 msgid "SRC-REF" msgstr "SRC-REF" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "One line subject" msgstr "一列式主旨" -#: app/flatpak-builtins-build-commit-from.c:63 -#: app/flatpak-builtins-build-export.c:59 +#: app/flatpak-builtins-build-commit-from.c:64 +#: app/flatpak-builtins-build-export.c:60 msgid "SUBJECT" msgstr "SUBJECT" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "Full description" msgstr "完整的描述說明" -#: app/flatpak-builtins-build-commit-from.c:64 -#: app/flatpak-builtins-build-export.c:60 +#: app/flatpak-builtins-build-commit-from.c:65 +#: app/flatpak-builtins-build-export.c:61 msgid "BODY" msgstr "BODY" -#: app/flatpak-builtins-build-commit-from.c:65 -#: app/flatpak-builtins-build-export.c:63 -#: app/flatpak-builtins-build-import-bundle.c:49 -msgid "Update the appstream branch" -msgstr "更新 appstream 分支" - #: app/flatpak-builtins-build-commit-from.c:66 #: app/flatpak-builtins-build-export.c:64 #: app/flatpak-builtins-build-import-bundle.c:50 -#: app/flatpak-builtins-build-update-repo.c:86 +msgid "Update the appstream branch" +msgstr "更新 appstream 分支" + +#: app/flatpak-builtins-build-commit-from.c:67 +#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-import-bundle.c:51 +#: app/flatpak-builtins-build-update-repo.c:87 msgid "Don't update the summary" msgstr "不要更新摘要" -#: app/flatpak-builtins-build-commit-from.c:67 -#: app/flatpak-builtins-build-export.c:67 -#: app/flatpak-builtins-build-import-bundle.c:47 -#: app/flatpak-builtins-build-sign.c:43 +#: app/flatpak-builtins-build-commit-from.c:68 +#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-import-bundle.c:48 +#: app/flatpak-builtins-build-sign.c:44 msgid "GPG Key ID to sign the commit with" msgstr "用以簽署提交的 GPG 金鑰 ID" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "Mark build as end-of-life" msgstr "將組建標為 end-of-life" -#: app/flatpak-builtins-build-commit-from.c:69 -#: app/flatpak-builtins-build-export.c:72 +#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-export.c:73 msgid "REASON" msgstr "REASON" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "" "Mark refs matching the OLDID prefix as end-of-life, to be replaced with the " "given NEWID" msgstr "將符合 OLDID 前綴的參照標為 end-of-life,會以提供的 NEWID 取代" -#: app/flatpak-builtins-build-commit-from.c:70 +#: app/flatpak-builtins-build-commit-from.c:71 msgid "OLDID=NEWID" msgstr "OLDID=NEWID" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "Set type of token needed to install this commit" msgstr "" -#: app/flatpak-builtins-build-commit-from.c:71 -#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-export.c:75 msgid "VAL" msgstr "VAL" -#: app/flatpak-builtins-build-commit-from.c:72 +#: app/flatpak-builtins-build-commit-from.c:73 msgid "Override the timestamp of the commit (NOW for current time)" msgstr "凌駕提交的時間戳(NOW 則為目前時間)" -#: app/flatpak-builtins-build-commit-from.c:72 -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-commit-from.c:73 +#: app/flatpak-builtins-build-export.c:76 msgid "TIMESTAMP" msgstr "TIMESTAMP" -#: app/flatpak-builtins-build-commit-from.c:74 -#: app/flatpak-builtins-build-export.c:79 -#: app/flatpak-builtins-build-import-bundle.c:51 -#: app/flatpak-builtins-build-update-repo.c:96 +#: app/flatpak-builtins-build-commit-from.c:75 +#: app/flatpak-builtins-build-export.c:80 +#: app/flatpak-builtins-build-import-bundle.c:52 +#: app/flatpak-builtins-build-update-repo.c:97 #, fuzzy msgid "Don't generate a summary index" msgstr "不要更新摘要" -#: app/flatpak-builtins-build-commit-from.c:277 +#: app/flatpak-builtins-build-commit-from.c:278 msgid "DST-REPO [DST-REF…] - Make a new commit from existing commits" msgstr "DST-REPO [DST-REF…] - 根據現有提交建立新提交" -#: app/flatpak-builtins-build-commit-from.c:284 +#: app/flatpak-builtins-build-commit-from.c:285 msgid "DST-REPO must be specified" msgstr "必須指定 DST-REPO" -#: app/flatpak-builtins-build-commit-from.c:292 +#: app/flatpak-builtins-build-commit-from.c:293 msgid "" "If --src-repo is not specified, exactly one destination ref must be specified" msgstr "若未指定 --src-repo,必須確實指定一個目的地參照" -#: app/flatpak-builtins-build-commit-from.c:295 +#: app/flatpak-builtins-build-commit-from.c:296 msgid "" "If --src-ref is specified, exactly one destination ref must be specified" msgstr "若已指定 --src-ref,則必須確實指定一個目的地參照" -#: app/flatpak-builtins-build-commit-from.c:298 +#: app/flatpak-builtins-build-commit-from.c:299 msgid "Either --src-repo or --src-ref must be specified" msgstr "必須指定 --src-repo 或 --src-ref 之一。" -#: app/flatpak-builtins-build-commit-from.c:314 +#: app/flatpak-builtins-build-commit-from.c:315 msgid "Invalid argument format of use --end-of-life-rebase=OLDID=NEWID" msgstr "--end-of-life-rebase=OLDID=NEWID 的引數使用格式錯誤" -#: app/flatpak-builtins-build-commit-from.c:320 -#: app/flatpak-builtins-build-commit-from.c:323 +#: app/flatpak-builtins-build-commit-from.c:321 +#: app/flatpak-builtins-build-commit-from.c:324 #, c-format msgid "Invalid name %s in --end-of-life-rebase" msgstr "--end-of-life-rebase 中的 %s 名稱無效" -#: app/flatpak-builtins-build-commit-from.c:332 -#: app/flatpak-builtins-build-export.c:1091 +#: app/flatpak-builtins-build-commit-from.c:333 +#: app/flatpak-builtins-build-export.c:1092 #, c-format msgid "Could not parse '%s'" msgstr "無法解析「%s」" -#: app/flatpak-builtins-build-commit-from.c:497 +#: app/flatpak-builtins-build-commit-from.c:498 msgid "Can't commit from partial source commit" msgstr "無法根據部份來源提交進行提交" -#: app/flatpak-builtins-build-commit-from.c:502 +#: app/flatpak-builtins-build-commit-from.c:503 #, c-format msgid "%s: no change\n" msgstr "%s:沒有變更\n" -#: app/flatpak-builtins-build-export.c:61 +#: app/flatpak-builtins-build-export.c:62 msgid "Architecture to export for (must be host compatible)" msgstr "要匯出的架構(必須與主機相容)" -#: app/flatpak-builtins-build-export.c:62 +#: app/flatpak-builtins-build-export.c:63 msgid "Commit runtime (/usr), not /app" msgstr "提交的執行時期環境 (/usr),並非 /app" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "Use alternative directory for the files" msgstr "為檔案使用替代目錄" -#: app/flatpak-builtins-build-export.c:65 +#: app/flatpak-builtins-build-export.c:66 msgid "SUBDIR" msgstr "SUBDIR" -#: app/flatpak-builtins-build-export.c:68 +#: app/flatpak-builtins-build-export.c:69 msgid "Files to exclude" msgstr "要排除的檔案" -#: app/flatpak-builtins-build-export.c:68 #: app/flatpak-builtins-build-export.c:69 -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-export.c:70 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "PATTERN" msgstr "PATTERN" -#: app/flatpak-builtins-build-export.c:69 +#: app/flatpak-builtins-build-export.c:70 msgid "Excluded files to include" msgstr "要納入的排除檔案" -#: app/flatpak-builtins-build-export.c:73 +#: app/flatpak-builtins-build-export.c:74 msgid "Mark build as end-of-life, to be replaced with the given ID" msgstr "將組建標為 end-of-life,會以提供的 ID 取代" -#: app/flatpak-builtins-build-export.c:73 -#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1370 +#: app/flatpak-builtins-build-export.c:74 +#: app/flatpak-builtins-document-list.c:47 app/flatpak-cli-transaction.c:1415 msgid "ID" msgstr "ID" -#: app/flatpak-builtins-build-export.c:75 +#: app/flatpak-builtins-build-export.c:76 msgid "Override the timestamp of the commit" msgstr "凌駕提交的時間戳" -#: app/flatpak-builtins-build-export.c:76 -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-list.c:52 +#: app/flatpak-builtins-build-export.c:77 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-list.c:52 #: app/flatpak-builtins-remote-modify.c:87 msgid "Collection ID" msgstr "收藏 ID" -#: app/flatpak-builtins-build-export.c:471 +#: app/flatpak-builtins-build-export.c:472 #, c-format msgid "WARNING: Error running desktop-file-validate: %s\n" msgstr "警告:執行 desktop-file-validate 時發生錯誤:%s\n" -#: app/flatpak-builtins-build-export.c:479 +#: app/flatpak-builtins-build-export.c:480 #, c-format msgid "WARNING: Error reading from desktop-file-validate: %s\n" msgstr "警告:讀取 desktop-file-validate 時發生錯誤:%s\n" -#: app/flatpak-builtins-build-export.c:485 +#: app/flatpak-builtins-build-export.c:486 #, c-format msgid "WARNING: Failed to validate desktop file %s: %s\n" msgstr "警告:%s 桌面檔驗證失敗:%s\n" -#: app/flatpak-builtins-build-export.c:512 +#: app/flatpak-builtins-build-export.c:513 #, c-format msgid "WARNING: Can't find Exec key in %s: %s\n" msgstr "警告:在 %s 中找不到 Exec 鍵:%s\n" -#: app/flatpak-builtins-build-export.c:520 -#: app/flatpak-builtins-build-export.c:613 +#: app/flatpak-builtins-build-export.c:521 +#: app/flatpak-builtins-build-export.c:614 #, c-format msgid "WARNING: Binary not found for Exec line in %s: %s\n" msgstr "警告:在 %s 找不到 Exec 列中的二進位檔:%s\n" -#: app/flatpak-builtins-build-export.c:528 +#: app/flatpak-builtins-build-export.c:529 #, c-format msgid "WARNING: Icon not matching app id in %s: %s\n" msgstr "警告:%s 中的圖示與應用程式 ID 不符:%s\n" -#: app/flatpak-builtins-build-export.c:551 +#: app/flatpak-builtins-build-export.c:552 #, c-format msgid "WARNING: Icon referenced in desktop file but not exported: %s\n" msgstr "警告:桌面檔內有參照的圖示但並未匯出:%s\n" -#: app/flatpak-builtins-build-export.c:718 +#: app/flatpak-builtins-build-export.c:719 #, c-format msgid "Invalid uri type %s, only http/https supported" msgstr "無效的 URI 類型 %s,僅支援 http/https" -#: app/flatpak-builtins-build-export.c:736 +#: app/flatpak-builtins-build-export.c:737 #, c-format msgid "Unable to find basename in %s, specify a name explicitly" msgstr "在 %s 中找不到基礎名,請明確指定名稱" -#: app/flatpak-builtins-build-export.c:745 +#: app/flatpak-builtins-build-export.c:746 +#, c-format msgid "No slashes allowed in extra data name" msgstr "額外資料的名稱中不允許使用斜線" -#: app/flatpak-builtins-build-export.c:757 +#: app/flatpak-builtins-build-export.c:758 #, c-format msgid "Invalid format for sha256 checksum: '%s'" msgstr "Sha256 檢核碼格式無效:「%s」" -#: app/flatpak-builtins-build-export.c:767 +#: app/flatpak-builtins-build-export.c:768 +#, c-format msgid "Extra data sizes of zero not supported" msgstr "不支援額外資料大小為零" -#: app/flatpak-builtins-build-export.c:829 +#: app/flatpak-builtins-build-export.c:830 msgid "" "LOCATION DIRECTORY [BRANCH] - Create a repository from a build directory" msgstr "LOCATION DIRECTORY [BRANCH] - 根據組建目錄建立軟體庫" -#: app/flatpak-builtins-build-export.c:837 +#: app/flatpak-builtins-build-export.c:838 msgid "LOCATION and DIRECTORY must be specified" msgstr "必須指定 LOCATION 與 DIRECTORY" -#: app/flatpak-builtins-build-export.c:858 -#: app/flatpak-builtins-remote-add.c:320 +#: app/flatpak-builtins-build-export.c:859 +#: app/flatpak-builtins-remote-add.c:322 #, c-format msgid "‘%s’ is not a valid collection ID: %s" msgstr "「%s」不是有效的收藏 ID:%s" -#: app/flatpak-builtins-build-export.c:903 -#: app/flatpak-builtins-build-finish.c:681 +#: app/flatpak-builtins-build-export.c:904 +#: app/flatpak-builtins-build-finish.c:683 msgid "No name specified in the metadata" msgstr "中介資料中沒有指定名稱" -#: app/flatpak-builtins-build-export.c:1165 +#: app/flatpak-builtins-build-export.c:1166 #, c-format msgid "Commit: %s\n" msgstr "提交:%s\n" -#: app/flatpak-builtins-build-export.c:1166 +#: app/flatpak-builtins-build-export.c:1167 #, c-format msgid "Metadata Total: %u\n" msgstr "中介資料總計:%u\n" -#: app/flatpak-builtins-build-export.c:1167 +#: app/flatpak-builtins-build-export.c:1168 #, c-format msgid "Metadata Written: %u\n" msgstr "中介資料已寫入:%u\n" -#: app/flatpak-builtins-build-export.c:1168 +#: app/flatpak-builtins-build-export.c:1169 #, c-format msgid "Content Total: %u\n" msgstr "內容總計:%u\n" -#: app/flatpak-builtins-build-export.c:1169 +#: app/flatpak-builtins-build-export.c:1170 #, c-format msgid "Content Written: %u\n" msgstr "內容已寫入:%u\n" -#: app/flatpak-builtins-build-export.c:1170 +#: app/flatpak-builtins-build-export.c:1171 +#, c-format msgid "Content Bytes Written:" msgstr "內容已寫入位元組:" -#: app/flatpak-builtins-build-finish.c:51 +#: app/flatpak-builtins-build-finish.c:52 msgid "Command to set" msgstr "要設定的指令" -#: app/flatpak-builtins-build-finish.c:51 app/flatpak-builtins-run.c:67 +#: app/flatpak-builtins-build-finish.c:52 app/flatpak-builtins-run.c:67 #: app/flatpak-main.c:208 msgid "COMMAND" msgstr "COMMAND" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "Flatpak version to require" msgstr "要求的 Flatpak 版本" -#: app/flatpak-builtins-build-finish.c:52 +#: app/flatpak-builtins-build-finish.c:53 msgid "MAJOR.MINOR.MICRO" msgstr "MAJOR.MINOR.MICRO" -#: app/flatpak-builtins-build-finish.c:53 +#: app/flatpak-builtins-build-finish.c:54 msgid "Don't process exports" msgstr "不要處理匯出" -#: app/flatpak-builtins-build-finish.c:54 +#: app/flatpak-builtins-build-finish.c:55 msgid "Extra data info" msgstr "額外資料的資訊" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "Add extension point info" msgstr "新增擴充點資訊" -#: app/flatpak-builtins-build-finish.c:55 app/flatpak-builtins-build-init.c:63 +#: app/flatpak-builtins-build-finish.c:56 app/flatpak-builtins-build-init.c:63 msgid "NAME=VARIABLE[=VALUE]" msgstr "NAME=VARIABLE[=VALUE]" -#: app/flatpak-builtins-build-finish.c:56 +#: app/flatpak-builtins-build-finish.c:57 msgid "Remove extension point info" msgstr "移除擴充點資訊" -#: app/flatpak-builtins-build-finish.c:56 -#: app/flatpak-builtins-build-update-repo.c:78 app/flatpak-builtins-info.c:58 -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-update-repo.c:79 app/flatpak-builtins-info.c:58 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 #: app/flatpak-main.c:181 msgid "NAME" msgstr "NAME" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "Set extension priority (only for extensions)" msgstr "設定擴充優先順序(僅供擴充使用)" -#: app/flatpak-builtins-build-finish.c:57 +#: app/flatpak-builtins-build-finish.c:58 msgid "VALUE" msgstr "VALUE" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "Change the sdk used for the app" msgstr "變更用於程式的 SDK" -#: app/flatpak-builtins-build-finish.c:58 +#: app/flatpak-builtins-build-finish.c:59 msgid "SDK" msgstr "SDK" -#: app/flatpak-builtins-build-finish.c:59 +#: app/flatpak-builtins-build-finish.c:60 msgid "Change the runtime used for the app" msgstr "變更用於程式的執行時期環境" -#: app/flatpak-builtins-build-finish.c:59 app/flatpak-builtins-build-init.c:54 -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-build-finish.c:60 app/flatpak-builtins-build-init.c:54 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 #: app/flatpak-builtins-run.c:71 msgid "RUNTIME" msgstr "RUNTIME" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "Set generic metadata option" msgstr "設定通用的中介資料選項" -#: app/flatpak-builtins-build-finish.c:60 +#: app/flatpak-builtins-build-finish.c:61 msgid "GROUP=KEY[=VALUE]" msgstr "GROUP=KEY[=VALUE]" -#: app/flatpak-builtins-build-finish.c:61 +#: app/flatpak-builtins-build-finish.c:62 msgid "Don't inherit permissions from runtime" msgstr "不要從執行時期環境繼承權限" -#: app/flatpak-builtins-build-finish.c:154 +#: app/flatpak-builtins-build-finish.c:155 #, c-format msgid "Not exporting %s, wrong extension\n" msgstr "未匯出 %s,錯誤的擴充\n" -#: app/flatpak-builtins-build-finish.c:162 +#: app/flatpak-builtins-build-finish.c:163 #, c-format msgid "Not exporting %s, non-allowed export filename\n" msgstr "未匯出 %s,不允許的匯出檔名\n" -#: app/flatpak-builtins-build-finish.c:166 +#: app/flatpak-builtins-build-finish.c:167 #, c-format msgid "Exporting %s\n" msgstr "正在匯出 %s\n" -#: app/flatpak-builtins-build-finish.c:437 +#: app/flatpak-builtins-build-finish.c:439 +#, c-format msgid "More than one executable found\n" msgstr "找到一個以上的執行檔\n" -#: app/flatpak-builtins-build-finish.c:448 +#: app/flatpak-builtins-build-finish.c:450 #, c-format msgid "Using %s as command\n" msgstr "使用 %s 作為指令\n" -#: app/flatpak-builtins-build-finish.c:453 +#: app/flatpak-builtins-build-finish.c:455 +#, c-format msgid "No executable found\n" msgstr "找不到執行檔\n" -#: app/flatpak-builtins-build-finish.c:508 +#: app/flatpak-builtins-build-finish.c:510 #, c-format msgid "Invalid --require-version argument: %s" msgstr "無效的 --require-version 引數:%s" -#: app/flatpak-builtins-build-finish.c:540 +#: app/flatpak-builtins-build-finish.c:542 #, c-format msgid "Too few elements in --extra-data argument %s" msgstr "--extra-data 引數 %s 中的元素過少" -#: app/flatpak-builtins-build-finish.c:572 +#: app/flatpak-builtins-build-finish.c:574 #, c-format msgid "" "Too few elements in --metadata argument %s, format should be " "GROUP=KEY[=VALUE]]" msgstr "--metadata 引數 %s 中的元素過少,格式應該為 GROUP=KEY[=VALUE]]" -#: app/flatpak-builtins-build-finish.c:594 +#: app/flatpak-builtins-build-finish.c:596 #: app/flatpak-builtins-build-init.c:458 #, c-format msgid "" @@ -703,62 +709,63 @@ msgid "" "NAME=VAR[=VALUE]" msgstr "--extension 引數 %s 中的元素過少,格式應該為 NAME=VAR[=VALUE]" -#: app/flatpak-builtins-build-finish.c:600 +#: app/flatpak-builtins-build-finish.c:602 #: app/flatpak-builtins-build-init.c:461 #, fuzzy, c-format msgid "Invalid extension name %s" msgstr "無效的身分核對器名稱 %s" -#: app/flatpak-builtins-build-finish.c:643 +#: app/flatpak-builtins-build-finish.c:645 msgid "DIRECTORY - Finalize a build directory" msgstr "DIRECTORY - 總結一組建目錄" -#: app/flatpak-builtins-build-finish.c:665 +#: app/flatpak-builtins-build-finish.c:667 #, c-format msgid "Build directory %s not initialized" msgstr "組建目錄 %s 尚未初始化" -#: app/flatpak-builtins-build-finish.c:686 +#: app/flatpak-builtins-build-finish.c:688 #, c-format msgid "Build directory %s already finalized" msgstr "組建目錄 %s 已經總結" -#: app/flatpak-builtins-build-finish.c:699 +#: app/flatpak-builtins-build-finish.c:701 +#, c-format msgid "Please review the exported files and the metadata\n" msgstr "請檢閱匯出的檔案與中介資料\n" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "Override the ref used for the imported bundle" msgstr "凌駕匯出套組使用的參照" -#: app/flatpak-builtins-build-import-bundle.c:45 +#: app/flatpak-builtins-build-import-bundle.c:46 msgid "REF" msgstr "REF" -#: app/flatpak-builtins-build-import-bundle.c:46 +#: app/flatpak-builtins-build-import-bundle.c:47 msgid "Import oci image instead of flatpak bundle" msgstr "匯出 OCI 映像檔而非 flatpak 套組" -#: app/flatpak-builtins-build-import-bundle.c:85 +#: app/flatpak-builtins-build-import-bundle.c:86 #, c-format msgid "Ref '%s' not found in registry" msgstr "註冊中找不到「%s」參照" -#: app/flatpak-builtins-build-import-bundle.c:94 +#: app/flatpak-builtins-build-import-bundle.c:95 msgid "Multiple images in registry, specify a ref with --ref" msgstr "註冊中有多個映像檔,請以 --ref 指定一個參照" -#: app/flatpak-builtins-build-import-bundle.c:131 -#: app/flatpak-builtins-build-import-bundle.c:159 +#: app/flatpak-builtins-build-import-bundle.c:132 +#: app/flatpak-builtins-build-import-bundle.c:160 #, c-format msgid "Importing %s (%s)\n" msgstr "正在匯入 %s (%s)\n" -#: app/flatpak-builtins-build-import-bundle.c:180 +#: app/flatpak-builtins-build-import-bundle.c:181 msgid "LOCATION FILENAME - Import a file bundle into a local repository" msgstr "LOCATION FILENAME - 匯入一個檔案套組到本機軟體庫中" -#: app/flatpak-builtins-build-import-bundle.c:187 +#: app/flatpak-builtins-build-import-bundle.c:188 msgid "LOCATION and FILENAME must be specified" msgstr "必須指定 LOCATION 與 FILENAME" @@ -869,205 +876,208 @@ msgstr "「%s」不是有效的應用程式名稱:%s" msgid "Build directory %s already initialized" msgstr "組建目錄 %s 已經初始化" -#: app/flatpak-builtins-build-sign.c:41 app/flatpak-builtins-install.c:65 -#: app/flatpak-builtins-remote-info.c:53 +#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-remote-info.c:54 msgid "Arch to install for" msgstr "要安裝的架構" -#: app/flatpak-builtins-build-sign.c:42 app/flatpak-builtins-create-usb.c:47 -#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-remote-info.c:55 +#: app/flatpak-builtins-build-sign.c:43 app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-install.c:73 app/flatpak-builtins-remote-info.c:56 #: app/flatpak-builtins-uninstall.c:58 app/flatpak-builtins-update.c:64 msgid "Look for runtime with the specified name" msgstr "以指定名稱查找執行時期環境" -#: app/flatpak-builtins-build-sign.c:65 +#: app/flatpak-builtins-build-sign.c:66 msgid "LOCATION [ID [BRANCH]] - Sign an application or runtime" msgstr "LOCATION [ID [BRANCH]] - 簽署應用程式或執行時期環境" -#: app/flatpak-builtins-build-sign.c:72 -#: app/flatpak-builtins-build-update-repo.c:498 -#: app/flatpak-builtins-remote-add.c:313 app/flatpak-builtins-repo.c:735 +#: app/flatpak-builtins-build-sign.c:73 +#: app/flatpak-builtins-build-update-repo.c:499 +#: app/flatpak-builtins-remote-add.c:315 app/flatpak-builtins-repo.c:736 msgid "LOCATION must be specified" msgstr "必須指定 LOCATION" -#: app/flatpak-builtins-build-sign.c:93 +#: app/flatpak-builtins-build-sign.c:94 msgid "No gpg key ids specified" msgstr "尚未指定 GPG 金鑰 ID" -#: app/flatpak-builtins-build-update-repo.c:67 +#: app/flatpak-builtins-build-update-repo.c:68 msgid "Redirect this repo to a new URL" msgstr "將此軟體庫重導至新 URL" -#: app/flatpak-builtins-build-update-repo.c:68 +#: app/flatpak-builtins-build-update-repo.c:69 msgid "A nice name to use for this repository" msgstr "用於此軟體庫的好讀名稱" -#: app/flatpak-builtins-build-update-repo.c:68 -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "TITLE" msgstr "TITLE" -#: app/flatpak-builtins-build-update-repo.c:69 +#: app/flatpak-builtins-build-update-repo.c:70 msgid "A one-line comment for this repository" msgstr "此軟體庫的一列評註" -#: app/flatpak-builtins-build-update-repo.c:69 -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "COMMENT" msgstr "COMMENT" -#: app/flatpak-builtins-build-update-repo.c:70 +#: app/flatpak-builtins-build-update-repo.c:71 msgid "A full-paragraph description for this repository" msgstr "此軟體庫的整段描述" -#: app/flatpak-builtins-build-update-repo.c:70 -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "DESCRIPTION" msgstr "DESCRIPTION" -#: app/flatpak-builtins-build-update-repo.c:71 +#: app/flatpak-builtins-build-update-repo.c:72 msgid "URL for a website for this repository" msgstr "此軟體庫的網站 URL" -#: app/flatpak-builtins-build-update-repo.c:72 +#: app/flatpak-builtins-build-update-repo.c:73 msgid "URL for an icon for this repository" msgstr "此軟體庫的圖示 URL" -#: app/flatpak-builtins-build-update-repo.c:73 +#: app/flatpak-builtins-build-update-repo.c:74 msgid "Default branch to use for this repository" msgstr "用於此軟體庫的預設分支" -#: app/flatpak-builtins-build-update-repo.c:73 -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 -#: app/flatpak-builtins-repo.c:710 app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-build-update-repo.c:74 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-repo.c:711 app/flatpak-builtins-repo.c:712 #: app/flatpak-builtins-run.c:69 msgid "BRANCH" msgstr "BRANCH" -#: app/flatpak-builtins-build-update-repo.c:74 -#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:87 +#: app/flatpak-builtins-build-update-repo.c:75 +#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:87 msgid "COLLECTION-ID" msgstr "COLLECTION-ID" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-build-update-repo.c:76 +#: app/flatpak-builtins-build-update-repo.c:77 msgid "" "Permanently deploy collection ID to client remote configurations, only for " "sideload support" msgstr "永久布署收藏 ID 至用戶端遠端設定,僅供側載支援" -#: app/flatpak-builtins-build-update-repo.c:77 +#: app/flatpak-builtins-build-update-repo.c:78 msgid "Permanently deploy collection ID to client remote configurations" msgstr "永久布署收藏 ID 到客戶端的遠端組態" -#: app/flatpak-builtins-build-update-repo.c:78 +#: app/flatpak-builtins-build-update-repo.c:79 msgid "Name of authenticator for this repository" msgstr "此軟體庫的身分核對器名稱" -#: app/flatpak-builtins-build-update-repo.c:79 +#: app/flatpak-builtins-build-update-repo.c:80 msgid "Autoinstall authenticator for this repository" msgstr "自動安裝此軟體庫的身分核對器" -#: app/flatpak-builtins-build-update-repo.c:80 +#: app/flatpak-builtins-build-update-repo.c:81 msgid "Don't autoinstall authenticator for this repository" msgstr "不要自動安裝此軟體庫的身分核對器" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 msgid "Authenticator option" msgstr "身分核對器選項" -#: app/flatpak-builtins-build-update-repo.c:81 -#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:93 +#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:93 msgid "KEY=VALUE" msgstr "KEY=VALUE" -#: app/flatpak-builtins-build-update-repo.c:82 +#: app/flatpak-builtins-build-update-repo.c:83 msgid "Import new default GPG public key from FILE" msgstr "以 FILE 作為新的預設 GPG 公開金鑰匯入" -#: app/flatpak-builtins-build-update-repo.c:83 +#: app/flatpak-builtins-build-update-repo.c:84 msgid "GPG Key ID to sign the summary with" msgstr "用於簽署摘要的 GPG 金鑰 ID" -#: app/flatpak-builtins-build-update-repo.c:85 +#: app/flatpak-builtins-build-update-repo.c:86 msgid "Generate delta files" msgstr "生成增減檔" -#: app/flatpak-builtins-build-update-repo.c:87 +#: app/flatpak-builtins-build-update-repo.c:88 msgid "Don't update the appstream branch" msgstr "不要更新 AppStream 分支" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "Max parallel jobs when creating deltas (default: NUMCPUs)" msgstr "建立增減檔的最大並行作業數(預設值:CPU 數 (NUMCPUs))" -#: app/flatpak-builtins-build-update-repo.c:88 +#: app/flatpak-builtins-build-update-repo.c:89 msgid "NUM-JOBS" msgstr "NUM-JOBS" -#: app/flatpak-builtins-build-update-repo.c:89 +#: app/flatpak-builtins-build-update-repo.c:90 msgid "Don't create deltas matching refs" msgstr "不建立符合參照的增減檔" -#: app/flatpak-builtins-build-update-repo.c:90 +#: app/flatpak-builtins-build-update-repo.c:91 msgid "Prune unused objects" msgstr "修除未使用的物件" -#: app/flatpak-builtins-build-update-repo.c:91 +#: app/flatpak-builtins-build-update-repo.c:92 msgid "Prune but don't actually remove anything" msgstr "" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "Only traverse DEPTH parents for each commit (default: -1=infinite)" msgstr "每個提交僅橫跨 DEPTH 個層級的上層目錄(預設值:-1=無限)" -#: app/flatpak-builtins-build-update-repo.c:92 +#: app/flatpak-builtins-build-update-repo.c:93 msgid "DEPTH" msgstr "DEPTH" -#: app/flatpak-builtins-build-update-repo.c:222 +#: app/flatpak-builtins-build-update-repo.c:223 #, c-format msgid "Generating delta: %s (%.10s)\n" msgstr "正在生成增減檔:%s (%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:224 +#: app/flatpak-builtins-build-update-repo.c:225 #, c-format msgid "Generating delta: %s (%.10s-%.10s)\n" msgstr "正在生成增減檔:%s (%.10s-%.10s)\n" -#: app/flatpak-builtins-build-update-repo.c:232 +#: app/flatpak-builtins-build-update-repo.c:233 #, c-format msgid "Failed to generate delta %s (%.10s): " msgstr "增減檔 %s 生成失敗 (%.10s):" -#: app/flatpak-builtins-build-update-repo.c:235 +#: app/flatpak-builtins-build-update-repo.c:236 #, c-format msgid "Failed to generate delta %s (%.10s-%.10s): " msgstr "增減檔 %s 生成失敗 (%.10s-%.10s):" -#: app/flatpak-builtins-build-update-repo.c:491 +#: app/flatpak-builtins-build-update-repo.c:492 msgid "LOCATION - Update repository metadata" msgstr "LOCATION - 更新軟體庫中介資料" -#: app/flatpak-builtins-build-update-repo.c:608 +#: app/flatpak-builtins-build-update-repo.c:609 +#, c-format msgid "Updating appstream branch\n" msgstr "正在更新 appstream 分支\n" -#: app/flatpak-builtins-build-update-repo.c:637 +#: app/flatpak-builtins-build-update-repo.c:638 +#, c-format msgid "Updating summary\n" msgstr "正在更新摘要\n" -#: app/flatpak-builtins-build-update-repo.c:660 +#: app/flatpak-builtins-build-update-repo.c:661 #, c-format msgid "Total objects: %u\n" msgstr "物件總數:%u\n" -#: app/flatpak-builtins-build-update-repo.c:662 +#: app/flatpak-builtins-build-update-repo.c:663 +#, c-format msgid "No unreachable objects\n" msgstr "沒有無法觸及的物件\n" -#: app/flatpak-builtins-build-update-repo.c:664 +#: app/flatpak-builtins-build-update-repo.c:665 #, c-format msgid "Deleted %u objects, %s freed\n" msgstr "已刪除 %u 個物件,已釋放 %s 空間\n" @@ -1139,109 +1149,109 @@ msgstr "僅可以使用 --list、--get、--set 或 --unset 其中之一" msgid "Must specify one of --list, --get, --set or --unset" msgstr "必須指定 --list、--get、--set、--unset 其中之一" -#: app/flatpak-builtins-create-usb.c:44 app/flatpak-builtins-install.c:73 -#: app/flatpak-builtins-remote-info.c:56 app/flatpak-builtins-uninstall.c:59 +#: app/flatpak-builtins-create-usb.c:45 app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-remote-info.c:57 app/flatpak-builtins-uninstall.c:59 #: app/flatpak-builtins-update.c:65 msgid "Look for app with the specified name" msgstr "以指定名稱查找程式" -#: app/flatpak-builtins-create-usb.c:45 +#: app/flatpak-builtins-create-usb.c:46 msgid "Arch to copy" msgstr "要複製的架構" -#: app/flatpak-builtins-create-usb.c:46 +#: app/flatpak-builtins-create-usb.c:47 msgid "DEST" msgstr "DEST" -#: app/flatpak-builtins-create-usb.c:48 +#: app/flatpak-builtins-create-usb.c:49 msgid "Allow partial commits in the created repo" msgstr "允許在建立的軟體庫進行部分提交" -#: app/flatpak-builtins-create-usb.c:124 app/flatpak-builtins-create-usb.c:164 +#: app/flatpak-builtins-create-usb.c:125 app/flatpak-builtins-create-usb.c:165 #, fuzzy, c-format msgid "" "Warning: Related ref ‘%s’ is partially installed. Use --allow-partial to " "suppress this message.\n" msgstr "警告:忽略相關的「%s」參照,因為已部分安裝。\n" -#: app/flatpak-builtins-create-usb.c:157 +#: app/flatpak-builtins-create-usb.c:158 #, c-format msgid "Warning: Omitting related ref ‘%s’ because it is not installed.\n" msgstr "警告:忽略相關的「%s」參照,因為它尚未安裝。\n" -#: app/flatpak-builtins-create-usb.c:174 +#: app/flatpak-builtins-create-usb.c:175 #, c-format msgid "" "Warning: Omitting related ref ‘%s’ because its remote ‘%s’ does not have a " "collection ID set.\n" msgstr "警告:忽略相關的「%s」參照,因為它的「%s」遠端並未設定收藏 ID。\n" -#: app/flatpak-builtins-create-usb.c:186 +#: app/flatpak-builtins-create-usb.c:187 #, fuzzy, c-format msgid "Warning: Omitting related ref ‘%s’ because it's extra-data.\n" msgstr "警告:忽略相關的「%s」參照,因為它尚未安裝。\n" -#: app/flatpak-builtins-create-usb.c:261 app/flatpak-builtins-create-usb.c:635 +#: app/flatpak-builtins-create-usb.c:262 app/flatpak-builtins-create-usb.c:637 #, c-format msgid "" "Remote ‘%s’ does not have a collection ID set, which is required for P2P " "distribution of ‘%s’." msgstr "「%s」遠端並沒有設定收藏 ID,但這在「%s」的 P2P 散布作業中卻有要求。" -#: app/flatpak-builtins-create-usb.c:271 +#: app/flatpak-builtins-create-usb.c:272 #, fuzzy, c-format msgid "Warning: Omitting ref ‘%s’ (runtime of ‘%s’) because it's extra-data.\n" msgstr "警告:忽略相關的「%s」參照,因為它尚未安裝。\n" -#: app/flatpak-builtins-create-usb.c:482 +#: app/flatpak-builtins-create-usb.c:484 msgid "MOUNT-PATH [REF…] - Copy apps or runtimes onto removable media" msgstr "MOUNT-PATH [REF…] - 複製 App 或執行時期至可移除式媒體" -#: app/flatpak-builtins-create-usb.c:491 +#: app/flatpak-builtins-create-usb.c:493 msgid "MOUNT-PATH and REF must be specified" msgstr "必須指定 MOUNT-PATH 與 REF" -#: app/flatpak-builtins-create-usb.c:605 +#: app/flatpak-builtins-create-usb.c:607 #, c-format msgid "Ref ‘%s’ found in multiple installations: %s. You must specify one." msgstr "在多個安裝中找到「%s」參照:%s。您必須指定一個。" -#: app/flatpak-builtins-create-usb.c:618 +#: app/flatpak-builtins-create-usb.c:620 #, c-format msgid "Refs must all be in the same installation (found in %s and %s)." msgstr "參照必須全部都在相同的安裝裡(在 %s 與 %s 中都有找到)。" -#: app/flatpak-builtins-create-usb.c:668 +#: app/flatpak-builtins-create-usb.c:670 #, c-format msgid "" "Warning: Ref ‘%s’ is partially installed. Use --allow-partial to suppress " "this message.\n" msgstr "" -#: app/flatpak-builtins-create-usb.c:679 +#: app/flatpak-builtins-create-usb.c:681 #, c-format msgid "Installed ref ‘%s’ is extra-data, and cannot be distributed offline" msgstr "" -#: app/flatpak-builtins-create-usb.c:719 +#: app/flatpak-builtins-create-usb.c:721 #, c-format msgid "Warning: Couldn't update repo metadata for remote ‘%s’: %s\n" msgstr "警告:無法更新「%s」遠端的軟體庫中介資料:%s\n" -#: app/flatpak-builtins-create-usb.c:749 +#: app/flatpak-builtins-create-usb.c:751 #, c-format msgid "Warning: Couldn't update appstream data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "警告:無法更新「%s」遠端的「%s」架構 appstream 資料:%s\n" #. Print a warning if both appstream and appstream2 are missing -#: app/flatpak-builtins-create-usb.c:782 +#: app/flatpak-builtins-create-usb.c:784 #, c-format msgid "" "Warning: Couldn't find appstream data for remote ‘%s’ arch ‘%s’: %s; %s\n" msgstr "警告:找不到「%s」遠端的「%s」架構 appstream 資料:%s; %s\n" #. Appstream2 is only for efficiency, so just print a debug message -#: app/flatpak-builtins-create-usb.c:788 +#: app/flatpak-builtins-create-usb.c:790 #, c-format msgid "Couldn't find appstream2 data for remote ‘%s’ arch ‘%s’: %s\n" msgstr "找不到「%s」遠端的「%s」架構 appstream2 資料:%s\n" @@ -1314,19 +1324,20 @@ msgstr "FILE - 取得已匯出檔案的相關資訊" #: app/flatpak-builtins-document-info.c:100 #: app/flatpak-builtins-document-unexport.c:92 +#, c-format msgid "Not exported\n" msgstr "未匯出\n" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "What information to show" msgstr "要顯示什麼資訊" #: app/flatpak-builtins-document-list.c:42 app/flatpak-builtins-history.c:52 #: app/flatpak-builtins-list.c:52 app/flatpak-builtins-ps.c:42 -#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:57 +#: app/flatpak-builtins-remote-list.c:44 app/flatpak-builtins-remote-ls.c:58 #: app/flatpak-builtins-search.c:37 msgid "FIELD,…" msgstr "FIELD,…" @@ -1345,7 +1356,7 @@ msgid "Show the document path" msgstr "顯示文件路徑" #: app/flatpak-builtins-document-list.c:49 app/flatpak-builtins-list.c:64 -#: app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-remote-ls.c:72 msgid "Origin" msgstr "來源" @@ -1359,7 +1370,7 @@ msgid "Show applications with permission" msgstr "顯示應用程式與權限" #: app/flatpak-builtins-document-list.c:51 -#: app/flatpak-builtins-permission-list.c:177 +#: app/flatpak-builtins-permission-list.c:179 #: app/flatpak-builtins-permission-show.c:142 msgid "Permissions" msgstr "權限" @@ -1484,12 +1495,12 @@ msgid "Show the kind of change" msgstr "顯示變更的類型" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 app/flatpak-builtins-repo.c:333 +#: app/flatpak-builtins-remote-ls.c:73 app/flatpak-builtins-repo.c:334 msgid "Ref" msgstr "參照" #: app/flatpak-builtins-history.c:59 app/flatpak-builtins-list.c:66 -#: app/flatpak-builtins-remote-ls.c:72 +#: app/flatpak-builtins-remote-ls.c:73 msgid "Show the ref" msgstr "顯示參照" @@ -1498,24 +1509,24 @@ msgid "Show the application/runtime ID" msgstr "顯示應用程式或執行時期環境 ID" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 -#: app/flatpak-cli-transaction.c:1378 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-cli-transaction.c:1423 msgid "Arch" msgstr "架構" #: app/flatpak-builtins-history.c:61 app/flatpak-builtins-list.c:62 -#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-ps.c:51 app/flatpak-builtins-remote-ls.c:71 msgid "Show the architecture" msgstr "顯示架構" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:69 -#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1381 +#: app/flatpak-builtins-ps.c:52 app/flatpak-builtins-remote-ls.c:70 +#: app/flatpak-builtins-search.c:46 app/flatpak-cli-transaction.c:1426 msgid "Branch" msgstr "分支" #: app/flatpak-builtins-history.c:62 app/flatpak-builtins-list.c:61 -#: app/flatpak-builtins-remote-ls.c:69 +#: app/flatpak-builtins-remote-ls.c:70 msgid "Show the branch" msgstr "顯示分支" @@ -1527,7 +1538,7 @@ msgstr "安裝" msgid "Show the affected installation" msgstr "顯示受影響的安裝" -#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1395 +#: app/flatpak-builtins-history.c:64 app/flatpak-cli-transaction.c:1440 msgid "Remote" msgstr "遠端" @@ -1536,7 +1547,7 @@ msgid "Show the remote" msgstr "顯示遠端" #: app/flatpak-builtins-history.c:65 app/flatpak-builtins-ps.c:53 -#: app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-remote-ls.c:74 msgid "Commit" msgstr "提交" @@ -1556,7 +1567,7 @@ msgstr "顯示先前的提交" msgid "Show the remote URL" msgstr "顯示遠端 URL" -#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:684 +#: app/flatpak-builtins-history.c:68 app/flatpak-cli-transaction.c:688 msgid "User" msgstr "使用者" @@ -1573,7 +1584,7 @@ msgid "Show the tool that was used" msgstr "顯示使用的工具" #: app/flatpak-builtins-history.c:70 app/flatpak-builtins-list.c:60 -#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:45 +#: app/flatpak-builtins-remote-ls.c:69 app/flatpak-builtins-search.c:45 msgid "Version" msgstr "版本" @@ -1601,10 +1612,12 @@ msgid " - Show history" msgstr " - 顯示歷史" #: app/flatpak-builtins-history.c:488 +#, c-format msgid "Failed to parse the --since option" msgstr "無法解析 --since 選項" #: app/flatpak-builtins-history.c:499 +#, c-format msgid "Failed to parse the --until option" msgstr "無法解析 --until 選項" @@ -1620,11 +1633,11 @@ msgstr "顯示系統層級的安裝" msgid "Show specific system-wide installations" msgstr "顯示指定的系統層級安裝" -#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:58 +#: app/flatpak-builtins-info.c:59 app/flatpak-builtins-remote-info.c:59 msgid "Show ref" msgstr "顯示參照" -#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:59 +#: app/flatpak-builtins-info.c:60 app/flatpak-builtins-remote-info.c:60 msgid "Show commit" msgstr "顯示提交" @@ -1636,15 +1649,15 @@ msgstr "顯示來源" msgid "Show size" msgstr "顯示大小" -#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:61 +#: app/flatpak-builtins-info.c:63 app/flatpak-builtins-remote-info.c:62 msgid "Show metadata" msgstr "顯示中介資料" -#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:62 +#: app/flatpak-builtins-info.c:64 app/flatpak-builtins-remote-info.c:63 msgid "Show runtime" msgstr "顯示執行時期環境" -#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:63 +#: app/flatpak-builtins-info.c:65 app/flatpak-builtins-remote-info.c:64 msgid "Show sdk" msgstr "顯示 SDK" @@ -1656,8 +1669,8 @@ msgstr "顯示權限" msgid "Query file access" msgstr "查詢檔案存取" -#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:79 -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-run.c:90 +#: app/flatpak-builtins-info.c:67 app/flatpak-builtins-install.c:80 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-run.c:90 #: app/flatpak-builtins-run.c:91 app/flatpak-builtins-update.c:67 #: app/flatpak-builtins-update.c:71 msgid "PATH" @@ -1675,7 +1688,7 @@ msgstr "顯示位置" msgid "NAME [BRANCH] - Get info about an installed app or runtime" msgstr "NAME [BRANCH] - 取得已安裝程式或執行時期環境的相關資訊" -#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:310 +#: app/flatpak-builtins-info.c:123 app/flatpak-builtins-remote-add.c:312 #: app/flatpak-builtins-remote-delete.c:63 msgid "NAME must be specified" msgstr "必須指定 NAME" @@ -1684,85 +1697,87 @@ msgstr "必須指定 NAME" msgid "ref not present in origin" msgstr "參照不在來源中" -#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:216 +#: app/flatpak-builtins-info.c:211 app/flatpak-builtins-remote-info.c:217 +#, c-format msgid "Warning: Commit has no flatpak metadata\n" msgstr "警告:提交中沒有 flatpak 中介資料\n" #: app/flatpak-builtins-info.c:217 app/flatpak-builtins-info.c:259 -#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:502 -#: app/flatpak-builtins-remote-info.c:235 -#: app/flatpak-builtins-remote-info.c:270 +#: app/flatpak-builtins-info.c:455 app/flatpak-builtins-info.c:513 +#: app/flatpak-builtins-remote-info.c:236 +#: app/flatpak-builtins-remote-info.c:271 msgid "ID:" msgstr "ID:" #: app/flatpak-builtins-info.c:218 app/flatpak-builtins-info.c:260 -#: app/flatpak-builtins-remote-info.c:236 -#: app/flatpak-builtins-remote-info.c:271 +#: app/flatpak-builtins-remote-info.c:237 +#: app/flatpak-builtins-remote-info.c:272 msgid "Ref:" msgstr "參照:" #: app/flatpak-builtins-info.c:219 app/flatpak-builtins-info.c:261 -#: app/flatpak-builtins-remote-info.c:237 -#: app/flatpak-builtins-remote-info.c:272 +#: app/flatpak-builtins-remote-info.c:238 +#: app/flatpak-builtins-remote-info.c:273 msgid "Arch:" msgstr "架構:" #: app/flatpak-builtins-info.c:220 app/flatpak-builtins-info.c:262 -#: app/flatpak-builtins-remote-info.c:238 -#: app/flatpak-builtins-remote-info.c:273 +#: app/flatpak-builtins-remote-info.c:239 +#: app/flatpak-builtins-remote-info.c:274 msgid "Branch:" msgstr "分支:" #: app/flatpak-builtins-info.c:222 app/flatpak-builtins-info.c:264 -#: app/flatpak-builtins-remote-info.c:240 -#: app/flatpak-builtins-remote-info.c:275 +#: app/flatpak-builtins-remote-info.c:241 +#: app/flatpak-builtins-remote-info.c:276 msgid "Version:" msgstr "版本:" #: app/flatpak-builtins-info.c:224 app/flatpak-builtins-info.c:266 -#: app/flatpak-builtins-remote-info.c:242 -#: app/flatpak-builtins-remote-info.c:277 +#: app/flatpak-builtins-remote-info.c:243 +#: app/flatpak-builtins-remote-info.c:278 msgid "License:" msgstr "授權條款:" #: app/flatpak-builtins-info.c:226 app/flatpak-builtins-info.c:269 -#: app/flatpak-builtins-remote-info.c:244 -#: app/flatpak-builtins-remote-info.c:279 +#: app/flatpak-builtins-remote-info.c:245 +#: app/flatpak-builtins-remote-info.c:280 msgid "Collection:" msgstr "收藏:" #: app/flatpak-builtins-info.c:227 app/flatpak-builtins-info.c:270 +#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:516 msgid "Installation:" msgstr "安裝:" #: app/flatpak-builtins-info.c:228 app/flatpak-builtins-info.c:271 -#: app/flatpak-builtins-info.c:458 app/flatpak-builtins-info.c:505 -#: app/flatpak-builtins-remote-info.c:248 -#: app/flatpak-builtins-remote-info.c:283 +#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:517 +#: app/flatpak-builtins-remote-info.c:249 +#: app/flatpak-builtins-remote-info.c:284 msgid "Installed:" msgstr "已安裝:" #: app/flatpak-builtins-info.c:231 app/flatpak-builtins-info.c:279 -#: app/flatpak-builtins-remote-info.c:251 -#: app/flatpak-builtins-remote-info.c:287 +#: app/flatpak-builtins-remote-info.c:252 +#: app/flatpak-builtins-remote-info.c:288 msgid "Runtime:" msgstr "執行時期環境:" #: app/flatpak-builtins-info.c:232 app/flatpak-builtins-info.c:288 -#: app/flatpak-builtins-remote-info.c:252 -#: app/flatpak-builtins-remote-info.c:292 +#: app/flatpak-builtins-remote-info.c:253 +#: app/flatpak-builtins-remote-info.c:293 msgid "Sdk:" msgstr "SDK:" #: app/flatpak-builtins-info.c:235 app/flatpak-builtins-info.c:313 -#: app/flatpak-builtins-remote-info.c:255 -#: app/flatpak-builtins-remote-info.c:318 +#: app/flatpak-builtins-remote-info.c:256 +#: app/flatpak-builtins-remote-info.c:319 msgid "Date:" msgstr "日期:" #: app/flatpak-builtins-info.c:237 app/flatpak-builtins-info.c:311 -#: app/flatpak-builtins-remote-info.c:257 -#: app/flatpak-builtins-remote-info.c:316 +#: app/flatpak-builtins-remote-info.c:258 +#: app/flatpak-builtins-remote-info.c:317 msgid "Subject:" msgstr "主題:" @@ -1775,15 +1790,15 @@ msgid "Latest commit:" msgstr "最近提交:" #: app/flatpak-builtins-info.c:244 app/flatpak-builtins-info.c:303 -#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:504 -#: app/flatpak-builtins-remote-info.c:258 -#: app/flatpak-builtins-remote-info.c:297 +#: app/flatpak-builtins-info.c:457 app/flatpak-builtins-info.c:515 +#: app/flatpak-builtins-remote-info.c:259 +#: app/flatpak-builtins-remote-info.c:298 msgid "Commit:" msgstr "提交:" #: app/flatpak-builtins-info.c:246 app/flatpak-builtins-info.c:308 -#: app/flatpak-builtins-remote-info.c:260 -#: app/flatpak-builtins-remote-info.c:302 +#: app/flatpak-builtins-remote-info.c:261 +#: app/flatpak-builtins-remote-info.c:303 msgid "Parent:" msgstr "上層:" @@ -1792,14 +1807,14 @@ msgid "Alt-id:" msgstr "Alt-id:" #: app/flatpak-builtins-info.c:250 app/flatpak-builtins-info.c:325 -#: app/flatpak-builtins-remote-info.c:262 -#: app/flatpak-builtins-remote-info.c:307 +#: app/flatpak-builtins-remote-info.c:263 +#: app/flatpak-builtins-remote-info.c:308 msgid "End-of-life:" msgstr "End-of-life:" #: app/flatpak-builtins-info.c:252 app/flatpak-builtins-info.c:330 -#: app/flatpak-builtins-remote-info.c:264 -#: app/flatpak-builtins-remote-info.c:312 +#: app/flatpak-builtins-remote-info.c:265 +#: app/flatpak-builtins-remote-info.c:313 msgid "End-of-life-rebase:" msgstr "End-of-life-rebase:" @@ -1808,145 +1823,146 @@ msgid "Subdirectories:" msgstr "子目錄:" #: app/flatpak-builtins-info.c:255 app/flatpak-builtins-info.c:454 -#: app/flatpak-builtins-info.c:501 +#: app/flatpak-builtins-info.c:512 msgid "Extension:" msgstr "擴充:" #: app/flatpak-builtins-info.c:267 app/flatpak-builtins-info.c:456 -#: app/flatpak-builtins-info.c:503 +#: app/flatpak-builtins-info.c:514 msgid "Origin:" msgstr "來源:" -#: app/flatpak-builtins-info.c:459 app/flatpak-builtins-info.c:510 +#: app/flatpak-builtins-info.c:460 app/flatpak-builtins-info.c:522 msgid "Subpaths:" msgstr "子路徑:" -#: app/flatpak-builtins-info.c:476 +#: app/flatpak-builtins-info.c:478 msgid "unmaintained" msgstr "已不維護" -#: app/flatpak-builtins-info.c:479 +#: app/flatpak-builtins-info.c:480 app/flatpak-builtins-info.c:482 msgid "unknown" msgstr "未知" -#: app/flatpak-builtins-install.c:66 +#: app/flatpak-builtins-install.c:67 msgid "Don't pull, only install from local cache" msgstr "不要拉入,僅從本機快取中安裝" -#: app/flatpak-builtins-install.c:67 app/flatpak-builtins-update.c:60 +#: app/flatpak-builtins-install.c:68 app/flatpak-builtins-update.c:60 msgid "Don't deploy, only download to local cache" msgstr "不要布署,僅下載到本機快取" -#: app/flatpak-builtins-install.c:68 +#: app/flatpak-builtins-install.c:69 msgid "Don't install related refs" msgstr "不要安裝相關的參照" -#: app/flatpak-builtins-install.c:69 app/flatpak-builtins-update.c:62 +#: app/flatpak-builtins-install.c:70 app/flatpak-builtins-update.c:62 msgid "Don't verify/install runtime dependencies" msgstr "不要核驗或安裝執行時期環境依賴" -#: app/flatpak-builtins-install.c:70 +#: app/flatpak-builtins-install.c:71 msgid "Don't automatically pin explicit installs" msgstr "" -#: app/flatpak-builtins-install.c:71 app/flatpak-builtins-update.c:63 +#: app/flatpak-builtins-install.c:72 app/flatpak-builtins-update.c:63 msgid "Don't use static deltas" msgstr "不要使用靜態增減檔" -#: app/flatpak-builtins-install.c:74 +#: app/flatpak-builtins-install.c:75 msgid "Additionally install the SDK used to build the given refs" msgstr "" -#: app/flatpak-builtins-install.c:75 +#: app/flatpak-builtins-install.c:76 msgid "" "Additionally install the debug info for the given refs and their dependencies" msgstr "" -#: app/flatpak-builtins-install.c:76 +#: app/flatpak-builtins-install.c:77 msgid "Assume LOCATION is a .flatpak single-file bundle" msgstr "假定 LOCATION 是 .flatpak 單一檔案套組" -#: app/flatpak-builtins-install.c:77 +#: app/flatpak-builtins-install.c:78 msgid "Assume LOCATION is a .flatpakref application description" msgstr "假定 LOCATION 是 .flatpakref 應用程式描述" -#: app/flatpak-builtins-install.c:78 +#: app/flatpak-builtins-install.c:79 msgid "Check bundle signatures with GPG key from FILE (- for stdin)" msgstr "取用 FILE 作為 GPG 金鑰來檢查套組簽章(- 代表 stdin)" -#: app/flatpak-builtins-install.c:79 +#: app/flatpak-builtins-install.c:80 msgid "Only install this subpath" msgstr "僅安裝此子路徑" -#: app/flatpak-builtins-install.c:80 app/flatpak-builtins-uninstall.c:63 +#: app/flatpak-builtins-install.c:81 app/flatpak-builtins-uninstall.c:63 #: app/flatpak-builtins-update.c:68 msgid "Automatically answer yes for all questions" msgstr "自動為所有問題回答 yes" -#: app/flatpak-builtins-install.c:81 +#: app/flatpak-builtins-install.c:82 msgid "Uninstall first if already installed" msgstr "若已經安裝則先解除安裝" -#: app/flatpak-builtins-install.c:82 app/flatpak-builtins-uninstall.c:64 +#: app/flatpak-builtins-install.c:83 app/flatpak-builtins-uninstall.c:64 #: app/flatpak-builtins-update.c:69 msgid "Produce minimal output and don't ask questions" msgstr "輸出最少內容,且不詢問問題" -#: app/flatpak-builtins-install.c:83 +#: app/flatpak-builtins-install.c:84 msgid "Update install if already installed" msgstr "若已經安裝則更新安裝" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-install.c:85 app/flatpak-builtins-update.c:71 +#: app/flatpak-builtins-install.c:86 app/flatpak-builtins-update.c:71 msgid "Use this local repo for sideloads" msgstr "使用此本機軟體庫側載" -#: app/flatpak-builtins-install.c:144 +#: app/flatpak-builtins-install.c:145 msgid "Bundle filename must be specified" msgstr "必須指定套組檔名" -#: app/flatpak-builtins-install.c:154 +#: app/flatpak-builtins-install.c:155 msgid "Remote bundles are not supported" msgstr "不支援遠端套組" -#: app/flatpak-builtins-install.c:213 +#: app/flatpak-builtins-install.c:214 msgid "Filename or uri must be specified" msgstr "必須指定檔名或 URI" -#: app/flatpak-builtins-install.c:295 +#: app/flatpak-builtins-install.c:296 msgid "[LOCATION/REMOTE] [REF…] - Install applications or runtimes" msgstr "[LOCATION/REMOTE] [REF…] - 安裝應用程式或執行時期" -#: app/flatpak-builtins-install.c:321 +#: app/flatpak-builtins-install.c:322 msgid "At least one REF must be specified" msgstr "必須指定至少一個 REF" -#: app/flatpak-builtins-install.c:335 +#: app/flatpak-builtins-install.c:336 +#, c-format msgid "Looking for matches…\n" msgstr "正在尋找符合項目…\n" -#: app/flatpak-builtins-install.c:456 +#: app/flatpak-builtins-install.c:457 #, fuzzy, c-format msgid "No remote refs found for ‘%s’" msgstr "沒有與「%s」相似的遠端參照" -#: app/flatpak-builtins-install.c:532 app/flatpak-builtins-uninstall.c:405 -#: common/flatpak-ref-utils.c:686 common/flatpak-ref-utils.c:1592 +#: app/flatpak-builtins-install.c:533 app/flatpak-builtins-uninstall.c:405 +#: common/flatpak-ref-utils.c:689 common/flatpak-ref-utils.c:1595 #, c-format msgid "Invalid branch %s: %s" msgstr "無效的 %s 分支:%s" -#: app/flatpak-builtins-install.c:565 +#: app/flatpak-builtins-install.c:566 #, c-format msgid "Nothing matches %s in local repository for remote %s" msgstr "「%2$s」遠端的本機軟體庫中沒有項目符合「%1$s」" -#: app/flatpak-builtins-install.c:567 +#: app/flatpak-builtins-install.c:568 #, c-format msgid "Nothing matches %s in remote %s" msgstr "%2$s 遠端沒有項目符合 %1$s" -#: app/flatpak-builtins-install.c:588 +#: app/flatpak-builtins-install.c:589 #, c-format msgid "Skipping: %s\n" msgstr "正在略過:%s\n" @@ -1984,51 +2000,51 @@ msgstr "列出已安裝的應用程式" msgid "Arch to show" msgstr "要顯示的架構" -#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:55 +#: app/flatpak-builtins-list.c:50 app/flatpak-builtins-remote-ls.c:56 msgid "List all refs (including locale/debug)" msgstr "列出所有參照(包含語言地區/除錯)" -#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:56 +#: app/flatpak-builtins-list.c:51 app/flatpak-builtins-remote-ls.c:57 msgid "List all applications using RUNTIME" msgstr "列出使用 RUNTIME 的所有應用程式" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Name" msgstr "名稱" #: app/flatpak-builtins-list.c:57 app/flatpak-builtins-remote-list.c:49 -#: app/flatpak-builtins-remote-ls.c:65 app/flatpak-builtins-search.c:42 +#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:42 msgid "Show the name" msgstr "顯示名稱" #: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-list.c:58 -#: app/flatpak-builtins-remote-ls.c:66 app/flatpak-builtins-search.c:43 +#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:43 msgid "Description" msgstr "描述" -#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:66 +#: app/flatpak-builtins-list.c:58 app/flatpak-builtins-remote-ls.c:67 #: app/flatpak-builtins-search.c:43 msgid "Show the description" msgstr "顯示描述" -#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:67 +#: app/flatpak-builtins-list.c:59 app/flatpak-builtins-remote-ls.c:68 #: app/flatpak-builtins-search.c:44 msgid "Application ID" msgstr "應用程式 ID" #: app/flatpak-builtins-list.c:59 app/flatpak-builtins-ps.c:50 -#: app/flatpak-builtins-remote-ls.c:67 app/flatpak-builtins-search.c:44 +#: app/flatpak-builtins-remote-ls.c:68 app/flatpak-builtins-search.c:44 msgid "Show the application ID" msgstr "顯示應用程式 ID" -#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:68 +#: app/flatpak-builtins-list.c:60 app/flatpak-builtins-remote-ls.c:69 #: app/flatpak-builtins-search.c:45 msgid "Show the version" msgstr "顯示版本" #: app/flatpak-builtins-list.c:63 app/flatpak-builtins-ps.c:54 -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Runtime" msgstr "執行時期環境" @@ -2036,7 +2052,7 @@ msgstr "執行時期環境" msgid "Show the used runtime" msgstr "顯示使用的執行時期" -#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:71 +#: app/flatpak-builtins-list.c:64 app/flatpak-builtins-remote-ls.c:72 msgid "Show the origin remote" msgstr "顯示來源遠端" @@ -2048,7 +2064,7 @@ msgstr "顯示安裝" msgid "Active commit" msgstr "活躍的提交" -#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:73 +#: app/flatpak-builtins-list.c:67 app/flatpak-builtins-remote-ls.c:74 msgid "Show the active commit" msgstr "顯示活躍的提交" @@ -2060,35 +2076,35 @@ msgstr "最近的提交" msgid "Show the latest commit" msgstr "顯示最近的提交" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Installed size" msgstr "安裝後大小" -#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:75 +#: app/flatpak-builtins-list.c:69 app/flatpak-builtins-remote-ls.c:76 msgid "Show the installed size" msgstr "顯示安裝後大小" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 app/flatpak-builtins-repo.c:337 +#: app/flatpak-builtins-remote-ls.c:78 app/flatpak-builtins-repo.c:338 msgid "Options" msgstr "選項" #: app/flatpak-builtins-list.c:70 app/flatpak-builtins-remote-list.c:56 -#: app/flatpak-builtins-remote-ls.c:77 +#: app/flatpak-builtins-remote-ls.c:78 msgid "Show options" msgstr "顯示選項" -#: app/flatpak-builtins-list.c:179 +#: app/flatpak-builtins-list.c:178 #, fuzzy, c-format msgid "Unable to load details of %s: %s" msgstr "無法從遠端載入中介資料 %s:%s" -#: app/flatpak-builtins-list.c:189 -#, c-format +#: app/flatpak-builtins-list.c:188 +#, fuzzy, c-format msgid "Unable to inspect current version of %s: %s" -msgstr "" +msgstr "無法建立同步管道" -#: app/flatpak-builtins-list.c:409 +#: app/flatpak-builtins-list.c:406 msgid " - List installed apps and/or runtimes" msgstr " - 列出已安裝的程式與或執行時期環境" @@ -2100,7 +2116,7 @@ msgstr "目前要製作的架構" msgid "APP BRANCH - Make branch of application current" msgstr "APP BRANCH - 製作目前應用程式的分支" -#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:155 +#: app/flatpak-builtins-make-current.c:69 app/flatpak-builtins-run.c:158 msgid "APP must be specified" msgstr "必須指定 APP" @@ -2123,10 +2139,12 @@ msgid "" msgstr "[PATTERN…] - 停用符合 PATTERN 的更新及自動安裝" #: app/flatpak-builtins-mask.c:73 +#, c-format msgid "No masked patterns\n" msgstr "沒有加上遮罩的模式\n" #: app/flatpak-builtins-mask.c:78 +#, c-format msgid "Masked patterns:\n" msgstr "加上遮罩的模式:\n" @@ -2142,26 +2160,26 @@ msgstr "顯示既有的凌駕值" msgid "[APP] - Override settings [for application]" msgstr "[APP] - 凌駕 [對象應用程式] 設定值" -#: app/flatpak-builtins-permission-list.c:138 +#: app/flatpak-builtins-permission-list.c:140 msgid "[TABLE] [ID] - List permissions" msgstr "[TABLE] [ID] - 列出權限" -#: app/flatpak-builtins-permission-list.c:174 +#: app/flatpak-builtins-permission-list.c:176 #: app/flatpak-builtins-permission-show.c:139 msgid "Table" msgstr "表格" -#: app/flatpak-builtins-permission-list.c:175 +#: app/flatpak-builtins-permission-list.c:177 #: app/flatpak-builtins-permission-show.c:140 msgid "Object" msgstr "物件" -#: app/flatpak-builtins-permission-list.c:176 +#: app/flatpak-builtins-permission-list.c:178 #: app/flatpak-builtins-permission-show.c:141 msgid "App" msgstr "程式" -#: app/flatpak-builtins-permission-list.c:178 +#: app/flatpak-builtins-permission-list.c:180 #: app/flatpak-builtins-permission-show.c:143 msgid "Data" msgstr "資料" @@ -2220,12 +2238,12 @@ msgid "[PATTERN…] - disable automatic removal of runtimes matching patterns" msgstr "[PATTERN…] - 停用符合 PATTERN 的更新及自動安裝" #: app/flatpak-builtins-pin.c:75 -#, fuzzy +#, fuzzy, c-format msgid "No pinned patterns\n" msgstr "沒有加上遮罩的模式\n" #: app/flatpak-builtins-pin.c:80 -#, fuzzy +#, fuzzy, c-format msgid "Pinned patterns:\n" msgstr "加上遮罩的模式:\n" @@ -2301,125 +2319,125 @@ msgstr "顯示 App 是否為背景" msgid " - Enumerate running sandboxes" msgstr " - 枚舉正在執行的沙盒" -#: app/flatpak-builtins-remote-add.c:63 +#: app/flatpak-builtins-remote-add.c:65 msgid "Do nothing if the provided remote exists" msgstr "若提供的遠端存在的話,則不要做任何事情" -#: app/flatpak-builtins-remote-add.c:64 +#: app/flatpak-builtins-remote-add.c:66 msgid "LOCATION specifies a configuration file, not the repo location" msgstr "LOCATION 用來指定組態檔,而非軟體庫位置" -#: app/flatpak-builtins-remote-add.c:69 app/flatpak-builtins-remote-modify.c:77 +#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:77 msgid "Disable GPG verification" msgstr "停用 GPG 驗證" -#: app/flatpak-builtins-remote-add.c:70 app/flatpak-builtins-remote-modify.c:78 +#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:78 msgid "Mark the remote as don't enumerate" msgstr "將遠端標記為不進行枚舉" -#: app/flatpak-builtins-remote-add.c:71 app/flatpak-builtins-remote-modify.c:79 +#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:79 msgid "Mark the remote as don't use for deps" msgstr "將遠端標記為不做為依賴" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "Set priority (default 1, higher is more prioritized)" msgstr "設定優先權(預設為 1,數字愈大優先權愈高)" -#: app/flatpak-builtins-remote-add.c:72 app/flatpak-builtins-remote-modify.c:80 +#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:80 msgid "PRIORITY" msgstr "PRIORITY" -#: app/flatpak-builtins-remote-add.c:73 +#: app/flatpak-builtins-remote-add.c:75 #, fuzzy msgid "The named subset to use for this remote" msgstr "用於此遠端的好讀名稱" -#: app/flatpak-builtins-remote-add.c:73 app/flatpak-builtins-remote-modify.c:70 +#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:70 msgid "SUBSET" msgstr "" -#: app/flatpak-builtins-remote-add.c:74 app/flatpak-builtins-remote-modify.c:81 +#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:81 msgid "A nice name to use for this remote" msgstr "用於此遠端的好讀名稱" -#: app/flatpak-builtins-remote-add.c:75 app/flatpak-builtins-remote-modify.c:82 +#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:82 msgid "A one-line comment for this remote" msgstr "此遠端的一列評註" -#: app/flatpak-builtins-remote-add.c:76 app/flatpak-builtins-remote-modify.c:83 +#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:83 msgid "A full-paragraph description for this remote" msgstr "此遠端的整段描述" -#: app/flatpak-builtins-remote-add.c:77 app/flatpak-builtins-remote-modify.c:84 +#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:84 msgid "URL for a website for this remote" msgstr "此遠端的網站 URL" -#: app/flatpak-builtins-remote-add.c:78 app/flatpak-builtins-remote-modify.c:85 +#: app/flatpak-builtins-remote-add.c:80 app/flatpak-builtins-remote-modify.c:85 msgid "URL for an icon for this remote" msgstr "此遠端的圖示 URL" -#: app/flatpak-builtins-remote-add.c:79 app/flatpak-builtins-remote-modify.c:86 +#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:86 msgid "Default branch to use for this remote" msgstr "用於此遠端的預設分支" -#: app/flatpak-builtins-remote-add.c:81 app/flatpak-builtins-remote-modify.c:88 +#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:88 msgid "Import GPG key from FILE (- for stdin)" msgstr "取用 FILE 作為 GPG 金鑰匯入(- 代表 stdin)" -#: app/flatpak-builtins-remote-add.c:82 app/flatpak-builtins-remote-modify.c:90 +#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:90 msgid "Set path to local filter FILE" msgstr "設定本機過濾器 FILE 的路徑" -#: app/flatpak-builtins-remote-add.c:83 app/flatpak-builtins-remote-modify.c:91 +#: app/flatpak-builtins-remote-add.c:85 app/flatpak-builtins-remote-modify.c:91 msgid "Disable the remote" msgstr "停用遠端" -#: app/flatpak-builtins-remote-add.c:84 app/flatpak-builtins-remote-modify.c:92 +#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:92 msgid "Name of authenticator" msgstr "身分核對器名稱" -#: app/flatpak-builtins-remote-add.c:86 app/flatpak-builtins-remote-modify.c:94 +#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:94 msgid "Autoinstall authenticator" msgstr "自動安裝身分核對器" -#: app/flatpak-builtins-remote-add.c:87 app/flatpak-builtins-remote-modify.c:95 +#: app/flatpak-builtins-remote-add.c:89 app/flatpak-builtins-remote-modify.c:95 msgid "Don't autoinstall authenticator" msgstr "不自動安裝身分核對器" -#: app/flatpak-builtins-remote-add.c:88 app/flatpak-builtins-remote-modify.c:97 +#: app/flatpak-builtins-remote-add.c:90 app/flatpak-builtins-remote-modify.c:97 msgid "Don't follow the redirect set in the summary file" msgstr "" -#: app/flatpak-builtins-remote-add.c:254 app/flatpak-builtins-remote-add.c:261 +#: app/flatpak-builtins-remote-add.c:256 app/flatpak-builtins-remote-add.c:263 #, c-format msgid "Can't load uri %s: %s\n" msgstr "無法載入 URI %s:%s\n" -#: app/flatpak-builtins-remote-add.c:269 common/flatpak-dir.c:3968 +#: app/flatpak-builtins-remote-add.c:271 common/flatpak-dir.c:4052 #, c-format msgid "Can't load file %s: %s\n" msgstr "無法載入 %s 檔案:%s\n" -#: app/flatpak-builtins-remote-add.c:297 +#: app/flatpak-builtins-remote-add.c:299 msgid "NAME LOCATION - Add a remote repository" msgstr "NAME LOCATION - 新增遠端軟體庫" -#: app/flatpak-builtins-remote-add.c:324 +#: app/flatpak-builtins-remote-add.c:326 msgid "GPG verification is required if collections are enabled" msgstr "若有啟用收藏,則必須使用 GPG 驗證" -#: app/flatpak-builtins-remote-add.c:386 +#: app/flatpak-builtins-remote-add.c:388 #, c-format msgid "Remote %s already exists" msgstr "遠端 %s 已經存在" -#: app/flatpak-builtins-remote-add.c:398 +#: app/flatpak-builtins-remote-add.c:400 #: app/flatpak-builtins-remote-modify.c:332 #, c-format msgid "Invalid authenticator name %s" msgstr "無效的身分核對器名稱 %s" -#: app/flatpak-builtins-remote-add.c:415 +#: app/flatpak-builtins-remote-add.c:417 #, c-format msgid "Warning: Could not update extra metadata for '%s': %s\n" msgstr "警告:無法更新「%s」的額外中介資料:%s\n" @@ -2446,59 +2464,59 @@ msgstr "是否移除?" msgid "Can't remove remote '%s' with installed refs" msgstr "無法移除有安裝的參照的「%s」遠端" -#: app/flatpak-builtins-remote-info.c:54 +#: app/flatpak-builtins-remote-info.c:55 msgid "Commit to show info for" msgstr "提交要顯示的資訊" -#: app/flatpak-builtins-remote-info.c:57 +#: app/flatpak-builtins-remote-info.c:58 msgid "Display log" msgstr "顯示紀錄檔" -#: app/flatpak-builtins-remote-info.c:60 +#: app/flatpak-builtins-remote-info.c:61 msgid "Show parent" msgstr "顯示上層" -#: app/flatpak-builtins-remote-info.c:64 app/flatpak-builtins-remote-ls.c:58 +#: app/flatpak-builtins-remote-info.c:65 app/flatpak-builtins-remote-ls.c:59 msgid "Use local caches even if they are stale" msgstr "就算已經過期,仍使用本機快取" #. Translators: A sideload is when you install from a local USB drive rather than the Internet. -#: app/flatpak-builtins-remote-info.c:66 app/flatpak-builtins-remote-ls.c:60 +#: app/flatpak-builtins-remote-info.c:67 app/flatpak-builtins-remote-ls.c:61 msgid "Only list refs available as sideloads" msgstr "只列出能夠以側載使用的參照" -#: app/flatpak-builtins-remote-info.c:113 +#: app/flatpak-builtins-remote-info.c:114 msgid "" " REMOTE REF - Show information about an application or runtime in a remote" msgstr " REMOTE REF - 顯示遠端中應用程式或執行時期環境的相關資訊" -#: app/flatpak-builtins-remote-info.c:124 +#: app/flatpak-builtins-remote-info.c:125 msgid "REMOTE and REF must be specified" msgstr "必須指定 REMOTE 與 REF" -#: app/flatpak-builtins-remote-info.c:246 -#: app/flatpak-builtins-remote-info.c:281 +#: app/flatpak-builtins-remote-info.c:247 +#: app/flatpak-builtins-remote-info.c:282 msgid "Download:" msgstr "下載:" -#: app/flatpak-builtins-remote-info.c:266 -#: app/flatpak-builtins-remote-info.c:324 +#: app/flatpak-builtins-remote-info.c:267 +#: app/flatpak-builtins-remote-info.c:325 msgid "History:" msgstr "歷史:" -#: app/flatpak-builtins-remote-info.c:347 +#: app/flatpak-builtins-remote-info.c:348 msgid " Commit:" msgstr " 提交:" -#: app/flatpak-builtins-remote-info.c:348 +#: app/flatpak-builtins-remote-info.c:349 msgid " Subject:" msgstr " 主旨:" -#: app/flatpak-builtins-remote-info.c:349 +#: app/flatpak-builtins-remote-info.c:350 msgid " Date:" msgstr " 日期:" -#: app/flatpak-builtins-remote-info.c:382 +#: app/flatpak-builtins-remote-info.c:383 #, c-format msgid "Warning: Commit %s has no flatpak metadata\n" msgstr "警告:%s 提交中沒有 flatpak 中介資料\n" @@ -2527,7 +2545,7 @@ msgstr "顯示 URL" msgid "Show the collection ID" msgstr "顯示收藏 ID" -#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:389 +#: app/flatpak-builtins-remote-list.c:53 app/flatpak-builtins-repo.c:390 msgid "Subset" msgstr "" @@ -2584,39 +2602,39 @@ msgstr "顯示圖示" msgid " - List remote repositories" msgstr " - 列出遠端軟體庫" -#: app/flatpak-builtins-remote-ls.c:50 +#: app/flatpak-builtins-remote-ls.c:51 msgid "Show arches and branches" msgstr "顯示架構與分支" -#: app/flatpak-builtins-remote-ls.c:51 +#: app/flatpak-builtins-remote-ls.c:52 msgid "Show only runtimes" msgstr "僅顯示執行時期環境" -#: app/flatpak-builtins-remote-ls.c:52 +#: app/flatpak-builtins-remote-ls.c:53 msgid "Show only apps" msgstr "僅顯示程式" -#: app/flatpak-builtins-remote-ls.c:53 +#: app/flatpak-builtins-remote-ls.c:54 msgid "Show only those where updates are available" msgstr "僅顯示有可用更新的那些項目" -#: app/flatpak-builtins-remote-ls.c:54 +#: app/flatpak-builtins-remote-ls.c:55 msgid "Limit to this arch (* for all)" msgstr "限制在這種架構(* 代表全部)" -#: app/flatpak-builtins-remote-ls.c:74 +#: app/flatpak-builtins-remote-ls.c:75 msgid "Show the runtime" msgstr "顯示執行時期環境" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Download size" msgstr "下載大小" -#: app/flatpak-builtins-remote-ls.c:76 +#: app/flatpak-builtins-remote-ls.c:77 msgid "Show the download size" msgstr "顯示下載大小" -#: app/flatpak-builtins-remote-ls.c:391 +#: app/flatpak-builtins-remote-ls.c:389 msgid " [REMOTE or URI] - Show available runtimes and applications" msgstr " [REMOTE 或 URI] - 顯示可用的執行時期環境與應用程式" @@ -2747,226 +2765,233 @@ msgstr "重新安裝 %s 時發生錯誤:%s\n" msgid "- Repair a flatpak installation" msgstr "- 修復 flatpak 安裝" -#: app/flatpak-builtins-repair.c:403 +#: app/flatpak-builtins-repair.c:406 #, c-format msgid "Removing non-deployed ref %s…\n" msgstr "正在移除未布署的參照 %s…\n" -#: app/flatpak-builtins-repair.c:407 +#: app/flatpak-builtins-repair.c:411 #, c-format msgid "Skipping non-deployed ref %s…\n" msgstr "正在跳過未布署的參照 %s…\n" -#: app/flatpak-builtins-repair.c:421 +#: app/flatpak-builtins-repair.c:429 #, fuzzy, c-format msgid "[%d/%d] Verifying %s…\n" msgstr "正在核驗 %s…\n" -#: app/flatpak-builtins-repair.c:427 +#: app/flatpak-builtins-repair.c:435 +#, c-format msgid "Dry run: " msgstr "" -#: app/flatpak-builtins-repair.c:432 +#: app/flatpak-builtins-repair.c:440 #, c-format msgid "Deleting ref %s due to missing objects\n" msgstr "因為遺失物件,正在刪除 %s 參照\n" -#: app/flatpak-builtins-repair.c:436 +#: app/flatpak-builtins-repair.c:444 #, c-format msgid "Deleting ref %s due to invalid objects\n" msgstr "因為物件無效而刪除 %s 參照\n" -#: app/flatpak-builtins-repair.c:440 +#: app/flatpak-builtins-repair.c:448 #, c-format msgid "Deleting ref %s due to %d\n" msgstr "因 %2$d 而刪除 %1$s 參照\n" -#: app/flatpak-builtins-repair.c:454 +#: app/flatpak-builtins-repair.c:464 +#, c-format msgid "Checking remotes...\n" msgstr "" -#: app/flatpak-builtins-repair.c:472 +#: app/flatpak-builtins-repair.c:482 #, c-format msgid "Remote %s for ref %s is missing\n" msgstr "%s 遠端(用於 %s 參照)不存在\n" -#: app/flatpak-builtins-repair.c:474 +#: app/flatpak-builtins-repair.c:484 #, c-format msgid "Remote %s for ref %s is disabled\n" msgstr "%s 遠端(用於 %s 參照)已停用\n" -#: app/flatpak-builtins-repair.c:480 +#: app/flatpak-builtins-repair.c:490 +#, c-format msgid "Pruning objects\n" msgstr "正在修除物件\n" -#: app/flatpak-builtins-repair.c:488 +#: app/flatpak-builtins-repair.c:498 +#, c-format msgid "Erasing .removed\n" msgstr "正在擦除 .removed\n" -#: app/flatpak-builtins-repair.c:513 +#: app/flatpak-builtins-repair.c:523 +#, c-format msgid "Reinstalling refs\n" msgstr "正在重新安裝參照\n" -#: app/flatpak-builtins-repair.c:515 +#: app/flatpak-builtins-repair.c:525 +#, c-format msgid "Reinstalling removed refs\n" msgstr "正在重新安裝已移除的參照\n" -#: app/flatpak-builtins-repair.c:540 +#: app/flatpak-builtins-repair.c:550 #, c-format msgid "While removing appstream for %s: " msgstr "當移除 %s 的 AppStream 時: " -#: app/flatpak-builtins-repair.c:547 +#: app/flatpak-builtins-repair.c:557 #, c-format msgid "While deploying appstream for %s: " msgstr "當布署 %s 的 AppStream 時: " -#: app/flatpak-builtins-repo.c:104 +#: app/flatpak-builtins-repo.c:105 #, c-format msgid "Repo mode: %s\n" msgstr "軟體庫模式:%s\n" -#: app/flatpak-builtins-repo.c:111 +#: app/flatpak-builtins-repo.c:112 #, c-format msgid "Indexed summaries: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "true" msgstr "true" -#: app/flatpak-builtins-repo.c:111 app/flatpak-builtins-repo.c:137 -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:112 app/flatpak-builtins-repo.c:138 +#: app/flatpak-builtins-repo.c:171 msgid "false" msgstr "false" -#: app/flatpak-builtins-repo.c:119 +#: app/flatpak-builtins-repo.c:120 +#, c-format msgid "Subsummaries: " msgstr "" -#: app/flatpak-builtins-repo.c:134 +#: app/flatpak-builtins-repo.c:135 #, c-format msgid "Cache version: %d\n" msgstr "" -#: app/flatpak-builtins-repo.c:137 +#: app/flatpak-builtins-repo.c:138 #, c-format msgid "Indexed deltas: %s\n" msgstr "" -#: app/flatpak-builtins-repo.c:140 +#: app/flatpak-builtins-repo.c:141 #, c-format msgid "Title: %s\n" msgstr "標題:%s\n" -#: app/flatpak-builtins-repo.c:143 +#: app/flatpak-builtins-repo.c:144 #, c-format msgid "Comment: %s\n" msgstr "評註:%s\n" -#: app/flatpak-builtins-repo.c:146 +#: app/flatpak-builtins-repo.c:147 #, c-format msgid "Description: %s\n" msgstr "描述:%s\n" -#: app/flatpak-builtins-repo.c:149 +#: app/flatpak-builtins-repo.c:150 #, c-format msgid "Homepage: %s\n" msgstr "首頁:%s\n" -#: app/flatpak-builtins-repo.c:152 +#: app/flatpak-builtins-repo.c:153 #, c-format msgid "Icon: %s\n" msgstr "圖示:%s\n" -#: app/flatpak-builtins-repo.c:155 +#: app/flatpak-builtins-repo.c:156 #, c-format msgid "Collection ID: %s\n" msgstr "收藏 ID:%s\n" -#: app/flatpak-builtins-repo.c:158 +#: app/flatpak-builtins-repo.c:159 #, c-format msgid "Default branch: %s\n" msgstr "預設分支:%s\n" -#: app/flatpak-builtins-repo.c:161 +#: app/flatpak-builtins-repo.c:162 #, c-format msgid "Redirect URL: %s\n" msgstr "重導 URL:%s\n" -#: app/flatpak-builtins-repo.c:164 +#: app/flatpak-builtins-repo.c:165 #, c-format msgid "Deploy collection ID: %s\n" msgstr "布署收藏 ID:%s\n" -#: app/flatpak-builtins-repo.c:167 +#: app/flatpak-builtins-repo.c:168 #, c-format msgid "Authenticator name: %s\n" msgstr "身分核對器名稱:%s\n" -#: app/flatpak-builtins-repo.c:170 +#: app/flatpak-builtins-repo.c:171 #, c-format msgid "Authenticator install: %s\n" msgstr "身分核對器安裝:%s\n" -#: app/flatpak-builtins-repo.c:178 +#: app/flatpak-builtins-repo.c:179 #, c-format msgid "GPG key hash: %s\n" msgstr "GPG 金鑰雜湊碼:%s\n" -#: app/flatpak-builtins-repo.c:182 +#: app/flatpak-builtins-repo.c:183 #, fuzzy, c-format msgid "%zd summary branches\n" msgstr "%zd 分支\n" -#: app/flatpak-builtins-repo.c:334 +#: app/flatpak-builtins-repo.c:335 msgid "Installed" msgstr "已安裝" -#: app/flatpak-builtins-repo.c:335 app/flatpak-cli-transaction.c:1404 +#: app/flatpak-builtins-repo.c:336 app/flatpak-cli-transaction.c:1449 msgid "Download" msgstr "下載" -#: app/flatpak-builtins-repo.c:336 +#: app/flatpak-builtins-repo.c:337 msgid "Subsets" msgstr "" -#: app/flatpak-builtins-repo.c:390 +#: app/flatpak-builtins-repo.c:391 msgid "Digest" msgstr "" -#: app/flatpak-builtins-repo.c:391 +#: app/flatpak-builtins-repo.c:392 #, fuzzy msgid "History length" msgstr "歷史:" -#: app/flatpak-builtins-repo.c:708 +#: app/flatpak-builtins-repo.c:709 msgid "Print general information about the repository" msgstr "列印軟體庫的一般資訊" -#: app/flatpak-builtins-repo.c:709 +#: app/flatpak-builtins-repo.c:710 msgid "List the branches in the repository" msgstr "列出軟體庫中的分支" -#: app/flatpak-builtins-repo.c:710 +#: app/flatpak-builtins-repo.c:711 msgid "Print metadata for a branch" msgstr "列印分支的中介資料" -#: app/flatpak-builtins-repo.c:711 +#: app/flatpak-builtins-repo.c:712 msgid "Show commits for a branch" msgstr "顯示分支的提交" -#: app/flatpak-builtins-repo.c:712 +#: app/flatpak-builtins-repo.c:713 #, fuzzy msgid "Print information about the repo subsets" msgstr "列印軟體庫的一般資訊" -#: app/flatpak-builtins-repo.c:713 +#: app/flatpak-builtins-repo.c:714 msgid "Limit information to subsets with this prefix" msgstr "" -#: app/flatpak-builtins-repo.c:728 +#: app/flatpak-builtins-repo.c:729 msgid "LOCATION - Repository maintenance" msgstr "LOCATION - 軟體庫維護" @@ -3058,11 +3083,11 @@ msgstr "" msgid "Use PATH instead of the runtime's /usr" msgstr "" -#: app/flatpak-builtins-run.c:114 +#: app/flatpak-builtins-run.c:117 msgid "APP [ARGUMENT…] - Run an app" msgstr "APP [ARGUMENT…] - 執行 App" -#: app/flatpak-builtins-run.c:265 +#: app/flatpak-builtins-run.c:268 #, c-format msgid "runtime/%s/%s/%s not installed" msgstr "執行時期/%s/%s/%s 未安裝" @@ -3079,15 +3104,15 @@ msgstr "遠端" msgid "Show the remotes" msgstr "顯示遠端" -#: app/flatpak-builtins-search.c:245 +#: app/flatpak-builtins-search.c:242 msgid "TEXT - Search remote apps/runtimes for text" msgstr "TEXT - 搜尋遠端程式或執行時期環境用的文字" -#: app/flatpak-builtins-search.c:256 +#: app/flatpak-builtins-search.c:253 msgid "TEXT must be specified" msgstr "必須指定 TEXT" -#: app/flatpak-builtins-search.c:338 +#: app/flatpak-builtins-search.c:336 msgid "No matches found" msgstr "找不到符合項目" @@ -3167,6 +3192,7 @@ msgid "" msgstr "" #: app/flatpak-builtins-uninstall.c:370 +#, c-format msgid "Nothing unused to uninstall\n" msgstr "沒有可解除安裝的未使用項目\n" @@ -3191,6 +3217,7 @@ msgid "Warning: %s is not installed\n" msgstr "%s 的 %s 分支尚未安裝" #: app/flatpak-builtins-uninstall.c:490 +#, c-format msgid "None of the specified refs are installed" msgstr "" @@ -3232,6 +3259,7 @@ msgid "With --commit, only one REF may be specified" msgstr "必須指定至少一個 REF" #: app/flatpak-builtins-update.c:162 +#, c-format msgid "Looking for updates…\n" msgstr "正在尋找更新...\n" @@ -3241,26 +3269,27 @@ msgid "Unable to update %s: %s\n" msgstr "無法更新 %s:%s\n" #: app/flatpak-builtins-update.c:274 +#, c-format msgid "Nothing to do.\n" msgstr "無事可做。\n" -#: app/flatpak-builtins-utils.c:341 +#: app/flatpak-builtins-utils.c:342 #, c-format msgid "Remote ‘%s’ found in multiple installations:" msgstr "在多份安裝中找到「%s」遠端:" -#: app/flatpak-builtins-utils.c:342 app/flatpak-builtins-utils.c:433 -#: app/flatpak-builtins-utils.c:525 app/flatpak-builtins-utils.c:527 -#: app/flatpak-builtins-utils.c:594 +#: app/flatpak-builtins-utils.c:343 app/flatpak-builtins-utils.c:434 +#: app/flatpak-builtins-utils.c:526 app/flatpak-builtins-utils.c:528 +#: app/flatpak-builtins-utils.c:582 msgid "Which do you want to use (0 to abort)?" msgstr "您想要使用哪一個(0 為中止)?" -#: app/flatpak-builtins-utils.c:344 +#: app/flatpak-builtins-utils.c:345 #, c-format msgid "No remote chosen to resolve ‘%s’ which exists in multiple installations" msgstr "沒有為多份安裝中都存在的「%s」遠端選擇解決方式" -#: app/flatpak-builtins-utils.c:353 +#: app/flatpak-builtins-utils.c:354 #, c-format msgid "" "Remote \"%s\" not found\n" @@ -3269,13 +3298,13 @@ msgstr "" "找不到「%s」遠端\n" "提示:使用 flatpak remote-add 加入遠端" -#: app/flatpak-builtins-utils.c:359 +#: app/flatpak-builtins-utils.c:360 #, c-format msgid "Remote \"%s\" not found in the %s installation" msgstr "在 %2$s 安裝中找不到「%1$s」遠端" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:421 +#: app/flatpak-builtins-utils.c:422 #, c-format msgid "" "Found ref ‘%s’ in remote ‘%s’ (%s).\n" @@ -3284,137 +3313,128 @@ msgstr "" "找到「%s」參照(位於「%s」遠端)(%s)。\n" "是否使用此參照?" -#: app/flatpak-builtins-utils.c:425 app/flatpak-builtins-utils.c:435 -#: app/flatpak-builtins-utils.c:509 app/flatpak-builtins-utils.c:530 +#: app/flatpak-builtins-utils.c:426 app/flatpak-builtins-utils.c:436 +#: app/flatpak-builtins-utils.c:510 app/flatpak-builtins-utils.c:531 #, c-format msgid "No ref chosen to resolve matches for ‘%s’" msgstr "未選擇要解析「%s」之符合項目的參照" -#: app/flatpak-builtins-utils.c:431 +#: app/flatpak-builtins-utils.c:432 #, c-format msgid "Similar refs found for ‘%s’ in remote ‘%s’ (%s):" msgstr "在「%2$s」遠端中的「%1$s」找到相似的參照 (%3$s):" #. default to yes on Enter -#: app/flatpak-builtins-utils.c:505 +#: app/flatpak-builtins-utils.c:506 #, c-format msgid "Found installed ref ‘%s’ (%s). Is this correct?" msgstr "找到安裝的參照「%s」(%s)。對嗎?" -#: app/flatpak-builtins-utils.c:521 +#: app/flatpak-builtins-utils.c:522 +#, c-format msgid "All of the above" msgstr "以上全部" -#: app/flatpak-builtins-utils.c:522 +#: app/flatpak-builtins-utils.c:523 #, c-format msgid "Similar installed refs found for ‘%s’:" msgstr "找到「%s」的相似已安裝參照:" -#. default to yes on Enter -#: app/flatpak-builtins-utils.c:579 +#: app/flatpak-builtins-utils.c:581 #, c-format -msgid "" -"Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" -"Use this remote?" -msgstr "" -"找到「%s」的相似參照(在「%s」(%s) 遠端)。\n" -"是否使用此遠端?" +msgid "Remotes found with refs similar to ‘%s’:" +msgstr "找到參照與「%s」相似的遠端:" -#: app/flatpak-builtins-utils.c:583 app/flatpak-builtins-utils.c:596 +#: app/flatpak-builtins-utils.c:584 #, c-format msgid "No remote chosen to resolve matches for ‘%s’" msgstr "沒有選擇要解析「%s」符合項目的遠端" -#: app/flatpak-builtins-utils.c:593 -#, c-format -msgid "Remotes found with refs similar to ‘%s’:" -msgstr "找到參照與「%s」相似的遠端:" - -#: app/flatpak-builtins-utils.c:693 app/flatpak-builtins-utils.c:696 +#: app/flatpak-builtins-utils.c:680 app/flatpak-builtins-utils.c:683 #, c-format msgid "Updating appstream data for user remote %s" msgstr "正在更新使用者 %s 遠端的 appstream 資料" -#: app/flatpak-builtins-utils.c:703 app/flatpak-builtins-utils.c:706 +#: app/flatpak-builtins-utils.c:690 app/flatpak-builtins-utils.c:693 #, c-format msgid "Updating appstream data for remote %s" msgstr "正在更新 %s 遠端的 appstream 資料" -#: app/flatpak-builtins-utils.c:714 app/flatpak-builtins-utils.c:716 +#: app/flatpak-builtins-utils.c:701 app/flatpak-builtins-utils.c:703 msgid "Error updating" msgstr "更新發生錯誤" -#: app/flatpak-builtins-utils.c:752 +#: app/flatpak-builtins-utils.c:739 #, c-format msgid "Remote \"%s\" not found" msgstr "找不到「%s」遠端" -#: app/flatpak-builtins-utils.c:793 +#: app/flatpak-builtins-utils.c:780 #, c-format msgid "Ambiguous suffix: '%s'." msgstr "不明的後綴:「%s」。" #. Translators: don't translate the values -#: app/flatpak-builtins-utils.c:795 app/flatpak-builtins-utils.c:810 +#: app/flatpak-builtins-utils.c:782 app/flatpak-builtins-utils.c:797 msgid "Possible values are :s[tart], :m[iddle], :e[nd] or :f[ull]" msgstr "值可以是 :s[tart]、:m[iddle]、:e[nd] 或 :f[ull]" -#: app/flatpak-builtins-utils.c:808 +#: app/flatpak-builtins-utils.c:795 #, c-format msgid "Invalid suffix: '%s'." msgstr "無效的後綴:「%s」。" -#: app/flatpak-builtins-utils.c:843 +#: app/flatpak-builtins-utils.c:830 #, c-format msgid "Ambiguous column: %s" msgstr "不明的欄位:%s" -#: app/flatpak-builtins-utils.c:856 +#: app/flatpak-builtins-utils.c:843 #, c-format msgid "Unknown column: %s" msgstr "未知的欄位:%s" -#: app/flatpak-builtins-utils.c:914 +#: app/flatpak-builtins-utils.c:901 msgid "Available columns:\n" msgstr "可用的欄位:\n" -#: app/flatpak-builtins-utils.c:924 +#: app/flatpak-builtins-utils.c:911 msgid "Show all columns" msgstr "顯示所有欄位" -#: app/flatpak-builtins-utils.c:925 +#: app/flatpak-builtins-utils.c:912 msgid "Show available columns" msgstr "顯示可用欄位" -#: app/flatpak-builtins-utils.c:928 +#: app/flatpak-builtins-utils.c:915 msgid "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization" msgstr "在後方加上 :s[tart]、:m[iddle]、:e[nd] 或 :f[ull] 以變更「…」的使用" -#: app/flatpak-cli-transaction.c:93 app/flatpak-cli-transaction.c:99 +#: app/flatpak-cli-transaction.c:96 app/flatpak-cli-transaction.c:102 #, c-format msgid "Required runtime for %s (%s) found in remote %s\n" msgstr "%s (%s) 所要求的執行時期環境在 %s 遠端中有找到\n" -#: app/flatpak-cli-transaction.c:101 +#: app/flatpak-cli-transaction.c:104 msgid "Do you want to install it?" msgstr "您想要安裝嗎?" -#: app/flatpak-cli-transaction.c:107 +#: app/flatpak-cli-transaction.c:110 #, c-format msgid "Required runtime for %s (%s) found in remotes:" msgstr "在遠端找到 %s (%s) 需要的執行時期:" -#: app/flatpak-cli-transaction.c:109 +#: app/flatpak-cli-transaction.c:112 msgid "Which do you want to install (0 to abort)?" msgstr "您想要安裝哪一個(0 為中止)?" -#: app/flatpak-cli-transaction.c:129 +#: app/flatpak-cli-transaction.c:132 #, fuzzy, c-format msgid "Configuring %s as new remote '%s'\n" msgstr "正在設定 %s 為新的「%s」遠端" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:136 +#: app/flatpak-cli-transaction.c:139 #, c-format msgid "" "The remote '%s', referred to by '%s' at location %s contains additional " @@ -3425,7 +3445,7 @@ msgstr "" "是否應該保留遠端以便將來安裝?" #. default to yes on Enter -#: app/flatpak-cli-transaction.c:144 +#: app/flatpak-cli-transaction.c:147 #, c-format msgid "" "The application %s depends on runtimes from:\n" @@ -3436,128 +3456,128 @@ msgstr "" " %s\n" "設定這為新的「%s」遠端" -#: app/flatpak-cli-transaction.c:407 +#: app/flatpak-cli-transaction.c:411 msgid "Installing…" msgstr "正在安裝…" -#: app/flatpak-cli-transaction.c:409 +#: app/flatpak-cli-transaction.c:413 #, c-format msgid "Installing %d/%d…" msgstr "正在安裝 %d/%d…" -#: app/flatpak-cli-transaction.c:414 +#: app/flatpak-cli-transaction.c:418 msgid "Updating…" msgstr "正在更新…" -#: app/flatpak-cli-transaction.c:416 +#: app/flatpak-cli-transaction.c:420 #, c-format msgid "Updating %d/%d…" msgstr "正在更新 %d/%d…" -#: app/flatpak-cli-transaction.c:421 +#: app/flatpak-cli-transaction.c:425 msgid "Uninstalling…" msgstr "正在解除安裝…" -#: app/flatpak-cli-transaction.c:423 +#: app/flatpak-cli-transaction.c:427 #, c-format msgid "Uninstalling %d/%d…" msgstr "正在解除安裝 %d/%d…" -#: app/flatpak-cli-transaction.c:489 app/flatpak-quiet-transaction.c:161 +#: app/flatpak-cli-transaction.c:493 app/flatpak-quiet-transaction.c:161 #, c-format msgid "Info: %s was skipped" msgstr "資訊:%s 被跳過" -#: app/flatpak-cli-transaction.c:512 +#: app/flatpak-cli-transaction.c:516 #, fuzzy, c-format msgid "Warning: %s%s%s already installed" msgstr "已經安裝 %s" -#: app/flatpak-cli-transaction.c:515 +#: app/flatpak-cli-transaction.c:519 #, fuzzy, c-format msgid "Error: %s%s%s already installed" msgstr "已經安裝 %s" -#: app/flatpak-cli-transaction.c:521 +#: app/flatpak-cli-transaction.c:525 #, fuzzy, c-format msgid "Warning: %s%s%s not installed" msgstr "%s 的 %s 分支尚未安裝" -#: app/flatpak-cli-transaction.c:524 +#: app/flatpak-cli-transaction.c:528 #, fuzzy, c-format msgid "Error: %s%s%s not installed" msgstr "%s/%s/%s 未安裝" -#: app/flatpak-cli-transaction.c:530 +#: app/flatpak-cli-transaction.c:534 #, fuzzy, c-format msgid "Warning: %s%s%s needs a later flatpak version" msgstr "%s 需要較新的 flatpak 版本" -#: app/flatpak-cli-transaction.c:533 +#: app/flatpak-cli-transaction.c:537 #, fuzzy, c-format msgid "Error: %s%s%s needs a later flatpak version" msgstr "%s 需要較新的 flatpak 版本" -#: app/flatpak-cli-transaction.c:539 +#: app/flatpak-cli-transaction.c:543 #, fuzzy msgid "Warning: Not enough disk space to complete this operation" msgstr "磁碟空間不足以完成此操作" -#: app/flatpak-cli-transaction.c:541 +#: app/flatpak-cli-transaction.c:545 #, fuzzy msgid "Error: Not enough disk space to complete this operation" msgstr "磁碟空間不足以完成此操作" -#: app/flatpak-cli-transaction.c:546 +#: app/flatpak-cli-transaction.c:550 #, fuzzy, c-format msgid "Warning: %s" msgstr "警告: " -#: app/flatpak-cli-transaction.c:548 +#: app/flatpak-cli-transaction.c:552 #, fuzzy, c-format msgid "Error: %s" msgstr "錯誤:" -#: app/flatpak-cli-transaction.c:563 +#: app/flatpak-cli-transaction.c:567 #, fuzzy, c-format msgid "Failed to install %s%s%s: " msgstr "無法將 %s rebase 至 %s: " -#: app/flatpak-cli-transaction.c:570 +#: app/flatpak-cli-transaction.c:574 #, fuzzy, c-format msgid "Failed to update %s%s%s: " msgstr "無法 %s %s:" -#: app/flatpak-cli-transaction.c:577 +#: app/flatpak-cli-transaction.c:581 #, fuzzy, c-format msgid "Failed to install bundle %s%s%s: " msgstr "無法將 %s rebase 至 %s: " -#: app/flatpak-cli-transaction.c:584 +#: app/flatpak-cli-transaction.c:588 #, fuzzy, c-format msgid "Failed to uninstall %s%s%s: " msgstr "無法將 %s rebase 至 %s: " -#: app/flatpak-cli-transaction.c:626 +#: app/flatpak-cli-transaction.c:630 #, c-format msgid "Authentication required for remote '%s'\n" msgstr "「%s」遠端需要通過身分核對\n" -#: app/flatpak-cli-transaction.c:627 +#: app/flatpak-cli-transaction.c:631 msgid "Open browser?" msgstr "是否開啟瀏覽器?" -#: app/flatpak-cli-transaction.c:683 +#: app/flatpak-cli-transaction.c:687 #, c-format msgid "Login required remote %s (realm %s)\n" msgstr "需要登入 遠端 %s (領域 %s)\n" -#: app/flatpak-cli-transaction.c:688 +#: app/flatpak-cli-transaction.c:692 msgid "Password" msgstr "密碼" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:743 +#: app/flatpak-cli-transaction.c:747 #, fuzzy, c-format msgid "" "\n" @@ -3565,7 +3585,7 @@ msgid "" "%s%s%s branch %s%s%s\n" msgstr "資訊:%s 已經 end-of-life,故偏好 %s\n" -#: app/flatpak-cli-transaction.c:749 +#: app/flatpak-cli-transaction.c:753 #, fuzzy, c-format msgid "" "\n" @@ -3573,7 +3593,7 @@ msgid "" "%s%s%s\n" msgstr "資訊:%s 已經 end-of-life,故偏好 %s\n" -#: app/flatpak-cli-transaction.c:752 +#: app/flatpak-cli-transaction.c:756 #, fuzzy, c-format msgid "" "\n" @@ -3582,117 +3602,113 @@ msgid "" msgstr "資訊:%s 已經 end-of-life,故偏好 %s\n" #. Only runtimes can be pinned -#: app/flatpak-cli-transaction.c:764 +#: app/flatpak-cli-transaction.c:768 #, fuzzy, c-format msgid "" "\n" "Info: (pinned) runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "資訊:%s 已經 end-of-life,理由是:%s\n" -#: app/flatpak-cli-transaction.c:770 +#: app/flatpak-cli-transaction.c:774 #, fuzzy, c-format msgid "" "\n" "Info: runtime %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "資訊:%s 已經 end-of-life,理由是:%s\n" -#: app/flatpak-cli-transaction.c:773 +#: app/flatpak-cli-transaction.c:777 #, fuzzy, c-format msgid "" "\n" "Info: app %s%s%s branch %s%s%s is end-of-life, with reason:\n" msgstr "資訊:%s 已經 end-of-life,理由是:%s\n" -#: app/flatpak-cli-transaction.c:947 -#, fuzzy +#: app/flatpak-cli-transaction.c:951 +#, fuzzy, c-format msgid "Info: applications using this extension:\n" msgstr "" "\n" "正在尋找應用程式與執行時期環境" -#: app/flatpak-cli-transaction.c:949 -#, fuzzy +#: app/flatpak-cli-transaction.c:953 +#, fuzzy, c-format msgid "Info: applications using this runtime:\n" msgstr "" "\n" "正在尋找應用程式與執行時期環境" -#: app/flatpak-cli-transaction.c:968 +#: app/flatpak-cli-transaction.c:972 msgid "Replace?" msgstr "" -#: app/flatpak-cli-transaction.c:971 app/flatpak-quiet-transaction.c:247 +#: app/flatpak-cli-transaction.c:975 app/flatpak-quiet-transaction.c:247 +#, c-format msgid "Updating to rebased version\n" msgstr "正在更新至已經 rebase 的版本\n" -#: app/flatpak-cli-transaction.c:995 +#: app/flatpak-cli-transaction.c:999 #, c-format msgid "Failed to rebase %s to %s: " msgstr "無法將 %s rebase 至 %s: " -#: app/flatpak-cli-transaction.c:1009 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: " -msgstr "無法將 %s rebase 至 %s: " - -#: app/flatpak-cli-transaction.c:1222 +#: app/flatpak-cli-transaction.c:1265 #, fuzzy, c-format msgid "New %s%s%s permissions:" msgstr "新的%s權限:" -#: app/flatpak-cli-transaction.c:1224 +#: app/flatpak-cli-transaction.c:1267 #, fuzzy, c-format msgid "%s%s%s permissions:" msgstr "%s權限:" -#: app/flatpak-cli-transaction.c:1286 +#: app/flatpak-cli-transaction.c:1331 msgid "Warning: " msgstr "警告: " #. translators: This is short for operation, the title of a one-char column -#: app/flatpak-cli-transaction.c:1385 +#: app/flatpak-cli-transaction.c:1430 msgid "Op" msgstr "Op" #. Avoid resizing the download column too much, #. * by making the title as long as typical content #. -#: app/flatpak-cli-transaction.c:1401 app/flatpak-cli-transaction.c:1445 +#: app/flatpak-cli-transaction.c:1446 app/flatpak-cli-transaction.c:1490 msgid "partial" msgstr "部分" -#: app/flatpak-cli-transaction.c:1477 +#: app/flatpak-cli-transaction.c:1522 msgid "Proceed with these changes to the user installation?" msgstr "是否繼續這些會影響使用者安裝的變更?" -#: app/flatpak-cli-transaction.c:1479 +#: app/flatpak-cli-transaction.c:1524 msgid "Proceed with these changes to the system installation?" msgstr "是否繼續這些會影響系統安裝的變更?" -#: app/flatpak-cli-transaction.c:1481 +#: app/flatpak-cli-transaction.c:1526 #, c-format msgid "Proceed with these changes to the %s?" msgstr "是否繼續這些會影響 %s 的變更?" -#: app/flatpak-cli-transaction.c:1655 +#: app/flatpak-cli-transaction.c:1698 msgid "Changes complete." msgstr "變更完成。" -#: app/flatpak-cli-transaction.c:1657 +#: app/flatpak-cli-transaction.c:1700 msgid "Uninstall complete." msgstr "解除安裝完成。" -#: app/flatpak-cli-transaction.c:1659 +#: app/flatpak-cli-transaction.c:1702 msgid "Installation complete." msgstr "安裝完成。" -#: app/flatpak-cli-transaction.c:1661 +#: app/flatpak-cli-transaction.c:1704 msgid "Updates complete." msgstr "更新完成。" #. For updates/!stop_on_first_error we already printed all errors so we make up #. a different one. -#: app/flatpak-cli-transaction.c:1694 +#: app/flatpak-cli-transaction.c:1737 msgid "There were one or more errors" msgstr "有一個或多個錯誤" @@ -4001,34 +4017,34 @@ msgstr "" "註:「%s」目錄不在 XDG_DATA_DIRS 環境變數設定的搜尋路徑中,所以 Flatpak 安裝" "的應用程式可能在工作階段重新啟動前,都無法在桌面看見。" -#: app/flatpak-main.c:378 +#: app/flatpak-main.c:380 msgid "" "Refusing to operate under sudo with --user. Omit sudo to operate on the user " "installation, or use a root shell to operate on the root user's installation." msgstr "" -#: app/flatpak-main.c:450 +#: app/flatpak-main.c:452 #, fuzzy msgid "" "Multiple installations specified for a command that works on one installation" msgstr "--installation 選項在某一安裝上可運作的指令中已使用過多次" -#: app/flatpak-main.c:501 app/flatpak-main.c:688 +#: app/flatpak-main.c:503 app/flatpak-main.c:690 #, c-format msgid "See '%s --help'" msgstr "請查看「%s --help」" -#: app/flatpak-main.c:697 +#: app/flatpak-main.c:699 #, c-format msgid "'%s' is not a flatpak command. Did you mean '%s%s'?" msgstr "「%s」不是 Flatpak 命令。您是指「%s%s」嗎?" -#: app/flatpak-main.c:700 +#: app/flatpak-main.c:702 #, c-format msgid "'%s' is not a flatpak command" msgstr "「%s」不是 flatpak 指令" -#: app/flatpak-main.c:815 +#: app/flatpak-main.c:817 msgid "No command specified" msgstr "沒有指定指令" @@ -4091,16 +4107,16 @@ msgstr "警告:無法 %s %s:%s\n" msgid "Error: Failed to uninstall %s: %s\n" msgstr "錯誤:無法 %s %s:%s\n" -#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10357 +#: app/flatpak-quiet-transaction.c:166 common/flatpak-dir.c:10524 #, c-format msgid "%s already installed" msgstr "已經安裝 %s" -#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir.c:2970 -#: common/flatpak-dir.c:3669 common/flatpak-dir.c:15707 -#: common/flatpak-dir.c:15997 common/flatpak-transaction.c:2674 -#: common/flatpak-transaction.c:2729 common/flatpak-utils.c:1193 -#: common/flatpak-utils.c:1286 +#: app/flatpak-quiet-transaction.c:168 common/flatpak-dir-utils.c:166 +#: common/flatpak-dir-utils.c:259 common/flatpak-dir.c:3033 +#: common/flatpak-dir.c:3732 common/flatpak-dir.c:15877 +#: common/flatpak-dir.c:16167 common/flatpak-transaction.c:2669 +#: common/flatpak-transaction.c:2724 #, c-format msgid "%s not installed" msgstr "%s 未安裝" @@ -4129,57 +4145,53 @@ msgstr "資訊:%s 已經 end-of-life,理由是:%s\n" msgid "Failed to rebase %s to %s: %s\n" msgstr "無法重定 %s 的基底 (rebase) 至 %s:%s\n" -#: app/flatpak-quiet-transaction.c:264 -#, fuzzy, c-format -msgid "Failed to uninstall %s for rebase to %s: %s\n" -msgstr "無法重定 %s 的基底 (rebase) 至 %s:%s\n" - #: common/flatpak-auth.c:58 #, c-format msgid "No authenticator configured for remote `%s`" msgstr "未設定用於「%s」遠端的身分核對器" -#: common/flatpak-context.c:192 +#: common/flatpak-context.c:206 #, c-format msgid "Unknown share type %s, valid types are: %s" msgstr "未知的分享類型 %s,有效的類型為:%s" -#: common/flatpak-context.c:227 +#: common/flatpak-context.c:241 #, c-format msgid "Unknown policy type %s, valid types are: %s" msgstr "未知的方針類型 %s,有效的類型為:%s" -#: common/flatpak-context.c:265 +#: common/flatpak-context.c:279 #, c-format msgid "Invalid dbus name %s" msgstr "無效的 dbus 名稱 %s" -#: common/flatpak-context.c:278 +#: common/flatpak-context.c:292 #, c-format msgid "Unknown socket type %s, valid types are: %s" msgstr "未知的接口類型 %s,有效的類型為:%s" -#: common/flatpak-context.c:307 +#: common/flatpak-context.c:321 #, c-format msgid "Unknown device type %s, valid types are: %s" msgstr "未知的裝置類型 %s,有效的類型為:%s" -#: common/flatpak-context.c:335 +#: common/flatpak-context.c:349 #, c-format msgid "Unknown feature type %s, valid types are: %s" msgstr "未知的功能類型 %s,有效的類型為:%s" -#: common/flatpak-context.c:880 +#: common/flatpak-context.c:964 #, c-format msgid "Filesystem location \"%s\" contains \"..\"" msgstr "" -#: common/flatpak-context.c:918 +#: common/flatpak-context.c:1002 +#, c-format msgid "" "--filesystem=/ is not available, use --filesystem=host for a similar result" msgstr "" -#: common/flatpak-context.c:952 +#: common/flatpak-context.c:1036 #, c-format msgid "" "Unknown filesystem location %s, valid locations are: host, host-os, host-" @@ -4188,183 +4200,217 @@ msgstr "" "未知的檔案系統位置 %s,有效的位置為:host、host-os、host-etc、home、xdg-" "*[/…]、~/dir、/dir" -#: common/flatpak-context.c:1232 +#: common/flatpak-context.c:1324 #, c-format msgid "Invalid env format %s" msgstr "無效的 env 格式 %s" -#: common/flatpak-context.c:1335 +#: common/flatpak-context.c:1412 #, c-format msgid "Environment variable name must not contain '=': %s" msgstr "" -#: common/flatpak-context.c:1448 common/flatpak-context.c:1456 +#: common/flatpak-context.c:1540 common/flatpak-context.c:1548 +#, c-format msgid "--add-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "--add-policy 引數必須是 SUBSYSTEM.KEY=VALUE 的形式" -#: common/flatpak-context.c:1463 +#: common/flatpak-context.c:1555 +#, c-format msgid "--add-policy values can't start with \"!\"" msgstr "--add-policy 的值不能以「!」開始" -#: common/flatpak-context.c:1488 common/flatpak-context.c:1496 +#: common/flatpak-context.c:1580 common/flatpak-context.c:1588 +#, c-format msgid "--remove-policy arguments must be in the form SUBSYSTEM.KEY=VALUE" msgstr "--remove-policy 的引數必須是 SUBSYSTEM.KEY=VALUE 的形式" -#: common/flatpak-context.c:1503 +#: common/flatpak-context.c:1595 +#, c-format msgid "--remove-policy values can't start with \"!\"" msgstr "--remove-policy 的值不能以「!」開始" -#: common/flatpak-context.c:1528 +#: common/flatpak-context.c:1670 msgid "Share with host" msgstr "與主機分享" -#: common/flatpak-context.c:1528 common/flatpak-context.c:1529 +#: common/flatpak-context.c:1670 common/flatpak-context.c:1671 msgid "SHARE" msgstr "SHARE" -#: common/flatpak-context.c:1529 +#: common/flatpak-context.c:1671 msgid "Unshare with host" msgstr "不與主機分享" -#: common/flatpak-context.c:1530 +#: common/flatpak-context.c:1672 msgid "Expose socket to app" msgstr "將接口開放給程式" -#: common/flatpak-context.c:1530 common/flatpak-context.c:1531 +#: common/flatpak-context.c:1672 common/flatpak-context.c:1673 msgid "SOCKET" msgstr "SOCKET" -#: common/flatpak-context.c:1531 +#: common/flatpak-context.c:1673 msgid "Don't expose socket to app" msgstr "不要將接口開放給程式" -#: common/flatpak-context.c:1532 +#: common/flatpak-context.c:1674 msgid "Expose device to app" msgstr "將裝置開放給程式" -#: common/flatpak-context.c:1532 common/flatpak-context.c:1533 +#: common/flatpak-context.c:1674 common/flatpak-context.c:1675 msgid "DEVICE" msgstr "DEVICE" -#: common/flatpak-context.c:1533 +#: common/flatpak-context.c:1675 msgid "Don't expose device to app" msgstr "不要將裝置開放給程式" -#: common/flatpak-context.c:1534 +#: common/flatpak-context.c:1676 msgid "Allow feature" msgstr "允許功能" -#: common/flatpak-context.c:1534 common/flatpak-context.c:1535 +#: common/flatpak-context.c:1676 common/flatpak-context.c:1677 msgid "FEATURE" msgstr "FEATURE" -#: common/flatpak-context.c:1535 +#: common/flatpak-context.c:1677 msgid "Don't allow feature" msgstr "不允許功能" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "Expose filesystem to app (:ro for read-only)" msgstr "將檔案系統開放給程式(:ro 表示唯讀)" -#: common/flatpak-context.c:1536 +#: common/flatpak-context.c:1678 msgid "FILESYSTEM[:ro]" msgstr "FILESYSTEM[:ro]" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "Don't expose filesystem to app" msgstr "不要將檔案系統開放給程式" -#: common/flatpak-context.c:1537 +#: common/flatpak-context.c:1679 msgid "FILESYSTEM" msgstr "FILESYSTEM" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "Set environment variable" msgstr "設定環境變數" -#: common/flatpak-context.c:1538 +#: common/flatpak-context.c:1680 msgid "VAR=VALUE" msgstr "VAR=VALUE" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "Read environment variables in env -0 format from FD" msgstr "" -#: common/flatpak-context.c:1539 +#: common/flatpak-context.c:1681 msgid "FD" msgstr "" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 #, fuzzy msgid "Remove variable from environment" msgstr "從權限儲存中移除項目" -#: common/flatpak-context.c:1540 +#: common/flatpak-context.c:1682 #, fuzzy msgid "VAR" msgstr "VAL" -#: common/flatpak-context.c:1541 +#: common/flatpak-context.c:1683 msgid "Allow app to own name on the session bus" msgstr "允許程式在工作階段匯流排上擁有自己的名稱" -#: common/flatpak-context.c:1541 common/flatpak-context.c:1542 -#: common/flatpak-context.c:1543 common/flatpak-context.c:1544 -#: common/flatpak-context.c:1545 common/flatpak-context.c:1546 +#: common/flatpak-context.c:1683 common/flatpak-context.c:1684 +#: common/flatpak-context.c:1685 common/flatpak-context.c:1686 +#: common/flatpak-context.c:1687 common/flatpak-context.c:1688 +#: common/flatpak-context.c:1689 msgid "DBUS_NAME" msgstr "DBUS_NAME" -#: common/flatpak-context.c:1542 +#: common/flatpak-context.c:1684 msgid "Allow app to talk to name on the session bus" msgstr "允許程式與工作階段匯流排上的名稱溝通" -#: common/flatpak-context.c:1543 +#: common/flatpak-context.c:1685 msgid "Don't allow app to talk to name on the session bus" msgstr "不允許程式與工作階段匯流排上的名稱溝通" -#: common/flatpak-context.c:1544 +#: common/flatpak-context.c:1686 msgid "Allow app to own name on the system bus" msgstr "允許程式在系統匯流排上擁有自己的名稱" -#: common/flatpak-context.c:1545 +#: common/flatpak-context.c:1687 msgid "Allow app to talk to name on the system bus" msgstr "允許程式與系統匯流排上的名稱溝通" -#: common/flatpak-context.c:1546 +#: common/flatpak-context.c:1688 msgid "Don't allow app to talk to name on the system bus" msgstr "不允許程式與系統匯流排上的名稱溝通" -#: common/flatpak-context.c:1547 +#: common/flatpak-context.c:1689 +#, fuzzy +msgid "Allow app to own name on the a11y bus" +msgstr "允許程式在系統匯流排上擁有自己的名稱" + +#: common/flatpak-context.c:1690 msgid "Add generic policy option" msgstr "新增通用方針選項" -#: common/flatpak-context.c:1547 common/flatpak-context.c:1548 +#: common/flatpak-context.c:1690 common/flatpak-context.c:1691 msgid "SUBSYSTEM.KEY=VALUE" msgstr "SUBSYSTEM.KEY=VALUE" -#: common/flatpak-context.c:1548 +#: common/flatpak-context.c:1691 msgid "Remove generic policy option" msgstr "移除通用方針選項" -#: common/flatpak-context.c:1549 -msgid "Persist home directory subpath" -msgstr "留存家目錄的子路徑" +#: common/flatpak-context.c:1692 +msgid "Add USB device to enumerables" +msgstr "" + +#: common/flatpak-context.c:1692 common/flatpak-context.c:1693 +msgid "VENDOR_ID:PRODUCT_ID" +msgstr "" + +#: common/flatpak-context.c:1693 +msgid "Add USB device to hidden list" +msgstr "" -#: common/flatpak-context.c:1549 +#: common/flatpak-context.c:1694 +msgid "A list of USB devices that are enumerable" +msgstr "" + +#: common/flatpak-context.c:1694 +msgid "LIST" +msgstr "" + +#: common/flatpak-context.c:1695 +msgid "File containing a list of USB devices to make enumerable" +msgstr "" + +#: common/flatpak-context.c:1695 common/flatpak-context.c:1696 msgid "FILENAME" msgstr "FILENAME" +#: common/flatpak-context.c:1696 +msgid "Persist home directory subpath" +msgstr "留存家目錄的子路徑" + #. This is not needed/used anymore, so hidden, but we accept it for backwards compat -#: common/flatpak-context.c:1551 +#: common/flatpak-context.c:1698 msgid "Don't require a running session (no cgroups creation)" msgstr "不需要有執行中的工作階段(不會建立 cgroups)" -#: common/flatpak-context.c:2505 +#: common/flatpak-context.c:2817 #, c-format msgid "Not replacing \"%s\" with tmpfs: %s" msgstr "" -#: common/flatpak-context.c:2513 +#: common/flatpak-context.c:2825 #, c-format msgid "Not sharing \"%s\" with sandbox: %s" msgstr "" @@ -4373,421 +4419,418 @@ msgstr "" #. * the path not existing, it seems reasonable to make more of a fuss #. * about the home directory not existing or otherwise being unusable, #. * so this is intentionally not using cannot_export() -#: common/flatpak-context.c:2609 +#: common/flatpak-context.c:2921 #, c-format msgid "Not allowing home directory access: %s" msgstr "" -#: common/flatpak-context.c:2828 +#: common/flatpak-context.c:3150 #, fuzzy, c-format msgid "Unable to provide a temporary home directory in the sandbox: %s" msgstr "無法建立布署目錄" -#: common/flatpak-dir.c:399 +#: common/flatpak-dir.c:425 #, c-format msgid "Configured collection ID ‘%s’ not in summary file" msgstr "" -#: common/flatpak-dir.c:537 +#: common/flatpak-dir.c:563 #, c-format msgid "Unable to load summary from remote %s: %s" msgstr "無法從遠端載入摘要 %s:%s" -#: common/flatpak-dir.c:686 common/flatpak-dir.c:758 +#: common/flatpak-dir.c:712 common/flatpak-dir.c:784 #, c-format msgid "No such ref '%s' in remote %s" msgstr "在遠端 %2$s 中無此參照「%1$s」" -#: common/flatpak-dir.c:743 common/flatpak-dir.c:880 common/flatpak-dir.c:909 -#, c-format -msgid "No entry for %s in remote '%s' summary flatpak cache " +#: common/flatpak-dir.c:769 common/flatpak-dir.c:906 common/flatpak-dir.c:935 +#: common/flatpak-dir.c:947 +#, fuzzy, c-format +msgid "No entry for %s in remote %s summary flatpak cache" msgstr "在「%2$s」遠端的摘要 flatpak 快取中沒有 %1$s 條目 " -#: common/flatpak-dir.c:898 +#: common/flatpak-dir.c:924 #, c-format msgid "No summary or Flatpak cache available for remote %s" msgstr "%s 遠端沒有摘要或 Flatpak 快取" -#: common/flatpak-dir.c:921 -#, fuzzy, c-format -msgid "No entry for %s in remote '%s' summary cache " -msgstr "在「%2$s」遠端的摘要 flatpak 快取中沒有 %1$s 條目 " - -#: common/flatpak-dir.c:926 +#: common/flatpak-dir.c:952 #, fuzzy, c-format msgid "Missing xa.data in summary for remote %s" msgstr "未快取「%s」遠端的 oci 摘要" -#: common/flatpak-dir.c:932 common/flatpak-dir.c:1349 +#: common/flatpak-dir.c:958 common/flatpak-dir.c:1375 #, fuzzy, c-format msgid "Unsupported summary version %d for remote %s" msgstr "未快取「%s」遠端的摘要" -#: common/flatpak-dir.c:1019 +#: common/flatpak-dir.c:1045 msgid "Remote OCI index has no registry uri" msgstr "遠端 OCI 索引沒有註冊 URI" -#: common/flatpak-dir.c:1088 +#: common/flatpak-dir.c:1114 #, fuzzy, c-format msgid "Couldn't find ref %s in remote %s" msgstr "在 %2$s 遠端中找不到 %1$s 參照的最近檢核碼" -#: common/flatpak-dir.c:1105 common/flatpak-dir.c:5900 -#: common/flatpak-utils.c:6934 common/flatpak-utils.c:6939 +#: common/flatpak-dir.c:1131 common/flatpak-dir.c:6044 +#: common/flatpak-oci-registry.c:3461 common/flatpak-oci-registry.c:3466 msgid "Image is not a manifest" msgstr "影像並非 manifest" -#: common/flatpak-dir.c:1126 common/flatpak-dir.c:1199 +#: common/flatpak-dir.c:1152 common/flatpak-dir.c:1225 #, c-format msgid "Commit has no requested ref ‘%s’ in ref binding metadata" msgstr "提交的參照綁定中介資料中沒有要求的「%s」參照" -#: common/flatpak-dir.c:1230 +#: common/flatpak-dir.c:1256 #, fuzzy, c-format msgid "Configured collection ID ‘%s’ not in binding metadata" msgstr "提交的參照綁定中介資料中沒有要求的「%s」參照" -#: common/flatpak-dir.c:1266 common/flatpak-dir.c:4888 -#: common/flatpak-dir.c:5809 common/flatpak-dir.c:5877 +#: common/flatpak-dir.c:1292 common/flatpak-dir.c:5032 +#: common/flatpak-dir.c:5953 common/flatpak-dir.c:6021 #, c-format msgid "Couldn't find latest checksum for ref %s in remote %s" msgstr "在 %2$s 遠端中找不到 %1$s 參照的最近檢核碼" -#: common/flatpak-dir.c:1319 common/flatpak-dir.c:1355 +#: common/flatpak-dir.c:1345 common/flatpak-dir.c:1381 #, fuzzy, c-format msgid "No entry for %s in remote %s summary flatpak sparse cache" msgstr "在遠端的摘要 flatpak 簡要快取中沒有 %s 條目 " -#: common/flatpak-dir.c:1908 +#: common/flatpak-dir.c:1970 #, c-format msgid "Commit metadata for %s not matching expected metadata" msgstr "" -#: common/flatpak-dir.c:2172 +#: common/flatpak-dir.c:2235 msgid "Unable to connect to system bus" msgstr "無法連接系統匯流排" -#: common/flatpak-dir.c:2767 +#: common/flatpak-dir.c:2830 msgid "User installation" msgstr "使用者安裝" -#: common/flatpak-dir.c:2774 +#: common/flatpak-dir.c:2837 #, c-format msgid "System (%s) installation" msgstr "系統 (%s) 安裝" -#: common/flatpak-dir.c:2820 +#: common/flatpak-dir.c:2883 #, c-format msgid "No overrides found for %s" msgstr "找不到 %s 的凌駕值" -#: common/flatpak-dir.c:2973 +#: common/flatpak-dir.c:3036 #, c-format msgid "%s (commit %s) not installed" msgstr "%s(%s 提交)未安裝" -#: common/flatpak-dir.c:3975 +#: common/flatpak-dir.c:4059 #, c-format msgid "Error parsing system flatpakrepo file for %s: %s" msgstr "解析 %s 的系統 flatpakrepo 檔案時發生錯誤:%s" -#: common/flatpak-dir.c:4050 +#: common/flatpak-dir.c:4134 #, c-format msgid "While opening repository %s: " msgstr "當開啟 %s 軟體庫時:" -#: common/flatpak-dir.c:4311 +#: common/flatpak-dir.c:4395 #, c-format msgid "The config key %s is not set" msgstr "未設定 %s 設定鍵" -#: common/flatpak-dir.c:4444 +#: common/flatpak-dir.c:4528 #, fuzzy, c-format msgid "No current %s pattern matching %s" msgstr "目前沒有符合 %s 的遮罩" -#: common/flatpak-dir.c:4666 +#: common/flatpak-dir.c:4810 msgid "No appstream commit to deploy" msgstr "沒有要布署的 appstream 提交" -#: common/flatpak-dir.c:5184 common/flatpak-dir.c:6234 -#: common/flatpak-dir.c:9782 common/flatpak-dir.c:10499 +#: common/flatpak-dir.c:5328 common/flatpak-dir.c:6378 +#: common/flatpak-dir.c:9960 common/flatpak-dir.c:10666 msgid "Can't pull from untrusted non-gpg verified remote" msgstr "無法從未受信任的無 GPG 驗證過的遠端拉入" -#: common/flatpak-dir.c:5596 common/flatpak-dir.c:5633 +#: common/flatpak-dir.c:5740 common/flatpak-dir.c:5777 msgid "Extra data not supported for non-gpg-verified local system installs" msgstr "不支援無 GPG 驗證過的本機系統安裝的額外資料" -#: common/flatpak-dir.c:5662 +#: common/flatpak-dir.c:5806 #, c-format msgid "Invalid checksum for extra data uri %s" msgstr "額外資料 URI %s 的檢核碼無效" -#: common/flatpak-dir.c:5667 +#: common/flatpak-dir.c:5811 #, c-format msgid "Empty name for extra data uri %s" msgstr "額外資料 URI %s 的名稱空白" -#: common/flatpak-dir.c:5674 +#: common/flatpak-dir.c:5818 #, c-format msgid "Unsupported extra data uri %s" msgstr "不支援的額外資料 URI %s" -#: common/flatpak-dir.c:5688 +#: common/flatpak-dir.c:5832 #, c-format msgid "Failed to load local extra-data %s: %s" msgstr "本機額外資料 %s 載入失敗:%s" -#: common/flatpak-dir.c:5691 +#: common/flatpak-dir.c:5835 #, c-format msgid "Wrong size for extra-data %s" msgstr "額外資料 %s 的大小錯誤" -#: common/flatpak-dir.c:5706 +#: common/flatpak-dir.c:5850 #, c-format msgid "While downloading %s: " msgstr "當下載 %s 時:" -#: common/flatpak-dir.c:5713 +#: common/flatpak-dir.c:5857 #, c-format msgid "Wrong size for extra data %s" msgstr "額外資料 %s 的大小錯誤" -#: common/flatpak-dir.c:5722 +#: common/flatpak-dir.c:5866 #, c-format msgid "Invalid checksum for extra data %s" msgstr "額外資料 %s 的檢核碼無效" -#: common/flatpak-dir.c:5817 common/flatpak-dir.c:8634 -#: common/flatpak-dir.c:10377 +#: common/flatpak-dir.c:5961 common/flatpak-dir.c:8810 +#: common/flatpak-dir.c:10544 #, c-format msgid "%s commit %s already installed" msgstr "已經安裝 %s 的 %s 提交" -#: common/flatpak-dir.c:6064 common/flatpak-dir.c:6317 +#: common/flatpak-dir.c:6208 common/flatpak-dir.c:6461 #, c-format msgid "While pulling %s from remote %s: " msgstr "當從 %2$s 遠端拉入 %1$s 時:" -#: common/flatpak-dir.c:6258 common/flatpak-utils.c:6831 +#: common/flatpak-dir.c:6402 common/flatpak-repo-utils.c:3906 msgid "GPG signatures found, but none are in trusted keyring" msgstr "找到 GPG 簽章,但不在受信任的鑰匙圈中" -#: common/flatpak-dir.c:6275 +#: common/flatpak-dir.c:6419 #, c-format msgid "Commit for ‘%s’ has no ref binding" msgstr "「%s」的提交沒有參照綁定" -#: common/flatpak-dir.c:6280 +#: common/flatpak-dir.c:6424 #, c-format msgid "Commit for ‘%s’ is not in expected bound refs: %s" msgstr "「%s」的提交不在期望的邊界參照中:%s" -#: common/flatpak-dir.c:6456 +#: common/flatpak-dir.c:6600 #, fuzzy msgid "Only applications can be made current" msgstr "" "\n" "正在尋找應用程式與執行時期環境" -#: common/flatpak-dir.c:7158 +#: common/flatpak-dir.c:7304 msgid "Not enough memory" msgstr "記憶體不足" -#: common/flatpak-dir.c:7177 +#: common/flatpak-dir.c:7323 msgid "Failed to read from exported file" msgstr "從已匯出的檔案讀取失敗" -#: common/flatpak-dir.c:7367 +#: common/flatpak-dir.c:7513 msgid "Error reading mimetype xml file" msgstr "讀取 mimetype XML 檔案時發生錯誤" -#: common/flatpak-dir.c:7372 +#: common/flatpak-dir.c:7518 msgid "Invalid mimetype xml file" msgstr "無效的 mimetype XML 檔案" -#: common/flatpak-dir.c:7461 +#: common/flatpak-dir.c:7604 #, c-format msgid "D-Bus service file '%s' has wrong name" msgstr "D-Bus 服務檔案「%s」的名稱錯誤" -#: common/flatpak-dir.c:7604 +#: common/flatpak-dir.c:7759 #, fuzzy, c-format msgid "Invalid Exec argument %s" msgstr "無效的 require-flatpak 引數 %s" -#: common/flatpak-dir.c:8070 +#: common/flatpak-dir.c:8226 msgid "While getting detached metadata: " msgstr "當取得分離的中介資料時:" -#: common/flatpak-dir.c:8075 common/flatpak-dir.c:8080 -#: common/flatpak-dir.c:8084 +#: common/flatpak-dir.c:8231 common/flatpak-dir.c:8236 +#: common/flatpak-dir.c:8240 msgid "Extra data missing in detached metadata" msgstr "分離的中介資料遺失額外資料" -#: common/flatpak-dir.c:8088 +#: common/flatpak-dir.c:8244 msgid "While creating extradir: " msgstr "當建立額外目錄時:" -#: common/flatpak-dir.c:8109 common/flatpak-dir.c:8142 +#: common/flatpak-dir.c:8265 common/flatpak-dir.c:8298 msgid "Invalid checksum for extra data" msgstr "額外資料的檢核碼無效" -#: common/flatpak-dir.c:8138 +#: common/flatpak-dir.c:8294 msgid "Wrong size for extra data" msgstr "額外資料的大小錯誤" -#: common/flatpak-dir.c:8151 +#: common/flatpak-dir.c:8307 #, c-format msgid "While writing extra data file '%s': " msgstr "當寫入「%s」額外資料檔案時:" -#: common/flatpak-dir.c:8159 +#: common/flatpak-dir.c:8315 #, c-format msgid "Extra data %s missing in detached metadata" msgstr "分離的中介資料遺失額外資料 %s" -#: common/flatpak-dir.c:8353 +#: common/flatpak-dir.c:8522 #, c-format msgid "apply_extra script failed, exit status %d" msgstr "apply_extra 指令稿執行失敗,結束狀態為 %d" #. Translators: The placeholder is for an app ref. -#: common/flatpak-dir.c:8519 +#: common/flatpak-dir.c:8688 #, c-format msgid "Installing %s is not allowed by the policy set by your administrator" msgstr "因管理員設定的方針,不允許安裝 %s" -#: common/flatpak-dir.c:8610 +#: common/flatpak-dir.c:8786 #, c-format msgid "While trying to resolve ref %s: " msgstr "當嘗試解決 %s 參照時:" -#: common/flatpak-dir.c:8622 +#: common/flatpak-dir.c:8798 #, c-format msgid "%s is not available" msgstr "%s 無法使用" -#: common/flatpak-dir.c:8641 +#: common/flatpak-dir.c:8817 msgid "Can't create deploy directory" msgstr "無法建立布署目錄" -#: common/flatpak-dir.c:8649 +#: common/flatpak-dir.c:8825 #, c-format msgid "Failed to read commit %s: " msgstr "%s 提交讀取失敗:" -#: common/flatpak-dir.c:8669 +#: common/flatpak-dir.c:8846 #, c-format msgid "While trying to checkout %s into %s: " msgstr "當嘗試將 %s 檢出至 %s 時:" -#: common/flatpak-dir.c:8688 +#: common/flatpak-dir.c:8865 msgid "While trying to checkout metadata subpath: " msgstr "當嘗試檢出中介資料子路徑時:" -#: common/flatpak-dir.c:8719 +#: common/flatpak-dir.c:8897 #, c-format msgid "While trying to checkout subpath ‘%s’: " msgstr "當嘗試檢出子路徑「%s」時:" -#: common/flatpak-dir.c:8729 +#: common/flatpak-dir.c:8907 msgid "While trying to remove existing extra dir: " msgstr "當嘗試移除既有的額外目錄時:" -#: common/flatpak-dir.c:8740 +#: common/flatpak-dir.c:8918 msgid "While trying to apply extra data: " msgstr "當嘗試套用額外資料時:" -#: common/flatpak-dir.c:8767 +#: common/flatpak-dir.c:8945 #, c-format msgid "Invalid commit ref %s: " msgstr "無效的 %s 參照提交:" -#: common/flatpak-dir.c:8775 common/flatpak-dir.c:8787 +#: common/flatpak-dir.c:8953 common/flatpak-dir.c:8965 #, c-format msgid "Deployed ref %s does not match commit (%s)" msgstr "已布署的 %s 參照與提交不符(%s)" -#: common/flatpak-dir.c:8781 +#: common/flatpak-dir.c:8959 #, c-format msgid "Deployed ref %s branch does not match commit (%s)" msgstr "已布署的 %s 參照分支與提交不符(%s)" -#: common/flatpak-dir.c:9040 common/flatpak-installation.c:1909 +#: common/flatpak-dir.c:9218 common/flatpak-installation.c:1912 #, c-format msgid "%s branch %s already installed" msgstr "已經安裝 %s 的 %s 分支" -#: common/flatpak-dir.c:9886 +#: common/flatpak-dir.c:10064 #, c-format msgid "Could not unmount revokefs-fuse filesystem at %s: " msgstr "" -#: common/flatpak-dir.c:10173 +#: common/flatpak-dir.c:10351 #, c-format msgid "This version of %s is already installed" msgstr "已經安裝此版本的 %s" -#: common/flatpak-dir.c:10180 +#: common/flatpak-dir.c:10358 +#, c-format msgid "Can't change remote during bundle install" msgstr "無法在套組安裝時變更遠端" -#: common/flatpak-dir.c:10452 +#: common/flatpak-dir.c:10619 msgid "Can't update to a specific commit without root permissions" msgstr "沒有 root 權利時無法更新至特定提交" -#: common/flatpak-dir.c:10732 +#: common/flatpak-dir.c:10899 #, c-format msgid "Can't remove %s, it is needed for: %s" msgstr "無法移除 %s,它為此項目所需要:%s" -#: common/flatpak-dir.c:10788 common/flatpak-installation.c:2065 +#: common/flatpak-dir.c:10955 common/flatpak-installation.c:2068 #, c-format msgid "%s branch %s is not installed" msgstr "%s 的 %s 分支尚未安裝" -#: common/flatpak-dir.c:11041 +#: common/flatpak-dir.c:11208 #, c-format msgid "%s commit %s not installed" msgstr "未安裝 %s (提交 %s)" -#: common/flatpak-dir.c:11377 +#: common/flatpak-dir.c:11544 #, c-format msgid "Pruning repo failed: %s" msgstr "修除軟體庫失敗:%s" -#: common/flatpak-dir.c:11545 common/flatpak-dir.c:11551 +#: common/flatpak-dir.c:11712 common/flatpak-dir.c:11718 #, c-format msgid "Failed to load filter '%s'" msgstr "無法載入過濾器「%s」" -#: common/flatpak-dir.c:11557 +#: common/flatpak-dir.c:11724 #, c-format msgid "Failed to parse filter '%s'" msgstr "無法解析「%s」過濾器" -#: common/flatpak-dir.c:11839 +#: common/flatpak-dir.c:12006 msgid "Failed to write summary cache: " msgstr "無法寫入摘要快取: " -#: common/flatpak-dir.c:11858 +#: common/flatpak-dir.c:12025 #, c-format msgid "No oci summary cached for remote '%s'" msgstr "未快取「%s」遠端的 oci 摘要" -#: common/flatpak-dir.c:12083 +#: common/flatpak-dir.c:12250 #, fuzzy, c-format msgid "No cached summary for remote '%s'" msgstr "未快取「%s」遠端的 oci 摘要" -#: common/flatpak-dir.c:12124 +#: common/flatpak-dir.c:12291 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s read from %s" msgstr "額外資料 %s 的檢核碼無效" -#: common/flatpak-dir.c:12197 +#: common/flatpak-dir.c:12364 #, c-format msgid "" "Remote listing for %s not available; server has no summary file. Check the " @@ -4796,246 +4839,275 @@ msgstr "" "%s 的遠端列表無法使用;伺服器沒有摘要檔案。請檢查傳給 remote-add 的 URL 是否" "有效。" -#: common/flatpak-dir.c:12574 +#: common/flatpak-dir.c:12741 #, fuzzy, c-format msgid "Invalid checksum for indexed summary %s for remote '%s'" msgstr "額外資料 %s 的檢核碼無效" -#: common/flatpak-dir.c:13197 +#: common/flatpak-dir.c:13364 #, c-format msgid "Multiple branches available for %s, you must specify one of: " msgstr "%s 有多個分支可用,您必須指定其中一個:" -#: common/flatpak-dir.c:13263 +#: common/flatpak-dir.c:13430 #, c-format msgid "Nothing matches %s" msgstr "沒有項目符合 %s" -#: common/flatpak-dir.c:13371 +#: common/flatpak-dir.c:13538 #, c-format msgid "Can't find ref %s%s%s%s%s" msgstr "找不到參照 %s%s%s%s%s" -#: common/flatpak-dir.c:13414 +#: common/flatpak-dir.c:13581 #, c-format msgid "Error searching remote %s: %s" msgstr "搜尋 %s 遠端時發生錯誤:%s" -#: common/flatpak-dir.c:13511 +#: common/flatpak-dir.c:13678 #, c-format msgid "Error searching local repository: %s" msgstr "搜尋本機軟體庫時發生錯誤:%s" -#: common/flatpak-dir.c:13648 +#: common/flatpak-dir.c:13815 #, c-format msgid "%s/%s/%s not installed" msgstr "%s/%s/%s 未安裝" -#: common/flatpak-dir.c:13851 +#: common/flatpak-dir.c:14018 #, c-format msgid "Could not find installation %s" msgstr "找不到 %s 安裝" -#: common/flatpak-dir.c:14395 +#: common/flatpak-dir.c:14563 #, c-format msgid "Invalid file format, no %s group" msgstr "無效的檔案格式,沒有 %s 群組" -#: common/flatpak-dir.c:14400 common/flatpak-utils.c:2335 +#: common/flatpak-dir.c:14568 common/flatpak-repo-utils.c:2861 #, c-format msgid "Invalid version %s, only 1 supported" msgstr "%s 版本無效,僅支援 1 版" -#: common/flatpak-dir.c:14405 common/flatpak-dir.c:14410 +#: common/flatpak-dir.c:14573 common/flatpak-dir.c:14578 #, c-format msgid "Invalid file format, no %s specified" msgstr "無效的檔案格式,未指定 %s" #. Check some minimal size so we don't get crap -#: common/flatpak-dir.c:14430 +#: common/flatpak-dir.c:14598 msgid "Invalid file format, gpg key invalid" msgstr "無效的檔案格式,GPG 金鑰無效" -#: common/flatpak-dir.c:14458 common/flatpak-utils.c:2408 +#: common/flatpak-dir.c:14626 common/flatpak-repo-utils.c:2934 msgid "Collection ID requires GPG key to be provided" msgstr "收藏 ID 必須提供 GPG 金鑰" -#: common/flatpak-dir.c:14501 +#: common/flatpak-dir.c:14669 #, c-format msgid "Runtime %s, branch %s is already installed" msgstr "已經安裝 %s 執行時期環境,%s 分支" -#: common/flatpak-dir.c:14502 +#: common/flatpak-dir.c:14670 #, c-format msgid "App %s, branch %s is already installed" msgstr "已經安裝 %s 程式,%s 分支" -#: common/flatpak-dir.c:14736 +#: common/flatpak-dir.c:14903 #, c-format msgid "Can't remove remote '%s' with installed ref %s (at least)" msgstr "無法移除「%s」遠端的已安裝 %s 參照(至少)" -#: common/flatpak-dir.c:14835 +#: common/flatpak-dir.c:15002 #, c-format msgid "Invalid character '/' in remote name: %s" msgstr "在遠端的名稱中有無效字元「/」:%s" -#: common/flatpak-dir.c:14841 +#: common/flatpak-dir.c:15008 #, c-format msgid "No configuration for remote %s specified" msgstr "沒有設定 %s 遠端的組態" -#: common/flatpak-dir.c:16488 +#: common/flatpak-dir.c:16505 #, c-format msgid "Skipping deletion of mirror ref (%s, %s)…\n" msgstr "正在略過鏡像參照 (%s, %s)…\n" -#: common/flatpak-exports.c:906 +#: common/flatpak-exports.c:916 +#, c-format msgid "An absolute path is required" msgstr "" -#: common/flatpak-exports.c:923 +#: common/flatpak-exports.c:933 #, fuzzy, c-format msgid "Unable to open path \"%s\": %s" msgstr "無法更新 %s:%s\n" -#: common/flatpak-exports.c:930 +#: common/flatpak-exports.c:940 #, fuzzy, c-format msgid "Unable to get file type of \"%s\": %s" msgstr "無法建立同步管道" -#: common/flatpak-exports.c:939 +#: common/flatpak-exports.c:949 #, c-format msgid "File \"%s\" has unsupported type 0o%o" msgstr "" -#: common/flatpak-exports.c:945 +#: common/flatpak-exports.c:955 #, c-format msgid "Unable to get filesystem information for \"%s\": %s" msgstr "" -#: common/flatpak-exports.c:955 +#: common/flatpak-exports.c:965 #, c-format msgid "Ignoring blocking autofs path \"%s\"" msgstr "" -#: common/flatpak-exports.c:971 common/flatpak-exports.c:984 -#: common/flatpak-exports.c:997 +#: common/flatpak-exports.c:981 common/flatpak-exports.c:994 +#: common/flatpak-exports.c:1007 #, c-format msgid "Path \"%s\" is reserved by Flatpak" msgstr "" -#: common/flatpak-exports.c:1051 +#: common/flatpak-exports.c:1061 #, fuzzy, c-format msgid "Unable to resolve symbolic link \"%s\": %s" msgstr "無法更新 %s:%s\n" -#: common/flatpak-installation.c:831 +#: common/flatpak-glib-backports.c:69 +msgid "Empty string is not a number" +msgstr "空字串不是數字" + +#: common/flatpak-glib-backports.c:95 +#, c-format +msgid "“%s” is not an unsigned number" +msgstr "「%s」不是無號數" + +#: common/flatpak-glib-backports.c:105 +#, c-format +msgid "Number “%s” is out of bounds [%s, %s]" +msgstr "數字「%s」超出邊界 [%s, %s]" + +#: common/flatpak-installation.c:835 #, c-format msgid "Ref %s not installed" msgstr "未安裝 %s 參照" -#: common/flatpak-installation.c:872 +#: common/flatpak-installation.c:876 #, c-format msgid "App %s not installed" msgstr "未安裝 %s 程式" -#: common/flatpak-installation.c:1393 +#: common/flatpak-installation.c:1396 #, c-format msgid "Remote '%s' already exists" msgstr "遠端「%s」已經存在" -#: common/flatpak-installation.c:1944 +#: common/flatpak-installation.c:1947 #, c-format msgid "As requested, %s was only pulled, but not installed" msgstr "根據要求,%s 僅被拉入,但未安裝" -#: common/flatpak-instance.c:508 common/flatpak-instance.c:667 -#: common/flatpak-instance.c:708 +#: common/flatpak-instance.c:533 common/flatpak-instance.c:687 +#: common/flatpak-instance.c:728 #, fuzzy, c-format msgid "Unable to create directory %s" msgstr "無法建立同步管道" -#: common/flatpak-instance.c:529 +#: common/flatpak-instance.c:554 #, fuzzy, c-format msgid "Unable to lock %s" msgstr "無法查找金鑰 ID %s:%d" -#: common/flatpak-instance.c:581 -#, fuzzy, c-format -msgid "Unable to open directory %s" -msgstr "無法連接系統匯流排" - -#: common/flatpak-instance.c:607 +#: common/flatpak-instance.c:627 #, fuzzy, c-format msgid "Unable to create temporary directory in %s" msgstr "無法建立布署目錄" -#: common/flatpak-instance.c:619 +#: common/flatpak-instance.c:639 #, fuzzy, c-format msgid "Unable to create file %s" msgstr "無法建立同步管道" -#: common/flatpak-instance.c:626 +#: common/flatpak-instance.c:646 #, fuzzy, c-format msgid "Unable to update symbolic link %s/%s" msgstr "無法更新 %s:%s\n" -#: common/flatpak-oci-registry.c:995 +#: common/flatpak-oci-registry.c:1012 msgid "Only Bearer authentication supported" msgstr "" -#: common/flatpak-oci-registry.c:1004 +#: common/flatpak-oci-registry.c:1021 #, fuzzy msgid "Only realm in authentication request" msgstr "無效的身分核對器名稱 %s" -#: common/flatpak-oci-registry.c:1011 +#: common/flatpak-oci-registry.c:1028 #, fuzzy msgid "Invalid realm in authentication request" msgstr "無效的身分核對器名稱 %s" -#: common/flatpak-oci-registry.c:1080 +#: common/flatpak-oci-registry.c:1097 #, fuzzy, c-format msgid "Authorization failed: %s" msgstr "身分核對器名稱:%s\n" -#: common/flatpak-oci-registry.c:1082 +#: common/flatpak-oci-registry.c:1099 msgid "Authorization failed" msgstr "" -#: common/flatpak-oci-registry.c:1086 +#: common/flatpak-oci-registry.c:1103 #, c-format msgid "Unexpected response status %d when requesting token: %s" msgstr "" -#: common/flatpak-oci-registry.c:1097 +#: common/flatpak-oci-registry.c:1114 #, fuzzy msgid "Invalid authentication request response" msgstr "無效的身分核對器名稱 %s" -#: common/flatpak-oci-registry.c:1694 common/flatpak-oci-registry.c:1747 -#: common/flatpak-oci-registry.c:1776 common/flatpak-oci-registry.c:1831 -#: common/flatpak-oci-registry.c:1887 common/flatpak-oci-registry.c:1965 +#: common/flatpak-oci-registry.c:1711 common/flatpak-oci-registry.c:1764 +#: common/flatpak-oci-registry.c:1793 common/flatpak-oci-registry.c:1848 +#: common/flatpak-oci-registry.c:1904 common/flatpak-oci-registry.c:1982 #, fuzzy msgid "Invalid delta file format" msgstr "檔案格式無效" -#: common/flatpak-oci-registry.c:2469 +#: common/flatpak-oci-registry.c:2486 #, c-format msgid "No gpg key found with ID %s (homedir: %s)" msgstr "找不到 ID %s 的 GPG 金鑰(家目錄:%s)" -#: common/flatpak-oci-registry.c:2476 +#: common/flatpak-oci-registry.c:2493 #, fuzzy, c-format msgid "Unable to lookup key ID %s: %d" msgstr "無法查找金鑰 ID %s:%d" -#: common/flatpak-oci-registry.c:2484 +#: common/flatpak-oci-registry.c:2501 #, c-format msgid "Error signing commit: %d" msgstr "簽署提交時發生錯誤:%d" +#: common/flatpak-oci-registry.c:3480 common/flatpak-oci-registry.c:3639 +msgid "Invalid OCI image config" +msgstr "" + +#: common/flatpak-oci-registry.c:3542 common/flatpak-oci-registry.c:3788 +#, c-format +msgid "Wrong layer checksum, expected %s, was %s" +msgstr "錯誤的層次檢核碼,預期為 %s,實際為 %s" + +#: common/flatpak-oci-registry.c:3622 +#, c-format +msgid "No ref specified for OCI image %s" +msgstr "%s OCI 映像檔未指定參照" + +#: common/flatpak-oci-registry.c:3628 +#, c-format +msgid "Wrong ref (%s) specified for OCI image %s, expected %s" +msgstr "錯誤的參照 (%s) 指定給了 %s OCI 映像檔,預期為 %s" + #: common/flatpak-progress.c:236 #, c-format msgid "Downloading metadata: %u/(estimating) %s" @@ -5056,386 +5128,439 @@ msgstr "正在下載額外資料:%s/%s" msgid "Downloading files: %d/%d %s" msgstr "正在下載檔案:%d/%d %s" -#: common/flatpak-ref-utils.c:119 +#: common/flatpak-ref-utils.c:122 msgid "Name can't be empty" msgstr "名稱不能空白" -#: common/flatpak-ref-utils.c:126 +#: common/flatpak-ref-utils.c:129 msgid "Name can't be longer than 255 characters" msgstr "名稱不能超過 255 個字元" -#: common/flatpak-ref-utils.c:139 +#: common/flatpak-ref-utils.c:142 msgid "Name can't start with a period" msgstr "名稱不能以句號開始" -#: common/flatpak-ref-utils.c:145 +#: common/flatpak-ref-utils.c:148 #, c-format msgid "Name can't start with %c" msgstr "名稱不能以 %c 開始" -#: common/flatpak-ref-utils.c:161 +#: common/flatpak-ref-utils.c:164 msgid "Name can't end with a period" msgstr "名稱不能以半形句點結尾" -#: common/flatpak-ref-utils.c:168 common/flatpak-ref-utils.c:180 +#: common/flatpak-ref-utils.c:171 common/flatpak-ref-utils.c:183 msgid "Only last name segment can contain -" msgstr "僅姓氏區段可以包含 -" -#: common/flatpak-ref-utils.c:171 +#: common/flatpak-ref-utils.c:174 #, c-format msgid "Name segment can't start with %c" msgstr "名稱區段不能以 %c 開始" -#: common/flatpak-ref-utils.c:183 +#: common/flatpak-ref-utils.c:186 #, c-format msgid "Name can't contain %c" msgstr "名稱不能包含 %c" -#: common/flatpak-ref-utils.c:192 +#: common/flatpak-ref-utils.c:195 msgid "Names must contain at least 2 periods" msgstr "名稱必須包含至少兩個半形句點" -#: common/flatpak-ref-utils.c:309 +#: common/flatpak-ref-utils.c:312 #, fuzzy msgid "Arch can't be empty" msgstr "分支不能空白" -#: common/flatpak-ref-utils.c:320 +#: common/flatpak-ref-utils.c:323 #, fuzzy, c-format msgid "Arch can't contain %c" msgstr "分支不能包含 %c" -#: common/flatpak-ref-utils.c:382 +#: common/flatpak-ref-utils.c:385 msgid "Branch can't be empty" msgstr "分支不能空白" -#: common/flatpak-ref-utils.c:392 +#: common/flatpak-ref-utils.c:395 #, c-format msgid "Branch can't start with %c" msgstr "分支不能以 %c 開始" -#: common/flatpak-ref-utils.c:402 +#: common/flatpak-ref-utils.c:405 #, c-format msgid "Branch can't contain %c" msgstr "分支不能包含 %c" -#: common/flatpak-ref-utils.c:612 common/flatpak-ref-utils.c:862 +#: common/flatpak-ref-utils.c:615 common/flatpak-ref-utils.c:865 msgid "Ref too long" msgstr "" -#: common/flatpak-ref-utils.c:624 +#: common/flatpak-ref-utils.c:627 #, fuzzy msgid "Invalid remote name" msgstr "遠端名稱不良:%s" -#: common/flatpak-ref-utils.c:638 +#: common/flatpak-ref-utils.c:641 #, c-format msgid "%s is not application or runtime" msgstr "%s 不是應用程式或執行時期環境" -#: common/flatpak-ref-utils.c:647 common/flatpak-ref-utils.c:664 -#: common/flatpak-ref-utils.c:680 +#: common/flatpak-ref-utils.c:650 common/flatpak-ref-utils.c:667 +#: common/flatpak-ref-utils.c:683 #, c-format msgid "Wrong number of components in %s" msgstr "%s 中的組件數量錯誤" -#: common/flatpak-ref-utils.c:653 +#: common/flatpak-ref-utils.c:656 #, fuzzy, c-format msgid "Invalid name %.*s: %s" msgstr "無效的 %s 名稱:%s" -#: common/flatpak-ref-utils.c:670 +#: common/flatpak-ref-utils.c:673 #, fuzzy, c-format msgid "Invalid arch: %.*s: %s" msgstr "無效的 %s 分支:%s" -#: common/flatpak-ref-utils.c:813 +#: common/flatpak-ref-utils.c:816 #, c-format msgid "Invalid name %s: %s" msgstr "無效的 %s 名稱:%s" -#: common/flatpak-ref-utils.c:831 +#: common/flatpak-ref-utils.c:834 #, fuzzy, c-format msgid "Invalid arch: %s: %s" msgstr "無效的 %s 分支:%s" -#: common/flatpak-ref-utils.c:850 +#: common/flatpak-ref-utils.c:853 #, fuzzy, c-format msgid "Invalid branch: %s: %s" msgstr "無效的 %s 分支:%s" -#: common/flatpak-ref-utils.c:959 common/flatpak-ref-utils.c:967 -#: common/flatpak-ref-utils.c:975 +#: common/flatpak-ref-utils.c:962 common/flatpak-ref-utils.c:970 +#: common/flatpak-ref-utils.c:978 #, fuzzy, c-format msgid "Wrong number of components in partial ref %s" msgstr "%s 執行時期環境中的組件數量錯誤" -#: common/flatpak-ref-utils.c:1295 +#: common/flatpak-ref-utils.c:1298 #, fuzzy msgid " development platform" msgstr "使用開發用執行時期環境" -#: common/flatpak-ref-utils.c:1297 +#: common/flatpak-ref-utils.c:1300 msgid " platform" msgstr "" -#: common/flatpak-ref-utils.c:1299 +#: common/flatpak-ref-utils.c:1302 #, fuzzy msgid " application base" msgstr "應用程式" -#: common/flatpak-ref-utils.c:1302 +#: common/flatpak-ref-utils.c:1305 msgid " debug symbols" msgstr "" -#: common/flatpak-ref-utils.c:1304 +#: common/flatpak-ref-utils.c:1307 msgid " sourcecode" msgstr "" -#: common/flatpak-ref-utils.c:1306 +#: common/flatpak-ref-utils.c:1309 #, fuzzy msgid " translations" msgstr "安裝" -#: common/flatpak-ref-utils.c:1308 +#: common/flatpak-ref-utils.c:1311 msgid " docs" msgstr "" -#: common/flatpak-ref-utils.c:1575 +#: common/flatpak-ref-utils.c:1578 #, c-format msgid "Invalid id %s: %s" msgstr "無效的 ID %s:%s" -#: common/flatpak-remote.c:1215 +#: common/flatpak-remote.c:1216 #, c-format msgid "Bad remote name: %s" msgstr "遠端名稱不良:%s" -#: common/flatpak-remote.c:1219 +#: common/flatpak-remote.c:1220 msgid "No url specified" msgstr "未指定 URL" -#: common/flatpak-remote.c:1265 +#: common/flatpak-remote.c:1266 msgid "GPG verification must be enabled when a collection ID is set" msgstr "如有設定收藏 ID,則必須啟用 GPG 驗證" -#: common/flatpak-run.c:1241 -msgid "Failed to open app info file" -msgstr "程式資訊檔開啟失敗" +#: common/flatpak-repo-utils.c:344 +#, c-format +msgid "No extra data sources" +msgstr "沒有額外的資料來源" -#: common/flatpak-run.c:1337 -msgid "Unable to create sync pipe" -msgstr "無法建立同步管道" +#: common/flatpak-repo-utils.c:2842 +#, c-format +msgid "Invalid %s: Missing group ‘%s’" +msgstr "%s 無效:缺少「%s」群組" -#: common/flatpak-run.c:1376 -msgid "Failed to sync with dbus proxy" -msgstr "與 dbus 代理同步失敗" +#: common/flatpak-repo-utils.c:2851 +#, c-format +msgid "Invalid %s: Missing key ‘%s’" +msgstr "%s 無效:缺少「%s」鍵" + +#: common/flatpak-repo-utils.c:2901 +msgid "Invalid gpg key" +msgstr "無效的 GPG 金鑰" + +#: common/flatpak-repo-utils.c:3237 +#, c-format +msgid "Error copying 64x64 icon for component %s: %s\n" +msgstr "複製 %s 元件的 64x64 圖示時發生錯誤:%s\n" + +#: common/flatpak-repo-utils.c:3243 +#, c-format +msgid "Error copying 128x128 icon for component %s: %s\n" +msgstr "複製 %s 元件的 128x128 圖示時發生錯誤:%s\n" + +#: common/flatpak-repo-utils.c:3382 +#, fuzzy, c-format +msgid "%s is end-of-life, ignoring for appstream" +msgstr "%s 已經 end-of-life,故忽略\n" + +#: common/flatpak-repo-utils.c:3417 +#, c-format +msgid "No appstream data for %s: %s\n" +msgstr "%s 沒有 appstream 資料:%s\n" + +#: common/flatpak-repo-utils.c:3764 +msgid "Invalid bundle, no ref in metadata" +msgstr "無效的套組,中介資料內沒有參照" + +#: common/flatpak-repo-utils.c:3866 +#, c-format +msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" +msgstr "套組的「%s」收藏與遠端站點的「%s」收藏不符" -#: common/flatpak-run.c:2207 +#: common/flatpak-repo-utils.c:3943 +msgid "Metadata in header and app are inconsistent" +msgstr "檔案標頭的中介資料與程式不一致" + +#: common/flatpak-run.c:844 msgid "No systemd user session available, cgroups not available" msgstr "沒有可用的 systemd 使用者工作階段,cgroups 無法使用" -#: common/flatpak-run.c:2700 +#: common/flatpak-run.c:1382 msgid "Unable to allocate instance id" msgstr "無法分配實體 ID" -#: common/flatpak-run.c:2836 common/flatpak-run.c:2846 +#: common/flatpak-run.c:1518 common/flatpak-run.c:1528 #, c-format msgid "Failed to open flatpak-info file: %s" msgstr "flatpak-info 檔開啟失敗:%s" -#: common/flatpak-run.c:2875 +#: common/flatpak-run.c:1557 #, c-format msgid "Failed to open bwrapinfo.json file: %s" msgstr "bwrapinfo.json 檔開啟失敗:%s" -#: common/flatpak-run.c:2900 +#: common/flatpak-run.c:1582 #, fuzzy, c-format msgid "Failed to write to instance id fd: %s" msgstr "無法寫入摘要快取: " -#: common/flatpak-run.c:3290 +#: common/flatpak-run.c:1977 msgid "Initialize seccomp failed" msgstr "seccomp 初始化失敗" -#: common/flatpak-run.c:3329 +#: common/flatpak-run.c:2016 #, fuzzy, c-format msgid "Failed to add architecture to seccomp filter: %s" msgstr "架構新增至 seccomp 過濾器失敗" -#: common/flatpak-run.c:3337 +#: common/flatpak-run.c:2024 #, fuzzy, c-format msgid "Failed to add multiarch architecture to seccomp filter: %s" msgstr "multiarch 架構新增至 seccomp 過濾器失敗" -#: common/flatpak-run.c:3369 common/flatpak-run.c:3391 +#: common/flatpak-run.c:2056 common/flatpak-run.c:2073 +#: common/flatpak-run.c:2095 #, fuzzy, c-format msgid "Failed to block syscall %d: %s" msgstr "封鎖系統呼叫 %d 失敗" -#: common/flatpak-run.c:3424 +#: common/flatpak-run.c:2128 #, fuzzy, c-format msgid "Failed to export bpf: %s" msgstr "匯出 bpf 失敗" -#: common/flatpak-run.c:3675 +#: common/flatpak-run.c:2427 #, c-format msgid "Failed to open ‘%s’" msgstr "無法開啟「%s」" -#: common/flatpak-run.c:3961 +#: common/flatpak-run.c:2714 #, c-format msgid "ldconfig failed, exit status %d" msgstr "ldconfig 失敗,離開狀態為 %d" -#: common/flatpak-run.c:3968 +#: common/flatpak-run.c:2721 msgid "Can't open generated ld.so.cache" msgstr "無法開啟生成的 ld.so.cache" #. Translators: The placeholder is for an app ref. -#: common/flatpak-run.c:4091 +#: common/flatpak-run.c:2844 #, c-format msgid "Running %s is not allowed by the policy set by your administrator" msgstr "因管理員設定的方針,不允許執行 %s" -#: common/flatpak-run.c:4193 +#: common/flatpak-run.c:2951 msgid "" -"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo -" -"i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." +"\"flatpak run\" is not intended to be run as `sudo flatpak run`. Use `sudo " +"-i` or `su -l` instead and invoke \"flatpak run\" from inside the new shell." msgstr "" -#: common/flatpak-run.c:4376 +#: common/flatpak-run.c:3141 #, c-format msgid "Failed to migrate from %s: %s" msgstr "無法從 %s 轉移:%s" -#: common/flatpak-run.c:4397 +#: common/flatpak-run.c:3162 #, c-format msgid "Failed to migrate old app data directory %s to new name %s: %s" msgstr "無法轉移舊的 App 資料目錄 %s 至新名稱 %s:%s" -#: common/flatpak-run.c:4406 +#: common/flatpak-run.c:3171 #, c-format msgid "Failed to create symlink while migrating %s: %s" msgstr "無法在轉移 %s 時建立符號連結:%s" -#: common/flatpak-transaction.c:2209 +#: common/flatpak-run-dbus.c:46 +msgid "Failed to open app info file" +msgstr "程式資訊檔開啟失敗" + +#: common/flatpak-run-dbus.c:149 +msgid "Unable to create sync pipe" +msgstr "無法建立同步管道" + +#: common/flatpak-run-dbus.c:185 +msgid "Failed to sync with dbus proxy" +msgstr "與 dbus 代理同步失敗" + +#: common/flatpak-transaction.c:2210 #, c-format msgid "Warning: Problem looking for related refs: %s" msgstr "警告:尋找相關參照時發生問題:%s" -#: common/flatpak-transaction.c:2434 +#: common/flatpak-transaction.c:2428 #, c-format msgid "The application %s requires the runtime %s which was not found" msgstr "%s 應用程式要求的 %s 執行時期環境找不到" -#: common/flatpak-transaction.c:2450 +#: common/flatpak-transaction.c:2444 #, c-format msgid "The application %s requires the runtime %s which is not installed" msgstr "%s 應用程式要求的 %s 執行時期環境尚未安裝" -#: common/flatpak-transaction.c:2586 +#: common/flatpak-transaction.c:2576 #, c-format msgid "Can't uninstall %s which is needed by %s" msgstr "無法解除安裝 %s,它為 %s 所需要" -#: common/flatpak-transaction.c:2678 +#: common/flatpak-transaction.c:2673 #, c-format msgid "Remote %s disabled, ignoring %s update" msgstr "%s 遠端已停用,故忽略 %s 更新" -#: common/flatpak-transaction.c:2711 +#: common/flatpak-transaction.c:2706 #, c-format msgid "%s is already installed" msgstr "已經安裝 %s" -#: common/flatpak-transaction.c:2714 +#: common/flatpak-transaction.c:2709 #, c-format msgid "%s is already installed from remote %s" msgstr "已經安裝來自 %2$s 遠端的 %1$s" -#: common/flatpak-transaction.c:2911 +#: common/flatpak-transaction.c:3020 #, c-format msgid "Invalid .flatpakref: %s" msgstr "無效的 .flatpakref:%s" -#: common/flatpak-transaction.c:3026 +#: common/flatpak-transaction.c:3135 #, c-format msgid "Error updating remote metadata for '%s': %s" msgstr "更新「%s」的遠端中介資料時發生錯誤:%s" -#: common/flatpak-transaction.c:3515 +#: common/flatpak-transaction.c:3624 #, c-format msgid "" "Warning: Treating remote fetch error as non-fatal since %s is already " "installed: %s" msgstr "警告:由於已經安裝 %s,因此將遠端擷取錯誤視為非重大錯誤:%s" -#: common/flatpak-transaction.c:3839 +#: common/flatpak-transaction.c:3950 #, fuzzy, c-format msgid "No authenticator installed for remote '%s'" msgstr "未設定用於「%s」遠端的身分核對器" -#: common/flatpak-transaction.c:3943 common/flatpak-transaction.c:3950 +#: common/flatpak-transaction.c:4054 common/flatpak-transaction.c:4061 #, fuzzy, c-format msgid "Failed to get tokens for ref: %s" msgstr "從參照判定部分失敗:%s" -#: common/flatpak-transaction.c:3945 common/flatpak-transaction.c:3952 +#: common/flatpak-transaction.c:4056 common/flatpak-transaction.c:4063 #, fuzzy msgid "Failed to get tokens for ref" msgstr "從參照判定部分失敗:%s" -#: common/flatpak-transaction.c:4209 +#: common/flatpak-transaction.c:4321 #, c-format msgid "Ref %s from %s matches more than one transaction operation" msgstr "" -#: common/flatpak-transaction.c:4210 common/flatpak-transaction.c:4220 +#: common/flatpak-transaction.c:4322 common/flatpak-transaction.c:4332 #, fuzzy msgid "any remote" msgstr "遠端" -#: common/flatpak-transaction.c:4219 +#: common/flatpak-transaction.c:4331 #, c-format msgid "No transaction operation found for ref %s from %s" msgstr "" -#: common/flatpak-transaction.c:4342 +#: common/flatpak-transaction.c:4454 #, c-format msgid "Flatpakrepo URL %s not file, HTTP or HTTPS" msgstr "Flatpakrepo URL %s 不是檔案、HTTP 或 HTTPS" -#: common/flatpak-transaction.c:4348 +#: common/flatpak-transaction.c:4460 #, c-format msgid "Can't load dependent file %s: " msgstr "無法載入依賴檔案 %s: " -#: common/flatpak-transaction.c:4356 +#: common/flatpak-transaction.c:4468 #, c-format msgid "Invalid .flatpakrepo: %s" msgstr "無效的 .flatpakrepo:%s" -#: common/flatpak-transaction.c:5010 +#: common/flatpak-transaction.c:5121 msgid "Transaction already executed" msgstr "處理事項已經執行" -#: common/flatpak-transaction.c:5025 +#: common/flatpak-transaction.c:5136 msgid "" "Refusing to operate on a user installation as root! This can lead to " "incorrect file ownership and permission errors." msgstr "拒絕以 root 在使用者安裝操作!這可能會導致檔案所有權不正確及權限錯誤。" -#: common/flatpak-transaction.c:5117 common/flatpak-transaction.c:5130 +#: common/flatpak-transaction.c:5228 common/flatpak-transaction.c:5241 msgid "Aborted by user" msgstr "由使用者中止" -#: common/flatpak-transaction.c:5155 +#: common/flatpak-transaction.c:5266 #, c-format msgid "Skipping %s due to previous error" msgstr "因為先前的錯誤而略過 %s" -#: common/flatpak-transaction.c:5209 +#: common/flatpak-transaction.c:5320 #, fuzzy, c-format msgid "Aborted due to failure (%s)" msgstr "因為失敗而中止" @@ -5482,137 +5607,113 @@ msgstr "" msgid "URI is not absolute, and no base URI was provided" msgstr "" -#: common/flatpak-utils.c:862 -msgid "Glob can't match apps" +#: common/flatpak-usb.c:83 +#, c-format +msgid "USB device query 'all' must not have data" msgstr "" -#: common/flatpak-utils.c:887 -msgid "Empty glob" -msgstr "glob 空白" +#: common/flatpak-usb.c:102 +#, c-format +msgid "USB query rule 'cls' must be in the form CLASS:SUBCLASS or CLASS:*" +msgstr "" -#: common/flatpak-utils.c:906 -msgid "Too many segments in glob" -msgstr "glob 中的區段過多" +#: common/flatpak-usb.c:111 +#, fuzzy, c-format +msgid "Invalid USB class" +msgstr "無效的 ID %s:%s" -#: common/flatpak-utils.c:927 +#: common/flatpak-usb.c:125 #, c-format -msgid "Invalid glob character '%c'" -msgstr "「%c」glob 字元無效" +msgid "Invalid USB subclass" +msgstr "" -#: common/flatpak-utils.c:981 +#: common/flatpak-usb.c:141 common/flatpak-usb.c:148 #, c-format -msgid "Missing glob on line %d" -msgstr "第 %d 列沒有 glob" +msgid "USB query rule 'dev' must have a valid 4-digit hexadecimal product id" +msgstr "" -#: common/flatpak-utils.c:985 +#: common/flatpak-usb.c:164 common/flatpak-usb.c:171 #, c-format -msgid "Trailing text on line %d" -msgstr "第 %d 列末尾有文字" +msgid "USB query rule 'vnd' must have a valid 4-digit hexadecimal vendor id" +msgstr "" -#: common/flatpak-utils.c:989 +#: common/flatpak-usb.c:205 #, c-format -msgid "on line %d" -msgstr "在第 %d 列" +msgid "USB device queries must be in the form TYPE:DATA" +msgstr "" -#: common/flatpak-utils.c:1011 +#: common/flatpak-usb.c:225 #, c-format -msgid "Unexpected word '%s' on line %d" -msgstr "第 %2$d 列有非預期的「%1$s」單字" +msgid "Unknown USB query rule %s" +msgstr "" -#: common/flatpak-utils.c:2316 +#: common/flatpak-usb.c:248 #, c-format -msgid "Invalid %s: Missing group ‘%s’" -msgstr "%s 無效:缺少「%s」群組" +msgid "Empty USB query" +msgstr "" -#: common/flatpak-utils.c:2325 +#: common/flatpak-usb.c:274 #, c-format -msgid "Invalid %s: Missing key ‘%s’" -msgstr "%s 無效:缺少「%s」鍵" - -#: common/flatpak-utils.c:2375 -msgid "Invalid gpg key" -msgstr "無效的 GPG 金鑰" - -#: common/flatpak-utils.c:2772 -msgid "No extra data sources" -msgstr "沒有額外的資料來源" +msgid "Multiple USB query rules of the same type is not supported" +msgstr "" -#: common/flatpak-utils.c:5431 +#: common/flatpak-usb.c:283 #, c-format -msgid "Error copying 64x64 icon for component %s: %s\n" -msgstr "複製 %s 元件的 64x64 圖示時發生錯誤:%s\n" +msgid "'all' must not contain extra query rules" +msgstr "" -#: common/flatpak-utils.c:5437 +#: common/flatpak-usb.c:291 #, c-format -msgid "Error copying 128x128 icon for component %s: %s\n" -msgstr "複製 %s 元件的 128x128 圖示時發生錯誤:%s\n" +msgid "USB queries with 'dev' must also specify vendors" +msgstr "" -#: common/flatpak-utils.c:5684 -#, fuzzy, c-format -msgid "%s is end-of-life, ignoring for appstream" -msgstr "%s 已經 end-of-life,故忽略\n" +#: common/flatpak-utils.c:668 +msgid "Glob can't match apps" +msgstr "" -#: common/flatpak-utils.c:5719 -#, c-format -msgid "No appstream data for %s: %s\n" -msgstr "%s 沒有 appstream 資料:%s\n" +#: common/flatpak-utils.c:693 +msgid "Empty glob" +msgstr "glob 空白" -#: common/flatpak-utils.c:6689 -msgid "Invalid bundle, no ref in metadata" -msgstr "無效的套組,中介資料內沒有參照" +#: common/flatpak-utils.c:712 +msgid "Too many segments in glob" +msgstr "glob 中的區段過多" -#: common/flatpak-utils.c:6791 +#: common/flatpak-utils.c:733 #, c-format -msgid "Collection ‘%s’ of bundle doesn’t match collection ‘%s’ of remote" -msgstr "套組的「%s」收藏與遠端站點的「%s」收藏不符" - -#: common/flatpak-utils.c:6868 -msgid "Metadata in header and app are inconsistent" -msgstr "檔案標頭的中介資料與程式不一致" +msgid "Invalid glob character '%c'" +msgstr "「%c」glob 字元無效" -#: common/flatpak-utils.c:6953 common/flatpak-utils.c:7112 -msgid "Invalid OCI image config" -msgstr "" +#: common/flatpak-utils.c:787 +#, c-format +msgid "Missing glob on line %d" +msgstr "第 %d 列沒有 glob" -#: common/flatpak-utils.c:7015 common/flatpak-utils.c:7261 +#: common/flatpak-utils.c:791 #, c-format -msgid "Wrong layer checksum, expected %s, was %s" -msgstr "錯誤的層次檢核碼,預期為 %s,實際為 %s" +msgid "Trailing text on line %d" +msgstr "第 %d 列末尾有文字" -#: common/flatpak-utils.c:7095 +#: common/flatpak-utils.c:795 #, c-format -msgid "No ref specified for OCI image %s" -msgstr "%s OCI 映像檔未指定參照" +msgid "on line %d" +msgstr "在第 %d 列" -#: common/flatpak-utils.c:7101 +#: common/flatpak-utils.c:817 #, c-format -msgid "Wrong ref (%s) specified for OCI image %s, expected %s" -msgstr "錯誤的參照 (%s) 指定給了 %s OCI 映像檔,預期為 %s" +msgid "Unexpected word '%s' on line %d" +msgstr "第 %2$d 列有非預期的「%1$s」單字" -#: common/flatpak-utils.c:8302 +#: common/flatpak-utils.c:1980 #, c-format msgid "Invalid require-flatpak argument %s" msgstr "無效的 require-flatpak 引數 %s" -#: common/flatpak-utils.c:8312 common/flatpak-utils.c:8331 +#: common/flatpak-utils.c:1990 common/flatpak-utils.c:2009 #, c-format msgid "%s needs a later flatpak version (%s)" msgstr "%s 需要較新的 flatpak 版本 (%s)" -#: common/flatpak-utils.c:8375 -msgid "Empty string is not a number" -msgstr "空字串不是數字" - -#: common/flatpak-utils.c:8401 -#, c-format -msgid "“%s” is not an unsigned number" -msgstr "「%s」不是無號數" - -#: common/flatpak-utils.c:8411 -#, c-format -msgid "Number “%s” is out of bounds [%s, %s]" -msgstr "數字「%s」超出邊界 [%s, %s]" - #: oci-authenticator/flatpak-oci-authenticator.c:291 msgid "Not a oci remote, missing summary.xa.oci-repository" msgstr "" @@ -5626,40 +5727,44 @@ msgstr "" msgid "Invalid token" msgstr "無效的 GPG 金鑰" -#: portal/flatpak-portal.c:2264 +#: portal/flatpak-portal.c:2337 +#, c-format msgid "No portal support found" msgstr "找不到入口支援" -#: portal/flatpak-portal.c:2270 +#: portal/flatpak-portal.c:2343 msgid "Deny" msgstr "拒絕" -#: portal/flatpak-portal.c:2272 +#: portal/flatpak-portal.c:2345 msgid "Update" msgstr "更新" -#: portal/flatpak-portal.c:2277 +#: portal/flatpak-portal.c:2350 #, c-format msgid "Update %s?" msgstr "是否更新 %s?" -#: portal/flatpak-portal.c:2289 +#: portal/flatpak-portal.c:2362 msgid "The application wants to update itself." msgstr "應用程式想要自我更新。" -#: portal/flatpak-portal.c:2290 +#: portal/flatpak-portal.c:2363 msgid "Update access can be changed any time from the privacy settings." msgstr "更新存取權限隨時都可以在隱私權設定變更。" -#: portal/flatpak-portal.c:2315 +#: portal/flatpak-portal.c:2388 +#, c-format msgid "Application update not allowed" msgstr "不允許應用程式更新" -#: portal/flatpak-portal.c:2472 +#: portal/flatpak-portal.c:2546 +#, c-format msgid "Self update not supported, new version requires new permissions" msgstr "不支援自我更新,新版需要新權限" -#: portal/flatpak-portal.c:2654 portal/flatpak-portal.c:2671 +#: portal/flatpak-portal.c:2728 portal/flatpak-portal.c:2745 +#, c-format msgid "Update ended unexpectedly" msgstr "更新非預期結束" @@ -5879,6 +5984,30 @@ msgid "" "parental controls policy" msgstr "安裝被上級控制方針限制的軟體時需要通過身分驗證" +#, c-format +#~ msgid "" +#~ "Found similar ref(s) for ‘%s’ in remote ‘%s’ (%s).\n" +#~ "Use this remote?" +#~ msgstr "" +#~ "找到「%s」的相似參照(在「%s」(%s) 遠端)。\n" +#~ "是否使用此遠端?" + +#, fuzzy, c-format +#~ msgid "No entry for %s in remote '%s' summary cache " +#~ msgstr "在「%2$s」遠端的摘要 flatpak 快取中沒有 %1$s 條目 " + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: " +#~ msgstr "無法將 %s rebase 至 %s: " + +#, fuzzy, c-format +#~ msgid "Failed to uninstall %s for rebase to %s: %s\n" +#~ msgstr "無法重定 %s 的基底 (rebase) 至 %s:%s\n" + +#, fuzzy, c-format +#~ msgid "Unable to open directory %s" +#~ msgstr "無法連接系統匯流排" + #~ msgid "install" #~ msgstr "安裝" diff --git a/portal/Makefile.am.inc b/portal/Makefile.am.inc deleted file mode 100644 index dc45969..0000000 --- a/portal/Makefile.am.inc +++ /dev/null @@ -1,64 +0,0 @@ -libexec_PROGRAMS += \ - flatpak-portal \ - $(NULL) - -service_in_files += portal/flatpak-portal.service.in -systemduserunit_DATA += portal/flatpak-portal.service - -service_in_files += portal/org.freedesktop.portal.Flatpak.service.in -dbus_service_DATA += portal/org.freedesktop.portal.Flatpak.service - -nodist_flatpak_portal_SOURCES = \ - portal/flatpak-permission-dbus.c \ - portal/flatpak-permission-dbus.h \ - portal/flatpak-portal-dbus.c \ - portal/flatpak-portal-dbus.h \ - $(NULL) - -portal/flatpak-permission-dbus.c: data/org.freedesktop.impl.portal.PermissionStore.xml Makefile - mkdir -p $(builddir)/portal - $(AM_V_GEN) $(GDBUS_CODEGEN) \ - --interface-prefix org.freedesktop.impl.portal \ - --c-namespace XdpDbus \ - --generate-c-code $(builddir)/portal/flatpak-permission-dbus \ - $(srcdir)/data/org.freedesktop.impl.portal.PermissionStore.xml \ - $(NULL) - - -portal/flatpak-portal-dbus.c: data/org.freedesktop.portal.Flatpak.xml Makefile - mkdir -p $(builddir)/portal - $(AM_V_GEN) $(GDBUS_CODEGEN) \ - --interface-prefix org.freedesktop.portal \ - --c-namespace Portal \ - --generate-c-code $(builddir)/portal/flatpak-portal-dbus \ - $(srcdir)/data/org.freedesktop.portal.Flatpak.xml \ - $(NULL) - -portal/%-dbus.h: portal/%-dbus.c - @true # Built as a side-effect of the rules for the .c - -flatpak_portal_SOURCES = \ - portal/flatpak-portal.c \ - portal/flatpak-portal.h \ - portal/flatpak-portal-app-info.c \ - portal/flatpak-portal-app-info.h \ - portal/portal-impl.c \ - portal/portal-impl.h \ - common/flatpak-portal-error.c \ - common/flatpak-portal-error.h \ - $(NULL) - -BUILT_SOURCES += $(nodist_flatpak_portal_SOURCES) -CLEANFILES += $(nodist_flatpak_portal_SOURCES) - -flatpak_portal_LDADD = $(AM_LDADD) $(BASE_LIBS) $(OSTREE_LIBS) libflatpak-common.la libflatpak-common-base.la libglnx.la -flatpak_portal_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(SOUP_CFLAGS) \ - $(JSON_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DDATADIR=\"$(datadir)\" \ - $(NULL) -flatpak_portal_CPPFLAGS = $(AM_CPPFLAGS) -I$(builddir)/portal diff --git a/portal/flatpak-portal-app-info.c b/portal/flatpak-portal-app-info.c index 6d4e9ab..f6c8162 100644 --- a/portal/flatpak-portal-app-info.c +++ b/portal/flatpak-portal-app-info.c @@ -80,13 +80,14 @@ parse_app_id_from_fileinfo (int pid) g_autoptr(GKeyFile) metadata = NULL; root_path = g_strdup_printf ("/proc/%u/root", pid); - root_fd = openat (AT_FDCWD, root_path, O_RDONLY | O_NONBLOCK | O_DIRECTORY | O_CLOEXEC | O_NOCTTY); - if (root_fd == -1) + if (!glnx_opendirat (AT_FDCWD, root_path, TRUE, + &root_fd, + &local_error)) { /* Not able to open the root dir shouldn't happen. Probably the app died and * we're failing due to /proc/$pid not existing. In that case fail instead of treating this as privileged. */ - g_debug ("Unable to open %s", root_path); + g_info ("Unable to open process root directory: %s", local_error->message); return NULL; } @@ -198,7 +199,9 @@ name_owner_changed (GDBusConnection *connection, GVariant *parameters, gpointer user_data) { - const char *name, *from, *to; + g_autofree char *name = NULL; + g_autofree char *from = NULL; + g_autofree char *to = NULL; g_variant_get (parameters, "(sss)", &name, &from, &to); diff --git a/portal/flatpak-portal-app-info.h b/portal/flatpak-portal-app-info.h index fa70d5d..fe52aea 100644 --- a/portal/flatpak-portal-app-info.h +++ b/portal/flatpak-portal-app-info.h @@ -21,23 +21,7 @@ #ifndef __FLATPAK_PORTAL_APP_INFO_H__ #define __FLATPAK_PORTAL_APP_INFO_H__ -#define FLATPAK_METADATA_GROUP_APPLICATION "Application" -#define FLATPAK_METADATA_GROUP_RUNTIME "Runtime" -#define FLATPAK_METADATA_GROUP_INSTANCE "Instance" -#define FLATPAK_METADATA_GROUP_CONTEXT "Context" -#define FLATPAK_METADATA_KEY_NAME "name" -#define FLATPAK_METADATA_KEY_ARCH "arch" -#define FLATPAK_METADATA_KEY_RUNTIME "runtime" -#define FLATPAK_METADATA_KEY_BRANCH "branch" -#define FLATPAK_METADATA_KEY_EXTRA_ARGS "extra-args" -#define FLATPAK_METADATA_KEY_APP_COMMIT "app-commit" -#define FLATPAK_METADATA_KEY_RUNTIME_COMMIT "runtime-commit" -#define FLATPAK_METADATA_KEY_SHARED "shared" -#define FLATPAK_METADATA_KEY_SOCKETS "sockets" -#define FLATPAK_METADATA_KEY_DEVICES "devices" -#define FLATPAK_METADATA_KEY_DEVEL "devel" -#define FLATPAK_METADATA_KEY_INSTANCE_PATH "instance-path" -#define FLATPAK_METADATA_KEY_INSTANCE_ID "instance-id" +#include "flatpak-metadata-private.h" GKeyFile * flatpak_invocation_lookup_app_info (GDBusMethodInvocation *invocation, GCancellable *cancellable, diff --git a/portal/flatpak-portal.c b/portal/flatpak-portal.c index b3f82ff..991d0e0 100644 --- a/portal/flatpak-portal.c +++ b/portal/flatpak-portal.c @@ -31,6 +31,7 @@ #include #include +#include #include #include #include @@ -134,7 +135,7 @@ static gboolean handle_update (PortalFlatpakUpdateMonitor * static void skeleton_died_cb (gpointer data) { - g_debug ("skeleton finalized, exiting"); + g_info ("skeleton finalized, exiting"); g_main_loop_quit (main_loop); } @@ -143,7 +144,7 @@ unref_skeleton_in_timeout_cb (gpointer user_data) { static gboolean unreffed = FALSE; - g_debug ("unreffing portal main ref"); + g_info ("unreffing portal main ref"); if (!unreffed) { g_object_unref (portal); @@ -177,7 +178,7 @@ idle_timeout_cb (gpointer user_data) g_hash_table_size (client_pid_data_hash) == 0 && !has_update_monitors ()) { - g_debug ("Idle - unowning name"); + g_info ("Idle - unowning name"); unref_skeleton_in_timeout (); } @@ -226,7 +227,7 @@ child_watch_died (GPid pid, PidData *pid_data = user_data; g_autoptr(GVariant) signal_variant = NULL; - g_debug ("Client Pid %d died", pid_data->pid); + g_info ("Client Pid %d died", pid_data->pid); signal_variant = g_variant_ref_sink (g_variant_new ("(uu)", pid, status)); g_dbus_connection_emit_signal (session_bus, @@ -387,7 +388,7 @@ check_child_pid_status (void *user_data) else timeout = timeouts[MIN (data->attempt, G_N_ELEMENTS (timeouts) - 1)]; - g_debug ("Failed to read child PID, trying again in %d ms", timeout); + g_info ("Failed to read child PID, trying again in %d ms", timeout); /* The timer source only needs to be re-added if the timeout has changed, which won't happen while staying on the 100 or 1000ms timeouts. @@ -418,7 +419,7 @@ check_child_pid_status (void *user_data) g_warning ("Failed to find relative PID for %d: %s", child_pid, error->message); } - g_debug ("Emitting SpawnStarted(%u, %d)", pid, relative_child_pid); + g_info ("Emitting SpawnStarted(%u, %d)", pid, relative_child_pid); signal_variant = g_variant_ref_sink (g_variant_new ("(uu)", pid, relative_child_pid)); g_dbus_connection_emit_signal (session_bus, @@ -482,7 +483,7 @@ child_setup_func (gpointer user_data) sigset_t set; gsize i; - flatpak_close_fds_workaround (3); + g_fdwalk_set_cloexec (3); if (data->instance_id_fd != -1) drop_cloexec (data->instance_id_fd); @@ -542,8 +543,8 @@ child_setup_func (gpointer user_data) if (fd_map[i].from == data->tty) { if (ioctl (fd_map[i].final, TIOCSCTTY, 0) == -1) - g_debug ("ioctl(%d, TIOCSCTTY, 0) failed: %s", - fd_map[i].final, strerror (errno)); + g_info ("ioctl(%d, TIOCSCTTY, 0) failed: %s", + fd_map[i].final, strerror (errno)); break; } } @@ -774,6 +775,7 @@ handle_spawn (PortalFlatpak *object, g_auto(GStrv) runtime_parts = NULL; g_autofree char *runtime_commit = NULL; g_autofree char *instance_path = NULL; + g_autofree char *instance_id = NULL; g_auto(GStrv) extra_args = NULL; g_auto(GStrv) shares = NULL; g_auto(GStrv) sockets = NULL; @@ -781,6 +783,8 @@ handle_spawn (PortalFlatpak *object, g_auto(GStrv) unset_env = NULL; g_auto(GStrv) sandbox_expose = NULL; g_auto(GStrv) sandbox_expose_ro = NULL; + g_auto(GStrv) sandbox_a11y_own_names = NULL; + g_autoptr(FlatpakInstance) instance = NULL; g_autoptr(GVariant) sandbox_expose_fd = NULL; g_autoptr(GVariant) sandbox_expose_fd_ro = NULL; g_autoptr(GVariant) app_fd = NULL; @@ -797,6 +801,7 @@ handle_spawn (PortalFlatpak *object, glnx_autofd int env_fd = -1; const char *flatpak; gboolean testing = FALSE; + g_autofree char *app_id_prefix = NULL; child_setup_data.instance_id_fd = -1; child_setup_data.env_fd = -1; @@ -812,13 +817,13 @@ handle_spawn (PortalFlatpak *object, FLATPAK_METADATA_KEY_NAME, NULL); g_assert (app_id != NULL); - g_debug ("spawn() called from app: '%s'", app_id); + g_info ("spawn() called from app: '%s'", app_id); if (*app_id == 0 && g_getenv ("FLATPAK_PORTAL_MOCK_FLATPAK") != NULL) { /* Pretend we had been called from an app for test purposes */ testing = TRUE; - g_debug ("In unit tests, behaving as though app ID was com.example.App"); + g_info ("In unit tests, behaving as though app ID was com.example.App"); g_clear_pointer (&app_id, g_free); app_id = g_strdup ("com.example.App"); } @@ -896,6 +901,7 @@ handle_spawn (PortalFlatpak *object, g_variant_lookup (arg_options, "sandbox-expose", "^as", &sandbox_expose); g_variant_lookup (arg_options, "sandbox-expose-ro", "^as", &sandbox_expose_ro); g_variant_lookup (arg_options, "sandbox-flags", "u", &sandbox_flags); + g_variant_lookup (arg_options, "sandbox-a11y-own-names", "^as", &sandbox_a11y_own_names); sandbox_expose_fd = g_variant_lookup_value (arg_options, "sandbox-expose-fd", G_VARIANT_TYPE ("ah")); sandbox_expose_fd_ro = g_variant_lookup_value (arg_options, "sandbox-expose-fd-ro", G_VARIANT_TYPE ("ah")); g_variant_lookup (arg_options, "unset-env", "^as", &unset_env); @@ -923,7 +929,7 @@ handle_spawn (PortalFlatpak *object, { const char *expose = sandbox_expose[i]; - g_debug ("exposing %s", expose); + g_info ("exposing %s", expose); if (!is_valid_expose (expose, &error)) { g_dbus_method_invocation_return_gerror (invocation, error); @@ -934,7 +940,7 @@ handle_spawn (PortalFlatpak *object, for (i = 0; sandbox_expose_ro != NULL && sandbox_expose_ro[i] != NULL; i++) { const char *expose = sandbox_expose_ro[i]; - g_debug ("exposing %s", expose); + g_info ("exposing %s", expose); if (!is_valid_expose (expose, &error)) { g_dbus_method_invocation_return_gerror (invocation, error); @@ -942,7 +948,27 @@ handle_spawn (PortalFlatpak *object, } } - g_debug ("Running spawn command %s", arg_argv[0]); + app_id_prefix = g_strdup_printf ("%s.", app_id); + for (i = 0; sandbox_a11y_own_names != NULL && sandbox_a11y_own_names[i] != NULL; i++) + { + if (!(sandbox_flags & FLATPAK_SPAWN_SANDBOX_FLAGS_ALLOW_A11Y)) + { + g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, + G_DBUS_ERROR_INVALID_ARGS, + "Invalid sandbox a11y own name, accessibility disabled in the sandbox"); + return G_DBUS_METHOD_INVOCATION_HANDLED; + } + + if (!g_str_has_prefix (sandbox_a11y_own_names[i], app_id_prefix)) + { + g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, + G_DBUS_ERROR_INVALID_ARGS, + "Invalid sandbox a11y own name, doesn't match app id"); + return G_DBUS_METHOD_INVOCATION_HANDLED; + } + } + + g_info ("Running spawn command %s", arg_argv[0]); n_fds = 0; if (fds != NULL) @@ -989,8 +1015,36 @@ handle_spawn (PortalFlatpak *object, max_fd = MAX (max_fd, fd_map_entry.from); } - /* TODO: Ideally we should let `flatpak run` inherit the portal's - * environment, in case e.g. a LD_LIBRARY_PATH is needed to be able + if (testing) + { + instance_id = g_strdup ("11223344"); + } + else + { + instance_id = g_key_file_get_string (app_info, + FLATPAK_METADATA_GROUP_INSTANCE, + FLATPAK_METADATA_KEY_INSTANCE_ID, NULL); + } + + if (!instance_id) + { + g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, + G_DBUS_ERROR_INVALID_ARGS, + "Caller has no instance id"); + return G_DBUS_METHOD_INVOCATION_HANDLED; + } + + instance = flatpak_instance_new_for_id (instance_id); + if (!instance) + { + g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, + G_DBUS_ERROR_FAILED, + "Could not access caller instance"); + return G_DBUS_METHOD_INVOCATION_HANDLED; + } + + /* TODO: Ideally we should let `flatpak run` inherit the run environment + * of the instance, in case e.g. a LD_LIBRARY_PATH is needed to be able * to run `flatpak run`, but tell it to start from a blank environment * when running the Flatpak app; but this isn't currently possible, so * for now we preserve existing behaviour. */ @@ -1001,7 +1055,29 @@ handle_spawn (PortalFlatpak *object, } else { - env = g_strdupv (original_environ); + static const char * const mock_run_environ[] = { "FOO=bar", NULL }; + + if (testing) + env = g_strdupv ((GStrv) mock_run_environ); + else + env = flatpak_instance_get_run_environ (instance, &error); + + if (env == NULL) + { + if (g_error_matches (error, G_FILE_ERROR, G_FILE_ERROR_NOENT)) + { + g_warning ("Environment for \"flatpak run\" was not found, falling back to current environment"); + env = g_strdupv (original_environ); + } + else + { + g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, + G_DBUS_ERROR_INVALID_ARGS, + "Could not load environment for \"flatpak run\": %s", + error->message); + return G_DBUS_METHOD_INVOCATION_HANDLED; + } + } } if ((flatpak = g_getenv ("FLATPAK_PORTAL_MOCK_FLATPAK")) != NULL) @@ -1046,8 +1122,14 @@ handle_spawn (PortalFlatpak *object, } if (sandbox_flags & FLATPAK_SPAWN_SANDBOX_FLAGS_ALLOW_DBUS) g_ptr_array_add (flatpak_argv, g_strdup ("--session-bus")); + if (sandbox_flags & FLATPAK_SPAWN_SANDBOX_FLAGS_ALLOW_A11Y) - g_ptr_array_add (flatpak_argv, g_strdup ("--a11y-bus")); + { + g_ptr_array_add (flatpak_argv, g_strdup ("--a11y-bus")); + + for (i = 0; sandbox_a11y_own_names != NULL && sandbox_a11y_own_names[i] != NULL; i++) + g_ptr_array_add (flatpak_argv, g_strdup_printf ("--a11y-own-name=%s", sandbox_a11y_own_names[i])); + } } else { @@ -1128,7 +1210,7 @@ handle_spawn (PortalFlatpak *object, return G_DBUS_METHOD_INVOCATION_HANDLED; } - env_fd = glnx_steal_fd (&env_tmpf.fd); + env_fd = g_steal_fd (&env_tmpf.fd); /* Use a fd that hasn't been used yet. We might have to reshuffle * fd_map_entry.to, a bit later. */ @@ -1170,7 +1252,6 @@ handle_spawn (PortalFlatpak *object, if (expose_pids || share_pids) { - g_autofree char *instance_id = NULL; int sender_pid1 = 0; if (!(supports & FLATPAK_SPAWN_SUPPORT_FLAGS_EXPOSE_PIDS)) @@ -1181,16 +1262,7 @@ handle_spawn (PortalFlatpak *object, return G_DBUS_METHOD_INVOCATION_HANDLED; } - instance_id = g_key_file_get_string (app_info, - FLATPAK_METADATA_GROUP_INSTANCE, - FLATPAK_METADATA_KEY_INSTANCE_ID, NULL); - - if (instance_id) - { - g_autoptr(FlatpakInstance) instance = flatpak_instance_new_for_id (instance_id); - sender_pid1 = flatpak_instance_get_child_pid (instance); - } - + sender_pid1 = flatpak_instance_get_child_pid (instance); if (sender_pid1 == 0) { g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, @@ -1260,7 +1332,7 @@ handle_spawn (PortalFlatpak *object, for (i = 0; sandbox_expose_ro != NULL && sandbox_expose_ro[i] != NULL; i++) { const char *expose = sandbox_expose_ro[i]; - g_debug ("exposing %s", expose); + g_info ("exposing %s", expose); } if (sandbox_expose_fd != NULL) @@ -1284,8 +1356,8 @@ handle_spawn (PortalFlatpak *object, } else { - g_debug ("unable to get path for sandbox-exposed fd %d, ignoring: %s", - handle_fd, error->message); + g_info ("unable to get path for sandbox-exposed fd %d, ignoring: %s", + handle_fd, error->message); g_clear_error (&error); } } @@ -1321,8 +1393,8 @@ handle_spawn (PortalFlatpak *object, } else { - g_debug ("unable to get path for sandbox-exposed fd %d, ignoring: %s", - handle_fd, error->message); + g_info ("unable to get path for sandbox-exposed fd %d, ignoring: %s", + handle_fd, error->message); g_clear_error (&error); } } @@ -1372,7 +1444,7 @@ handle_spawn (PortalFlatpak *object, return G_DBUS_METHOD_INVOCATION_HANDLED; } - g_debug ("Using %s as /app instead of app", path); + g_info ("Using %s as /app instead of app", path); g_ptr_array_add (flatpak_argv, g_strdup_printf ("--app-path=%s", path)); } else if (empty_app) @@ -1405,7 +1477,7 @@ handle_spawn (PortalFlatpak *object, return G_DBUS_METHOD_INVOCATION_HANDLED; } - g_debug ("Using %s as /usr instead of runtime", path); + g_info ("Using %s as /usr instead of runtime", path); g_ptr_array_add (flatpak_argv, g_strdup_printf ("--usr-path=%s", path)); } @@ -1442,7 +1514,7 @@ handle_spawn (PortalFlatpak *object, g_string_append (cmd, flatpak_argv->pdata[i]); } - g_debug ("Starting: %s\n", cmd->str); + g_info ("Starting: %s\n", cmd->str); } /* We make a second pass over the fds to find if any "to" fd index @@ -1476,7 +1548,8 @@ handle_spawn (PortalFlatpak *object, child_setup_data.fd_map = &g_array_index (fd_map, FdMapEntry, 0); child_setup_data.fd_map_len = fd_map->len; - /* We use LEAVE_DESCRIPTORS_OPEN to work around dead-lock, see flatpak_close_fds_workaround */ + /* We use LEAVE_DESCRIPTORS_OPEN and close them in the child_setup + * to work around a deadlock in GLib < 2.60 */ if (!g_spawn_async_with_pipes (NULL, (char **) flatpak_argv->pdata, env, @@ -1513,7 +1586,7 @@ handle_spawn (PortalFlatpak *object, pid_data, NULL); - g_debug ("Client Pid is %d", pid_data->pid); + g_info ("Client Pid is %d", pid_data->pid); g_hash_table_replace (client_pid_data_hash, GUINT_TO_POINTER (pid_data->pid), pid_data); @@ -1531,7 +1604,7 @@ handle_spawn_signal (PortalFlatpak *object, { PidData *pid_data = NULL; - g_debug ("spawn_signal(%d %d)", arg_pid, arg_signal); + g_info ("spawn_signal(%d %d)", arg_pid, arg_signal); pid_data = g_hash_table_lookup (client_pid_data_hash, GUINT_TO_POINTER (arg_pid)); if (pid_data == NULL || @@ -1543,7 +1616,7 @@ handle_spawn_signal (PortalFlatpak *object, return G_DBUS_METHOD_INVOCATION_HANDLED; } - g_debug ("Sending signal %d to client pid %d", arg_signal, arg_pid); + g_info ("Sending signal %d to client pid %d", arg_signal, arg_pid); if (arg_to_process_group) killpg (pid_data->pid, arg_signal); @@ -1742,7 +1815,7 @@ create_update_monitor (GDBusMethodInvocation *invocation, g_object_set_data_full (G_OBJECT (monitor), "update-monitor-data", m, update_monitor_data_free); g_object_set_data_full (G_OBJECT (monitor), "required-sender", g_strdup (m->sender), g_free); - g_debug ("created UpdateMonitor for %s/%s at %s", m->name, m->branch, obj_path); + g_info ("created UpdateMonitor for %s/%s at %s", m->name, m->branch, obj_path); return monitor; } @@ -1849,12 +1922,12 @@ check_for_updates (PortalFlatpakUpdateMonitor *monitor) installation_path = update_monitor_get_installation_path (monitor); - g_debug ("Checking for updates for %s/%s/%s in %s", m->name, m->arch, m->branch, flatpak_file_get_path_cached (installation_path)); + g_info ("Checking for updates for %s/%s/%s in %s", m->name, m->arch, m->branch, flatpak_file_get_path_cached (installation_path)); installation = lookup_installation_for_path (installation_path, &error); if (installation == NULL) { - g_debug ("Unable to find installation for path %s: %s", flatpak_file_get_path_cached (installation_path), error->message); + g_info ("Unable to find installation for path %s: %s", flatpak_file_get_path_cached (installation_path), error->message); return; } @@ -1864,7 +1937,7 @@ check_for_updates (PortalFlatpakUpdateMonitor *monitor) m->cancellable, &error); if (installed_ref == NULL) { - g_debug ("getting installed ref failed: %s", error->message); + g_info ("getting installed ref failed: %s", error->message); return; /* Never report updates for uninstalled refs */ } @@ -1889,7 +1962,7 @@ check_for_updates (PortalFlatpakUpdateMonitor *monitor) /* Probably some network issue. * Fall back to the local_commit to at least be able to pick up already installed updates. */ - g_debug ("getting remote ref failed: %s", error->message); + g_info ("getting remote ref failed: %s", error->message); g_clear_error (&error); remote_commit = local_commit; } @@ -1901,7 +1974,7 @@ check_for_updates (PortalFlatpakUpdateMonitor *monitor) /* This can happen if we're offline and there is an update from an usb drive. * Not much we can do in terms of reporting it, but at least handle the case */ - g_debug ("Unknown remote commit, setting to local_commit"); + g_info ("Unknown remote commit, setting to local_commit"); remote_commit = local_commit; } } @@ -1918,7 +1991,7 @@ check_for_updates (PortalFlatpakUpdateMonitor *monitor) g_free (m->reported_remote_commit); m->reported_remote_commit = g_strdup (remote_commit); - g_debug ("Found update for %s/%s/%s, local: %s, remote: %s", m->name, m->arch, m->branch, local_commit, remote_commit); + g_info ("Found update for %s/%s/%s, local: %s, remote: %s", m->name, m->arch, m->branch, local_commit, remote_commit); g_variant_builder_init (&builder, G_VARIANT_TYPE_VARDICT); g_variant_builder_add (&builder, "{sv}", "running-commit", g_variant_new_string (m->commit)); g_variant_builder_add (&builder, "{sv}", "local-commit", g_variant_new_string (local_commit)); @@ -2008,12 +2081,12 @@ check_all_for_updates_cb (void *data) if (!opt_poll_when_metered && g_network_monitor_get_network_metered (network_monitor)) { - g_debug ("Skipping update check on metered network"); + g_info ("Skipping update check on metered network"); return G_SOURCE_CONTINUE; } - g_debug ("Checking all update monitors"); + g_info ("Checking all update monitors"); G_LOCK (update_monitors); update_monitors_timeout = 0; @@ -2044,7 +2117,7 @@ handle_create_update_monitor (PortalFlatpak *object, token = g_strdup_printf ("%d", g_random_int_range (0, 1000)); sender = g_dbus_method_invocation_get_sender (invocation); - g_debug ("handle CreateUpdateMonitor from %s", sender); + g_info ("handle CreateUpdateMonitor from %s", sender); sender_escaped = g_strdup (sender + 1); for (i = 0; sender_escaped[i]; i++) @@ -2092,7 +2165,7 @@ handle_close (PortalFlatpakUpdateMonitor *monitor, { update_monitor_close (monitor); - g_debug ("handle UpdateMonitor.Close"); + g_info ("handle UpdateMonitor.Close"); portal_flatpak_update_monitor_complete_close (monitor, invocation); @@ -2119,7 +2192,7 @@ close_update_monitors_in_thread_func (GTask *task, PortalFlatpakUpdateMonitor *monitor = l->data; UpdateMonitorData *m = update_monitor_get_data (monitor); - g_debug ("closing monitor %s", m->obj_path); + g_info ("closing monitor %s", m->obj_path); update_monitor_close (monitor); } } @@ -2134,7 +2207,7 @@ close_update_monitors_for_sender (const char *sender) g_autoptr(GTask) task = g_task_new (NULL, NULL, NULL, NULL); g_task_set_task_data (task, list, deep_free_object_list); - g_debug ("%s dropped off the bus, closing monitors", sender); + g_info ("%s dropped off the bus, closing monitors", sender); g_task_run_in_thread (task, close_update_monitors_in_thread_func); } } @@ -2149,7 +2222,7 @@ get_update_permission (const char *app_id) if (permission_store == NULL) { - g_debug ("No portals installed, assume no permissions"); + g_info ("No portals installed, assume no permissions"); return NO; } @@ -2162,7 +2235,7 @@ get_update_permission (const char *app_id) &error)) { g_dbus_error_strip_remote_error (error); - g_debug ("No updates permissions found: %s", error->message); + g_info ("No updates permissions found: %s", error->message); g_clear_error (&error); } @@ -2181,7 +2254,7 @@ get_update_permission (const char *app_id) } } - g_debug ("Updates permissions for %s: %d", app_id, ret); + g_info ("Updates permissions for %s: %d", app_id, ret); return ret; } @@ -2333,7 +2406,7 @@ emit_progress (PortalFlatpakUpdateMonitor *monitor, GVariantBuilder builder; g_autoptr(GError) error = NULL; - g_debug ("%d/%d ops, progress %d, status: %d", op, n_ops, progress, status); + g_info ("%d/%d ops, progress %d, status: %d", op, n_ops, progress, status); g_variant_builder_init (&builder, G_VARIANT_TYPE_VARDICT); if (n_ops > 0) @@ -2441,7 +2514,8 @@ static gboolean transaction_ready (FlatpakTransaction *transaction, TransactionData *d) { - GList *ops = flatpak_transaction_get_operations (transaction); + g_autolist(FlatpakTransactionOperation) ops = + flatpak_transaction_get_operations (transaction); int status; GList *l; @@ -2570,7 +2644,7 @@ update_child_setup_func (gpointer user_data) int *socket = user_data; dup2 (*socket, 3); - flatpak_close_fds_workaround (4); + g_fdwalk_set_cloexec (4); } /* This is the meat of the update process, its run out of process (via @@ -2699,7 +2773,7 @@ handle_update_responses (PortalFlatpakUpdateMonitor *monitor, v = read_variant (in, m->cancellable, error); if (v == NULL) { - g_debug ("Reading message from child update process failed %s", (*error)->message); + g_info ("Reading message from child update process failed %s", (*error)->message); return FALSE; } @@ -2781,7 +2855,7 @@ handle_update (PortalFlatpakUpdateMonitor *monitor, g_autoptr(GTask) task = NULL; gboolean already_installing = FALSE; - g_debug ("handle UpdateMonitor.Update"); + g_info ("handle UpdateMonitor.Update"); g_mutex_lock (&m->lock); if (m->installing) @@ -2845,7 +2919,7 @@ name_owner_changed (GDBusConnection *connection, for (l = list; l; l = l->next) { pid_data = l->data; - g_debug ("%s dropped off the bus, killing %d", pid_data->client, pid_data->pid); + g_info ("%s dropped off the bus, killing %d", pid_data->client, pid_data->pid); killpg (pid_data->pid, SIGINT); } @@ -2859,19 +2933,6 @@ name_owner_changed (GDBusConnection *connection, #define DBUS_INTERFACE_DBUS DBUS_NAME_DBUS #define DBUS_PATH_DBUS "/org/freedesktop/DBus" -static gboolean -supports_expose_pids (void) -{ - const char *path = g_find_program_in_path (flatpak_get_bwrap ()); - struct stat st; - - /* This is supported only if bwrap exists and is not setuid */ - return - path != NULL && - stat (path, &st) == 0 && - (st.st_mode & S_ISUID) == 0; -} - static void on_bus_acquired (GDBusConnection *connection, const gchar *name, @@ -2879,7 +2940,7 @@ on_bus_acquired (GDBusConnection *connection, { GError *error = NULL; - g_debug ("Bus acquired, creating skeleton"); + g_info ("Bus acquired, creating skeleton"); g_dbus_connection_set_exit_on_close (connection, FALSE); @@ -2908,7 +2969,7 @@ on_bus_acquired (GDBusConnection *connection, g_dbus_interface_skeleton_set_flags (G_DBUS_INTERFACE_SKELETON (portal), G_DBUS_INTERFACE_SKELETON_FLAGS_HANDLE_METHOD_INVOCATIONS_IN_THREAD); - portal_flatpak_set_version (PORTAL_FLATPAK (portal), 6); + portal_flatpak_set_version (PORTAL_FLATPAK (portal), 7); portal_flatpak_set_supports (PORTAL_FLATPAK (portal), supports); g_signal_connect (portal, "handle-spawn", G_CALLBACK (handle_spawn), NULL); @@ -2932,7 +2993,7 @@ on_name_acquired (GDBusConnection *connection, const gchar *name, gpointer user_data) { - g_debug ("Name acquired"); + g_info ("Name acquired"); } static void @@ -2940,7 +3001,7 @@ on_name_lost (GDBusConnection *connection, const gchar *name, gpointer user_data) { - g_debug ("Name lost"); + g_info ("Name lost"); unref_skeleton_in_timeout (); } @@ -2955,7 +3016,7 @@ binary_file_changed_cb (GFileMonitor *file_monitor, if (!got_it) { - g_debug ("binary file changed"); + g_info ("binary file changed"); unref_skeleton_in_timeout (); } @@ -2984,7 +3045,7 @@ main (int argc, ssize_t exe_path_len; gboolean replace; gboolean show_version; - GOptionContext *context; + g_autoptr(GOptionContext) context = NULL; GBusNameOwnerFlags flags; g_autoptr(GError) error = NULL; const GOptionEntry options[] = { @@ -3044,7 +3105,7 @@ main (int argc, } if (opt_verbose) - g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG | G_LOG_LEVEL_INFO, message_handler, NULL); + g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, message_handler, NULL); client_pid_data_hash = g_hash_table_new_full (NULL, NULL, NULL, (GDestroyNotify) pid_data_free); @@ -3077,7 +3138,7 @@ main (int argc, flatpak_connection_track_name_owners (session_bus); - if (supports_expose_pids ()) + if (flatpak_bwrap_is_unprivileged ()) supports |= FLATPAK_SPAWN_SUPPORT_FLAGS_EXPOSE_PIDS; flags = G_BUS_NAME_OWNER_FLAGS_ALLOW_REPLACEMENT; diff --git a/portal/meson.build b/portal/meson.build new file mode 100644 index 0000000..a3ebf71 --- /dev/null +++ b/portal/meson.build @@ -0,0 +1,59 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +permission_gdbus = gnome.gdbus_codegen( + 'flatpak-permission-dbus', + sources: [ + '../data/org.freedesktop.impl.portal.PermissionStore.xml', + ], + interface_prefix : 'org.freedesktop.impl.portal', + namespace : 'XdpDbus', +) + +portal_gdbus = gnome.gdbus_codegen( + 'flatpak-portal-dbus', + sources: [ + '../data/org.freedesktop.portal.Flatpak.xml', + ], + interface_prefix : 'org.freedesktop.portal', + namespace : 'Portal', +) + +executable( + 'flatpak-portal', + dependencies : [ + threads_dep, + base_deps, + json_glib_dep, + libflatpak_common_base_dep, + libflatpak_common_dep, + libglnx_dep, + libostree_dep, + libsoup_dep, + ], + include_directories : [ + include_directories('.'), + ], + install : true, + install_dir : get_option('libexecdir'), + sources : [ + 'flatpak-portal.c', + 'flatpak-portal-app-info.c', + 'portal-impl.c', + '../common/flatpak-portal-error.c', + ] + permission_gdbus + portal_gdbus, +) + +configure_file( + input : 'flatpak-portal.service.in', + output : 'flatpak-portal.service', + configuration : service_conf_data, + install_dir : get_option('systemduserunitdir'), +) + +configure_file( + input : 'org.freedesktop.portal.Flatpak.service.in', + output : 'org.freedesktop.portal.Flatpak.service', + configuration : service_conf_data, + install_dir : dbus_service_dir, +) diff --git a/portal/portal-impl.c b/portal/portal-impl.c index 3a78171..ffb6e05 100644 --- a/portal/portal-impl.c +++ b/portal/portal-impl.c @@ -50,7 +50,7 @@ register_portal (const char *path, gboolean opt_verbose, GError **error) g_autoptr(PortalImplementation) impl = g_new0 (PortalImplementation, 1); int i; - g_debug ("loading %s", path); + g_info ("loading %s", path); if (!g_key_file_load_from_file (keyfile, path, G_KEY_FILE_NONE, error)) return FALSE; @@ -92,9 +92,9 @@ register_portal (const char *path, gboolean opt_verbose, GError **error) if (opt_verbose) { g_autofree char *uses = g_strjoinv (", ", impl->use_in); - g_debug ("portal implementation for %s", uses); + g_info ("portal implementation for %s", uses); for (i = 0; impl->interfaces[i]; i++) - g_debug ("portal implementation supports %s", impl->interfaces[i]); + g_info ("portal implementation supports %s", impl->interfaces[i]); } implementations = g_list_prepend (implementations, impl); @@ -125,7 +125,7 @@ load_installed_portals (gboolean opt_verbose) if (portal_dir == NULL) portal_dir = DATADIR "/xdg-desktop-portal/portals"; - g_debug ("load portals from %s", portal_dir); + g_info ("load portals from %s", portal_dir); dir = g_file_new_for_path (portal_dir); enumerator = g_file_enumerate_children (dir, "*", G_FILE_QUERY_INFO_NONE, NULL, NULL); @@ -199,7 +199,7 @@ find_portal_implementation (const char *interface) if (g_strv_case_contains ((const char **)impl->use_in, desktops[i])) { - g_debug ("Using %s for %s in %s", impl->source, interface, desktops[i]); + g_info ("Using %s for %s in %s", impl->source, interface, desktops[i]); return impl; } } @@ -213,7 +213,7 @@ find_portal_implementation (const char *interface) if (!g_strv_contains ((const char **)impl->interfaces, interface)) continue; - g_debug ("Falling back to %s for %s", impl->source, interface); + g_info ("Falling back to %s for %s", impl->source, interface); return impl; } diff --git a/profile/flatpak.csh b/profile/flatpak.csh new file mode 100644 index 0000000..7921d5a --- /dev/null +++ b/profile/flatpak.csh @@ -0,0 +1,20 @@ +set _flatpak=`where flatpak | head -n 1` +if ( ${%_flatpak} > 0 ) then + if ( ! ${?XDG_DATA_HOME} ) setenv XDG_DATA_HOME "$HOME/.local/share" + if ( ${%XDG_DATA_HOME} == 0 ) setenv XDG_DATA_HOME "$HOME/.local/share" + if ( ! ${?XDG_DATA_DIRS} ) setenv XDG_DATA_DIRS /usr/local/share:/usr/share + if ( ${%XDG_DATA_DIRS} == 0 ) setenv XDG_DATA_DIRS /usr/local/share:/usr/share + set _new_dirs="" + foreach _line (`(unset G_MESSAGES_DEBUG; echo "${XDG_DATA_HOME}"/flatpak; setenv GIO_USE_VFS local; flatpak --installations)`) + set _line=${_line}/exports/share + if ( ":${XDG_DATA_DIRS}:" =~ *:${_line}:* ) continue + if ( ":${XDG_DATA_DIRS}:" =~ *:${_line}/:* ) continue + if ( ${%_new_dirs} > 0 ) set _new_dirs="${_new_dirs}:" + set _new_dirs="${_new_dirs}${_line}" + end + if ( ${%_new_dirs} > 0 ) then + set _new_dirs="${_new_dirs}:" + setenv XDG_DATA_DIRS "${_new_dirs}${XDG_DATA_DIRS}" + endif +endif +unset _flatpak _line _new_dirs diff --git a/profile/meson.build b/profile/meson.build new file mode 100644 index 0000000..2faacc6 --- /dev/null +++ b/profile/meson.build @@ -0,0 +1,12 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +install_data( + 'flatpak.csh', + 'flatpak.sh', + install_dir : profile_dir, +) +install_data( + 'flatpak.fish', + install_dir : get_option('datadir') / 'fish' / 'vendor_conf.d', +) diff --git a/revokefs/Makefile.am.inc b/revokefs/Makefile.am.inc deleted file mode 100644 index 3db498b..0000000 --- a/revokefs/Makefile.am.inc +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright (C) 2016 Colin Walters -# Copyright (C) 2018 Alexander Larsson -# -# SPDX-License-Identifier: LGPL-2.0+ -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the -# Free Software Foundation, Inc., 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - -libexec_PROGRAMS += revokefs-fuse - -noinst_PROGRAMS += revokefs-demo - -revokefs_fuse_SOURCES = revokefs/main.c revokefs/writer.c revokefs/writer.h - -revokefs_fuse_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 $(FUSE_CFLAGS) -revokefs_fuse_LDADD = libglnx.la $(BASE_LIBS) $(FUSE_LIBS) - -revokefs_demo_SOURCES = revokefs/demo.c -revokefs_demo_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) -revokefs_demo_LDADD = $(BASE_LIBS) diff --git a/revokefs/demo.c b/revokefs/demo.c index 6685314..12b298e 100644 --- a/revokefs/demo.c +++ b/revokefs/demo.c @@ -30,7 +30,7 @@ main (int argc, char *argv[]) socket_0 = g_strdup_printf ("--socket=%d", sockets[0]); socket_1 = g_strdup_printf ("--socket=%d", sockets[1]); - char *backend_argv[] = + const char * const backend_argv[] = { "./revokefs-fuse", "--backend", @@ -42,7 +42,7 @@ main (int argc, char *argv[]) /* Don't inherit fuse socket in backend */ fcntl (sockets[1], F_SETFD, FD_CLOEXEC); if (!g_spawn_async (NULL, - backend_argv, + (char **) backend_argv, NULL, G_SPAWN_LEAVE_DESCRIPTORS_OPEN, NULL, NULL, @@ -53,7 +53,7 @@ main (int argc, char *argv[]) } close (sockets[0]); /* Close backend side now so it doesn't get into the fuse child */ - char *fuse_argv[] = + const char * const fuse_argv[] = { "./revokefs-fuse", socket_1, @@ -63,7 +63,7 @@ main (int argc, char *argv[]) }; if (!g_spawn_async (NULL, - fuse_argv, + (char **) fuse_argv, NULL, G_SPAWN_LEAVE_DESCRIPTORS_OPEN, NULL, NULL, diff --git a/revokefs/main.c b/revokefs/main.c index 6d46b92..54908d8 100644 --- a/revokefs/main.c +++ b/revokefs/main.c @@ -123,7 +123,7 @@ callback_readdir (const char *path, void *buf, fuse_fill_dir_t filler, } else { - dfd = openat (basefd, path, O_RDONLY | O_NONBLOCK | O_DIRECTORY | O_CLOEXEC | O_NOCTTY); + dfd = glnx_opendirat_with_errno (basefd, path, TRUE); if (dfd == -1) return -errno; } @@ -546,27 +546,31 @@ main (int argc, char *argv[]) struct fuse_args args = FUSE_ARGS_INIT (argc, argv); int res; struct revokefs_config conf = { -1, -1 }; + int status = 0; res = fuse_opt_parse (&args, &conf, revokefs_opts, revokefs_opt_proc); if (res != 0) { fprintf (stderr, "Invalid arguments\n"); fprintf (stderr, "see `%s -h' for usage\n", argv[0]); - exit (EXIT_FAILURE); + status = EXIT_FAILURE; + goto out; } if (base_path == NULL) { fprintf (stderr, "Missing basepath\n"); fprintf (stderr, "see `%s -h' for usage\n", argv[0]); - exit (EXIT_FAILURE); + status = EXIT_FAILURE; + goto out; } - basefd = openat (AT_FDCWD, base_path, O_RDONLY | O_NONBLOCK | O_DIRECTORY | O_CLOEXEC | O_NOCTTY); + basefd = glnx_opendirat_with_errno (AT_FDCWD, base_path, TRUE); if (basefd == -1) { perror ("opening basepath: "); - exit (EXIT_FAILURE); + status = EXIT_FAILURE; + goto out; } if (conf.backend) @@ -574,11 +578,12 @@ main (int argc, char *argv[]) if (conf.socket_fd == -1) { fprintf (stderr, "No --socket passed, required for --backend\n"); - exit (EXIT_FAILURE); + status = EXIT_FAILURE; + goto out; } do_writer (basefd, conf.socket_fd, conf.exit_with_fd); - exit (0); + goto out; } if (conf.socket_fd != -1) @@ -593,14 +598,16 @@ main (int argc, char *argv[]) if (socketpair(AF_UNIX, SOCK_SEQPACKET, 0, sockets)) { perror ("Failed to create socket pair"); - exit (EXIT_FAILURE); + status = EXIT_FAILURE; + goto out; } pid = fork (); if (pid == -1) { perror ("Failed to fork writer"); - exit (EXIT_FAILURE); + status = EXIT_FAILURE; + goto out; } if (pid == 0) @@ -608,7 +615,7 @@ main (int argc, char *argv[]) /* writer process */ close (sockets[0]); do_writer (basefd, sockets[1], -1); - exit (0); + goto out; } /* Main process */ @@ -618,5 +625,7 @@ main (int argc, char *argv[]) fuse_main (args.argc, args.argv, &callback_oper, NULL); - return 0; +out: + fuse_opt_free_args (&args); + return status; } diff --git a/revokefs/meson.build b/revokefs/meson.build new file mode 100644 index 0000000..9f75112 --- /dev/null +++ b/revokefs/meson.build @@ -0,0 +1,24 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +executable( + 'revokefs-fuse', + dependencies : [ + base_deps, + fuse_dep, + libglnx_dep, + ], + install : true, + install_dir : get_option('libexecdir'), + sources : [ + 'main.c', + 'writer.c', + ], +) + +executable( + 'revokefs-demo', + install : false, + sources : ['demo.c'], + dependencies : base_deps, +) diff --git a/scripts/meson.build b/scripts/meson.build new file mode 100644 index 0000000..211acbe --- /dev/null +++ b/scripts/meson.build @@ -0,0 +1,9 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +install_data( + 'flatpak-bisect', + 'flatpak-coredumpctl', + install_dir : get_option('bindir'), + install_mode : 'rwxr-xr-x', +) diff --git a/selinux/Makefile.am.inc b/selinux/Makefile.am.inc deleted file mode 100644 index fab5555..0000000 --- a/selinux/Makefile.am.inc +++ /dev/null @@ -1,22 +0,0 @@ -if BUILD_SELINUX_MODULE -selinux_moduledir = ${datadir}/selinux/packages -selinux_module_DATA = $(NULL) - -selinux_develdir = ${datadir}/selinux/devel/include/contrib -selinux_devel_DATA = $(NULL) - -flatpak.pp.bz2: selinux/flatpak.te selinux/flatpak.fc selinux/build-selinux.sh - $(srcdir)/selinux/build-selinux.sh . $^ - -selinux_module_DATA += flatpak.pp.bz2 -selinux_devel_DATA += selinux/flatpak.if -endif - -EXTRA_DIST += \ - selinux/build-selinux.sh \ - selinux/flatpak.te \ - selinux/flatpak.fc \ - selinux/flatpak.if \ - $(NULL) - -DISTCLEANFILES += flatpak.pp.bz2 diff --git a/selinux/meson.build b/selinux/meson.build new file mode 100644 index 0000000..238a46f --- /dev/null +++ b/selinux/meson.build @@ -0,0 +1,21 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +custom_target( + 'flatpak.pp.bz2', + input : ['flatpak.te', 'flatpak.fc'], + output : ['flatpak.pp.bz2'], + build_by_default : true, + command : [ + files('build-selinux.sh'), + '@OUTPUT0@', + '@INPUT@', + ], + install : true, + install_dir : get_option('datadir') / 'selinux' / 'packages', +) + +install_data( + 'flatpak.if', + install_dir : get_option('datadir') / 'selinux' / 'devel' / 'include' / 'contrib', +) diff --git a/session-helper/Makefile.am.inc b/session-helper/Makefile.am.inc deleted file mode 100644 index 7da3fda..0000000 --- a/session-helper/Makefile.am.inc +++ /dev/null @@ -1,17 +0,0 @@ -libexec_PROGRAMS += \ - flatpak-session-helper \ - $(NULL) - -service_in_files += session-helper/flatpak-session-helper.service.in -systemduserunit_DATA += session-helper/flatpak-session-helper.service - -service_in_files += session-helper/org.freedesktop.Flatpak.service.in -dbus_service_DATA += session-helper/org.freedesktop.Flatpak.service - -flatpak_session_helper_SOURCES = \ - session-helper/flatpak-session-helper.c \ - session-helper/flatpak-session-helper.h \ - $(NULL) - -flatpak_session_helper_LDADD = $(AM_LDADD) $(BASE_LIBS) libflatpak-common-base.la libglnx.la -flatpak_session_helper_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) -DFLATPAK_COMPILATION diff --git a/session-helper/flatpak-session-helper.c b/session-helper/flatpak-session-helper.c index 113345d..31e9438 100644 --- a/session-helper/flatpak-session-helper.c +++ b/session-helper/flatpak-session-helper.c @@ -102,7 +102,7 @@ child_watch_died (GPid pid, PidData *pid_data = user_data; g_autoptr(GVariant) signal_variant = NULL; - g_debug ("Client Pid %d died", pid_data->pid); + g_info ("Client Pid %d died", pid_data->pid); signal_variant = g_variant_ref_sink (g_variant_new ("(uu)", pid, status)); g_dbus_connection_emit_signal (session_bus, @@ -189,8 +189,8 @@ child_setup_func (gpointer user_data) if (fd_map[i].from == data->tty) { if (ioctl (fd_map[i].final, TIOCSCTTY, 0) == -1) - g_debug ("ioctl(%d, TIOCSCTTY, 0) failed: %s", - fd_map[i].final, strerror (errno)); + g_info ("ioctl(%d, TIOCSCTTY, 0) failed: %s", + fd_map[i].final, strerror (errno)); break; } } @@ -240,7 +240,7 @@ handle_host_command (FlatpakDevelopment *object, return G_DBUS_METHOD_INVOCATION_HANDLED; } - g_debug ("Running host command %s", arg_argv[0]); + g_info ("Running host command %s", arg_argv[0]); n_fds = 0; fds = NULL; @@ -355,7 +355,7 @@ handle_host_command (FlatpakDevelopment *object, pid_data, NULL); - g_debug ("Client Pid is %d", pid_data->pid); + g_info ("Client Pid is %d", pid_data->pid); g_hash_table_replace (client_pid_data_hash, GUINT_TO_POINTER (pid_data->pid), pid_data); @@ -385,7 +385,7 @@ handle_host_command_signal (FlatpakDevelopment *object, return G_DBUS_METHOD_INVOCATION_HANDLED; } - g_debug ("Sending signal %d to client pid %d", arg_signal, arg_pid); + g_info ("Sending signal %d to client pid %d", arg_signal, arg_pid); if (to_process_group) killpg (pid_data->pid, arg_signal); @@ -567,8 +567,8 @@ update_real_monitor (MonitorData *data) if (real == NULL) { - g_debug ("unable to get real path to monitor host file %s: %s", data->source, - g_strerror (errno)); + g_info ("unable to get real path to monitor host file %s: %s", data->source, + g_strerror (errno)); return; } @@ -607,7 +607,7 @@ update_real_monitor (MonitorData *data) data->monitor_real = g_file_monitor_file (r, G_FILE_MONITOR_NONE, NULL, &err); if (!data->monitor_real) { - g_debug ("failed to monitor host file %s (real path of %s): %s", + g_info ("failed to monitor host file %s (real path of %s): %s", real, data->source, err->message); return; } @@ -626,7 +626,7 @@ file_monitor_do (MonitorData *data) /* We can't update the /etc/localtime symlink at runtime, nor can we make it a of the * correct form "../usr/share/zoneinfo/$timezone". So, instead we use the old debian * /etc/timezone file for telling the sandbox the timezone. */ - char *dest = g_build_filename (monitor_dir, "timezone", NULL); + g_autofree char *dest = g_build_filename (monitor_dir, "timezone", NULL); g_autofree char *raw_timezone = flatpak_get_timezone (); g_autofree char *timezone_content = g_strdup_printf ("%s\n", raw_timezone); @@ -666,7 +666,7 @@ setup_file_monitor (const char *source) } else { - g_debug ("failed to monitor host file %s: %s", source, err->message); + g_info ("failed to monitor host file %s: %s", source, err->message); } file_monitor_do (data); @@ -697,7 +697,7 @@ start_p11_kit_server (const char *flatpak_dir) g_autoptr(GError) local_error = NULL; g_auto(GStrv) stdout_lines = NULL; int i; - char *p11_argv[] = { + const char * const p11_argv[] = { "p11-kit", "server", /* We explicitly request --sh here, because we then fail on earlier versions that doesn't support * this flag. This is good, because those earlier versions did not properly daemonize and caused @@ -710,10 +710,11 @@ start_p11_kit_server (const char *flatpak_dir) NULL }; - g_debug ("starting p11-kit server"); + g_info ("starting p11-kit server"); if (!g_spawn_sync (NULL, - p11_argv, NULL, G_SPAWN_SEARCH_PATH | G_SPAWN_STDERR_TO_DEV_NULL, + (char **) p11_argv, NULL, + G_SPAWN_SEARCH_PATH | G_SPAWN_STDERR_TO_DEV_NULL, NULL, NULL, &p11_kit_stdout, NULL, &exit_status, &local_error)) @@ -751,11 +752,11 @@ start_p11_kit_server (const char *flatpak_dir) if (p11_kit_server_pid != 0) { - g_debug ("Using p11-kit socket path %s, pid %d", socket_path, p11_kit_server_pid); + g_info ("Using p11-kit socket path %s, pid %d", socket_path, p11_kit_server_pid); p11_kit_server_socket_path = g_steal_pointer (&socket_path); } else - g_debug ("Not using p11-kit due to older version"); + g_info ("Not using p11-kit due to older version"); } int @@ -767,8 +768,9 @@ main (int argc, gboolean replace; gboolean verbose; gboolean show_version; - GOptionContext *context; + g_autoptr(GOptionContext) context = NULL; GBusNameOwnerFlags flags; + g_autofree char *pk11_program = NULL; g_autofree char *flatpak_dir = NULL; g_autoptr(GError) error = NULL; const GOptionEntry options[] = { @@ -820,10 +822,11 @@ main (int argc, g_printerr ("Try \"%s --help\" for more information.", g_get_prgname ()); g_printerr ("\n"); - g_option_context_free (context); return 1; } + g_clear_pointer (&context, g_option_context_free); + if (show_version) { g_print (PACKAGE_STRING "\n"); @@ -831,7 +834,7 @@ main (int argc, } if (verbose) - g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG | G_LOG_LEVEL_INFO, message_handler, NULL); + g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, message_handler, NULL); client_pid_data_hash = g_hash_table_new_full (NULL, NULL, NULL, (GDestroyNotify) pid_data_free); @@ -849,10 +852,11 @@ main (int argc, exit (1); } - if (g_find_program_in_path ("p11-kit")) + pk11_program = g_find_program_in_path ("p11-kit"); + if (pk11_program) start_p11_kit_server (flatpak_dir); else - g_debug ("p11-kit not found"); + g_info ("p11-kit not found"); monitor_dir = g_build_filename (flatpak_dir, "monitor", NULL); if (g_mkdir_with_parents (monitor_dir, 0755) != 0) diff --git a/session-helper/meson.build b/session-helper/meson.build new file mode 100644 index 0000000..14fc47b --- /dev/null +++ b/session-helper/meson.build @@ -0,0 +1,29 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +executable( + 'flatpak-session-helper', + dependencies : [ + base_deps, + threads_dep, + libglnx_dep, + libflatpak_common_base_dep, + ], + install : true, + install_dir : get_option('libexecdir'), + sources : ['flatpak-session-helper.c'], +) + +configure_file( + input : 'flatpak-session-helper.service.in', + output : 'flatpak-session-helper.service', + configuration : service_conf_data, + install_dir : get_option('systemduserunitdir'), +) + +configure_file( + input : 'org.freedesktop.Flatpak.service.in', + output : 'org.freedesktop.Flatpak.service', + configuration : service_conf_data, + install_dir : dbus_service_dir, +) diff --git a/sideload-repos-systemd/Makefile.am.inc b/sideload-repos-systemd/Makefile.am.inc deleted file mode 100644 index 11eb85a..0000000 --- a/sideload-repos-systemd/Makefile.am.inc +++ /dev/null @@ -1,19 +0,0 @@ -if BUILD_AUTO_SIDELOADING - -dist_libexec_SCRIPTS = sideload-repos-systemd/flatpak-create-sideload-symlinks.sh - -service_in_files += sideload-repos-systemd/flatpak-sideload-usb-repo.service.in -systemduserunit_DATA += sideload-repos-systemd/flatpak-sideload-usb-repo.service - -path_in_files = sideload-repos-systemd/flatpak-sideload-usb-repo.path.in -systemduserunit_DATA += sideload-repos-systemd/flatpak-sideload-usb-repo.path - -%.path: %.path.in config.log - $(AM_V_GEN) $(SED) -e "s|\@media_dir\@|$(RUN_MEDIA_DIR)|" $< > $@ - -dist_tmpfiles_DATA += sideload-repos-systemd/tmpfiles.d/flatpak-sideload-repos.conf - -endif - -EXTRA_DIST += sideload-repos-systemd/flatpak-sideload-usb-repo.path.in sideload-repos-systemd/flatpak-sideload-usb-repo.service.in - diff --git a/sideload-repos-systemd/meson.build b/sideload-repos-systemd/meson.build new file mode 100644 index 0000000..326484c --- /dev/null +++ b/sideload-repos-systemd/meson.build @@ -0,0 +1,27 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +install_data( + 'flatpak-create-sideload-symlinks.sh', + install_dir : get_option('libexecdir'), + install_mode : 'rwxr-xr-x', +) + +configure_file( + input : 'flatpak-sideload-usb-repo.service.in', + output : 'flatpak-sideload-usb-repo.service', + configuration : service_conf_data, + install_dir : get_option('systemduserunitdir'), +) + +configure_file( + input : 'flatpak-sideload-usb-repo.path.in', + output : 'flatpak-sideload-usb-repo.path', + configuration : service_conf_data, + install_dir : get_option('systemduserunitdir'), +) + +install_data( + 'tmpfiles.d/flatpak-sideload-repos.conf', + install_dir : get_option('tmpfilesdir'), +) diff --git a/subprojects/.gitignore b/subprojects/.gitignore new file mode 100644 index 0000000..f71f340 --- /dev/null +++ b/subprojects/.gitignore @@ -0,0 +1,2 @@ +bubblewrap/ +dbus-proxy/ diff --git a/subprojects/Makefile-bwrap.am.inc b/subprojects/Makefile-bwrap.am.inc deleted file mode 100644 index 4b8b7b1..0000000 --- a/subprojects/Makefile-bwrap.am.inc +++ /dev/null @@ -1,12 +0,0 @@ -bwrap_SOURCES = \ - subprojects/bubblewrap/bubblewrap.c \ - subprojects/bubblewrap/bind-mount.h \ - subprojects/bubblewrap/bind-mount.c \ - subprojects/bubblewrap/network.h \ - subprojects/bubblewrap/network.c \ - subprojects/bubblewrap/utils.h \ - subprojects/bubblewrap/utils.c \ - $(NULL) - -bwrap_CFLAGS = $(AM_CFLAGS) -bwrap_LDADD = $(SELINUX_LIBS) diff --git a/subprojects/README.md b/subprojects/README.md new file mode 100644 index 0000000..ccee364 --- /dev/null +++ b/subprojects/README.md @@ -0,0 +1,60 @@ +Subprojects built as part of Flatpak +==================================== + + + +bubblewrap +---------- + +Upstream: + +To use a system copy instead, configure with `-Dsystem_bubblewrap=bwrap` +or similar. + +To update the suggested version, edit bubblewrap.wrap. + +dbus-proxy +---------- + +Upstream: + +To use a system copy instead, configure with +`-Dsystem_dbus_proxy=xdg-dbus-proxy` or similar. + +To update the suggested version, edit dbus-proxy.wrap. + +libglnx +------- + +Upstream: + +This is a "copylib", similar to gnulib, which only supports being +integrated as a subproject and does not guarantee a stable API. +A suitable version is vendored into Flatpak using `git subtree`, to make +our source releases self-contained (if system copies of bubblewrap and +dbus-proxy are used). + +To compare with upstream: + + git remote add --no-tags libglnx https://gitlab.gnome.org/GNOME/libglnx.git + git fetch libglnx + git diff HEAD:subprojects/libglnx libglnx/master + +To merge from upstream: + + git fetch libglnx + git subtree merge -P subprojects/libglnx libglnx/master + git commit --amend -s + +variant-schema-compiler +----------------------- + +Upstream: + +This is a "copylib" like libglnx. + +To compare with upstream or merge from upstream, the procedure is similar +to libglnx (see above). diff --git a/subprojects/bubblewrap.wrap b/subprojects/bubblewrap.wrap new file mode 100644 index 0000000..9eb731b --- /dev/null +++ b/subprojects/bubblewrap.wrap @@ -0,0 +1,5 @@ +[wrap-git] +url = https://github.com/containers/bubblewrap.git +# v0.11.0 +revision = 9ca3b05ec787acfb4b17bed37db5719fa777834f +depth = 1 diff --git a/subprojects/bubblewrap/bind-mount.c b/subprojects/bubblewrap/bind-mount.c deleted file mode 100644 index 877b095..0000000 --- a/subprojects/bubblewrap/bind-mount.c +++ /dev/null @@ -1,547 +0,0 @@ -/* bubblewrap - * Copyright (C) 2016 Alexander Larsson - * SPDX-License-Identifier: LGPL-2.0-or-later - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library. If not, see . - * - */ - -#include "config.h" - -#include - -#include "utils.h" -#include "bind-mount.h" - -static char * -skip_token (char *line, bool eat_whitespace) -{ - while (*line != ' ' && *line != '\n') - line++; - - if (eat_whitespace && *line == ' ') - line++; - - return line; -} - -static char * -unescape_inline (char *escaped) -{ - char *unescaped, *res; - const char *end; - - res = escaped; - end = escaped + strlen (escaped); - - unescaped = escaped; - while (escaped < end) - { - if (*escaped == '\\') - { - *unescaped++ = - ((escaped[1] - '0') << 6) | - ((escaped[2] - '0') << 3) | - ((escaped[3] - '0') << 0); - escaped += 4; - } - else - { - *unescaped++ = *escaped++; - } - } - *unescaped = 0; - return res; -} - -static bool -match_token (const char *token, const char *token_end, const char *str) -{ - while (token != token_end && *token == *str) - { - token++; - str++; - } - if (token == token_end) - return *str == 0; - - return FALSE; -} - -static unsigned long -decode_mountoptions (const char *options) -{ - const char *token, *end_token; - int i; - unsigned long flags = 0; - static const struct { int flag; - const char *name; - } flags_data[] = { - { 0, "rw" }, - { MS_RDONLY, "ro" }, - { MS_NOSUID, "nosuid" }, - { MS_NODEV, "nodev" }, - { MS_NOEXEC, "noexec" }, - { MS_NOATIME, "noatime" }, - { MS_NODIRATIME, "nodiratime" }, - { MS_RELATIME, "relatime" }, - { 0, NULL } - }; - - token = options; - do - { - end_token = strchr (token, ','); - if (end_token == NULL) - end_token = token + strlen (token); - - for (i = 0; flags_data[i].name != NULL; i++) - { - if (match_token (token, end_token, flags_data[i].name)) - { - flags |= flags_data[i].flag; - break; - } - } - - if (*end_token != 0) - token = end_token + 1; - else - token = NULL; - } - while (token != NULL); - - return flags; -} - -typedef struct MountInfo MountInfo; -struct MountInfo { - char *mountpoint; - unsigned long options; -}; - -typedef MountInfo *MountTab; - -static void -mount_tab_free (MountTab tab) -{ - int i; - - for (i = 0; tab[i].mountpoint != NULL; i++) - free (tab[i].mountpoint); - free (tab); -} - -static inline void -cleanup_mount_tabp (void *p) -{ - void **pp = (void **) p; - - if (*pp) - mount_tab_free ((MountTab)*pp); -} - -#define cleanup_mount_tab __attribute__((cleanup (cleanup_mount_tabp))) - -typedef struct MountInfoLine MountInfoLine; -struct MountInfoLine { - const char *mountpoint; - const char *options; - bool covered; - int id; - int parent_id; - MountInfoLine *first_child; - MountInfoLine *next_sibling; -}; - -static unsigned int -count_lines (const char *data) -{ - unsigned int count = 0; - const char *p = data; - - while (*p != 0) - { - if (*p == '\n') - count++; - p++; - } - - /* If missing final newline, add one */ - if (p > data && *(p-1) != '\n') - count++; - - return count; -} - -static int -count_mounts (MountInfoLine *line) -{ - MountInfoLine *child; - int res = 0; - - if (!line->covered) - res += 1; - - child = line->first_child; - while (child != NULL) - { - res += count_mounts (child); - child = child->next_sibling; - } - - return res; -} - -static MountInfo * -collect_mounts (MountInfo *info, MountInfoLine *line) -{ - MountInfoLine *child; - - if (!line->covered) - { - info->mountpoint = xstrdup (line->mountpoint); - info->options = decode_mountoptions (line->options); - info ++; - } - - child = line->first_child; - while (child != NULL) - { - info = collect_mounts (info, child); - child = child->next_sibling; - } - - return info; -} - -static MountTab -parse_mountinfo (int proc_fd, - const char *root_mount) -{ - cleanup_free char *mountinfo = NULL; - cleanup_free MountInfoLine *lines = NULL; - cleanup_free MountInfoLine **by_id = NULL; - cleanup_mount_tab MountTab mount_tab = NULL; - MountInfo *end_tab; - int n_mounts; - char *line; - int i; - int max_id; - unsigned int n_lines; - int root; - - mountinfo = load_file_at (proc_fd, "self/mountinfo"); - if (mountinfo == NULL) - die_with_error ("Can't open /proc/self/mountinfo"); - - n_lines = count_lines (mountinfo); - lines = xcalloc (n_lines * sizeof (MountInfoLine)); - - max_id = 0; - line = mountinfo; - i = 0; - root = -1; - while (*line != 0) - { - int rc, consumed = 0; - unsigned int maj, min; - char *end; - char *rest; - char *mountpoint; - char *mountpoint_end; - char *options; - char *options_end; - char *next_line; - - assert (i < n_lines); - - end = strchr (line, '\n'); - if (end != NULL) - { - *end = 0; - next_line = end + 1; - } - else - next_line = line + strlen (line); - - rc = sscanf (line, "%d %d %u:%u %n", &lines[i].id, &lines[i].parent_id, &maj, &min, &consumed); - if (rc != 4) - die ("Can't parse mountinfo line"); - rest = line + consumed; - - rest = skip_token (rest, TRUE); /* mountroot */ - mountpoint = rest; - rest = skip_token (rest, FALSE); /* mountpoint */ - mountpoint_end = rest++; - options = rest; - rest = skip_token (rest, FALSE); /* vfs options */ - options_end = rest; - - *mountpoint_end = 0; - lines[i].mountpoint = unescape_inline (mountpoint); - - *options_end = 0; - lines[i].options = options; - - if (lines[i].id > max_id) - max_id = lines[i].id; - if (lines[i].parent_id > max_id) - max_id = lines[i].parent_id; - - if (path_equal (lines[i].mountpoint, root_mount)) - root = i; - - i++; - line = next_line; - } - assert (i == n_lines); - - if (root == -1) - { - mount_tab = xcalloc (sizeof (MountInfo) * (1)); - return steal_pointer (&mount_tab); - } - - by_id = xcalloc ((max_id + 1) * sizeof (MountInfoLine*)); - for (i = 0; i < n_lines; i++) - by_id[lines[i].id] = &lines[i]; - - for (i = 0; i < n_lines; i++) - { - MountInfoLine *this = &lines[i]; - MountInfoLine *parent = by_id[this->parent_id]; - MountInfoLine **to_sibling; - MountInfoLine *sibling; - bool covered = FALSE; - - if (!has_path_prefix (this->mountpoint, root_mount)) - continue; - - if (parent == NULL) - continue; - - if (strcmp (parent->mountpoint, this->mountpoint) == 0) - parent->covered = TRUE; - - to_sibling = &parent->first_child; - sibling = parent->first_child; - while (sibling != NULL) - { - /* If this mountpoint is a path prefix of the sibling, - * say this->mp=/foo/bar and sibling->mp=/foo, then it is - * covered by the sibling, and we drop it. */ - if (has_path_prefix (this->mountpoint, sibling->mountpoint)) - { - covered = TRUE; - break; - } - - /* If the sibling is a path prefix of this mount point, - * say this->mp=/foo and sibling->mp=/foo/bar, then the sibling - * is covered, and we drop it. - */ - if (has_path_prefix (sibling->mountpoint, this->mountpoint)) - *to_sibling = sibling->next_sibling; - else - to_sibling = &sibling->next_sibling; - sibling = sibling->next_sibling; - } - - if (covered) - continue; - - *to_sibling = this; - } - - n_mounts = count_mounts (&lines[root]); - mount_tab = xcalloc (sizeof (MountInfo) * (n_mounts + 1)); - - end_tab = collect_mounts (&mount_tab[0], &lines[root]); - assert (end_tab == &mount_tab[n_mounts]); - - return steal_pointer (&mount_tab); -} - -bind_mount_result -bind_mount (int proc_fd, - const char *src, - const char *dest, - bind_option_t options) -{ - bool readonly = (options & BIND_READONLY) != 0; - bool devices = (options & BIND_DEVICES) != 0; - bool recursive = (options & BIND_RECURSIVE) != 0; - unsigned long current_flags, new_flags; - cleanup_mount_tab MountTab mount_tab = NULL; - cleanup_free char *resolved_dest = NULL; - cleanup_free char *dest_proc = NULL; - cleanup_free char *oldroot_dest_proc = NULL; - cleanup_free char *kernel_case_combination = NULL; - cleanup_fd int dest_fd = -1; - int i; - - if (src) - { - if (mount (src, dest, NULL, MS_SILENT | MS_BIND | (recursive ? MS_REC : 0), NULL) != 0) - return BIND_MOUNT_ERROR_MOUNT; - } - - /* The mount operation will resolve any symlinks in the destination - path, so to find it in the mount table we need to do that too. */ - resolved_dest = realpath (dest, NULL); - if (resolved_dest == NULL) - return BIND_MOUNT_ERROR_REALPATH_DEST; - - dest_fd = open (resolved_dest, O_PATH | O_CLOEXEC); - if (dest_fd < 0) - return BIND_MOUNT_ERROR_REOPEN_DEST; - - /* If we are in a case-insensitive filesystem, mountinfo might contain a - * different case combination of the path we requested to mount. - * This is due to the fact that the kernel, as of the beginning of 2021, - * populates mountinfo with whatever case combination first appeared in the - * dcache; kernel developers plan to change this in future so that it - * reflects the on-disk encoding instead. - * To avoid throwing an error when this happens, we use readlink() result - * instead of the provided @root_mount, so that we can compare the mountinfo - * entries with the same case combination that the kernel is expected to - * use. */ - dest_proc = xasprintf ("/proc/self/fd/%d", dest_fd); - oldroot_dest_proc = get_oldroot_path (dest_proc); - kernel_case_combination = readlink_malloc (oldroot_dest_proc); - if (kernel_case_combination == NULL) - return BIND_MOUNT_ERROR_READLINK_DEST_PROC_FD; - - mount_tab = parse_mountinfo (proc_fd, kernel_case_combination); - if (mount_tab[0].mountpoint == NULL) - { - errno = EINVAL; - return BIND_MOUNT_ERROR_FIND_DEST_MOUNT; - } - - assert (path_equal (mount_tab[0].mountpoint, kernel_case_combination)); - current_flags = mount_tab[0].options; - new_flags = current_flags | (devices ? 0 : MS_NODEV) | MS_NOSUID | (readonly ? MS_RDONLY : 0); - if (new_flags != current_flags && - mount ("none", resolved_dest, - NULL, MS_SILENT | MS_BIND | MS_REMOUNT | new_flags, NULL) != 0) - return BIND_MOUNT_ERROR_REMOUNT_DEST; - - /* We need to work around the fact that a bind mount does not apply the flags, so we need to manually - * apply the flags to all submounts in the recursive case. - * Note: This does not apply the flags to mounts which are later propagated into this namespace. - */ - if (recursive) - { - for (i = 1; mount_tab[i].mountpoint != NULL; i++) - { - current_flags = mount_tab[i].options; - new_flags = current_flags | (devices ? 0 : MS_NODEV) | MS_NOSUID | (readonly ? MS_RDONLY : 0); - if (new_flags != current_flags && - mount ("none", mount_tab[i].mountpoint, - NULL, MS_SILENT | MS_BIND | MS_REMOUNT | new_flags, NULL) != 0) - { - /* If we can't read the mountpoint we can't remount it, but that should - be safe to ignore because its not something the user can access. */ - if (errno != EACCES) - return BIND_MOUNT_ERROR_REMOUNT_SUBMOUNT; - } - } - } - - return BIND_MOUNT_SUCCESS; -} - -/** - * Return a string representing bind_mount_result, like strerror(). - * If want_errno_p is non-NULL, *want_errno_p is used to indicate whether - * it would make sense to print strerror(saved_errno). - */ -const char * -bind_mount_result_to_string (bind_mount_result res, - bool *want_errno_p) -{ - const char *string; - bool want_errno = TRUE; - - switch (res) - { - case BIND_MOUNT_ERROR_MOUNT: - string = "Unable to mount source on destination"; - break; - - case BIND_MOUNT_ERROR_REALPATH_DEST: - string = "realpath(destination)"; - break; - - case BIND_MOUNT_ERROR_REOPEN_DEST: - string = "open(destination, O_PATH)"; - break; - - case BIND_MOUNT_ERROR_READLINK_DEST_PROC_FD: - string = "readlink(/proc/self/fd/)"; - break; - - case BIND_MOUNT_ERROR_FIND_DEST_MOUNT: - string = "Unable to find destination in mount table"; - want_errno = FALSE; - break; - - case BIND_MOUNT_ERROR_REMOUNT_DEST: - string = "Unable to remount destination with correct flags"; - break; - - case BIND_MOUNT_ERROR_REMOUNT_SUBMOUNT: - string = "Unable to remount recursively with correct flags"; - break; - - case BIND_MOUNT_SUCCESS: - string = "Success"; - break; - - default: - string = "(unknown/invalid bind_mount_result)"; - break; - } - - if (want_errno_p != NULL) - *want_errno_p = want_errno; - - return string; -} - -void -die_with_bind_result (bind_mount_result res, - int saved_errno, - const char *format, - ...) -{ - va_list args; - bool want_errno = TRUE; - - fprintf (stderr, "bwrap: "); - - va_start (args, format); - vfprintf (stderr, format, args); - va_end (args); - - fprintf (stderr, ": %s", bind_mount_result_to_string (res, &want_errno)); - - if (want_errno) - fprintf (stderr, ": %s", strerror (saved_errno)); - - fprintf (stderr, "\n"); - exit (1); -} diff --git a/subprojects/bubblewrap/bind-mount.h b/subprojects/bubblewrap/bind-mount.h deleted file mode 100644 index 1fac3e5..0000000 --- a/subprojects/bubblewrap/bind-mount.h +++ /dev/null @@ -1,55 +0,0 @@ -/* bubblewrap - * Copyright (C) 2016 Alexander Larsson - * SPDX-License-Identifier: LGPL-2.0-or-later - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library. If not, see . - * - */ - -#pragma once - -#include "utils.h" - -typedef enum { - BIND_READONLY = (1 << 0), - BIND_DEVICES = (1 << 2), - BIND_RECURSIVE = (1 << 3), -} bind_option_t; - -typedef enum -{ - BIND_MOUNT_SUCCESS = 0, - BIND_MOUNT_ERROR_MOUNT, - BIND_MOUNT_ERROR_REALPATH_DEST, - BIND_MOUNT_ERROR_REOPEN_DEST, - BIND_MOUNT_ERROR_READLINK_DEST_PROC_FD, - BIND_MOUNT_ERROR_FIND_DEST_MOUNT, - BIND_MOUNT_ERROR_REMOUNT_DEST, - BIND_MOUNT_ERROR_REMOUNT_SUBMOUNT, -} bind_mount_result; - -bind_mount_result bind_mount (int proc_fd, - const char *src, - const char *dest, - bind_option_t options); - -const char *bind_mount_result_to_string (bind_mount_result res, - bool *want_errno); - -void die_with_bind_result (bind_mount_result res, - int saved_errno, - const char *format, - ...) - __attribute__((__noreturn__)) - __attribute__((format (printf, 3, 4))); diff --git a/subprojects/bubblewrap/bubblewrap.c b/subprojects/bubblewrap/bubblewrap.c deleted file mode 100644 index 1d2cc41..0000000 --- a/subprojects/bubblewrap/bubblewrap.c +++ /dev/null @@ -1,3292 +0,0 @@ -/* bubblewrap - * Copyright (C) 2016 Alexander Larsson - * SPDX-License-Identifier: LGPL-2.0-or-later - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library. If not, see . - * - */ - -#include "config.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "utils.h" -#include "network.h" -#include "bind-mount.h" - -#ifndef CLONE_NEWCGROUP -#define CLONE_NEWCGROUP 0x02000000 /* New cgroup namespace */ -#endif - -#ifndef TEMP_FAILURE_RETRY -#define TEMP_FAILURE_RETRY(expression) \ - (__extension__ \ - ({ long int __result; \ - do __result = (long int) (expression); \ - while (__result == -1L && errno == EINTR); \ - __result; })) -#endif - -/* Globals to avoid having to use getuid(), since the uid/gid changes during runtime */ -static uid_t real_uid; -static gid_t real_gid; -static uid_t overflow_uid; -static gid_t overflow_gid; -static bool is_privileged; /* See acquire_privs() */ -static const char *argv0; -static const char *host_tty_dev; -static int proc_fd = -1; -static const char *opt_exec_label = NULL; -static const char *opt_file_label = NULL; -static bool opt_as_pid_1; - -const char *opt_chdir_path = NULL; -bool opt_unshare_user = FALSE; -bool opt_unshare_user_try = FALSE; -bool opt_unshare_pid = FALSE; -bool opt_unshare_ipc = FALSE; -bool opt_unshare_net = FALSE; -bool opt_unshare_uts = FALSE; -bool opt_unshare_cgroup = FALSE; -bool opt_unshare_cgroup_try = FALSE; -bool opt_needs_devpts = FALSE; -bool opt_new_session = FALSE; -bool opt_die_with_parent = FALSE; -uid_t opt_sandbox_uid = -1; -gid_t opt_sandbox_gid = -1; -int opt_sync_fd = -1; -int opt_block_fd = -1; -int opt_userns_block_fd = -1; -int opt_info_fd = -1; -int opt_json_status_fd = -1; -int opt_seccomp_fd = -1; -const char *opt_sandbox_hostname = NULL; -char *opt_args_data = NULL; /* owned */ -int opt_userns_fd = -1; -int opt_userns2_fd = -1; -int opt_pidns_fd = -1; -int next_perms = -1; - -#define CAP_TO_MASK_0(x) (1L << ((x) & 31)) -#define CAP_TO_MASK_1(x) CAP_TO_MASK_0(x - 32) - -typedef struct _NsInfo NsInfo; - -struct _NsInfo { - const char *name; - bool *do_unshare; - ino_t id; -}; - -static NsInfo ns_infos[] = { - {"cgroup", &opt_unshare_cgroup, 0}, - {"ipc", &opt_unshare_ipc, 0}, - {"mnt", NULL, 0}, - {"net", &opt_unshare_net, 0}, - {"pid", &opt_unshare_pid, 0}, - /* user namespace info omitted because it - * is not (yet) valid when we obtain the - * namespace info (get un-shared later) */ - {"uts", &opt_unshare_uts, 0}, - {NULL, NULL, 0} -}; - -typedef enum { - SETUP_BIND_MOUNT, - SETUP_RO_BIND_MOUNT, - SETUP_DEV_BIND_MOUNT, - SETUP_MOUNT_PROC, - SETUP_MOUNT_DEV, - SETUP_MOUNT_TMPFS, - SETUP_MOUNT_MQUEUE, - SETUP_MAKE_DIR, - SETUP_MAKE_FILE, - SETUP_MAKE_BIND_FILE, - SETUP_MAKE_RO_BIND_FILE, - SETUP_MAKE_SYMLINK, - SETUP_REMOUNT_RO_NO_RECURSIVE, - SETUP_SET_HOSTNAME, - SETUP_CHMOD, -} SetupOpType; - -typedef enum { - NO_CREATE_DEST = (1 << 0), - ALLOW_NOTEXIST = (2 << 0), -} SetupOpFlag; - -typedef struct _SetupOp SetupOp; - -struct _SetupOp -{ - SetupOpType type; - const char *source; - const char *dest; - int fd; - SetupOpFlag flags; - int perms; - SetupOp *next; -}; - -typedef struct _LockFile LockFile; - -struct _LockFile -{ - const char *path; - int fd; - LockFile *next; -}; - -enum { - PRIV_SEP_OP_DONE, - PRIV_SEP_OP_BIND_MOUNT, - PRIV_SEP_OP_PROC_MOUNT, - PRIV_SEP_OP_TMPFS_MOUNT, - PRIV_SEP_OP_DEVPTS_MOUNT, - PRIV_SEP_OP_MQUEUE_MOUNT, - PRIV_SEP_OP_REMOUNT_RO_NO_RECURSIVE, - PRIV_SEP_OP_SET_HOSTNAME, -}; - -typedef struct -{ - uint32_t op; - uint32_t flags; - uint32_t perms; - uint32_t arg1_offset; - uint32_t arg2_offset; -} PrivSepOp; - -/* - * DEFINE_LINKED_LIST: - * @Type: A struct with a `Type *next` member - * @name: Used to form the names of variables and functions - * - * Define a global linked list of @Type structures, with pointers - * `NAMEs` to the head of the list and `last_NAME` to the tail of the - * list. - * - * A new zero-filled item can be allocated and appended to the list - * by calling `_NAME_append_new()`, which returns the new item. - */ -#define DEFINE_LINKED_LIST(Type, name) \ -static Type *name ## s = NULL; \ -static Type *last_ ## name = NULL; \ -\ -static inline Type * \ -_ ## name ## _append_new (void) \ -{ \ - Type *self = xcalloc (sizeof (Type)); \ -\ - if (last_ ## name != NULL) \ - last_ ## name ->next = self; \ - else \ - name ## s = self; \ -\ - last_ ## name = self; \ - return self; \ -} - -DEFINE_LINKED_LIST (SetupOp, op) - -static SetupOp * -setup_op_new (SetupOpType type) -{ - SetupOp *op = _op_append_new (); - - op->type = type; - op->fd = -1; - op->flags = 0; - return op; -} - -DEFINE_LINKED_LIST (LockFile, lock_file) - -static LockFile * -lock_file_new (const char *path) -{ - LockFile *lock = _lock_file_append_new (); - - lock->path = path; - return lock; -} - -typedef struct _SeccompProgram SeccompProgram; - -struct _SeccompProgram -{ - struct sock_fprog program; - SeccompProgram *next; -}; - -DEFINE_LINKED_LIST (SeccompProgram, seccomp_program) - -static SeccompProgram * -seccomp_program_new (int *fd) -{ - SeccompProgram *self = _seccomp_program_append_new (); - cleanup_free char *data = NULL; - size_t len; - - data = load_file_data (*fd, &len); - - if (data == NULL) - die_with_error ("Can't read seccomp data"); - - close (*fd); - *fd = -1; - - if (len % 8 != 0) - die ("Invalid seccomp data, must be multiple of 8"); - - self->program.len = len / 8; - self->program.filter = (struct sock_filter *) steal_pointer (&data); - return self; -} - -static void -seccomp_programs_apply (void) -{ - SeccompProgram *program; - - for (program = seccomp_programs; program != NULL; program = program->next) - { - if (prctl (PR_SET_SECCOMP, SECCOMP_MODE_FILTER, &program->program) != 0) - die_with_error ("prctl(PR_SET_SECCOMP)"); - } -} - -static void -usage (int ecode, FILE *out) -{ - fprintf (out, "usage: %s [OPTIONS...] [--] COMMAND [ARGS...]\n\n", argv0 ? argv0 : "bwrap"); - - fprintf (out, - " --help Print this help\n" - " --version Print version\n" - " --args FD Parse NUL-separated args from FD\n" - " --unshare-all Unshare every namespace we support by default\n" - " --share-net Retain the network namespace (can only combine with --unshare-all)\n" - " --unshare-user Create new user namespace (may be automatically implied if not setuid)\n" - " --unshare-user-try Create new user namespace if possible else continue by skipping it\n" - " --unshare-ipc Create new ipc namespace\n" - " --unshare-pid Create new pid namespace\n" - " --unshare-net Create new network namespace\n" - " --unshare-uts Create new uts namespace\n" - " --unshare-cgroup Create new cgroup namespace\n" - " --unshare-cgroup-try Create new cgroup namespace if possible else continue by skipping it\n" - " --userns FD Use this user namespace (cannot combine with --unshare-user)\n" - " --userns2 FD After setup switch to this user namespace, only useful with --userns\n" - " --pidns FD Use this user namespace (as parent namespace if using --unshare-pid)\n" - " --uid UID Custom uid in the sandbox (requires --unshare-user or --userns)\n" - " --gid GID Custom gid in the sandbox (requires --unshare-user or --userns)\n" - " --hostname NAME Custom hostname in the sandbox (requires --unshare-uts)\n" - " --chdir DIR Change directory to DIR\n" - " --clearenv Unset all environment variables\n" - " --setenv VAR VALUE Set an environment variable\n" - " --unsetenv VAR Unset an environment variable\n" - " --lock-file DEST Take a lock on DEST while sandbox is running\n" - " --sync-fd FD Keep this fd open while sandbox is running\n" - " --bind SRC DEST Bind mount the host path SRC on DEST\n" - " --bind-try SRC DEST Equal to --bind but ignores non-existent SRC\n" - " --dev-bind SRC DEST Bind mount the host path SRC on DEST, allowing device access\n" - " --dev-bind-try SRC DEST Equal to --dev-bind but ignores non-existent SRC\n" - " --ro-bind SRC DEST Bind mount the host path SRC readonly on DEST\n" - " --ro-bind-try SRC DEST Equal to --ro-bind but ignores non-existent SRC\n" - " --bind-fd FD DEST Bind open directory or path fd on DEST\n" - " --ro-bind-fd FD DEST Bind open directory or path fd read-only on DEST\n" - " --remount-ro DEST Remount DEST as readonly; does not recursively remount\n" - " --exec-label LABEL Exec label for the sandbox\n" - " --file-label LABEL File label for temporary sandbox content\n" - " --proc DEST Mount new procfs on DEST\n" - " --dev DEST Mount new dev on DEST\n" - " --tmpfs DEST Mount new tmpfs on DEST\n" - " --mqueue DEST Mount new mqueue on DEST\n" - " --dir DEST Create dir at DEST\n" - " --file FD DEST Copy from FD to destination DEST\n" - " --bind-data FD DEST Copy from FD to file which is bind-mounted on DEST\n" - " --ro-bind-data FD DEST Copy from FD to file which is readonly bind-mounted on DEST\n" - " --symlink SRC DEST Create symlink at DEST with target SRC\n" - " --seccomp FD Load and use seccomp rules from FD (not repeatable)\n" - " --add-seccomp-fd FD Load and use seccomp rules from FD (repeatable)\n" - " --block-fd FD Block on FD until some data to read is available\n" - " --userns-block-fd FD Block on FD until the user namespace is ready\n" - " --info-fd FD Write information about the running container to FD\n" - " --json-status-fd FD Write container status to FD as multiple JSON documents\n" - " --new-session Create a new terminal session\n" - " --die-with-parent Kills with SIGKILL child process (COMMAND) when bwrap or bwrap's parent dies.\n" - " --as-pid-1 Do not install a reaper process with PID=1\n" - " --cap-add CAP Add cap CAP when running as privileged user\n" - " --cap-drop CAP Drop cap CAP when running as privileged user\n" - " --perms OCTAL Set permissions of next argument (--bind-data, --file, etc.)\n" - " --chmod OCTAL PATH Change permissions of PATH (must already exist)\n" - ); - exit (ecode); -} - -/* If --die-with-parent was specified, use PDEATHSIG to ensure SIGKILL - * is sent to the current process when our parent dies. - */ -static void -handle_die_with_parent (void) -{ - if (opt_die_with_parent && prctl (PR_SET_PDEATHSIG, SIGKILL, 0, 0, 0) != 0) - die_with_error ("prctl"); -} - -static void -block_sigchild (void) -{ - sigset_t mask; - int status; - - sigemptyset (&mask); - sigaddset (&mask, SIGCHLD); - - if (sigprocmask (SIG_BLOCK, &mask, NULL) == -1) - die_with_error ("sigprocmask"); - - /* Reap any outstanding zombies that we may have inherited */ - while (waitpid (-1, &status, WNOHANG) > 0) - ; -} - -static void -unblock_sigchild (void) -{ - sigset_t mask; - - sigemptyset (&mask); - sigaddset (&mask, SIGCHLD); - - if (sigprocmask (SIG_UNBLOCK, &mask, NULL) == -1) - die_with_error ("sigprocmask"); -} - -/* Closes all fd:s except 0,1,2 and the passed in array of extra fds */ -static int -close_extra_fds (void *data, int fd) -{ - int *extra_fds = (int *) data; - int i; - - for (i = 0; extra_fds[i] != -1; i++) - if (fd == extra_fds[i]) - return 0; - - if (fd <= 2) - return 0; - - close (fd); - return 0; -} - -static int -propagate_exit_status (int status) -{ - if (WIFEXITED (status)) - return WEXITSTATUS (status); - - /* The process died of a signal, we can't really report that, but we - * can at least be bash-compatible. The bash manpage says: - * The return value of a simple command is its - * exit status, or 128+n if the command is - * terminated by signal n. - */ - if (WIFSIGNALED (status)) - return 128 + WTERMSIG (status); - - /* Weird? */ - return 255; -} - -static void -dump_info (int fd, const char *output, bool exit_on_error) -{ - size_t len = strlen (output); - if (write_to_fd (fd, output, len)) - { - if (exit_on_error) - die_with_error ("Write to info_fd"); - } -} - -static void -report_child_exit_status (int exitc, int setup_finished_fd) -{ - ssize_t s; - char data[2]; - cleanup_free char *output = NULL; - if (opt_json_status_fd == -1 || setup_finished_fd == -1) - return; - - s = TEMP_FAILURE_RETRY (read (setup_finished_fd, data, sizeof data)); - if (s == -1 && errno != EAGAIN) - die_with_error ("read eventfd"); - if (s != 1) // Is 0 if pipe closed before exec, is 2 if closed after exec. - return; - - output = xasprintf ("{ \"exit-code\": %i }\n", exitc); - dump_info (opt_json_status_fd, output, FALSE); - close (opt_json_status_fd); - opt_json_status_fd = -1; - close (setup_finished_fd); -} - -/* This stays around for as long as the initial process in the app does - * and when that exits it exits, propagating the exit status. We do this - * by having pid 1 in the sandbox detect this exit and tell the monitor - * the exit status via a eventfd. We also track the exit of the sandbox - * pid 1 via a signalfd for SIGCHLD, and exit with an error in this case. - * This is to catch e.g. problems during setup. */ -static int -monitor_child (int event_fd, pid_t child_pid, int setup_finished_fd) -{ - int res; - uint64_t val; - ssize_t s; - int signal_fd; - sigset_t mask; - struct pollfd fds[2]; - int num_fds; - struct signalfd_siginfo fdsi; - int dont_close[] = {-1, -1, -1, -1}; - int j = 0; - int exitc; - pid_t died_pid; - int died_status; - - /* Close all extra fds in the monitoring process. - Any passed in fds have been passed on to the child anyway. */ - if (event_fd != -1) - dont_close[j++] = event_fd; - if (opt_json_status_fd != -1) - dont_close[j++] = opt_json_status_fd; - if (setup_finished_fd != -1) - dont_close[j++] = setup_finished_fd; - assert (j < sizeof(dont_close)/sizeof(*dont_close)); - fdwalk (proc_fd, close_extra_fds, dont_close); - - sigemptyset (&mask); - sigaddset (&mask, SIGCHLD); - - signal_fd = signalfd (-1, &mask, SFD_CLOEXEC | SFD_NONBLOCK); - if (signal_fd == -1) - die_with_error ("Can't create signalfd"); - - num_fds = 1; - fds[0].fd = signal_fd; - fds[0].events = POLLIN; - if (event_fd != -1) - { - fds[1].fd = event_fd; - fds[1].events = POLLIN; - num_fds++; - } - - while (1) - { - fds[0].revents = fds[1].revents = 0; - res = poll (fds, num_fds, -1); - if (res == -1 && errno != EINTR) - die_with_error ("poll"); - - /* Always read from the eventfd first, if pid 2 died then pid 1 often - * dies too, and we could race, reporting that first and we'd lose - * the real exit status. */ - if (event_fd != -1) - { - s = read (event_fd, &val, 8); - if (s == -1 && errno != EINTR && errno != EAGAIN) - die_with_error ("read eventfd"); - else if (s == 8) - { - exitc = (int) val - 1; - report_child_exit_status (exitc, setup_finished_fd); - return exitc; - } - } - - /* We need to read the signal_fd, or it will keep polling as read, - * however we ignore the details as we get them from waitpid - * below anyway */ - s = read (signal_fd, &fdsi, sizeof (struct signalfd_siginfo)); - if (s == -1 && errno != EINTR && errno != EAGAIN) - die_with_error ("read signalfd"); - - /* We may actually get several sigchld compressed into one - SIGCHLD, so we have to handle all of them. */ - while ((died_pid = waitpid (-1, &died_status, WNOHANG)) > 0) - { - /* We may be getting sigchild from other children too. For instance if - someone created a child process, and then exec:ed bubblewrap. Ignore them */ - if (died_pid == child_pid) - { - exitc = propagate_exit_status (died_status); - report_child_exit_status (exitc, setup_finished_fd); - return exitc; - } - } - } - - die ("Should not be reached"); - - return 0; -} - -/* This is pid 1 in the app sandbox. It is needed because we're using - * pid namespaces, and someone has to reap zombies in it. We also detect - * when the initial process (pid 2) dies and report its exit status to - * the monitor so that it can return it to the original spawner. - * - * When there are no other processes in the sandbox the wait will return - * ECHILD, and we then exit pid 1 to clean up the sandbox. */ -static int -do_init (int event_fd, pid_t initial_pid) -{ - int initial_exit_status = 1; - LockFile *lock; - - for (lock = lock_files; lock != NULL; lock = lock->next) - { - int fd = open (lock->path, O_RDONLY | O_CLOEXEC); - if (fd == -1) - die_with_error ("Unable to open lock file %s", lock->path); - - struct flock l = { - .l_type = F_RDLCK, - .l_whence = SEEK_SET, - .l_start = 0, - .l_len = 0 - }; - - if (fcntl (fd, F_SETLK, &l) < 0) - die_with_error ("Unable to lock file %s", lock->path); - - /* Keep fd open to hang on to lock */ - lock->fd = fd; - } - - /* Optionally bind our lifecycle to that of the caller */ - handle_die_with_parent (); - - seccomp_programs_apply (); - - while (TRUE) - { - pid_t child; - int status; - - child = wait (&status); - if (child == initial_pid) - { - initial_exit_status = propagate_exit_status (status); - - if(event_fd != -1) - { - uint64_t val; - int res UNUSED; - - val = initial_exit_status + 1; - res = write (event_fd, &val, 8); - /* Ignore res, if e.g. the parent died and closed event_fd - we don't want to error out here */ - } - } - - if (child == -1 && errno != EINTR) - { - if (errno != ECHILD) - die_with_error ("init wait()"); - break; - } - } - - /* Close FDs. */ - for (lock = lock_files; lock != NULL; lock = lock->next) - { - if (lock->fd >= 0) - { - close (lock->fd); - lock->fd = -1; - } - } - - return initial_exit_status; -} - -#define CAP_TO_MASK_0(x) (1L << ((x) & 31)) -#define CAP_TO_MASK_1(x) CAP_TO_MASK_0(x - 32) - -/* Set if --cap-add or --cap-drop were used */ -static bool opt_cap_add_or_drop_used; -/* The capability set we'll target, used if above is true */ -static uint32_t requested_caps[2] = {0, 0}; - -/* low 32bit caps needed */ -/* CAP_SYS_PTRACE is needed to dereference the symlinks in /proc//ns/, see namespaces(7) */ -#define REQUIRED_CAPS_0 (CAP_TO_MASK_0 (CAP_SYS_ADMIN) | CAP_TO_MASK_0 (CAP_SYS_CHROOT) | CAP_TO_MASK_0 (CAP_NET_ADMIN) | CAP_TO_MASK_0 (CAP_SETUID) | CAP_TO_MASK_0 (CAP_SETGID) | CAP_TO_MASK_0 (CAP_SYS_PTRACE)) -/* high 32bit caps needed */ -#define REQUIRED_CAPS_1 0 - -static void -set_required_caps (void) -{ - struct __user_cap_header_struct hdr = { _LINUX_CAPABILITY_VERSION_3, 0 }; - struct __user_cap_data_struct data[2] = { { 0 } }; - - /* Drop all non-require capabilities */ - data[0].effective = REQUIRED_CAPS_0; - data[0].permitted = REQUIRED_CAPS_0; - data[0].inheritable = 0; - data[1].effective = REQUIRED_CAPS_1; - data[1].permitted = REQUIRED_CAPS_1; - data[1].inheritable = 0; - if (capset (&hdr, data) < 0) - die_with_error ("capset failed"); -} - -static void -drop_all_caps (bool keep_requested_caps) -{ - struct __user_cap_header_struct hdr = { _LINUX_CAPABILITY_VERSION_3, 0 }; - struct __user_cap_data_struct data[2] = { { 0 } }; - - if (keep_requested_caps) - { - /* Avoid calling capset() unless we need to; currently - * systemd-nspawn at least is known to install a seccomp - * policy denying capset() for dubious reasons. - * - */ - if (!opt_cap_add_or_drop_used && real_uid == 0) - { - assert (!is_privileged); - return; - } - data[0].effective = requested_caps[0]; - data[0].permitted = requested_caps[0]; - data[0].inheritable = requested_caps[0]; - data[1].effective = requested_caps[1]; - data[1].permitted = requested_caps[1]; - data[1].inheritable = requested_caps[1]; - } - - if (capset (&hdr, data) < 0) - { - /* While the above logic ensures we don't call capset() for the primary - * process unless configured to do so, we still try to drop privileges for - * the init process unconditionally. Since due to the systemd seccomp - * filter that will fail, let's just ignore it. - */ - if (errno == EPERM && real_uid == 0 && !is_privileged) - return; - else - die_with_error ("capset failed"); - } -} - -static bool -has_caps (void) -{ - struct __user_cap_header_struct hdr = { _LINUX_CAPABILITY_VERSION_3, 0 }; - struct __user_cap_data_struct data[2] = { { 0 } }; - - if (capget (&hdr, data) < 0) - die_with_error ("capget failed"); - - return data[0].permitted != 0 || data[1].permitted != 0; -} - -/* Most of the code here is used both to add caps to the ambient capabilities - * and drop caps from the bounding set. Handle both cases here and add - * drop_cap_bounding_set/set_ambient_capabilities wrappers to facilitate its usage. - */ -static void -prctl_caps (uint32_t *caps, bool do_cap_bounding, bool do_set_ambient) -{ - unsigned long cap; - - /* We ignore both EINVAL and EPERM, as we are actually relying - * on PR_SET_NO_NEW_PRIVS to ensure the right capabilities are - * available. EPERM in particular can happen with old, buggy - * kernels. See: - * https://github.com/projectatomic/bubblewrap/pull/175#issuecomment-278051373 - * https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/security/commoncap.c?id=160da84dbb39443fdade7151bc63a88f8e953077 - */ - for (cap = 0; cap <= CAP_LAST_CAP; cap++) - { - bool keep = FALSE; - if (cap < 32) - { - if (CAP_TO_MASK_0 (cap) & caps[0]) - keep = TRUE; - } - else - { - if (CAP_TO_MASK_1 (cap) & caps[1]) - keep = TRUE; - } - - if (keep && do_set_ambient) - { -#ifdef PR_CAP_AMBIENT - int res = prctl (PR_CAP_AMBIENT, PR_CAP_AMBIENT_RAISE, cap, 0, 0); - if (res == -1 && !(errno == EINVAL || errno == EPERM)) - die_with_error ("Adding ambient capability %ld", cap); -#else - /* We ignore the EINVAL that results from not having PR_CAP_AMBIENT - * in the current kernel at runtime, so also ignore not having it - * in the current kernel headers at compile-time */ -#endif - } - - if (!keep && do_cap_bounding) - { - int res = prctl (PR_CAPBSET_DROP, cap, 0, 0, 0); - if (res == -1 && !(errno == EINVAL || errno == EPERM)) - die_with_error ("Dropping capability %ld from bounds", cap); - } - } -} - -static void -drop_cap_bounding_set (bool drop_all) -{ - if (!drop_all) - prctl_caps (requested_caps, TRUE, FALSE); - else - { - uint32_t no_caps[2] = {0, 0}; - prctl_caps (no_caps, TRUE, FALSE); - } -} - -static void -set_ambient_capabilities (void) -{ - if (is_privileged) - return; - prctl_caps (requested_caps, FALSE, TRUE); -} - -/* This acquires the privileges that the bwrap will need it to work. - * If bwrap is not setuid, then this does nothing, and it relies on - * unprivileged user namespaces to be used. This case is - * "is_privileged = FALSE". - * - * If bwrap is setuid, then we do things in phases. - * The first part is run as euid 0, but with fsuid as the real user. - * The second part, inside the child, is run as the real user but with - * capabilities. - * And finally we drop all capabilities. - * The reason for the above dance is to avoid having the setup phase - * being able to read files the user can't, while at the same time - * working around various kernel issues. See below for details. - */ -static void -acquire_privs (void) -{ - uid_t euid, new_fsuid; - - euid = geteuid (); - - /* Are we setuid ? */ - if (real_uid != euid) - { - if (euid != 0) - die ("Unexpected setuid user %d, should be 0", euid); - - is_privileged = TRUE; - /* We want to keep running as euid=0 until at the clone() - * operation because doing so will make the user namespace be - * owned by root, which makes it not ptrace:able by the user as - * it otherwise would be. After that we will run fully as the - * user, which is necessary e.g. to be able to read from a fuse - * mount from the user. - * - * However, we don't want to accidentally mis-use euid=0 for - * escalated filesystem access before the clone(), so we set - * fsuid to the uid. - */ - if (setfsuid (real_uid) < 0) - die_with_error ("Unable to set fsuid"); - - /* setfsuid can't properly report errors, check that it worked (as per manpage) */ - new_fsuid = setfsuid (-1); - if (new_fsuid != real_uid) - die ("Unable to set fsuid (was %d)", (int)new_fsuid); - - /* We never need capabilities after execve(), so lets drop everything from the bounding set */ - drop_cap_bounding_set (TRUE); - - /* Keep only the required capabilities for setup */ - set_required_caps (); - } - else if (real_uid != 0 && has_caps ()) - { - /* We have some capabilities in the non-setuid case, which should not happen. - Probably caused by the binary being setcap instead of setuid which we - don't support anymore */ - die ("Unexpected capabilities but not setuid, old file caps config?"); - } - else if (real_uid == 0) - { - /* If our uid is 0, default to inheriting all caps; the caller - * can drop them via --cap-drop. This is used by at least rpm-ostree. - * Note this needs to happen before the argument parsing of --cap-drop. - */ - struct __user_cap_header_struct hdr = { _LINUX_CAPABILITY_VERSION_3, 0 }; - struct __user_cap_data_struct data[2] = { { 0 } }; - - if (capget (&hdr, data) < 0) - die_with_error ("capget (for uid == 0) failed"); - - requested_caps[0] = data[0].effective; - requested_caps[1] = data[1].effective; - } - - /* Else, we try unprivileged user namespaces */ -} - -/* This is called once we're inside the namespace */ -static void -switch_to_user_with_privs (void) -{ - /* If we're in a new user namespace, we got back the bounding set, clear it again */ - if (opt_unshare_user || opt_userns_fd != -1) - drop_cap_bounding_set (FALSE); - - /* If we switched to a new user namespace it may allow other uids/gids, so switch to the target one */ - if (opt_userns_fd != -1) - { - if (opt_sandbox_uid != real_uid && setuid (opt_sandbox_uid) < 0) - die_with_error ("unable to switch to uid %d", opt_sandbox_uid); - - if (opt_sandbox_gid != real_gid && setgid (opt_sandbox_gid) < 0) - die_with_error ("unable to switch to gid %d", opt_sandbox_gid); - } - - if (!is_privileged) - return; - - /* Tell kernel not clear capabilities when later dropping root uid */ - if (prctl (PR_SET_KEEPCAPS, 1, 0, 0, 0) < 0) - die_with_error ("prctl(PR_SET_KEEPCAPS) failed"); - - if (setuid (opt_sandbox_uid) < 0) - die_with_error ("unable to drop root uid"); - - /* Regain effective required capabilities from permitted */ - set_required_caps (); -} - -/* Call setuid() and use capset() to adjust capabilities */ -static void -drop_privs (bool keep_requested_caps, - bool already_changed_uid) -{ - assert (!keep_requested_caps || !is_privileged); - /* Drop root uid */ - if (is_privileged && !already_changed_uid && - setuid (opt_sandbox_uid) < 0) - die_with_error ("unable to drop root uid"); - - drop_all_caps (keep_requested_caps); - - /* We don't have any privs now, so mark us dumpable which makes /proc/self be owned by the user instead of root */ - if (prctl (PR_SET_DUMPABLE, 1, 0, 0, 0) != 0) - die_with_error ("can't set dumpable"); -} - -static char * -get_newroot_path (const char *path) -{ - while (*path == '/') - path++; - return strconcat ("/newroot/", path); -} - -static void -write_uid_gid_map (uid_t sandbox_uid, - uid_t parent_uid, - uid_t sandbox_gid, - uid_t parent_gid, - pid_t pid, - bool deny_groups, - bool map_root) -{ - cleanup_free char *uid_map = NULL; - cleanup_free char *gid_map = NULL; - cleanup_free char *dir = NULL; - cleanup_fd int dir_fd = -1; - uid_t old_fsuid = -1; - - if (pid == -1) - dir = xstrdup ("self"); - else - dir = xasprintf ("%d", pid); - - dir_fd = openat (proc_fd, dir, O_PATH); - if (dir_fd < 0) - die_with_error ("open /proc/%s failed", dir); - - if (map_root && parent_uid != 0 && sandbox_uid != 0) - uid_map = xasprintf ("0 %d 1\n" - "%d %d 1\n", overflow_uid, sandbox_uid, parent_uid); - else - uid_map = xasprintf ("%d %d 1\n", sandbox_uid, parent_uid); - - if (map_root && parent_gid != 0 && sandbox_gid != 0) - gid_map = xasprintf ("0 %d 1\n" - "%d %d 1\n", overflow_gid, sandbox_gid, parent_gid); - else - gid_map = xasprintf ("%d %d 1\n", sandbox_gid, parent_gid); - - /* We have to be root to be allowed to write to the uid map - * for setuid apps, so temporary set fsuid to 0 */ - if (is_privileged) - old_fsuid = setfsuid (0); - - if (write_file_at (dir_fd, "uid_map", uid_map) != 0) - die_with_error ("setting up uid map"); - - if (deny_groups && - write_file_at (dir_fd, "setgroups", "deny\n") != 0) - { - /* If /proc/[pid]/setgroups does not exist, assume we are - * running a linux kernel < 3.19, i.e. we live with the - * vulnerability known as CVE-2014-8989 in older kernels - * where setgroups does not exist. - */ - if (errno != ENOENT) - die_with_error ("error writing to setgroups"); - } - - if (write_file_at (dir_fd, "gid_map", gid_map) != 0) - die_with_error ("setting up gid map"); - - if (is_privileged) - { - setfsuid (old_fsuid); - if (setfsuid (-1) != real_uid) - die ("Unable to re-set fsuid"); - } -} - -static void -privileged_op (int privileged_op_socket, - uint32_t op, - uint32_t flags, - uint32_t perms, - const char *arg1, - const char *arg2) -{ - bind_mount_result bind_result; - - if (privileged_op_socket != -1) - { - uint32_t buffer[2048]; /* 8k, but is int32 to guarantee nice alignment */ - PrivSepOp *op_buffer = (PrivSepOp *) buffer; - size_t buffer_size = sizeof (PrivSepOp); - uint32_t arg1_offset = 0, arg2_offset = 0; - - /* We're unprivileged, send this request to the privileged part */ - - if (arg1 != NULL) - { - arg1_offset = buffer_size; - buffer_size += strlen (arg1) + 1; - } - if (arg2 != NULL) - { - arg2_offset = buffer_size; - buffer_size += strlen (arg2) + 1; - } - - if (buffer_size >= sizeof (buffer)) - die ("privilege separation operation to large"); - - op_buffer->op = op; - op_buffer->flags = flags; - op_buffer->perms = perms; - op_buffer->arg1_offset = arg1_offset; - op_buffer->arg2_offset = arg2_offset; - if (arg1 != NULL) - strcpy ((char *) buffer + arg1_offset, arg1); - if (arg2 != NULL) - strcpy ((char *) buffer + arg2_offset, arg2); - - if (write (privileged_op_socket, buffer, buffer_size) != buffer_size) - die ("Can't write to privileged_op_socket"); - - if (read (privileged_op_socket, buffer, 1) != 1) - die ("Can't read from privileged_op_socket"); - - return; - } - - /* - * This runs a privileged request for the unprivileged setup - * code. Note that since the setup code is unprivileged it is not as - * trusted, so we need to verify that all requests only affect the - * child namespace as set up by the privileged parts of the setup, - * and that all the code is very careful about handling input. - * - * This means: - * * Bind mounts are safe, since we always use filesystem namespace. They - * must be recursive though, as otherwise you can use a non-recursive bind - * mount to access an otherwise over-mounted mountpoint. - * * Mounting proc, tmpfs, mqueue, devpts in the child namespace is assumed to - * be safe. - * * Remounting RO (even non-recursive) is safe because it decreases privileges. - * * sethostname() is safe only if we set up a UTS namespace - */ - switch (op) - { - case PRIV_SEP_OP_DONE: - break; - - case PRIV_SEP_OP_REMOUNT_RO_NO_RECURSIVE: - bind_result = bind_mount (proc_fd, NULL, arg2, BIND_READONLY); - - if (bind_result != BIND_MOUNT_SUCCESS) - die_with_bind_result (bind_result, errno, - "Can't remount readonly on %s", arg2); - - break; - - case PRIV_SEP_OP_BIND_MOUNT: - /* We always bind directories recursively, otherwise this would let us - access files that are otherwise covered on the host */ - bind_result = bind_mount (proc_fd, arg1, arg2, BIND_RECURSIVE | flags); - - if (bind_result != BIND_MOUNT_SUCCESS) - die_with_bind_result (bind_result, errno, - "Can't bind mount %s on %s", arg1, arg2); - - break; - - case PRIV_SEP_OP_PROC_MOUNT: - if (mount ("proc", arg1, "proc", MS_NOSUID | MS_NOEXEC | MS_NODEV, NULL) != 0) - die_with_error ("Can't mount proc on %s", arg1); - break; - - case PRIV_SEP_OP_TMPFS_MOUNT: - { - cleanup_free char *mode = xasprintf ("mode=%#o", perms); - cleanup_free char *opt = label_mount (mode, opt_file_label); - if (mount ("tmpfs", arg1, "tmpfs", MS_NOSUID | MS_NODEV, opt) != 0) - die_with_error ("Can't mount tmpfs on %s", arg1); - break; - } - - case PRIV_SEP_OP_DEVPTS_MOUNT: - if (mount ("devpts", arg1, "devpts", MS_NOSUID | MS_NOEXEC, - "newinstance,ptmxmode=0666,mode=620") != 0) - die_with_error ("Can't mount devpts on %s", arg1); - break; - - case PRIV_SEP_OP_MQUEUE_MOUNT: - if (mount ("mqueue", arg1, "mqueue", 0, NULL) != 0) - die_with_error ("Can't mount mqueue on %s", arg1); - break; - - case PRIV_SEP_OP_SET_HOSTNAME: - /* This is checked at the start, but lets verify it here in case - something manages to send hacked priv-sep operation requests. */ - if (!opt_unshare_uts) - die ("Refusing to set hostname in original namespace"); - if (sethostname (arg1, strlen(arg1)) != 0) - die_with_error ("Can't set hostname to %s", arg1); - break; - - default: - die ("Unexpected privileged op %d", op); - } -} - -/* This is run unprivileged in the child namespace but can request - * some privileged operations (also in the child namespace) via the - * privileged_op_socket. - */ -static void -setup_newroot (bool unshare_pid, - int privileged_op_socket) -{ - SetupOp *op; - - for (op = ops; op != NULL; op = op->next) - { - cleanup_free char *source = NULL; - cleanup_free char *dest = NULL; - int source_mode = 0; - int i; - - if (op->source && - op->type != SETUP_MAKE_SYMLINK) - { - source = get_oldroot_path (op->source); - source_mode = get_file_mode (source); - if (source_mode < 0) - { - if (op->flags & ALLOW_NOTEXIST && errno == ENOENT) - continue; /* Ignore and move on */ - die_with_error("Can't get type of source %s", op->source); - } - } - - if (op->dest && - (op->flags & NO_CREATE_DEST) == 0) - { - unsigned parent_mode = 0755; - - /* If we're creating a file that is inaccessible by the owning group, - * try to achieve least-astonishment by creating parents also - * inaccessible by that group. */ - if (op->perms >= 0 && - (op->perms & 0070) == 0) - parent_mode &= ~0050; - - /* The same, but for users other than the owner and group. */ - if (op->perms >= 0 && - (op->perms & 0007) == 0) - parent_mode &= ~0005; - - dest = get_newroot_path (op->dest); - if (mkdir_with_parents (dest, parent_mode, FALSE) != 0) - die_with_error ("Can't mkdir parents for %s", op->dest); - } - - switch (op->type) - { - case SETUP_RO_BIND_MOUNT: - case SETUP_DEV_BIND_MOUNT: - case SETUP_BIND_MOUNT: - if (source_mode == S_IFDIR) - { - if (ensure_dir (dest, 0755) != 0) - die_with_error ("Can't mkdir %s", op->dest); - } - else if (ensure_file (dest, 0444) != 0) - die_with_error ("Can't create file at %s", op->dest); - - privileged_op (privileged_op_socket, - PRIV_SEP_OP_BIND_MOUNT, - (op->type == SETUP_RO_BIND_MOUNT ? BIND_READONLY : 0) | - (op->type == SETUP_DEV_BIND_MOUNT ? BIND_DEVICES : 0), - 0, source, dest); - - if (op->fd >= 0) - { - struct stat fd_st, mount_st; - - /* When using bind-fd, there is a race condition between resolving the fd as a magic symlink - * and mounting it, where someone could replace what is at the symlink target. Ideally - * we would not even resolve the symlink and directly bind-mount from the fd, but unfortunately - * we can't do that, because its not permitted to bind mount a fd from another user namespace. - * So, we resolve, mount and then compare fstat+stat to detect the race. */ - - if (fstat(op->fd, &fd_st) != 0) - die_with_error("Can't stat fd %d", op->fd); - if (lstat(dest, &mount_st) != 0) - die_with_error("Can't stat mount at %s", dest); - - if (fd_st.st_ino != mount_st.st_ino || - fd_st.st_dev != mount_st.st_dev) - die_with_error("Race condition binding dirfd"); - - close(op->fd); - op->fd = -1; - } - - break; - - case SETUP_REMOUNT_RO_NO_RECURSIVE: - privileged_op (privileged_op_socket, - PRIV_SEP_OP_REMOUNT_RO_NO_RECURSIVE, 0, 0, NULL, dest); - break; - - case SETUP_MOUNT_PROC: - if (ensure_dir (dest, 0755) != 0) - die_with_error ("Can't mkdir %s", op->dest); - - if (unshare_pid || opt_pidns_fd != -1) - { - /* Our own procfs */ - privileged_op (privileged_op_socket, - PRIV_SEP_OP_PROC_MOUNT, 0, 0, - dest, NULL); - } - else - { - /* Use system procfs, as we share pid namespace anyway */ - privileged_op (privileged_op_socket, - PRIV_SEP_OP_BIND_MOUNT, 0, 0, - "oldroot/proc", dest); - } - - /* There are a bunch of weird old subdirs of /proc that could potentially be - problematic (for instance /proc/sysrq-trigger lets you shut down the machine - if you have write access). We should not have access to these as a non-privileged - user, but lets cover them anyway just to make sure */ - static const char * const cover_proc_dirs[] = { "sys", "sysrq-trigger", "irq", "bus" }; - for (i = 0; i < N_ELEMENTS (cover_proc_dirs); i++) - { - cleanup_free char *subdir = strconcat3 (dest, "/", cover_proc_dirs[i]); - if (access (subdir, W_OK) < 0) - { - /* The file is already read-only or doesn't exist. */ - if (errno == EACCES || errno == ENOENT || errno == EROFS) - continue; - - die_with_error ("Can't access %s", subdir); - } - - privileged_op (privileged_op_socket, - PRIV_SEP_OP_BIND_MOUNT, BIND_READONLY, 0, - subdir, subdir); - } - - break; - - case SETUP_MOUNT_DEV: - if (ensure_dir (dest, 0755) != 0) - die_with_error ("Can't mkdir %s", op->dest); - - privileged_op (privileged_op_socket, - PRIV_SEP_OP_TMPFS_MOUNT, 0, 0755, - dest, NULL); - - static const char *const devnodes[] = { "null", "zero", "full", "random", "urandom", "tty" }; - for (i = 0; i < N_ELEMENTS (devnodes); i++) - { - cleanup_free char *node_dest = strconcat3 (dest, "/", devnodes[i]); - cleanup_free char *node_src = strconcat ("/oldroot/dev/", devnodes[i]); - if (create_file (node_dest, 0444, NULL) != 0) - die_with_error ("Can't create file %s/%s", op->dest, devnodes[i]); - privileged_op (privileged_op_socket, - PRIV_SEP_OP_BIND_MOUNT, BIND_DEVICES, 0, - node_src, node_dest); - } - - static const char *const stdionodes[] = { "stdin", "stdout", "stderr" }; - for (i = 0; i < N_ELEMENTS (stdionodes); i++) - { - cleanup_free char *target = xasprintf ("/proc/self/fd/%d", i); - cleanup_free char *node_dest = strconcat3 (dest, "/", stdionodes[i]); - if (symlink (target, node_dest) < 0) - die_with_error ("Can't create symlink %s/%s", op->dest, stdionodes[i]); - } - - /* /dev/fd and /dev/core - legacy, but both nspawn and docker do these */ - { cleanup_free char *dev_fd = strconcat (dest, "/fd"); - if (symlink ("/proc/self/fd", dev_fd) < 0) - die_with_error ("Can't create symlink %s", dev_fd); - } - { cleanup_free char *dev_core = strconcat (dest, "/core"); - if (symlink ("/proc/kcore", dev_core) < 0) - die_with_error ("Can't create symlink %s", dev_core); - } - - { - cleanup_free char *pts = strconcat (dest, "/pts"); - cleanup_free char *ptmx = strconcat (dest, "/ptmx"); - cleanup_free char *shm = strconcat (dest, "/shm"); - - if (mkdir (shm, 0755) == -1) - die_with_error ("Can't create %s/shm", op->dest); - - if (mkdir (pts, 0755) == -1) - die_with_error ("Can't create %s/devpts", op->dest); - privileged_op (privileged_op_socket, - PRIV_SEP_OP_DEVPTS_MOUNT, 0, 0, pts, NULL); - - if (symlink ("pts/ptmx", ptmx) != 0) - die_with_error ("Can't make symlink at %s/ptmx", op->dest); - } - - /* If stdout is a tty, that means the sandbox can write to the - outside-sandbox tty. In that case we also create a /dev/console - that points to this tty device. This should not cause any more - access than we already have, and it makes ttyname() work in the - sandbox. */ - if (host_tty_dev != NULL && *host_tty_dev != 0) - { - cleanup_free char *src_tty_dev = strconcat ("/oldroot", host_tty_dev); - cleanup_free char *dest_console = strconcat (dest, "/console"); - - if (create_file (dest_console, 0444, NULL) != 0) - die_with_error ("creating %s/console", op->dest); - - privileged_op (privileged_op_socket, - PRIV_SEP_OP_BIND_MOUNT, BIND_DEVICES, 0, - src_tty_dev, dest_console); - } - - break; - - case SETUP_MOUNT_TMPFS: - assert (dest != NULL); - assert (op->perms >= 0); - assert (op->perms <= 07777); - - if (ensure_dir (dest, 0755) != 0) - die_with_error ("Can't mkdir %s", op->dest); - - privileged_op (privileged_op_socket, - PRIV_SEP_OP_TMPFS_MOUNT, 0, op->perms, - dest, NULL); - break; - - case SETUP_MOUNT_MQUEUE: - if (ensure_dir (dest, 0755) != 0) - die_with_error ("Can't mkdir %s", op->dest); - - privileged_op (privileged_op_socket, - PRIV_SEP_OP_MQUEUE_MOUNT, 0, 0, - dest, NULL); - break; - - case SETUP_MAKE_DIR: - assert (dest != NULL); - assert (op->perms >= 0); - assert (op->perms <= 07777); - - if (ensure_dir (dest, op->perms) != 0) - die_with_error ("Can't mkdir %s", op->dest); - - break; - - case SETUP_CHMOD: - assert (op->dest != NULL); - /* We used NO_CREATE_DEST so we have to use get_newroot_path() - * explicitly */ - assert (dest == NULL); - dest = get_newroot_path (op->dest); - assert (dest != NULL); - assert (op->perms >= 0); - assert (op->perms <= 07777); - - if (chmod (dest, op->perms) != 0) - die_with_error ("Can't chmod %#o %s", op->perms, op->dest); - - break; - - case SETUP_MAKE_FILE: - { - cleanup_fd int dest_fd = -1; - - assert (dest != NULL); - assert (op->perms >= 0); - assert (op->perms <= 07777); - - dest_fd = creat (dest, op->perms); - if (dest_fd == -1) - die_with_error ("Can't create file %s", op->dest); - - if (copy_file_data (op->fd, dest_fd) != 0) - die_with_error ("Can't write data to file %s", op->dest); - - close (op->fd); - op->fd = -1; - } - break; - - case SETUP_MAKE_BIND_FILE: - case SETUP_MAKE_RO_BIND_FILE: - { - cleanup_fd int dest_fd = -1; - char tempfile[] = "/bindfileXXXXXX"; - - assert (dest != NULL); - assert (op->perms >= 0); - assert (op->perms <= 07777); - - dest_fd = mkstemp (tempfile); - if (dest_fd == -1) - die_with_error ("Can't create tmpfile for %s", op->dest); - - if (fchmod (dest_fd, op->perms) != 0) - die_with_error ("Can't set mode %#o on file to be used for %s", - op->perms, op->dest); - - if (copy_file_data (op->fd, dest_fd) != 0) - die_with_error ("Can't write data to file %s", op->dest); - - close (op->fd); - op->fd = -1; - - assert (dest != NULL); - - if (ensure_file (dest, 0444) != 0) - die_with_error ("Can't create file at %s", op->dest); - - privileged_op (privileged_op_socket, - PRIV_SEP_OP_BIND_MOUNT, - (op->type == SETUP_MAKE_RO_BIND_FILE ? BIND_READONLY : 0), - 0, tempfile, dest); - - /* Remove the file so we're sure the app can't get to it in any other way. - Its outside the container chroot, so it shouldn't be possible, but lets - make it really sure. */ - unlink (tempfile); - } - break; - - case SETUP_MAKE_SYMLINK: - assert (op->source != NULL); /* guaranteed by the constructor */ - if (symlink (op->source, dest) != 0) - die_with_error ("Can't make symlink at %s", op->dest); - break; - - case SETUP_SET_HOSTNAME: - assert (op->dest != NULL); /* guaranteed by the constructor */ - privileged_op (privileged_op_socket, - PRIV_SEP_OP_SET_HOSTNAME, 0, 0, - op->dest, NULL); - break; - - default: - die ("Unexpected type %d", op->type); - } - } - privileged_op (privileged_op_socket, - PRIV_SEP_OP_DONE, 0, 0, NULL, NULL); -} - -/* Do not leak file descriptors already used by setup_newroot () */ -static void -close_ops_fd (void) -{ - SetupOp *op; - - for (op = ops; op != NULL; op = op->next) - { - if (op->fd != -1) - { - (void) close (op->fd); - op->fd = -1; - } - } -} - -/* We need to resolve relative symlinks in the sandbox before we - chroot so that absolute symlinks are handled correctly. We also - need to do this after we've switched to the real uid so that - e.g. paths on fuse mounts work */ -static void -resolve_symlinks_in_ops (void) -{ - SetupOp *op; - - for (op = ops; op != NULL; op = op->next) - { - const char *old_source; - - switch (op->type) - { - case SETUP_RO_BIND_MOUNT: - case SETUP_DEV_BIND_MOUNT: - case SETUP_BIND_MOUNT: - old_source = op->source; - op->source = realpath (old_source, NULL); - if (op->source == NULL) - { - if (op->flags & ALLOW_NOTEXIST && errno == ENOENT) - op->source = old_source; - else - die_with_error("Can't find source path %s", old_source); - } - break; - - case SETUP_MOUNT_PROC: - case SETUP_MOUNT_DEV: - case SETUP_MOUNT_TMPFS: - case SETUP_MOUNT_MQUEUE: - case SETUP_MAKE_DIR: - case SETUP_MAKE_FILE: - case SETUP_MAKE_BIND_FILE: - case SETUP_MAKE_RO_BIND_FILE: - case SETUP_MAKE_SYMLINK: - case SETUP_REMOUNT_RO_NO_RECURSIVE: - case SETUP_SET_HOSTNAME: - case SETUP_CHMOD: - default: - break; - } - } -} - - -static const char * -resolve_string_offset (void *buffer, - size_t buffer_size, - uint32_t offset) -{ - if (offset == 0) - return NULL; - - if (offset > buffer_size) - die ("Invalid string offset %d (buffer size %zd)", offset, buffer_size); - - return (const char *) buffer + offset; -} - -static uint32_t -read_priv_sec_op (int read_socket, - void *buffer, - size_t buffer_size, - uint32_t *flags, - uint32_t *perms, - const char **arg1, - const char **arg2) -{ - const PrivSepOp *op = (const PrivSepOp *) buffer; - ssize_t rec_len; - - do - rec_len = read (read_socket, buffer, buffer_size - 1); - while (rec_len == -1 && errno == EINTR); - - if (rec_len < 0) - die_with_error ("Can't read from unprivileged helper"); - - if (rec_len == 0) - exit (1); /* Privileged helper died and printed error, so exit silently */ - - if (rec_len < sizeof (PrivSepOp)) - die ("Invalid size %zd from unprivileged helper", rec_len); - - /* Guarantee zero termination of any strings */ - ((char *) buffer)[rec_len] = 0; - - *flags = op->flags; - *perms = op->perms; - *arg1 = resolve_string_offset (buffer, rec_len, op->arg1_offset); - *arg2 = resolve_string_offset (buffer, rec_len, op->arg2_offset); - - return op->op; -} - -static void __attribute__ ((noreturn)) -print_version_and_exit (void) -{ - printf ("%s\n", PACKAGE_STRING); - exit (0); -} - -static int -takes_perms (const char *next_option) -{ - static const char *const options_that_take_perms[] = - { - "--bind-data", - "--dir", - "--file", - "--ro-bind-data", - "--tmpfs", - }; - size_t i; - - for (i = 0; i < N_ELEMENTS (options_that_take_perms); i++) - { - if (strcmp (options_that_take_perms[i], next_option) == 0) - return 1; - } - - return 0; -} - -static void -warn_only_last_option (const char *name) -{ - warn ("Only the last %s option will take effect", name); -} - -static void -parse_args_recurse (int *argcp, - const char ***argvp, - bool in_file, - int *total_parsed_argc_p) -{ - SetupOp *op; - int argc = *argcp; - const char **argv = *argvp; - /* I can't imagine a case where someone wants more than this. - * If you do...you should be able to pass multiple files - * via a single tmpfs and linking them there, etc. - * - * We're adding this hardening due to precedent from - * http://googleprojectzero.blogspot.com/2014/08/the-poisoned-nul-byte-2014-edition.html - * - * I picked 9000 because the Internet told me to and it was hard to - * resist. - */ - static const uint32_t MAX_ARGS = 9000; - - if (*total_parsed_argc_p > MAX_ARGS) - die ("Exceeded maximum number of arguments %u", MAX_ARGS); - - while (argc > 0) - { - const char *arg = argv[0]; - - if (next_perms >= 0 && !takes_perms (arg)) - die ("--perms must be followed by an option that creates a file"); - - if (strcmp (arg, "--help") == 0) - { - usage (EXIT_SUCCESS, stdout); - } - else if (strcmp (arg, "--version") == 0) - { - print_version_and_exit (); - } - else if (strcmp (arg, "--args") == 0) - { - int the_fd; - char *endptr; - const char *p, *data_end; - size_t data_len; - cleanup_free const char **data_argv = NULL; - const char **data_argv_copy; - int data_argc; - int i; - - if (in_file) - die ("--args not supported in arguments file"); - - if (argc < 2) - die ("--args takes an argument"); - - the_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || the_fd < 0) - die ("Invalid fd: %s", argv[1]); - - /* opt_args_data is essentially a recursive argv array, which we must - * keep allocated until exit time, since its argv entries get used - * by the other cases in parse_args_recurse() when we recurse. */ - opt_args_data = load_file_data (the_fd, &data_len); - if (opt_args_data == NULL) - die_with_error ("Can't read --args data"); - (void) close (the_fd); - - data_end = opt_args_data + data_len; - data_argc = 0; - - p = opt_args_data; - while (p != NULL && p < data_end) - { - data_argc++; - (*total_parsed_argc_p)++; - if (*total_parsed_argc_p > MAX_ARGS) - die ("Exceeded maximum number of arguments %u", MAX_ARGS); - p = memchr (p, 0, data_end - p); - if (p != NULL) - p++; - } - - data_argv = xcalloc (sizeof (char *) * (data_argc + 1)); - - i = 0; - p = opt_args_data; - while (p != NULL && p < data_end) - { - /* Note: load_file_data always adds a nul terminator, so this is safe - * even for the last string. */ - data_argv[i++] = p; - p = memchr (p, 0, data_end - p); - if (p != NULL) - p++; - } - - data_argv_copy = data_argv; /* Don't change data_argv, we need to free it */ - parse_args_recurse (&data_argc, &data_argv_copy, TRUE, total_parsed_argc_p); - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--unshare-all") == 0) - { - /* Keep this in order with the older (legacy) --unshare arguments, - * we use the --try variants of user and cgroup, since we want - * to support systems/kernels without support for those. - */ - opt_unshare_user_try = opt_unshare_ipc = opt_unshare_pid = - opt_unshare_uts = opt_unshare_cgroup_try = - opt_unshare_net = TRUE; - } - /* Begin here the older individual --unshare variants */ - else if (strcmp (arg, "--unshare-user") == 0) - { - opt_unshare_user = TRUE; - } - else if (strcmp (arg, "--unshare-user-try") == 0) - { - opt_unshare_user_try = TRUE; - } - else if (strcmp (arg, "--unshare-ipc") == 0) - { - opt_unshare_ipc = TRUE; - } - else if (strcmp (arg, "--unshare-pid") == 0) - { - opt_unshare_pid = TRUE; - } - else if (strcmp (arg, "--unshare-net") == 0) - { - opt_unshare_net = TRUE; - } - else if (strcmp (arg, "--unshare-uts") == 0) - { - opt_unshare_uts = TRUE; - } - else if (strcmp (arg, "--unshare-cgroup") == 0) - { - opt_unshare_cgroup = TRUE; - } - else if (strcmp (arg, "--unshare-cgroup-try") == 0) - { - opt_unshare_cgroup_try = TRUE; - } - /* Begin here the newer --share variants */ - else if (strcmp (arg, "--share-net") == 0) - { - opt_unshare_net = FALSE; - } - /* End --share variants, other arguments begin */ - else if (strcmp (arg, "--chdir") == 0) - { - if (argc < 2) - die ("--chdir takes one argument"); - - if (opt_chdir_path != NULL) - warn_only_last_option ("--chdir"); - - opt_chdir_path = argv[1]; - argv++; - argc--; - } - else if (strcmp (arg, "--remount-ro") == 0) - { - if (argc < 2) - die ("--remount-ro takes one argument"); - - op = setup_op_new (SETUP_REMOUNT_RO_NO_RECURSIVE); - op->dest = argv[1]; - - argv++; - argc--; - } - else if (strcmp(arg, "--bind") == 0 || - strcmp(arg, "--bind-try") == 0) - { - if (argc < 3) - die ("%s takes two arguments", arg); - - op = setup_op_new (SETUP_BIND_MOUNT); - op->source = argv[1]; - op->dest = argv[2]; - if (strcmp(arg, "--bind-try") == 0) - op->flags = ALLOW_NOTEXIST; - - argv += 2; - argc -= 2; - } - else if (strcmp(arg, "--ro-bind") == 0 || - strcmp(arg, "--ro-bind-try") == 0) - { - if (argc < 3) - die ("%s takes two arguments", arg); - - op = setup_op_new (SETUP_RO_BIND_MOUNT); - op->source = argv[1]; - op->dest = argv[2]; - if (strcmp(arg, "--ro-bind-try") == 0) - op->flags = ALLOW_NOTEXIST; - - argv += 2; - argc -= 2; - } - else if (strcmp (arg, "--dev-bind") == 0 || - strcmp (arg, "--dev-bind-try") == 0) - { - if (argc < 3) - die ("%s takes two arguments", arg); - - op = setup_op_new (SETUP_DEV_BIND_MOUNT); - op->source = argv[1]; - op->dest = argv[2]; - if (strcmp(arg, "--dev-bind-try") == 0) - op->flags = ALLOW_NOTEXIST; - - argv += 2; - argc -= 2; - } - else if (strcmp (arg, "--bind-fd") == 0 || - strcmp (arg, "--ro-bind-fd") == 0) - { - int src_fd; - char *endptr; - - if (argc < 3) - die ("--bind-fd takes two arguments"); - - src_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || src_fd < 0) - die ("Invalid fd: %s", argv[1]); - - if (strcmp(arg, "--ro-bind-fd") == 0) - op = setup_op_new (SETUP_RO_BIND_MOUNT); - else - op = setup_op_new (SETUP_BIND_MOUNT); - op->source = xasprintf ("/proc/self/fd/%d", src_fd); - op->fd = src_fd; - op->dest = argv[2]; - - argv += 2; - argc -= 2; - } - else if (strcmp (arg, "--proc") == 0) - { - if (argc < 2) - die ("--proc takes an argument"); - - op = setup_op_new (SETUP_MOUNT_PROC); - op->dest = argv[1]; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--exec-label") == 0) - { - if (argc < 2) - die ("--exec-label takes an argument"); - - if (opt_exec_label != NULL) - warn_only_last_option ("--exec-label"); - - opt_exec_label = argv[1]; - die_unless_label_valid (opt_exec_label); - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--file-label") == 0) - { - if (argc < 2) - die ("--file-label takes an argument"); - - if (opt_file_label != NULL) - warn_only_last_option ("--file-label"); - - opt_file_label = argv[1]; - die_unless_label_valid (opt_file_label); - if (label_create_file (opt_file_label)) - die_with_error ("--file-label setup failed"); - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--dev") == 0) - { - if (argc < 2) - die ("--dev takes an argument"); - - op = setup_op_new (SETUP_MOUNT_DEV); - op->dest = argv[1]; - opt_needs_devpts = TRUE; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--tmpfs") == 0) - { - if (argc < 2) - die ("--tmpfs takes an argument"); - - op = setup_op_new (SETUP_MOUNT_TMPFS); - op->dest = argv[1]; - - /* We historically hard-coded the mode of a tmpfs as 0755. */ - if (next_perms >= 0) - op->perms = next_perms; - else - op->perms = 0755; - - next_perms = -1; - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--mqueue") == 0) - { - if (argc < 2) - die ("--mqueue takes an argument"); - - op = setup_op_new (SETUP_MOUNT_MQUEUE); - op->dest = argv[1]; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--dir") == 0) - { - if (argc < 2) - die ("--dir takes an argument"); - - op = setup_op_new (SETUP_MAKE_DIR); - op->dest = argv[1]; - - /* We historically hard-coded the mode of a --dir as 0755. */ - if (next_perms >= 0) - op->perms = next_perms; - else - op->perms = 0755; - - next_perms = -1; - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--file") == 0) - { - int file_fd; - char *endptr; - - if (argc < 3) - die ("--file takes two arguments"); - - file_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || file_fd < 0) - die ("Invalid fd: %s", argv[1]); - - op = setup_op_new (SETUP_MAKE_FILE); - op->fd = file_fd; - op->dest = argv[2]; - - /* We historically hard-coded the mode of a --file as 0666. */ - if (next_perms >= 0) - op->perms = next_perms; - else - op->perms = 0666; - - next_perms = -1; - argv += 2; - argc -= 2; - } - else if (strcmp (arg, "--bind-data") == 0) - { - int file_fd; - char *endptr; - - if (argc < 3) - die ("--bind-data takes two arguments"); - - file_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || file_fd < 0) - die ("Invalid fd: %s", argv[1]); - - op = setup_op_new (SETUP_MAKE_BIND_FILE); - op->fd = file_fd; - op->dest = argv[2]; - - /* This is consistent with previous bubblewrap behaviour: - * before implementing --perms, we took the permissions - * given to us by mkstemp(), which are documented to be 0600. */ - if (next_perms >= 0) - op->perms = next_perms; - else - op->perms = 0600; - - next_perms = -1; - argv += 2; - argc -= 2; - } - else if (strcmp (arg, "--ro-bind-data") == 0) - { - int file_fd; - char *endptr; - - if (argc < 3) - die ("--ro-bind-data takes two arguments"); - - file_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || file_fd < 0) - die ("Invalid fd: %s", argv[1]); - - op = setup_op_new (SETUP_MAKE_RO_BIND_FILE); - op->fd = file_fd; - op->dest = argv[2]; - - /* This is consistent with previous bubblewrap behaviour: - * before implementing --perms, we took the permissions - * given to us by mkstemp(), which are documented to be 0600. */ - if (next_perms >= 0) - op->perms = next_perms; - else - op->perms = 0600; - - next_perms = -1; - argv += 2; - argc -= 2; - } - else if (strcmp (arg, "--symlink") == 0) - { - if (argc < 3) - die ("--symlink takes two arguments"); - - op = setup_op_new (SETUP_MAKE_SYMLINK); - op->source = argv[1]; - op->dest = argv[2]; - - argv += 2; - argc -= 2; - } - else if (strcmp (arg, "--lock-file") == 0) - { - if (argc < 2) - die ("--lock-file takes an argument"); - - (void) lock_file_new (argv[1]); - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--sync-fd") == 0) - { - int the_fd; - char *endptr; - - if (argc < 2) - die ("--sync-fd takes an argument"); - - if (opt_sync_fd != -1) - warn_only_last_option ("--sync-fd"); - - the_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || the_fd < 0) - die ("Invalid fd: %s", argv[1]); - - opt_sync_fd = the_fd; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--block-fd") == 0) - { - int the_fd; - char *endptr; - - if (argc < 2) - die ("--block-fd takes an argument"); - - if (opt_block_fd != -1) - warn_only_last_option ("--block-fd"); - - the_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || the_fd < 0) - die ("Invalid fd: %s", argv[1]); - - opt_block_fd = the_fd; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--userns-block-fd") == 0) - { - int the_fd; - char *endptr; - - if (argc < 2) - die ("--userns-block-fd takes an argument"); - - if (opt_userns_block_fd != -1) - warn_only_last_option ("--userns-block-fd"); - - the_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || the_fd < 0) - die ("Invalid fd: %s", argv[1]); - - opt_userns_block_fd = the_fd; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--info-fd") == 0) - { - int the_fd; - char *endptr; - - if (argc < 2) - die ("--info-fd takes an argument"); - - if (opt_info_fd != -1) - warn_only_last_option ("--info-fd"); - - the_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || the_fd < 0) - die ("Invalid fd: %s", argv[1]); - - opt_info_fd = the_fd; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--json-status-fd") == 0) - { - int the_fd; - char *endptr; - - if (argc < 2) - die ("--json-status-fd takes an argument"); - - if (opt_json_status_fd != -1) - warn_only_last_option ("--json-status-fd"); - - the_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || the_fd < 0) - die ("Invalid fd: %s", argv[1]); - - opt_json_status_fd = the_fd; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--seccomp") == 0) - { - int the_fd; - char *endptr; - - if (argc < 2) - die ("--seccomp takes an argument"); - - if (seccomp_programs != NULL) - die ("--seccomp cannot be combined with --add-seccomp-fd"); - - if (opt_seccomp_fd != -1) - warn_only_last_option ("--seccomp"); - - the_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || the_fd < 0) - die ("Invalid fd: %s", argv[1]); - - opt_seccomp_fd = the_fd; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--add-seccomp-fd") == 0) - { - int the_fd; - char *endptr; - - if (argc < 2) - die ("--add-seccomp-fd takes an argument"); - - if (opt_seccomp_fd != -1) - die ("--add-seccomp-fd cannot be combined with --seccomp"); - - the_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || the_fd < 0) - die ("Invalid fd: %s", argv[1]); - - /* takes ownership of fd */ - seccomp_program_new (&the_fd); - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--userns") == 0) - { - int the_fd; - char *endptr; - - if (argc < 2) - die ("--userns takes an argument"); - - if (opt_userns_fd != -1) - warn_only_last_option ("--userns"); - - the_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || the_fd < 0) - die ("Invalid fd: %s", argv[1]); - - opt_userns_fd = the_fd; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--userns2") == 0) - { - int the_fd; - char *endptr; - - if (argc < 2) - die ("--userns2 takes an argument"); - - if (opt_userns2_fd != -1) - warn_only_last_option ("--userns2"); - - the_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || the_fd < 0) - die ("Invalid fd: %s", argv[1]); - - opt_userns2_fd = the_fd; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--pidns") == 0) - { - int the_fd; - char *endptr; - - if (argc < 2) - die ("--pidns takes an argument"); - - if (opt_pidns_fd != -1) - warn_only_last_option ("--pidns"); - - the_fd = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || the_fd < 0) - die ("Invalid fd: %s", argv[1]); - - opt_pidns_fd = the_fd; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--clearenv") == 0) - { - xclearenv (); - } - else if (strcmp (arg, "--setenv") == 0) - { - if (argc < 3) - die ("--setenv takes two arguments"); - - xsetenv (argv[1], argv[2], 1); - - argv += 2; - argc -= 2; - } - else if (strcmp (arg, "--unsetenv") == 0) - { - if (argc < 2) - die ("--unsetenv takes an argument"); - - xunsetenv (argv[1]); - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--uid") == 0) - { - int the_uid; - char *endptr; - - if (argc < 2) - die ("--uid takes an argument"); - - if (opt_sandbox_uid != -1) - warn_only_last_option ("--uid"); - - the_uid = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || the_uid < 0) - die ("Invalid uid: %s", argv[1]); - - opt_sandbox_uid = the_uid; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--gid") == 0) - { - int the_gid; - char *endptr; - - if (argc < 2) - die ("--gid takes an argument"); - - if (opt_sandbox_gid != -1) - warn_only_last_option ("--gid"); - - the_gid = strtol (argv[1], &endptr, 10); - if (argv[1][0] == 0 || endptr[0] != 0 || the_gid < 0) - die ("Invalid gid: %s", argv[1]); - - opt_sandbox_gid = the_gid; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--hostname") == 0) - { - if (argc < 2) - die ("--hostname takes an argument"); - - if (opt_sandbox_hostname != NULL) - warn_only_last_option ("--hostname"); - - op = setup_op_new (SETUP_SET_HOSTNAME); - op->dest = argv[1]; - op->flags = NO_CREATE_DEST; - - opt_sandbox_hostname = argv[1]; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--new-session") == 0) - { - opt_new_session = TRUE; - } - else if (strcmp (arg, "--die-with-parent") == 0) - { - opt_die_with_parent = TRUE; - } - else if (strcmp (arg, "--as-pid-1") == 0) - { - opt_as_pid_1 = TRUE; - } - else if (strcmp (arg, "--cap-add") == 0) - { - cap_value_t cap; - if (argc < 2) - die ("--cap-add takes an argument"); - - opt_cap_add_or_drop_used = TRUE; - - if (strcasecmp (argv[1], "ALL") == 0) - { - requested_caps[0] = requested_caps[1] = 0xFFFFFFFF; - } - else - { - if (cap_from_name (argv[1], &cap) < 0) - die ("unknown cap: %s", argv[1]); - - if (cap < 32) - requested_caps[0] |= CAP_TO_MASK_0 (cap); - else - requested_caps[1] |= CAP_TO_MASK_1 (cap - 32); - } - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--cap-drop") == 0) - { - cap_value_t cap; - if (argc < 2) - die ("--cap-drop takes an argument"); - - opt_cap_add_or_drop_used = TRUE; - - if (strcasecmp (argv[1], "ALL") == 0) - { - requested_caps[0] = requested_caps[1] = 0; - } - else - { - if (cap_from_name (argv[1], &cap) < 0) - die ("unknown cap: %s", argv[1]); - - if (cap < 32) - requested_caps[0] &= ~CAP_TO_MASK_0 (cap); - else - requested_caps[1] &= ~CAP_TO_MASK_1 (cap - 32); - } - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--perms") == 0) - { - unsigned long perms; - char *endptr = NULL; - - if (argc < 2) - die ("--perms takes an argument"); - - perms = strtoul (argv[1], &endptr, 8); - - if (argv[1][0] == '\0' - || endptr == NULL - || *endptr != '\0' - || perms > 07777) - die ("--perms takes an octal argument <= 07777"); - - next_perms = (int) perms; - - argv += 1; - argc -= 1; - } - else if (strcmp (arg, "--chmod") == 0) - { - unsigned long perms; - char *endptr = NULL; - - if (argc < 3) - die ("--chmod takes two arguments"); - - perms = strtoul (argv[1], &endptr, 8); - - if (argv[1][0] == '\0' - || endptr == NULL - || *endptr != '\0' - || perms > 07777) - die ("--chmod takes an octal argument <= 07777"); - - op = setup_op_new (SETUP_CHMOD); - op->flags = NO_CREATE_DEST; - op->perms = (int) perms; - op->dest = argv[2]; - - argv += 2; - argc -= 2; - } - else if (strcmp (arg, "--") == 0) - { - argv += 1; - argc -= 1; - break; - } - else if (*arg == '-') - { - die ("Unknown option %s", arg); - } - else - { - break; - } - - argv++; - argc--; - } - - *argcp = argc; - *argvp = argv; -} - -static void -parse_args (int *argcp, - const char ***argvp) -{ - int total_parsed_argc = *argcp; - - parse_args_recurse (argcp, argvp, FALSE, &total_parsed_argc); -} - -static void -read_overflowids (void) -{ - cleanup_free char *uid_data = NULL; - cleanup_free char *gid_data = NULL; - - uid_data = load_file_at (AT_FDCWD, "/proc/sys/kernel/overflowuid"); - if (uid_data == NULL) - die_with_error ("Can't read /proc/sys/kernel/overflowuid"); - - overflow_uid = strtol (uid_data, NULL, 10); - if (overflow_uid == 0) - die ("Can't parse /proc/sys/kernel/overflowuid"); - - gid_data = load_file_at (AT_FDCWD, "/proc/sys/kernel/overflowgid"); - if (gid_data == NULL) - die_with_error ("Can't read /proc/sys/kernel/overflowgid"); - - overflow_gid = strtol (gid_data, NULL, 10); - if (overflow_gid == 0) - die ("Can't parse /proc/sys/kernel/overflowgid"); -} - -static void -namespace_ids_read (pid_t pid) -{ - cleanup_free char *dir = NULL; - cleanup_fd int ns_fd = -1; - NsInfo *info; - - dir = xasprintf ("%d/ns", pid); - ns_fd = openat (proc_fd, dir, O_PATH); - - if (ns_fd < 0) - die_with_error ("open /proc/%s/ns failed", dir); - - for (info = ns_infos; info->name; info++) - { - bool *do_unshare = info->do_unshare; - struct stat st; - int r; - - /* if we don't unshare this ns, ignore it */ - if (do_unshare && *do_unshare == FALSE) - continue; - - r = fstatat (ns_fd, info->name, &st, 0); - - /* if we can't get the information, ignore it */ - if (r != 0) - continue; - - info->id = st.st_ino; - } -} - -static void -namespace_ids_write (int fd, - bool in_json) -{ - NsInfo *info; - - for (info = ns_infos; info->name; info++) - { - cleanup_free char *output = NULL; - const char *indent; - uintmax_t nsid; - - nsid = (uintmax_t) info->id; - - /* if we don't have the information, we don't write it */ - if (nsid == 0) - continue; - - indent = in_json ? " " : "\n "; - output = xasprintf (",%s\"%s-namespace\": %ju", - indent, info->name, nsid); - - dump_info (fd, output, TRUE); - } -} - -int -main (int argc, - char **argv) -{ - mode_t old_umask; - const char *base_path = NULL; - int clone_flags; - char *old_cwd = NULL; - pid_t pid; - int event_fd = -1; - int child_wait_fd = -1; - int setup_finished_pipe[] = {-1, -1}; - const char *new_cwd; - uid_t ns_uid; - gid_t ns_gid; - struct stat sbuf; - uint64_t val; - int res UNUSED; - cleanup_free char *args_data UNUSED = NULL; - int intermediate_pids_sockets[2] = {-1, -1}; - - /* Handle --version early on before we try to acquire/drop - * any capabilities so it works in a build environment; - * right now flatpak's build runs bubblewrap --version. - * https://github.com/projectatomic/bubblewrap/issues/185 - */ - if (argc == 2 && (strcmp (argv[1], "--version") == 0)) - print_version_and_exit (); - - real_uid = getuid (); - real_gid = getgid (); - - /* Get the (optional) privileges we need */ - acquire_privs (); - - /* Never gain any more privs during exec */ - if (prctl (PR_SET_NO_NEW_PRIVS, 1, 0, 0, 0) < 0) - die_with_error ("prctl(PR_SET_NO_NEW_PRIVS) failed"); - - /* The initial code is run with high permissions - (i.e. CAP_SYS_ADMIN), so take lots of care. */ - - read_overflowids (); - - argv0 = argv[0]; - - if (isatty (1)) - host_tty_dev = ttyname (1); - - argv++; - argc--; - - if (argc <= 0) - usage (EXIT_FAILURE, stderr); - - parse_args (&argc, (const char ***) &argv); - - /* suck the args into a cleanup_free variable to control their lifecycle */ - args_data = opt_args_data; - opt_args_data = NULL; - - if ((requested_caps[0] || requested_caps[1]) && is_privileged) - die ("--cap-add in setuid mode can be used only by root"); - - if (opt_userns_block_fd != -1 && !opt_unshare_user) - die ("--userns-block-fd requires --unshare-user"); - - if (opt_userns_block_fd != -1 && opt_info_fd == -1) - die ("--userns-block-fd requires --info-fd"); - - if (opt_userns_fd != -1 && opt_unshare_user) - die ("--userns not compatible --unshare-user"); - - if (opt_userns_fd != -1 && opt_unshare_user_try) - die ("--userns not compatible --unshare-user-try"); - - /* Technically using setns() is probably safe even in the privileged - * case, because we got passed in a file descriptor to the - * namespace, and that can only be gotten if you have ptrace - * permissions against the target, and then you could do whatever to - * the namespace anyway. - * - * However, for practical reasons this isn't possible to use, - * because (as described in acquire_privs()) setuid bwrap causes - * root to own the namespaces that it creates, so you will not be - * able to access these namespaces anyway. So, best just not support - * it anyway. - */ - if (opt_userns_fd != -1 && is_privileged) - die ("--userns doesn't work in setuid mode"); - - if (opt_userns2_fd != -1 && is_privileged) - die ("--userns2 doesn't work in setuid mode"); - - /* We have to do this if we weren't installed setuid (and we're not - * root), so let's just DWIM */ - if (!is_privileged && getuid () != 0 && opt_userns_fd == -1) - opt_unshare_user = TRUE; - -#ifdef ENABLE_REQUIRE_USERNS - /* In this build option, we require userns. */ - if (is_privileged && getuid () != 0 && opt_userns_fd == -1) - opt_unshare_user = TRUE; -#endif - - if (opt_unshare_user_try && - stat ("/proc/self/ns/user", &sbuf) == 0) - { - bool disabled = FALSE; - - /* RHEL7 has a kernel module parameter that lets you enable user namespaces */ - if (stat ("/sys/module/user_namespace/parameters/enable", &sbuf) == 0) - { - cleanup_free char *enable = NULL; - enable = load_file_at (AT_FDCWD, "/sys/module/user_namespace/parameters/enable"); - if (enable != NULL && enable[0] == 'N') - disabled = TRUE; - } - - /* Check for max_user_namespaces */ - if (stat ("/proc/sys/user/max_user_namespaces", &sbuf) == 0) - { - cleanup_free char *max_user_ns = NULL; - max_user_ns = load_file_at (AT_FDCWD, "/proc/sys/user/max_user_namespaces"); - if (max_user_ns != NULL && strcmp(max_user_ns, "0\n") == 0) - disabled = TRUE; - } - - /* Debian lets you disable *unprivileged* user namespaces. However this is not - a problem if we're privileged, and if we're not opt_unshare_user is TRUE - already, and there is not much we can do, its just a non-working setup. */ - - if (!disabled) - opt_unshare_user = TRUE; - } - - if (argc <= 0) - usage (EXIT_FAILURE, stderr); - - __debug__ (("Creating root mount point\n")); - - if (opt_sandbox_uid == -1) - opt_sandbox_uid = real_uid; - if (opt_sandbox_gid == -1) - opt_sandbox_gid = real_gid; - - if (!opt_unshare_user && opt_userns_fd == -1 && opt_sandbox_uid != real_uid) - die ("Specifying --uid requires --unshare-user or --userns"); - - if (!opt_unshare_user && opt_userns_fd == -1 && opt_sandbox_gid != real_gid) - die ("Specifying --gid requires --unshare-user or --userns"); - - if (!opt_unshare_uts && opt_sandbox_hostname != NULL) - die ("Specifying --hostname requires --unshare-uts"); - - if (opt_as_pid_1 && !opt_unshare_pid) - die ("Specifying --as-pid-1 requires --unshare-pid"); - - if (opt_as_pid_1 && lock_files != NULL) - die ("Specifying --as-pid-1 and --lock-file is not permitted"); - - /* We need to read stuff from proc during the pivot_root dance, etc. - Lets keep a fd to it open */ - proc_fd = open ("/proc", O_PATH); - if (proc_fd == -1) - die_with_error ("Can't open /proc"); - - /* We need *some* mountpoint where we can mount the root tmpfs. - * Because we use pivot_root, it won't appear to be mounted from - * the perspective of the sandboxed process, so we can use anywhere - * that is sure to exist, that is sure to not be a symlink controlled - * by someone malicious, and that we won't immediately need to - * access ourselves. */ - base_path = "/tmp"; - - __debug__ (("creating new namespace\n")); - - if (opt_unshare_pid && !opt_as_pid_1) - { - event_fd = eventfd (0, EFD_CLOEXEC | EFD_NONBLOCK); - if (event_fd == -1) - die_with_error ("eventfd()"); - } - - /* We block sigchild here so that we can use signalfd in the monitor. */ - block_sigchild (); - - clone_flags = SIGCHLD | CLONE_NEWNS; - if (opt_unshare_user) - clone_flags |= CLONE_NEWUSER; - if (opt_unshare_pid && opt_pidns_fd == -1) - clone_flags |= CLONE_NEWPID; - if (opt_unshare_net) - clone_flags |= CLONE_NEWNET; - if (opt_unshare_ipc) - clone_flags |= CLONE_NEWIPC; - if (opt_unshare_uts) - clone_flags |= CLONE_NEWUTS; - if (opt_unshare_cgroup) - { - if (stat ("/proc/self/ns/cgroup", &sbuf)) - { - if (errno == ENOENT) - die ("Cannot create new cgroup namespace because the kernel does not support it"); - else - die_with_error ("stat on /proc/self/ns/cgroup failed"); - } - clone_flags |= CLONE_NEWCGROUP; - } - if (opt_unshare_cgroup_try) - { - opt_unshare_cgroup = !stat ("/proc/self/ns/cgroup", &sbuf); - if (opt_unshare_cgroup) - clone_flags |= CLONE_NEWCGROUP; - } - - child_wait_fd = eventfd (0, EFD_CLOEXEC); - if (child_wait_fd == -1) - die_with_error ("eventfd()"); - - /* Track whether pre-exec setup finished if we're reporting process exit */ - if (opt_json_status_fd != -1) - { - int ret; - ret = pipe2 (setup_finished_pipe, O_CLOEXEC); - if (ret == -1) - die_with_error ("pipe2()"); - } - - /* Switch to the custom user ns before the clone, gets us privs in that ns (assuming its a child of the current and thus allowed) */ - if (opt_userns_fd > 0 && setns (opt_userns_fd, CLONE_NEWUSER) != 0) - { - if (errno == EINVAL) - die ("Joining the specified user namespace failed, it might not be a descendant of the current user namespace."); - die_with_error ("Joining specified user namespace failed"); - } - - /* Sometimes we have uninteresting intermediate pids during the setup, set up code to pass the real pid down */ - if (opt_pidns_fd != -1) - { - /* Mark us as a subreaper, this way we can get exit status from grandchildren */ - prctl (PR_SET_CHILD_SUBREAPER, 1, 0, 0, 0); - create_pid_socketpair (intermediate_pids_sockets); - } - - pid = raw_clone (clone_flags, NULL); - if (pid == -1) - { - if (opt_unshare_user) - { - if (errno == EINVAL) - die ("Creating new namespace failed, likely because the kernel does not support user namespaces. bwrap must be installed setuid on such systems."); - else if (errno == EPERM && !is_privileged) - die ("No permissions to creating new namespace, likely because the kernel does not allow non-privileged user namespaces. On e.g. debian this can be enabled with 'sysctl kernel.unprivileged_userns_clone=1'."); - } - - die_with_error ("Creating new namespace failed"); - } - - ns_uid = opt_sandbox_uid; - ns_gid = opt_sandbox_gid; - - if (pid != 0) - { - /* Parent, outside sandbox, privileged (initially) */ - - if (intermediate_pids_sockets[0] != -1) - { - close (intermediate_pids_sockets[1]); - pid = read_pid_from_socket (intermediate_pids_sockets[0]); - close (intermediate_pids_sockets[0]); - } - - /* Discover namespace ids before we drop privileges */ - namespace_ids_read (pid); - - if (is_privileged && opt_unshare_user && opt_userns_block_fd == -1) - { - /* We're running as euid 0, but the uid we want to map is - * not 0. This means we're not allowed to write this from - * the child user namespace, so we do it from the parent. - * - * Also, we map uid/gid 0 in the namespace (to overflowuid) - * if opt_needs_devpts is true, because otherwise the mount - * of devpts fails due to root not being mapped. - */ - write_uid_gid_map (ns_uid, real_uid, - ns_gid, real_gid, - pid, TRUE, opt_needs_devpts); - } - - /* Initial launched process, wait for pid 1 or exec:ed command to exit */ - - if (opt_userns2_fd > 0 && setns (opt_userns2_fd, CLONE_NEWUSER) != 0) - die_with_error ("Setting userns2 failed"); - - /* We don't need any privileges in the launcher, drop them immediately. */ - drop_privs (FALSE, FALSE); - - /* Optionally bind our lifecycle to that of the parent */ - handle_die_with_parent (); - - if (opt_info_fd != -1) - { - cleanup_free char *output = xasprintf ("{\n \"child-pid\": %i", pid); - dump_info (opt_info_fd, output, TRUE); - namespace_ids_write (opt_info_fd, FALSE); - dump_info (opt_info_fd, "\n}\n", TRUE); - close (opt_info_fd); - } - if (opt_json_status_fd != -1) - { - cleanup_free char *output = xasprintf ("{ \"child-pid\": %i", pid); - dump_info (opt_json_status_fd, output, TRUE); - namespace_ids_write (opt_json_status_fd, TRUE); - dump_info (opt_json_status_fd, " }\n", TRUE); - } - - if (opt_userns_block_fd != -1) - { - char b[1]; - (void) TEMP_FAILURE_RETRY (read (opt_userns_block_fd, b, 1)); - close (opt_userns_block_fd); - } - - /* Let child run now that the uid maps are set up */ - val = 1; - res = write (child_wait_fd, &val, 8); - /* Ignore res, if e.g. the child died and closed child_wait_fd we don't want to error out here */ - close (child_wait_fd); - - return monitor_child (event_fd, pid, setup_finished_pipe[0]); - } - - if (opt_pidns_fd > 0) - { - if (setns (opt_pidns_fd, CLONE_NEWPID) != 0) - die_with_error ("Setting pidns failed"); - - /* fork to get the passed in pid ns */ - fork_intermediate_child (); - - /* We might both have specified an --pidns *and* --unshare-pid, so set up a new child pid namespace under the specified one */ - if (opt_unshare_pid) - { - if (unshare (CLONE_NEWPID)) - die_with_error ("unshare pid ns"); - - /* fork to get the new pid ns */ - fork_intermediate_child (); - } - - /* We're back, either in a child or grandchild, so message the actual pid to the monitor */ - - close (intermediate_pids_sockets[0]); - send_pid_on_socket (intermediate_pids_sockets[1]); - close (intermediate_pids_sockets[1]); - } - - /* Child, in sandbox, privileged in the parent or in the user namespace (if --unshare-user). - * - * Note that for user namespaces we run as euid 0 during clone(), so - * the child user namespace is owned by euid 0., This means that the - * regular user namespace parent (with uid != 0) doesn't have any - * capabilities in it, which is nice as we can't exploit those. In - * particular the parent user namespace doesn't have CAP_PTRACE - * which would otherwise allow the parent to hijack of the child - * after this point. - * - * Unfortunately this also means you can't ptrace the final - * sandboxed process from outside the sandbox either. - */ - - if (opt_info_fd != -1) - close (opt_info_fd); - - if (opt_json_status_fd != -1) - close (opt_json_status_fd); - - /* Wait for the parent to init uid/gid maps and drop caps */ - res = read (child_wait_fd, &val, 8); - close (child_wait_fd); - - /* At this point we can completely drop root uid, but retain the - * required permitted caps. This allow us to do full setup as - * the user uid, which makes e.g. fuse access work. - */ - switch_to_user_with_privs (); - - if (opt_unshare_net) - loopback_setup (); /* Will exit if unsuccessful */ - - ns_uid = opt_sandbox_uid; - ns_gid = opt_sandbox_gid; - if (!is_privileged && opt_unshare_user && opt_userns_block_fd == -1) - { - /* In the unprivileged case we have to write the uid/gid maps in - * the child, because we have no caps in the parent */ - - if (opt_needs_devpts) - { - /* This is a bit hacky, but we need to first map the real uid/gid to - 0, otherwise we can't mount the devpts filesystem because root is - not mapped. Later we will create another child user namespace and - map back to the real uid */ - ns_uid = 0; - ns_gid = 0; - } - - write_uid_gid_map (ns_uid, real_uid, - ns_gid, real_gid, - -1, TRUE, FALSE); - } - - old_umask = umask (0); - - /* Need to do this before the chroot, but after we're the real uid */ - resolve_symlinks_in_ops (); - - /* Mark everything as slave, so that we still - * receive mounts from the real root, but don't - * propagate mounts to the real root. */ - if (mount (NULL, "/", NULL, MS_SILENT | MS_SLAVE | MS_REC, NULL) < 0) - die_with_error ("Failed to make / slave"); - - /* Create a tmpfs which we will use as / in the namespace */ - if (mount ("tmpfs", base_path, "tmpfs", MS_NODEV | MS_NOSUID, NULL) != 0) - die_with_error ("Failed to mount tmpfs"); - - old_cwd = get_current_dir_name (); - - /* Chdir to the new root tmpfs mount. This will be the CWD during - the entire setup. Access old or new root via "oldroot" and "newroot". */ - if (chdir (base_path) != 0) - die_with_error ("chdir base_path"); - - /* We create a subdir "$base_path/newroot" for the new root, that - * way we can pivot_root to base_path, and put the old root at - * "$base_path/oldroot". This avoids problems accessing the oldroot - * dir if the user requested to bind mount something over / (or - * over /tmp, now that we use that for base_path). */ - - if (mkdir ("newroot", 0755)) - die_with_error ("Creating newroot failed"); - - if (mount ("newroot", "newroot", NULL, MS_SILENT | MS_MGC_VAL | MS_BIND | MS_REC, NULL) < 0) - die_with_error ("setting up newroot bind"); - - if (mkdir ("oldroot", 0755)) - die_with_error ("Creating oldroot failed"); - - if (pivot_root (base_path, "oldroot")) - die_with_error ("pivot_root"); - - if (chdir ("/") != 0) - die_with_error ("chdir / (base path)"); - - if (is_privileged) - { - pid_t child; - int privsep_sockets[2]; - - if (socketpair (AF_UNIX, SOCK_SEQPACKET | SOCK_CLOEXEC, 0, privsep_sockets) != 0) - die_with_error ("Can't create privsep socket"); - - child = fork (); - if (child == -1) - die_with_error ("Can't fork unprivileged helper"); - - if (child == 0) - { - /* Unprivileged setup process */ - drop_privs (FALSE, TRUE); - close (privsep_sockets[0]); - setup_newroot (opt_unshare_pid, privsep_sockets[1]); - exit (0); - } - else - { - int status; - uint32_t buffer[2048]; /* 8k, but is int32 to guarantee nice alignment */ - uint32_t op, flags, perms; - const char *arg1, *arg2; - cleanup_fd int unpriv_socket = -1; - - unpriv_socket = privsep_sockets[0]; - close (privsep_sockets[1]); - - do - { - op = read_priv_sec_op (unpriv_socket, buffer, sizeof (buffer), - &flags, &perms, &arg1, &arg2); - privileged_op (-1, op, flags, perms, arg1, arg2); - if (write (unpriv_socket, buffer, 1) != 1) - die ("Can't write to op_socket"); - } - while (op != PRIV_SEP_OP_DONE); - - waitpid (child, &status, 0); - /* Continue post setup */ - } - } - else - { - setup_newroot (opt_unshare_pid, -1); - } - - close_ops_fd (); - - /* The old root better be rprivate or we will send unmount events to the parent namespace */ - if (mount ("oldroot", "oldroot", NULL, MS_SILENT | MS_REC | MS_PRIVATE, NULL) != 0) - die_with_error ("Failed to make old root rprivate"); - - if (umount2 ("oldroot", MNT_DETACH)) - die_with_error ("unmount old root"); - - /* This is our second pivot. It's like we're a Silicon Valley startup flush - * with cash but short on ideas! - * - * We're aiming to make /newroot the real root, and get rid of /oldroot. To do - * that we need a temporary place to store it before we can unmount it. - */ - { cleanup_fd int oldrootfd = open ("/", O_DIRECTORY | O_RDONLY); - if (oldrootfd < 0) - die_with_error ("can't open /"); - if (chdir ("/newroot") != 0) - die_with_error ("chdir /newroot"); - /* While the documentation claims that put_old must be underneath - * new_root, it is perfectly fine to use the same directory as the - * kernel checks only if old_root is accessible from new_root. - * - * Both runc and LXC are using this "alternative" method for - * setting up the root of the container: - * - * https://github.com/opencontainers/runc/blob/HEAD/libcontainer/rootfs_linux.go#L671 - * https://github.com/lxc/lxc/blob/HEAD/src/lxc/conf.c#L1121 - */ - if (pivot_root (".", ".") != 0) - die_with_error ("pivot_root(/newroot)"); - if (fchdir (oldrootfd) < 0) - die_with_error ("fchdir to oldroot"); - if (umount2 (".", MNT_DETACH) < 0) - die_with_error ("umount old root"); - if (chdir ("/") != 0) - die_with_error ("chdir /"); - } - - if (opt_userns2_fd > 0 && setns (opt_userns2_fd, CLONE_NEWUSER) != 0) - die_with_error ("Setting userns2 failed"); - - if (opt_unshare_user && - (ns_uid != opt_sandbox_uid || ns_gid != opt_sandbox_gid) && - opt_userns_block_fd == -1) - { - /* Now that devpts is mounted and we've no need for mount - permissions we can create a new userspace and map our uid - 1:1 */ - - if (unshare (CLONE_NEWUSER)) - die_with_error ("unshare user ns"); - - /* We're in a new user namespace, we got back the bounding set, clear it again */ - drop_cap_bounding_set (FALSE); - - write_uid_gid_map (opt_sandbox_uid, ns_uid, - opt_sandbox_gid, ns_gid, - -1, FALSE, FALSE); - } - - /* All privileged ops are done now, so drop caps we don't need */ - drop_privs (!is_privileged, TRUE); - - if (opt_block_fd != -1) - { - char b[1]; - (void) TEMP_FAILURE_RETRY (read (opt_block_fd, b, 1)); - close (opt_block_fd); - } - - if (opt_seccomp_fd != -1) - { - assert (seccomp_programs == NULL); - /* takes ownership of fd */ - seccomp_program_new (&opt_seccomp_fd); - } - - umask (old_umask); - - new_cwd = "/"; - if (opt_chdir_path) - { - if (chdir (opt_chdir_path)) - die_with_error ("Can't chdir to %s", opt_chdir_path); - new_cwd = opt_chdir_path; - } - else if (chdir (old_cwd) == 0) - { - /* If the old cwd is mapped in the sandbox, go there */ - new_cwd = old_cwd; - } - else - { - /* If the old cwd is not mapped, go to home */ - const char *home = getenv ("HOME"); - if (home != NULL && - chdir (home) == 0) - new_cwd = home; - } - xsetenv ("PWD", new_cwd, 1); - free (old_cwd); - - if (opt_new_session && - setsid () == (pid_t) -1) - die_with_error ("setsid"); - - if (label_exec (opt_exec_label) == -1) - die_with_error ("label_exec %s", argv[0]); - - __debug__ (("forking for child\n")); - - if (!opt_as_pid_1 && (opt_unshare_pid || lock_files != NULL || opt_sync_fd != -1)) - { - /* We have to have a pid 1 in the pid namespace, because - * otherwise we'll get a bunch of zombies as nothing reaps - * them. Alternatively if we're using sync_fd or lock_files we - * need some process to own these. - */ - - pid = fork (); - if (pid == -1) - die_with_error ("Can't fork for pid 1"); - - if (pid != 0) - { - drop_all_caps (FALSE); - - /* Close fds in pid 1, except stdio and optionally event_fd - (for syncing pid 2 lifetime with monitor_child) and - opt_sync_fd (for syncing sandbox lifetime with outside - process). - Any other fds will been passed on to the child though. */ - { - int dont_close[3]; - int j = 0; - if (event_fd != -1) - dont_close[j++] = event_fd; - if (opt_sync_fd != -1) - dont_close[j++] = opt_sync_fd; - dont_close[j++] = -1; - fdwalk (proc_fd, close_extra_fds, dont_close); - } - - return do_init (event_fd, pid); - } - } - - __debug__ (("launch executable %s\n", argv[0])); - - if (proc_fd != -1) - close (proc_fd); - - /* If we are using --as-pid-1 leak the sync fd into the sandbox. - --sync-fd will still work unless the container process doesn't close this file. */ - if (!opt_as_pid_1) - { - if (opt_sync_fd != -1) - close (opt_sync_fd); - } - - /* We want sigchild in the child */ - unblock_sigchild (); - - /* Optionally bind our lifecycle */ - handle_die_with_parent (); - - if (!is_privileged) - set_ambient_capabilities (); - - /* Should be the last thing before execve() so that filters don't - * need to handle anything above */ - seccomp_programs_apply (); - - if (setup_finished_pipe[1] != -1) - { - char data = 0; - res = write_to_fd (setup_finished_pipe[1], &data, 1); - /* Ignore res, if e.g. the parent died and closed setup_finished_pipe[0] - we don't want to error out here */ - } - - if (execvp (argv[0], argv) == -1) - { - if (setup_finished_pipe[1] != -1) - { - int saved_errno = errno; - char data = 0; - res = write_to_fd (setup_finished_pipe[1], &data, 1); - errno = saved_errno; - /* Ignore res, if e.g. the parent died and closed setup_finished_pipe[0] - we don't want to error out here */ - } - die_with_error ("execvp %s", argv[0]); - } - - return 0; -} diff --git a/subprojects/bubblewrap/network.c b/subprojects/bubblewrap/network.c deleted file mode 100644 index 9477cb7..0000000 --- a/subprojects/bubblewrap/network.c +++ /dev/null @@ -1,199 +0,0 @@ -/* bubblewrap - * Copyright (C) 2016 Alexander Larsson - * SPDX-License-Identifier: LGPL-2.0-or-later - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library. If not, see . - * - */ - -#include "config.h" - -#include -#include -#include -#include -#include -#include - -#include "utils.h" -#include "network.h" - -static void * -add_rta (struct nlmsghdr *header, - int type, - size_t size) -{ - struct rtattr *rta; - size_t rta_size = RTA_LENGTH (size); - - rta = (struct rtattr *) ((char *) header + NLMSG_ALIGN (header->nlmsg_len)); - rta->rta_type = type; - rta->rta_len = rta_size; - - header->nlmsg_len = NLMSG_ALIGN (header->nlmsg_len) + rta_size; - - return RTA_DATA (rta); -} - -static int -rtnl_send_request (int rtnl_fd, - struct nlmsghdr *header) -{ - struct sockaddr_nl dst_addr = { AF_NETLINK, 0 }; - ssize_t sent; - - sent = sendto (rtnl_fd, (void *) header, header->nlmsg_len, 0, - (struct sockaddr *) &dst_addr, sizeof (dst_addr)); - if (sent < 0) - return -1; - - return 0; -} - -static int -rtnl_read_reply (int rtnl_fd, - int seq_nr) -{ - char buffer[1024]; - ssize_t received; - struct nlmsghdr *rheader; - - while (1) - { - received = recv (rtnl_fd, buffer, sizeof (buffer), 0); - if (received < 0) - return -1; - - rheader = (struct nlmsghdr *) buffer; - while (received >= NLMSG_HDRLEN) - { - if (rheader->nlmsg_seq != seq_nr) - return -1; - if (rheader->nlmsg_pid != getpid ()) - return -1; - if (rheader->nlmsg_type == NLMSG_ERROR) - { - uint32_t *err = NLMSG_DATA (rheader); - if (*err == 0) - return 0; - - return -1; - } - if (rheader->nlmsg_type == NLMSG_DONE) - return 0; - - rheader = NLMSG_NEXT (rheader, received); - } - } -} - -static int -rtnl_do_request (int rtnl_fd, - struct nlmsghdr *header) -{ - if (rtnl_send_request (rtnl_fd, header) != 0) - return -1; - - if (rtnl_read_reply (rtnl_fd, header->nlmsg_seq) != 0) - return -1; - - return 0; -} - -static struct nlmsghdr * -rtnl_setup_request (char *buffer, - int type, - int flags, - size_t size) -{ - struct nlmsghdr *header; - size_t len = NLMSG_LENGTH (size); - static uint32_t counter = 0; - - memset (buffer, 0, len); - - header = (struct nlmsghdr *) buffer; - header->nlmsg_len = len; - header->nlmsg_type = type; - header->nlmsg_flags = flags | NLM_F_REQUEST; - header->nlmsg_seq = counter++; - header->nlmsg_pid = getpid (); - - return (struct nlmsghdr *) header; -} - -void -loopback_setup (void) -{ - int r, if_loopback; - cleanup_fd int rtnl_fd = -1; - char buffer[1024]; - struct sockaddr_nl src_addr = { AF_NETLINK, 0 }; - struct nlmsghdr *header; - struct ifaddrmsg *addmsg; - struct ifinfomsg *infomsg; - struct in_addr *ip_addr; - - src_addr.nl_pid = getpid (); - - if_loopback = (int) if_nametoindex ("lo"); - if (if_loopback <= 0) - die_with_error ("loopback: Failed to look up lo"); - - rtnl_fd = socket (PF_NETLINK, SOCK_RAW | SOCK_CLOEXEC, NETLINK_ROUTE); - if (rtnl_fd < 0) - die_with_error ("loopback: Failed to create NETLINK_ROUTE socket"); - - r = bind (rtnl_fd, (struct sockaddr *) &src_addr, sizeof (src_addr)); - if (r < 0) - die_with_error ("loopback: Failed to bind NETLINK_ROUTE socket"); - - header = rtnl_setup_request (buffer, RTM_NEWADDR, - NLM_F_CREATE | NLM_F_EXCL | NLM_F_ACK, - sizeof (struct ifaddrmsg)); - addmsg = NLMSG_DATA (header); - - addmsg->ifa_family = AF_INET; - addmsg->ifa_prefixlen = 8; - addmsg->ifa_flags = IFA_F_PERMANENT; - addmsg->ifa_scope = RT_SCOPE_HOST; - addmsg->ifa_index = if_loopback; - - ip_addr = add_rta (header, IFA_LOCAL, sizeof (*ip_addr)); - ip_addr->s_addr = htonl (INADDR_LOOPBACK); - - ip_addr = add_rta (header, IFA_ADDRESS, sizeof (*ip_addr)); - ip_addr->s_addr = htonl (INADDR_LOOPBACK); - - assert (header->nlmsg_len < sizeof (buffer)); - - if (rtnl_do_request (rtnl_fd, header) != 0) - die_with_error ("loopback: Failed RTM_NEWADDR"); - - header = rtnl_setup_request (buffer, RTM_NEWLINK, - NLM_F_ACK, - sizeof (struct ifinfomsg)); - infomsg = NLMSG_DATA (header); - - infomsg->ifi_family = AF_UNSPEC; - infomsg->ifi_type = 0; - infomsg->ifi_index = if_loopback; - infomsg->ifi_flags = IFF_UP; - infomsg->ifi_change = IFF_UP; - - assert (header->nlmsg_len < sizeof (buffer)); - - if (rtnl_do_request (rtnl_fd, header) != 0) - die_with_error ("loopback: Failed RTM_NEWLINK"); -} diff --git a/subprojects/bubblewrap/utils.c b/subprojects/bubblewrap/utils.c deleted file mode 100644 index 693273b..0000000 --- a/subprojects/bubblewrap/utils.c +++ /dev/null @@ -1,891 +0,0 @@ -/* bubblewrap - * Copyright (C) 2016 Alexander Larsson - * SPDX-License-Identifier: LGPL-2.0-or-later - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library. If not, see . - * - */ -#include "config.h" - -#include "utils.h" -#include -#include -#ifdef HAVE_SELINUX -#include -#endif - -#ifndef HAVE_SELINUX_2_3 -/* libselinux older than 2.3 weren't const-correct */ -#define setexeccon(x) setexeccon ((security_context_t) x) -#define setfscreatecon(x) setfscreatecon ((security_context_t) x) -#define security_check_context(x) security_check_context ((security_context_t) x) -#endif - -__attribute__((format(printf, 1, 0))) static void -warnv (const char *format, va_list args) -{ - fprintf (stderr, "bwrap: "); - vfprintf (stderr, format, args); - fprintf (stderr, "\n"); -} - -void -warn (const char *format, ...) -{ - va_list args; - - va_start (args, format); - warnv (format, args); - va_end (args); -} - -void -die_with_error (const char *format, ...) -{ - va_list args; - int errsv; - - errsv = errno; - - fprintf (stderr, "bwrap: "); - - va_start (args, format); - vfprintf (stderr, format, args); - va_end (args); - - fprintf (stderr, ": %s\n", strerror (errsv)); - - exit (1); -} - -void -die (const char *format, ...) -{ - va_list args; - - va_start (args, format); - warnv (format, args); - va_end (args); - - exit (1); -} - -void -die_unless_label_valid (UNUSED const char *label) -{ -#ifdef HAVE_SELINUX - if (is_selinux_enabled () == 1) - { - if (security_check_context (label) < 0) - die_with_error ("invalid label %s", label); - return; - } -#endif - die ("labeling not supported on this system"); -} - -void -die_oom (void) -{ - fputs ("Out of memory\n", stderr); - exit (1); -} - -/* Fork, return in child, exiting the previous parent */ -void -fork_intermediate_child (void) -{ - int pid = fork (); - if (pid == -1) - die_with_error ("Can't fork for --pidns"); - - /* Parent is an process not needed */ - if (pid != 0) - exit (0); -} - -void * -xmalloc (size_t size) -{ - void *res = malloc (size); - - if (res == NULL) - die_oom (); - return res; -} - -void * -xcalloc (size_t size) -{ - void *res = calloc (1, size); - - if (res == NULL) - die_oom (); - return res; -} - -void * -xrealloc (void *ptr, size_t size) -{ - void *res = realloc (ptr, size); - - if (size != 0 && res == NULL) - die_oom (); - return res; -} - -char * -xstrdup (const char *str) -{ - char *res; - - assert (str != NULL); - - res = strdup (str); - if (res == NULL) - die_oom (); - - return res; -} - -void -strfreev (char **str_array) -{ - if (str_array) - { - int i; - - for (i = 0; str_array[i] != NULL; i++) - free (str_array[i]); - - free (str_array); - } -} - -/* Compares if str has a specific path prefix. This differs - from a regular prefix in two ways. First of all there may - be multiple slashes separating the path elements, and - secondly, if a prefix is matched that has to be en entire - path element. For instance /a/prefix matches /a/prefix/foo/bar, - but not /a/prefixfoo/bar. */ -bool -has_path_prefix (const char *str, - const char *prefix) -{ - while (TRUE) - { - /* Skip consecutive slashes to reach next path - element */ - while (*str == '/') - str++; - while (*prefix == '/') - prefix++; - - /* No more prefix path elements? Done! */ - if (*prefix == 0) - return TRUE; - - /* Compare path element */ - while (*prefix != 0 && *prefix != '/') - { - if (*str != *prefix) - return FALSE; - str++; - prefix++; - } - - /* Matched prefix path element, - must be entire str path element */ - if (*str != '/' && *str != 0) - return FALSE; - } -} - -bool -path_equal (const char *path1, - const char *path2) -{ - while (TRUE) - { - /* Skip consecutive slashes to reach next path - element */ - while (*path1 == '/') - path1++; - while (*path2 == '/') - path2++; - - /* No more prefix path elements? Done! */ - if (*path1 == 0 || *path2 == 0) - return *path1 == 0 && *path2 == 0; - - /* Compare path element */ - while (*path1 != 0 && *path1 != '/') - { - if (*path1 != *path2) - return FALSE; - path1++; - path2++; - } - - /* Matched path1 path element, must be entire path element */ - if (*path2 != '/' && *path2 != 0) - return FALSE; - } -} - - -bool -has_prefix (const char *str, - const char *prefix) -{ - return strncmp (str, prefix, strlen (prefix)) == 0; -} - -void -xclearenv (void) -{ - if (clearenv () != 0) - die_with_error ("clearenv failed"); -} - -void -xsetenv (const char *name, const char *value, int overwrite) -{ - if (setenv (name, value, overwrite)) - die ("setenv failed"); -} - -void -xunsetenv (const char *name) -{ - if (unsetenv (name)) - die ("unsetenv failed"); -} - -char * -strconcat (const char *s1, - const char *s2) -{ - size_t len = 0; - char *res; - - if (s1) - len += strlen (s1); - if (s2) - len += strlen (s2); - - res = xmalloc (len + 1); - *res = 0; - if (s1) - strcat (res, s1); - if (s2) - strcat (res, s2); - - return res; -} - -char * -strconcat3 (const char *s1, - const char *s2, - const char *s3) -{ - size_t len = 0; - char *res; - - if (s1) - len += strlen (s1); - if (s2) - len += strlen (s2); - if (s3) - len += strlen (s3); - - res = xmalloc (len + 1); - *res = 0; - if (s1) - strcat (res, s1); - if (s2) - strcat (res, s2); - if (s3) - strcat (res, s3); - - return res; -} - -char * -xasprintf (const char *format, - ...) -{ - char *buffer = NULL; - va_list args; - - va_start (args, format); - if (vasprintf (&buffer, format, args) == -1) - die_oom (); - va_end (args); - - return buffer; -} - -int -fdwalk (int proc_fd, int (*cb)(void *data, - int fd), void *data) -{ - int open_max; - int fd; - int dfd; - int res = 0; - DIR *d; - - dfd = openat (proc_fd, "self/fd", O_DIRECTORY | O_RDONLY | O_NONBLOCK | O_CLOEXEC | O_NOCTTY); - if (dfd == -1) - return res; - - if ((d = fdopendir (dfd))) - { - struct dirent *de; - - while ((de = readdir (d))) - { - long l; - char *e = NULL; - - if (de->d_name[0] == '.') - continue; - - errno = 0; - l = strtol (de->d_name, &e, 10); - if (errno != 0 || !e || *e) - continue; - - fd = (int) l; - - if ((long) fd != l) - continue; - - if (fd == dirfd (d)) - continue; - - if ((res = cb (data, fd)) != 0) - break; - } - - closedir (d); - return res; - } - - open_max = sysconf (_SC_OPEN_MAX); - - for (fd = 0; fd < open_max; fd++) - if ((res = cb (data, fd)) != 0) - break; - - return res; -} - -/* Sets errno on error (!= 0), ENOSPC on short write */ -int -write_to_fd (int fd, - const char *content, - ssize_t len) -{ - ssize_t res; - - while (len > 0) - { - res = write (fd, content, len); - if (res < 0 && errno == EINTR) - continue; - if (res <= 0) - { - if (res == 0) /* Unexpected short write, should not happen when writing to a file */ - errno = ENOSPC; - return -1; - } - len -= res; - content += res; - } - - return 0; -} - -/* Sets errno on error (!= 0), ENOSPC on short write */ -int -write_file_at (int dirfd, - const char *path, - const char *content) -{ - int fd; - bool res; - int errsv; - - fd = openat (dirfd, path, O_RDWR | O_CLOEXEC, 0); - if (fd == -1) - return -1; - - res = 0; - if (content) - res = write_to_fd (fd, content, strlen (content)); - - errsv = errno; - close (fd); - errno = errsv; - - return res; -} - -/* Sets errno on error (!= 0), ENOSPC on short write */ -int -create_file (const char *path, - mode_t mode, - const char *content) -{ - int fd; - int res; - int errsv; - - fd = creat (path, mode); - if (fd == -1) - return -1; - - res = 0; - if (content) - res = write_to_fd (fd, content, strlen (content)); - - errsv = errno; - close (fd); - errno = errsv; - - return res; -} - -int -ensure_file (const char *path, - mode_t mode) -{ - struct stat buf; - - /* We check this ahead of time, otherwise - the create file will fail in the read-only - case with EROFS instead of EEXIST. - - We're trying to set up a mount point for a non-directory, so any - non-directory, non-symlink is acceptable - it doesn't necessarily - have to be a regular file. */ - if (stat (path, &buf) == 0 && - !S_ISDIR (buf.st_mode) && - !S_ISLNK (buf.st_mode)) - return 0; - - if (create_file (path, mode, NULL) != 0 && errno != EEXIST) - return -1; - - return 0; -} - - -#define BUFSIZE 8192 -/* Sets errno on error (!= 0), ENOSPC on short write */ -int -copy_file_data (int sfd, - int dfd) -{ - char buffer[BUFSIZE]; - ssize_t bytes_read; - - while (TRUE) - { - bytes_read = read (sfd, buffer, BUFSIZE); - if (bytes_read == -1) - { - if (errno == EINTR) - continue; - - return -1; - } - - if (bytes_read == 0) - break; - - if (write_to_fd (dfd, buffer, bytes_read) != 0) - return -1; - } - - return 0; -} - -/* Sets errno on error (!= 0), ENOSPC on short write */ -int -copy_file (const char *src_path, - const char *dst_path, - mode_t mode) -{ - int sfd; - int dfd; - int res; - int errsv; - - sfd = open (src_path, O_CLOEXEC | O_RDONLY); - if (sfd == -1) - return -1; - - dfd = creat (dst_path, mode); - if (dfd == -1) - { - errsv = errno; - close (sfd); - errno = errsv; - return -1; - } - - res = copy_file_data (sfd, dfd); - - errsv = errno; - close (sfd); - close (dfd); - errno = errsv; - - return res; -} - -/* Sets errno on error (== NULL), - * Always ensures terminating zero */ -char * -load_file_data (int fd, - size_t *size) -{ - cleanup_free char *data = NULL; - ssize_t data_read; - ssize_t data_len; - ssize_t res; - int errsv; - - data_read = 0; - data_len = 4080; - data = xmalloc (data_len); - - do - { - if (data_len == data_read + 1) - { - data_len *= 2; - data = xrealloc (data, data_len); - } - - do - res = read (fd, data + data_read, data_len - data_read - 1); - while (res < 0 && errno == EINTR); - - if (res < 0) - { - errsv = errno; - close (fd); - errno = errsv; - return NULL; - } - - data_read += res; - } - while (res > 0); - - data[data_read] = 0; - - if (size) - *size = (size_t) data_read; - - return steal_pointer (&data); -} - -/* Sets errno on error (== NULL), - * Always ensures terminating zero */ -char * -load_file_at (int dirfd, - const char *path) -{ - int fd; - char *data; - int errsv; - - fd = openat (dirfd, path, O_CLOEXEC | O_RDONLY); - if (fd == -1) - return NULL; - - data = load_file_data (fd, NULL); - - errsv = errno; - close (fd); - errno = errsv; - - return data; -} - -/* Sets errno on error (< 0) */ -int -get_file_mode (const char *pathname) -{ - struct stat buf; - - if (stat (pathname, &buf) != 0) - return -1; - - return buf.st_mode & S_IFMT; -} - -int -ensure_dir (const char *path, - mode_t mode) -{ - struct stat buf; - - /* We check this ahead of time, otherwise - the mkdir call can fail in the read-only - case with EROFS instead of EEXIST on some - filesystems (such as NFS) */ - if (stat (path, &buf) == 0) - { - if (!S_ISDIR (buf.st_mode)) - { - errno = ENOTDIR; - return -1; - } - - return 0; - } - - if (mkdir (path, mode) == -1 && errno != EEXIST) - return -1; - - return 0; -} - - -/* Sets errno on error (!= 0) */ -int -mkdir_with_parents (const char *pathname, - int mode, - bool create_last) -{ - cleanup_free char *fn = NULL; - char *p; - - if (pathname == NULL || *pathname == '\0') - { - errno = EINVAL; - return -1; - } - - fn = xstrdup (pathname); - - p = fn; - while (*p == '/') - p++; - - do - { - while (*p && *p != '/') - p++; - - if (!*p) - p = NULL; - else - *p = '\0'; - - if (!create_last && p == NULL) - break; - - if (ensure_dir (fn, mode) != 0) - return -1; - - if (p) - { - *p++ = '/'; - while (*p && *p == '/') - p++; - } - } - while (p); - - return 0; -} - -/* Send an ucred with current pid/uid/gid over a socket, it can be - read back with read_pid_from_socket(), and then the kernel has - translated it between namespaces as needed. */ -void -send_pid_on_socket (int socket) -{ - char buf[1] = { 0 }; - struct msghdr msg = {}; - struct iovec iov = { buf, sizeof (buf) }; - const ssize_t control_len_snd = CMSG_SPACE(sizeof(struct ucred)); - char control_buf_snd[control_len_snd]; - struct cmsghdr *cmsg; - struct ucred *cred; - - msg.msg_iov = &iov; - msg.msg_iovlen = 1; - msg.msg_control = control_buf_snd; - msg.msg_controllen = control_len_snd; - - cmsg = CMSG_FIRSTHDR(&msg); - cmsg->cmsg_level = SOL_SOCKET; - cmsg->cmsg_type = SCM_CREDENTIALS; - cmsg->cmsg_len = CMSG_LEN(sizeof(struct ucred)); - cred = (struct ucred *)CMSG_DATA(cmsg); - - cred->pid = getpid (); - cred->uid = geteuid (); - cred->gid = getegid (); - - if (sendmsg (socket, &msg, 0) < 0) - die_with_error ("Can't send pid"); -} - -void -create_pid_socketpair (int sockets[2]) -{ - int enable = 1; - - if (socketpair (AF_UNIX, SOCK_SEQPACKET | SOCK_CLOEXEC, 0, sockets) != 0) - die_with_error ("Can't create intermediate pids socket"); - - if (setsockopt (sockets[0], SOL_SOCKET, SO_PASSCRED, &enable, sizeof (enable)) < 0) - die_with_error ("Can't set SO_PASSCRED"); -} - -int -read_pid_from_socket (int socket) -{ - char recv_buf[1] = { 0 }; - struct msghdr msg = {}; - struct iovec iov = { recv_buf, sizeof (recv_buf) }; - const ssize_t control_len_rcv = CMSG_SPACE(sizeof(struct ucred)); - char control_buf_rcv[control_len_rcv]; - struct cmsghdr* cmsg; - - msg.msg_iov = &iov; - msg.msg_iovlen = 1; - msg.msg_control = control_buf_rcv; - msg.msg_controllen = control_len_rcv; - - if (recvmsg (socket, &msg, 0) < 0) - die_with_error ("Can't read pid from socket"); - - if (msg.msg_controllen <= 0) - die ("Unexpected short read from pid socket"); - - for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg)) - { - const unsigned payload_len = cmsg->cmsg_len - CMSG_LEN(0); - if (cmsg->cmsg_level == SOL_SOCKET && - cmsg->cmsg_type == SCM_CREDENTIALS && - payload_len == sizeof(struct ucred)) - { - struct ucred *cred = (struct ucred *)CMSG_DATA(cmsg); - return cred->pid; - } - } - die ("No pid returned on socket"); -} - -/* Sets errno on error (== NULL), - * Always ensures terminating zero */ -char * -readlink_malloc (const char *pathname) -{ - size_t size = 50; - ssize_t n; - cleanup_free char *value = NULL; - - do - { - size *= 2; - value = xrealloc (value, size); - n = readlink (pathname, value, size - 1); - if (n < 0) - return NULL; - } - while (size - 2 < n); - - value[n] = 0; - return steal_pointer (&value); -} - -char * -get_oldroot_path (const char *path) -{ - while (*path == '/') - path++; - return strconcat ("/oldroot/", path); -} - -int -raw_clone (unsigned long flags, - void *child_stack) -{ -#if defined(__s390__) || defined(__CRIS__) - /* On s390 and cris the order of the first and second arguments - * of the raw clone() system call is reversed. */ - return (int) syscall (__NR_clone, child_stack, flags); -#else - return (int) syscall (__NR_clone, flags, child_stack); -#endif -} - -int -pivot_root (const char * new_root, const char * put_old) -{ -#ifdef __NR_pivot_root - return syscall (__NR_pivot_root, new_root, put_old); -#else - errno = ENOSYS; - return -1; -#endif -} - -char * -label_mount (const char *opt, UNUSED const char *mount_label) -{ -#ifdef HAVE_SELINUX - if (mount_label) - { - if (opt) - return xasprintf ("%s,context=\"%s\"", opt, mount_label); - else - return xasprintf ("context=\"%s\"", mount_label); - } -#endif - if (opt) - return xstrdup (opt); - return NULL; -} - -int -label_create_file (UNUSED const char *file_label) -{ -#ifdef HAVE_SELINUX - if (is_selinux_enabled () > 0 && file_label) - return setfscreatecon (file_label); -#endif - return 0; -} - -int -label_exec (UNUSED const char *exec_label) -{ -#ifdef HAVE_SELINUX - if (is_selinux_enabled () > 0 && exec_label) - return setexeccon (exec_label); -#endif - return 0; -} diff --git a/subprojects/bubblewrap/utils.h b/subprojects/bubblewrap/utils.h deleted file mode 100644 index 37d8c7c..0000000 --- a/subprojects/bubblewrap/utils.h +++ /dev/null @@ -1,183 +0,0 @@ -/* bubblewrap - * Copyright (C) 2016 Alexander Larsson - * SPDX-License-Identifier: LGPL-2.0-or-later - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library. If not, see . - * - */ - -#pragma once - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#if 0 -#define __debug__(x) printf x -#else -#define __debug__(x) -#endif - -#define UNUSED __attribute__((__unused__)) - -#define N_ELEMENTS(arr) (sizeof (arr) / sizeof ((arr)[0])) - -#define TRUE 1 -#define FALSE 0 -typedef int bool; - -#define PIPE_READ_END 0 -#define PIPE_WRITE_END 1 - -#ifndef PR_SET_CHILD_SUBREAPER -#define PR_SET_CHILD_SUBREAPER 36 -#endif - -void warn (const char *format, - ...) __attribute__((format (printf, 1, 2))); -void die_with_error (const char *format, - ...) __attribute__((__noreturn__)) __attribute__((format (printf, 1, 2))); -void die (const char *format, - ...) __attribute__((__noreturn__)) __attribute__((format (printf, 1, 2))); -void die_oom (void) __attribute__((__noreturn__)); -void die_unless_label_valid (const char *label); - -void fork_intermediate_child (void); - -void *xmalloc (size_t size); -void *xcalloc (size_t size); -void *xrealloc (void *ptr, - size_t size); -char *xstrdup (const char *str); -void strfreev (char **str_array); -void xclearenv (void); -void xsetenv (const char *name, - const char *value, - int overwrite); -void xunsetenv (const char *name); -char *strconcat (const char *s1, - const char *s2); -char *strconcat3 (const char *s1, - const char *s2, - const char *s3); -char * xasprintf (const char *format, - ...) __attribute__((format (printf, 1, 2))); -bool has_prefix (const char *str, - const char *prefix); -bool has_path_prefix (const char *str, - const char *prefix); -bool path_equal (const char *path1, - const char *path2); -int fdwalk (int proc_fd, - int (*cb)(void *data, - int fd), - void *data); -char *load_file_data (int fd, - size_t *size); -char *load_file_at (int dirfd, - const char *path); -int write_file_at (int dirfd, - const char *path, - const char *content); -int write_to_fd (int fd, - const char *content, - ssize_t len); -int copy_file_data (int sfd, - int dfd); -int copy_file (const char *src_path, - const char *dst_path, - mode_t mode); -int create_file (const char *path, - mode_t mode, - const char *content); -int ensure_file (const char *path, - mode_t mode); -int ensure_dir (const char *path, - mode_t mode); -int get_file_mode (const char *pathname); -int mkdir_with_parents (const char *pathname, - int mode, - bool create_last); -void create_pid_socketpair (int sockets[2]); -void send_pid_on_socket (int socket); -int read_pid_from_socket (int socket); -char *get_oldroot_path (const char *path); -char *readlink_malloc (const char *pathname); - -/* syscall wrappers */ -int raw_clone (unsigned long flags, - void *child_stack); -int pivot_root (const char *new_root, - const char *put_old); -char *label_mount (const char *opt, - const char *mount_label); -int label_exec (const char *exec_label); -int label_create_file (const char *file_label); - -static inline void -cleanup_freep (void *p) -{ - void **pp = (void **) p; - - if (*pp) - free (*pp); -} - -static inline void -cleanup_strvp (void *p) -{ - void **pp = (void **) p; - - strfreev (*pp); -} - -static inline void -cleanup_fdp (int *fdp) -{ - int fd; - - assert (fdp); - - fd = *fdp; - if (fd != -1) - (void) close (fd); -} - -#define cleanup_free __attribute__((cleanup (cleanup_freep))) -#define cleanup_fd __attribute__((cleanup (cleanup_fdp))) -#define cleanup_strv __attribute__((cleanup (cleanup_strvp))) - -static inline void * -steal_pointer (void *pp) -{ - void **ptr = (void **) pp; - void *ref; - - ref = *ptr; - *ptr = NULL; - - return ref; -} - -/* type safety */ -#define steal_pointer(pp) \ - (0 ? (*(pp)) : (steal_pointer) (pp)) diff --git a/subprojects/dbus-proxy.wrap b/subprojects/dbus-proxy.wrap new file mode 100644 index 0000000..50127f3 --- /dev/null +++ b/subprojects/dbus-proxy.wrap @@ -0,0 +1,5 @@ +[wrap-git] +url = https://github.com/flatpak/xdg-dbus-proxy +# 0.1.6 +revision = 1c1989e56f94b9eb3b7567f8a6e8a0aa16cba496 +depth = 1 diff --git a/subprojects/dbus-proxy/backport-autoptr.h b/subprojects/dbus-proxy/backport-autoptr.h deleted file mode 100644 index 21be66c..0000000 --- a/subprojects/dbus-proxy/backport-autoptr.h +++ /dev/null @@ -1,234 +0,0 @@ -/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- - * - * Copyright (C) 2015 Colin Walters - * - * GLIB - Library of useful routines for C programming - * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#pragma once - -#include - -G_BEGIN_DECLS - -#if !GLIB_CHECK_VERSION(2, 43, 4) - -#define _GLIB_AUTOPTR_FUNC_NAME(TypeName) glib_autoptr_cleanup_##TypeName -#define _GLIB_AUTOPTR_TYPENAME(TypeName) TypeName##_autoptr -#define _GLIB_AUTO_FUNC_NAME(TypeName) glib_auto_cleanup_##TypeName -#define _GLIB_CLEANUP(func) __attribute__((cleanup(func))) -#define _GLIB_DEFINE_AUTOPTR_CHAINUP(ModuleObjName, ParentName) \ - typedef ModuleObjName *_GLIB_AUTOPTR_TYPENAME(ModuleObjName); \ - static inline void _GLIB_AUTOPTR_FUNC_NAME(ModuleObjName) (ModuleObjName **_ptr) { \ - _GLIB_AUTOPTR_FUNC_NAME(ParentName) ((ParentName **) _ptr); } \ - - -/* these macros are API */ -#define G_DEFINE_AUTOPTR_CLEANUP_FUNC(TypeName, func) \ - typedef TypeName *_GLIB_AUTOPTR_TYPENAME(TypeName); \ - G_GNUC_BEGIN_IGNORE_DEPRECATIONS \ - static inline void _GLIB_AUTOPTR_FUNC_NAME(TypeName) (TypeName **_ptr) { if (*_ptr) (func) (*_ptr); } \ - G_GNUC_END_IGNORE_DEPRECATIONS -#define G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(TypeName, func) \ - G_GNUC_BEGIN_IGNORE_DEPRECATIONS \ - static inline void _GLIB_AUTO_FUNC_NAME(TypeName) (TypeName *_ptr) { (func) (_ptr); } \ - G_GNUC_END_IGNORE_DEPRECATIONS -#define G_DEFINE_AUTO_CLEANUP_FREE_FUNC(TypeName, func, none) \ - G_GNUC_BEGIN_IGNORE_DEPRECATIONS \ - static inline void _GLIB_AUTO_FUNC_NAME(TypeName) (TypeName *_ptr) { if (*_ptr != none) (func) (*_ptr); } \ - G_GNUC_END_IGNORE_DEPRECATIONS -#define g_autoptr(TypeName) _GLIB_CLEANUP(_GLIB_AUTOPTR_FUNC_NAME(TypeName)) _GLIB_AUTOPTR_TYPENAME(TypeName) -#define g_auto(TypeName) _GLIB_CLEANUP(_GLIB_AUTO_FUNC_NAME(TypeName)) TypeName -#define g_autofree _GLIB_CLEANUP(g_autoptr_cleanup_generic_gfree) - -/** - * g_steal_pointer: - * @pp: a pointer to a pointer - * - * Sets @pp to %NULL, returning the value that was there before. - * - * Conceptually, this transfers the ownership of the pointer from the - * referenced variable to the "caller" of the macro (ie: "steals" the - * reference). - * - * The return value will be properly typed, according to the type of - * @pp. - * - * This can be very useful when combined with g_autoptr() to prevent the - * return value of a function from being automatically freed. Consider - * the following example (which only works on GCC and clang): - * - * |[ - * GObject * - * create_object (void) - * { - * g_autoptr(GObject) obj = g_object_new (G_TYPE_OBJECT, NULL); - * - * if (early_error_case) - * return NULL; - * - * return g_steal_pointer (&obj); - * } - * ]| - * - * It can also be used in similar ways for 'out' parameters and is - * particularly useful for dealing with optional out parameters: - * - * |[ - * gboolean - * get_object (GObject **obj_out) - * { - * g_autoptr(GObject) obj = g_object_new (G_TYPE_OBJECT, NULL); - * - * if (early_error_case) - * return FALSE; - * - * if (obj_out) - * *obj_out = g_steal_pointer (&obj); - * - * return TRUE; - * } - * ]| - * - * In the above example, the object will be automatically freed in the - * early error case and also in the case that %NULL was given for - * @obj_out. - * - * Since: 2.44 - */ -static inline gpointer -(g_steal_pointer) (gpointer pp) -{ - gpointer *ptr = (gpointer *) pp; - gpointer ref; - - ref = *ptr; - *ptr = NULL; - - return ref; -} - -/* type safety */ -#define g_steal_pointer(pp) \ - (0 ? (*(pp)) : (g_steal_pointer) (pp)) - -static inline void -g_autoptr_cleanup_generic_gfree (void *p) -{ - void **pp = (void**)p; - if (*pp) - g_free (*pp); -} - -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GAsyncQueue, g_async_queue_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GBookmarkFile, g_bookmark_file_free) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GBytes, g_bytes_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GChecksum, g_checksum_free) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GDateTime, g_date_time_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GDir, g_dir_close) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GError, g_error_free) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GHashTable, g_hash_table_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GHmac, g_hmac_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GIOChannel, g_io_channel_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GKeyFile, g_key_file_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GList, g_list_free) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GArray, g_array_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GPtrArray, g_ptr_array_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GMainContext, g_main_context_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GMainLoop, g_main_loop_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GSource, g_source_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GMappedFile, g_mapped_file_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GMarkupParseContext, g_markup_parse_context_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(gchar, g_free) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GNode, g_node_destroy) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GOptionContext, g_option_context_free) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GOptionGroup, g_option_group_free) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GPatternSpec, g_pattern_spec_free) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GQueue, g_queue_free) -G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(GQueue, g_queue_clear) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GRand, g_rand_free) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GRegex, g_regex_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GMatchInfo, g_match_info_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GScanner, g_scanner_destroy) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GSequence, g_sequence_free) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GSList, g_slist_free) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GStringChunk, g_string_chunk_free) -G_DEFINE_AUTO_CLEANUP_FREE_FUNC(GStrv, g_strfreev, NULL) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GThread, g_thread_unref) -G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(GMutex, g_mutex_clear) -G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(GCond, g_cond_clear) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GTimer, g_timer_destroy) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GTimeZone, g_time_zone_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GTree, g_tree_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GVariant, g_variant_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GVariantBuilder, g_variant_builder_unref) -G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(GVariantBuilder, g_variant_builder_clear) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GVariantIter, g_variant_iter_free) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GVariantDict, g_variant_dict_unref) -G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(GVariantDict, g_variant_dict_clear) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GVariantType, g_variant_type_free) - -/* Add GObject-based types as needed. */ -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GAsyncResult, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GCancellable, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GConverter, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GConverterOutputStream, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GDataInputStream, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GFile, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GFileEnumerator, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GFileIOStream, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GFileInfo, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GFileInputStream, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GFileMonitor, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GFileOutputStream, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GInputStream, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GMemoryInputStream, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GMemoryOutputStream, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GMount, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GOutputStream, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GSocket, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GSocketAddress, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GSubprocess, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GSubprocessLauncher, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GTask, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GTlsCertificate, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GTlsDatabase, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GTlsInteraction, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GDBusConnection, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GDBusMessage, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GVolumeMonitor, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GZlibCompressor, g_object_unref) -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GZlibDecompressor, g_object_unref) - -#endif /* !GLIB_CHECK_VERSION(2, 43, 3) */ - -#if !GLIB_CHECK_VERSION(2, 45, 8) - -static inline void -g_autoptr_cleanup_gstring_free (GString *string) -{ - if (string) - g_string_free (string, TRUE); -} - -G_DEFINE_AUTOPTR_CLEANUP_FUNC(GString, g_autoptr_cleanup_gstring_free) - -#endif - -G_END_DECLS diff --git a/subprojects/dbus-proxy/dbus-proxy.c b/subprojects/dbus-proxy/dbus-proxy.c deleted file mode 100644 index 53d5c01..0000000 --- a/subprojects/dbus-proxy/dbus-proxy.c +++ /dev/null @@ -1,433 +0,0 @@ -/* - * Copyright © 2015 Red Hat, Inc - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library. If not, see . - * - * Authors: - * Alexander Larsson - */ - -#include "config.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "flatpak-proxy.h" -// Taken from glibc unistd.h -#ifndef TEMP_FAILURE_RETRY -# define TEMP_FAILURE_RETRY(expression) \ - (__extension__ \ - ({ long int __result; \ - do __result = (long int) (expression); \ - while (__result == -1L && errno == EINTR); \ - __result; })) -#endif - -static const char *argv0; -static GList *proxies; -static int sync_fd = -1; - -static void usage (int ecode, FILE *out) G_GNUC_NORETURN; -static void -usage (int ecode, FILE *out) -{ - fprintf (out, "usage: %s [OPTIONS...] [ADDRESS PATH [OPTIONS...] ...]\n\n", argv0); - - fprintf (out, - "Options:\n" - " --help Print this help\n" - " --version Print version\n" - " --fd=FD Stop when FD is closed\n" - " --args=FD Read arguments from FD\n\n" - "Proxy Options:\n" - " --filter Enable filtering\n" - " --log Turn on logging\n" - " --sloppy-names Report name changes for unique names\n" - " --see=NAME Set 'see' policy for NAME\n" - " --talk=NAME Set 'talk' policy for NAME\n" - " --own=NAME Set 'own' policy for NAME\n" - " --call=NAME=RULE Set RULE for calls on NAME\n" - " --broadcast=NAME=RULE Set RULE for broadcasts from NAME\n" - ); - exit (ecode); -} - -static GBytes * -fd_readall_bytes (int fd, - GError **error) -{ - const guint maxreadlen = 4096; - struct stat stbuf; - gsize buf_allocated; - g_autofree guint8* buf = NULL; - gsize buf_size = 0; - - if (TEMP_FAILURE_RETRY (fstat (fd, &stbuf)) != 0) - { - int errsv = errno; - g_set_error_literal (error, - G_IO_ERROR, - g_io_error_from_errno (errsv), - g_strerror (errsv)); - return NULL; - } - - if (S_ISREG (stbuf.st_mode) && stbuf.st_size > 0) - buf_allocated = stbuf.st_size; - else - buf_allocated = 16; - - buf = g_malloc (buf_allocated); - - while (TRUE) - { - gsize readlen = MIN (buf_allocated - buf_size, maxreadlen); - gssize bytes_read; - - do - bytes_read = read (fd, buf + buf_size, readlen); - while (G_UNLIKELY (bytes_read == -1 && errno == EINTR)); - - if (G_UNLIKELY (bytes_read == -1)) - { - int errsv = errno; - g_set_error_literal (error, - G_IO_ERROR, - g_io_error_from_errno (errsv), - g_strerror (errsv)); - return NULL; - } - if (bytes_read == 0) - break; - - buf_size += bytes_read; - if (buf_allocated - buf_size < maxreadlen) - buf = g_realloc (buf, buf_allocated *= 2); - } - - return g_bytes_new_take (g_steal_pointer (&buf), buf_size); -} - -static void -add_args (GBytes *bytes, - GPtrArray *args, - int pos) -{ - gsize data_len, remainder_len; - const guchar *data = g_bytes_get_data (bytes, &data_len); - guchar *s; - const guchar *remainder; - - remainder = data; - remainder_len = data_len; - s = memchr (remainder, 0, remainder_len); - while (s) - { - gsize len = s - remainder; - char *arg = g_strndup ((char *) remainder, len); - g_ptr_array_insert (args, pos++, arg); - remainder = s + 1; - remainder_len -= len + 1; - s = memchr (remainder, 0, remainder_len); - } - - if (remainder_len) - { - char *arg = g_strndup ((char *) remainder, remainder_len); - g_ptr_array_insert (args, pos++, arg); - } -} - - -static gboolean -parse_generic_args (GPtrArray *args, guint *args_i) -{ - const char *arg = g_ptr_array_index (args, *args_i); - - if (strcmp (arg, "--help") == 0) - { - usage (EXIT_SUCCESS, stdout); - } - else if (strcmp (arg, "--version") == 0) - { - g_print ("%s %s\n", PACKAGE_NAME, PACKAGE_VERSION); - exit (EXIT_SUCCESS); - } - else if (g_str_has_prefix (arg, "--fd=")) - { - const char *fd_s = arg + strlen ("--fd="); - char *endptr; - int fd; - - fd = strtol (fd_s, &endptr, 10); - if (fd < 0 || endptr == fd_s || *endptr != 0) - { - g_printerr ("Invalid fd %s\n", fd_s); - return FALSE; - } - sync_fd = fd; - - *args_i += 1; - - return TRUE; - } - else if (g_str_has_prefix (arg, "--args=")) - { - const char *fd_s = arg + strlen ("--args="); - char *endptr; - int fd; - g_autoptr(GBytes) data = NULL; - g_autoptr(GError) error = NULL; - - fd = strtol (fd_s, &endptr, 10); - if (fd < 0 || endptr == fd_s || *endptr != 0) - { - g_printerr ("Invalid --args fd %s\n", fd_s); - return FALSE; - } - - data = fd_readall_bytes (fd, &error); - - if (data == NULL) - { - g_printerr ("Failed to load --args: %s\n", error->message); - return FALSE; - } - - *args_i += 1; - - add_args (data, args, *args_i); - - return TRUE; - } - else - { - g_printerr ("Unknown argument %s\n", arg); - return FALSE; - } -} - -static gboolean -start_proxy (GPtrArray *args, guint *args_i) -{ - g_autoptr(FlatpakProxy) proxy = NULL; - g_autoptr(GError) error = NULL; - const char *bus_address, *socket_path; - const char *arg; - - if (*args_i >= args->len || ((char *) g_ptr_array_index (args, *args_i))[0] == '-') - { - g_printerr ("No bus address given\n"); - return FALSE; - } - - bus_address = g_ptr_array_index (args, *args_i); - *args_i += 1; - - if (*args_i >= args->len || ((char *) g_ptr_array_index (args, *args_i))[0] == '-') - { - g_printerr ("No socket path given\n"); - return FALSE; - } - - socket_path = g_ptr_array_index (args, *args_i); - *args_i += 1; - - proxy = flatpak_proxy_new (bus_address, socket_path); - - while (*args_i < args->len) - { - arg = g_ptr_array_index (args, *args_i); - - if (arg[0] != '-') - break; - - if (g_str_has_prefix (arg, "--see=") || - g_str_has_prefix (arg, "--talk=") || - g_str_has_prefix (arg, "--own=")) - { - FlatpakPolicy policy = FLATPAK_POLICY_SEE; - g_autofree char *name = g_strdup (strchr (arg, '=') + 1); - gboolean wildcard = FALSE; - - if (arg[2] == 't') - policy = FLATPAK_POLICY_TALK; - else if (arg[2] == 'o') - policy = FLATPAK_POLICY_OWN; - - if (g_str_has_suffix (name, ".*")) - { - name[strlen (name) - 2] = 0; - wildcard = TRUE; - } - - if (name[0] == ':' || !g_dbus_is_name (name)) - { - g_printerr ("'%s' is not a valid dbus name\n", name); - return FALSE; - } - - flatpak_proxy_add_policy (proxy, name, wildcard, policy); - - *args_i += 1; - } - else if (g_str_has_prefix (arg, "--call=") || - g_str_has_prefix (arg, "--broadcast=")) - { - g_autofree char *rest = g_strdup (strchr (arg, '=') + 1); - char *name = rest; - char *rule; - char *name_end = strchr (rest, '='); - gboolean wildcard = FALSE; - - if (name_end == NULL) - { - g_printerr ("'%s' is not a valid name + rule\n", rest); - return FALSE; - } - - *name_end = 0; - rule = name_end + 1; - - if (g_str_has_suffix (name, ".*")) - { - name[strlen (name) - 2] = 0; - wildcard = TRUE; - } - - if (g_str_has_prefix (arg, "--call=")) - flatpak_proxy_add_call_rule (proxy, name, wildcard, rule); - else - flatpak_proxy_add_broadcast_rule (proxy, name, wildcard, rule); - - *args_i += 1; - } - else if (g_str_equal (arg, "--log")) - { - flatpak_proxy_set_log_messages (proxy, TRUE); - *args_i += 1; - } - else if (g_str_equal (arg, "--filter")) - { - flatpak_proxy_set_filter (proxy, TRUE); - *args_i += 1; - } - else if (g_str_equal (arg, "--sloppy-names")) - { - /* This means we're reporting the name changes for all unique names, - which is needed for the a11y bus */ - flatpak_proxy_set_sloppy_names (proxy, TRUE); - *args_i += 1; - } - else - { - if (!parse_generic_args (args, args_i)) - return FALSE; - } - } - - if (!flatpak_proxy_start (proxy, &error)) - { - g_printerr ("Failed to start proxy for %s: %s\n", bus_address, error->message); - return FALSE; - } - - proxies = g_list_prepend (proxies, g_object_ref (proxy)); - - return TRUE; -} - -static gboolean -sync_closed_cb (GIOChannel *source, - GIOCondition condition, - gpointer data) -{ - GList *l; - - for (l = proxies; l != NULL; l = l->next) - flatpak_proxy_stop (FLATPAK_PROXY (l->data)); - - exit (0); - return TRUE; -} - -int -main (int argc, const char *argv[]) -{ - g_autoptr(GPtrArray) args = NULL; - GMainLoop *service_loop; - int i; - guint args_i; - - setlocale (LC_ALL, ""); - - args = g_ptr_array_new_with_free_func (g_free); - - argv0 = argv[0]; - - if (argc == 1) - usage (EXIT_FAILURE, stderr); - - for (i = 1; i < argc; i++) - g_ptr_array_add (args, g_strdup ((char *) argv[i])); - - args_i = 0; - while (args_i < args->len) - { - const char *arg = g_ptr_array_index (args, args_i); - if (arg[0] == '-') - { - if (!parse_generic_args (args, &args_i)) - return EXIT_FAILURE; - } - else - { - if (!start_proxy (args, &args_i)) - return EXIT_FAILURE; - } - } - - if (proxies == NULL) - { - g_printerr ("No proxies specified\n"); - return EXIT_FAILURE; - } - - if (sync_fd >= 0) - { - ssize_t written; - GIOChannel *sync_channel; - written = write (sync_fd, "x", 1); - if (written != 1) - g_warning ("Can't write to sync socket"); - - sync_channel = g_io_channel_unix_new (sync_fd); - g_io_add_watch (sync_channel, G_IO_ERR | G_IO_HUP, - sync_closed_cb, NULL); - } - - service_loop = g_main_loop_new (NULL, FALSE); - g_main_loop_run (service_loop); - - g_main_loop_unref (service_loop); - - return EXIT_SUCCESS; -} diff --git a/subprojects/dbus-proxy/flatpak-proxy.c b/subprojects/dbus-proxy/flatpak-proxy.c deleted file mode 100644 index 4878156..0000000 --- a/subprojects/dbus-proxy/flatpak-proxy.c +++ /dev/null @@ -1,2875 +0,0 @@ -/* - * Copyright © 2015 Red Hat, Inc - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library. If not, see . - * - * Authors: - * Alexander Larsson - */ - -#include "config.h" - -#include -#include - -#include "flatpak-proxy.h" - -#include -#include -#include - -#if !GLIB_CHECK_VERSION(2, 58, 0) -# define G_SOURCE_FUNC(f) ((GSourceFunc) (void (*)(void)) (f)) -#endif - -/** - * The proxy listens to a unix domain socket, and for each new - * connection it opens up a new connection to a specified dbus bus - * address (typically the session bus) and forwards data between the - * two. During the authentication phase all data is forwarded as - * received, and additionally for the first 1 byte zero we also send - * the proxy credentials to the bus. - * - * Once the connection is authenticated there are two modes, filtered - * and unfiltered. In the unfiltered mode we just send all messages on - * as we receive, but in the in the filtering mode we apply a policy, - * which is similar to the policy supported by kdbus. - * - * The policy for the filtering consists of a mapping from well-known - * names to a policy that is either SEE, TALK or OWN. The default - * initial policy is that the the user is only allowed to TALK to the - * bus itself (org.freedesktop.DBus, or no destination specified), and - * TALK to its own unique id. All other clients are invisible. The - * well-known names can be specified exactly, or as a arg0namespace - * wildcards like "org.foo.*" which matches "org.foo", "org.foo.bar", - * and "org.foo.bar.gazonk", but not "org.foobar". - * - * Polices are specified for well-known names, but they also affect - * the owner of that name, so that the policy for a unique id is the - * superset of the polices for all the names it owns. Due to technical - * reasons the policy for a unique name is "sticky", in that we keep - * the highest policy granted by a once-owned name even when the client - * releases that name. This is impossible to avoid in a race-free way - * in a proxy. But this is rarely a problem in practice, as clients - * rarely release names and stay on the bus. - * - * Here is a description of the policy levels: - * (all policy levels also imply the ones before it) - * - * SEE: - * The name/id is visible in the ListNames reply - * The name/id is visible in the ListActivatableNames reply - * You can call GetNameOwner on the name - * You can call NameHasOwner on the name - * You see NameOwnerChanged signals on the name - * You see NameOwnerChanged signals on the id when the client disconnects - * You can call the GetXXX methods on the name/id to get e.g. the peer pid - * You get AccessDenied rather than NameHasNoOwner when sending messages to the name/id - * - * TALK: - * You can send any method calls and signals to the name/id - * You will receive broadcast signals from the name/id (if you have a match rule for them) - * You can call StartServiceByName on the name - * - * OWN: - * You are allowed to call RequestName/ReleaseName/ListQueuedOwners on the name. - * - * Additionally, there can be more detailed filters installed that - * limits what messages you can send to and receive broadcasts from. - * However, if you can *ever* call or recieve broadcasts from a name (even if - * filtered to some subset of paths/interfaces) its visibility is considered - * to be as TALK. - * - * The policy applies only to outgoing signals and method calls and - * incoming broadcast. All replies (errors or method returns) are - * allowed once for an outstanding method call, and never - * otherwise. - * - * Every peer on the bus is considered priviledged, and we thus trust - * it and don't apply any filtering (except broadcasts). So we rely on - * similar proxies to be running for all untrusted clients. Any such - * priviledged peer is allowed to send method call or unicast signal - * messages to the proxied client. Once another peer - * sends you a message the unique id of that peer is now made visible - * (policy SEE) to the proxied client, allowing the client to track - * caller lifetimes via NameOwnerChanged signals. - * - * Differences to kdbus custom endpoint policies: - * - * * The proxy will return the credentials (like pid) of the proxy, - * not the real client. - * - * * Policy is not dropped when a peer releases a name. - * - * * Peers that call you become visible (SEE) (and get signals for - * NameOwnerChange disconnect) In kdbus currently custom endpoints - * never get NameOwnerChange signals for unique ids, but this is - * problematic as it disallows a services to track lifetimes of its - * clients. - * - * Mode of operation - * - * Once authenticated we receive incoming messages one at a time, - * and then we demarshal the message headers to make routing decisions. - * This means we trust the bus to do message format validation, etc. - * (because we don't parse the body). Also we assume that the bus verifies - * reply_serials, i.e. that a reply can only be sent once and by the real - * recipient of an previously sent method call. - * - * We don't however trust the serials from the client. We verify that - * they are strictly increasing to make sure the code is not confused - * by serials being reused. - * - * In order to track the ownership of the allowed names we hijack the - * connection after the initial Hello message, sending AddMatch, - * ListNames and GetNameOwner messages to get a proper view of who - * owns the names atm. Then we listen to NameOwnerChanged events for - * further updates. This causes a slight offset between serials in the - * client and serials as seen by the bus. - * - * After that the filter is strictly passive, in that we never - * construct our own requests. For each message received from the - * client we look up the type and the destination policy and make a - * decision to either pass it on as is, rewrite it before passing on - * (for instance ListName replies), drop it completely, or return a - * made-up reply/error to the sender. - * - * When returning a made-up reply we replace the actual message with a - * Ping request to the bus with the same serial and replace the resulting - * reply with the made up reply (with the serial from the Ping reply). - * This means we keep the strict message ordering and serial numbers of - * the bus. - * - * Policy is applied to unique ids in the following cases: - * * During startup we call AddWatch for signals on all policy names - * and wildcards (using arg0namespace) so that we get NameOwnerChanged - * events which we use to update the unique id policies. - * * During startup we create synthetic GetNameOwner requests for all - * normal policy names, and if there are wildcarded names we create a - * synthetic ListNames request and use the results of that to do further - * GetNameOwner for the existing names matching the wildcards. When we get - * replies for the GetNameOwner requests the unique id policy is updated. - * * When we get a method call from a unique id, it gets SEE - * * When we get a reply to the initial Hello request we give - * our own assigned unique id policy TALK. - * - * There is also a mode called "sloppy-names" where you automatically get - * SEE access to all the unique names on the bus. This is used only for - * the a11y bus. - * - * All messages sent to the bus itself are fully demarshalled - * and handled on a per-method basis: - * - * Hello, AddMatch, RemoveMatch, GetId: Always allowed - * ListNames, ListActivatableNames: Always allowed, but response filtered - * UpdateActivationEnvironment, BecomeMonitor: Always denied - * RequestName, ReleaseName, ListQueuedOwners: Only allowed if arg0 is a name with policy OWN - * NameHasOwner, GetNameOwner: Only pass on if arg0 is a name with policy SEE, otherwise return synthetic reply - * StartServiceByName: Only allowed if policy TALK on arg0 - * GetConnectionUnixProcessID, GetConnectionCredentials, - * GetAdtAuditSessionData, GetConnectionSELinuxSecurityContext, - * GetConnectionUnixUser: Allowed if policy SEE on arg0 - * - * For unknown methods, we return a synthetic error. - */ - -typedef struct FlatpakProxyClient FlatpakProxyClient; - -#define FIND_AUTH_END_CONTINUE -1 -#define FIND_AUTH_END_ABORT -2 - -#define AUTH_LINE_SENTINEL "\r\n" -#define AUTH_BEGIN "BEGIN" - -typedef enum { - EXPECTED_REPLY_NONE, - EXPECTED_REPLY_NORMAL, - EXPECTED_REPLY_HELLO, - EXPECTED_REPLY_FILTER, - EXPECTED_REPLY_FAKE_GET_NAME_OWNER, - EXPECTED_REPLY_FAKE_LIST_NAMES, - EXPECTED_REPLY_LIST_NAMES, - EXPECTED_REPLY_REWRITE, -} ExpectedReplyType; - -typedef struct -{ - gsize size; - gsize pos; - int refcount; - gboolean send_credentials; - GList *control_messages; - - guchar data[16]; - /* data continues here */ -} Buffer; - -typedef struct -{ - Buffer *buffer; - gboolean big_endian; - guchar type; - guchar flags; - guint32 length; - guint32 serial; - const char *path; - const char *interface; - const char *member; - const char *error_name; - const char *destination; - const char *sender; - const char *signature; - gboolean has_reply_serial; - guint32 reply_serial; - guint32 unix_fds; -} Header; - -typedef enum { - FILTER_TYPE_CALL = 1 << 0, - FILTER_TYPE_BROADCAST = 1 << 1, -} FilterTypeMask; - -#define FILTER_TYPE_ALL (FILTER_TYPE_CALL | FILTER_TYPE_BROADCAST) - -typedef struct -{ - char *name; - gboolean name_is_subtree; - FlatpakPolicy policy; - - /* More detailed filter */ - FilterTypeMask types; - char *path; - gboolean path_is_subtree; - char *interface; - char *member; -} Filter; - -static void header_free (Header *header); -G_DEFINE_AUTOPTR_CLEANUP_FUNC (Header, header_free) - -typedef struct -{ - gboolean got_first_byte; /* always true on bus side */ - gboolean closed; /* always true on bus side */ - - FlatpakProxyClient *client; - GSocketConnection *connection; - GSource *in_source; - GSource *out_source; - - GBytes *extra_input_data; - Buffer *current_read_buffer; - Buffer header_buffer; - - GList *buffers; /* to be sent */ - GList *control_messages; - - GHashTable *expected_replies; -} ProxySide; - -struct FlatpakProxyClient -{ - GObject parent; - - FlatpakProxy *proxy; - - gboolean authenticated; - GByteArray *auth_buffer; - - ProxySide client_side; - ProxySide bus_side; - - /* Filtering data: */ - guint32 serial_offset; - guint32 hello_serial; - guint32 last_serial; - GHashTable *rewrite_reply; - GHashTable *get_owner_reply; - - GHashTable *unique_id_policy; - GHashTable *unique_id_owned_names; -}; - -typedef struct -{ - GObjectClass parent_class; -} FlatpakProxyClientClass; - -struct FlatpakProxy -{ - GSocketService parent; - - gboolean log_messages; - - GList *clients; - char *socket_path; - char *dbus_address; - - gboolean filter; - gboolean sloppy_names; - - GHashTable *filters; -}; - -typedef struct -{ - GSocketServiceClass parent_class; -} FlatpakProxyClass; - - -enum { - PROP_0, - - PROP_DBUS_ADDRESS, - PROP_SOCKET_PATH -}; - -#define FLATPAK_TYPE_PROXY flatpak_proxy_get_type () -#define FLATPAK_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FLATPAK_TYPE_PROXY, FlatpakProxy)) -#define FLATPAK_IS_PROXY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FLATPAK_TYPE_PROXY)) - - -#define FLATPAK_TYPE_PROXY_CLIENT flatpak_proxy_client_get_type () -#define FLATPAK_PROXY_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FLATPAK_TYPE_PROXY_CLIENT, FlatpakProxyClient)) -#define FLATPAK_IS_PROXY_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FLATPAK_TYPE_PROXY_CLIENT)) - -GType flatpak_proxy_client_get_type (void); - -G_DEFINE_TYPE (FlatpakProxy, flatpak_proxy, G_TYPE_SOCKET_SERVICE) -G_DEFINE_TYPE (FlatpakProxyClient, flatpak_proxy_client, G_TYPE_OBJECT) - -static void start_reading (ProxySide *side); -static void stop_reading (ProxySide *side); - -static void -string_list_free (GList *filters) -{ - g_list_free_full (filters, (GDestroyNotify) g_free); -} - -static void -buffer_unref (Buffer *buffer) -{ - g_assert (buffer->refcount > 0); - buffer->refcount--; - - if (buffer->refcount == 0) - { - g_list_free_full (buffer->control_messages, g_object_unref); - g_free (buffer); - } -} - -static Buffer * -buffer_ref (Buffer *buffer) -{ - g_assert (buffer->refcount > 0); - buffer->refcount++; - return buffer; -} - -static void -free_side (ProxySide *side) -{ - g_clear_object (&side->connection); - g_clear_pointer (&side->extra_input_data, g_bytes_unref); - - g_list_free_full (side->buffers, (GDestroyNotify) buffer_unref); - g_list_free_full (side->control_messages, (GDestroyNotify) g_object_unref); - - if (side->in_source) - g_source_destroy (side->in_source); - if (side->out_source) - g_source_destroy (side->out_source); - - g_hash_table_destroy (side->expected_replies); -} - -static void -flatpak_proxy_client_finalize (GObject *object) -{ - FlatpakProxyClient *client = FLATPAK_PROXY_CLIENT (object); - - client->proxy->clients = g_list_remove (client->proxy->clients, client); - g_clear_object (&client->proxy); - - g_byte_array_free (client->auth_buffer, TRUE); - g_hash_table_destroy (client->rewrite_reply); - g_hash_table_destroy (client->get_owner_reply); - g_hash_table_destroy (client->unique_id_policy); - g_hash_table_destroy (client->unique_id_owned_names); - - free_side (&client->client_side); - free_side (&client->bus_side); - - G_OBJECT_CLASS (flatpak_proxy_client_parent_class)->finalize (object); -} - -static void -flatpak_proxy_client_class_init (FlatpakProxyClientClass *klass) -{ - GObjectClass *object_class = G_OBJECT_CLASS (klass); - - object_class->finalize = flatpak_proxy_client_finalize; -} - -static void -init_side (FlatpakProxyClient *client, ProxySide *side) -{ - side->got_first_byte = (side == &client->bus_side); - side->client = client; - side->header_buffer.size = 16; - side->header_buffer.pos = 0; - side->current_read_buffer = &side->header_buffer; - side->expected_replies = g_hash_table_new (g_direct_hash, g_direct_equal); -} - -static void -flatpak_proxy_client_init (FlatpakProxyClient *client) -{ - init_side (client, &client->client_side); - init_side (client, &client->bus_side); - - client->auth_buffer = g_byte_array_new (); - client->rewrite_reply = g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, g_object_unref); - client->get_owner_reply = g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, g_free); - client->unique_id_policy = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL); - client->unique_id_owned_names = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify) string_list_free); -} - -static FlatpakProxyClient * -flatpak_proxy_client_new (FlatpakProxy *proxy, GSocketConnection *connection) -{ - FlatpakProxyClient *client; - - g_socket_set_blocking (g_socket_connection_get_socket (connection), FALSE); - - client = g_object_new (FLATPAK_TYPE_PROXY_CLIENT, NULL); - client->proxy = g_object_ref (proxy); - client->client_side.connection = g_object_ref (connection); - - proxy->clients = g_list_prepend (proxy->clients, client); - - return client; -} - -void -flatpak_proxy_set_filter (FlatpakProxy *proxy, - gboolean filter) -{ - proxy->filter = filter; -} - -void -flatpak_proxy_set_sloppy_names (FlatpakProxy *proxy, - gboolean sloppy_names) -{ - proxy->sloppy_names = sloppy_names; -} - -void -flatpak_proxy_set_log_messages (FlatpakProxy *proxy, - gboolean log) -{ - proxy->log_messages = log; -} - -static void -filter_free (Filter *filter) -{ - g_free (filter->name); - g_free (filter->path); - g_free (filter->interface); - g_free (filter->member); - g_free (filter); -} - -static void -filter_list_free (GList *filters) -{ - g_list_free_full (filters, (GDestroyNotify) filter_free); -} - - -static Filter * -filter_new (const char *name, - gboolean name_is_subtree, - FlatpakPolicy policy) -{ - Filter *filter = g_new0 (Filter, 1); - - filter->name = g_strdup (name); - filter->name_is_subtree = name_is_subtree; - filter->policy = policy; - filter->types = FILTER_TYPE_ALL; - - return filter; -} - -// rules are of the form [*|org.the.interface.[method|*]]|[@/obj/path[/*]] -static Filter * -filter_new_from_rule (const char *name, - gboolean name_is_subtree, - FilterTypeMask types, - const char *rule) -{ - Filter *filter; - const char *obj_path_start = NULL; - const char *method_end = NULL; - - filter = filter_new (name, name_is_subtree, FLATPAK_POLICY_TALK); - filter->types = types; - - obj_path_start = strchr (rule, '@'); - if (obj_path_start && obj_path_start[1] != 0) - { - filter->path = g_strdup (obj_path_start + 1); - - if (g_str_has_suffix (filter->path, "/*")) - { - filter->path_is_subtree = TRUE; - filter->path[strlen (filter->path) - 2] = 0; - } - } - - if (obj_path_start != NULL) - method_end = obj_path_start; - else - method_end = rule + strlen (rule); - - if (method_end != rule) - { - if (rule[0] == '*') - { - /* Both interface and method wildcarded */ - } - else - { - filter->interface = g_strndup (rule, method_end - rule); - char *dot = strrchr (filter->interface, '.'); - if (dot != NULL) - { - *dot = 0; - if (strcmp (dot + 1, "*") != 0) - filter->member = g_strdup (dot + 1); - } - } - } - - return filter; -} - -static gboolean -filter_matches (Filter *filter, - FilterTypeMask type, - const char *path, - const char *interface, - const char *member) -{ - if (filter->policy < FLATPAK_POLICY_TALK || - (filter->types & type) == 0) - return FALSE; - - if (filter->path) - { - if (path == NULL) - return FALSE; - - if (filter->path_is_subtree) - { - gsize filter_path_len = strlen (filter->path); - if (strncmp (path, filter->path, filter_path_len) != 0 || - (path[filter_path_len] != 0 && path[filter_path_len] != '/')) - return FALSE; - } - else if (strcmp (filter->path, path) != 0) - return FALSE; - } - - if (filter->interface && g_strcmp0 (filter->interface, interface) != 0) - return FALSE; - - if (filter->member && g_strcmp0 (filter->member, member) != 0) - return FALSE; - - return TRUE; -} - -static gboolean -any_filter_matches (GList *filters, - FilterTypeMask type, - const char *path, - const char *interface, - const char *member) -{ - GList *l; - - for (l = filters; l != NULL; l = l->next) - { - Filter *filter = l->data; - if (filter_matches (filter, type, path, interface, member)) - return TRUE; - } - - return FALSE; -} - - -static void -flatpak_proxy_add_filter (FlatpakProxy *proxy, - Filter *filter) -{ - GList *filters, *new_filters; - - if (g_hash_table_lookup_extended (proxy->filters, - filter->name, - NULL, (void **) &filters)) - { - new_filters = g_list_append (filters, filter); - g_assert (new_filters == filters); - } - else - { - filters = g_list_append (NULL, filter); - g_hash_table_insert (proxy->filters, g_strdup (filter->name), filters); - } -} - -void -flatpak_proxy_add_policy (FlatpakProxy *proxy, - const char *name, - gboolean name_is_subtree, - FlatpakPolicy policy) -{ - Filter *filter = filter_new (name, name_is_subtree, policy); - - flatpak_proxy_add_filter (proxy, filter); -} - -void -flatpak_proxy_add_call_rule (FlatpakProxy *proxy, - const char *name, - gboolean name_is_subtree, - const char *rule) -{ - Filter *filter = filter_new_from_rule (name, name_is_subtree, FILTER_TYPE_CALL, rule); - - flatpak_proxy_add_filter (proxy, filter); -} - -void -flatpak_proxy_add_broadcast_rule (FlatpakProxy *proxy, - const char *name, - gboolean name_is_subtree, - const char *rule) -{ - Filter *filter = filter_new_from_rule (name, name_is_subtree, FILTER_TYPE_BROADCAST, rule); - - flatpak_proxy_add_filter (proxy, filter); -} - -static void -flatpak_proxy_finalize (GObject *object) -{ - FlatpakProxy *proxy = FLATPAK_PROXY (object); - - if (g_socket_service_is_active (G_SOCKET_SERVICE (proxy))) - unlink (proxy->socket_path); - - g_assert (proxy->clients == NULL); - - g_hash_table_destroy (proxy->filters); - - g_free (proxy->socket_path); - g_free (proxy->dbus_address); - - G_OBJECT_CLASS (flatpak_proxy_parent_class)->finalize (object); -} - -static void -flatpak_proxy_set_property (GObject *object, - guint prop_id, - const GValue *value, - GParamSpec *pspec) -{ - FlatpakProxy *proxy = FLATPAK_PROXY (object); - - switch (prop_id) - { - case PROP_DBUS_ADDRESS: - proxy->dbus_address = g_value_dup_string (value); - break; - - case PROP_SOCKET_PATH: - proxy->socket_path = g_value_dup_string (value); - break; - - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } -} - -static void -flatpak_proxy_get_property (GObject *object, - guint prop_id, - GValue *value, - GParamSpec *pspec) -{ - FlatpakProxy *proxy = FLATPAK_PROXY (object); - - switch (prop_id) - { - case PROP_DBUS_ADDRESS: - g_value_set_string (value, proxy->dbus_address); - break; - - case PROP_SOCKET_PATH: - g_value_set_string (value, proxy->socket_path); - break; - - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } -} - -/* Buffer contains a default size of data that is 16 bytes, so that - it can be used on the stack for reading the header. However we - also support passing in sizes smaller that 16, which will allocate - a smaller object than the full Buffer object. This is safe as we - respect the size member, however there is no way for GCC to know this, - so we silence it manually. -*/ -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Warray-bounds" -static Buffer * -buffer_new (gsize size, Buffer *old) -{ - Buffer *buffer = g_malloc0 (sizeof (Buffer) + size - 16); - - buffer->control_messages = NULL; - buffer->size = size; - buffer->refcount = 1; - - if (old) - { - buffer->pos = old->pos; - /* Takes ownership of any old control messages */ - buffer->control_messages = old->control_messages; - old->control_messages = NULL; - - g_assert (size >= old->size); - memcpy (buffer->data, old->data, old->size); - } - - return buffer; -} -#pragma GCC diagnostic pop - -static ProxySide * -get_other_side (ProxySide *side) -{ - FlatpakProxyClient *client = side->client; - - if (side == &client->client_side) - return &client->bus_side; - - return &client->client_side; -} - -static void -side_closed (ProxySide *side) -{ - GSocket *socket, *other_socket; - ProxySide *other_side = get_other_side (side); - - if (side->closed) - return; - - socket = g_socket_connection_get_socket (side->connection); - g_socket_close (socket, NULL); - side->closed = TRUE; - - other_socket = g_socket_connection_get_socket (other_side->connection); - if (!other_side->closed && other_side->buffers == NULL) - { - g_socket_close (other_socket, NULL); - other_side->closed = TRUE; - } - - if (other_side->closed) - { - g_object_unref (side->client); - } - else - { - GError *error = NULL; - - if (!g_socket_shutdown (other_socket, TRUE, FALSE, &error)) - { - g_warning ("Unable to shutdown read side: %s", error->message); - g_error_free (error); - } - } -} - -static gboolean -buffer_read (ProxySide *side, - Buffer *buffer, - GSocket *socket) -{ - gsize received; - GInputVector v; - GError *error = NULL; - GSocketControlMessage **messages; - int num_messages, i; - - if (side->extra_input_data) - { - gsize extra_size; - const guchar *extra_bytes = g_bytes_get_data (side->extra_input_data, &extra_size); - - g_assert (buffer->size >= buffer->pos); - received = MIN (extra_size, buffer->size - buffer->pos); - memcpy (&buffer->data[buffer->pos], extra_bytes, received); - - if (received < extra_size) - { - side->extra_input_data = - g_bytes_new_with_free_func (extra_bytes + received, - extra_size - received, - (GDestroyNotify) g_bytes_unref, - side->extra_input_data); - } - else - { - g_clear_pointer (&side->extra_input_data, g_bytes_unref); - } - } - else - { - gssize res; - int flags = 0; - v.buffer = &buffer->data[buffer->pos]; - v.size = buffer->size - buffer->pos; - - res = g_socket_receive_message (socket, NULL, &v, 1, - &messages, - &num_messages, - &flags, NULL, &error); - if (res < 0 && g_error_matches (error, G_IO_ERROR, G_IO_ERROR_WOULD_BLOCK)) - { - g_error_free (error); - return FALSE; - } - - if (res <= 0) - { - if (res != 0) - { - g_debug ("Error reading from socket: %s", error->message); - g_error_free (error); - } - - side_closed (side); - return FALSE; - } - - /* We now know res is strictly positive */ - received = (gsize) res; - - for (i = 0; i < num_messages; i++) - buffer->control_messages = g_list_append (buffer->control_messages, messages[i]); - - g_free (messages); - } - - buffer->pos += received; - return TRUE; -} - -static gboolean -buffer_write (ProxySide *side, - Buffer *buffer, - GSocket *socket) -{ - gssize res; - GOutputVector v; - GError *error = NULL; - GSocketControlMessage **messages = NULL; - int i, n_messages; - GList *l; - - if (buffer->send_credentials && - G_IS_UNIX_CONNECTION (side->connection)) - { - g_assert (buffer->size == 1); - - if (!g_unix_connection_send_credentials (G_UNIX_CONNECTION (side->connection), - NULL, - &error)) - { - if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_WOULD_BLOCK)) - { - g_error_free (error); - return FALSE; - } - - g_warning ("Error writing credentials to socket: %s", error->message); - g_error_free (error); - - side_closed (side); - return FALSE; - } - - buffer->pos = 1; - return TRUE; - } - - n_messages = g_list_length (buffer->control_messages); - messages = g_new (GSocketControlMessage *, n_messages); - for (l = buffer->control_messages, i = 0; l != NULL; l = l->next, i++) - messages[i] = l->data; - - v.buffer = &buffer->data[buffer->pos]; - v.size = buffer->size - buffer->pos; - - res = g_socket_send_message (socket, NULL, &v, 1, - messages, n_messages, - G_SOCKET_MSG_NONE, NULL, &error); - g_free (messages); - if (res < 0 && g_error_matches (error, G_IO_ERROR, G_IO_ERROR_WOULD_BLOCK)) - { - g_error_free (error); - return FALSE; - } - - if (res <= 0) - { - if (res < 0) - { - g_warning ("Error writing credentials to socket: %s", error->message); - g_error_free (error); - } - - side_closed (side); - return FALSE; - } - - g_list_free_full (buffer->control_messages, g_object_unref); - buffer->control_messages = NULL; - - buffer->pos += res; - return TRUE; -} - -static gboolean -side_out_cb (GSocket *socket, GIOCondition condition, gpointer user_data) -{ - ProxySide *side = user_data; - FlatpakProxyClient *client = side->client; - gboolean retval = G_SOURCE_CONTINUE; - - g_object_ref (client); - - while (side->buffers) - { - Buffer *buffer = side->buffers->data; - - if (buffer_write (side, buffer, socket)) - { - if (buffer->pos == buffer->size) - { - side->buffers = g_list_delete_link (side->buffers, side->buffers); - buffer_unref (buffer); - } - } - else - { - break; - } - } - - if (side->buffers == NULL) - { - ProxySide *other_side = get_other_side (side); - - side->out_source = NULL; - retval = G_SOURCE_REMOVE; - - if (other_side->closed) - side_closed (side); - } - - g_object_unref (client); - - return retval; -} - -static void -queue_expected_reply (ProxySide *side, guint32 serial, ExpectedReplyType type) -{ - g_hash_table_replace (side->expected_replies, - GUINT_TO_POINTER (serial), - GUINT_TO_POINTER (type)); -} - -static ExpectedReplyType -steal_expected_reply (ProxySide *side, guint32 serial) -{ - ExpectedReplyType type; - - type = GPOINTER_TO_UINT (g_hash_table_lookup (side->expected_replies, - GUINT_TO_POINTER (serial))); - if (type) - g_hash_table_remove (side->expected_replies, - GUINT_TO_POINTER (serial)); - return type; -} - - -static void -queue_outgoing_buffer (ProxySide *side, Buffer *buffer) -{ - if (side->out_source == NULL) - { - GSocket *socket; - - socket = g_socket_connection_get_socket (side->connection); - side->out_source = g_socket_create_source (socket, G_IO_OUT, NULL); - g_source_set_callback (side->out_source, G_SOURCE_FUNC (side_out_cb), side, NULL); - g_source_attach (side->out_source, NULL); - g_source_unref (side->out_source); - } - - buffer->pos = 0; - side->buffers = g_list_append (side->buffers, buffer); -} - -static guint32 -read_uint32 (Header *header, guint8 *ptr) -{ - if (header->big_endian) - return GUINT32_FROM_BE (*(guint32 *) ptr); - else - return GUINT32_FROM_LE (*(guint32 *) ptr); -} - -static void -write_uint32 (Header *header, guint8 *ptr, guint32 val) -{ - if (header->big_endian) - *(guint32 *) ptr = GUINT32_TO_BE (val); - else - *(guint32 *) ptr = GUINT32_TO_LE (val); -} - -static inline guint32 -align_by_8 (guint32 offset) -{ - return (offset + 8 - 1) & ~(8 - 1); -} - -static inline guint32 -align_by_4 (guint32 offset) -{ - return (offset + 4 - 1) & ~(4 - 1); -} - -static const char * -get_signature (Buffer *buffer, guint32 *offset, guint32 end_offset) -{ - guint8 len; - char *str; - - if (*offset >= end_offset) - return FALSE; - - len = buffer->data[*offset]; - (*offset)++; - - if ((*offset) + len + 1 > end_offset) - return FALSE; - - if (buffer->data[(*offset) + len] != 0) - return FALSE; - - str = (char *) &buffer->data[(*offset)]; - *offset += len + 1; - - return str; -} - -static const char * -get_string (Buffer *buffer, Header *header, guint32 *offset, guint32 end_offset) -{ - guint8 len; - char *str; - - *offset = align_by_4 (*offset); - if (*offset + 4 >= end_offset) - return FALSE; - - len = read_uint32 (header, &buffer->data[*offset]); - *offset += 4; - - if ((*offset) + len + 1 > end_offset) - return FALSE; - - if (buffer->data[(*offset) + len] != 0) - return FALSE; - - str = (char *) &buffer->data[(*offset)]; - *offset += len + 1; - - return str; -} - -static void -header_free (Header *header) -{ - if (header->buffer) - buffer_unref (header->buffer); - g_free (header); -} - -static Header * -parse_header (Buffer *buffer, guint32 serial_offset, guint32 reply_serial_offset, guint32 hello_serial) -{ - guint32 array_len, header_len; - guint32 offset, end_offset; - guint8 header_type; - guint32 reply_serial_pos = 0; - const char *signature; - - g_autoptr(Header) header = g_new0 (Header, 1); - - header->buffer = buffer_ref (buffer); - - if (buffer->size < 16) - return NULL; - - if (buffer->data[3] != 1) /* Protocol version */ - return NULL; - - if (buffer->data[0] == 'B') - header->big_endian = TRUE; - else if (buffer->data[0] == 'l') - header->big_endian = FALSE; - else - return NULL; - - header->type = buffer->data[1]; - header->flags = buffer->data[2]; - - header->length = read_uint32 (header, &buffer->data[4]); - header->serial = read_uint32 (header, &buffer->data[8]); - - if (header->serial == 0) - return NULL; - - array_len = read_uint32 (header, &buffer->data[12]); - - header_len = align_by_8 (12 + 4 + array_len); - g_assert (buffer->size >= header_len); /* We should have verified this when reading in the message */ - if (header_len > buffer->size) - return NULL; - - offset = 12 + 4; - end_offset = offset + array_len; - - while (offset < end_offset) - { - offset = align_by_8 (offset); /* Structs must be 8 byte aligned */ - if (offset >= end_offset) - return NULL; - - header_type = buffer->data[offset++]; - if (offset >= end_offset) - return NULL; - - signature = get_signature (buffer, &offset, end_offset); - if (signature == NULL) - return NULL; - - switch (header_type) - { - case G_DBUS_MESSAGE_HEADER_FIELD_INVALID: - return NULL; - - case G_DBUS_MESSAGE_HEADER_FIELD_PATH: - if (strcmp (signature, "o") != 0) - return NULL; - header->path = get_string (buffer, header, &offset, end_offset); - if (header->path == NULL) - return NULL; - break; - - case G_DBUS_MESSAGE_HEADER_FIELD_INTERFACE: - if (strcmp (signature, "s") != 0) - return NULL; - header->interface = get_string (buffer, header, &offset, end_offset); - if (header->interface == NULL) - return NULL; - break; - - case G_DBUS_MESSAGE_HEADER_FIELD_MEMBER: - if (strcmp (signature, "s") != 0) - return NULL; - header->member = get_string (buffer, header, &offset, end_offset); - if (header->member == NULL) - return NULL; - break; - - case G_DBUS_MESSAGE_HEADER_FIELD_ERROR_NAME: - if (strcmp (signature, "s") != 0) - return NULL; - header->error_name = get_string (buffer, header, &offset, end_offset); - if (header->error_name == NULL) - return NULL; - break; - - case G_DBUS_MESSAGE_HEADER_FIELD_REPLY_SERIAL: - if (offset + 4 > end_offset) - return NULL; - - header->has_reply_serial = TRUE; - reply_serial_pos = offset; - header->reply_serial = read_uint32 (header, &buffer->data[offset]); - offset += 4; - break; - - case G_DBUS_MESSAGE_HEADER_FIELD_DESTINATION: - if (strcmp (signature, "s") != 0) - return NULL; - header->destination = get_string (buffer, header, &offset, end_offset); - if (header->destination == NULL) - return NULL; - break; - - case G_DBUS_MESSAGE_HEADER_FIELD_SENDER: - if (strcmp (signature, "s") != 0) - return NULL; - header->sender = get_string (buffer, header, &offset, end_offset); - if (header->sender == NULL) - return NULL; - break; - - case G_DBUS_MESSAGE_HEADER_FIELD_SIGNATURE: - if (strcmp (signature, "g") != 0) - return NULL; - header->signature = get_signature (buffer, &offset, end_offset); - if (header->signature == NULL) - return NULL; - break; - - case G_DBUS_MESSAGE_HEADER_FIELD_NUM_UNIX_FDS: - if (offset + 4 > end_offset) - return NULL; - - header->unix_fds = read_uint32 (header, &buffer->data[offset]); - offset += 4; - break; - - default: - /* Unknown header field, for safety, fail parse */ - return NULL; - } - } - - switch (header->type) - { - case G_DBUS_MESSAGE_TYPE_METHOD_CALL: - if (header->path == NULL || header->member == NULL) - return NULL; - break; - - case G_DBUS_MESSAGE_TYPE_METHOD_RETURN: - if (!header->has_reply_serial) - return NULL; - break; - - case G_DBUS_MESSAGE_TYPE_ERROR: - if (header->error_name == NULL || !header->has_reply_serial) - return NULL; - break; - - case G_DBUS_MESSAGE_TYPE_SIGNAL: - if (header->path == NULL || - header->interface == NULL || - header->member == NULL) - return NULL; - if (strcmp (header->path, "/org/freedesktop/DBus/Local") == 0 || - strcmp (header->interface, "org.freedesktop.DBus.Local") == 0) - return NULL; - break; - - default: - /* Unknown message type, for safety, fail parse */ - return NULL; - } - - if (serial_offset > 0) - { - header->serial += serial_offset; - write_uint32 (header, &buffer->data[8], header->serial); - } - - if (reply_serial_offset > 0 && - header->has_reply_serial && - header->reply_serial > hello_serial + reply_serial_offset) - write_uint32 (header, &buffer->data[reply_serial_pos], header->reply_serial - reply_serial_offset); - - return g_steal_pointer (&header); -} - -static void -print_outgoing_header (Header *header) -{ - switch (header->type) - { - case G_DBUS_MESSAGE_TYPE_METHOD_CALL: - g_print ("C%d: -> %s call %s.%s at %s\n", - header->serial, - header->destination ? header->destination : "(no dest)", - header->interface ? header->interface : "", - header->member ? header->member : "", - header->path ? header->path : ""); - break; - - case G_DBUS_MESSAGE_TYPE_METHOD_RETURN: - g_print ("C%d: -> %s return from B%d\n", - header->serial, - header->destination ? header->destination : "(no dest)", - header->reply_serial); - break; - - case G_DBUS_MESSAGE_TYPE_ERROR: - g_print ("C%d: -> %s return error %s from B%d\n", - header->serial, - header->destination ? header->destination : "(no dest)", - header->error_name ? header->error_name : "(no error)", - header->reply_serial); - break; - - case G_DBUS_MESSAGE_TYPE_SIGNAL: - g_print ("C%d: -> %s signal %s.%s at %s\n", - header->serial, - header->destination ? header->destination : "all", - header->interface ? header->interface : "", - header->member ? header->member : "", - header->path ? header->path : ""); - break; - - default: - g_print ("unknown message type\n"); - } -} - -static void -print_incoming_header (Header *header) -{ - switch (header->type) - { - case G_DBUS_MESSAGE_TYPE_METHOD_CALL: - g_print ("B%d: <- %s call %s.%s at %s\n", - header->serial, - header->sender ? header->sender : "(no sender)", - header->interface ? header->interface : "", - header->member ? header->member : "", - header->path ? header->path : ""); - break; - - case G_DBUS_MESSAGE_TYPE_METHOD_RETURN: - g_print ("B%d: <- %s return from C%d\n", - header->serial, - header->sender ? header->sender : "(no sender)", - header->reply_serial); - break; - - case G_DBUS_MESSAGE_TYPE_ERROR: - g_print ("B%d: <- %s return error %s from C%d\n", - header->serial, - header->sender ? header->sender : "(no sender)", - header->error_name ? header->error_name : "(no error)", - header->reply_serial); - break; - - case G_DBUS_MESSAGE_TYPE_SIGNAL: - g_print ("B%d: <- %s signal %s.%s at %s\n", - header->serial, - header->sender ? header->sender : "(no sender)", - header->interface ? header->interface : "", - header->member ? header->member : "", - header->path ? header->path : ""); - break; - - default: - g_print ("unknown message type\n"); - } -} - - -static Filter *match_all[FLATPAK_POLICY_OWN + 1] = { NULL }; - - -static FlatpakPolicy -flatpak_proxy_client_get_max_policy_and_matched (FlatpakProxyClient *client, - const char *source, - GList **matched_filters) -{ - GList *names, *filters, *l; - FlatpakPolicy max_policy = FLATPAK_POLICY_NONE; - g_autofree char *name = NULL; - gboolean exact_name_match; - char *dot; - - if (match_all[FLATPAK_POLICY_SEE] == NULL) - { - match_all[FLATPAK_POLICY_SEE] = filter_new ("", FALSE, FLATPAK_POLICY_SEE); - match_all[FLATPAK_POLICY_TALK] = filter_new ("", FALSE, FLATPAK_POLICY_TALK); - match_all[FLATPAK_POLICY_OWN] = filter_new ("", FALSE, FLATPAK_POLICY_OWN); - } - - if (source == NULL) - { - if (matched_filters) - *matched_filters = g_list_append (*matched_filters, match_all[FLATPAK_POLICY_TALK]); - - return FLATPAK_POLICY_TALK; /* All clients can talk to the bus itself */ - } - - if (source[0] == ':') - { - /* Default to the unique id policy, i.e. TALK for self, and SEE for trusted peers */ - max_policy = GPOINTER_TO_UINT (g_hash_table_lookup (client->unique_id_policy, source)); - if (max_policy > FLATPAK_POLICY_NONE && matched_filters) - *matched_filters = g_list_append (*matched_filters, match_all[max_policy]); - - /* Treat this as the merged list of filters for all the names the unique id ever owned */ - names = g_hash_table_lookup (client->unique_id_owned_names, source); - for (l = names; l != NULL; l = l->next) - { - const char *owned_name = l->data; - max_policy = MAX (max_policy, flatpak_proxy_client_get_max_policy_and_matched (client, owned_name, matched_filters)); - } - - - return max_policy; - } - - name = g_strdup (source); - exact_name_match = TRUE; - do - { - filters = g_hash_table_lookup (client->proxy->filters, name); - - for (l = filters; l != NULL; l = l->next) - { - Filter *filter = l->data; - - if (exact_name_match || filter->name_is_subtree) - { - max_policy = MAX (max_policy, filter->policy); - if (matched_filters) - *matched_filters = g_list_append (*matched_filters, filter); - } - } - - exact_name_match = FALSE; - dot = strrchr (name, '.'); - if (dot != NULL) - *dot = 0; - } - while (dot != NULL); - - return max_policy; -} - -static FlatpakPolicy -flatpak_proxy_client_get_max_policy (FlatpakProxyClient *client, - const char *source) -{ - return flatpak_proxy_client_get_max_policy_and_matched (client, source, NULL); -} - -static void -flatpak_proxy_client_update_unique_id_policy (FlatpakProxyClient *client, - const char *unique_id, - FlatpakPolicy policy) -{ - if (policy > FLATPAK_POLICY_NONE) - { - FlatpakPolicy old_policy; - old_policy = GPOINTER_TO_UINT (g_hash_table_lookup (client->unique_id_policy, unique_id)); - if (policy > old_policy) - g_hash_table_replace (client->unique_id_policy, g_strdup (unique_id), GINT_TO_POINTER (policy)); - } -} - - -static void -flatpak_proxy_client_add_unique_id_owned_name (FlatpakProxyClient *client, - const char *unique_id, - const char *owned_name) -{ - GList *names; - gboolean already_added; - - names = NULL; - already_added = g_hash_table_lookup_extended (client->unique_id_owned_names, - unique_id, - NULL, (void **) &names); - names = g_list_append (names, g_strdup (owned_name)); - - if (!already_added) - g_hash_table_insert (client->unique_id_owned_names, g_strdup (unique_id), names); -} - - -static gboolean -client_message_generates_reply (Header *header) -{ - switch (header->type) - { - case G_DBUS_MESSAGE_TYPE_METHOD_CALL: - return (header->flags & G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED) == 0; - - case G_DBUS_MESSAGE_TYPE_SIGNAL: - case G_DBUS_MESSAGE_TYPE_METHOD_RETURN: - case G_DBUS_MESSAGE_TYPE_ERROR: - default: - return FALSE; - } -} - -static Buffer * -message_to_buffer (GDBusMessage *message) -{ - Buffer *buffer; - guchar *blob; - gsize blob_size; - - blob = g_dbus_message_to_blob (message, &blob_size, G_DBUS_CAPABILITY_FLAGS_NONE, NULL); - buffer = buffer_new (blob_size, NULL); - memcpy (buffer->data, blob, blob_size); - g_free (blob); - - return buffer; -} - -static GDBusMessage * -get_error_for_header (FlatpakProxyClient *client, Header *header, const char *error) -{ - GDBusMessage *reply; - - reply = g_dbus_message_new (); - g_dbus_message_set_message_type (reply, G_DBUS_MESSAGE_TYPE_ERROR); - g_dbus_message_set_flags (reply, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED); - g_dbus_message_set_reply_serial (reply, header->serial - client->serial_offset); - g_dbus_message_set_error_name (reply, error); - g_dbus_message_set_body (reply, g_variant_new ("(s)", error)); - - return reply; -} - -static GDBusMessage * -get_bool_reply_for_header (FlatpakProxyClient *client, Header *header, gboolean val) -{ - GDBusMessage *reply; - - reply = g_dbus_message_new (); - g_dbus_message_set_message_type (reply, G_DBUS_MESSAGE_TYPE_METHOD_RETURN); - g_dbus_message_set_flags (reply, G_DBUS_MESSAGE_FLAGS_NO_REPLY_EXPECTED); - g_dbus_message_set_reply_serial (reply, header->serial - client->serial_offset); - g_dbus_message_set_body (reply, g_variant_new ("(b)", val)); - - return reply; -} - -static Buffer * -get_ping_buffer_for_header (Header *header) -{ - Buffer *buffer; - GDBusMessage *dummy; - - dummy = g_dbus_message_new_method_call (NULL, "/", "org.freedesktop.DBus.Peer", "Ping"); - g_dbus_message_set_serial (dummy, header->serial); - g_dbus_message_set_flags (dummy, header->flags); - - buffer = message_to_buffer (dummy); - - g_object_unref (dummy); - - return buffer; -} - -static Buffer * -get_error_for_roundtrip (FlatpakProxyClient *client, Header *header, const char *error_name) -{ - Buffer *ping_buffer = get_ping_buffer_for_header (header); - GDBusMessage *reply; - - reply = get_error_for_header (client, header, error_name); - g_hash_table_replace (client->rewrite_reply, GINT_TO_POINTER (header->serial), reply); - return ping_buffer; -} - -static Buffer * -get_bool_reply_for_roundtrip (FlatpakProxyClient *client, Header *header, gboolean val) -{ - Buffer *ping_buffer = get_ping_buffer_for_header (header); - GDBusMessage *reply; - - reply = get_bool_reply_for_header (client, header, val); - g_hash_table_replace (client->rewrite_reply, GINT_TO_POINTER (header->serial), reply); - - return ping_buffer; -} - -typedef enum { - HANDLE_PASS, - HANDLE_DENY, - HANDLE_HIDE, - HANDLE_FILTER_NAME_LIST_REPLY, - HANDLE_FILTER_HAS_OWNER_REPLY, - HANDLE_FILTER_GET_OWNER_REPLY, - HANDLE_VALIDATE_OWN, - HANDLE_VALIDATE_SEE, - HANDLE_VALIDATE_TALK, - HANDLE_VALIDATE_MATCH, -} BusHandler; - -static gboolean -is_for_bus (Header *header) -{ - return g_strcmp0 (header->destination, "org.freedesktop.DBus") == 0; -} - -static gboolean -is_dbus_method_call (Header *header) -{ - return - is_for_bus (header) && - header->type == G_DBUS_MESSAGE_TYPE_METHOD_CALL && - g_strcmp0 (header->interface, "org.freedesktop.DBus") == 0; -} - -static gboolean -is_introspection_call (Header *header) -{ - return - header->type == G_DBUS_MESSAGE_TYPE_METHOD_CALL && - g_strcmp0 (header->interface, "org.freedesktop.DBus.Introspectable") == 0; -} - -static BusHandler -get_dbus_method_handler (FlatpakProxyClient *client, Header *header) -{ - FlatpakPolicy policy; - const char *method; - - g_autoptr(GList) filters = NULL; - - if (header->has_reply_serial) - { - ExpectedReplyType expected_reply = - steal_expected_reply (&client->bus_side, - header->reply_serial); - if (expected_reply == EXPECTED_REPLY_NONE) - return HANDLE_DENY; - - return HANDLE_PASS; - } - - policy = flatpak_proxy_client_get_max_policy_and_matched (client, header->destination, &filters); - if (policy < FLATPAK_POLICY_SEE) - return HANDLE_HIDE; - if (policy < FLATPAK_POLICY_TALK) - return HANDLE_DENY; - - if (!is_for_bus (header)) - { - if (policy == FLATPAK_POLICY_OWN || - any_filter_matches (filters, FILTER_TYPE_CALL, - header->path, - header->interface, - header->member)) - return HANDLE_PASS; - - return HANDLE_DENY; - } - - /* Its a bus call */ - - if (is_introspection_call (header)) - { - return HANDLE_PASS; - } - else if (is_dbus_method_call (header)) - { - method = header->member; - if (method == NULL) - return HANDLE_DENY; - - if (strcmp (method, "AddMatch") == 0) - return HANDLE_VALIDATE_MATCH; - - if (strcmp (method, "Hello") == 0 || - strcmp (method, "RemoveMatch") == 0 || - strcmp (method, "GetId") == 0) - return HANDLE_PASS; - - if (strcmp (method, "UpdateActivationEnvironment") == 0 || - strcmp (method, "BecomeMonitor") == 0) - return HANDLE_DENY; - - if (strcmp (method, "RequestName") == 0 || - strcmp (method, "ReleaseName") == 0 || - strcmp (method, "ListQueuedOwners") == 0) - return HANDLE_VALIDATE_OWN; - - if (strcmp (method, "NameHasOwner") == 0) - return HANDLE_FILTER_HAS_OWNER_REPLY; - - if (strcmp (method, "GetNameOwner") == 0) - return HANDLE_FILTER_GET_OWNER_REPLY; - - if (strcmp (method, "GetConnectionUnixProcessID") == 0 || - strcmp (method, "GetConnectionCredentials") == 0 || - strcmp (method, "GetAdtAuditSessionData") == 0 || - strcmp (method, "GetConnectionSELinuxSecurityContext") == 0 || - strcmp (method, "GetConnectionUnixUser") == 0) - return HANDLE_VALIDATE_SEE; - - if (strcmp (method, "StartServiceByName") == 0) - return HANDLE_VALIDATE_TALK; - - if (strcmp (method, "ListNames") == 0 || - strcmp (method, "ListActivatableNames") == 0) - return HANDLE_FILTER_NAME_LIST_REPLY; - - g_warning ("Unknown bus method %s", method); - return HANDLE_DENY; - } - else - { - return HANDLE_DENY; - } -} - -static FlatpakPolicy -policy_from_handler (BusHandler handler) -{ - switch (handler) - { - case HANDLE_VALIDATE_OWN: - return FLATPAK_POLICY_OWN; - - case HANDLE_VALIDATE_TALK: - return FLATPAK_POLICY_TALK; - - case HANDLE_VALIDATE_SEE: - return FLATPAK_POLICY_SEE; - - case HANDLE_DENY: - case HANDLE_FILTER_GET_OWNER_REPLY: - case HANDLE_FILTER_HAS_OWNER_REPLY: - case HANDLE_FILTER_NAME_LIST_REPLY: - case HANDLE_HIDE: - case HANDLE_PASS: - case HANDLE_VALIDATE_MATCH: - default: - return FLATPAK_POLICY_NONE; - } -} - -static char * -get_arg0_string (Buffer *buffer) -{ - GDBusMessage *message = g_dbus_message_new_from_blob (buffer->data, buffer->size, 0, NULL); - GVariant *body; - - g_autoptr(GVariant) arg0 = NULL; - char *name = NULL; - - if (message != NULL && - (body = g_dbus_message_get_body (message)) != NULL && - (arg0 = g_variant_get_child_value (body, 0)) != NULL && - g_variant_is_of_type (arg0, G_VARIANT_TYPE_STRING)) - name = g_variant_dup_string (arg0, NULL); - - g_object_unref (message); - - return name; -} - -static gboolean -validate_arg0_match (FlatpakProxyClient *client, Buffer *buffer) -{ - GDBusMessage *message = g_dbus_message_new_from_blob (buffer->data, buffer->size, 0, NULL); - GVariant *body, *arg0; - const char *match; - gboolean res = TRUE; - - if (message != NULL && - (body = g_dbus_message_get_body (message)) != NULL && - (arg0 = g_variant_get_child_value (body, 0)) != NULL && - g_variant_is_of_type (arg0, G_VARIANT_TYPE_STRING)) - { - match = g_variant_get_string (arg0, NULL); - if (strstr (match, "eavesdrop=") != NULL) - res = FALSE; - } - - g_object_unref (message); - return res; -} - -static gboolean -validate_arg0_name (FlatpakProxyClient *client, Buffer *buffer, FlatpakPolicy required_policy, FlatpakPolicy *has_policy) -{ - GDBusMessage *message = g_dbus_message_new_from_blob (buffer->data, buffer->size, 0, NULL); - GVariant *body, *arg0; - const char *name; - FlatpakPolicy name_policy; - gboolean res = FALSE; - - if (has_policy) - *has_policy = FLATPAK_POLICY_NONE; - - if (message != NULL && - (body = g_dbus_message_get_body (message)) != NULL && - (arg0 = g_variant_get_child_value (body, 0)) != NULL && - g_variant_is_of_type (arg0, G_VARIANT_TYPE_STRING)) - { - name = g_variant_get_string (arg0, NULL); - name_policy = flatpak_proxy_client_get_max_policy (client, name); - - if (has_policy) - *has_policy = name_policy; - - if (name_policy >= required_policy) - res = TRUE; - else if (client->proxy->log_messages) - g_print ("Filtering message due to arg0 %s, policy: %d (required %d)\n", name, name_policy, required_policy); - } - - g_object_unref (message); - return res; -} - -static Buffer * -filter_names_list (FlatpakProxyClient *client, Buffer *buffer) -{ - GDBusMessage *message = g_dbus_message_new_from_blob (buffer->data, buffer->size, 0, NULL); - GVariant *body, *arg0, *new_names; - const gchar **names; - int i; - GVariantBuilder builder; - Buffer *filtered; - - if (message == NULL || - (body = g_dbus_message_get_body (message)) == NULL || - (arg0 = g_variant_get_child_value (body, 0)) == NULL || - !g_variant_is_of_type (arg0, G_VARIANT_TYPE_STRING_ARRAY)) - return NULL; - - names = g_variant_get_strv (arg0, NULL); - - g_variant_builder_init (&builder, G_VARIANT_TYPE_STRING_ARRAY); - for (i = 0; names[i] != NULL; i++) - { - if (flatpak_proxy_client_get_max_policy (client, names[i]) >= FLATPAK_POLICY_SEE) - g_variant_builder_add (&builder, "s", names[i]); - } - g_free (names); - - new_names = g_variant_builder_end (&builder); - g_dbus_message_set_body (message, - g_variant_new_tuple (&new_names, 1)); - - filtered = message_to_buffer (message); - g_object_unref (message); - return filtered; -} - -static gboolean -message_is_name_owner_changed (FlatpakProxyClient *client, Header *header) -{ - if (header->type == G_DBUS_MESSAGE_TYPE_SIGNAL && - g_strcmp0 (header->sender, "org.freedesktop.DBus") == 0 && - g_strcmp0 (header->interface, "org.freedesktop.DBus") == 0 && - g_strcmp0 (header->member, "NameOwnerChanged") == 0) - return TRUE; - return FALSE; -} - -static gboolean -should_filter_name_owner_changed (FlatpakProxyClient *client, Buffer *buffer) -{ - GDBusMessage *message = g_dbus_message_new_from_blob (buffer->data, buffer->size, 0, NULL); - GVariant *body, *arg0, *arg1, *arg2; - const gchar *name, *new; - gboolean filter = TRUE; - - if (message == NULL || - (body = g_dbus_message_get_body (message)) == NULL || - (arg0 = g_variant_get_child_value (body, 0)) == NULL || - !g_variant_is_of_type (arg0, G_VARIANT_TYPE_STRING) || - (arg1 = g_variant_get_child_value (body, 1)) == NULL || - !g_variant_is_of_type (arg1, G_VARIANT_TYPE_STRING) || - (arg2 = g_variant_get_child_value (body, 2)) == NULL || - !g_variant_is_of_type (arg2, G_VARIANT_TYPE_STRING)) - return TRUE; - - name = g_variant_get_string (arg0, NULL); - new = g_variant_get_string (arg2, NULL); - - if (flatpak_proxy_client_get_max_policy (client, name) >= FLATPAK_POLICY_SEE || - (client->proxy->sloppy_names && name[0] == ':')) - { - if (name[0] != ':') - { - if (new[0] != 0) - flatpak_proxy_client_add_unique_id_owned_name (client, new, name); - } - - filter = FALSE; - } - - g_object_unref (message); - - return filter; -} - -static GList * -side_get_n_unix_fds (ProxySide *side, int n_fds) -{ - GList *res = NULL; - - while (side->control_messages != NULL) - { - GSocketControlMessage *control_message = side->control_messages->data; - - if (G_IS_UNIX_FD_MESSAGE (control_message)) - { - GUnixFDMessage *fd_message = G_UNIX_FD_MESSAGE (control_message); - GUnixFDList *fd_list = g_unix_fd_message_get_fd_list (fd_message); - int len = g_unix_fd_list_get_length (fd_list); - - /* I believe that socket control messages are never merged, and - the sender side sends only one unix-fd-list per message, so - at this point there should always be one full fd list - per requested number of fds */ - if (len != n_fds) - { - g_warning ("Not right nr of fds in socket message"); - return NULL; - } - - side->control_messages = g_list_delete_link (side->control_messages, side->control_messages); - - return g_list_append (NULL, control_message); - } - - g_object_unref (control_message); - side->control_messages = g_list_delete_link (side->control_messages, side->control_messages); - } - - return res; -} - -static gboolean -update_socket_messages (ProxySide *side, Buffer *buffer, Header *header) -{ - /* We may accidentally combine multiple control messages into one - buffer when we receive (since we can do several recvs), so we - keep a list of all we get and then only re-attach the amount - specified in the header to the buffer. */ - - side->control_messages = g_list_concat (side->control_messages, buffer->control_messages); - buffer->control_messages = NULL; - if (header->unix_fds > 0) - { - buffer->control_messages = side_get_n_unix_fds (side, header->unix_fds); - if (buffer->control_messages == NULL) - { - g_warning ("Not enough fds for message"); - side_closed (side); - buffer_unref (buffer); - return FALSE; - } - } - return TRUE; -} - -static void -queue_fake_message (FlatpakProxyClient *client, GDBusMessage *message, ExpectedReplyType reply_type) -{ - Buffer *buffer; - - client->last_serial++; - client->serial_offset++; - g_dbus_message_set_serial (message, client->last_serial); - buffer = message_to_buffer (message); - g_object_unref (message); - - queue_outgoing_buffer (&client->bus_side, buffer); - queue_expected_reply (&client->client_side, client->last_serial, reply_type); -} - -/* After the first Hello message we need to synthesize a bunch of messages to synchronize the - ownership state for the names in the policy */ -static void -queue_initial_name_ops (FlatpakProxyClient *client) -{ - GHashTableIter iter; - gpointer key, value; - gboolean has_wildcards = FALSE; - - g_hash_table_iter_init (&iter, client->proxy->filters); - while (g_hash_table_iter_next (&iter, &key, &value)) - { - const char *name = key; - GList *filters = value; - gboolean name_needs_subtree = FALSE; - GDBusMessage *message; - GVariant *match; - GList *l; - - for (l = filters; l != NULL; l = l->next) - { - Filter *filter = l->data; - if (filter->name_is_subtree) - { - name_needs_subtree = TRUE; - break; - } - } - - if (strcmp (name, "org.freedesktop.DBus") == 0) - continue; - - /* AddMatch the name so we get told about ownership changes. - Do it before the GetNameOwner to avoid races */ - message = g_dbus_message_new_method_call ("org.freedesktop.DBus", "/", "org.freedesktop.DBus", "AddMatch"); - if (name_needs_subtree) - match = g_variant_new_printf ("type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0namespace='%s'", name); - else - match = g_variant_new_printf ("type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='%s'", name); - g_dbus_message_set_body (message, g_variant_new_tuple (&match, 1)); - queue_fake_message (client, message, EXPECTED_REPLY_FILTER); - - if (client->proxy->log_messages) - g_print ("C%d: -> org.freedesktop.DBus fake %sAddMatch for %s\n", client->last_serial, name_needs_subtree ? "wildcarded " : "", name); - - if (!name_needs_subtree) - { - /* Get the current owner of the name (if any) so we can apply policy to it */ - message = g_dbus_message_new_method_call ("org.freedesktop.DBus", "/", "org.freedesktop.DBus", "GetNameOwner"); - g_dbus_message_set_body (message, g_variant_new ("(s)", name)); - queue_fake_message (client, message, EXPECTED_REPLY_FAKE_GET_NAME_OWNER); - g_hash_table_replace (client->get_owner_reply, GINT_TO_POINTER (client->last_serial), g_strdup (name)); - - if (client->proxy->log_messages) - g_print ("C%d: -> org.freedesktop.DBus fake GetNameOwner for %s\n", client->last_serial, name); - } - else - has_wildcards = TRUE; /* Send ListNames below */ - } - - /* For wildcarded rules we don't know the actual names to GetNameOwner for, so we have to list all current names */ - if (has_wildcards) - { - GDBusMessage *message; - - /* AddMatch the name so we get told about ownership changes. - Do it before the GetNameOwner to avoid races */ - message = g_dbus_message_new_method_call ("org.freedesktop.DBus", "/", "org.freedesktop.DBus", "ListNames"); - g_dbus_message_set_body (message, g_variant_new ("()")); - queue_fake_message (client, message, EXPECTED_REPLY_FAKE_LIST_NAMES); - - if (client->proxy->log_messages) - g_print ("C%d: -> org.freedesktop.DBus fake ListNames\n", client->last_serial); - - /* Stop reading from the client, to avoid incoming messages fighting with the ListNames roundtrip. - We will start it again once we have handled the ListNames reply */ - stop_reading (&client->client_side); - - /* Once we get the reply to this queue_wildcard_initial_name_ops() will be called and we continue there */ - } -} - -static void -queue_wildcard_initial_name_ops (FlatpakProxyClient *client, Header *header, Buffer *buffer) -{ - GDBusMessage *decoded_message = g_dbus_message_new_from_blob (buffer->data, buffer->size, 0, NULL); - GVariant *body, *arg0; - - if (decoded_message != NULL && - header->type == G_DBUS_MESSAGE_TYPE_METHOD_RETURN && - (body = g_dbus_message_get_body (decoded_message)) != NULL && - (arg0 = g_variant_get_child_value (body, 0)) != NULL && - g_variant_is_of_type (arg0, G_VARIANT_TYPE_STRING_ARRAY)) - { - const gchar **names = g_variant_get_strv (arg0, NULL); - int i; - - /* Loop over all current names and get the owner for all the ones that match our rules - policies so that we can update the unique id policies for those */ - for (i = 0; names[i] != NULL; i++) - { - const char *name = names[i]; - - if (name[0] != ':' && - flatpak_proxy_client_get_max_policy (client, name) != FLATPAK_POLICY_NONE) - { - /* Get the current owner of the name (if any) so we can apply policy to it */ - GDBusMessage *message = g_dbus_message_new_method_call ("org.freedesktop.DBus", "/", "org.freedesktop.DBus", "GetNameOwner"); - g_dbus_message_set_body (message, g_variant_new ("(s)", name)); - queue_fake_message (client, message, EXPECTED_REPLY_FAKE_GET_NAME_OWNER); - g_hash_table_replace (client->get_owner_reply, GINT_TO_POINTER (client->last_serial), g_strdup (name)); - - if (client->proxy->log_messages) - g_print ("C%d: -> org.freedesktop.DBus fake GetNameOwner for %s\n", client->last_serial, name); - } - } - g_free (names); - } - - g_object_unref (decoded_message); -} - - -static void -got_buffer_from_client (FlatpakProxyClient *client, ProxySide *side, Buffer *buffer) -{ - ExpectedReplyType expecting_reply = EXPECTED_REPLY_NONE; - - if (client->authenticated && client->proxy->filter) - { - g_autoptr(Header) header = NULL; - BusHandler handler; - - /* Filter and rewrite outgoing messages as needed */ - - header = parse_header (buffer, client->serial_offset, 0, 0); - if (header == NULL) - { - g_warning ("Invalid message header format"); - side_closed (side); - buffer_unref (buffer); - return; - } - - if (!update_socket_messages (side, buffer, header)) - return; - - /* Make sure the client is not playing games with the serials, as that - could confuse us. */ - if (header->serial <= client->last_serial) - { - g_warning ("Invalid client serial"); - side_closed (side); - buffer_unref (buffer); - return; - } - client->last_serial = header->serial; - - if (client->proxy->log_messages) - print_outgoing_header (header); - - /* Keep track of the initial Hello request so that we can read - the reply which has our assigned unique id */ - if (is_dbus_method_call (header) && - g_strcmp0 (header->member, "Hello") == 0) - { - expecting_reply = EXPECTED_REPLY_HELLO; - client->hello_serial = header->serial; - } - - handler = get_dbus_method_handler (client, header); - - switch (handler) - { - case HANDLE_FILTER_HAS_OWNER_REPLY: - case HANDLE_FILTER_GET_OWNER_REPLY: - if (!validate_arg0_name (client, buffer, FLATPAK_POLICY_SEE, NULL)) - { - g_clear_pointer (&buffer, buffer_unref); - if (handler == HANDLE_FILTER_GET_OWNER_REPLY) - buffer = get_error_for_roundtrip (client, header, - "org.freedesktop.DBus.Error.NameHasNoOwner"); - else - buffer = get_bool_reply_for_roundtrip (client, header, FALSE); - - expecting_reply = EXPECTED_REPLY_REWRITE; - break; - } - - goto handle_pass; - - case HANDLE_VALIDATE_MATCH: - if (!validate_arg0_match (client, buffer)) - { - if (client->proxy->log_messages) - g_print ("*DENIED* (ping)\n"); - g_clear_pointer (&buffer, buffer_unref); - buffer = get_error_for_roundtrip (client, header, - "org.freedesktop.DBus.Error.AccessDenied"); - expecting_reply = EXPECTED_REPLY_REWRITE; - break; - } - - goto handle_pass; - - case HANDLE_VALIDATE_OWN: - case HANDLE_VALIDATE_SEE: - case HANDLE_VALIDATE_TALK: - { - FlatpakPolicy name_policy; - if (validate_arg0_name (client, buffer, policy_from_handler (handler), &name_policy)) - goto handle_pass; - - if (name_policy < (int) FLATPAK_POLICY_SEE) - goto handle_hide; - else - goto handle_deny; - } - - case HANDLE_FILTER_NAME_LIST_REPLY: - expecting_reply = EXPECTED_REPLY_LIST_NAMES; - goto handle_pass; - - case HANDLE_PASS: -handle_pass: - if (client_message_generates_reply (header)) - { - if (expecting_reply == EXPECTED_REPLY_NONE) - expecting_reply = EXPECTED_REPLY_NORMAL; - } - - break; - - case HANDLE_HIDE: -handle_hide: - g_clear_pointer (&buffer, buffer_unref); - - if (client_message_generates_reply (header)) - { - const char *error; - - if (client->proxy->log_messages) - g_print ("*HIDDEN* (ping)\n"); - - if ((header->destination != NULL && header->destination[0] == ':') || - (header->flags & G_DBUS_MESSAGE_FLAGS_NO_AUTO_START) != 0) - error = "org.freedesktop.DBus.Error.NameHasNoOwner"; - else - error = "org.freedesktop.DBus.Error.ServiceUnknown"; - - buffer = get_error_for_roundtrip (client, header, error); - expecting_reply = EXPECTED_REPLY_REWRITE; - } - else - { - if (client->proxy->log_messages) - g_print ("*HIDDEN*\n"); - } - break; - - default: - case HANDLE_DENY: -handle_deny: - g_clear_pointer (&buffer, buffer_unref); - - if (client_message_generates_reply (header)) - { - if (client->proxy->log_messages) - g_print ("*DENIED* (ping)\n"); - - buffer = get_error_for_roundtrip (client, header, - "org.freedesktop.DBus.Error.AccessDenied"); - expecting_reply = EXPECTED_REPLY_REWRITE; - } - else - { - if (client->proxy->log_messages) - g_print ("*DENIED*\n"); - } - break; - } - - if (buffer != NULL && expecting_reply != EXPECTED_REPLY_NONE) - queue_expected_reply (side, header->serial, expecting_reply); - } - - if (buffer) - queue_outgoing_buffer (&client->bus_side, buffer); - - if (buffer != NULL && expecting_reply == EXPECTED_REPLY_HELLO) - queue_initial_name_ops (client); -} - -static void -got_buffer_from_bus (FlatpakProxyClient *client, ProxySide *side, Buffer *buffer) -{ - if (client->authenticated && client->proxy->filter) - { - g_autoptr(Header) header = NULL; - GDBusMessage *rewritten; - FlatpakPolicy policy; - ExpectedReplyType expected_reply; - - /* Filter and rewrite incoming messages as needed */ - - header = parse_header (buffer, 0, client->serial_offset, client->hello_serial); - if (header == NULL) - { - g_warning ("Invalid message header format"); - buffer_unref (buffer); - side_closed (side); - return; - } - - if (!update_socket_messages (side, buffer, header)) - return; - - if (client->proxy->log_messages) - print_incoming_header (header); - - if (header->has_reply_serial) - { - expected_reply = steal_expected_reply (get_other_side (side), header->reply_serial); - - switch (expected_reply) - { - case EXPECTED_REPLY_NONE: - /* We only allow replies we expect */ - if (client->proxy->log_messages) - g_print ("*Unexpected reply*\n"); - buffer_unref (buffer); - return; - - case EXPECTED_REPLY_HELLO: - /* When we get the initial reply to Hello, allow all - further communications to our own unique id. */ - if (header->type == G_DBUS_MESSAGE_TYPE_METHOD_RETURN) - { - g_autofree char *my_id = get_arg0_string (buffer); - flatpak_proxy_client_update_unique_id_policy (client, my_id, FLATPAK_POLICY_TALK); - } - /* ... else it's an ERROR or something. Either way, pass it - * through to the client unedited. */ - break; - - case EXPECTED_REPLY_REWRITE: - /* Replace a roundtrip ping with the rewritten message */ - - rewritten = g_hash_table_lookup (client->rewrite_reply, - GINT_TO_POINTER (header->reply_serial)); - - if (client->proxy->log_messages) - g_print ("*REWRITTEN*\n"); - - g_dbus_message_set_serial (rewritten, header->serial); - g_clear_pointer (&buffer, buffer_unref); - buffer = message_to_buffer (rewritten); - - g_hash_table_remove (client->rewrite_reply, - GINT_TO_POINTER (header->reply_serial)); - break; - - case EXPECTED_REPLY_FAKE_LIST_NAMES: - /* This is a reply from the bus to a fake ListNames - request, request ownership of any name matching a - wildcard policy */ - - queue_wildcard_initial_name_ops (client, header, buffer); - - /* Don't forward fake replies to the app */ - if (client->proxy->log_messages) - g_print ("*SKIPPED*\n"); - g_clear_pointer (&buffer, buffer_unref); - - /* Start reading the clients requests now that we are done with the names */ - start_reading (&client->client_side); - break; - - case EXPECTED_REPLY_FAKE_GET_NAME_OWNER: - /* This is a reply from the bus to a fake GetNameOwner - request, update the policy for this unique name based on - the policy */ - { - char *requested_name = g_hash_table_lookup (client->get_owner_reply, GINT_TO_POINTER (header->reply_serial)); - - if (header->type == G_DBUS_MESSAGE_TYPE_METHOD_RETURN) - { - g_autofree char *owner = get_arg0_string (buffer); - flatpak_proxy_client_add_unique_id_owned_name (client, owner, requested_name); - } - - g_hash_table_remove (client->get_owner_reply, GINT_TO_POINTER (header->reply_serial)); - - /* Don't forward fake replies to the app */ - if (client->proxy->log_messages) - g_print ("*SKIPPED*\n"); - g_clear_pointer (&buffer, buffer_unref); - break; - } - - case EXPECTED_REPLY_FILTER: - if (client->proxy->log_messages) - g_print ("*SKIPPED*\n"); - g_clear_pointer (&buffer, buffer_unref); - break; - - case EXPECTED_REPLY_LIST_NAMES: - /* This is a reply from the bus to a ListNames request, filter - it according to the policy */ - if (header->type == G_DBUS_MESSAGE_TYPE_METHOD_RETURN) - { - Buffer *filtered_buffer; - - filtered_buffer = filter_names_list (client, buffer); - g_clear_pointer (&buffer, buffer_unref); - buffer = filtered_buffer; - } - - break; - - case EXPECTED_REPLY_NORMAL: - break; - - default: - g_warning ("Unexpected expected reply type %d", expected_reply); - } - } - else /* Not reply */ - { - - /* Don't allow reply types with no reply_serial */ - if (header->type == G_DBUS_MESSAGE_TYPE_METHOD_RETURN || - header->type == G_DBUS_MESSAGE_TYPE_ERROR) - { - if (client->proxy->log_messages) - g_print ("*Invalid reply*\n"); - g_clear_pointer (&buffer, buffer_unref); - } - - /* We filter all NameOwnerChanged signal according to the policy */ - if (message_is_name_owner_changed (client, header)) - { - if (should_filter_name_owner_changed (client, buffer)) - g_clear_pointer (&buffer, buffer_unref); - } - } - - /* All incoming broadcast signals are filtered according to policy */ - if (header->type == G_DBUS_MESSAGE_TYPE_SIGNAL && header->destination == NULL) - { - g_autoptr(GList) filters = NULL; - gboolean filtered = TRUE; - - policy = flatpak_proxy_client_get_max_policy_and_matched (client, header->sender, &filters); - - if (policy == FLATPAK_POLICY_OWN || - (policy == FLATPAK_POLICY_TALK && - any_filter_matches (filters, FILTER_TYPE_BROADCAST, - header->path, - header->interface, - header->member))) - filtered = FALSE; - - if (filtered) - { - if (client->proxy->log_messages) - g_print ("*FILTERED IN*\n"); - g_clear_pointer (&buffer, buffer_unref); - } - } - - /* We received and forwarded a message from a trusted peer. Make the policy for - this unique id SEE so that the client can track its lifetime. */ - if (buffer && header->sender && header->sender[0] == ':') - flatpak_proxy_client_update_unique_id_policy (client, header->sender, FLATPAK_POLICY_SEE); - - if (buffer && client_message_generates_reply (header)) - queue_expected_reply (side, header->serial, EXPECTED_REPLY_NORMAL); - } - - if (buffer) - queue_outgoing_buffer (&client->client_side, buffer); -} - -static void -got_buffer_from_side (ProxySide *side, Buffer *buffer) -{ - FlatpakProxyClient *client = side->client; - - if (side == &client->client_side) - got_buffer_from_client (client, side, buffer); - else - got_buffer_from_bus (client, side, buffer); -} - -#define _DBUS_ISASCII(c) ((c) != '\0' && (((c) & ~0x7f) == 0)) - -static gboolean -auth_line_is_valid (guint8 *line, guint8 *line_end) -{ - guint8 *p; - - for (p = line; p < line_end; p++) - { - if (!_DBUS_ISASCII (*p)) - return FALSE; - - /* Technically, the dbus spec allows all ASCII characters, but for robustness we also - fail if we see any control characters. Such low values will appear in potential attacks, - but will never happen in real sasl (where all binary data is hex encoded). */ - if (*p < ' ') - return FALSE; - } - - /* For robustness we require the first char of the line to be an upper case letter. - This is not technically required by the dbus spec, but all commands are upper - case, and there is no provisioning for whitespace before the command, so in practice - this is true, and this means we're not confused by e.g. initial whitespace. */ - if (line[0] < 'A' || line[0] > 'Z') - return FALSE; - - return TRUE; -} - -static gboolean -auth_line_is_begin (guint8 *line) -{ - guint8 next_char; - - if (!g_str_has_prefix ((char *) line, AUTH_BEGIN)) - return FALSE; - - /* dbus-daemon accepts either nothing, or a whitespace followed by anything as end of auth */ - next_char = line[strlen (AUTH_BEGIN)]; - return next_char == 0 || - next_char == ' ' || - next_char == '\t'; -} - -static gssize -find_auth_end (FlatpakProxyClient *client, Buffer *buffer) -{ - goffset offset = 0; - gsize original_size = client->auth_buffer->len; - - /* Add the new data to the remaining data from last iteration */ - g_byte_array_append (client->auth_buffer, buffer->data, buffer->pos); - - while (TRUE) - { - guint8 *line_start = client->auth_buffer->data + offset; - gsize remaining_data = client->auth_buffer->len - offset; - guint8 *line_end; - - line_end = memmem (line_start, remaining_data, - AUTH_LINE_SENTINEL, strlen (AUTH_LINE_SENTINEL)); - if (line_end) /* Found end of line */ - { - offset = (line_end + strlen (AUTH_LINE_SENTINEL) - client->auth_buffer->data); - - if (!auth_line_is_valid (line_start, line_end)) - return FIND_AUTH_END_ABORT; - - *line_end = 0; - if (auth_line_is_begin (line_start)) - return offset - original_size; - - /* continue with next line */ - } - else - { - /* No end-of-line in this buffer */ - g_byte_array_remove_range (client->auth_buffer, 0, offset); - - /* Abort if more than 16k before newline, similar to what dbus-daemon does */ - if (client->auth_buffer->len >= 16 * 1024) - return FIND_AUTH_END_ABORT; - - return FIND_AUTH_END_CONTINUE; - } - } -} - -static gboolean -side_in_cb (GSocket *socket, GIOCondition condition, gpointer user_data) -{ - ProxySide *side = user_data; - FlatpakProxyClient *client = side->client; - GError *error = NULL; - Buffer *buffer; - gboolean retval = G_SOURCE_CONTINUE; - - g_object_ref (client); - - while (!side->closed) - { - if (!side->got_first_byte) - buffer = buffer_new (1, NULL); - else if (!client->authenticated) - buffer = buffer_new (64, NULL); - else - buffer = side->current_read_buffer; - - if (!buffer_read (side, buffer, socket)) - { - if (buffer != side->current_read_buffer) - buffer_unref (buffer); - break; - } - - if (!client->authenticated) - { - if (buffer->pos > 0) - { - gboolean found_auth_end = FALSE; - gsize extra_data; - - buffer->size = buffer->pos; - if (!side->got_first_byte) - { - buffer->send_credentials = TRUE; - side->got_first_byte = TRUE; - } - /* Look for end of authentication mechanism */ - else if (side == &client->client_side) - { - gssize auth_end = find_auth_end (client, buffer); - - if (auth_end >= 0) - { - found_auth_end = TRUE; - buffer->size = auth_end; - extra_data = buffer->pos - buffer->size; - - /* We may have gotten some extra data which is not part of - the auth handshake, keep it for the next iteration. */ - if (extra_data > 0) - side->extra_input_data = g_bytes_new (buffer->data + buffer->size, extra_data); - } - else if (auth_end == FIND_AUTH_END_ABORT) - { - buffer_unref (buffer); - if (client->proxy->log_messages) - g_print ("Invalid AUTH line, aborting\n"); - side_closed (side); - break; - } - } - - got_buffer_from_side (side, buffer); - - if (found_auth_end) - client->authenticated = TRUE; - } - else - { - buffer_unref (buffer); - } - } - else if (buffer->pos == buffer->size) - { - if (buffer == &side->header_buffer) - { - gssize required; - required = g_dbus_message_bytes_needed (buffer->data, buffer->size, &error); - if (required < 0) - { - g_warning ("Invalid message header read"); - side_closed (side); - } - else - { - side->current_read_buffer = buffer_new (required, buffer); - } - } - else - { - got_buffer_from_side (side, buffer); - side->header_buffer.pos = 0; - side->current_read_buffer = &side->header_buffer; - } - } - } - - if (side->closed) - { - side->in_source = NULL; - retval = G_SOURCE_REMOVE; - } - - g_object_unref (client); - - return retval; -} - -static void -start_reading (ProxySide *side) -{ - GSocket *socket; - - socket = g_socket_connection_get_socket (side->connection); - side->in_source = g_socket_create_source (socket, G_IO_IN, NULL); - g_source_set_callback (side->in_source, G_SOURCE_FUNC (side_in_cb), side, NULL); - g_source_attach (side->in_source, NULL); - g_source_unref (side->in_source); -} - -static void -stop_reading (ProxySide *side) -{ - if (side->in_source) - { - g_source_destroy (side->in_source); - side->in_source = NULL; - } -} - - -static void -client_connected_to_dbus (GObject *source_object, - GAsyncResult *res, - gpointer user_data) -{ - FlatpakProxyClient *client = user_data; - GSocketConnection *connection; - GError *error = NULL; - GIOStream *stream; - - stream = g_dbus_address_get_stream_finish (res, NULL, &error); - if (stream == NULL) - { - g_warning ("Failed to connect to bus: %s", error->message); - g_object_unref (client); - return; - } - - connection = G_SOCKET_CONNECTION (stream); - g_socket_set_blocking (g_socket_connection_get_socket (connection), FALSE); - client->bus_side.connection = connection; - - start_reading (&client->client_side); - start_reading (&client->bus_side); -} - -static gboolean -flatpak_proxy_incoming (GSocketService *service, - GSocketConnection *connection, - GObject *source_object) -{ - FlatpakProxy *proxy = FLATPAK_PROXY (service); - FlatpakProxyClient *client; - - client = flatpak_proxy_client_new (proxy, connection); - - g_dbus_address_get_stream (proxy->dbus_address, - NULL, - client_connected_to_dbus, - client); - return TRUE; -} - -static void -flatpak_proxy_init (FlatpakProxy *proxy) -{ - proxy->filters = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify) filter_list_free); - flatpak_proxy_add_policy (proxy, "org.freedesktop.DBus", FALSE, FLATPAK_POLICY_TALK); -} - -static void -flatpak_proxy_class_init (FlatpakProxyClass *klass) -{ - GObjectClass *object_class = G_OBJECT_CLASS (klass); - GSocketServiceClass *socket_service_class = G_SOCKET_SERVICE_CLASS (klass); - - object_class->get_property = flatpak_proxy_get_property; - object_class->set_property = flatpak_proxy_set_property; - object_class->finalize = flatpak_proxy_finalize; - - socket_service_class->incoming = flatpak_proxy_incoming; - - g_object_class_install_property (object_class, - PROP_DBUS_ADDRESS, - g_param_spec_string ("dbus-address", - "", - "", - NULL, - G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); - g_object_class_install_property (object_class, - PROP_SOCKET_PATH, - g_param_spec_string ("socket-path", - "", - "", - NULL, - G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); - -} - -FlatpakProxy * -flatpak_proxy_new (const char *dbus_address, - const char *socket_path) -{ - FlatpakProxy *proxy; - - proxy = g_object_new (FLATPAK_TYPE_PROXY, "dbus-address", dbus_address, "socket-path", socket_path, NULL); - return proxy; -} - -gboolean -flatpak_proxy_start (FlatpakProxy *proxy, GError **error) -{ - GSocketAddress *address; - gboolean res; - - unlink (proxy->socket_path); - - address = g_unix_socket_address_new (proxy->socket_path); - - res = g_socket_listener_add_address (G_SOCKET_LISTENER (proxy), - address, - G_SOCKET_TYPE_STREAM, - G_SOCKET_PROTOCOL_DEFAULT, - NULL, /* source_object */ - NULL, /* effective_address */ - error); - g_object_unref (address); - - if (!res) - return FALSE; - - - g_socket_service_start (G_SOCKET_SERVICE (proxy)); - return TRUE; -} - -void -flatpak_proxy_stop (FlatpakProxy *proxy) -{ - unlink (proxy->socket_path); - - g_socket_service_stop (G_SOCKET_SERVICE (proxy)); -} diff --git a/subprojects/dbus-proxy/flatpak-proxy.h b/subprojects/dbus-proxy/flatpak-proxy.h deleted file mode 100644 index eead750..0000000 --- a/subprojects/dbus-proxy/flatpak-proxy.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright © 2015 Red Hat, Inc - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library. If not, see . - * - * Authors: - * Alexander Larsson - */ - -#ifndef __FLATPAK_PROXY_H__ -#define __FLATPAK_PROXY_H__ - -#include -#include "backport-autoptr.h" - -typedef enum { - FLATPAK_POLICY_NONE, - FLATPAK_POLICY_SEE, - FLATPAK_POLICY_TALK, - FLATPAK_POLICY_OWN -} FlatpakPolicy; - -typedef struct FlatpakProxy FlatpakProxy; - -#define FLATPAK_TYPE_PROXY flatpak_proxy_get_type () -#define FLATPAK_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FLATPAK_TYPE_PROXY, FlatpakProxy)) -#define FLATPAK_IS_PROXY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FLATPAK_TYPE_PROXY)) - -G_DEFINE_AUTOPTR_CLEANUP_FUNC (FlatpakProxy, g_object_unref) - -GType flatpak_proxy_get_type (void); - -FlatpakProxy *flatpak_proxy_new (const char *dbus_address, - const char *socket_path); -void flatpak_proxy_set_log_messages (FlatpakProxy *proxy, - gboolean log); -void flatpak_proxy_set_filter (FlatpakProxy *proxy, - gboolean filter); -void flatpak_proxy_set_sloppy_names (FlatpakProxy *proxy, - gboolean sloppy_names); -void flatpak_proxy_add_policy (FlatpakProxy *proxy, - const char *name, - gboolean name_is_subtree, - FlatpakPolicy policy); -void flatpak_proxy_add_call_rule (FlatpakProxy *proxy, - const char *name, - gboolean name_is_subtree, - const char *rule); -void flatpak_proxy_add_broadcast_rule (FlatpakProxy *proxy, - const char *name, - gboolean name_is_subtree, - const char *rule); -gboolean flatpak_proxy_start (FlatpakProxy *proxy, - GError **error); -void flatpak_proxy_stop (FlatpakProxy *proxy); - -#endif /* __FLATPAK_PROXY_H__ */ diff --git a/subprojects/libglnx/.gitignore b/subprojects/libglnx/.gitignore new file mode 100644 index 0000000..f75435d --- /dev/null +++ b/subprojects/libglnx/.gitignore @@ -0,0 +1,21 @@ +# Copyright 2015 Colin Walters +# SPDX-License-Identifier: LGPL-2.1-or-later + +# A path ostree writes to work around automake bug with +# subdir-objects +Makefile-libglnx.am.inc + +libglnx-config.h + +# Some standard bits +.deps +.libs +.dirstamp +*.typelib +*.la +*.lo +*.o +*.pyc +*.stamp +*~ + diff --git a/subprojects/libglnx/.gitlab-ci.yml b/subprojects/libglnx/.gitlab-ci.yml new file mode 100644 index 0000000..d9e465a --- /dev/null +++ b/subprojects/libglnx/.gitlab-ci.yml @@ -0,0 +1,41 @@ +# Copyright 2019 Endless OS Foundation LLC +# SPDX-License-Identifier: LGPL-2.0-or-later + +image: registry.fedoraproject.org/fedora:30 + +stages: + - build + +before_script: + - dnf install -y gcc git meson ninja-build "pkgconfig(gio-2.0)" "pkgconfig(gio-unix-2.0)" "pkgconfig(glib-2.0)" xz + +build: + stage: build + script: + - meson _build . + - ninja -C _build + - meson test -C _build + # Run it again! This previously did not work. + - meson test -C _build + # Ensure that we can build as a subproject + - rm -fr _build/meson-dist + - meson dist -C _build + - mkdir -p tests/use-as-subproject/subprojects/libglnx + - tar --strip-components=1 -C tests/use-as-subproject/subprojects/libglnx -xf _build/meson-dist/*.tar.xz + - meson tests/use-as-subproject/_build tests/use-as-subproject + - ninja -C tests/use-as-subproject/_build + - meson test -C tests/use-as-subproject/_build + artifacts: + when: on_failure + name: "libglnx-${CI_COMMIT_REF_NAME}-${CI_JOB_NAME}" + paths: + - "${CI_PROJECT_DIR}/_build/meson-logs" + +reuse: + stage: build + image: + name: fsfe/reuse:latest + entrypoint: [""] + before_script: [] + script: + - reuse lint diff --git a/subprojects/libglnx/LICENSES/LicenseRef-old-glib-tests.txt b/subprojects/libglnx/LICENSES/LicenseRef-old-glib-tests.txt new file mode 100644 index 0000000..d78b443 --- /dev/null +++ b/subprojects/libglnx/LICENSES/LicenseRef-old-glib-tests.txt @@ -0,0 +1,16 @@ +This work is provided "as is"; redistribution and modification +in whole or in part, in any medium, physical or electronic is +permitted without restriction. + +This work is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +In no event shall the authors or contributors be liable for any +direct, indirect, incidental, special, exemplary, or consequential +damages (including, but not limited to, procurement of substitute +goods or services; loss of use, data, or profits; or business +interruption) however caused and on any theory of liability, whether +in contract, strict liability, or tort (including negligence or +otherwise) arising in any way out of the use of this software, even +if advised of the possibility of such damage. diff --git a/subprojects/Makefile-libglnx.am.inc b/subprojects/libglnx/Makefile-libglnx.am similarity index 52% rename from subprojects/Makefile-libglnx.am.inc rename to subprojects/libglnx/Makefile-libglnx.am index 6115863..5934a2b 100644 --- a/subprojects/Makefile-libglnx.am.inc +++ b/subprojects/libglnx/Makefile-libglnx.am @@ -17,11 +17,11 @@ # Boston, MA 02111-1307, USA. EXTRA_DIST += \ - subprojects/libglnx/README.md \ - subprojects/libglnx/COPYING \ - subprojects/libglnx/LICENSES/LGPL-2.0-or-later.txt \ - subprojects/libglnx/LICENSES/LGPL-2.1-or-later.txt \ - subprojects/libglnx/libglnx.m4 \ + $(libglnx_srcpath)/README.md \ + $(libglnx_srcpath)/COPYING \ + $(libglnx_srcpath)/LICENSES/LGPL-2.0-or-later.txt \ + $(libglnx_srcpath)/LICENSES/LGPL-2.1-or-later.txt \ + $(libglnx_srcpath)/libglnx.m4 \ $(NULL) BUILT_SOURCES += $(top_builddir)/libglnx-config.h @@ -30,31 +30,33 @@ $(top_builddir)/libglnx-config.h: Makefile.am echo '#include "config.h"' > $@ libglnx_la_SOURCES = \ - subprojects/libglnx/glnx-macros.h \ - subprojects/libglnx/glnx-backport-autocleanups.h \ - subprojects/libglnx/glnx-backport-autoptr.h \ - subprojects/libglnx/glnx-backports.h \ - subprojects/libglnx/glnx-backports.c \ - subprojects/libglnx/glnx-local-alloc.h \ - subprojects/libglnx/glnx-local-alloc.c \ - subprojects/libglnx/glnx-errors.h \ - subprojects/libglnx/glnx-errors.c \ - subprojects/libglnx/glnx-console.h \ - subprojects/libglnx/glnx-console.c \ - subprojects/libglnx/glnx-dirfd.h \ - subprojects/libglnx/glnx-dirfd.c \ - subprojects/libglnx/glnx-fdio.h \ - subprojects/libglnx/glnx-fdio.c \ - subprojects/libglnx/glnx-lockfile.h \ - subprojects/libglnx/glnx-lockfile.c \ - subprojects/libglnx/glnx-missing-syscall.h \ - subprojects/libglnx/glnx-missing.h \ - subprojects/libglnx/glnx-xattrs.h \ - subprojects/libglnx/glnx-xattrs.c \ - subprojects/libglnx/glnx-shutil.h \ - subprojects/libglnx/glnx-shutil.c \ - subprojects/libglnx/libglnx.h \ - subprojects/libglnx/tests/libglnx-testlib.h \ + $(libglnx_srcpath)/glnx-macros.h \ + $(libglnx_srcpath)/glnx-backport-autocleanups.h \ + $(libglnx_srcpath)/glnx-backport-autoptr.h \ + $(libglnx_srcpath)/glnx-backport-testutils.h \ + $(libglnx_srcpath)/glnx-backport-testutils.c \ + $(libglnx_srcpath)/glnx-backports.h \ + $(libglnx_srcpath)/glnx-backports.c \ + $(libglnx_srcpath)/glnx-local-alloc.h \ + $(libglnx_srcpath)/glnx-local-alloc.c \ + $(libglnx_srcpath)/glnx-errors.h \ + $(libglnx_srcpath)/glnx-errors.c \ + $(libglnx_srcpath)/glnx-console.h \ + $(libglnx_srcpath)/glnx-console.c \ + $(libglnx_srcpath)/glnx-dirfd.h \ + $(libglnx_srcpath)/glnx-dirfd.c \ + $(libglnx_srcpath)/glnx-fdio.h \ + $(libglnx_srcpath)/glnx-fdio.c \ + $(libglnx_srcpath)/glnx-lockfile.h \ + $(libglnx_srcpath)/glnx-lockfile.c \ + $(libglnx_srcpath)/glnx-missing-syscall.h \ + $(libglnx_srcpath)/glnx-missing.h \ + $(libglnx_srcpath)/glnx-xattrs.h \ + $(libglnx_srcpath)/glnx-xattrs.c \ + $(libglnx_srcpath)/glnx-shutil.h \ + $(libglnx_srcpath)/glnx-shutil.c \ + $(libglnx_srcpath)/libglnx.h \ + $(libglnx_srcpath)/tests/libglnx-testlib.h \ $(NULL) libglnx_la_CFLAGS = $(AM_CFLAGS) $(libglnx_cflags) -I$(builddir) @@ -64,25 +66,25 @@ libglnx_la_LIBADD = $(libglnx_libs) libglnx_tests = test-libglnx-xattrs test-libglnx-fdio test-libglnx-errors test-libglnx-macros test-libglnx-shutil TESTS += $(libglnx_tests) -libglnx_testlib_sources = subprojects/libglnx/tests/libglnx-testlib.c +libglnx_testlib_sources = $(libglnx_srcpath)/tests/libglnx-testlib.c check_PROGRAMS += $(libglnx_tests) -test_libglnx_xattrs_SOURCES = $(libglnx_testlib_sources) subprojects/libglnx/tests/test-libglnx-xattrs.c +test_libglnx_xattrs_SOURCES = $(libglnx_testlib_sources) $(libglnx_srcpath)/tests/test-libglnx-xattrs.c test_libglnx_xattrs_CFLAGS = $(AM_CFLAGS) $(libglnx_cflags) test_libglnx_xattrs_LDADD = $(libglnx_libs) libglnx.la -test_libglnx_fdio_SOURCES = $(libglnx_testlib_sources) subprojects/libglnx/tests/test-libglnx-fdio.c +test_libglnx_fdio_SOURCES = $(libglnx_testlib_sources) $(libglnx_srcpath)/tests/test-libglnx-fdio.c test_libglnx_fdio_CFLAGS = $(AM_CFLAGS) $(libglnx_cflags) test_libglnx_fdio_LDADD = $(libglnx_libs) libglnx.la -test_libglnx_errors_SOURCES = $(libglnx_testlib_sources) subprojects/libglnx/tests/test-libglnx-errors.c +test_libglnx_errors_SOURCES = $(libglnx_testlib_sources) $(libglnx_srcpath)/tests/test-libglnx-errors.c test_libglnx_errors_CFLAGS = $(AM_CFLAGS) $(libglnx_cflags) test_libglnx_errors_LDADD = $(libglnx_libs) libglnx.la -test_libglnx_macros_SOURCES = $(libglnx_testlib_sources) subprojects/libglnx/tests/test-libglnx-macros.c +test_libglnx_macros_SOURCES = $(libglnx_testlib_sources) $(libglnx_srcpath)/tests/test-libglnx-macros.c test_libglnx_macros_CFLAGS = $(AM_CFLAGS) $(libglnx_cflags) test_libglnx_macros_LDADD = $(libglnx_libs) libglnx.la -test_libglnx_shutil_SOURCES = $(libglnx_testlib_sources) subprojects/libglnx/tests/test-libglnx-shutil.c +test_libglnx_shutil_SOURCES = $(libglnx_testlib_sources) $(libglnx_srcpath)/tests/test-libglnx-shutil.c test_libglnx_shutil_CFLAGS = $(AM_CFLAGS) $(libglnx_cflags) test_libglnx_shutil_LDADD = $(libglnx_libs) libglnx.la diff --git a/subprojects/libglnx/glnx-backport-testutils.c b/subprojects/libglnx/glnx-backport-testutils.c new file mode 100644 index 0000000..3440872 --- /dev/null +++ b/subprojects/libglnx/glnx-backport-testutils.c @@ -0,0 +1,162 @@ +/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- + * + * Copyright 2015 Colin Walters + * Copyright 2020 Niels De Graef + * Copyright 2021-2022 Collabora Ltd. + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published + * by the Free Software Foundation; either version 2.1 of the licence or (at + * your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General + * Public License along with this library; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include "libglnx-config.h" + +#include +#include + +#include + +#include "glnx-backport-autocleanups.h" +#include "glnx-backport-autoptr.h" +#include "glnx-backport-testutils.h" +#include "glnx-backports.h" + +#include +#include + +#if !GLIB_CHECK_VERSION (2, 68, 0) +/* Backport of g_assertion_message_cmpstrv() */ +void +_glnx_assertion_message_cmpstrv (const char *domain, + const char *file, + int line, + const char *func, + const char *expr, + const char * const *arg1, + const char * const *arg2, + gsize first_wrong_idx) +{ + const char *s1 = arg1[first_wrong_idx], *s2 = arg2[first_wrong_idx]; + char *a1, *a2, *s, *t1 = NULL, *t2 = NULL; + + a1 = g_strconcat ("\"", t1 = g_strescape (s1, NULL), "\"", NULL); + a2 = g_strconcat ("\"", t2 = g_strescape (s2, NULL), "\"", NULL); + g_free (t1); + g_free (t2); + s = g_strdup_printf ("assertion failed (%s): first differing element at index %" G_GSIZE_FORMAT ": %s does not equal %s", + expr, first_wrong_idx, a1, a2); + g_free (a1); + g_free (a2); + g_assertion_message (domain, file, line, func, s); + g_free (s); +} +#endif + +#if !GLIB_CHECK_VERSION(2, 70, 0) +/* + * Same as g_test_message(), but split messages with newlines into + * multiple separate messages to avoid corrupting stdout, even in older + * GLib versions that didn't do this + */ +void +_glnx_test_message_safe (const char *format, + ...) +{ + g_autofree char *message = NULL; + va_list ap; + char *line; + char *saveptr = NULL; + + va_start (ap, format); + g_vasprintf (&message, format, ap); + va_end (ap); + + for (line = strtok_r (message, "\n", &saveptr); + line != NULL; + line = strtok_r (NULL, "\n", &saveptr)) + (g_test_message) ("%s", line); +} + +/* Backport of g_test_fail_printf() */ +void +_glnx_test_fail_printf (const char *format, + ...) +{ + g_autofree char *message = NULL; + va_list ap; + + va_start (ap, format); + g_vasprintf (&message, format, ap); + va_end (ap); + + /* This is the closest we can do in older GLib */ + g_test_message ("Bail out! %s", message); + g_test_fail (); +} + +/* Backport of g_test_skip_printf() */ +void +_glnx_test_skip_printf (const char *format, + ...) +{ + g_autofree char *message = NULL; + va_list ap; + + va_start (ap, format); + g_vasprintf (&message, format, ap); + va_end (ap); + + g_test_skip (message); +} + +/* Backport of g_test_incomplete_printf() */ +void +_glnx_test_incomplete_printf (const char *format, + ...) +{ + g_autofree char *message = NULL; + va_list ap; + + va_start (ap, format); + g_vasprintf (&message, format, ap); + va_end (ap); + +#if GLIB_CHECK_VERSION(2, 58, 0) + /* Since 2.58, g_test_incomplete() sets the exit status correctly. */ + g_test_incomplete (message); +#elif GLIB_CHECK_VERSION (2, 38, 0) + /* Before 2.58, g_test_incomplete() was treated like a failure for the + * purposes of setting the exit status, so prefer to use (our wrapper + * around) g_test_skip(). */ + g_test_skip_printf ("TODO: %s", message); +#else + g_test_message ("TODO: %s", message); +#endif +} +#endif + +#if !GLIB_CHECK_VERSION (2, 78, 0) +void +_glnx_test_disable_crash_reporting (void) +{ + struct rlimit limit = { 0, 0 }; + + (void) setrlimit (RLIMIT_CORE, &limit); + + /* On Linux, RLIMIT_CORE = 0 is ignored if core dumps are + * configured to be written to a pipe, but PR_SET_DUMPABLE is not. */ + (void) prctl (PR_SET_DUMPABLE, 0, 0, 0, 0); +} +#endif diff --git a/subprojects/libglnx/glnx-backport-testutils.h b/subprojects/libglnx/glnx-backport-testutils.h new file mode 100644 index 0000000..f579c0e --- /dev/null +++ b/subprojects/libglnx/glnx-backport-testutils.h @@ -0,0 +1,209 @@ +/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- + * + * Copyright 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * Copyright 2015 Colin Walters + * Copyright 2014 Dan Winship + * Copyright 2015 Colin Walters + * Copyright 2017 Emmanuele Bassi + * Copyright 2018-2019 Endless OS Foundation LLC + * Copyright 2020 Niels De Graef + * Copyright 2021-2022 Collabora Ltd. + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#pragma once + +#include + +#include "glnx-backports.h" + +G_BEGIN_DECLS + +#ifndef g_assert_true /* added in 2.38 */ +#define g_assert_true(x) g_assert ((x)) +#endif + +#ifndef g_assert_false /* added in 2.38 */ +#define g_assert_false(x) g_assert (!(x)) +#endif + +#ifndef g_assert_nonnull /* added in 2.40 */ +#define g_assert_nonnull(x) g_assert (x != NULL) +#endif + +#ifndef g_assert_null /* added in 2.40 */ +#define g_assert_null(x) g_assert (x == NULL) +#endif + +#if !GLIB_CHECK_VERSION (2, 38, 0) +/* Not exactly equivalent, but close enough */ +#define g_test_skip(s) g_test_message ("SKIP: %s", s) +#endif + +#if !GLIB_CHECK_VERSION (2, 58, 0) +/* Before 2.58, g_test_incomplete() didn't set the exit status correctly */ +#define g_test_incomplete(s) _glnx_test_incomplete_printf ("%s", s) +#endif + +#if !GLIB_CHECK_VERSION (2, 46, 0) +#define g_assert_cmpmem(m1, l1, m2, l2) G_STMT_START {\ + gconstpointer __m1 = m1, __m2 = m2; \ + int __l1 = l1, __l2 = l2; \ + if (__l1 != 0 && __m1 == NULL) \ + g_assertion_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \ + "assertion failed (" #l1 " == 0 || " #m1 " != NULL)"); \ + else if (__l2 != 0 && __m2 == NULL) \ + g_assertion_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \ + "assertion failed (" #l2 " == 0 || " #m2 " != NULL)"); \ + else if (__l1 != __l2) \ + g_assertion_message_cmpnum (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \ + #l1 " (len(" #m1 ")) == " #l2 " (len(" #m2 "))", \ + (long double) __l1, "==", (long double) __l2, 'i'); \ + else if (__l1 != 0 && __m2 != NULL && memcmp (__m1, __m2, __l1) != 0) \ + g_assertion_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \ + "assertion failed (" #m1 " == " #m2 ")"); \ + } G_STMT_END +#endif + +#if !GLIB_CHECK_VERSION (2, 58, 0) +#define g_assert_cmpfloat_with_epsilon(n1,n2,epsilon) \ + G_STMT_START { \ + double __n1 = (n1), __n2 = (n2), __epsilon = (epsilon); \ + if (G_APPROX_VALUE (__n1, __n2, __epsilon)) ; else \ + g_assertion_message_cmpnum (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \ + #n1 " == " #n2 " (+/- " #epsilon ")", __n1, "==", __n2, 'f'); \ + } G_STMT_END +#endif + +#if !GLIB_CHECK_VERSION (2, 60, 0) +#define g_assert_cmpvariant(v1, v2) \ + G_STMT_START \ + { \ + GVariant *__v1 = (v1), *__v2 = (v2); \ + if (!g_variant_equal (__v1, __v2)) \ + { \ + gchar *__s1, *__s2, *__msg; \ + __s1 = g_variant_print (__v1, TRUE); \ + __s2 = g_variant_print (__v2, TRUE); \ + __msg = g_strdup_printf ("assertion failed (" #v1 " == " #v2 "): %s does not equal %s", __s1, __s2); \ + g_assertion_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, __msg); \ + g_free (__s1); \ + g_free (__s2); \ + g_free (__msg); \ + } \ + } \ + G_STMT_END +#endif + +#if !GLIB_CHECK_VERSION (2, 62, 0) +/* Not exactly equivalent, but close enough */ +#define g_test_summary(s) g_test_message ("SUMMARY: %s", s) +#endif + +#if !GLIB_CHECK_VERSION (2, 66, 0) +#define g_assert_no_errno(expr) G_STMT_START { \ + int __ret, __errsv; \ + errno = 0; \ + __ret = expr; \ + __errsv = errno; \ + if (__ret < 0) \ + { \ + gchar *__msg; \ + __msg = g_strdup_printf ("assertion failed (" #expr " >= 0): errno %i: %s", __errsv, g_strerror (__errsv)); \ + g_assertion_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, __msg); \ + g_free (__msg); \ + } \ + } G_STMT_END +#endif + +#if !GLIB_CHECK_VERSION (2, 68, 0) +#define g_assertion_message_cmpstrv _glnx_assertion_message_cmpstrv +void _glnx_assertion_message_cmpstrv (const char *domain, + const char *file, + int line, + const char *func, + const char *expr, + const char * const *arg1, + const char * const *arg2, + gsize first_wrong_idx); +#define g_assert_cmpstrv(strv1, strv2) \ + G_STMT_START \ + { \ + const char * const *__strv1 = (const char * const *) (strv1); \ + const char * const *__strv2 = (const char * const *) (strv2); \ + if (!__strv1 || !__strv2) \ + { \ + if (__strv1) \ + { \ + g_assertion_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \ + "assertion failed (" #strv1 " == " #strv2 "): " #strv2 " is NULL, but " #strv1 " is not"); \ + } \ + else if (__strv2) \ + { \ + g_assertion_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \ + "assertion failed (" #strv1 " == " #strv2 "): " #strv1 " is NULL, but " #strv2 " is not"); \ + } \ + } \ + else \ + { \ + guint __l1 = g_strv_length ((char **) __strv1); \ + guint __l2 = g_strv_length ((char **) __strv2); \ + if (__l1 != __l2) \ + { \ + char *__msg; \ + __msg = g_strdup_printf ("assertion failed (" #strv1 " == " #strv2 "): length %u does not equal length %u", __l1, __l2); \ + g_assertion_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, __msg); \ + g_free (__msg); \ + } \ + else \ + { \ + guint __i; \ + for (__i = 0; __i < __l1; __i++) \ + { \ + if (g_strcmp0 (__strv1[__i], __strv2[__i]) != 0) \ + { \ + g_assertion_message_cmpstrv (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \ + #strv1 " == " #strv2, \ + __strv1, __strv2, __i); \ + } \ + } \ + } \ + } \ + } \ + G_STMT_END +#endif + +#if !GLIB_CHECK_VERSION (2, 70, 0) +/* Before 2.70, diagnostic messages containing newlines were problematic */ +#define g_test_message(...) _glnx_test_message_safe (__VA_ARGS__) +void _glnx_test_message_safe (const char *format, ...) G_GNUC_PRINTF (1, 2); + +#define g_test_fail_printf _glnx_test_fail_printf +void _glnx_test_fail_printf (const char *format, ...) G_GNUC_PRINTF (1, 2); +#define g_test_skip_printf _glnx_test_skip_printf +void _glnx_test_skip_printf (const char *format, ...) G_GNUC_PRINTF (1, 2); +#define g_test_incomplete_printf _glnx_test_incomplete_printf +void _glnx_test_incomplete_printf (const char *format, ...) G_GNUC_PRINTF (1, 2); +#endif + +#if !GLIB_CHECK_VERSION (2, 78, 0) +#define g_test_disable_crash_reporting _glnx_test_disable_crash_reporting +void _glnx_test_disable_crash_reporting (void); +#endif + +G_END_DECLS diff --git a/subprojects/libglnx/glnx-backports.c b/subprojects/libglnx/glnx-backports.c index f9aa7ce..d5b68ad 100644 --- a/subprojects/libglnx/glnx-backports.c +++ b/subprojects/libglnx/glnx-backports.c @@ -1,11 +1,27 @@ /* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- * + * Copyright 2000-2022 Red Hat, Inc. + * Copyright 2006-2007 Matthias Clasen + * Copyright 2006 Padraig O'Briain + * Copyright 2007 Lennart Poettering * Copyright (C) 2015 Colin Walters - * SPDX-License-Identifier: LGPL-2.0-or-later + * Copyright 2018-2022 Endless OS Foundation, LLC + * Copyright 2018 Peter Wu + * Copyright 2019 Ting-Wei Lan + * Copyright 2019 Sebastian Schwarz + * Copyright 2020 Matt Rose + * Copyright 2021 Casper Dik + * Copyright 2022 Alexander Richardson + * Copyright 2022 Ray Strode + * Copyright 2022 Thomas Haller + * Copyright 2023-2024 Collabora Ltd. + * Copyright 2023 Sebastian Wilhelmi + * Copyright 2023 CaiJingLong + * SPDX-License-Identifier: LGPL-2.1-or-later * - * This program is free software: you can redistribute it and/or modify + * This library is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published - * by the Free Software Foundation; either version 2 of the licence or (at + * by the Free Software Foundation; either version 2.1 of the licence or (at * your option) any later version. * * This library is distributed in the hope that it will be useful, @@ -13,15 +29,23 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * - * You should have received a copy of the GNU Lesser General - * Public License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place, Suite 330, - * Boston, MA 02111-1307, USA. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . */ #include "libglnx-config.h" #include "glnx-backports.h" +#include "glnx-missing.h" + +#include +#include +#include +#include +#include +#include +#include +#include #if !GLIB_CHECK_VERSION(2, 44, 0) gboolean @@ -60,3 +84,411 @@ glnx_set_object (GObject **object_ptr, return TRUE; } #endif + +#if !GLIB_CHECK_VERSION(2, 60, 0) +gboolean +_glnx_strv_equal (const gchar * const *strv1, + const gchar * const *strv2) +{ + g_return_val_if_fail (strv1 != NULL, FALSE); + g_return_val_if_fail (strv2 != NULL, FALSE); + + if (strv1 == strv2) + return TRUE; + + for (; *strv1 != NULL && *strv2 != NULL; strv1++, strv2++) + { + if (!g_str_equal (*strv1, *strv2)) + return FALSE; + } + + return (*strv1 == NULL && *strv2 == NULL); +} +#endif + +#if !GLIB_CHECK_VERSION(2, 80, 0) +/* This function is called between fork() and exec() and hence must be + * async-signal-safe (see signal-safety(7)). */ +static int +set_cloexec (void *data, gint fd) +{ + if (fd >= GPOINTER_TO_INT (data)) + fcntl (fd, F_SETFD, FD_CLOEXEC); + + return 0; +} + +/* fdwalk()-compatible callback to close a fd for non-compliant + * implementations of fdwalk() that potentially pass already + * closed fds. + * + * It is not an error to pass an invalid fd to this function. + * + * This function is called between fork() and exec() and hence must be + * async-signal-safe (see signal-safety(7)). + */ +G_GNUC_UNUSED static int +close_func_with_invalid_fds (void *data, int fd) +{ + /* We use close and not g_close here because on some platforms, we + * don't know how to close only valid, open file descriptors, so we + * have to pass bad fds to close too. g_close warns if given a bad + * fd. + * + * This function returns no error, because there is nothing that the caller + * could do with that information. That is even the case for EINTR. See + * g_close() about the specialty of EINTR and why that is correct. + * If g_close() ever gets extended to handle EINTR specially, then this place + * should get updated to do the same handling. + */ + if (fd >= GPOINTER_TO_INT (data)) + close (fd); + + return 0; +} + +#ifdef __linux__ +struct linux_dirent64 +{ + guint64 d_ino; /* 64-bit inode number */ + guint64 d_off; /* 64-bit offset to next structure */ + unsigned short d_reclen; /* Size of this dirent */ + unsigned char d_type; /* File type */ + char d_name[]; /* Filename (null-terminated) */ +}; + +/* This function is called between fork() and exec() and hence must be + * async-signal-safe (see signal-safety(7)). */ +static gint +filename_to_fd (const char *p) +{ + char c; + int fd = 0; + const int cutoff = G_MAXINT / 10; + const int cutlim = G_MAXINT % 10; + + if (*p == '\0') + return -1; + + while ((c = *p++) != '\0') + { + if (c < '0' || c > '9') + return -1; + c -= '0'; + + /* Check for overflow. */ + if (fd > cutoff || (fd == cutoff && c > cutlim)) + return -1; + + fd = fd * 10 + c; + } + + return fd; +} +#endif + +static int safe_fdwalk_with_invalid_fds (int (*cb)(void *data, int fd), void *data); + +/* This function is called between fork() and exec() and hence must be + * async-signal-safe (see signal-safety(7)). */ +static int +safe_fdwalk (int (*cb)(void *data, int fd), void *data) +{ +#if 0 + /* Use fdwalk function provided by the system if it is known to be + * async-signal safe. + * + * Currently there are no operating systems known to provide a safe + * implementation, so this section is not used for now. + */ + return fdwalk (cb, data); +#else + /* Fallback implementation of fdwalk. It should be async-signal safe, but it + * may fail on non-Linux operating systems. See safe_fdwalk_with_invalid_fds + * for a slower alternative. + */ + +#ifdef __linux__ + gint fd; + gint res = 0; + + /* Avoid use of opendir/closedir since these are not async-signal-safe. */ + int dir_fd = open ("/proc/self/fd", O_RDONLY | O_DIRECTORY); + if (dir_fd >= 0) + { + /* buf needs to be aligned correctly to receive linux_dirent64. + * C11 has _Alignof for this purpose, but for now a + * union serves the same purpose. */ + union + { + char buf[4096]; + struct linux_dirent64 alignment; + } u; + int pos, nread; + struct linux_dirent64 *de; + + while ((nread = syscall (SYS_getdents64, dir_fd, u.buf, sizeof (u.buf))) > 0) + { + for (pos = 0; pos < nread; pos += de->d_reclen) + { + de = (struct linux_dirent64 *) (u.buf + pos); + + fd = filename_to_fd (de->d_name); + if (fd < 0 || fd == dir_fd) + continue; + + if ((res = cb (data, fd)) != 0) + break; + } + } + + close (dir_fd); + return res; + } + + /* If /proc is not mounted or not accessible we fail here and rely on + * safe_fdwalk_with_invalid_fds to fall back to the old + * rlimit trick. */ + +#endif + +#if defined(__sun__) && defined(F_PREVFD) && defined(F_NEXTFD) +/* + * Solaris 11.4 has a signal-safe way which allows + * us to find all file descriptors in a process. + * + * fcntl(fd, F_NEXTFD, maxfd) + * - returns the first allocated file descriptor <= maxfd > fd. + * + * fcntl(fd, F_PREVFD) + * - return highest allocated file descriptor < fd. + */ + gint fd; + gint res = 0; + + open_max = fcntl (INT_MAX, F_PREVFD); /* find the maximum fd */ + if (open_max < 0) /* No open files */ + return 0; + + for (fd = -1; (fd = fcntl (fd, F_NEXTFD, open_max)) != -1; ) + if ((res = cb (data, fd)) != 0 || fd == open_max) + break; + + return res; +#endif + + return safe_fdwalk_with_invalid_fds (cb, data); +#endif +} + +/* This function is called between fork() and exec() and hence must be + * async-signal-safe (see signal-safety(7)). */ +static int +safe_fdwalk_with_invalid_fds (int (*cb)(void *data, int fd), void *data) +{ + /* Fallback implementation of fdwalk. It should be async-signal safe, but it + * may be slow, especially on systems allowing very high number of open file + * descriptors. + */ + gint open_max = -1; + gint fd; + gint res = 0; + +#if 0 && defined(HAVE_SYS_RESOURCE_H) + struct rlimit rl; + + /* Use getrlimit() function provided by the system if it is known to be + * async-signal safe. + * + * Currently there are no operating systems known to provide a safe + * implementation, so this section is not used for now. + */ + if (getrlimit (RLIMIT_NOFILE, &rl) == 0 && rl.rlim_max != RLIM_INFINITY) + open_max = rl.rlim_max; +#endif +#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__APPLE__) + /* Use sysconf() function provided by the system if it is known to be + * async-signal safe. + * + * FreeBSD: sysconf() is included in the list of async-signal safe functions + * found in https://man.freebsd.org/sigaction(2). + * + * OpenBSD: sysconf() is included in the list of async-signal safe functions + * found in https://man.openbsd.org/sigaction.2. + * + * Apple: sysconf() is included in the list of async-signal safe functions + * found in https://opensource.apple.com/source/xnu/xnu-517.12.7/bsd/man/man2/sigaction.2 + */ + if (open_max < 0) + open_max = sysconf (_SC_OPEN_MAX); +#endif + /* Hardcoded fallback: the default process hard limit in Linux as of 2020 */ + if (open_max < 0) + open_max = 4096; + +#if defined(__APPLE__) && defined(HAVE_LIBPROC_H) + /* proc_pidinfo isn't documented as async-signal-safe but looking at the implementation + * in the darwin tree here: + * + * https://opensource.apple.com/source/Libc/Libc-498/darwin/libproc.c.auto.html + * + * It's just a thin wrapper around a syscall, so it's probably okay. + */ + { + char buffer[4096 * PROC_PIDLISTFD_SIZE]; + ssize_t buffer_size; + + buffer_size = proc_pidinfo (getpid (), PROC_PIDLISTFDS, 0, buffer, sizeof (buffer)); + + if (buffer_size > 0 && + sizeof (buffer) >= (size_t) buffer_size && + (buffer_size % PROC_PIDLISTFD_SIZE) == 0) + { + const struct proc_fdinfo *fd_info = (const struct proc_fdinfo *) buffer; + size_t number_of_fds = (size_t) buffer_size / PROC_PIDLISTFD_SIZE; + + for (size_t i = 0; i < number_of_fds; i++) + if ((res = cb (data, fd_info[i].proc_fd)) != 0) + break; + + return res; + } + } +#endif + + for (fd = 0; fd < open_max; fd++) + if ((res = cb (data, fd)) != 0) + break; + + return res; +} + +/** + * g_fdwalk_set_cloexec: + * @lowfd: Minimum fd to act on, which must be non-negative + * + * Mark every file descriptor equal to or greater than @lowfd to be closed + * at the next `execve()` or similar, as if via the `FD_CLOEXEC` flag. + * + * Typically @lowfd will be 3, to leave standard input, standard output + * and standard error open after exec. + * + * This is the same as Linux `close_range (lowfd, ~0U, CLOSE_RANGE_CLOEXEC)`, + * but portable to other OSs and to older versions of Linux. + * + * This function is async-signal safe, making it safe to call from a + * signal handler or a [callback@GLib.SpawnChildSetupFunc], as long as @lowfd is + * non-negative. + * See [`signal(7)`](man:signal(7)) and + * [`signal-safety(7)`](man:signal-safety(7)) for more details. + * + * Returns: 0 on success, -1 with errno set on error + * Since: 2.80 + */ +int +_glnx_fdwalk_set_cloexec (int lowfd) +{ + int ret; + + g_return_val_if_fail (lowfd >= 0, (errno = EINVAL, -1)); + +#if defined(HAVE_CLOSE_RANGE) && defined(CLOSE_RANGE_CLOEXEC) + /* close_range() is available in Linux since kernel 5.9, and on FreeBSD at + * around the same time. It was designed for use in async-signal-safe + * situations: https://bugs.python.org/issue38061 + * + * The `CLOSE_RANGE_CLOEXEC` flag was added in Linux 5.11, and is not yet + * present in FreeBSD. + * + * Handle ENOSYS in case it’s supported in libc but not the kernel; if so, + * fall back to safe_fdwalk(). Handle EINVAL in case `CLOSE_RANGE_CLOEXEC` + * is not supported. */ + ret = close_range (lowfd, G_MAXUINT, CLOSE_RANGE_CLOEXEC); + if (ret == 0 || !(errno == ENOSYS || errno == EINVAL)) + return ret; +#endif /* HAVE_CLOSE_RANGE */ + + ret = safe_fdwalk (set_cloexec, GINT_TO_POINTER (lowfd)); + + return ret; +} + +/** + * g_closefrom: + * @lowfd: Minimum fd to close, which must be non-negative + * + * Close every file descriptor equal to or greater than @lowfd. + * + * Typically @lowfd will be 3, to leave standard input, standard output + * and standard error open. + * + * This is the same as Linux `close_range (lowfd, ~0U, 0)`, + * but portable to other OSs and to older versions of Linux. + * Equivalently, it is the same as BSD `closefrom (lowfd)`, but portable, + * and async-signal-safe on all OSs. + * + * This function is async-signal safe, making it safe to call from a + * signal handler or a [callback@GLib.SpawnChildSetupFunc], as long as @lowfd is + * non-negative. + * See [`signal(7)`](man:signal(7)) and + * [`signal-safety(7)`](man:signal-safety(7)) for more details. + * + * Returns: 0 on success, -1 with errno set on error + * Since: 2.80 + */ +int +_glnx_closefrom (int lowfd) +{ + int ret; + + g_return_val_if_fail (lowfd >= 0, (errno = EINVAL, -1)); + +#if defined(HAVE_CLOSE_RANGE) + /* close_range() is available in Linux since kernel 5.9, and on FreeBSD at + * around the same time. It was designed for use in async-signal-safe + * situations: https://bugs.python.org/issue38061 + * + * Handle ENOSYS in case it’s supported in libc but not the kernel; if so, + * fall back to safe_fdwalk(). */ + ret = close_range (lowfd, G_MAXUINT, 0); + if (ret == 0 || errno != ENOSYS) + return ret; +#endif /* HAVE_CLOSE_RANGE */ + +#if defined(__FreeBSD__) || defined(__OpenBSD__) || \ + (defined(__sun__) && defined(F_CLOSEFROM)) + /* Use closefrom function provided by the system if it is known to be + * async-signal safe. + * + * FreeBSD: closefrom is included in the list of async-signal safe functions + * found in https://man.freebsd.org/sigaction(2). + * + * OpenBSD: closefrom is not included in the list, but a direct system call + * should be safe to use. + * + * In Solaris as of 11.3 SRU 31, closefrom() is also a direct system call. + * On such systems, F_CLOSEFROM is defined. + */ + (void) closefrom (lowfd); + return 0; +#elif defined(__DragonFly__) + /* It is unclear whether closefrom function included in DragonFlyBSD libc_r + * is safe to use because it calls a lot of library functions. It is also + * unclear whether libc_r itself is still being used. Therefore, we do a + * direct system call here ourselves to avoid possible issues. + */ + (void) syscall (SYS_closefrom, lowfd); + return 0; +#elif defined(F_CLOSEM) + /* NetBSD and AIX have a special fcntl command which does the same thing as + * closefrom. NetBSD also includes closefrom function, which seems to be a + * simple wrapper of the fcntl command. + */ + return fcntl (lowfd, F_CLOSEM); +#else + ret = safe_fdwalk (close_func_with_invalid_fds, GINT_TO_POINTER (lowfd)); + + return ret; +#endif +} +#endif /* !2.80.0 */ diff --git a/subprojects/libglnx/glnx-backports.h b/subprojects/libglnx/glnx-backports.h index 0c5fabe..09e4609 100644 --- a/subprojects/libglnx/glnx-backports.h +++ b/subprojects/libglnx/glnx-backports.h @@ -1,7 +1,11 @@ /* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- * + * Copyright 1998 Manish Singh + * Copyright 1998 Tim Janik * Copyright (C) 2015 Colin Walters - * SPDX-License-Identifier: LGPL-2.0-or-later + * Copyright (C) 2018 Endless OS Foundation, LLC + * Copyright 2017 Emmanuele Bassi + * SPDX-License-Identifier: LGPL-2.1-or-later * * GLIB - Library of useful routines for C programming * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald @@ -9,7 +13,7 @@ * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. + * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -17,13 +21,14 @@ * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * License along with this library; if not, see . */ #pragma once +#include + +#include #include G_BEGIN_DECLS @@ -48,6 +53,10 @@ G_BEGIN_DECLS } G_STMT_END #endif +#if !GLIB_CHECK_VERSION(2, 40, 0) +#define g_info(...) g_log (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, __VA_ARGS__) +#endif + #if !GLIB_CHECK_VERSION(2, 44, 0) #define g_strv_contains glnx_strv_contains @@ -64,16 +73,98 @@ gboolean glnx_set_object (GObject **object_ptr, #endif /* !GLIB_CHECK_VERSION(2, 44, 0) */ -#ifndef g_assert_nonnull -#define g_assert_nonnull(x) g_assert (x != NULL) +#if !GLIB_CHECK_VERSION(2, 38, 0) +#define G_SPAWN_DEFAULT ((GSpawnFlags) 0) +#endif + +#if !GLIB_CHECK_VERSION(2, 42, 0) +#define G_OPTION_FLAG_NONE ((GOptionFlags) 0) +#endif + +#ifndef G_PID_FORMAT /* added in 2.50 */ +#define G_PID_FORMAT "i" +#endif + +#if !GLIB_CHECK_VERSION(2, 60, 0) +#define g_strv_equal _glnx_strv_equal +gboolean _glnx_strv_equal (const gchar * const *strv1, + const gchar * const *strv2); +#endif + +#ifndef G_DBUS_METHOD_INVOCATION_HANDLED /* added in 2.68 */ +#define G_DBUS_METHOD_INVOCATION_HANDLED TRUE +#endif + +#ifndef G_DBUS_METHOD_INVOCATION_UNHANDLED /* added in 2.68 */ +#define G_DBUS_METHOD_INVOCATION_UNHANDLED FALSE +#endif + +#if !GLIB_CHECK_VERSION(2, 68, 0) +static inline gpointer _glnx_memdup2 (gconstpointer mem, + gsize byte_size) G_GNUC_ALLOC_SIZE(2); +static inline gpointer +_glnx_memdup2 (gconstpointer mem, + gsize byte_size) +{ + gpointer new_mem; + + if (mem && byte_size != 0) + { + new_mem = g_malloc (byte_size); + memcpy (new_mem, mem, byte_size); + } + else + new_mem = NULL; + + return new_mem; +} +#define g_memdup2 _glnx_memdup2 +#endif + +#ifndef G_OPTION_ENTRY_NULL /* added in 2.70 */ +#define G_OPTION_ENTRY_NULL { NULL, 0, 0, 0, NULL, NULL, NULL } +#endif + +#ifndef G_APPROX_VALUE /* added in 2.58 */ +#define G_APPROX_VALUE(a, b, epsilon) \ + (((a) > (b) ? (a) - (b) : (b) - (a)) < (epsilon)) +#endif + +static inline int +_glnx_steal_fd (int *fdp) +{ +#if GLIB_CHECK_VERSION(2, 70, 0) + /* Allow it to be used without deprecation warnings, even if the target + * GLib version is older */ + G_GNUC_BEGIN_IGNORE_DEPRECATIONS + return g_steal_fd (fdp); + G_GNUC_END_IGNORE_DEPRECATIONS +#else + int fd = *fdp; + *fdp = -1; + return fd; #endif +} +#define g_steal_fd _glnx_steal_fd -#ifndef g_assert_null -#define g_assert_null(x) g_assert (x == NULL) +#if !GLIB_CHECK_VERSION(2, 74, 0) +#define G_APPLICATION_DEFAULT_FLAGS ((GApplicationFlags) 0) +#define G_CONNECT_DEFAULT ((GConnectFlags) 0) +#define G_IO_FLAG_NONE ((GIOFlags) 0) +#define G_MARKUP_DEFAULT_FLAGS ((GMarkupParseFlags) 0) +#define G_REGEX_DEFAULT ((GRegexCompileFlags) 0) +#define G_REGEX_MATCH_DEFAULT ((GRegexMatchFlags) 0) +#define G_TEST_SUBPROCESS_DEFAULT ((GTestSubprocessFlags) 0) +#define G_TEST_TRAP_DEFAULT ((GTestTrapFlags) 0) +#define G_TLS_CERTIFICATE_NO_FLAGS ((GTlsCertificateFlags) 0) +#define G_TYPE_FLAG_NONE ((GTypeFlags) 0) #endif -#if !GLIB_CHECK_VERSION (2, 38, 0) -#define g_test_skip(s) g_test_message ("SKIP: %s", s) +#if !GLIB_CHECK_VERSION(2, 80, 0) +#define g_closefrom _glnx_closefrom +int _glnx_closefrom (int lowfd); +#define g_fdwalk_set_cloexec _glnx_fdwalk_set_cloexec +int _glnx_fdwalk_set_cloexec (int lowfd); #endif G_END_DECLS diff --git a/subprojects/libglnx/glnx-dirfd.c b/subprojects/libglnx/glnx-dirfd.c index b039c41..b78e2df 100644 --- a/subprojects/libglnx/glnx-dirfd.c +++ b/subprojects/libglnx/glnx-dirfd.c @@ -129,7 +129,7 @@ glnx_dirfd_iterator_init_take_fd (int *dfd, if (!d) return glnx_throw_errno_prefix (error, "fdopendir"); - real_dfd_iter->fd = glnx_steal_fd (dfd); + real_dfd_iter->fd = g_steal_fd (dfd); real_dfd_iter->d = d; real_dfd_iter->initialized = TRUE; @@ -349,7 +349,7 @@ glnx_mkdtempat (int dfd, const char *tmpl, int mode, /* Return the initialized directory struct */ out_tmpdir->initialized = TRUE; out_tmpdir->src_dfd = dfd; /* referenced; see above docs */ - out_tmpdir->fd = glnx_steal_fd (&ret_dfd); + out_tmpdir->fd = g_steal_fd (&ret_dfd); out_tmpdir->path = g_steal_pointer (&path); return TRUE; } diff --git a/subprojects/libglnx/glnx-fdio.c b/subprojects/libglnx/glnx-fdio.c index ee69aa1..9873205 100644 --- a/subprojects/libglnx/glnx-fdio.c +++ b/subprojects/libglnx/glnx-fdio.c @@ -218,7 +218,7 @@ open_tmpfile_core (int dfd, const char *subpath, return glnx_throw_errno_prefix (error, "fchmod"); out_tmpf->initialized = TRUE; out_tmpf->src_dfd = dfd; /* Copied; caller must keep open */ - out_tmpf->fd = glnx_steal_fd (&fd); + out_tmpf->fd = g_steal_fd (&fd); out_tmpf->path = NULL; return TRUE; } @@ -245,7 +245,7 @@ open_tmpfile_core (int dfd, const char *subpath, { out_tmpf->initialized = TRUE; out_tmpf->src_dfd = dfd; /* Copied; caller must keep open */ - out_tmpf->fd = glnx_steal_fd (&fd); + out_tmpf->fd = g_steal_fd (&fd); out_tmpf->path = g_steal_pointer (&tmp); return TRUE; } @@ -463,7 +463,7 @@ glnx_tmpfile_reopen_rdonly (GLnxTmpfile *tmpf, } glnx_close_fd (&tmpf->fd); - tmpf->fd = glnx_steal_fd (&rdonly_fd); + tmpf->fd = g_steal_fd (&rdonly_fd); return TRUE; } @@ -794,10 +794,21 @@ glnx_regfile_copy_bytes (int fdf, int fdt, off_t max_bytes) /* If we've requested to copy the whole range, try a full-file clone first. */ - if (max_bytes == (off_t) -1) + if (max_bytes == (off_t) -1 && + lseek (fdf, 0, SEEK_CUR) == 0 && + lseek (fdt, 0, SEEK_CUR) == 0) { if (ioctl (fdt, FICLONE, fdf) == 0) - return 0; + { + /* All the other methods advance the fds. Do it here too for consistency. */ + if (lseek (fdf, 0, SEEK_END) < 0) + return -1; + if (lseek (fdt, 0, SEEK_END) < 0) + return -1; + + return 0; + } + /* Fall through */ struct stat stbuf; diff --git a/subprojects/libglnx/glnx-local-alloc.h b/subprojects/libglnx/glnx-local-alloc.h index 615b954..65ae747 100644 --- a/subprojects/libglnx/glnx-local-alloc.h +++ b/subprojects/libglnx/glnx-local-alloc.h @@ -24,6 +24,8 @@ #include #include +#include "glnx-backports.h" + G_BEGIN_DECLS /** @@ -43,19 +45,14 @@ glnx_local_obj_unref (void *v) } #define glnx_unref_object __attribute__ ((cleanup(glnx_local_obj_unref))) -static inline int -glnx_steal_fd (int *fdp) -{ - int fd = *fdp; - *fdp = -1; - return fd; -} +/* Backwards-compat with older libglnx */ +#define glnx_steal_fd g_steal_fd /** * glnx_close_fd: * @fdp: Pointer to fd * - * Effectively `close (glnx_steal_fd (&fd))`. Also + * Effectively `close (g_steal_fd (&fd))`. Also * asserts that `close()` did not raise `EBADF` - encountering * that error is usually a critical bug in the program. */ @@ -66,7 +63,7 @@ glnx_close_fd (int *fdp) g_assert (fdp); - int fd = glnx_steal_fd (fdp); + int fd = g_steal_fd (fdp); if (fd >= 0) { errsv = errno; diff --git a/subprojects/libglnx/glnx-lockfile.c b/subprojects/libglnx/glnx-lockfile.c index 65a1558..fcda84c 100644 --- a/subprojects/libglnx/glnx-lockfile.c +++ b/subprojects/libglnx/glnx-lockfile.c @@ -129,7 +129,7 @@ glnx_make_lock_file(int dfd, const char *p, int operation, GLnxLockFile *out_loc out_lock->initialized = TRUE; out_lock->dfd = dfd; out_lock->path = g_steal_pointer (&t); - out_lock->fd = glnx_steal_fd (&fd); + out_lock->fd = g_steal_fd (&fd); out_lock->operation = operation; return TRUE; } diff --git a/subprojects/libglnx/glnx-missing-syscall.h b/subprojects/libglnx/glnx-missing-syscall.h index 3ee9dd5..c32a3f7 100644 --- a/subprojects/libglnx/glnx-missing-syscall.h +++ b/subprojects/libglnx/glnx-missing-syscall.h @@ -32,6 +32,7 @@ */ #include "libglnx-config.h" +#include #if !HAVE_DECL_RENAMEAT2 # ifndef __NR_renameat2 @@ -155,3 +156,83 @@ static inline ssize_t missing_copy_file_range(int fd_in, loff_t *off_in, # define copy_file_range missing_copy_file_range #endif + +#ifndef __IGNORE_close_range +# if defined(__aarch64__) +# define systemd_NR_close_range 436 +# elif defined(__alpha__) +# define systemd_NR_close_range 546 +# elif defined(__arc__) || defined(__tilegx__) +# define systemd_NR_close_range 436 +# elif defined(__arm__) +# define systemd_NR_close_range 436 +# elif defined(__i386__) +# define systemd_NR_close_range 436 +# elif defined(__ia64__) +# define systemd_NR_close_range 1460 +# elif defined(__loongarch_lp64) +# define systemd_NR_close_range 436 +# elif defined(__m68k__) +# define systemd_NR_close_range 436 +# elif defined(_MIPS_SIM) +# if _MIPS_SIM == _MIPS_SIM_ABI32 +# define systemd_NR_close_range 4436 +# elif _MIPS_SIM == _MIPS_SIM_NABI32 +# define systemd_NR_close_range 6436 +# elif _MIPS_SIM == _MIPS_SIM_ABI64 +# define systemd_NR_close_range 5436 +# else +# error "Unknown MIPS ABI" +# endif +# elif defined(__hppa__) +# define systemd_NR_close_range 436 +# elif defined(__powerpc__) +# define systemd_NR_close_range 436 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_close_range 436 +# elif __riscv_xlen == 64 +# define systemd_NR_close_range 436 +# else +# error "Unknown RISC-V ABI" +# endif +# elif defined(__s390__) +# define systemd_NR_close_range 436 +# elif defined(__sparc__) +# define systemd_NR_close_range 436 +# elif defined(__x86_64__) +# if defined(__ILP32__) +# define systemd_NR_close_range (436 | /* __X32_SYSCALL_BIT */ 0x40000000) +# else +# define systemd_NR_close_range 436 +# endif +# elif !defined(missing_arch_template) +# warning "close_range() syscall number is unknown for your architecture" +# endif + +/* may be an (invalid) negative number due to libseccomp, see PR 13319 */ +# if defined __NR_close_range && __NR_close_range >= 0 +# if defined systemd_NR_close_range +G_STATIC_ASSERT(__NR_close_range == systemd_NR_close_range); +# endif +# else +# if defined __NR_close_range +# undef __NR_close_range +# endif +# if defined systemd_NR_close_range && systemd_NR_close_range >= 0 +# define __NR_close_range systemd_NR_close_range +# endif +# endif +#endif + +#if !defined(HAVE_CLOSE_RANGE) && defined(__NR_close_range) +static inline int +inline_close_range (unsigned int low, + unsigned int high, + int flags) +{ + return syscall (__NR_close_range, low, high, flags); +} +#define close_range(low, high, flags) inline_close_range(low, high, flags) +#define HAVE_CLOSE_RANGE +#endif diff --git a/subprojects/libglnx/glnx-missing.h b/subprojects/libglnx/glnx-missing.h index 5439ae5..fa724b8 100644 --- a/subprojects/libglnx/glnx-missing.h +++ b/subprojects/libglnx/glnx-missing.h @@ -92,4 +92,12 @@ #define MFD_CLOEXEC 0x0001U #endif +#ifndef CLOSE_RANGE_UNSHARE +#define CLOSE_RANGE_UNSHARE (1U << 1) +#endif + +#ifndef CLOSE_RANGE_CLOEXEC +#define CLOSE_RANGE_CLOEXEC (1U << 2) +#endif + #include "glnx-missing-syscall.h" diff --git a/subprojects/libglnx/glnx-shutil.c b/subprojects/libglnx/glnx-shutil.c index 5ebe7f8..5a6fd7c 100644 --- a/subprojects/libglnx/glnx-shutil.c +++ b/subprojects/libglnx/glnx-shutil.c @@ -149,12 +149,10 @@ mkdir_p_at_internal (int dfd, again: if (mkdirat (dfd, path, mode) == -1) { - if (errno == ENOENT) + if (errno == ENOENT && !did_recurse) { char *lastslash; - g_assert (!did_recurse); - lastslash = strrchr (path, '/'); if (lastslash == NULL) { diff --git a/subprojects/libglnx/glnx-xattrs.c b/subprojects/libglnx/glnx-xattrs.c index d0e6ab3..84fd609 100644 --- a/subprojects/libglnx/glnx-xattrs.c +++ b/subprojects/libglnx/glnx-xattrs.c @@ -437,7 +437,7 @@ glnx_lsetxattrat (int dfd, char pathbuf[PATH_MAX]; snprintf (pathbuf, sizeof (pathbuf), "/proc/self/fd/%d/%s", dfd, subpath); - if (TEMP_FAILURE_RETRY (lsetxattr (subpath, attribute, value, len, flags)) < 0) + if (TEMP_FAILURE_RETRY (lsetxattr (pathbuf, attribute, value, len, flags)) < 0) return glnx_throw_errno_prefix (error, "lsetxattr(%s)", attribute); return TRUE; diff --git a/subprojects/libglnx/libglnx.doap b/subprojects/libglnx/libglnx.doap new file mode 100644 index 0000000..6752e88 --- /dev/null +++ b/subprojects/libglnx/libglnx.doap @@ -0,0 +1,35 @@ + + + + + libglnx + libglnx + + "Copylib" for system service modules using GLib with Linux + + This module is intended for use by + infrastructure code using GLib that is also Linux specific, such as + ostree, NetworkManager, and others. + + + + + + C + + + + Colin Walters + + walters + + + + diff --git a/subprojects/libglnx/libglnx.h b/subprojects/libglnx/libglnx.h index ca82ba5..63d73ad 100644 --- a/subprojects/libglnx/libglnx.h +++ b/subprojects/libglnx/libglnx.h @@ -29,6 +29,7 @@ G_BEGIN_DECLS #include #include #include +#include #include #include #include diff --git a/subprojects/libglnx/libglnx.m4 b/subprojects/libglnx/libglnx.m4 index bd0d580..e0beac9 100644 --- a/subprojects/libglnx/libglnx.m4 +++ b/subprojects/libglnx/libglnx.m4 @@ -4,6 +4,7 @@ AC_DEFUN([LIBGLNX_CONFIGURE], [ +dnl This defines HAVE_DECL_FOO to 1 if found or 0 if not AC_CHECK_DECLS([ renameat2, memfd_create, @@ -19,6 +20,9 @@ AC_CHECK_DECLS([ #include #include ]]) +dnl This defines HAVE_FOO to 1 if found, or leaves it undefined if not: +dnl not the same! +AC_CHECK_FUNCS([close_range]) AC_ARG_ENABLE(otmpfile, [AS_HELP_STRING([--disable-otmpfile], diff --git a/subprojects/libglnx/meson.build b/subprojects/libglnx/meson.build new file mode 100644 index 0000000..7303fa3 --- /dev/null +++ b/subprojects/libglnx/meson.build @@ -0,0 +1,113 @@ +# Copyright 2019 Endless OS Foundation LLC +# Copyright 2019 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +project( + 'libglnx', + 'c', + default_options : [ + 'c_std=gnu99', + 'warning_level=2', + ], +) + +add_project_arguments('-D_GNU_SOURCE', language: 'c') +add_project_arguments('-Wno-unused-local-typedefs', language: 'c') + +# We are intentionally using non-ISO features in this (sub)project, +# even if a parent project wants to use pedantic warnings +add_project_arguments('-Wno-pedantic', language: 'c') +add_project_arguments('-Wno-variadic-macros', language: 'c') + +cc = meson.get_compiler('c') + + +check_functions = [ + 'renameat2', + 'memfd_create', + 'copy_file_range', +] +conf = configuration_data() +foreach check_function : check_functions + have_it = cc.compiles(''' + #include + #include + #include + #include + #include + #include + #include + #include + #include + + void func (void) { + (void) ''' + check_function + '''; + } + ''', + args : '-D_GNU_SOURCE', + name : check_function + '() is declared', + ) + conf.set10('HAVE_DECL_' + check_function.underscorify().to_upper(), have_it) +endforeach + +check_functions = [ + 'close_range', +] +foreach check_function : check_functions + if cc.has_function(check_function) + conf.set('HAVE_' + check_function.underscorify().to_upper(), 1) + endif +endforeach + +config_h = configure_file( + output : 'libglnx-config.h', + configuration : conf, +) + +libglnx_deps = [ + dependency('gio-2.0'), + dependency('gio-unix-2.0'), +] +libglnx_inc = include_directories('.') +libglnx_sources = [ + 'glnx-backport-autocleanups.h', + 'glnx-backport-autoptr.h', + 'glnx-backport-testutils.c', + 'glnx-backport-testutils.h', + 'glnx-backports.c', + 'glnx-backports.h', + 'glnx-console.c', + 'glnx-console.h', + 'glnx-dirfd.c', + 'glnx-dirfd.h', + 'glnx-errors.c', + 'glnx-errors.h', + 'glnx-fdio.c', + 'glnx-fdio.h', + 'glnx-local-alloc.c', + 'glnx-local-alloc.h', + 'glnx-lockfile.c', + 'glnx-lockfile.h', + 'glnx-macros.h', + 'glnx-missing.h', + 'glnx-missing-syscall.h', + 'glnx-shutil.c', + 'glnx-shutil.h', + 'glnx-xattrs.c', + 'glnx-xattrs.h', + 'libglnx.h', +] + +libglnx = static_library('glnx', + libglnx_sources, + dependencies : libglnx_deps, + gnu_symbol_visibility : 'hidden', + include_directories : libglnx_inc, + install : false) +libglnx_dep = declare_dependency( + dependencies : libglnx_deps, + include_directories : libglnx_inc, + link_with : libglnx) + +subdir('tests') + diff --git a/subprojects/libglnx/meson_options.txt b/subprojects/libglnx/meson_options.txt new file mode 100644 index 0000000..e900111 --- /dev/null +++ b/subprojects/libglnx/meson_options.txt @@ -0,0 +1,9 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.0-or-later + +option( + 'tests', + type : 'boolean', + description : 'build and run unit tests', + value : true, +) diff --git a/subprojects/libglnx/tests/libglnx-testlib.c b/subprojects/libglnx/tests/libglnx-testlib.c index 37b3ece..3eb2ba1 100644 --- a/subprojects/libglnx/tests/libglnx-testlib.c +++ b/subprojects/libglnx/tests/libglnx-testlib.c @@ -67,8 +67,7 @@ _glnx_test_auto_temp_dir_leave (_GLnxTestAutoTempDir *dir) glnx_tmpdir_delete (&dir->temp_dir, NULL, &error); g_assert_no_error (error); - g_close (dir->old_cwd_fd, &error); - g_assert_no_error (error); + glnx_close_fd (&dir->old_cwd_fd); g_free (dir->old_cwd); g_free (dir); diff --git a/subprojects/libglnx/tests/meson.build b/subprojects/libglnx/tests/meson.build new file mode 100644 index 0000000..6c46b45 --- /dev/null +++ b/subprojects/libglnx/tests/meson.build @@ -0,0 +1,58 @@ +# Copyright 2019 Endless OS Foundation LLC +# Copyright 2019 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +libglnx_testlib = static_library( + 'glnx-testlib', + 'libglnx-testlib.c', + 'libglnx-testlib.h', + dependencies : [ + libglnx_dep, + libglnx_deps, + ], + install : false, +) +libglnx_testlib_dep = declare_dependency( + dependencies : [ + libglnx_dep, + libglnx_deps, + ], + include_directories : include_directories('.'), + link_with : libglnx_testlib, +) + +if get_option('tests') + testing_helper = executable( + 'testing-helper', + 'testing-helper.c', + dependencies : [ + libglnx_dep, + libglnx_deps, + ], + install : false, + ) + + test_names = [ + 'backports', + 'errors', + 'fdio', + 'macros', + 'shutil', + 'testing', + 'xattrs', + ] + + foreach test_name : test_names + exe = executable(test_name, + [ + 'test-libglnx-' + test_name + '.c', + ], + dependencies: [ + libglnx_dep, + libglnx_deps, + libglnx_testlib_dep, + ], + ) + test(test_name, exe, depends: testing_helper) + endforeach +endif diff --git a/subprojects/libglnx/tests/test-libglnx-backports.c b/subprojects/libglnx/tests/test-libglnx-backports.c new file mode 100644 index 0000000..89b1b3f --- /dev/null +++ b/subprojects/libglnx/tests/test-libglnx-backports.c @@ -0,0 +1,299 @@ +/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- + * + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * Copyright (C) 2011 Red Hat, Inc. + * Copyright (C) 2018 Endless OS Foundation, LLC + * Copyright 2019 Emmanuel Fleury + * Copyright 2021-2024 Collabora Ltd. + * SPDX-License-Identifier: LGPL-2.1-or-later AND LicenseRef-old-glib-tests + */ + +#include "libglnx-config.h" +#include "libglnx.h" + +#include +#include + +#include +#include + +static void +async_signal_safe_message (const char *message) +{ + if (write (2, message, strlen (message)) < 0 || + write (2, "\n", 1) < 0) + { + /* ignore: not much we can do */ + } +} + +static void test_closefrom_subprocess_einval (void); + +static void +test_closefrom (void) +{ + /* Enough file descriptors to be confident that we're operating on + * all of them */ + const int N_FDS = 20; + int *fds; + int fd; + int i; + pid_t child; + int wait_status; + + /* The loop that populates @fds with pipes assumes this */ + g_assert (N_FDS % 2 == 0); + + for (fd = 0; fd <= 2; fd++) + { + int flags; + + g_assert_no_errno ((flags = fcntl (fd, F_GETFD))); + g_assert_no_errno (fcntl (fd, F_SETFD, flags & ~FD_CLOEXEC)); + } + + fds = g_new0 (int, N_FDS); + + for (i = 0; i < N_FDS; i += 2) + { + GError *error = NULL; + int pipefd[2]; + int res; + + /* Intentionally neither O_CLOEXEC nor FD_CLOEXEC */ + res = g_unix_open_pipe (pipefd, 0, &error); + g_assert (res); + g_assert_no_error (error); + g_clear_error (&error); + fds[i] = pipefd[0]; + fds[i + 1] = pipefd[1]; + } + + child = fork (); + + /* Child process exits with status = 100 + the first wrong fd, + * or 0 if all were correct */ + if (child == 0) + { + for (i = 0; i < N_FDS; i++) + { + int flags = fcntl (fds[i], F_GETFD); + + if (flags == -1) + { + async_signal_safe_message ("fd should not have been closed"); + _exit (100 + fds[i]); + } + + if (flags & FD_CLOEXEC) + { + async_signal_safe_message ("fd should not have been close-on-exec yet"); + _exit (100 + fds[i]); + } + } + + g_fdwalk_set_cloexec (3); + + for (i = 0; i < N_FDS; i++) + { + int flags = fcntl (fds[i], F_GETFD); + + if (flags == -1) + { + async_signal_safe_message ("fd should not have been closed"); + _exit (100 + fds[i]); + } + + if (!(flags & FD_CLOEXEC)) + { + async_signal_safe_message ("fd should have been close-on-exec"); + _exit (100 + fds[i]); + } + } + + g_closefrom (3); + + for (fd = 0; fd <= 2; fd++) + { + int flags = fcntl (fd, F_GETFD); + + if (flags == -1) + { + async_signal_safe_message ("fd should not have been closed"); + _exit (100 + fd); + } + + if (flags & FD_CLOEXEC) + { + async_signal_safe_message ("fd should not have been close-on-exec"); + _exit (100 + fd); + } + } + + for (i = 0; i < N_FDS; i++) + { + if (fcntl (fds[i], F_GETFD) != -1 || errno != EBADF) + { + async_signal_safe_message ("fd should have been closed"); + _exit (100 + fds[i]); + } + } + + _exit (0); + } + + g_assert_no_errno (waitpid (child, &wait_status, 0)); + + if (WIFEXITED (wait_status)) + { + int exit_status = WEXITSTATUS (wait_status); + + if (exit_status != 0) + g_test_fail_printf ("File descriptor %d in incorrect state", exit_status - 100); + } + else + { + g_test_fail_printf ("Unexpected wait status %d", wait_status); + } + + for (i = 0; i < N_FDS; i++) + g_assert_no_errno (close (fds[i])); + + g_free (fds); + + if (g_test_undefined ()) + { +#if GLIB_CHECK_VERSION (2, 38, 0) + g_test_trap_subprocess ("/glib-unix/closefrom/subprocess/einval", + 0, G_TEST_SUBPROCESS_DEFAULT); +#else + if (g_test_trap_fork (0, 0)) + { + test_closefrom_subprocess_einval (); + exit (0); + } + +#endif + g_test_trap_assert_passed (); + } +} + +static void +test_closefrom_subprocess_einval (void) +{ + int res; + int errsv; + + g_log_set_always_fatal (G_LOG_FATAL_MASK); + g_log_set_fatal_mask ("GLib", G_LOG_FATAL_MASK); + + errno = 0; + res = g_closefrom (-1); + errsv = errno; + g_assert_cmpint (res, ==, -1); + g_assert_cmpint (errsv, ==, EINVAL); + + errno = 0; + res = g_fdwalk_set_cloexec (-42); + errsv = errno; + g_assert_cmpint (res, ==, -1); + g_assert_cmpint (errsv, ==, EINVAL); +} + +/* Testing g_memdup2() function with various positive and negative cases */ +static void +test_memdup2 (void) +{ + gchar *str_dup = NULL; + const gchar *str = "The quick brown fox jumps over the lazy dog"; + + /* Testing negative cases */ + g_assert_null (g_memdup2 (NULL, 1024)); + g_assert_null (g_memdup2 (str, 0)); + g_assert_null (g_memdup2 (NULL, 0)); + + /* Testing normal usage cases */ + str_dup = g_memdup2 (str, strlen (str) + 1); + g_assert_nonnull (str_dup); + g_assert_cmpstr (str, ==, str_dup); + + g_free (str_dup); +} + +static void +test_steal_fd (void) +{ + GError *error = NULL; + gchar *tmpfile = NULL; + int fd = -42; + int borrowed; + int stolen; + + g_assert_cmpint (g_steal_fd (&fd), ==, -42); + g_assert_cmpint (fd, ==, -1); + g_assert_cmpint (g_steal_fd (&fd), ==, -1); + g_assert_cmpint (fd, ==, -1); + + fd = g_file_open_tmp (NULL, &tmpfile, &error); + g_assert_cmpint (fd, >=, 0); + g_assert_no_error (error); + borrowed = fd; + stolen = g_steal_fd (&fd); + g_assert_cmpint (fd, ==, -1); + g_assert_cmpint (borrowed, ==, stolen); + + g_assert_no_errno (close (g_steal_fd (&stolen))); + g_assert_cmpint (stolen, ==, -1); + + g_assert_no_errno (remove (tmpfile)); + g_free (tmpfile); + + /* Backwards compatibility with older libglnx: glnx_steal_fd is the same + * as g_steal_fd */ + fd = -23; + g_assert_cmpint (glnx_steal_fd (&fd), ==, -23); + g_assert_cmpint (fd, ==, -1); +} + +/* Test g_strv_equal() works for various inputs. */ +static void +test_strv_equal (void) +{ + const gchar *strv_empty[] = { NULL }; + const gchar *strv_empty2[] = { NULL }; + const gchar *strv_simple[] = { "hello", "you", NULL }; + const gchar *strv_simple2[] = { "hello", "you", NULL }; + const gchar *strv_simple_reordered[] = { "you", "hello", NULL }; + const gchar *strv_simple_superset[] = { "hello", "you", "again", NULL }; + const gchar *strv_another[] = { "not", "a", "coded", "message", NULL }; + + g_assert_true (g_strv_equal (strv_empty, strv_empty)); + g_assert_true (g_strv_equal (strv_empty, strv_empty2)); + g_assert_true (g_strv_equal (strv_empty2, strv_empty)); + g_assert_false (g_strv_equal (strv_empty, strv_simple)); + g_assert_false (g_strv_equal (strv_simple, strv_empty)); + g_assert_true (g_strv_equal (strv_simple, strv_simple)); + g_assert_true (g_strv_equal (strv_simple, strv_simple2)); + g_assert_true (g_strv_equal (strv_simple2, strv_simple)); + g_assert_false (g_strv_equal (strv_simple, strv_simple_reordered)); + g_assert_false (g_strv_equal (strv_simple_reordered, strv_simple)); + g_assert_false (g_strv_equal (strv_simple, strv_simple_superset)); + g_assert_false (g_strv_equal (strv_simple_superset, strv_simple)); + g_assert_false (g_strv_equal (strv_simple, strv_another)); + g_assert_false (g_strv_equal (strv_another, strv_simple)); +} + +int main (int argc, char **argv) +{ + g_test_init (&argc, &argv, NULL); + + g_test_add_func ("/glib-unix/closefrom", test_closefrom); +#if GLIB_CHECK_VERSION (2, 38, 0) + g_test_add_func ("/glib-unix/closefrom/subprocess/einval", + test_closefrom_subprocess_einval); +#endif + g_test_add_func ("/mainloop/steal-fd", test_steal_fd); + g_test_add_func ("/strfuncs/memdup2", test_memdup2); + g_test_add_func ("/strfuncs/strv-equal", test_strv_equal); + return g_test_run(); +} diff --git a/subprojects/libglnx/tests/test-libglnx-macros.c b/subprojects/libglnx/tests/test-libglnx-macros.c index 5f41e5b..ec669d3 100644 --- a/subprojects/libglnx/tests/test-libglnx-macros.c +++ b/subprojects/libglnx/tests/test-libglnx-macros.c @@ -26,6 +26,13 @@ #include #include +static void +test_info (void) +{ + g_info ("hello, world"); + g_info ("answer=%d", 42); +} + static void test_inset (void) { @@ -104,6 +111,7 @@ test_hash_table_foreach (void) int main (int argc, char **argv) { g_test_init (&argc, &argv, NULL); + g_test_add_func ("/info", test_info); g_test_add_func ("/inset", test_inset); g_test_add_func ("/hash_table_foreach", test_hash_table_foreach); return g_test_run(); diff --git a/subprojects/libglnx/tests/test-libglnx-shutil.c b/subprojects/libglnx/tests/test-libglnx-shutil.c index 28b34ab..98e424a 100644 --- a/subprojects/libglnx/tests/test-libglnx-shutil.c +++ b/subprojects/libglnx/tests/test-libglnx-shutil.c @@ -1,6 +1,7 @@ /* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- * - * Copyright © 2017 Endless OS Foundation LLC + * Copyright © 2017-2019 Endless OS Foundation LLC + * Copyright © 2024 Collabora Ltd. * SPDX-License-Identifier: LGPL-2.0-or-later * * This library is free software; you can redistribute it and/or @@ -29,9 +30,47 @@ #include "libglnx-testlib.h" +static void +test_mkdir_p_parent_unsuitable (void) +{ + _GLNX_TEST_SCOPED_TEMP_DIR; + _GLNX_TEST_DECLARE_ERROR(local_error, error); + glnx_autofd int dfd = -1; + + if (!glnx_ensure_dir (AT_FDCWD, "test", 0755, error)) + return; + if (!glnx_opendirat (AT_FDCWD, "test", FALSE, &dfd, error)) + return; + + if (!glnx_file_replace_contents_at (dfd, "file", + (const guint8 *) "", 0, + GLNX_FILE_REPLACE_NODATASYNC, + NULL, error)) + return; + + if (symlinkat ("nosuchtarget", dfd, "link") < 0) + { + glnx_throw_errno_prefix (error, "symlinkat"); + return; + } + + glnx_shutil_mkdir_p_at (dfd, "file/baz", 0755, NULL, error); + g_test_message ("mkdir %s -> %s", "file/baz", + local_error ? local_error->message : "success"); + g_assert_error (local_error, G_IO_ERROR, G_IO_ERROR_NOT_DIRECTORY); + g_clear_error (&local_error); + + glnx_shutil_mkdir_p_at (dfd, "link/baz", 0755, NULL, error); + g_test_message ("mkdir %s -> %s", "link/baz", + local_error ? local_error->message : "success"); + g_assert_error (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND); + g_clear_error (&local_error); +} + static void test_mkdir_p_enoent (void) { + _GLNX_TEST_SCOPED_TEMP_DIR; _GLNX_TEST_DECLARE_ERROR(local_error, error); glnx_autofd int dfd = -1; @@ -57,6 +96,7 @@ main (int argc, g_test_init (&argc, &argv, NULL); g_test_add_func ("/mkdir-p/enoent", test_mkdir_p_enoent); + g_test_add_func ("/mkdir-p/parent-unsuitable", test_mkdir_p_parent_unsuitable); ret = g_test_run(); diff --git a/subprojects/libglnx/tests/test-libglnx-testing.c b/subprojects/libglnx/tests/test-libglnx-testing.c new file mode 100644 index 0000000..449481d --- /dev/null +++ b/subprojects/libglnx/tests/test-libglnx-testing.c @@ -0,0 +1,371 @@ +/* + * Copyright 2022 Simon McVittie + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General + * Public License along with this library; if not, see + * . + */ + +#include "libglnx-config.h" +#include "libglnx.h" + +#include +#include + +#include +#include +#include +#include + +#if GLIB_CHECK_VERSION (2, 38, 0) +#define GTEST_TAP_OR_VERBOSE "--tap" +#else +#define GTEST_TAP_OR_VERBOSE "--verbose" +#endif + +static const char *null = NULL; +static const char *nonnull = "not null"; + +static void +test_assertions (void) +{ + const char *other_nonnull = "not null"; + g_autoptr(GVariant) va = g_variant_ref_sink (g_variant_new ("i", 42)); + g_autoptr(GVariant) vb = g_variant_ref_sink (g_variant_new ("i", 42)); + const char * const strv1[] = {"one", "two", NULL}; + const char * const strv2[] = {"one", "two", NULL}; + GStatBuf statbuf; + + g_assert_true (null == NULL); + g_assert_false (null != NULL); + g_assert_null (null); + g_assert_nonnull (nonnull); + g_assert_cmpmem (null, 0, null, 0); + g_assert_cmpmem (nonnull, strlen (nonnull), other_nonnull, strlen (other_nonnull)); + g_assert_cmpfloat_with_epsilon (1.0, 1.00001, 0.01); + g_assert_cmpvariant (va, vb); + g_assert_no_errno (g_stat ("/", &statbuf)); + g_assert_cmpstrv (NULL, NULL); + g_assert_cmpstrv (&null, &null); + g_assert_cmpstrv (strv1, strv2); +} + +static void +test_assertion_failures (void) +{ + static const char * const assertion_failures[] = + { + "true", + "false", + "nonnull", + "null", + "mem_null_nonnull", + "mem_nonnull_null", + "mem_len", + "mem_cmp", + "cmpfloat_with_epsilon", + "cmpvariant", + "errno", + "cmpstrv_null_nonnull", + "cmpstrv_nonnull_null", + "cmpstrv_len", + "cmpstrv_cmp", + }; + g_autoptr(GError) error = NULL; + g_autofree char *self = NULL; + g_autofree char *dir = NULL; + g_autofree char *exe = NULL; + gsize i; + + self = glnx_readlinkat_malloc (-1, "/proc/self/exe", NULL, &error); + g_assert_no_error (error); + + dir = g_path_get_dirname (self); + exe = g_build_filename (dir, "testing-helper", NULL); + + for (i = 0; i < G_N_ELEMENTS (assertion_failures); i++) + { + g_autofree char *out = NULL; + g_autofree char *err = NULL; + g_autofree char *name = g_strdup_printf ("/assertion-failure/%s", assertion_failures[i]); + int wait_status = -1; + const char *argv[] = { NULL, "assertion-failures", "-p", NULL, NULL, NULL }; + char *line; + char *saveptr = NULL; + + argv[0] = exe; + argv[3] = name; + argv[4] = GTEST_TAP_OR_VERBOSE; + g_test_message ("%s assertion-failures -p %s %s...", exe, name, GTEST_TAP_OR_VERBOSE); + + g_spawn_sync (NULL, /* cwd */ + (char **) argv, + NULL, /* envp */ + G_SPAWN_DEFAULT, + NULL, /* child setup */ + NULL, /* user data */ + &out, + &err, + &wait_status, + &error); + g_assert_no_error (error); + + g_assert_nonnull (out); + g_assert_nonnull (err); + + for (line = strtok_r (out, "\n", &saveptr); + line != NULL; + line = strtok_r (NULL, "\n", &saveptr)) + g_test_message ("stdout: %s", line); + + saveptr = NULL; + + for (line = strtok_r (err, "\n", &saveptr); + line != NULL; + line = strtok_r (NULL, "\n", &saveptr)) + g_test_message ("stderr: %s", line); + + g_test_message ("wait status: 0x%x", wait_status); + + /* It exited with a nonzero status that was not exit status 77 */ + G_STATIC_ASSERT (WIFEXITED (0)); + G_STATIC_ASSERT (WEXITSTATUS (0) == 0); + g_assert_cmphex (wait_status, !=, 0); + G_STATIC_ASSERT (WIFEXITED (77 << 8)); + G_STATIC_ASSERT (WEXITSTATUS (77 << 8) == 77); + g_assert_cmphex (wait_status, !=, (77 << 8)); + } +} + +static void +test_failures (void) +{ + static const char * const failures[] = + { + "fail", + "fail-printf", + }; + g_autoptr(GError) error = NULL; + g_autofree char *self = NULL; + g_autofree char *dir = NULL; + g_autofree char *exe = NULL; + gsize i; + + self = glnx_readlinkat_malloc (-1, "/proc/self/exe", NULL, &error); + g_assert_no_error (error); + + dir = g_path_get_dirname (self); + exe = g_build_filename (dir, "testing-helper", NULL); + + for (i = 0; i < G_N_ELEMENTS (failures); i++) + { + g_autofree char *out = NULL; + g_autofree char *err = NULL; + int wait_status = -1; + const char *argv[] = { NULL, NULL, NULL, NULL }; + char *line; + char *saveptr = NULL; + + argv[0] = exe; + argv[1] = failures[i]; + argv[2] = GTEST_TAP_OR_VERBOSE; + g_test_message ("%s %s %s...", exe, failures[i], GTEST_TAP_OR_VERBOSE); + + g_spawn_sync (NULL, /* cwd */ + (char **) argv, + NULL, /* envp */ + G_SPAWN_DEFAULT, + NULL, /* child setup */ + NULL, /* user data */ + &out, + &err, + &wait_status, + &error); + g_assert_no_error (error); + + for (line = strtok_r (out, "\n", &saveptr); + line != NULL; + line = strtok_r (NULL, "\n", &saveptr)) + g_test_message ("stdout: %s", line); + + saveptr = NULL; + + for (line = strtok_r (err, "\n", &saveptr); + line != NULL; + line = strtok_r (NULL, "\n", &saveptr)) + g_test_message ("stderr: %s", line); + + g_test_message ("wait status: 0x%x", wait_status); + + G_STATIC_ASSERT (WIFEXITED (0)); + G_STATIC_ASSERT (WEXITSTATUS (0) == 0); + G_STATIC_ASSERT (WIFEXITED (77 << 8)); + G_STATIC_ASSERT (WEXITSTATUS (77 << 8) == 77); + + g_assert_cmphex (wait_status, !=, 0); + g_assert_cmphex (wait_status, !=, (77 << 8)); + } +} + +static void +test_skips (void) +{ + static const char * const skips[] = + { + "skip", + "skip-printf", + "incomplete", + "incomplete-printf", + }; + g_autoptr(GError) error = NULL; + g_autofree char *self = NULL; + g_autofree char *dir = NULL; + g_autofree char *exe = NULL; + gsize i; + + self = glnx_readlinkat_malloc (-1, "/proc/self/exe", NULL, &error); + g_assert_no_error (error); + + dir = g_path_get_dirname (self); + exe = g_build_filename (dir, "testing-helper", NULL); + + for (i = 0; i < G_N_ELEMENTS (skips); i++) + { + g_autofree char *out = NULL; + g_autofree char *err = NULL; + int wait_status = -1; + const char *argv[] = { NULL, NULL, NULL, NULL }; + char *line; + char *saveptr = NULL; + + argv[0] = exe; + argv[1] = skips[i]; + argv[2] = GTEST_TAP_OR_VERBOSE; + g_test_message ("%s %s %s...", exe, skips[i], GTEST_TAP_OR_VERBOSE); + + g_spawn_sync (NULL, /* cwd */ + (char **) argv, + NULL, /* envp */ + G_SPAWN_DEFAULT, + NULL, /* child setup */ + NULL, /* user data */ + &out, + &err, + &wait_status, + &error); + g_assert_no_error (error); + + for (line = strtok_r (out, "\n", &saveptr); + line != NULL; + line = strtok_r (NULL, "\n", &saveptr)) + g_test_message ("stdout: %s", line); + + saveptr = NULL; + + for (line = strtok_r (err, "\n", &saveptr); + line != NULL; + line = strtok_r (NULL, "\n", &saveptr)) + g_test_message ("stderr: %s", line); + + g_test_message ("wait status: 0x%x", wait_status); + + G_STATIC_ASSERT (WIFEXITED (0)); + G_STATIC_ASSERT (WEXITSTATUS (0) == 0); + G_STATIC_ASSERT (WIFEXITED (77 << 8)); + G_STATIC_ASSERT (WEXITSTATUS (77 << 8) == 77); + + /* Ideally the exit status is 77, but it might be 0 with older GLib */ + if (wait_status != 0) + g_assert_cmphex (wait_status, ==, (77 << 8)); + } +} + +static void +test_successes (void) +{ + static const char * const successes[] = + { + "messages", + "pass", + "summary", + }; + g_autoptr(GError) error = NULL; + g_autofree char *self = NULL; + g_autofree char *dir = NULL; + g_autofree char *exe = NULL; + gsize i; + + self = glnx_readlinkat_malloc (-1, "/proc/self/exe", NULL, &error); + g_assert_no_error (error); + + dir = g_path_get_dirname (self); + exe = g_build_filename (dir, "testing-helper", NULL); + + for (i = 0; i < G_N_ELEMENTS (successes); i++) + { + g_autofree char *out = NULL; + g_autofree char *err = NULL; + int wait_status = -1; + const char *argv[] = { NULL, NULL, NULL, NULL }; + char *line; + char *saveptr = NULL; + + argv[0] = exe; + argv[1] = successes[i]; + argv[2] = GTEST_TAP_OR_VERBOSE; + g_test_message ("%s %s %s...", exe, successes[i], GTEST_TAP_OR_VERBOSE); + + g_spawn_sync (NULL, /* cwd */ + (char **) argv, + NULL, /* envp */ + G_SPAWN_DEFAULT, + NULL, /* child setup */ + NULL, /* user data */ + &out, + &err, + &wait_status, + &error); + g_assert_no_error (error); + + for (line = strtok_r (out, "\n", &saveptr); + line != NULL; + line = strtok_r (NULL, "\n", &saveptr)) + g_test_message ("stdout: %s", line); + + saveptr = NULL; + + for (line = strtok_r (err, "\n", &saveptr); + line != NULL; + line = strtok_r (NULL, "\n", &saveptr)) + g_test_message ("stderr: %s", line); + + g_test_message ("wait status: 0x%x", wait_status); + + G_STATIC_ASSERT (WIFEXITED (0)); + G_STATIC_ASSERT (WEXITSTATUS (0) == 0); + g_assert_cmphex (wait_status, ==, 0); + } +} + +int +main (int argc, char **argv) +{ + g_test_init (&argc, &argv, NULL); + g_test_add_func ("/assertions", test_assertions); + g_test_add_func ("/assertion_failures", test_assertion_failures); + g_test_add_func ("/failures", test_failures); + g_test_add_func ("/skips", test_skips); + g_test_add_func ("/successes", test_successes); + return g_test_run(); +} diff --git a/subprojects/libglnx/tests/testing-helper.c b/subprojects/libglnx/tests/testing-helper.c new file mode 100644 index 0000000..0886678 --- /dev/null +++ b/subprojects/libglnx/tests/testing-helper.c @@ -0,0 +1,342 @@ +/* + * Based on glib/tests/testing-helper.c from GLib + * + * Copyright 2018-2022 Collabora Ltd. + * Copyright 2019 Руслан Ижбулатов + * Copyright 2018-2022 Endless OS Foundation LLC + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General + * Public License along with this library; if not, see + * . + */ + +#include "libglnx-config.h" +#include "libglnx.h" + +#include +#include +#include +#include +#include +#include + +static const char *null = NULL; +static const char *nonnull = "not null"; + +static void +test_pass (void) +{ +} + +static void +test_messages (void) +{ + g_test_message ("This message has multiple lines.\n" + "In older GLib, it would corrupt TAP output.\n" + "That's why libglnx provides a wrapper.\n"); +} + +static void +test_assertion_failure_true (void) +{ + g_assert_true (null != NULL); +} + +static void +test_assertion_failure_false (void) +{ + g_assert_false (null == NULL); +} + +static void +test_assertion_failure_nonnull (void) +{ + g_assert_nonnull (null); +} + +static void +test_assertion_failure_null (void) +{ + g_assert_null (nonnull); +} + +static void +test_assertion_failure_mem_null_nonnull (void) +{ + g_assert_cmpmem (null, 0, nonnull, strlen (nonnull)); +} + +static void +test_assertion_failure_mem_nonnull_null (void) +{ + g_assert_cmpmem (nonnull, strlen (nonnull), null, 0); +} + +static void +test_assertion_failure_mem_len (void) +{ + g_assert_cmpmem (nonnull, strlen (nonnull), nonnull, 0); +} + +static void +test_assertion_failure_mem_cmp (void) +{ + g_assert_cmpmem (nonnull, 4, nonnull + 4, 4); +} + +static void +test_assertion_failure_cmpfloat_with_epsilon (void) +{ + g_assert_cmpfloat_with_epsilon (1.0, 1.5, 0.001); +} + +static void +test_assertion_failure_cmpvariant (void) +{ + g_autoptr(GVariant) a = g_variant_ref_sink (g_variant_new ("i", 42)); + g_autoptr(GVariant) b = g_variant_ref_sink (g_variant_new ("u", 42)); + + g_assert_cmpvariant (a, b); +} + +static void +test_assertion_failure_errno (void) +{ + g_assert_no_errno (mkdir ("/", 0755)); +} + +static void +test_assertion_failure_cmpstrv_null_nonnull (void) +{ + const char * const b[] = { NULL }; + + g_assert_cmpstrv (NULL, b); +} + +static void +test_assertion_failure_cmpstrv_nonnull_null (void) +{ + const char * const a[] = { NULL }; + + g_assert_cmpstrv (a, NULL); +} + +static void +test_assertion_failure_cmpstrv_len (void) +{ + const char * const a[] = { "one", NULL }; + const char * const b[] = { NULL }; + + g_assert_cmpstrv (a, b); +} + +static void +test_assertion_failure_cmpstrv_cmp (void) +{ + const char * const a[] = { "one", "two", NULL }; + const char * const b[] = { "one", "three", NULL }; + + g_assert_cmpstrv (a, b); +} + +static void +test_skip (void) +{ + g_test_skip ("not enough tea"); +} + +static void +test_skip_printf (void) +{ + const char *beverage = "coffee"; + + g_test_skip_printf ("not enough %s", beverage); +} + +static void +test_fail (void) +{ + g_test_fail (); +} + +static void +test_fail_printf (void) +{ + g_test_fail_printf ("this test intentionally left failing"); +} + +static void +test_incomplete (void) +{ + g_test_incomplete ("mind reading not implemented yet"); +} + +static void +test_incomplete_printf (void) +{ + const char *operation = "telekinesis"; + + g_test_incomplete_printf ("%s not implemented yet", operation); +} + +static void +test_summary (void) +{ + g_test_summary ("Tests that g_test_summary() works with TAP, by outputting a " + "known summary message in testing-helper, and checking for " + "it in the TAP output later."); +} + +int +main (int argc, + char *argv[]) +{ + char *argv1; + + setlocale (LC_ALL, ""); + +#ifdef G_OS_WIN32 + /* Windows opens std streams in text mode, with \r\n EOLs. + * Sometimes it's easier to force a switch to binary mode than + * to account for extra \r in testcases. + */ + setmode (fileno (stdout), O_BINARY); +#endif + + g_return_val_if_fail (argc > 1, 1); + argv1 = argv[1]; + + if (argc > 2) + memmove (&argv[1], &argv[2], (argc - 2) * sizeof (char *)); + + argc -= 1; + argv[argc] = NULL; + + if (g_strcmp0 (argv1, "init-null-argv0") == 0) + { + int test_argc = 0; + char *test_argva[1] = { NULL }; + char **test_argv = test_argva; + + /* Test that `g_test_init()` can handle being called with an empty argv + * and argc == 0. While this isn’t recommended, it is possible for another + * process to use execve() to call a gtest process this way, so we’d + * better handle it gracefully. + * + * This test can’t be run after `g_test_init()` has been called normally, + * as it isn’t allowed to be called more than once in a process. */ + g_test_init (&test_argc, &test_argv, NULL); + + return 0; + } + + g_test_init (&argc, &argv, NULL); + g_test_disable_crash_reporting (); +#if GLIB_CHECK_VERSION(2, 38, 0) + g_test_set_nonfatal_assertions (); +#endif + + if (g_strcmp0 (argv1, "pass") == 0) + { + g_test_add_func ("/pass", test_pass); + } + else if (g_strcmp0 (argv1, "messages") == 0) + { + g_test_add_func ("/messages", test_messages); + } + else if (g_strcmp0 (argv1, "skip") == 0) + { + g_test_add_func ("/skip", test_skip); + } + else if (g_strcmp0 (argv1, "skip-printf") == 0) + { + g_test_add_func ("/skip-printf", test_skip_printf); + } + else if (g_strcmp0 (argv1, "incomplete") == 0) + { + g_test_add_func ("/incomplete", test_incomplete); + } + else if (g_strcmp0 (argv1, "incomplete-printf") == 0) + { + g_test_add_func ("/incomplete-printf", test_incomplete_printf); + } + else if (g_strcmp0 (argv1, "fail") == 0) + { + g_test_add_func ("/fail", test_fail); + } + else if (g_strcmp0 (argv1, "fail-printf") == 0) + { + g_test_add_func ("/fail-printf", test_fail_printf); + } + else if (g_strcmp0 (argv1, "all-non-failures") == 0) + { + g_test_add_func ("/pass", test_pass); + g_test_add_func ("/skip", test_skip); + g_test_add_func ("/incomplete", test_incomplete); + } + else if (g_strcmp0 (argv1, "all") == 0) + { + g_test_add_func ("/pass", test_pass); + g_test_add_func ("/skip", test_skip); + g_test_add_func ("/incomplete", test_incomplete); + g_test_add_func ("/fail", test_fail); + } + else if (g_strcmp0 (argv1, "skip-options") == 0) + { + /* The caller is expected to skip some of these with + * -p/-r, -s/-x and/or --GTestSkipCount */ + g_test_add_func ("/a", test_pass); + g_test_add_func ("/b", test_pass); + g_test_add_func ("/b/a", test_pass); + g_test_add_func ("/b/b", test_pass); + g_test_add_func ("/b/b/a", test_pass); + g_test_add_func ("/prefix/a", test_pass); + g_test_add_func ("/prefix/b/b", test_pass); + g_test_add_func ("/prefix-long/a", test_pass); + g_test_add_func ("/c/a", test_pass); + g_test_add_func ("/d/a", test_pass); + } + else if (g_strcmp0 (argv1, "summary") == 0) + { + g_test_add_func ("/summary", test_summary); + } + else if (g_strcmp0 (argv1, "assertion-failures") == 0) + { + /* Use -p to select a specific one of these */ +#define T(x) g_test_add_func ("/assertion-failure/" #x, test_assertion_failure_ ## x) + T (true); + T (false); + T (nonnull); + T (null); + T (mem_null_nonnull); + T (mem_nonnull_null); + T (mem_len); + T (mem_cmp); + T (cmpfloat_with_epsilon); + T (cmpvariant); + T (errno); + T (cmpstrv_null_nonnull); + T (cmpstrv_nonnull_null); + T (cmpstrv_len); + T (cmpstrv_cmp); +#undef T + } + else + { + g_assert_not_reached (); + } + + return g_test_run (); +} diff --git a/subprojects/libglnx/tests/use-as-subproject/.gitignore b/subprojects/libglnx/tests/use-as-subproject/.gitignore new file mode 100644 index 0000000..ec6149f --- /dev/null +++ b/subprojects/libglnx/tests/use-as-subproject/.gitignore @@ -0,0 +1,5 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.0-or-later + +/_build/ +/subprojects/ diff --git a/subprojects/libglnx/tests/use-as-subproject/README b/subprojects/libglnx/tests/use-as-subproject/README new file mode 100644 index 0000000..cc43a09 --- /dev/null +++ b/subprojects/libglnx/tests/use-as-subproject/README @@ -0,0 +1,8 @@ +This is a simple example of a project that uses libglnx as a subproject. +The intention is that if this project can successfully build and use libglnx +as a subproject, then so could Flatpak. + + diff --git a/subprojects/libglnx/tests/use-as-subproject/config.h b/subprojects/libglnx/tests/use-as-subproject/config.h new file mode 100644 index 0000000..dffc647 --- /dev/null +++ b/subprojects/libglnx/tests/use-as-subproject/config.h @@ -0,0 +1,6 @@ +/* + * Copyright 2022 Collabora Ltd. + * SPDX-License-Identifier: LGPL-2.0-or-later + */ + +#error Should not use superproject config.h to compile libglnx diff --git a/subprojects/libglnx/tests/use-as-subproject/dummy-config.h.in b/subprojects/libglnx/tests/use-as-subproject/dummy-config.h.in new file mode 100644 index 0000000..bffb52a --- /dev/null +++ b/subprojects/libglnx/tests/use-as-subproject/dummy-config.h.in @@ -0,0 +1,6 @@ +/* + * Copyright 2022 Collabora Ltd. + * SPDX-License-Identifier: LGPL-2.0-or-later + */ + +#error Should not use superproject generated config.h to compile libglnx diff --git a/subprojects/libglnx/tests/use-as-subproject/meson.build b/subprojects/libglnx/tests/use-as-subproject/meson.build new file mode 100644 index 0000000..59fd736 --- /dev/null +++ b/subprojects/libglnx/tests/use-as-subproject/meson.build @@ -0,0 +1,48 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.0-or-later + +project( + 'use-libglnx-as-subproject', + 'c', + default_options : [ + 'c_std=gnu99', + 'warning_level=3', + ], + version : '0', + meson_version : '>=0.49.0', +) + +configure_file( + copy : true, + input : 'dummy-config.h.in', + output : 'config.h', +) + +glib_dep = dependency('glib-2.0') + +libglnx = subproject('libglnx') +libglnx_dep = libglnx.get_variable('libglnx_dep') +libglnx_testlib_dep = libglnx.get_variable('libglnx_testlib_dep') + +# This executable is compiled at warning_level=3 by default +executable( + 'trivial', + 'trivial.c', + dependencies : [glib_dep], +) + +# These can't be compiled at warning_level=3 because they use non-ISO +# compiler features in the libglnx headers, which would be warnings or +# errors with -Wpedantic +executable( + 'use-libglnx', + 'use-libglnx.c', + dependencies : [libglnx_dep, glib_dep], + override_options : ['warning_level=2'], +) +executable( + 'use-testlib', + 'use-testlib.c', + dependencies : [libglnx_testlib_dep, glib_dep], + override_options : ['warning_level=2'], +) diff --git a/subprojects/libglnx/tests/use-as-subproject/trivial.c b/subprojects/libglnx/tests/use-as-subproject/trivial.c new file mode 100644 index 0000000..4b364f1 --- /dev/null +++ b/subprojects/libglnx/tests/use-as-subproject/trivial.c @@ -0,0 +1,15 @@ +/* + * Copyright 2022 Collabora Ltd. + * SPDX-License-Identifier: LGPL-2.0-or-later + */ + +#include + +int +main (void) +{ + GError *error = NULL; + + g_clear_error (&error); + return 0; +} diff --git a/subprojects/libglnx/tests/use-as-subproject/use-libglnx.c b/subprojects/libglnx/tests/use-as-subproject/use-libglnx.c new file mode 100644 index 0000000..0e14db0 --- /dev/null +++ b/subprojects/libglnx/tests/use-as-subproject/use-libglnx.c @@ -0,0 +1,16 @@ +/* + * Copyright 2022 Collabora Ltd. + * SPDX-License-Identifier: LGPL-2.0-or-later + */ + +#include + +int +main (void) +{ + GError *error = NULL; + + glnx_throw (&error, "whatever"); + g_clear_error (&error); + return 0; +} diff --git a/subprojects/libglnx/tests/use-as-subproject/use-testlib.c b/subprojects/libglnx/tests/use-as-subproject/use-testlib.c new file mode 100644 index 0000000..9a955b4 --- /dev/null +++ b/subprojects/libglnx/tests/use-as-subproject/use-testlib.c @@ -0,0 +1,17 @@ +/* + * Copyright 2022 Collabora Ltd. + * SPDX-License-Identifier: LGPL-2.0-or-later + */ + +#include +#include + +int +main (void) +{ + _GLNX_TEST_DECLARE_ERROR (local_error, error); + + glnx_throw (error, "Whatever"); + g_clear_error (&local_error); + return 0; +} diff --git a/subprojects/variant-schema-compiler/.gitignore b/subprojects/variant-schema-compiler/.gitignore new file mode 100644 index 0000000..9bd25dc --- /dev/null +++ b/subprojects/variant-schema-compiler/.gitignore @@ -0,0 +1,6 @@ +ostree_test +ostree_test.h +sample +sample.h +performance +performance.h diff --git a/subprojects/variant-schema-compiler/COPYING b/subprojects/variant-schema-compiler/COPYING new file mode 100644 index 0000000..6bc6a2b --- /dev/null +++ b/subprojects/variant-schema-compiler/COPYING @@ -0,0 +1,23 @@ +The variant-schema compiler, as well as the generated code is covered +by the MIT license: + +# Copyright © 2020-2021 Red Hat +# +# Permission is hereby granted, free of charge, to any person obtaining a +# copy of this software and associated documentation files (the "Software"), +# to deal in the Software without restriction, including without limitation +# the rights to use, copy, modify, merge, publish, distribute, sublicense, +# and/or sell copies of the Software, and to permit persons to whom the +# Software is furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice (including the next +# paragraph) shall be included in all copies or substantial portions of the +# Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +# IN THE SOFTWARE. diff --git a/subprojects/variant-schema-compiler/Makefile b/subprojects/variant-schema-compiler/Makefile new file mode 100644 index 0000000..418b190 --- /dev/null +++ b/subprojects/variant-schema-compiler/Makefile @@ -0,0 +1,41 @@ +PREFIX = /usr/local +CC ?= gcc +CFLAGS ?= -g -Wall +PKG_CONFIG ?= pkg-config +GLIB_CFLAGS = `$(PKG_CONFIG) --cflags glib-2.0` +GLIB_LIBS = `$(PKG_CONFIG) --libs glib-2.0` + +all: sample ostree_test performance selftests + +sample.h: variant-schema-compiler sample.gv + ./variant-schema-compiler --internal-validation --outfile sample-impl.h --outfile-header=sample.h --prefix=sample sample.gv + +sample: sample.c sample.h + $(CC) $(GLIB_CFLAGS) $(CFLAGS) -o sample sample.c $(GLIB_LIBS) + +performance.h: variant-schema-compiler performance.gv + ./variant-schema-compiler --outfile performance.h --prefix=performance performance.gv + +performance: performance.c performance.h + $(CC) $(GLIB_CFLAGS) $(CFLAGS) -O2 -o performance performance.c $(GLIB_LIBS) + +ostree_test.h: variant-schema-compiler ostree.gv + ./variant-schema-compiler --outfile ostree_test.h --prefix=ot ostree.gv + +ostree_test: ostree_test.c ostree_test.h + $(CC) $(GLIB_CFLAGS) $(CFLAGS) -o ostree_test ostree_test.c $(GLIB_LIBS) + +selftests: selftests.c ostree_test.h + $(CC) $(GLIB_CFLAGS) $(CFLAGS) -o selftests -O2 selftests.c $(GLIB_LIBS) + +clean: + rm -f sample.h sample performance.h performance ostree_test.h ostree_test + +.PHONY: install +install: variant-schema-compiler + mkdir -p $(DESTDIR)$(PREFIX)/bin + install -T $< $(DESTDIR)$(PREFIX)/bin/variant-schema-compiler + +.PHONY: uninstall +uninstall: + rm -f $(DESTDIR)$(PREFIX)/bin/variant-schema-compiler diff --git a/subprojects/variant-schema-compiler/README.md b/subprojects/variant-schema-compiler/README.md new file mode 100644 index 0000000..3b93959 --- /dev/null +++ b/subprojects/variant-schema-compiler/README.md @@ -0,0 +1,104 @@ +variant-schema-compiler takes a schema describing a set of GVariant types and generates C code to efficiently access variants in these formats in a typesafe way. + +A simple example is `gadget.gv`: +``` +type Gadget { + name: string; + size: { + width: int32; + height: int32; + }; + array: []int32; + dict: [string]int32; +}; +``` + +You compile this like: +``` +variant-schema-compiler --prefix myapp --outfile gadget.h gadget.gv +``` + +Which will generate a header file `gadget.h` that you can include in your code. + +This will define a structure MyappGadgetRef which you can create from a GVariant with +`myapp_gadget_from_gvariant()` or directly from raw memory using `myapp_gadget_from_bytes()` or +`myapp_gadget_from_data()`. You can then use the generated accessor functions to get the fields +of the variant. + +As an example, here is a sample of accessors defined by the above: +``` +const char *myapp_gadget_get_name (MyappGadgetRef v); +MyappGadgetSizeRef myapp_gadget_get_size (MyappGadgetRef v); +MyappArrayofint32Ref myapp_gadget_get_array (MyappGadgetRef v); +const gint32 *myapp_gadget_peek_array (MyappGadgetRef v, + gsize *len); +gboolean myapp_gadget_dict_lookup (MyappGadgetDictRef v, + const char * key, + gint32 *out); +``` + +Using such accessors is much faster than working with the GVariant API for a number of reasons: + * Getting a child item doesn't allocate a new GVariant object (no generated accessor API allocates memory). + * No constant ref:ing and unref:ing of GVariants. + * All the accessors are inlined and coded to be very efficient + * Less validation than the generic GVariant APIs. + +Additionally the APIs are just nicer to use due to using named fields of tuples/structs instead of indexes. + +Of course there are some disadvantages, for instance: + * Only pre-declared types are supported. + * Less validation means you should not use it for untrusted data. + * Lack of ownership (ref/unref) means you have to make sure memory ownership is correct in other ways. + +However, in many usecases this is not a problem. + +Note that the main binding object (the XxxRef:s) are value types (internally they are a basepointer + size tuple) and +not pointers. Also, there is no reference counting, so it is up to the caller to ensure that the memory referenced by +the variant ref is kept alive. + +Some GVariant types are "fixed size", which means that all instances of these types have a well known size. +GVariant encodes such data in a way that is very efficient to access, (with padding as needed, etc). +For such types the compiler also generates a regular struct, which makes it very easy to use these. + +For example: +``` +type Fixed { + small: byte; + large: uint32; + medium: int16; + other: { + huge: double; + }; +}; + +type User { + one: Fixed; + many: []Fixed; +}; +``` + +Will generate: (among other things) +``` +typedef struct { + double huge; +} MyappFixedOther; + +typedef struct { + guint8 small; + guchar _padding1[3]; + guint32 large; + gint16 medium; + guchar _padding2[6]; + MyappFixedOther other; +} MyappFixed; + +MyappFixed *myapp_fixed_peek (MyappFixedRef v); +const MyappFixed *myapp_user_peek_one (MyappUserRef v); +const MyappFixed *myapp_user_peek_many (MyappUserRef v, gsize *len); +``` + +Here are some more interesting features: + * field endianness attributes which are auto-applied by the getters(). + * Inline naming of subtypes. + * Automatically generated formatters/printers. + * Generation of gvariant typestrings and field index defines for the types diff --git a/subprojects/variant-schema-compiler/TODO.md b/subprojects/variant-schema-compiler/TODO.md new file mode 100644 index 0000000..7829dab --- /dev/null +++ b/subprojects/variant-schema-compiler/TODO.md @@ -0,0 +1,6 @@ +TODO: + * Add more tests + * More attributes: untrusted + +Maybe TODO: + * Add more optional checking (out of bounds, validity, etc) diff --git a/subprojects/variant-schema-compiler/ostree.gv b/subprojects/variant-schema-compiler/ostree.gv new file mode 100644 index 0000000..c2b9c51 --- /dev/null +++ b/subprojects/variant-schema-compiler/ostree.gv @@ -0,0 +1,100 @@ +/* Commonly used, give a name */ +type Metadata [string] variant; +type Checksum []byte; + +type Summary { + ref_map: [string] 'SummaryInfo { + size: uint64; + checksum: Checksum; + metadata: Metadata; + }; + metadata: Metadata; +}; + +type Commit { + metadata: Metadata; + parent: Checksum; + related: [] 'Related { + ref: string; + commit: Checksum; + }; + subject: string; + body: string; + timestamp: uint64; + root_contents: Checksum; + root_metadata: Checksum; +}; + +type TreeMeta { + files: [] 'TreeFile { + name: string; + checksum: Checksum; + }; + dirs: [] 'TreeDir { + name: string; + tree_checksum: Checksum; + meta_checksum: Checksum; + }; +}; + +type Xattr { + name: []byte; + value: []byte; +}; + +type DirMeta { + uid: bigendian uint32; + gid: bigendian uint32; + mode: bigendian uint32; + xattrs: [] Xattr; +}; + +type FileMeta { + uid: bigendian uint32; + gid: bigendian uint32; + mode: bigendian uint32; + xattrs: [] Xattr; +}; + +type DeltaFallback { + objtype: byte; + checksum: Checksum; + compressed_size: uint64; /* non-canonical endian */ + uncompressed_size: uint64; /* non-canonical endian */ +}; + +type DeltaMetaEntry { + version: uint32 ; /* non canonical endian */ + checksum: Checksum; + size: uint64; /* non-canonical endian */ + usize: uint64; /* non-canonical endian */ + objects: [] 'DeltaObject { + objtype: byte; + object: Checksum; + }; +}; + +type DeltaSuperblock { + metadata: Metadata; + timestamp: bigendian uint64; + from: Checksum; + to: Checksum; + commit: Commit; + apply_before: [] 'DeltaName { + from: Checksum; + to: Checksum; + }; + parts: []DeltaMetaEntry; + fallbacks: []DeltaFallback; +}; + +type DeltaPayload { + modes: [] 'DeltaMode { + uid: uint32; + gid: uint32; + mode: uint32; + }; + xattrs: [][]Xattr; + raw_data: []byte; + operations: []byte; +}; diff --git a/subprojects/variant-schema-compiler/ostree_test.c b/subprojects/variant-schema-compiler/ostree_test.c new file mode 100644 index 0000000..68a860e --- /dev/null +++ b/subprojects/variant-schema-compiler/ostree_test.c @@ -0,0 +1,55 @@ +#include "ostree_test.h" + +static void +handle (char *filename) +{ + g_autoptr(GError) error = NULL; + g_autofree char *contents = NULL; + gsize size; + + if (!g_file_get_contents (filename, &contents, &size, &error)) + { + g_print ("Failed to load %s: %s\n", filename, error->message); + return; + } + + if (g_str_has_suffix (filename, ".commit")) + { + OtCommitRef commit = ot_commit_from_data (contents, size); + g_autofree char *s = ot_commit_print (commit, TRUE); + g_print ("%s: %s\n", filename, s); + } + else if (g_str_has_suffix (filename, ".dirtree")) + { + OtTreeMetaRef tree = ot_tree_meta_from_data (contents, size); + g_autofree char *s = ot_tree_meta_print (tree, TRUE); + g_print ("%s: %s\n", filename, s); + } + else if (g_str_has_suffix (filename, ".dirmeta")) + { + OtDirMetaRef dir = ot_dir_meta_from_data (contents, size); + g_autofree char *s = ot_dir_meta_print (dir, TRUE); + g_print ("%s: %s\n", filename, s); + } + else if (g_str_has_suffix (filename, "summary")) + { + OtSummaryRef summary = ot_summary_from_data (contents, size); + g_autofree char *s = ot_summary_print (summary, TRUE); + g_print ("%s: %s\n", filename, s); + } + else + { + g_print ("Unknown type %s\n", filename); + } +} + + +int +main (int argc, + char *argv[]) +{ + for (int i = 1; i < argc; i++) + handle (argv[i]); + + return 0; +} diff --git a/subprojects/variant-schema-compiler/performance.c b/subprojects/variant-schema-compiler/performance.c new file mode 100644 index 0000000..0f424db --- /dev/null +++ b/subprojects/variant-schema-compiler/performance.c @@ -0,0 +1,127 @@ +#include "performance.h" + +gint32 +sum_gvariant (GVariant *v) +{ + guint32 sum; + gint16 a; + gint32 b; + const char *c; + GVariant *list; + guchar d; + guint16 tuple_a; + guchar tuple_b; + gsize len, i; + gint32 list_a; + guint16 list_b; + + g_variant_get (v, "(ni&s@a(iq)y(qy))", + &a, &b, &c, &list, &d, &tuple_a, &tuple_b); + sum = a + b + strlen(c) + d + tuple_a + tuple_b; + + len = g_variant_n_children (list); + for (i = 0; i < len; i++) + { + g_variant_get_child (list, i, "(iq)", &list_a, &list_b); + sum += list_a + list_b; + } + + return sum; +} + +gint32 +sum_generated (PerformanceContainerRef v) +{ + guint32 sum; + PerformanceTupleRef tuple; + PerformanceListRef list; + PerformanceItemRef item; + gsize len, i; + + tuple = performance_container_get_tuple (v); + sum = performance_container_get_a(v) + + performance_container_get_b(v) + + strlen(performance_container_get_c(v)) + + performance_container_get_d(v) + + performance_tuple_get_a (tuple) + + performance_tuple_get_b (tuple); + + list = performance_container_get_list (v); + len = performance_list_get_length (list); + for (i = 0; i < len; i++) + { + item = performance_list_get_at (list, i); + sum += performance_item_get_a (item) + performance_item_get_b (item); + } + + return sum; +} + + +int +main (int argc, + char *argv[]) +{ + GVariant *v; + gconstpointer serialized_data; + int i, count = 100000; + guint64 total; + GTimer *timer = g_timer_new (); + PerformanceContainerRef c; + +#define DATA "(int16 17, 32, 'foobar', [(44, uint16 12), (48, uint16 14), (99, uint16 100)], byte 128, (uint16 4, byte 11))" + + v = g_variant_new_parsed (DATA); + g_assert (g_variant_type_equal (g_variant_get_type (v), PERFORMANCE_CONTAINER_TYPEFORMAT)); + + /* Ensure data is serialized */ + serialized_data = g_variant_get_data (v); + + /* Warmup */ + total = 0; + for (i = 0; i < 10; i++) + total += sum_gvariant (v); + g_assert (total == 10 * 515); + + total = 0; + g_timer_start (timer); + for (i = 0; i < count; i++) + { + total += sum_gvariant (v); + total += sum_gvariant (v); + total += sum_gvariant (v); + total += sum_gvariant (v); + total += sum_gvariant (v); + } + g_timer_stop (timer); + g_assert (total == 5 * count * 515); + + g_print ("GVariant performance: %.1f kiloiterations per second\n", (count/1000.0)/g_timer_elapsed (timer, NULL)); + + c = performance_container_from_gvariant (v); + + /* Warmup */ + total = 0; + for (i = 0; i < 10; i++) + total += sum_generated (c); + g_assert (total == 10 * 515); + + g_timer_reset (timer); + + total = 0; + g_timer_start (timer); + for (i = 0; i < count; i++) + { + total += sum_generated (c); + total += sum_generated (c); + total += sum_generated (c); + total += sum_generated (c); + total += sum_generated (c); + } + g_timer_stop (timer); + g_assert (total == 5 * count * 515); + + g_print ("Generated performance: %.1f kiloiterations per second\n", (count/1000.0)/g_timer_elapsed (timer, NULL)); + + return 0; +} diff --git a/subprojects/variant-schema-compiler/performance.gv b/subprojects/variant-schema-compiler/performance.gv new file mode 100644 index 0000000..15eb392 --- /dev/null +++ b/subprojects/variant-schema-compiler/performance.gv @@ -0,0 +1,14 @@ +type Container { + a: int16; + b: int32; + c: string; + list: 'List [] 'Item { + a: int32; + b: uint16; + }; + d: byte; + tuple : 'Tuple { + a: uint16; + b: byte; + }; +}; diff --git a/subprojects/variant-schema-compiler/sample.c b/subprojects/variant-schema-compiler/sample.c new file mode 100644 index 0000000..1d5dcd8 --- /dev/null +++ b/subprojects/variant-schema-compiler/sample.c @@ -0,0 +1,122 @@ +#define SAMPLE_DEEP_VARIANT_FORMAT +#include "sample.h" +#include "sample-impl.h" + +void +test_sample_variant (GVariant *v) +{ + SampleTestRef t; + SampleVarRef var; + GVariant *varv; + const char *res; + gint32 resi; + SampleVariantRef resv; + + g_print ("sample type: %s\n", g_variant_get_type_string (v)); + g_print ("sample: %s\n", g_variant_print (v, FALSE)); + g_print ("sample with types: %s\n", g_variant_print (v, TRUE)); + + g_assert (g_variant_type_equal (g_variant_get_type(v), SAMPLE_TEST_TYPEFORMAT)); + + t = sample_test_from_gvariant (v); + g_print ("custom: %s\n", sample_test_print (t, FALSE)); + g_print ("custom with types: %s\n", sample_test_print (t, TRUE)); + + g_assert_cmpstr (g_variant_print (v, FALSE), ==, sample_test_print (t, FALSE)); + g_assert_cmpstr (g_variant_print (v, TRUE), ==, sample_test_print (t, TRUE)); + + var = sample_var_from_variant(sample_test_get_v(t)); + varv = g_variant_get_variant (g_variant_get_child_value (v, SAMPLE_TEST_INDEXOF_V)); + g_assert_cmpstr (g_variant_print (varv, TRUE), ==, sample_var_print (var, TRUE)); + + SampleTestD1Ref d1 = sample_test_get_d1(t); + GVariant *v2 = sample_test_d1_dup_to_gvariant(d1); + g_assert_cmpstr (g_variant_print (v2, TRUE), ==, sample_test_d1_print(d1, FALSE)); + + g_assert (!sample_test_d1_lookup(d1, 0,NULL , &resi)); + g_assert (sample_test_d1_lookup(d1, 1,NULL , &resi)); + g_assert_cmpint (resi, ==, 2); + g_assert (!sample_test_d1_lookup(d1, 2,NULL , &resi)); + g_assert (sample_test_d1_lookup(d1, 3,NULL , &resi)); + g_assert_cmpint (resi, ==, 4); + g_assert (!sample_test_d1_lookup(d1, 4,NULL , &resi)); + g_assert (sample_test_d1_lookup(d1, 5,NULL , &resi)); + g_assert_cmpint (resi, ==, 6); + g_assert (!sample_test_d1_lookup(d1, 6,NULL , &resi)); + + SampleD1sRef d1s = sample_test_get_d1s(t); + GVariant *v2s = sample_d1s_dup_to_gvariant(d1s); + g_assert_cmpstr (g_variant_print (v2s, TRUE), ==, sample_d1s_print(d1s, FALSE)); + + g_assert (!sample_d1s_lookup(d1s, 0,NULL , &resi)); + g_assert (sample_d1s_lookup(d1s, 1,NULL , &resi)); + g_assert_cmpint (resi, ==, 2); + g_assert (!sample_d1s_lookup(d1s, 2,NULL , &resi)); + g_assert (sample_d1s_lookup(d1s, 3,NULL , &resi)); + g_assert_cmpint (resi, ==, 4); + g_assert (!sample_d1s_lookup(d1s, 4,NULL , &resi)); + g_assert (sample_d1s_lookup(d1s, 5,NULL , &resi)); + g_assert_cmpint (resi, ==, 6); + g_assert (!sample_d1s_lookup(d1s, 6,NULL , &resi)); + + SampleD2Ref d2 = sample_test_get_d2(t); + GVariant *v3 = sample_d2_dup_to_gvariant(d2); + g_assert_cmpstr (g_variant_print (v3, TRUE), ==, sample_d2_print(d2, FALSE)); + + g_assert (sample_d2_lookup(d2, 1,NULL , &res)); + g_assert_cmpstr (res, ==, "a"); + g_assert (sample_d2_lookup(d2, 3,NULL , &res)); + g_assert_cmpstr (res, ==, "b"); + g_assert (!sample_d2_lookup(d2, 2,NULL , &res)); + + SampleMetadataRef meta = sample_test_get_meta(t); + GVariant *meta_v = sample_metadata_dup_to_gvariant(meta); + + g_assert (g_variant_type_equal (g_variant_get_type(meta_v), SAMPLE_METADATA_TYPEFORMAT)); + g_assert_cmpstr (g_variant_print (meta_v, FALSE), ==, sample_metadata_print (meta, FALSE)); + g_assert_cmpstr (g_variant_print (meta_v, TRUE), ==, sample_metadata_print (meta, TRUE)); + + g_assert (sample_metadata_lookup(meta, "bar",NULL , &resv)); + g_assert_cmpstr ("<1>", ==, sample_variant_print (resv, TRUE)); + g_assert (sample_metadata_lookup(meta, "foo",NULL , &resv)); + g_assert_cmpstr ("<'s'>", ==, sample_variant_print (resv, TRUE)); + g_assert (!sample_metadata_lookup(meta, "missing",NULL , &resv)); + + SampleSortedMetadataRef metas = sample_test_get_metas(t); + GVariant *metas_v = sample_sorted_metadata_dup_to_gvariant(metas); + + g_assert (g_variant_type_equal (g_variant_get_type(metas_v), SAMPLE_SORTED_METADATA_TYPEFORMAT)); + g_assert_cmpstr (g_variant_print (metas_v, FALSE), ==, sample_sorted_metadata_print (metas, FALSE)); + g_assert_cmpstr (g_variant_print (metas_v, TRUE), ==, sample_sorted_metadata_print (metas, TRUE)); + + g_assert (!sample_sorted_metadata_lookup(metas, "aaa",NULL , &resv)); + g_assert (sample_sorted_metadata_lookup(metas, "bar",NULL , &resv)); + g_assert_cmpstr ("<1>", ==, sample_variant_print (resv, TRUE)); + g_assert (!sample_sorted_metadata_lookup(metas, "ccc",NULL , &resv)); + g_assert (sample_sorted_metadata_lookup(metas, "foo",NULL , &resv)); + g_assert_cmpstr ("<'s'>", ==, sample_variant_print (resv, TRUE)); + g_assert (!sample_sorted_metadata_lookup(metas, "dddmissing",NULL , &resv)); +} + +int +main (int argc, + char *argv[]) +{ + GVariant *v; + +#define DATA \ + "([32, 22], '%s', uint16 16, " \ + "('s2', 322), ('ssss2', 3222), (323,), 324, " \ + "<(int16 67, 1023, byte 3, (uint16 5, byte 6))>, " \ + "[(int16 68, 1025, byte 42, (uint16 7, byte 8)), (int16 69, 1026, byte 42, (uint16 9, byte 11))]" \ + ", {1:2, 3:4, 5:6}, {1:2, 3:4, 5:6}, {'bar': <1>, 'foo': <'s'>}, {'bar': <1>, 'foo': <'s'>}, {1:'a', 3:'b'}, " \ + "just (objectpath '/', signature 's', true, handle 3, int64 88, uint64 89, 3.1415 )" \ + ")" + + v = g_variant_new_parsed (g_strdup_printf (DATA, "s")); + test_sample_variant(v); + + /* Try with larger offsets */ + v = g_variant_new_parsed (g_strdup_printf (DATA, "sxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx")); + test_sample_variant(v); +} diff --git a/subprojects/variant-schema-compiler/sample.gv b/subprojects/variant-schema-compiler/sample.gv new file mode 100644 index 0000000..dfc4045 --- /dev/null +++ b/subprojects/variant-schema-compiler/sample.gv @@ -0,0 +1,53 @@ +type Metadata [string] variant; +type SortedMetadata [sorted string] variant; + +type Var { + foo: int16; + bar: int32; + b: byte; + the_rest: { + gazonk: uint16; + b: byte; + }; +}; + +type Test { + foo: []int32; + s: string; + sh: uint16; + sub: 'Sub { + str: string; + bar: int32; + }; + subagain: Sub; + sub2: 'Sub2 { + bar: int32; + }; + bar: int32; + v: variant; + arr: []Var; + d1: [int32]int32; + d1s: 'D1s [sorted int32]int32; /* Sorted, so we can test binary search fixed lookup */ + meta: Metadata; + metas: SortedMetadata; + d2: 'D2 [int32]string; + optional: ? 'Optional { + op: objectpath; + s: signature; + b: boolean; + h: handle; + large: int64; + larger: uint64; + pi: double; + }; +}; + +type LotsOfDicts { + foo: [byte]int16; + foo2: [int16]{a: int32;}; +}; + +type Endian { + little: littleendian uint16; + big: bigendian int32; +}; diff --git a/subprojects/variant-schema-compiler/selftests.c b/subprojects/variant-schema-compiler/selftests.c new file mode 100644 index 0000000..b38061a --- /dev/null +++ b/subprojects/variant-schema-compiler/selftests.c @@ -0,0 +1,52 @@ +#include "ostree_test.h" + + +static guint +slow_get_offset_size (gsize size) +{ + if (size > G_MAXUINT16) + { + if (size > G_MAXUINT32) + return 8; + else + return 4; + } + else + { + if (size > G_MAXUINT8) + return 2; + else + return 1; + } +} + +int +main (int argc, + char *argv[]) +{ + g_print ("Validating ot_ref_get_offset_size up to G_MAXUINT32\n"); + for (gsize i = 1; i < G_MAXUINT32; i++) + { + guint res = ot_ref_get_offset_size (i); + if (res != slow_get_offset_size (i)) + { + g_print ("failed: ot_ref_get_offset_size (%"G_GSIZE_FORMAT") == %d, should be %d\n", i, res, slow_get_offset_size (i)); + exit (1); + } + } + +#if GLIB_SIZEOF_SIZE_T > 4 + g_print ("Validating ot_ref_get_offset_size up to 2*G_MAXUINT32\n"); + for (gsize i = (gsize)G_MAXUINT32; i < (gsize)G_MAXUINT32 * 2; i++) + { + guint res = ot_ref_get_offset_size (i); + if (res != slow_get_offset_size (i)) + { + g_print ("failed: ot_ref_get_offset_size (%"G_GSIZE_FORMAT") == %d, should be %d\n", i, res, slow_get_offset_size (i)); + exit (1); + } + } +#endif + + return 0; +} diff --git a/system-helper/Makefile.am.inc b/system-helper/Makefile.am.inc deleted file mode 100644 index 09ea63e..0000000 --- a/system-helper/Makefile.am.inc +++ /dev/null @@ -1,50 +0,0 @@ -if BUILD_SYSTEM_HELPER - -libexec_PROGRAMS += \ - flatpak-system-helper \ - $(NULL) - -dbussystemservicedir = $(datadir)/dbus-1/system-services -service_in_files += system-helper/org.freedesktop.Flatpak.SystemHelper.service.in -dbussystemservice_DATA = system-helper/org.freedesktop.Flatpak.SystemHelper.service - -dbusconfdir = $(DBUS_CONFIG_DIR) -dist_dbusconf_DATA = system-helper/org.freedesktop.Flatpak.SystemHelper.conf - -service_in_files += system-helper/flatpak-system-helper.service.in -systemdsystemunit_DATA += system-helper/flatpak-system-helper.service - -flatpak_system_helper_SOURCES = \ - system-helper/flatpak-system-helper.c \ - system-helper/flatpak-system-helper.h \ - $(NULL) - -flatpak_system_helper_LDADD = $(BASE_LIBS) $(OSTREE_LIBS) $(JSON_LIBS) $(POLKIT_LIBS) libflatpak-common.la libflatpak-common-base.la libglnx.la -flatpak_system_helper_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) $(OSTREE_CFLAGS) $(APPSTREAM_CFLAGS) $(SOUP_CFLAGS) $(JSON_CFLAGS) $(POLKIT_CFLAGS) -DFLATPAK_COMPILATION -DLIBEXECDIR=\"$(libexecdir)\" - -system-helper/org.freedesktop.Flatpak.rules: system-helper/org.freedesktop.Flatpak.rules.in - $(AM_V_GEN) $(SED) -e "s|\@privileged_group\@|$(PRIVILEGED_GROUP)|" $< > $@ - -polkit_rulesdir = $(datadir)/polkit-1/rules.d -polkit_rules_DATA = \ - system-helper/org.freedesktop.Flatpak.rules - -polkit_policydir = $(datadir)/polkit-1/actions -polkit_policy_DATA = \ - system-helper/org.freedesktop.Flatpak.policy - -%.policy: %.policy.in - $(AM_V_GEN) $(MSGFMT) --xml -d $(top_srcdir)/po --template $< -o $@ || cp $< $@ - -sysusers_DATA = system-helper/flatpak.conf - -%.conf: %.conf.in - $(AM_V_GEN) $(SED) \ - -e "s|\@SYSTEM_HELPER_USER\@|$(SYSTEM_HELPER_USER)|" \ - $< > $@ - -DISTCLEANFILES += system-helper/org.freedesktop.Flatpak.policy system-helper/org.freedesktop.Flatpak.rules system-helper/flatpak-system-helper.service system-helper/org.freedesktop.Flatpak.SystemHelper.service system-helper/flatpak.conf - -endif - -EXTRA_DIST += system-helper/org.freedesktop.Flatpak.policy.in system-helper/org.freedesktop.Flatpak.SystemHelper.conf system-helper/org.freedesktop.Flatpak.rules.in system-helper/org.freedesktop.Flatpak.SystemHelper.service.in system-helper/flatpak-system-helper.service.in system-helper/flatpak.conf.in diff --git a/system-helper/flatpak-system-helper.c b/system-helper/flatpak-system-helper.c index d637b1a..a58ab2c 100644 --- a/system-helper/flatpak-system-helper.c +++ b/system-helper/flatpak-system-helper.c @@ -34,6 +34,8 @@ #include #include +#include + #include "flatpak-dbus-generated.h" #include "flatpak-dir-private.h" #include "flatpak-error.h" @@ -144,6 +146,7 @@ ongoing_pull_free (OngoingPull *pull) close (pull->client_socket); close (pull->backend_exit_socket); + g_clear_object (&pull->cancellable); g_slice_free (OngoingPull, pull); } @@ -152,7 +155,7 @@ G_DEFINE_AUTOPTR_CLEANUP_FUNC (OngoingPull, ongoing_pull_free); static void skeleton_died_cb (gpointer data) { - g_debug ("skeleton finalized, exiting"); + g_info ("skeleton finalized, exiting"); g_main_loop_quit (main_loop); } @@ -161,7 +164,7 @@ unref_skeleton_in_timeout_cb (gpointer user_data) { static gboolean unreffed = FALSE; - g_debug ("unreffing helper main ref"); + g_info ("unreffing helper main ref"); if (!unreffed) { g_object_unref (helper); @@ -197,7 +200,7 @@ idle_timeout_cb (gpointer user_data) if (name_owner_id) { - g_debug ("Idle - unowning name"); + g_info ("Idle - unowning name"); unref_skeleton_in_timeout (); } return G_SOURCE_REMOVE; @@ -405,7 +408,7 @@ handle_deploy (FlatpakSystemHelper *object, g_autofree gchar *src_dir = NULL; g_autoptr(FlatpakDecomposed) ref = NULL; - g_debug ("Deploy %s %u %s %s %s", arg_repo_path, arg_flags, arg_ref, arg_origin, arg_installation); + g_info ("Deploy %s %u %s %s %s", arg_repo_path, arg_flags, arg_ref, arg_origin, arg_installation); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_DEPLOY_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -726,7 +729,7 @@ handle_cancel_pull (FlatpakSystemHelper *object, g_autoptr(GError) error = NULL; uid_t uid; - g_debug ("CancelPull %s %u %s", arg_installation, arg_flags, arg_src_dir); + g_info ("CancelPull %s %u %s", arg_installation, arg_flags, arg_src_dir); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_CANCEL_PULL_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -784,7 +787,7 @@ handle_deploy_appstream (FlatpakSystemHelper *object, g_autofree char *subset = NULL; gboolean is_oci; - g_debug ("DeployAppstream %s %u %s %s %s", arg_repo_path, arg_flags, arg_origin, arg_arch, arg_installation); + g_info ("DeployAppstream %s %u %s %s %s", arg_repo_path, arg_flags, arg_origin, arg_arch, arg_installation); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_DEPLOY_APPSTREAM_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -952,7 +955,7 @@ handle_uninstall (FlatpakSystemHelper *object, g_autoptr(GError) error = NULL; g_autoptr(FlatpakDecomposed) ref = NULL; - g_debug ("Uninstall %u %s %s", arg_flags, arg_ref, arg_installation); + g_info ("Uninstall %u %s %s", arg_flags, arg_ref, arg_installation); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_UNINSTALL_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -1005,7 +1008,7 @@ handle_install_bundle (FlatpakSystemHelper *object, g_autoptr(GError) error = NULL; g_autoptr(FlatpakDecomposed) ref = NULL; - g_debug ("InstallBundle %s %u %s %s", arg_bundle_path, arg_flags, arg_remote, arg_installation); + g_info ("InstallBundle %s %u %s %s", arg_bundle_path, arg_flags, arg_remote, arg_installation); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_INSTALL_BUNDLE_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -1056,7 +1059,7 @@ handle_configure_remote (FlatpakSystemHelper *object, g_autoptr(GBytes) gpg_data = NULL; gboolean force_remove; - g_debug ("ConfigureRemote %u %s %s", arg_flags, arg_remote, arg_installation); + g_info ("ConfigureRemote %u %s %s", arg_flags, arg_remote, arg_installation); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_CONFIGURE_REMOTE_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -1131,7 +1134,7 @@ handle_configure (FlatpakSystemHelper *object, g_autoptr(FlatpakDir) system = NULL; g_autoptr(GError) error = NULL; - g_debug ("Configure %u %s=%s %s", arg_flags, arg_key, arg_value, arg_installation); + g_info ("Configure %u %s=%s %s", arg_flags, arg_key, arg_value, arg_installation); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_CONFIGURE_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -1197,7 +1200,7 @@ handle_update_remote (FlatpakSystemHelper *object, g_autoptr(FlatpakRemoteState) state = NULL; gboolean summary_is_index = (arg_flags & FLATPAK_HELPER_UPDATE_REMOTE_FLAGS_SUMMARY_IS_INDEX) != 0; - g_debug ("UpdateRemote %u %s %s %s %s", arg_flags, arg_remote, arg_installation, arg_summary_path, arg_summary_sig_path); + g_info ("UpdateRemote %u %s %s %s %s", arg_flags, arg_remote, arg_installation, arg_summary_path, arg_summary_sig_path); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_UPDATE_REMOTE_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -1276,7 +1279,7 @@ handle_remove_local_ref (FlatpakSystemHelper *object, g_autoptr(FlatpakDir) system = NULL; g_autoptr(GError) error = NULL; - g_debug ("RemoveLocalRef %u %s %s %s", arg_flags, arg_remote, arg_ref, arg_installation); + g_info ("RemoveLocalRef %u %s %s %s", arg_flags, arg_remote, arg_ref, arg_installation); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_REMOVE_LOCAL_REF_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -1325,7 +1328,7 @@ handle_prune_local_repo (FlatpakSystemHelper *object, g_autoptr(FlatpakDir) system = NULL; g_autoptr(GError) error = NULL; - g_debug ("PruneLocalRepo %u %s", arg_flags, arg_installation); + g_info ("PruneLocalRepo %u %s", arg_flags, arg_installation); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_PRUNE_LOCAL_REPO_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -1369,7 +1372,7 @@ handle_ensure_repo (FlatpakSystemHelper *object, g_autoptr(GError) error = NULL; g_autoptr(GError) local_error = NULL; - g_debug ("EnsureRepo %u %s", arg_flags, arg_installation); + g_info ("EnsureRepo %u %s", arg_flags, arg_installation); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_ENSURE_REPO_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -1408,7 +1411,7 @@ handle_run_triggers (FlatpakSystemHelper *object, g_autoptr(FlatpakDir) system = NULL; g_autoptr(GError) error = NULL; - g_debug ("RunTriggers %u %s", arg_flags, arg_installation); + g_info ("RunTriggers %u %s", arg_flags, arg_installation); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_RUN_TRIGGERS_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -1495,7 +1498,7 @@ revokefs_fuse_backend_child_setup (gpointer user_data) /* We use 5 instead of 3 here, because fd 3 is the inherited SOCK_SEQPACKET * socket and fd 4 is the --close-with-fd pipe; both were dup2()'d into place * before this by GSubprocess */ - flatpak_close_fds_workaround (5); + g_fdwalk_set_cloexec (5); if (setgid (passwd->pw_gid) == -1) { @@ -1580,7 +1583,8 @@ ongoing_pull_new (FlatpakSystemHelper *object, return NULL; } - /* We use INHERIT_FDS to work around dead-lock, see flatpak_close_fds_workaround */ + /* We use INHERIT_FDS and close them in the child_setup + * to work around a deadlock in GLib < 2.60 */ launcher = g_subprocess_launcher_new (G_SUBPROCESS_FLAGS_INHERIT_FDS); g_subprocess_launcher_set_child_setup (launcher, revokefs_fuse_backend_child_setup, passwd, NULL); g_subprocess_launcher_take_fd (launcher, sockets[0], 3); @@ -1618,7 +1622,7 @@ reuse_cache_dir_if_available (const gchar *repo_tmp, const gchar *name; gboolean res = FALSE; - g_debug ("Checking for any temporary cache directory available to reuse"); + g_info ("Checking for any temporary cache directory available to reuse"); repo_tmpfile = g_file_new_for_path (repo_tmp); enumerator = g_file_enumerate_children (repo_tmpfile, @@ -1693,7 +1697,7 @@ handle_get_revokefs_fd (FlatpakSystemHelper *object, uid_t uid; int fd_index = -1; - g_debug ("GetRevokefsFd %u %s", arg_flags, arg_installation); + g_info ("GetRevokefsFd %u %s", arg_flags, arg_installation); if (disable_revokefs) { @@ -1736,7 +1740,7 @@ handle_get_revokefs_fd (FlatpakSystemHelper *object, repo_tmp = g_build_filename (flatpak_dir, "repo", "tmp", NULL); if (reuse_cache_dir_if_available (repo_tmp, &src_dir, &passwd)) - g_debug ("Cache dir %s can be reused", src_dir); + g_info ("Cache dir %s can be reused", src_dir); else { /* Create a new cache dir and add it to cache_dirs_in_use. Do all this under @@ -1796,7 +1800,7 @@ handle_update_summary (FlatpakSystemHelper *object, g_autoptr(GError) error = NULL; gboolean delete_summary; - g_debug ("UpdateSummary %u %s", arg_flags, arg_installation); + g_info ("UpdateSummary %u %s", arg_flags, arg_installation); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_UPDATE_SUMMARY_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -1842,7 +1846,7 @@ handle_generate_oci_summary (FlatpakSystemHelper *object, gboolean only_cached; gboolean is_oci; - g_debug ("GenerateOciSummary %u %s %s", arg_flags, arg_origin, arg_installation); + g_info ("GenerateOciSummary %u %s %s", arg_flags, arg_origin, arg_installation); system = dir_get_system (arg_installation, get_sender_pid (invocation), (arg_flags & FLATPAK_HELPER_GENERATE_OCI_SUMMARY_FLAGS_NO_INTERACTION) != 0, &error); if (system == NULL) @@ -2204,7 +2208,7 @@ on_bus_acquired (GDBusConnection *connection, { GError *error = NULL; - g_debug ("Bus acquired, creating skeleton"); + g_info ("Bus acquired, creating skeleton"); g_dbus_connection_set_exit_on_close (connection, FALSE); @@ -2252,7 +2256,7 @@ on_name_acquired (GDBusConnection *connection, const gchar *name, gpointer user_data) { - g_debug ("Name acquired"); + g_info ("Name acquired"); } static void @@ -2260,7 +2264,7 @@ on_name_lost (GDBusConnection *connection, const gchar *name, gpointer user_data) { - g_debug ("Name lost"); + g_info ("Name lost"); unref_skeleton_in_timeout (); } @@ -2275,7 +2279,7 @@ binary_file_changed_cb (GFileMonitor *file_monitor, if (!got_it) { - g_debug ("binary file changed"); + g_info ("binary file changed"); unref_skeleton_in_timeout (); } @@ -2314,7 +2318,7 @@ main (int argc, gboolean replace; gboolean show_version; GBusNameOwnerFlags flags; - GOptionContext *context; + g_autoptr(GOptionContext) context = NULL; g_autoptr(GError) error = NULL; const GOptionEntry options[] = { { "replace", 'r', 0, G_OPTION_ARG_NONE, &replace, "Replace old daemon.", NULL }, @@ -2370,12 +2374,10 @@ main (int argc, return 0; } - flatpak_disable_fancy_output (); - if (opt_verbose > 0) - g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG | G_LOG_LEVEL_INFO, message_handler, NULL); + g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, message_handler, NULL); if (opt_verbose > 1) - g_log_set_handler (G_LOG_DOMAIN "2", G_LOG_LEVEL_DEBUG | G_LOG_LEVEL_INFO, message_handler, NULL); + g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, message_handler, NULL); if (opt_ostree_verbose) g_log_set_handler ("OSTree", G_LOG_LEVEL_DEBUG | G_LOG_LEVEL_INFO, message_handler, NULL); diff --git a/system-helper/meson.build b/system-helper/meson.build new file mode 100644 index 0000000..c4da867 --- /dev/null +++ b/system-helper/meson.build @@ -0,0 +1,64 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +executable( + 'flatpak-system-helper', + dependencies : base_deps + [ + appstream_dep, + json_glib_dep, + libflatpak_common_base_dep, + libflatpak_common_dep, + libglnx_dep, + libostree_dep, + libsoup_dep, + polkit_agent_dep, + ], + install : true, + install_dir : get_option('libexecdir'), + sources : ['flatpak-system-helper.c'], +) + +configure_file( + input : 'flatpak-system-helper.service.in', + output : 'flatpak-system-helper.service', + configuration : service_conf_data, + install_dir : get_option('systemdsystemunitdir'), +) + +configure_file( + input : 'org.freedesktop.Flatpak.SystemHelper.service.in', + output : 'org.freedesktop.Flatpak.SystemHelper.service', + configuration : service_conf_data, + install_dir : get_option('datadir') / 'dbus-1' / 'system-services', +) + +install_data( + 'org.freedesktop.Flatpak.SystemHelper.conf', + install_dir : dbus_config_dir, +) + +conf_data = configuration_data() +conf_data.set('privileged_group', get_option('privileged_group')) +configure_file( + input : 'org.freedesktop.Flatpak.rules.in', + output : 'org.freedesktop.Flatpak.rules', + configuration : conf_data, + install_dir : get_option('datadir') / 'polkit-1' / 'rules.d', +) + +i18n.merge_file( + input : 'org.freedesktop.Flatpak.policy.in', + output : 'org.freedesktop.Flatpak.policy', + po_dir : '../po', + install : true, + install_dir : get_option('datadir') / 'polkit-1' / 'actions', +) + +conf_data = configuration_data() +conf_data.set('SYSTEM_HELPER_USER', get_option('system_helper_user')) +configure_file( + input : 'flatpak.conf.in', + output : 'flatpak.conf', + configuration : conf_data, + install_dir : get_option('sysusersdir'), +) diff --git a/test-driver b/test-driver deleted file mode 100755 index be73b80..0000000 --- a/test-driver +++ /dev/null @@ -1,153 +0,0 @@ -#! /bin/sh -# test-driver - basic testsuite driver script. - -scriptversion=2018-03-07.03; # UTC - -# Copyright (C) 2011-2021 Free Software Foundation, Inc. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# This file is maintained in Automake, please report -# bugs to or send patches to -# . - -# Make unconditional expansion of undefined variables an error. This -# helps a lot in preventing typo-related bugs. -set -u - -usage_error () -{ - echo "$0: $*" >&2 - print_usage >&2 - exit 2 -} - -print_usage () -{ - cat <"$log_file" -"$@" >>"$log_file" 2>&1 -estatus=$? - -if test $enable_hard_errors = no && test $estatus -eq 99; then - tweaked_estatus=1 -else - tweaked_estatus=$estatus -fi - -case $tweaked_estatus:$expect_failure in - 0:yes) col=$red res=XPASS recheck=yes gcopy=yes;; - 0:*) col=$grn res=PASS recheck=no gcopy=no;; - 77:*) col=$blu res=SKIP recheck=no gcopy=yes;; - 99:*) col=$mgn res=ERROR recheck=yes gcopy=yes;; - *:yes) col=$lgn res=XFAIL recheck=no gcopy=yes;; - *:*) col=$red res=FAIL recheck=yes gcopy=yes;; -esac - -# Report the test outcome and exit status in the logs, so that one can -# know whether the test passed or failed simply by looking at the '.log' -# file, without the need of also peaking into the corresponding '.trs' -# file (automake bug#11814). -echo "$res $test_name (exit status: $estatus)" >>"$log_file" - -# Report outcome to console. -echo "${col}${res}${std}: $test_name" - -# Register the test result, and other relevant metadata. -echo ":test-result: $res" > $trs_file -echo ":global-test-result: $res" >> $trs_file -echo ":recheck: $recheck" >> $trs_file -echo ":copy-in-global-log: $gcopy" >> $trs_file - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'before-save-hook 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC0" -# time-stamp-end: "; # UTC" -# End: diff --git a/tests/Makefile-test-matrix.am.inc b/tests/Makefile-test-matrix.am.inc deleted file mode 100644 index f3bcd9a..0000000 --- a/tests/Makefile-test-matrix.am.inc +++ /dev/null @@ -1,61 +0,0 @@ -# This file is autogenerated by ./tests/update-test-matrix, don't edit -TEST_MATRIX= \ - tests/test-run@user,nodeltas.wrap \ - tests/test-run@user,deltas.wrap \ - tests/test-run@system,nodeltas.wrap \ - tests/test-run@system,deltas.wrap \ - tests/test-run@system-norevokefs,nodeltas.wrap \ - tests/test-run@system-norevokefs,deltas.wrap \ - tests/test-info@user.wrap \ - tests/test-info@system.wrap \ - tests/test-repo@user.wrap \ - tests/test-repo@system.wrap \ - tests/test-repo@system-norevokefs.wrap \ - tests/test-repo@user,oldsummary.wrap \ - tests/test-repo@system,oldsummary.wrap \ - tests/test-sideload@user.wrap \ - tests/test-sideload@system.wrap \ - tests/test-bundle@user.wrap \ - tests/test-bundle@system.wrap \ - tests/test-bundle@system-norevokefs.wrap \ - tests/test-oci-registry@user.wrap \ - tests/test-oci-registry@system.wrap \ - tests/test-update-remote-configuration@newsummary.wrap \ - tests/test-update-remote-configuration@oldsummary.wrap \ - tests/test-update-portal@user.wrap \ - tests/test-update-portal@system.wrap \ - tests/test-summaries@user.wrap \ - tests/test-summaries@system.wrap \ - tests/test-subset@user.wrap \ - tests/test-subset@system.wrap \ - $(NULL) -TEST_MATRIX_DIST= \ - tests/test-basic.sh \ - tests/test-completion.sh \ - tests/test-config.sh \ - tests/test-build-update-repo.sh \ - tests/test-http-utils.sh \ - tests/test-history.sh \ - tests/test-default-remotes.sh \ - tests/test-metadata-validation.sh \ - tests/test-extensions.sh \ - tests/test-oci.sh \ - tests/test-override.sh \ - tests/test-auth.sh \ - tests/test-unused.sh \ - tests/test-prune.sh \ - tests/test-seccomp.sh \ - tests/test-repair.sh \ - $(NULL) -TEST_MATRIX_EXTRA_DIST= \ - tests/test-run.sh \ - tests/test-info.sh \ - tests/test-repo.sh \ - tests/test-sideload.sh \ - tests/test-bundle.sh \ - tests/test-oci-registry.sh \ - tests/test-update-remote-configuration.sh \ - tests/test-update-portal.sh \ - tests/test-summaries.sh \ - tests/test-subset.sh \ - $(NULL) diff --git a/tests/Makefile.am.inc b/tests/Makefile.am.inc deleted file mode 100644 index ebc9d39..0000000 --- a/tests/Makefile.am.inc +++ /dev/null @@ -1,318 +0,0 @@ -AM_TESTS_ENVIRONMENT = FLATPAK_TESTS_DEBUG=1 \ - FLATPAK_CONFIG_DIR=/dev/null \ - FLATPAK_PORTAL=$$(cd $(top_builddir) && pwd)/flatpak-portal \ - FLATPAK_TRIGGERSDIR=$$(cd $(top_srcdir) && pwd)/triggers \ - FLATPAK_VALIDATE_ICON=$$(cd $(top_builddir) && pwd)/flatpak-validate-icon \ - FLATPAK_REVOKEFS_FUSE=$$(cd $(top_builddir) && pwd)/revokefs-fuse \ - GI_TYPELIB_PATH=$$(cd $(top_builddir) && pwd)$${GI_TYPELIB_PATH:+:$$GI_TYPELIB_PATH} \ - LD_LIBRARY_PATH=$$(cd $(top_builddir)/.libs && pwd)$${LD_LIBRARY_PATH:+:$$LD_LIBRARY_PATH} \ - PATH=$$(cd $(top_builddir) && pwd):$${PATH} \ - $(NULL) - -if WITH_SYSTEM_DBUS_PROXY -AM_TESTS_ENVIRONMENT += FLATPAK_DBUSPROXY=$(DBUS_PROXY) -else -AM_TESTS_ENVIRONMENT += FLATPAK_DBUSPROXY=$$(cd $(top_builddir) && pwd)/flatpak-dbus-proxy -endif - -if WITH_SYSTEM_BWRAP -AM_TESTS_ENVIRONMENT += FLATPAK_BWRAP=$(BWRAP) -else -AM_TESTS_ENVIRONMENT += FLATPAK_BWRAP=$$(cd $(top_builddir) && pwd)/flatpak-bwrap -endif - -noinst_LTLIBRARIES += libtestlib.la -libtestlib_la_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - -DFLATPAK_COMPILATION \ - $(NULL) -libtestlib_la_SOURCES = \ - tests/testlib.c \ - tests/testlib.h \ - $(NULL) -libtestlib_la_LIBADD = \ - $(AM_LDADD) \ - $(BASE_LIBS) \ - libglnx.la \ - $(NULL) - -testlibrary_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(FUSE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - -DFLATPAK_COMPILATION \ - $(NULL) -testlibrary_LDADD = \ - $(AM_LDADD) \ - $(BASE_LIBS) \ - $(FUSE_LIBS) \ - $(OSTREE_LIBS) \ - libglnx.la \ - libflatpak.la \ - $(NULL) -testlibrary_SOURCES = \ - tests/can-use-fuse.c \ - tests/can-use-fuse.h \ - tests/testlib.c \ - tests/testlibrary.c \ - $(NULL) - -testcommon_CFLAGS = \ - $(AM_CFLAGS) \ - $(BASE_CFLAGS) \ - $(OSTREE_CFLAGS) \ - $(JSON_CFLAGS) \ - $(APPSTREAM_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DLIBEXECDIR=\"$(libexecdir)\" \ - -I$(srcdir)/app \ - -I$(builddir)/app \ - $(NULL) -testcommon_LDADD = \ - $(AM_LDADD) \ - $(BASE_LIBS) \ - $(OSTREE_LIBS) \ - $(JSON_LIBS) \ - $(APPSTREAM_LIBS) \ - libflatpak-app.la \ - libflatpak-common.la \ - libflatpak-common-base.la \ - libglnx.la \ - $(NULL) -testcommon_SOURCES = tests/testcommon.c - -test_context_CFLAGS = $(testcommon_CFLAGS) -test_context_LDADD = $(testcommon_LDADD) libtestlib.la -test_context_SOURCES = tests/test-context.c - -test_exports_CFLAGS = $(testcommon_CFLAGS) -test_exports_LDADD = $(testcommon_LDADD) libtestlib.la -test_exports_SOURCES = tests/test-exports.c - -test_instance_CFLAGS = $(testcommon_CFLAGS) -test_instance_LDADD = $(testcommon_LDADD) libtestlib.la -test_instance_SOURCES = \ - subprojects/libglnx/tests/libglnx-testlib.c \ - subprojects/libglnx/tests/libglnx-testlib.h \ - tests/test-instance.c \ - $(NULL) - -test_portal_CFLAGS = $(testcommon_CFLAGS) -test_portal_LDADD = $(testcommon_LDADD) libtestlib.la -test_portal_SOURCES = \ - tests/test-portal.c \ - $(NULL) -nodist_test_portal_SOURCES = \ - portal/flatpak-portal-dbus.c \ - portal/flatpak-portal-dbus.h \ - $(NULL) - -tests_hold_lock_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) -tests_hold_lock_LDADD = $(AM_LDADD) $(BASE_LIBS) libglnx.la -tests_hold_lock_SOURCES = tests/hold-lock.c - -tests_httpcache_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) $(OSTREE_CFLAGS) $(JSON_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DLOCALEDIR=\"$(localedir)\" -tests_httpcache_LDADD = $(AM_LDADD) $(BASE_LIBS) $(OSTREE_LIBS) $(JSON_LIBS) \ - libflatpak-common.la libflatpak-common-base.la libglnx.la - -tests_mock_flatpak_CFLAGS = $(testcommon_CFLAGS) -tests_mock_flatpak_LDADD = $(testcommon_LDADD) libtestlib.la -tests_mock_flatpak_SOURCES = tests/mock-flatpak.c - -tests_test_update_portal_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DLOCALEDIR=\"$(localedir)\" -tests_test_update_portal_LDADD = $(AM_LDADD) $(BASE_LIBS) -tests_test_update_portal_SOURCES = tests/test-update-portal.c -nodist_tests_test_update_portal_SOURCES = portal/flatpak-portal-dbus.c - -tests_test_portal_impl_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DLOCALEDIR=\"$(localedir)\" -tests_test_portal_impl_LDADD = $(AM_LDADD) $(BASE_LIBS) -tests_test_portal_impl_SOURCES = tests/test-portal-impl.c - -tests_test_authenticator_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DLOCALEDIR=\"$(localedir)\" -tests_test_authenticator_LDADD = $(AM_LDADD) $(BASE_LIBS) libflatpak-common.la libflatpak-common-base.la libglnx.la -tests_test_authenticator_SOURCES = tests/test-authenticator.c - -tests_try_syscall_CFLAGS = $(AM_CFLAGS) -tests_try_syscall_LDADD = $(AM_LDADD) -tests_try_syscall_SOURCES = tests/try-syscall.c - -tests_list_unused_CFLAGS = $(AM_CFLAGS) $(BASE_CFLAGS) $(OSTREE_CFLAGS) \ - -DFLATPAK_COMPILATION \ - -DLOCALEDIR=\"$(localedir)\" -tests_list_unused_LDADD = $(AM_LDADD) $(BASE_LIBS) $(BASE_LIBS) $(OSTREE_LIBS) libflatpak-common.la libflatpak-common-base.la libglnx.la -tests_list_unused_SOURCES = tests/list-unused.c - -tests/services/org.freedesktop.Flatpak.service: session-helper/org.freedesktop.Flatpak.service.in - mkdir -p tests/services - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(abs_top_builddir)|" $< > $@ - -tests/services/org.freedesktop.portal.Flatpak.service: portal/org.freedesktop.portal.Flatpak.service.in - mkdir -p tests/services - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(abs_top_builddir)|" -e "s|\@extraargs\@| --poll-timeout=1|" $< > $@ - -tests/services/org.freedesktop.Flatpak.SystemHelper.service: system-helper/org.freedesktop.Flatpak.SystemHelper.service.in - mkdir -p tests/services - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(abs_top_builddir)|" -e "s|\@extraargs\@| --session --no-idle-exit|" $< > $@ - -tests/services/org.freedesktop.impl.portal.desktop.test.service: tests/org.freedesktop.impl.portal.desktop.test.service.in - mkdir -p tests/services - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(abs_top_builddir)/tests|" $< > $@ - -tests/services/org.flatpak.Authenticator.test.service: tests/org.flatpak.Authenticator.test.service.in - mkdir -p tests/services - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(abs_top_builddir)/tests|" $< > $@ - -tests/services/org.flatpak.Authenticator.Oci.service: oci-authenticator/org.flatpak.Authenticator.Oci.service.in - mkdir -p tests/services - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(abs_top_builddir)|" $< > $@ - -tests/share/xdg-desktop-portal/portals/test.portal: tests/test.portal.in - mkdir -p tests/share/xdg-desktop-portal/portals - $(AM_V_GEN) install -m644 $< $@ - -tests/libtest.sh: tests/services/org.freedesktop.Flatpak.service tests/services/org.freedesktop.Flatpak.SystemHelper.service tests/services/org.freedesktop.portal.Flatpak.service tests/share/xdg-desktop-portal/portals/test.portal tests/services/org.freedesktop.impl.portal.desktop.test.service tests/services/org.flatpak.Authenticator.test.service tests/services/org.flatpak.Authenticator.Oci.service - -install-test-data-hook: -if ENABLE_INSTALLED_TESTS - mkdir -p $(DESTDIR)$(installed_testdir)/services - ln -sf $(dbus_servicedir)/org.freedesktop.Flatpak.service $(DESTDIR)$(installed_testdir)/services/ - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(libexecdir)|" -e "s|\@extraargs\@| --poll-timeout=1|" $(top_srcdir)/portal/org.freedesktop.portal.Flatpak.service.in > $(DESTDIR)$(installed_testdir)/services/org.freedesktop.portal.Flatpak.service - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(libexecdir)|" -e "s|\@extraargs\@| --session --no-idle-exit|" $(top_srcdir)/system-helper/org.freedesktop.Flatpak.SystemHelper.service.in > $(DESTDIR)$(installed_testdir)/services/org.freedesktop.Flatpak.SystemHelper.service - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(installed_testdir)|" $(top_srcdir)/tests/org.freedesktop.impl.portal.desktop.test.service.in > $(DESTDIR)$(installed_testdir)/services/org.freedesktop.impl.portal.desktop.test.service - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(installed_testdir)|" $(top_srcdir)/tests/org.flatpak.Authenticator.test.service.in > $(DESTDIR)$(installed_testdir)/services/org.flatpak.Authenticator.test.service.service - $(AM_V_GEN) $(SED) -e "s|\@libexecdir\@|$(libexecdir)|" $(top_srcdir)/oci-authenticator/org.flatpak.Authenticator.Oci.service.in > $(DESTDIR)$(installed_testdir)/services/org.flatpak.Authenticator.Oci.service - mkdir -p $(DESTDIR)$(installed_testdir)/share/xdg-desktop-portal/portals - install -m644 $(top_srcdir)/tests/test.portal.in $(DESTDIR)$(installed_testdir)/share/xdg-desktop-portal/portals/test.portal -endif - -tests/package_version.txt: Makefile - echo $(PACKAGE_VERSION) > tests/package_version.txt - -tests/test-basic.sh: tests/package_version.txt - -dist_installed_test_extra_scripts += \ - tests/http-utils-test-server.py \ - tests/oci-registry-server.py \ - tests/oci-registry-client.py \ - tests/make-multi-collection-id-repo.sh \ - tests/make-test-app.sh \ - tests/make-test-runtime.sh \ - tests/test-webserver.sh \ - tests/test-wrapper.sh \ - tests/web-server.py \ - $(NULL) - -dist_installed_test_data = \ - tests/libtest.sh \ - tests/org.test.Hello.png \ - tests/package_version.txt \ - tests/session.conf.in \ - tests/test.filter \ - tests/test.portal.in \ - tests/org.freedesktop.impl.portal.desktop.test.service.in \ - tests/org.flatpak.Authenticator.test.service.in \ - $(NULL) - -test_ltlibraries = tests/libpreload.la - -tests_libpreload_la_SOURCES = tests/libpreload.c -tests_libpreload_la_LDFLAGS = \ - -avoid-version \ - -module \ - -no-undefined \ - $(NULL) - -if ENABLE_INSTALLED_TESTS -tests_libpreload_la_LDFLAGS += -rpath $(installed_testdir) -else -tests_libpreload_la_LDFLAGS += -rpath ${abs_builddir} -endif - -installed_test_keyringdir = $(installed_testdir)/test-keyring -installed_test_keyring2dir = $(installed_testdir)/test-keyring2 - -if ENABLE_INSTALLED_TESTS -dist_installed_test_keyring_DATA = \ - tests/test-keyring/README \ - tests/test-keyring/pubring.gpg \ - tests/test-keyring/secring.gpg \ - $(NULL) -dist_installed_test_keyring2_DATA = \ - tests/test-keyring2/README \ - tests/test-keyring2/pubring.gpg \ - tests/test-keyring2/secring.gpg \ - $(NULL) -endif - -update-test-matrix: - $(srcdir)/tests/update-test-matrix - -tests/test-%.wrap: - @true - -tests/runtime-repo.stamp: tests/make-runtime-repos tests/make-test-runtime.sh flatpak - $< $(abs_top_builddir) $(top_srcdir)/tests/make-test-runtime.sh tests/runtime-repo tests/runtime-repo.stamp - -check_DATA += tests/runtime-repo.stamp - -distclean-local: - rm -rf tests/runtime-repo - rm -rf tests/runtime-repo.stamp - -include tests/Makefile-test-matrix.am.inc - -test_scripts = ${TEST_MATRIX} -dist_test_scripts = ${TEST_MATRIX_DIST} -dist_installed_test_extra_scripts += ${TEST_MATRIX_EXTRA_DIST} - -test_programs = \ - test-context \ - test-exports \ - test-instance \ - test-portal \ - testcommon \ - testlibrary \ - $(NULL) - -test_extra_programs = \ - tests/hold-lock \ - tests/httpcache \ - tests/list-unused \ - tests/mock-flatpak \ - tests/test-authenticator \ - tests/test-portal-impl \ - tests/test-update-portal \ - tests/try-syscall \ - $(NULL) - -@VALGRIND_CHECK_RULES@ -VALGRIND_SUPPRESSIONS_FILES=tests/flatpak.supp tests/glib.supp -EXTRA_DIST += \ - tests/Makefile-test-matrix.am.inc \ - tests/expand-test-matrix.sh \ - tests/flatpak.supp \ - tests/glib.supp \ - tests/make-runtime-repos \ - tests/test-wrapper.sh \ - tests/update-test-matrix \ - $(NULL) -DISTCLEANFILES += \ - tests/services/org.freedesktop.Flatpak.service \ - tests/services/org.freedesktop.Flatpak.SystemHelper.service \ - tests/services/org.freedesktop.portal.Flatpak.service \ - tests/services/org.freedesktop.impl.portal.desktop.test.service \ - tests/services/org.flatpak.Authenticator.test.service \ - tests/services/org.flatpak.Authenticator.Oci.service \ - tests/share/xdg-desktop-portal/portals/test.portal \ - tests/package_version.txt \ - $(NULL) diff --git a/tests/can-use-fuse.c b/tests/can-use-fuse.c index fb6e200..3352710 100644 --- a/tests/can-use-fuse.c +++ b/tests/can-use-fuse.c @@ -33,8 +33,8 @@ check_fuse (void) { g_autofree gchar *fusermount = NULL; g_autofree gchar *path = NULL; - char *argv[] = { "flatpak-fuse-test", NULL }; - struct fuse_args args = FUSE_ARGS_INIT (G_N_ELEMENTS (argv) - 1, argv); + static const char * const argv[] = { "flatpak-fuse-test", NULL }; + struct fuse_args args = FUSE_ARGS_INIT (G_N_ELEMENTS (argv) - 1, (char **) argv); g_autoptr(GError) error = NULL; #if FUSE_USE_VERSION >= 31 struct fuse *fuse = NULL; @@ -53,7 +53,7 @@ check_fuse (void) return FALSE; } - fusermount = g_find_program_in_path ("fusermount"); + fusermount = g_find_program_in_path (FUSERMOUNT); if (fusermount == NULL) { diff --git a/tests/expand-test-matrix.sh b/tests/expand-test-matrix.sh index 6c39ee9..da782fd 100755 --- a/tests/expand-test-matrix.sh +++ b/tests/expand-test-matrix.sh @@ -108,21 +108,18 @@ for test in $2; do parse_test $test done -if [ "$1" = "--automake" ]; then +if [ "$1" = "--meson" ]; then echo "# This file is autogenerated by ./tests/update-test-matrix, don't edit" - echo "TEST_MATRIX= \\" - for f in $tests; do - echo " ${f} \\" + for f in $tests $dist_tests; do + f="${f#tests/}" + case "$f" in + (*@*) + s="${f%%@*}.sh" + ;; + (*) + s="$f" + ;; + esac + echo "wrapped_tests += {'name' : '$f', 'script' : '$s'}" done - echo " \$(NULL)" - echo "TEST_MATRIX_DIST= \\" - for f in $dist_tests; do - echo " ${f} \\" - done - echo " \$(NULL)" - echo "TEST_MATRIX_EXTRA_DIST= \\" - for f in $extra_dist_tests; do - echo " ${f} \\" - done - echo " \$(NULL)" fi diff --git a/tests/flatpak-asan.supp b/tests/flatpak-asan.supp new file mode 100644 index 0000000..b7c1a8b --- /dev/null +++ b/tests/flatpak-asan.supp @@ -0,0 +1,10 @@ +# GOnce, deliberately leaking once per process +leak:flatpak_get_user_base_dir_location +leak:flatpak_get_system_default_base_dir_location +# external (libostree) +leak:static_delta_part_execute_thread +leak:_ostree_static_delta_part_open +# Bugs in our code +# Take a look at them and try to figure out what's going on! +leak:flatpak_authenticator_request_proxy_new_for_bus_sync +leak:flatpak_authenticator_proxy_new_for_bus_sync diff --git a/tests/flatpak.supp b/tests/flatpak.supp index 6938c62..bc0a6f9 100644 --- a/tests/flatpak.supp +++ b/tests/flatpak.supp @@ -254,6 +254,14 @@ fun:g_file_new_for_path fun:flatpak_get_user_base_dir_location } +# Deliberately leaking once per process +{ + flatpak_get_system_default_base_dir_location + Memcheck:Leak + ... + fun:g_file_new_for_path + fun:flatpak_get_system_default_base_dir_location +} # https://github.com/ostreedev/ostree/issues/2592 { diff --git a/tests/gphoto2-list b/tests/gphoto2-list new file mode 100644 index 0000000..8d97b05 --- /dev/null +++ b/tests/gphoto2-list @@ -0,0 +1,2598 @@ +# List from gphoto2 +# +# Modified for tests, not for use. + + +vnd:0979+dev:0227 +vnd:4102+dev:1230 +!vnd:4102+dev:1213 +!vnd:0502+dev:365e;!vnd:0502+dev:387a +vnd:0502+dev:3841;!vnd:0502+dev:33c3 +vnd:0502+dev:33c4 +vnd:0502+dev:3643 +vnd:0502+dev:353c +vnd:0502+dev:362d +vnd:0502+dev:3586 +vnd:0502+dev:3841 +vnd:0502+dev:394b +vnd:0502+dev:3348 +vnd:0502+dev:3349 +vnd:0502+dev:334a +vnd:0502+dev:33d8 +vnd:0502+dev:337c +vnd:0502+dev:337d +vnd:0502+dev:33cb +vnd:0502+dev:3325 +vnd:0502+dev:3341 +vnd:0502+dev:3344 +vnd:0502+dev:3345 +vnd:0502+dev:3389 +vnd:0502+dev:338a +vnd:0502+dev:3378 +vnd:0502+dev:3514 +vnd:0502+dev:35a8 +vnd:0502+dev:3644 +vnd:0502+dev:3938 +vnd:0502+dev:3725 +vnd:0502+dev:3609 +vnd:0502+dev:3473 +vnd:0502+dev:355f +vnd:0502+dev:374f +vnd:0502+dev:3750 +vnd:0502+dev:3750 +vnd:0502+dev:37ef +vnd:0502+dev:38a5 +vnd:0502+dev:38bb +vnd:0502+dev:3657 +vnd:0502+dev:33aa +vnd:0502+dev:35e4 +vnd:0502+dev:361d +vnd:0502+dev:3683 +vnd:0502+dev:3822 +vnd:0502+dev:3823 +vnd:0502+dev:3886 +vnd:16d5+dev:8006 +vnd:16d5+dev:8005 +vnd:08ca+dev:0111 +vnd:1bbb+dev:0168 +vnd:1bbb+dev:901b +vnd:1bbb+dev:2008 +vnd:1bbb+dev:0c02 +vnd:1bbb+dev:a00e +vnd:1bbb+dev:f003 +vnd:1bbb+dev:af2b +vnd:1bbb+dev:af00 +vnd:1bbb+dev:af2a +vnd:1bbb+dev:a00f +vnd:1bbb+dev:904d +vnd:1bbb+dev:0167 +vnd:271d+dev:4016 +vnd:0979+dev:0227 +vnd:1949+dev:0800 +vnd:1949+dev:0c31 +vnd:1949+dev:0007 +vnd:1949+dev:0008 +vnd:1949+dev:000a +vnd:1949+dev:000c +vnd:1949+dev:0012 +vnd:1949+dev:000b +vnd:1949+dev:000d +vnd:1949+dev:05e1 +vnd:1949+dev:0005 +vnd:1949+dev:0222 +vnd:1949+dev:0221 +vnd:1949+dev:0271 +vnd:1949+dev:0121 +vnd:1949+dev:0211 +vnd:1949+dev:0261 +vnd:1949+dev:0212 +vnd:1949+dev:0331 +vnd:1949+dev:0332 +vnd:1949+dev:0262 +vnd:1949+dev:00f2 +vnd:1949+dev:0581 +vnd:1949+dev:0272 +vnd:1949+dev:0281 +vnd:1949+dev:03f1 +vnd:0979+dev:0224 +vnd:05ac+dev:129a +vnd:05ac+dev:12ab +vnd:05ac+dev:1290 +vnd:05ac+dev:1292 +vnd:05ac+dev:1294 +vnd:05ac+dev:1297 +vnd:05ac+dev:12a0 +vnd:05ac+dev:12a8 +vnd:05ac+dev:1291 +vnd:05ac+dev:1293 +vnd:05ac+dev:1299 +vnd:0e79+dev:5008 +vnd:0e79+dev:5009 +vnd:0e79+dev:4002 +vnd:0e79+dev:1528 +vnd:0e79+dev:1529 +vnd:0e79+dev:1539 +vnd:0e79+dev:1538 +vnd:0e79+dev:14b9 +vnd:0e79+dev:528c +vnd:0e79+dev:528d +vnd:0e79+dev:1548 +vnd:0e79+dev:542f +vnd:0e79+dev:51c6 +vnd:0e79+dev:120a +vnd:0e79+dev:131d +vnd:0e79+dev:120c +vnd:0e79+dev:52c2 +vnd:0e79+dev:1301 +vnd:0e79+dev:1303 +vnd:0e79+dev:1311 +vnd:0e79+dev:1321 +vnd:0e79+dev:31f3 +vnd:0e79+dev:1421 +vnd:0e79+dev:1331 +vnd:0e79+dev:1333 +vnd:0e79+dev:3229 +vnd:0e79+dev:322a +vnd:0e79+dev:5229 +vnd:0e79+dev:522a +vnd:0e79+dev:53a7 +vnd:0e79+dev:1307 +vnd:0e79+dev:31bd +vnd:0e79+dev:2008 +vnd:0e79+dev:5371 +vnd:0e79+dev:545c +vnd:0e79+dev:5465 +vnd:0e79+dev:544a +vnd:0e79+dev:1357 +vnd:0e79+dev:1351 +vnd:0e79+dev:1309 +vnd:0e79+dev:130b +vnd:0e79+dev:1313 +vnd:0e79+dev:1315 +vnd:0e79+dev:1335 +vnd:0e79+dev:15ba +vnd:0e79+dev:130d +vnd:0e79+dev:130f +vnd:0e79+dev:1319 +vnd:0e79+dev:5395 +vnd:0e79+dev:14ef +vnd:0e79+dev:1568 +vnd:0e79+dev:1569 +vnd:0e79+dev:14bf +vnd:0e79+dev:1518 +vnd:0e79+dev:1508 +vnd:0e79+dev:1509 +vnd:0e79+dev:14ad +vnd:0e79+dev:149a +vnd:0e79+dev:5217 +vnd:0e79+dev:146b +vnd:0e79+dev:145e +vnd:0e79+dev:1458 +vnd:0e79+dev:31ab +vnd:0e79+dev:5603 +vnd:0e79+dev:5305 +vnd:0e79+dev:1207 +vnd:0e79+dev:31d8 +vnd:0e79+dev:31e1 +vnd:0e79+dev:1341 +vnd:0e79+dev:131b +vnd:0e79+dev:1208 +vnd:0979+dev:0227 +vnd:2770+dev:9120 +vnd:093a+dev:010f +vnd:093a+dev:010f +vnd:2770+dev:913c +vnd:0979+dev:0227 +vnd:093a+dev:010f +vnd:0979+dev:0227 +vnd:2770+dev:905c +vnd:0b05+dev:5a0f +vnd:0b05+dev:590f +vnd:0b05+dev:4ce0 +vnd:0b05+dev:4ce1 +vnd:0b05+dev:514f +vnd:0b05+dev:7773 +vnd:0b05+dev:540f +vnd:0b05+dev:541f +vnd:0b05+dev:550f +vnd:0b05+dev:5500 +vnd:0b05+dev:4cd0 +vnd:0b05+dev:4cd1 +vnd:0b05+dev:521f +vnd:0b05+dev:520f +vnd:0b05+dev:4cc0 +vnd:0b05+dev:4cc1 +vnd:0b05+dev:7770 +vnd:0b05+dev:5460 +vnd:0b05+dev:5468 +vnd:0b05+dev:5400 +vnd:0b05+dev:5410 +vnd:0b05+dev:5411 +vnd:0b05+dev:5466 +vnd:0b05+dev:7772 +vnd:0b05+dev:5506 +vnd:0b05+dev:5561 +vnd:0b05+dev:5200 +vnd:0b05+dev:5201 +vnd:0b05+dev:5210 +vnd:0b05+dev:5211 +vnd:0b05+dev:5214 +vnd:0b05+dev:5220 +vnd:0b05+dev:5221 +vnd:0b05+dev:5230 +vnd:0b05+dev:5231 +vnd:0b05+dev:4e00 +vnd:0b05+dev:4e01 +vnd:0b05+dev:4e0f +vnd:0b05+dev:4e1f +vnd:0b05+dev:4d00 +vnd:0b05+dev:4d01 +vnd:0b05+dev:4c80 +vnd:0b05+dev:4c81 +vnd:0b05+dev:4c90 +vnd:0b05+dev:4c91 +vnd:0b05+dev:4ca0 +vnd:0b05+dev:4ca1 +vnd:0b05+dev:561f +vnd:0b05+dev:5601 +vnd:0b05+dev:5600 +vnd:0b05+dev:5f02 +vnd:0b05+dev:5f03 +vnd:0b05+dev:580f +vnd:0b05+dev:581f +vnd:0b05+dev:5480 +vnd:0b05+dev:5481 +vnd:0b05+dev:7780 +vnd:0b05+dev:7781 +vnd:0b05+dev:5490 +vnd:0b05+dev:5491 +vnd:0b05+dev:2008 +vnd:0b05+dev:610f +vnd:0b05+dev:600f +vnd:0b05+dev:5e0f +vnd:1908+dev:1315 +vnd:1908+dev:1320 +vnd:1908+dev:0102 +vnd:1908+dev:3335 +vnd:2770+dev:9051 +vnd:2080+dev:000a +vnd:2080+dev:0006 +vnd:2080+dev:0005 +vnd:1d45+dev:459d +vnd:0fca+dev:8041 +vnd:0fca+dev:8042 +vnd:0fca+dev:8031 +vnd:271d+dev:4017 +vnd:271d+dev:4016 +vnd:271d+dev:4008 +vnd:2a47+dev:200d +vnd:2a47+dev:4ee1 +vnd:2a47+dev:3003 +vnd:2a47+dev:7f10 +vnd:2a47+dev:901b +vnd:2a47+dev:9039 +vnd:2a47+dev:903a +vnd:2a47+dev:7f11 +vnd:2a47+dev:201d +vnd:2a47+dev:2008 +vnd:2a47+dev:0c02 +vnd:2a47+dev:f003 +vnd:0e8d+dev:0c03 +vnd:04a9+dev:3047 +vnd:04a9+dev:31c2 +vnd:04a9+dev:31bd +vnd:04a9+dev:31e6 +vnd:04a9+dev:31f3 +vnd:04a9+dev:327d +vnd:04a9+dev:32c0 +vnd:04a9+dev:32d4 +vnd:04a9+dev:3268 +vnd:04a9+dev:30c0 +vnd:04a9+dev:304d +vnd:04a9+dev:31f7 +vnd:04a9+dev:3066 +vnd:04a9+dev:30bf +vnd:04a9+dev:3075 +vnd:04a9+dev:30ba +vnd:04a9+dev:310e +vnd:04a9+dev:30b4 +vnd:04a9+dev:30ff +vnd:04a9+dev:311c +vnd:04a9+dev:30fe +vnd:04a9+dev:314f +vnd:04a9+dev:30f2 +vnd:04a9+dev:314e +vnd:04a9+dev:3116 +vnd:04a9+dev:3184 +vnd:04a9+dev:3119 +vnd:04a9+dev:3174 +vnd:04a9+dev:3136 +vnd:04a9+dev:3160 +vnd:04a9+dev:3174 +vnd:04a9+dev:3115 +vnd:04a9+dev:31c4 +vnd:04a9+dev:314b +vnd:04a9+dev:315f +vnd:04a9+dev:3173 +vnd:04a9+dev:3193 +vnd:04a9+dev:31c1 +vnd:04a9+dev:309b +vnd:04a9+dev:309b +vnd:04a9+dev:30c4 +vnd:04a9+dev:3072 +vnd:04a9+dev:30b6 +vnd:04a9+dev:30f4 +vnd:04a9+dev:3052 +vnd:04a9+dev:3065 +vnd:04a9+dev:3070 +vnd:04a9+dev:3071 +vnd:04a9+dev:30f1 +vnd:04a9+dev:32d6 +vnd:04a9+dev:30ee +vnd:04a9+dev:306a +vnd:04a9+dev:3088 +vnd:04a9+dev:3087 +vnd:04a9+dev:30a5 +vnd:04a9+dev:317b +vnd:04a9+dev:3270 +vnd:04a9+dev:3083 +vnd:04a9+dev:30bc +vnd:04a9+dev:3217 +vnd:04a9+dev:327f +vnd:04a9+dev:32b4 +vnd:04a9+dev:32e1 +vnd:04a9+dev:3252 +vnd:04a9+dev:30ea +vnd:04a9+dev:3147 +vnd:04a9+dev:31d0 +vnd:04a9+dev:3219 +vnd:04a9+dev:3292 +vnd:04a9+dev:32e8 +vnd:04a9+dev:32e1 +vnd:04a9+dev:32cc +vnd:04a9+dev:30eb +vnd:04a9+dev:30ec +vnd:04a9+dev:32e9 +vnd:04a9+dev:3084 +vnd:04a9+dev:3099 +vnd:04a9+dev:3113 +vnd:04a9+dev:30ef +vnd:04a9+dev:30ee +vnd:04a9+dev:30ee +vnd:04a9+dev:32d9 +vnd:04a9+dev:3110 +vnd:04a9+dev:3146 +vnd:04a9+dev:3145 +vnd:04a9+dev:31cf +vnd:04a9+dev:319b +vnd:04a9+dev:31ea +vnd:04a9+dev:3101 +vnd:04a9+dev:3102 +vnd:04a9+dev:3199 +vnd:04a9+dev:323a +vnd:04a9+dev:3281 +vnd:04a9+dev:3295 +vnd:04a9+dev:32af +vnd:04a9+dev:3218 +vnd:04a9+dev:3215 +vnd:04a9+dev:323b +vnd:04a9+dev:3250 +vnd:04a9+dev:32ca +vnd:04a9+dev:3272 +vnd:04a9+dev:3253 +vnd:04a9+dev:32a1 +vnd:04a9+dev:3280 +vnd:04a9+dev:32cb +vnd:04a9+dev:319a +vnd:04a9+dev:326f +vnd:04a9+dev:32c9 +vnd:04a9+dev:3294 +vnd:04a9+dev:32f1 +vnd:04a9+dev:32ea +vnd:04a9+dev:3044 +vnd:04a9+dev:3060 +vnd:04a9+dev:3084 +vnd:04a9+dev:3099 +vnd:04a9+dev:3110 +vnd:04a9+dev:3084 +vnd:04a9+dev:3099 +vnd:04a9+dev:30ee +vnd:04a9+dev:3110 +vnd:04a9+dev:3145 +vnd:04a9+dev:31cf +vnd:04a9+dev:323d +vnd:04a9+dev:32a0 +vnd:04a9+dev:32d1 +vnd:04a9+dev:3273 +vnd:04a9+dev:32ef +vnd:04a9+dev:3299 +vnd:04a9+dev:32bb +vnd:04a9+dev:32d2 +vnd:04a9+dev:32f9 +vnd:04a9+dev:32c5 +vnd:04a9+dev:32e7 +vnd:04a9+dev:32da +vnd:04a9+dev:32f8 +vnd:04a9+dev:3312 +vnd:04a9+dev:32fc +vnd:04a9+dev:32f4 +vnd:04a9+dev:3303 +vnd:04a9+dev:330d +vnd:04a9+dev:32f5 +vnd:04a9+dev:330b +vnd:04a9+dev:32f7 +vnd:04a9+dev:330c +vnd:04a9+dev:31cf +vnd:04a9+dev:32b4 +vnd:04a9+dev:32c9 +vnd:04a9+dev:32f1 +vnd:04a9+dev:3145 +vnd:04a9+dev:32e2 +vnd:04a9+dev:308e +vnd:04a9+dev:3241 +vnd:04a9+dev:32aa +vnd:04a9+dev:32a9 +vnd:04a9+dev:3225 +vnd:04a9+dev:31e6 +vnd:04a9+dev:3193 +vnd:04a9+dev:3046 +vnd:04a9+dev:304b +vnd:04a9+dev:30c0 +vnd:04a9+dev:30c4 +vnd:04a9+dev:306b +vnd:04a9+dev:3096 +vnd:04a9+dev:307c +vnd:04a9+dev:307a +vnd:04a9+dev:30a0 +vnd:04a9+dev:3096 +vnd:04a9+dev:308e +vnd:04a9+dev:3081 +vnd:04a9+dev:3080 +vnd:04a9+dev:30a9 +vnd:04a9+dev:306b +vnd:04a9+dev:308d +vnd:04a9+dev:3082 +vnd:04a9+dev:307f +vnd:04a9+dev:3080 +vnd:04a9+dev:306b +vnd:04a9+dev:3096 +vnd:04a9+dev:30a9 +vnd:04a9+dev:3105 +vnd:04a9+dev:308e +vnd:04a9+dev:304f +vnd:04a9+dev:3061 +vnd:04a9+dev:318e +vnd:04a9+dev:31c3 +vnd:04a9+dev:323e +vnd:04a9+dev:3264 +vnd:04a9+dev:304e +vnd:04a9+dev:3062 +vnd:04a9+dev:3191 +vnd:04a9+dev:31be +vnd:04a9+dev:322a +vnd:04a9+dev:324a +vnd:04a9+dev:3249 +vnd:04a9+dev:3271 +vnd:04a9+dev:3262 +vnd:04a9+dev:3059 +vnd:04a9+dev:3076 +vnd:04a9+dev:31f2 +vnd:04a9+dev:30b8 +vnd:04a9+dev:31f1 +vnd:04a9+dev:3261 +vnd:04a9+dev:3058 +vnd:04a9+dev:30b7 +vnd:04a9+dev:3243 +vnd:04a9+dev:30f9 +vnd:04a9+dev:310f +vnd:04a9+dev:30f8 +vnd:04a9+dev:3155 +vnd:04a9+dev:3149 +vnd:04a9+dev:317a +vnd:04a9+dev:31bf +vnd:04a9+dev:31ef +vnd:04a9+dev:30c2 +vnd:04a9+dev:30c1 +vnd:04a9+dev:3126 +vnd:04a9+dev:311b +vnd:04a9+dev:3150 +vnd:04a9+dev:314d +vnd:04a9+dev:314c +vnd:04a9+dev:3177 +vnd:04a9+dev:3176 +vnd:04a9+dev:3074 +vnd:04a9+dev:30fd +vnd:04a9+dev:30fc +vnd:04a9+dev:313a +vnd:04a9+dev:3139 +vnd:04a9+dev:315b +vnd:04a9+dev:3073 +vnd:04a9+dev:3117 +vnd:04a9+dev:3138 +vnd:04a9+dev:315d +vnd:04a9+dev:30b5 +vnd:04a9+dev:309a +vnd:04a9+dev:3226 +vnd:04a9+dev:323f +vnd:04a9+dev:30b9 +vnd:04a9+dev:30bb +vnd:04a9+dev:31bc +vnd:04a9+dev:32ab +vnd:04a9+dev:3288 +vnd:04a9+dev:3289 +vnd:04a9+dev:3048 +vnd:04a9+dev:3233 +vnd:04a9+dev:318f +vnd:04a9+dev:31df +vnd:04a9+dev:320f +vnd:04a9+dev:3258 +vnd:04a9+dev:3274 +vnd:04a9+dev:3055 +vnd:04a9+dev:306e +vnd:04a9+dev:306f +vnd:04a9+dev:32a8 +vnd:04a9+dev:3085 +vnd:04a9+dev:32b3 +vnd:04a9+dev:30b3 +vnd:04a9+dev:3125 +vnd:04a9+dev:329d +vnd:04a9+dev:32bc +vnd:04a9+dev:315a +vnd:04a9+dev:32c7 +vnd:04a9+dev:309b +vnd:04a9+dev:3049 +vnd:04a9+dev:309c +vnd:04a9+dev:3041 +vnd:04a9+dev:3236 +vnd:04a9+dev:3045 +vnd:04a9+dev:3051 +vnd:04a9+dev:325b +vnd:04a9+dev:3275 +vnd:04a9+dev:30f0 +vnd:04a9+dev:3043 +vnd:04a9+dev:3065 +vnd:04a9+dev:3070 +vnd:04a9+dev:3071 +vnd:04a9+dev:311a +vnd:04a9+dev:3057 +vnd:04a9+dev:304c +vnd:04a9+dev:3066 +vnd:04a9+dev:3056 +vnd:04a9+dev:3075 +vnd:04a9+dev:30ba +vnd:04a9+dev:306c +vnd:04a9+dev:306d +vnd:04a9+dev:3148 +vnd:04a9+dev:3077 +vnd:04a9+dev:30b4 +vnd:04a9+dev:30b2 +vnd:04a9+dev:30b1 +vnd:04a9+dev:30fa +vnd:04a9+dev:3212 +vnd:04a9+dev:309b +vnd:04a9+dev:3072 +vnd:04a9+dev:314f +vnd:04a9+dev:30b6 +vnd:04a9+dev:3184 +vnd:04a9+dev:31c4 +vnd:04a9+dev:31f4 +vnd:04a9+dev:30c4 +vnd:04a9+dev:30c0 +vnd:04a9+dev:3137 +vnd:04a9+dev:30f1 +vnd:04a9+dev:30ff +vnd:04a9+dev:30f2 +vnd:04a9+dev:311c +vnd:04a9+dev:30fe +vnd:04a9+dev:3119 +vnd:04a9+dev:314e +vnd:04a9+dev:3175 +vnd:04a9+dev:31c2 +vnd:04a9+dev:3174 +vnd:04a9+dev:314b +vnd:04a9+dev:3196 +vnd:04a9+dev:3115 +vnd:04a9+dev:31e6 +vnd:04a9+dev:31c1 +vnd:04a9+dev:3193 +vnd:04a9+dev:318d +vnd:04a9+dev:315e +vnd:04a9+dev:3192 +vnd:04a9+dev:31e0 +vnd:04a9+dev:3211 +vnd:04a9+dev:3234 +vnd:04a9+dev:325a +vnd:04a9+dev:3276 +vnd:04a9+dev:31e4 +vnd:04a9+dev:31c0 +vnd:04a9+dev:31f6 +vnd:04a9+dev:322c +vnd:04a9+dev:3228 +vnd:04a9+dev:3245 +vnd:04a9+dev:3244 +vnd:04a9+dev:325f +vnd:04a9+dev:3238 +vnd:04a9+dev:325c +vnd:04a9+dev:3277 +vnd:04a9+dev:329b +vnd:04a9+dev:329f +vnd:04a9+dev:32be +vnd:04a9+dev:3286 +vnd:04a9+dev:329a +vnd:04a9+dev:32ee +vnd:04a9+dev:32e4 +vnd:04a9+dev:3050 +vnd:04a9+dev:305c +vnd:04a9+dev:31ea +vnd:04a9+dev:3217 +vnd:04a9+dev:3218 +vnd:04a9+dev:323b +vnd:04a9+dev:32c3 +vnd:04a9+dev:32c2 +vnd:04a9+dev:3078 +vnd:07cf+dev:1049 +vnd:07cf+dev:1042 +vnd:07cf+dev:104d +vnd:07cf+dev:104c +vnd:07cf+dev:117a +vnd:0409+dev:02ed +vnd:04b7+dev:88b9 +vnd:04b7+dev:88d0 +vnd:04b7+dev:88b0 +vnd:04b7+dev:88c6 +vnd:04b7+dev:88a9 +vnd:04b7+dev:88aa +vnd:04b7+dev:88c0 +vnd:04b7+dev:88c1 +vnd:04b7+dev:88d6 +vnd:04b7+dev:88f1 +vnd:2770+dev:9120 +vnd:2770+dev:905c +vnd:0979+dev:0224 +vnd:2770+dev:905c +vnd:1e74+dev:6512 +vnd:1e53+dev:0005 +vnd:2770+dev:9120 +vnd:2770+dev:9120 +vnd:1ebf+dev:7029 +vnd:0e21+dev:0952 +vnd:0e21+dev:0711 +vnd:0e21+dev:0751 +vnd:0e21+dev:0911 +vnd:0e21+dev:0941 +vnd:0e21+dev:0801 +vnd:0e21+dev:0871 +vnd:0e21+dev:0891 +vnd:0e21+dev:0861 +vnd:0e21+dev:0881 +vnd:0e21+dev:0921 +vnd:0e21+dev:0901 +vnd:0e21+dev:0701 +vnd:0e21+dev:0761 +vnd:0e21+dev:0931 +vnd:041e+dev:4123 +vnd:041e+dev:4157 +vnd:041e+dev:411e +vnd:041e+dev:4130 +vnd:041e+dev:413c +vnd:041e+dev:4133 +vnd:041e+dev:4161 +vnd:041e+dev:4137 +vnd:041e+dev:413d +vnd:041e+dev:4131 +vnd:041e+dev:4150 +vnd:041e+dev:4158 +vnd:041e+dev:4152 +vnd:041e+dev:411f +vnd:041e+dev:4153 +vnd:041e+dev:413e +vnd:041e+dev:4151 +vnd:041e+dev:4162 +vnd:041e+dev:4169 +vnd:041e+dev:4128 +vnd:109b+dev:9130 +vnd:106c+dev:3215 +vnd:2770+dev:905c +vnd:2770+dev:9120 +vnd:0c45+dev:8000 +vnd:041e+dev:4132 +vnd:041e+dev:412f +vnd:413c+dev:b10b +vnd:413c+dev:b11a +vnd:413c+dev:b11b +vnd:413c+dev:4500 +vnd:0bb4+dev:0c08 +vnd:2770+dev:905c +vnd:1f3a+dev:0c02 +vnd:093a+dev:010e +vnd:0979+dev:0227 +vnd:0aa6+dev:6021 +vnd:2770+dev:9050 +vnd:2770+dev:9052 +vnd:2b43+dev:0006 +vnd:10d6+dev:2200 +vnd:093a+dev:010e +vnd:093a+dev:010f +vnd:04b8+dev:0403 +vnd:04b8+dev:0402 +vnd:2e17+dev:c033 +vnd:2e17+dev:c030 +vnd:2ae5+dev:f003 +vnd:2ae5+dev:6764 +vnd:2ae5+dev:9039 +vnd:09cb+dev:100b +vnd:2970+dev:4002 +vnd:2970+dev:2008 +vnd:2970+dev:0c02 +vnd:2970+dev:4001 +vnd:06d3+dev:21ba +vnd:0489+dev:c00b +vnd:0489+dev:c025 +vnd:0489+dev:e111 +vnd:0489+dev:1ab0 +vnd:0489+dev:c026 +vnd:0489+dev:e040 +vnd:04cb+dev:014a +vnd:04cb+dev:01d0 +vnd:04cb+dev:01d2 +vnd:04cb+dev:01c6 +vnd:04cb+dev:01d3 +vnd:04cb+dev:021b +vnd:04cb+dev:0193 +vnd:04cb+dev:01e0 +vnd:04cb+dev:01c0 +vnd:04cb+dev:01e4 +vnd:04cb+dev:019b +vnd:04cb+dev:01c1 +vnd:04cb+dev:01c5 +vnd:04cb+dev:01d4 +vnd:04cb+dev:01e6 +vnd:04cb+dev:01fa +vnd:04cb+dev:020e +vnd:04cb+dev:022d +vnd:04cb+dev:0271 +vnd:04cb+dev:0250 +vnd:04cb+dev:01dd +vnd:04cb+dev:01db +vnd:04cb+dev:01ef +vnd:04cb+dev:0200 +vnd:04cb+dev:01e8 +vnd:04cb+dev:0209 +vnd:04cb+dev:0240 +vnd:04cb+dev:027d +vnd:04cb+dev:0265 +vnd:04cb+dev:0298 +vnd:04cb+dev:01c4 +vnd:04cb+dev:01d7 +vnd:04cb+dev:01bf +vnd:04cb+dev:0142 +vnd:04cb+dev:02b9 +vnd:04cb+dev:018f +vnd:04cb+dev:029c +vnd:04cb+dev:0233 +vnd:04cb+dev:0283 +vnd:04cb+dev:026e +vnd:04cb+dev:0263 +vnd:04cb+dev:02a6 +vnd:04cb+dev:0288 +vnd:04cb+dev:01d8 +vnd:04cb+dev:0201 +vnd:04cb+dev:020d +vnd:04cb+dev:01fe +vnd:04cb+dev:02ea +vnd:04cb+dev:02e9 +vnd:04cb+dev:02de +vnd:04cb+dev:02c6 +vnd:04cb+dev:02d5 +vnd:04cb+dev:02b5 +vnd:04cb+dev:02d6 +vnd:04cb+dev:02e8 +vnd:04cb+dev:02d7 +vnd:04cb+dev:02f2 +vnd:04cb+dev:02f0 +vnd:04cb+dev:02b6 +vnd:04cb+dev:02cb +vnd:04cb+dev:02e4 +vnd:04cb+dev:02ea +vnd:04cb+dev:02bf +vnd:04cb+dev:02c8 +vnd:04cb+dev:02cd +vnd:04cb+dev:02d4 +vnd:04cb+dev:02dd +vnd:04cb+dev:02e3 +vnd:04cb+dev:02e6 +vnd:04cb+dev:02fc +vnd:04cb+dev:02d1 +vnd:04cb+dev:02e5 +vnd:04cb+dev:02c1 +vnd:04cb+dev:02ba +vnd:04cb+dev:02dc +vnd:04cb+dev:02d3 +vnd:04cb+dev:01c3 +vnd:04c5+dev:13dd +vnd:04c5+dev:1378 +vnd:04c5+dev:1140 +vnd:04c5+dev:133b +vnd:04c5+dev:158c +vnd:091e+dev:4dac +vnd:091e+dev:488b +vnd:091e+dev:4c7c +vnd:091e+dev:4dab +vnd:091e+dev:4cba +vnd:091e+dev:4e76 +vnd:091e+dev:4f67 +vnd:091e+dev:4b54 +vnd:091e+dev:4cda +vnd:091e+dev:4cd8 +vnd:091e+dev:4cdb +vnd:091e+dev:4f43 +vnd:091e+dev:4f42 +vnd:091e+dev:5116 +vnd:091e+dev:4dad +vnd:091e+dev:4c05 +vnd:091e+dev:4f97 +vnd:091e+dev:50a1 +vnd:091e+dev:4b48 +vnd:091e+dev:4e05 +vnd:091e+dev:4c29 +vnd:091e+dev:4fb8 +vnd:091e+dev:50db +vnd:091e+dev:4f96 +vnd:091e+dev:4cae +vnd:091e+dev:4caf +vnd:091e+dev:2585 +vnd:091e+dev:4daa +vnd:091e+dev:5027 +vnd:091e+dev:4c9a +vnd:091e+dev:4e77 +vnd:091e+dev:4f0b +vnd:091e+dev:4e78 +vnd:091e+dev:4e9c +vnd:091e+dev:4e0c +vnd:091e+dev:4bac +vnd:091e+dev:4bfa +vnd:091e+dev:4c99 +vnd:091e+dev:4c98 +vnd:091e+dev:4d9c +vnd:2770+dev:9120 +vnd:0458+dev:7005 +vnd:040d+dev:885c +vnd:0414+dev:2008 +vnd:0414+dev:0c02 +vnd:0979+dev:0227 +vnd:0979+dev:0227 +vnd:2770+dev:9120 +vnd:18d1+dev:0007 +vnd:18d1+dev:0006 +vnd:18d1+dev:4e41 +vnd:18d1+dev:4e42 +vnd:18d1+dev:4e0f +vnd:18d1+dev:4d00 +vnd:18d1+dev:2d02 +vnd:18d1+dev:0a07 +vnd:18d1+dev:740a +vnd:18d1+dev:d10a +vnd:18d1+dev:d109 +vnd:18d1+dev:b00a +vnd:18d1+dev:70a8 +vnd:18d1+dev:7169 +vnd:18d1+dev:4e12 +vnd:18d1+dev:05b3 +vnd:18d1+dev:7102 +vnd:18d1+dev:4ee1 +vnd:18d1+dev:4ee2 +vnd:18d1+dev:4ee5 +vnd:18d1+dev:4ee6 +vnd:18d1+dev:5202 +vnd:18d1+dev:5203 +vnd:2672+dev:000c +vnd:2672+dev:0021 +vnd:2672+dev:0011 +vnd:2672+dev:000e +vnd:2672+dev:0056 +vnd:2672+dev:0059 +vnd:2672+dev:005a +vnd:2672+dev:000d +vnd:2672+dev:0027 +vnd:2672+dev:0029 +vnd:2672+dev:0037 +vnd:2672+dev:0047 +vnd:2672+dev:0043 +vnd:2672+dev:0042 +vnd:2672+dev:0049 +vnd:2672+dev:004d +vnd:2770+dev:9120 +vnd:201e+dev:a0c1 +vnd:1302+dev:1016 +vnd:1302+dev:1017 +vnd:093a+dev:010e +vnd:03f0+dev:7e1d +vnd:03f0+dev:5d1d +vnd:03f0+dev:5c1d +vnd:109b+dev:9106 +vnd:109b+dev:9109 +vnd:109b+dev:9105 +vnd:339b+dev:107d +vnd:03f0+dev:6502 +vnd:03f0+dev:7c02 +vnd:03f0+dev:7d02 +vnd:03f0+dev:6302 +vnd:03f0+dev:6602 +vnd:03f0+dev:7402 +vnd:03f0+dev:7802 +vnd:03f0+dev:7202 +vnd:03f0+dev:6e02 +vnd:03f0+dev:7902 +vnd:03f0+dev:6d02 +vnd:03f0+dev:6302 +vnd:03f0+dev:6802 +vnd:03f0+dev:7102 +vnd:03f0+dev:6b02 +vnd:03f0+dev:6402 +vnd:03f0+dev:7602 +vnd:03f0+dev:6702 +vnd:03f0+dev:6c02 +vnd:03f0+dev:6a02 +vnd:03f0+dev:4202 +vnd:03f0+dev:7702 +vnd:03f0+dev:7e02 +vnd:03f0+dev:4302 +vnd:03f0+dev:4402 +vnd:03f0+dev:4502 +vnd:03f0+dev:6002 +vnd:03f0+dev:8b02 +vnd:03f0+dev:9a02 +vnd:03f0+dev:8c02 +vnd:03f0+dev:7502 +vnd:03f0+dev:7b02 +vnd:03f0+dev:7302 +vnd:03f0+dev:7a02 +vnd:03f0+dev:8002 +vnd:03f0+dev:8102 +vnd:03f0+dev:8202 +vnd:03f0+dev:9b02 +vnd:03f0+dev:8402 +vnd:03f0+dev:8502 +vnd:03f0+dev:9602 +vnd:03f0+dev:9702 +vnd:03f0+dev:8702 +vnd:03f0+dev:8802 +vnd:0bb4+dev:685c +vnd:0bb4+dev:6860 +vnd:0bb4+dev:0c02 +vnd:0bb4+dev:2008 +vnd:0bb4+dev:0ec7 +vnd:0bb4+dev:0ec6 +vnd:0bb4+dev:05fd +vnd:0bb4+dev:05f0 +vnd:0bb4+dev:0edd +vnd:0bb4+dev:0668 +vnd:0bb4+dev:0edb +vnd:0bb4+dev:0ebd +vnd:0bb4+dev:0dff +vnd:0bb4+dev:0c93 +vnd:0bb4+dev:0ca8 +vnd:0bb4+dev:0dfe +vnd:0bb4+dev:0de4 +vnd:0bb4+dev:0670 +vnd:0bb4+dev:0dd5 +vnd:0bb4+dev:0e31 +vnd:0bb4+dev:0e32 +vnd:0bb4+dev:0df5 +vnd:0bb4+dev:07ae +vnd:0bb4+dev:0dda +vnd:0bb4+dev:0f91 +vnd:0bb4+dev:0f64 +vnd:0bb4+dev:0f63 +vnd:0bb4+dev:0f87 +vnd:0bb4+dev:0f5f +vnd:0bb4+dev:0f60 +vnd:0bb4+dev:0dea +vnd:0bb4+dev:0dd2 +vnd:0bb4+dev:07ca +vnd:0bb4+dev:0f25 +vnd:0bb4+dev:061a +vnd:0bb4+dev:0fb4 +vnd:0bb4+dev:0fb5 +vnd:0bb4+dev:07cb +vnd:0bb4+dev:07d9 +vnd:0bb4+dev:0cec +vnd:0bb4+dev:0df8 +vnd:0bb4+dev:0df9 +vnd:0bb4+dev:0f26 +vnd:0bb4+dev:0dfa +vnd:0bb4+dev:0dfb +vnd:0bb4+dev:0dfc +vnd:0bb4+dev:0dfd +vnd:0bb4+dev:07a1 +vnd:0bb4+dev:07d8 +vnd:0bb4+dev:0401 +vnd:0bb4+dev:201d +vnd:0bb4+dev:2012 +vnd:0bb4+dev:060b +vnd:0bb4+dev:040b +vnd:0bb4+dev:065c +vnd:0bb4+dev:4ee1 +vnd:0bb4+dev:4ee2 +vnd:0bb4+dev:0dcd +vnd:0bb4+dev:0629 +vnd:0bb4+dev:05e3 +vnd:0bb4+dev:f0ca +vnd:0bb4+dev:0ba1 +vnd:0bb4+dev:0ba2 +vnd:12d1+dev:1082 +vnd:12d1+dev:2608 +vnd:12d1+dev:1079 +vnd:12d1+dev:107a +vnd:12d1+dev:2012 +vnd:12d1+dev:1074 +vnd:12d1+dev:260b +vnd:12d1+dev:360f +vnd:12d1+dev:361f +vnd:12d1+dev:1051 +vnd:12d1+dev:1052 +vnd:12d1+dev:107d +vnd:12d1+dev:107e +vnd:12d1+dev:2406 +vnd:12d1+dev:256b +vnd:12d1+dev:2567 +vnd:12d1+dev:107f +vnd:12d1+dev:257c +vnd:12d1+dev:259c +vnd:12d1+dev:2008 +vnd:12d1+dev:255d +vnd:2207+dev:0017 +vnd:2770+dev:9120 +vnd:093a+dev:010e +vnd:19ff+dev:0303 +vnd:19ff+dev:0309 +vnd:19ff+dev:0307 +vnd:8087+dev:0a5f +vnd:8087+dev:0a15 +vnd:8087+dev:0a16 +vnd:8087+dev:092a +vnd:8087+dev:0a5e +vnd:8087+dev:09fb +vnd:05c6+dev:0a07 +vnd:093a+dev:010f +vnd:4102+dev:1195 +vnd:4102+dev:1200 +vnd:4102+dev:112a +vnd:4102+dev:1126 +vnd:4102+dev:1141 +vnd:4102+dev:1142 +vnd:4102+dev:1152 +vnd:4102+dev:1167 +vnd:4102+dev:1151 +vnd:4102+dev:2101 +vnd:4102+dev:2105 +vnd:4102+dev:2102 +vnd:1006+dev:3004 +vnd:4102+dev:1008 +vnd:4102+dev:1122 +vnd:1006+dev:4002 +vnd:1006+dev:4003 +vnd:4102+dev:1147 +vnd:4102+dev:1113 +vnd:4102+dev:1120 +vnd:4102+dev:1117 +vnd:4102+dev:1115 +vnd:4102+dev:1114 +vnd:4102+dev:1118 +vnd:4102+dev:1119 +vnd:4102+dev:1153 +vnd:4102+dev:1134 +vnd:1042+dev:1143 +vnd:1e68+dev:1002 +vnd:1e68+dev:1007 +vnd:4102+dev:1116 +vnd:4102+dev:1132 +vnd:1f3a+dev:1007 +vnd:0b20+dev:ddee +vnd:0979+dev:0227 +vnd:2770+dev:905c +vnd:0979+dev:0227 +vnd:2770+dev:9120 +vnd:2931+dev:0a01 +vnd:2931+dev:0a05 +vnd:2931+dev:0a07 +vnd:04f1+dev:6105 +vnd:2970+dev:9039 +vnd:0b28+dev:100c +vnd:2237+dev:d108 +vnd:2237+dev:d109 +vnd:2237+dev:b108 +vnd:040a+dev:0617 +vnd:040a+dev:060b +vnd:040a+dev:057e +vnd:040a+dev:058a +vnd:040a+dev:058c +vnd:040a+dev:058d +vnd:040a+dev:0589 +vnd:040a+dev:05aa +vnd:040a+dev:059a +vnd:040a+dev:05a2 +vnd:040a+dev:05b7 +vnd:040a+dev:05ba +vnd:040a+dev:05a7 +vnd:040a+dev:05af +vnd:040a+dev:05ae +vnd:040a+dev:05c3 +vnd:040a+dev:05a9 +vnd:040a+dev:05c6 +vnd:040a+dev:059c +vnd:040a+dev:0560 +vnd:040a+dev:0560 +vnd:040a+dev:0535 +vnd:040a+dev:0566 +vnd:040a+dev:0566 +vnd:040a+dev:0574 +vnd:040a+dev:0573 +vnd:040a+dev:0571 +vnd:040a+dev:0584 +vnd:040a+dev:0579 +vnd:040a+dev:0578 +vnd:040a+dev:0578 +vnd:040a+dev:057a +vnd:040a+dev:057b +vnd:040a+dev:0586 +vnd:040a+dev:057c +vnd:040a+dev:0120 +vnd:040a+dev:0121 +vnd:040a+dev:0130 +vnd:040a+dev:0132 +vnd:040a+dev:0160 +vnd:040a+dev:0131 +vnd:040a+dev:0525 +vnd:040a+dev:0500 +vnd:040a+dev:0510 +vnd:040a+dev:0530 +vnd:040a+dev:0170 +vnd:040a+dev:0555 +vnd:040a+dev:0576 +vnd:040a+dev:0550 +vnd:040a+dev:0570 +vnd:040a+dev:0572 +vnd:040a+dev:0575 +vnd:040a+dev:057d +vnd:040a+dev:057f +vnd:040a+dev:0577 +vnd:040a+dev:0540 +vnd:040a+dev:0568 +vnd:040a+dev:0569 +vnd:040a+dev:0565 +vnd:040a+dev:0567 +vnd:040a+dev:05ce +vnd:040a+dev:0600 +vnd:040a+dev:0665 +vnd:040a+dev:059f +vnd:040a+dev:05c1 +vnd:040a+dev:05ad +vnd:040a+dev:0585 +vnd:040a+dev:0400 +vnd:040a+dev:0592 +vnd:040a+dev:0593 +vnd:040a+dev:058e +vnd:040a+dev:058f +vnd:040a+dev:0591 +vnd:040a+dev:05a0 +vnd:040a+dev:05ac +vnd:040a+dev:05ab +vnd:040a+dev:05b8 +vnd:040a+dev:059d +vnd:040a+dev:059e +vnd:040a+dev:0587 +vnd:040a+dev:05b3 +vnd:040a+dev:05b4 +vnd:040a+dev:0580 +vnd:040a+dev:0588 +vnd:040a+dev:0403 +vnd:040a+dev:05b5 +vnd:040a+dev:0595 +vnd:040a+dev:05cf +vnd:040a+dev:05cd +vnd:040a+dev:0613 +vnd:040a+dev:05c0 +vnd:132b+dev:0001 +vnd:132b+dev:0019 +vnd:132b+dev:0009 +vnd:132b+dev:0007 +vnd:132b+dev:0018 +vnd:132b+dev:0022 +vnd:132b+dev:0033 +vnd:1f3a+dev:1006 +vnd:0482+dev:09fc +vnd:0482+dev:0a73 +vnd:0482+dev:0979 +vnd:0482+dev:0a9a +vnd:0482+dev:0591 +vnd:0482+dev:073c +vnd:0482+dev:085e +vnd:0482+dev:09cb +vnd:0482+dev:0810 +vnd:0482+dev:0571 +vnd:0482+dev:059a +vnd:2770+dev:9051 +vnd:04da+dev:2375 +vnd:1a98+dev:0002 +vnd:1a98+dev:2376 +vnd:04da+dev:2041 +vnd:1a98+dev:2041 +vnd:2b0e+dev:1714 +vnd:2b0e+dev:171b +vnd:17ef+dev:789a +vnd:17ef+dev:789b +vnd:17ef+dev:7928 +vnd:17ef+dev:7929 +vnd:17ef+dev:7737 +vnd:17ef+dev:7738 +vnd:17ef+dev:772b +vnd:17ef+dev:772a +vnd:17ef+dev:7853 +vnd:17ef+dev:7852 +vnd:17ef+dev:7882 +vnd:17ef+dev:7614 +vnd:17ef+dev:7730 +vnd:17ef+dev:7731 +vnd:17ef+dev:7498 +vnd:17ef+dev:7a18 +vnd:17ef+dev:7a36 +vnd:17ef+dev:75bc +vnd:17ef+dev:75be +vnd:17ef+dev:7542 +vnd:17ef+dev:757d +vnd:17ef+dev:76e8 +vnd:17ef+dev:740a +vnd:17ef+dev:7883 +vnd:17ef+dev:7993 +vnd:17ef+dev:7a2a +vnd:17ef+dev:75b5 +vnd:17ef+dev:75b3 +vnd:17ef+dev:7713 +vnd:17ef+dev:778f +vnd:17ef+dev:7c6f +vnd:17ef+dev:775a +vnd:17ef+dev:78b0 +vnd:17ef+dev:74cc +vnd:17ef+dev:9039 +vnd:17ef+dev:7921 +vnd:17ef+dev:7920 +vnd:17ef+dev:7a36 +vnd:17ef+dev:2008 +vnd:17ef+dev:0c02 +vnd:17ef+dev:7497 +vnd:17ef+dev:74a6 +vnd:17ef+dev:78d1 +vnd:17ef+dev:7802 +vnd:17ef+dev:74f8 +vnd:17ef+dev:7718 +vnd:17ef+dev:770a +vnd:17ef+dev:7a50 +vnd:17ef+dev:7949 +vnd:17ef+dev:78da +vnd:17ef+dev:79de +vnd:17ef+dev:7bdf +vnd:17ef+dev:7cb3 +vnd:17ef+dev:7bd3 +vnd:17ef+dev:7d4b +vnd:17ef+dev:77d8 +vnd:17ef+dev:7b25 +vnd:17ef+dev:7ac5 +vnd:17ef+dev:7bc7 +vnd:17ef+dev:7ad0 +vnd:17ef+dev:7b3c +vnd:17ef+dev:7b84 +vnd:17ef+dev:7a6b +vnd:17ef+dev:7c97 +vnd:17ef+dev:7c45 +vnd:17ef+dev:7c46 +vnd:17ef+dev:79a2 +vnd:17ef+dev:79de +vnd:17ef+dev:741c +vnd:17ef+dev:76f2 +vnd:17ef+dev:79b7 +vnd:17ef+dev:78f6 +vnd:17ef+dev:74ee +vnd:17ef+dev:7999 +vnd:17ef+dev:78fc +vnd:17ef+dev:78a7 +vnd:17ef+dev:7902 +vnd:17ef+dev:77ea +vnd:17ef+dev:79af +vnd:17ef+dev:7932 +vnd:17ef+dev:76ff +vnd:17ef+dev:77a5 +vnd:17ef+dev:77a4 +vnd:17ef+dev:77b1 +vnd:17ef+dev:795c +vnd:2b0e+dev:1704 +vnd:2b0e+dev:1840 +vnd:2b0e+dev:1844 +vnd:2b0e+dev:1768 +vnd:2b0e+dev:1778 +vnd:2b0e+dev:1700 +vnd:2b0e+dev:182c +vnd:2b0e+dev:1830 +vnd:1004+dev:6263 +vnd:1004+dev:61f1 +vnd:1004+dev:61f9 +vnd:1004+dev:6225 +vnd:1004+dev:621c +vnd:1004+dev:627f +vnd:1004+dev:626e +vnd:1004+dev:611b +vnd:1004+dev:608f +vnd:1004+dev:6132 +vnd:1004+dev:633e +vnd:1004+dev:633f +vnd:1004+dev:62ce +vnd:1004+dev:62c9 +vnd:1004+dev:6259 +vnd:1004+dev:6239 +vnd:1004+dev:623d +vnd:1004+dev:622a +vnd:1004+dev:619a +vnd:043e+dev:7040 +vnd:1004+dev:628a +vnd:043e+dev:70b1 +vnd:1004+dev:631c +vnd:1004+dev:6265 +vnd:1004+dev:6010 +vnd:13d1+dev:7002 +vnd:1c9e+dev:f003 +vnd:2770+dev:9120 +vnd:2ad9+dev:000b +vnd:066f+dev:846c +vnd:29e4+dev:1201 +vnd:0e8d+dev:0050 +vnd:0e8d+dev:201d +vnd:0e8d+dev:200a +vnd:0e8d+dev:2012 +vnd:0e8d+dev:2008 +vnd:0e8d+dev:4001 +vnd:0408+dev:b00a +vnd:17ef+dev:7483 +vnd:05ca+dev:2205 +vnd:066f+dev:8550 +vnd:066f+dev:8588 +vnd:0408+dev:b009 +vnd:17ef+dev:f003 +vnd:17ef+dev:78ae +vnd:1271+dev:2012 +vnd:201e+dev:42ab +vnd:2a45+dev:2008 +vnd:2a45+dev:0c02 +vnd:18d1+dev:d001 +vnd:10d6+dev:2300 +vnd:0db0+dev:5572 +vnd:045e+dev:0640 +vnd:045e+dev:0a00 +vnd:045e+dev:0622 +vnd:045e+dev:04ec +vnd:045e+dev:0710 +vnd:045e+dev:063e +vnd:045e+dev:f0ca +vnd:045e+dev:00c9 +vnd:045e+dev:0641 +vnd:0c45+dev:8008 +vnd:2770+dev:9120 +vnd:2770+dev:9120 +vnd:22b8+dev:60ca +vnd:22b8+dev:7088 +vnd:22b8+dev:64cf +vnd:22b8+dev:2e32 +vnd:22b8+dev:2e33 +vnd:22b8+dev:2e67 +vnd:22b8+dev:2ea5 +vnd:22b8+dev:2e61 +vnd:22b8+dev:2ea8 +vnd:22b8+dev:2e68 +vnd:22b8+dev:41d6 +vnd:22b8+dev:41da +vnd:22b8+dev:42a7 +vnd:22b8+dev:437f +vnd:22b8+dev:4373 +vnd:22b8+dev:4811 +vnd:22b8+dev:2dff +vnd:22b8+dev:41dc +vnd:22b8+dev:70ca +vnd:22b8+dev:2e76 +vnd:22b8+dev:2e82 +vnd:22b8+dev:2e84 +vnd:22b8+dev:2ea4 +vnd:22b8+dev:2e62 +vnd:22b8+dev:2e63 +vnd:22b8+dev:2e66 +vnd:22b8+dev:2e81 +vnd:22b8+dev:6413 +vnd:22b8+dev:64b5 +vnd:22b8+dev:64b6 +vnd:22b8+dev:2e50 +vnd:22b8+dev:2e51 +vnd:22b8+dev:6415 +vnd:22b8+dev:2a65 +vnd:22b8+dev:2e24 +vnd:22b8+dev:70a3 +vnd:22b8+dev:70a8 +vnd:22b8+dev:70a9 +vnd:22b8+dev:4311 +vnd:22b8+dev:4306 +vnd:22b8+dev:41cf +vnd:22b8+dev:2e83 +vnd:22b8+dev:002e +vnd:22b8+dev:710d +vnd:22b8+dev:710e +vnd:22b8+dev:4362 +vnd:3310+dev:0100 +vnd:0aa6+dev:9601 +vnd:0409+dev:0326 +vnd:0409+dev:0432 +vnd:0409+dev:0242 +vnd:1f85+dev:6a12 +vnd:0402+dev:5668 +vnd:2c3f+dev:0001 +vnd:2770+dev:905c +vnd:04b0+dev:0302 +vnd:04b0+dev:0117 +vnd:04b0+dev:0116 +vnd:04b0+dev:0122 +vnd:04b0+dev:0123 +vnd:04b0+dev:0109 +vnd:04b0+dev:0108 +vnd:04b0+dev:0115 +vnd:04b0+dev:0121 +vnd:04b0+dev:0111 +vnd:04b0+dev:0110 +vnd:04b0+dev:011d +vnd:04b0+dev:012d +vnd:04b0+dev:012c +vnd:04b0+dev:0204 +vnd:04b0+dev:010f +vnd:04b0+dev:010e +vnd:04b0+dev:010b +vnd:04b0+dev:0130 +vnd:04b0+dev:0131 +vnd:04b0+dev:0129 +vnd:04b0+dev:0113 +vnd:04b0+dev:0206 +vnd:04b0+dev:0119 +vnd:04b0+dev:012e +vnd:04b0+dev:010d +vnd:04b0+dev:0135 +vnd:04b0+dev:0139 +vnd:04b0+dev:0137 +vnd:04b0+dev:011f +vnd:04b0+dev:0103 +vnd:04b0+dev:0127 +vnd:04b0+dev:0112 +vnd:04b0+dev:0191 +vnd:04b0+dev:0102 +vnd:04b0+dev:0104 +vnd:04b0+dev:0226 +vnd:04b0+dev:019e +vnd:04b0+dev:0188 +vnd:04b0+dev:0194 +vnd:04b0+dev:0198 +vnd:04b0+dev:0362 +vnd:04b0+dev:0231 +vnd:04b0+dev:0208 +vnd:04b0+dev:030b +vnd:04b0+dev:0174 +vnd:04b0+dev:0309 +vnd:04b0+dev:017e +vnd:04b0+dev:015f +vnd:04b0+dev:0185 +vnd:04b0+dev:0315 +vnd:04b0+dev:0318 +vnd:04b0+dev:0317 +vnd:04b0+dev:0324 +vnd:04b0+dev:0343 +vnd:04b0+dev:0361 +vnd:04b0+dev:0305 +vnd:04b0+dev:032f +vnd:04b0+dev:0192 +vnd:04b0+dev:035a +vnd:04b0+dev:0140 +vnd:04b0+dev:017d +vnd:04b0+dev:0232 +vnd:04b0+dev:0142 +vnd:04b0+dev:0221 +vnd:04b0+dev:0227 +vnd:04b0+dev:020c +vnd:04b0+dev:0169 +vnd:04b0+dev:0184 +vnd:04b0+dev:015b +vnd:04b0+dev:0223 +vnd:04b0+dev:0163 +vnd:04b0+dev:0228 +vnd:04b0+dev:0311 +vnd:04b0+dev:016f +vnd:04b0+dev:017f +vnd:04b0+dev:018b +vnd:04b0+dev:0225 +vnd:04b0+dev:0229 +vnd:04b0+dev:016b +vnd:04b0+dev:016c +vnd:04b0+dev:0173 +vnd:04b0+dev:019c +vnd:04b0+dev:0337 +vnd:04b0+dev:0346 +vnd:04b0+dev:014e +vnd:04b0+dev:0161 +vnd:04b0+dev:0177 +vnd:04b0+dev:0178 +vnd:04b0+dev:0321 +vnd:04b0+dev:032d +vnd:04b0+dev:033f +vnd:04b0+dev:035e +vnd:04b0+dev:031b +vnd:04b0+dev:0320 +vnd:04b0+dev:0334 +vnd:04b0+dev:032a +vnd:04b0+dev:0353 +vnd:04b0+dev:035c +vnd:04b0+dev:0144 +vnd:04b0+dev:0329 +vnd:04b0+dev:015d +vnd:04b0+dev:0220 +vnd:04b0+dev:014e +vnd:04b0+dev:0171 +vnd:04b0+dev:021e +vnd:04b0+dev:021c +vnd:04b0+dev:032c +vnd:04b0+dev:0350 +vnd:04b0+dev:0157 +vnd:04b0+dev:021f +vnd:04b0+dev:0222 +vnd:04b0+dev:0186 +vnd:04b0+dev:0193 +vnd:04b0+dev:034b +vnd:04b0+dev:0202 +vnd:04b0+dev:0401 +vnd:04b0+dev:0404 +vnd:04b0+dev:040c +vnd:04b0+dev:0408 +vnd:04b0+dev:041c +vnd:04b0+dev:040a +vnd:04b0+dev:0402 +vnd:04b0+dev:0410 +vnd:04b0+dev:0416 +vnd:04b0+dev:041a +vnd:04b0+dev:0424 +vnd:04b0+dev:0425 +vnd:04b0+dev:0427 +vnd:04b0+dev:042c +vnd:04b0+dev:0433 +vnd:04b0+dev:043d +vnd:04b0+dev:0445 +vnd:04b0+dev:0426 +vnd:04b0+dev:0420 +vnd:04b0+dev:042b +vnd:04b0+dev:0414 +vnd:04b0+dev:0418 +vnd:04b0+dev:0435 +vnd:04b0+dev:043a +vnd:04b0+dev:043c +vnd:04b0+dev:0423 +vnd:04b0+dev:0429 +vnd:04b0+dev:042f +vnd:04b0+dev:0431 +vnd:04b0+dev:0438 +vnd:04b0+dev:043f +vnd:04b0+dev:0447 +vnd:04b0+dev:041e +vnd:04b0+dev:042d +vnd:04b0+dev:0434 +vnd:04b0+dev:0406 +vnd:04b0+dev:0422 +vnd:04b0+dev:0428 +vnd:04b0+dev:040e +vnd:04b0+dev:0430 +vnd:04b0+dev:0439 +vnd:04b0+dev:0437 +vnd:04b0+dev:0440 +vnd:04b0+dev:0446 +vnd:04b0+dev:0412 +vnd:04b0+dev:042a +vnd:04b0+dev:042e +vnd:04b0+dev:0436 +vnd:04b0+dev:043b +vnd:04b0+dev:0441 +vnd:04b0+dev:0421 +vnd:04b0+dev:0432 +vnd:04b0+dev:0602 +vnd:04b0+dev:0603 +vnd:04b0+dev:0605 +vnd:04b0+dev:0609 +vnd:04b0+dev:060b +vnd:04b0+dev:0364 +vnd:04b0+dev:019f +vnd:04b0+dev:036d +vnd:04b0+dev:0606 +vnd:04b0+dev:0608 +vnd:04b0+dev:0601 +vnd:04b0+dev:0604 +vnd:04b0+dev:060a +vnd:04b0+dev:0452 +vnd:04b0+dev:0448 +vnd:04b0+dev:0444 +vnd:04b0+dev:0443 +vnd:04b0+dev:044c +vnd:04b0+dev:0442 +vnd:04b0+dev:044b +vnd:04b0+dev:0451 +vnd:04b0+dev:0450 +vnd:04b0+dev:044f +vnd:057e+dev:201d +vnd:16c0+dev:0489 +vnd:0979+dev:0224 +vnd:0421+dev:02c1 +vnd:0421+dev:0065 +vnd:0421+dev:005f +vnd:0421+dev:0462 +vnd:0421+dev:01ee +vnd:0421+dev:05c0 +vnd:0421+dev:0209 +vnd:0421+dev:04be +vnd:0421+dev:02e2 +vnd:0421+dev:04ba +vnd:0421+dev:006c +vnd:0421+dev:00ea +vnd:0421+dev:047e +vnd:0421+dev:0229 +vnd:0421+dev:04b4 +vnd:0421+dev:0154 +vnd:0421+dev:0155 +vnd:0421+dev:0159 +vnd:2e04+dev:c025 +vnd:2e04+dev:c026 +vnd:2e04+dev:c02a +vnd:0421+dev:002e +vnd:0421+dev:0098 +vnd:0421+dev:008d +vnd:0421+dev:003c +vnd:0421+dev:0297 +vnd:0421+dev:0530 +vnd:0421+dev:05d3 +vnd:0421+dev:0592 +vnd:0421+dev:0595 +vnd:0421+dev:03c1 +vnd:0421+dev:03cd +vnd:0421+dev:01cf +vnd:0421+dev:032f +vnd:0421+dev:0179 +vnd:0421+dev:00e5 +vnd:0421+dev:0334 +vnd:0421+dev:0335 +vnd:0421+dev:00e4 +vnd:0421+dev:01a1 +vnd:0421+dev:0221 +vnd:0421+dev:06fc +vnd:0421+dev:0666 +vnd:0421+dev:0661 +vnd:0421+dev:0524 +vnd:0421+dev:0488 +vnd:0421+dev:04d1 +vnd:0421+dev:04e1 +vnd:0421+dev:0079 +vnd:0421+dev:0186 +vnd:0421+dev:02fe +vnd:0421+dev:0302 +vnd:0421+dev:04f1 +vnd:0421+dev:000a +vnd:0421+dev:0074 +vnd:0421+dev:0092 +vnd:0421+dev:051a +vnd:0421+dev:0485 +vnd:0421+dev:0478 +vnd:0421+dev:04e5 +vnd:0421+dev:04ef +vnd:0421+dev:006e +vnd:0421+dev:03d2 +vnd:0421+dev:0039 +vnd:0421+dev:01f5 +vnd:0421+dev:026b +vnd:0421+dev:01f4 +vnd:0421+dev:0708 +vnd:0421+dev:0274 +vnd:0421+dev:06e8 +vnd:18d1+dev:685c +vnd:1703+dev:0001 +vnd:1703+dev:0002 +vnd:1e0a+dev:1001 +vnd:0955+dev:70a9 +vnd:0955+dev:7721 +vnd:0955+dev:b401 +vnd:0955+dev:b400 +vnd:0955+dev:b42a +vnd:0955+dev:cf07 +vnd:0955+dev:cf05 +vnd:0955+dev:cf02 +vnd:0955+dev:7100 +vnd:0955+dev:7102 +vnd:0746+dev:a003 +vnd:1e53+dev:0006 +vnd:2833+dev:0183 +vnd:2833+dev:0182 +vnd:07b4+dev:0105 +vnd:07b4+dev:0100 +vnd:07b4+dev:0100 +vnd:07b4+dev:0105 +vnd:07b4+dev:0100 +vnd:07b4+dev:0105 +vnd:07b4+dev:0114 +vnd:07b4+dev:0114 +vnd:07b4+dev:0109 +vnd:07b4+dev:0105 +vnd:07b4+dev:0105 +vnd:07b4+dev:0114 +vnd:07b4+dev:0114 +vnd:07b4+dev:0105 +vnd:07b4+dev:0105 +vnd:07b4+dev:0105 +vnd:07b4+dev:0109 +vnd:07b4+dev:0114 +vnd:07b4+dev:0114 +vnd:07b4+dev:0110 +vnd:07b4+dev:0130 +vnd:07b4+dev:0130 +vnd:07b4+dev:0135 +vnd:07b4+dev:012f +vnd:07b4+dev:0130 +vnd:07b4+dev:012f +vnd:07b4+dev:0109 +vnd:07b4+dev:0116 +vnd:07b4+dev:0114 +vnd:07b4+dev:0113 +vnd:07b4+dev:0136 +vnd:07b4+dev:0109 +vnd:07b4+dev:012f +vnd:07b4+dev:0125 +vnd:07b4+dev:0116 +vnd:07b4+dev:0114 +vnd:07b4+dev:0114 +vnd:07b4+dev:0109 +vnd:07b4+dev:0116 +vnd:07b4+dev:0116 +vnd:2a70+dev:9011 +vnd:2a70+dev:f003 +vnd:05c6+dev:f000 +vnd:2a70+dev:9012 +vnd:2207+dev:000c +vnd:2207+dev:000d +vnd:2207+dev:0014 +vnd:2207+dev:0015 +vnd:22d9+dev:2764 +vnd:22d9+dev:2765 +vnd:22d9+dev:2774 +vnd:22d9+dev:2773 +vnd:2836+dev:0010 +vnd:04da+dev:2382 +vnd:04da+dev:2374 +vnd:04da+dev:2374 +vnd:04da+dev:2374 +vnd:04da+dev:2374 +vnd:04da+dev:2374 +vnd:04da+dev:2374 +vnd:04da+dev:2374 +vnd:04da+dev:2374 +vnd:04da+dev:2374 +vnd:04da+dev:2374 +vnd:04da+dev:2374 +vnd:04da+dev:2374 +vnd:04da+dev:2374 +vnd:04da+dev:2145 +vnd:04da+dev:2158 +vnd:106c+dev:f003 +vnd:19cf+dev:5038 +vnd:19cf+dev:5039 +vnd:1d4d+dev:5036 +vnd:1d4d+dev:5035 +vnd:1d4d+dev:504a +vnd:25fb+dev:0130 +vnd:25fb+dev:0178 +vnd:25fb+dev:0179 +vnd:0a17+dev:0070 +vnd:0a17+dev:00a1 +vnd:0a17+dev:006e +vnd:25fb+dev:0183 +vnd:0a17+dev:0093 +vnd:0a17+dev:0091 +vnd:25fb+dev:0164 +vnd:25fb+dev:0165 +vnd:25fb+dev:017b +vnd:25fb+dev:0132 +vnd:25fb+dev:017a +vnd:25fb+dev:0189 +vnd:25fb+dev:0160 +vnd:25fb+dev:0102 +vnd:25fb+dev:0148 +vnd:25fb+dev:014a +vnd:25fb+dev:017c +vnd:25fb+dev:017d +vnd:25fb+dev:017e +vnd:25fb+dev:017f +vnd:0a17+dev:0009 +vnd:0a17+dev:000d +vnd:0a17+dev:0007 +vnd:0a17+dev:00f7 +vnd:0aa6+dev:9702 +vnd:0471+dev:207c +vnd:0471+dev:20b9 +vnd:0471+dev:2138 +vnd:0471+dev:0165 +vnd:0471+dev:2077 +vnd:0471+dev:208e +vnd:0471+dev:2004 +vnd:0471+dev:0857 +vnd:0471+dev:084e +vnd:0471+dev:2002 +vnd:0471+dev:014f +vnd:0471+dev:2075 +vnd:0471+dev:207b +vnd:0471+dev:20b7 +vnd:0471+dev:20e5 +vnd:0471+dev:014d +vnd:0471+dev:014c +vnd:0471+dev:01eb +vnd:0471+dev:014b +vnd:0471+dev:190b +vnd:093a+dev:010e +vnd:0471+dev:2190 +vnd:0471+dev:7e01 +vnd:0471+dev:0181 +vnd:0471+dev:0164 +vnd:0471+dev:2022 +vnd:0471+dev:0172 +vnd:0471+dev:2008 +vnd:08e4+dev:0142 +vnd:0746+dev:a023 +vnd:08e4+dev:0148 +vnd:093a+dev:010e +vnd:2770+dev:905c +vnd:18dd+dev:1000 +vnd:2770+dev:9120 +vnd:0546+dev:2035 +vnd:0546+dev:0daf +vnd:2770+dev:905c +vnd:2770+dev:9120 +vnd:093a+dev:010f +vnd:29e4+dev:3201 +vnd:29e4+dev:1203 +vnd:29e4+dev:1103 +vnd:29e4+dev:b003 +vnd:29e4+dev:b001 +vnd:46f4+dev:0004 +vnd:0e8d+dev:2026 +vnd:05c6+dev:8800 +vnd:05c6+dev:0229 +vnd:05c6+dev:3196 +vnd:05c6+dev:6764 +vnd:05c6+dev:6765 +vnd:05c6+dev:f003 +vnd:05c6+dev:9039 +vnd:05c6+dev:9025 +vnd:05c6+dev:901b +vnd:22d9+dev:202a +vnd:2523+dev:d209 +vnd:2523+dev:d109 +vnd:2717+dev:1260 +vnd:2717+dev:1268 +vnd:2770+dev:9120 +vnd:05ca+dev:220b +vnd:05ca+dev:2203 +vnd:05ca+dev:2204 +vnd:05ca+dev:2208 +vnd:05ca+dev:220c +vnd:05ca+dev:0325 +vnd:05ca+dev:2214 +vnd:05ca+dev:032d +vnd:05ca+dev:220d +vnd:05ca+dev:2212 +vnd:05ca+dev:032b +vnd:05ca+dev:2213 +vnd:05ca+dev:2216 +vnd:05ca+dev:032f +vnd:05ca+dev:2217 +vnd:05ca+dev:221a +vnd:05ca+dev:0110 +vnd:05ca+dev:2202 +vnd:05ca+dev:033d +vnd:05ca+dev:220d +vnd:25fb+dev:25fb +vnd:05ca+dev:0365 +vnd:05ca+dev:0366 +vnd:05ca+dev:0367 +vnd:05ca+dev:0368 +vnd:05ca+dev:0368 +vnd:05ca+dev:036d +vnd:05ca+dev:036d +vnd:25fb+dev:210b +vnd:0fca+dev:8007 +vnd:05ca+dev:220f +vnd:05ca+dev:220f +vnd:2770+dev:913d +vnd:2770+dev:913d +vnd:2770+dev:913d +vnd:0979+dev:0227 +vnd:0c45+dev:8003 +vnd:0c45+dev:8003 +vnd:0c45+dev:8003 +vnd:093a+dev:010e +vnd:093a+dev:010f +vnd:0979+dev:0227 +vnd:0979+dev:0227 +vnd:2770+dev:9120 +vnd:0979+dev:0227 +vnd:2770+dev:905c +vnd:0979+dev:0227 +vnd:093a+dev:010f +vnd:0979+dev:0227 +vnd:0979+dev:0227 +vnd:0979+dev:0227 +vnd:0979+dev:0227 +vnd:0979+dev:0227 +vnd:0979+dev:0227 +vnd:04e8+dev:6866 +vnd:04e8+dev:6727 +vnd:04e8+dev:6860 +vnd:04e8+dev:685c +vnd:04e8+dev:6877 +vnd:04e8+dev:6752 +vnd:04e8+dev:68af +vnd:04e8+dev:e20c +vnd:04e8+dev:6819 +vnd:04e8+dev:04a4 +vnd:04e8+dev:4f1f +vnd:04e8+dev:6734 +vnd:04e8+dev:6642 +vnd:04e8+dev:140c +vnd:04e8+dev:1384 +vnd:04e8+dev:684a +vnd:04e8+dev:6763 +vnd:04e8+dev:6709 +vnd:04e8+dev:68a9 +vnd:04e8+dev:6702 +vnd:04e8+dev:502e +vnd:04e8+dev:501d +vnd:04e8+dev:5022 +vnd:04e8+dev:502f +vnd:04e8+dev:5024 +vnd:04e8+dev:5a0f +vnd:04e8+dev:5033 +vnd:04e8+dev:0409 +vnd:04e8+dev:5057 +vnd:04e8+dev:5081 +vnd:04e8+dev:505a +vnd:04e8+dev:5118 +vnd:04e8+dev:5083 +vnd:04e8+dev:511a +vnd:04e8+dev:5115 +vnd:04e8+dev:511d +vnd:04e8+dev:5130 +vnd:04e8+dev:5125 +vnd:04e8+dev:510f +vnd:04e8+dev:512e +vnd:04e8+dev:5091 +vnd:04e8+dev:508b +vnd:04e8+dev:508a +vnd:04e8+dev:5047 +vnd:04e8+dev:507f +vnd:04e8+dev:5054 +vnd:04e8+dev:507d +vnd:04e8+dev:5093 +vnd:04e8+dev:5121 +vnd:04e8+dev:5137 +vnd:04e8+dev:503c +vnd:0781+dev:7410 +vnd:0781+dev:7450 +vnd:0781+dev:7452 +vnd:0781+dev:7432 +vnd:0781+dev:7434 +vnd:0781+dev:74e4 +vnd:0781+dev:74d0 +vnd:0781+dev:7480 +vnd:0781+dev:7420 +vnd:0781+dev:7422 +vnd:0781+dev:7460 +vnd:0781+dev:74c0 +vnd:0781+dev:74c2 +vnd:0781+dev:74e0 +vnd:0781+dev:7401 +vnd:0781+dev:7400 +vnd:0781+dev:7430 +vnd:0781+dev:74b0 +vnd:0474+dev:0230 +vnd:0474+dev:02e5 +vnd:05ca+dev:0353 +vnd:05ca+dev:220e +vnd:05ca+dev:0327 +vnd:2770+dev:9120 +vnd:2770+dev:9120 +vnd:2770+dev:9120 +vnd:04dd+dev:9c90 +vnd:04dd+dev:9d6e +vnd:04dd+dev:9661 +vnd:04dd+dev:96ca +vnd:0489+dev:c025 +vnd:04dd+dev:99d2 +vnd:3360+dev:2008 +vnd:093a+dev:010e +vnd:1003+dev:c432 +vnd:1003+dev:c442 +vnd:066f+dev:a010 +vnd:18f6+dev:0102 +vnd:18f6+dev:0110 +vnd:1bdc+dev:fabf +vnd:054c+dev:0e78 +vnd:054c+dev:074e +vnd:054c+dev:07c6 +vnd:054c+dev:0957 +vnd:054c+dev:08e7 +vnd:054c+dev:094e +vnd:054c+dev:08b7 +vnd:054c+dev:0d13 +vnd:054c+dev:0d14 +vnd:054c+dev:079c +vnd:054c+dev:077a +vnd:054c+dev:0784 +vnd:054c+dev:07a4 +vnd:054c+dev:0d0f +vnd:054c+dev:0d10 +vnd:054c+dev:079b +vnd:054c+dev:0779 +vnd:054c+dev:094c +vnd:054c+dev:0c03 +vnd:054c+dev:0c34 +vnd:054c+dev:0da6 +vnd:054c+dev:0da7 +vnd:054c+dev:0953 +vnd:054c+dev:096f +vnd:054c+dev:094d +vnd:054c+dev:0a6b +vnd:054c+dev:0c00 +vnd:054c+dev:0c33 +vnd:054c+dev:0954 +vnd:054c+dev:08e2 +vnd:054c+dev:0a71 +vnd:054c+dev:0c2a +vnd:054c+dev:079e +vnd:054c+dev:0c2f +vnd:054c+dev:0a70 +vnd:054c+dev:1294 +vnd:054c+dev:0ca6 +vnd:054c+dev:02c0 +vnd:054c+dev:0ccc +vnd:054c+dev:0d18 +vnd:054c+dev:0d17 +vnd:054c+dev:02e7 +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:0543 +vnd:054c+dev:061f +vnd:054c+dev:061c +vnd:054c+dev:06ee +vnd:054c+dev:08ac +vnd:054c+dev:0491 +vnd:054c+dev:08ad +vnd:054c+dev:0780 +vnd:054c+dev:09e8 +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:0a77 +vnd:054c+dev:004e +vnd:054c+dev:0bfd +vnd:054c+dev:0c32 +vnd:054c+dev:052b +vnd:054c+dev:052a +vnd:054c+dev:074b +vnd:054c+dev:0a6d +vnd:054c+dev:07a3 +vnd:054c+dev:0cb1 +vnd:054c+dev:0cb2 +vnd:054c+dev:0830 +vnd:054c+dev:0c38 +vnd:054c+dev:0cae +vnd:054c+dev:07a3 +vnd:054c+dev:079d +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:0296 +vnd:054c+dev:004e +vnd:054c+dev:0296 +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:0343 +vnd:054c+dev:02f8 +vnd:054c+dev:004e +vnd:054c+dev:053c +vnd:054c+dev:004e +vnd:054c+dev:08d7 +vnd:054c+dev:08b0 +vnd:054c+dev:0603 +vnd:054c+dev:05f7 +vnd:054c+dev:0d1c +vnd:054c+dev:0caa +vnd:054c+dev:0d2b +vnd:054c+dev:0a6a +vnd:054c+dev:09e7 +vnd:054c+dev:0d9b +vnd:054c+dev:0d9f +vnd:054c+dev:0e0c +vnd:054c+dev:0da3 +vnd:0fce+dev:5175 +vnd:0fce+dev:a175 +vnd:0fce+dev:b175 +vnd:0fce+dev:0172 +vnd:0fce+dev:5172 +vnd:0fce+dev:4172 +vnd:0fce+dev:0186 +vnd:0fce+dev:5186 +vnd:0fce+dev:4186 +vnd:0fce+dev:0169 +vnd:0fce+dev:5169 +vnd:0fce+dev:4169 +vnd:0fce+dev:0175 +vnd:0fce+dev:4175 +vnd:0fce+dev:0176 +vnd:0fce+dev:4176 +vnd:0fce+dev:0177 +vnd:0fce+dev:5177 +vnd:0fce+dev:4177 +vnd:0fce+dev:a177 +vnd:0fce+dev:b177 +vnd:0fce+dev:0178 +vnd:0fce+dev:5178 +vnd:0fce+dev:4178 +vnd:0fce+dev:0182 +vnd:0fce+dev:5182 +vnd:0fce+dev:4182 +vnd:0fce+dev:0173 +vnd:0fce+dev:5173 +vnd:0fce+dev:4173 +vnd:0fce+dev:a173 +vnd:0fce+dev:b173 +vnd:054c+dev:004e +vnd:054c+dev:004e +vnd:054c+dev:072f +vnd:054c+dev:066f +vnd:054c+dev:0678 +vnd:054c+dev:057d +vnd:054c+dev:04a5 +vnd:054c+dev:0d00 +vnd:054c+dev:0e6e +vnd:054c+dev:0c71 +vnd:054c+dev:0d01 +vnd:054c+dev:035c +vnd:054c+dev:0325 +vnd:054c+dev:035b +vnd:054c+dev:0404 +vnd:054c+dev:036e +vnd:054c+dev:03d8 +vnd:054c+dev:04be +vnd:054c+dev:059a +vnd:054c+dev:0689 +vnd:054c+dev:03fc +vnd:054c+dev:04cb +vnd:054c+dev:0882 +vnd:054c+dev:0385 +vnd:054c+dev:03fd +vnd:054c+dev:05a6 +vnd:054c+dev:06a9 +vnd:054c+dev:0326 +vnd:054c+dev:03fe +vnd:054c+dev:0327 +vnd:054c+dev:038e +vnd:054c+dev:035a +vnd:054c+dev:038c +vnd:054c+dev:04cc +vnd:054c+dev:05a8 +vnd:054c+dev:0388 +vnd:054c+dev:04bb +vnd:054c+dev:0397 +vnd:054c+dev:0398 +vnd:054c+dev:004e +vnd:054c+dev:08e3 +vnd:054c+dev:04a7 +vnd:054c+dev:0321 +vnd:054c+dev:0669 +vnd:054c+dev:04a3 +vnd:054c+dev:0669 +vnd:054c+dev:0736 +vnd:054c+dev:0737 +vnd:054c+dev:0574 +vnd:054c+dev:0577 +vnd:054c+dev:0675 +vnd:0fce+dev:5176 +vnd:0fce+dev:a176 +vnd:0fce+dev:b176 +vnd:0fce+dev:0181 +vnd:0fce+dev:5181 +vnd:0fce+dev:4181 +vnd:054c+dev:04d1 +vnd:054c+dev:05b3 +vnd:054c+dev:05b4 +vnd:0fce+dev:0171 +vnd:0fce+dev:0170 +vnd:0fce+dev:5170 +vnd:0fce+dev:4170 +vnd:0fce+dev:0180 +vnd:0fce+dev:5180 +vnd:0fce+dev:4180 +vnd:0fce+dev:5171 +vnd:0fce+dev:4171 +vnd:0fce+dev:017e +vnd:0fce+dev:517e +vnd:0fce+dev:417e +vnd:0fce+dev:a17e +vnd:0fce+dev:b17e +vnd:054c+dev:0a79 +vnd:0fce+dev:016d +vnd:0fce+dev:0205 +vnd:0fce+dev:5205 +vnd:0fce+dev:4205 +vnd:0fce+dev:0201 +vnd:0fce+dev:5201 +vnd:0fce+dev:4201 +vnd:0fce+dev:020a +vnd:0fce+dev:020d +vnd:0fce+dev:520d +vnd:0fce+dev:420d +vnd:0fce+dev:520a +vnd:0fce+dev:420a +vnd:0fce+dev:0198 +vnd:0fce+dev:5198 +vnd:0fce+dev:01a3 +vnd:0fce+dev:51a3 +vnd:0fce+dev:41a3 +vnd:0fce+dev:01d2 +vnd:0fce+dev:51d2 +vnd:0fce+dev:41d2 +vnd:0fce+dev:018c +vnd:0fce+dev:518c +vnd:0fce+dev:418c +vnd:0fce+dev:01b5 +vnd:0fce+dev:51b5 +vnd:0fce+dev:41b5 +vnd:0fce+dev:01bc +vnd:0fce+dev:51bc +vnd:0fce+dev:41bc +vnd:0fce+dev:01c5 +vnd:0fce+dev:51c5 +vnd:0fce+dev:41c5 +vnd:0fce+dev:01cb +vnd:0fce+dev:51cb +vnd:0fce+dev:41cb +vnd:0fce+dev:0188 +vnd:0fce+dev:5188 +vnd:0fce+dev:4188 +vnd:0fce+dev:0192 +vnd:0fce+dev:5192 +vnd:0fce+dev:4192 +vnd:0fce+dev:01f6 +vnd:0fce+dev:51f6 +vnd:0fce+dev:41f6 +vnd:0fce+dev:0207 +vnd:0fce+dev:5207 +vnd:0fce+dev:4207 +vnd:0fce+dev:019b +vnd:0fce+dev:519b +vnd:0fce+dev:419b +vnd:0fce+dev:01b8 +vnd:0fce+dev:51b8 +vnd:0fce+dev:41b8 +vnd:0fce+dev:01ab +vnd:0fce+dev:51ab +vnd:0fce+dev:41ab +vnd:0fce+dev:01aa +vnd:0fce+dev:51aa +vnd:0fce+dev:41aa +vnd:0fce+dev:01c4 +vnd:0fce+dev:51c4 +vnd:0fce+dev:41c4 +vnd:0fce+dev:01d6 +vnd:0fce+dev:51d6 +vnd:0fce+dev:41d6 +vnd:0fce+dev:01e1 +vnd:0fce+dev:51e1 +vnd:0fce+dev:41e1 +vnd:0fce+dev:0195 +vnd:0fce+dev:5195 +vnd:0fce+dev:4195 +vnd:0fce+dev:01a9 +vnd:0fce+dev:51a9 +vnd:0fce+dev:41a9 +vnd:054c+dev:06ac +vnd:0fce+dev:018d +vnd:0fce+dev:0194 +vnd:0fce+dev:518d +vnd:0fce+dev:5194 +vnd:0fce+dev:418d +vnd:0fce+dev:4194 +vnd:0fce+dev:01e8 +vnd:0fce+dev:51e8 +vnd:0fce+dev:41e8 +vnd:0fce+dev:01e0 +vnd:0fce+dev:51e0 +vnd:0fce+dev:41e0 +vnd:0fce+dev:01de +vnd:0fce+dev:51de +vnd:0fce+dev:41de +vnd:0fce+dev:01eb +vnd:0fce+dev:51eb +vnd:0fce+dev:41eb +vnd:0fce+dev:01ef +vnd:0fce+dev:51ef +vnd:0fce+dev:41ef +vnd:0fce+dev:0a07 +vnd:0fce+dev:01f7 +vnd:0fce+dev:51f7 +vnd:0fce+dev:41f7 +vnd:0fce+dev:01f8 +vnd:0fce+dev:51f8 +vnd:0fce+dev:41f8 +vnd:0fce+dev:01ed +vnd:0fce+dev:51ed +vnd:0fce+dev:41ed +vnd:0fce+dev:01e7 +vnd:0fce+dev:51e7 +vnd:0fce+dev:41e7 +vnd:0fce+dev:01f1 +vnd:0fce+dev:51f1 +vnd:0fce+dev:41f1 +vnd:0fce+dev:01f3 +vnd:0fce+dev:51f3 +vnd:0fce+dev:01f4 +vnd:0fce+dev:51f4 +vnd:0fce+dev:41f4 +vnd:0fce+dev:41f3 +vnd:0fce+dev:01fa +vnd:0fce+dev:51fa +vnd:0fce+dev:41fa +vnd:0fce+dev:01f9 +vnd:0fce+dev:51f9 +vnd:0fce+dev:41f9 +vnd:0fce+dev:01fb +vnd:0fce+dev:51fb +vnd:0fce+dev:41fb +vnd:0fce+dev:01ff +vnd:0fce+dev:51ff +vnd:0fce+dev:41ff +vnd:0fce+dev:0193 +vnd:0fce+dev:5193 +vnd:0fce+dev:4193 +vnd:0fce+dev:01b6 +vnd:0fce+dev:0196 +vnd:0fce+dev:019c +vnd:0fce+dev:51b6 +vnd:0fce+dev:5196 +vnd:0fce+dev:519c +vnd:0fce+dev:41b6 +vnd:0fce+dev:419c +vnd:0fce+dev:01a7 +vnd:0fce+dev:41a7 +vnd:0fce+dev:51a7 +vnd:0fce+dev:019e +vnd:0fce+dev:519e +vnd:0fce+dev:419e +vnd:0fce+dev:01af +vnd:0fce+dev:51af +vnd:0fce+dev:41af +vnd:0fce+dev:01b1 +vnd:0fce+dev:51b1 +vnd:0fce+dev:41b1 +vnd:0fce+dev:01bb +vnd:0fce+dev:51bb +vnd:0fce+dev:41bb +vnd:0fce+dev:01ba +vnd:0fce+dev:51ba +vnd:0fce+dev:41ba +vnd:0fce+dev:01c0 +vnd:0fce+dev:51c0 +vnd:0fce+dev:41c0 +vnd:0fce+dev:01c9 +vnd:0fce+dev:51c9 +vnd:0fce+dev:41c9 +vnd:0fce+dev:01b0 +vnd:0fce+dev:51b0 +vnd:0fce+dev:41b0 +vnd:0fce+dev:01da +vnd:0fce+dev:51da +vnd:0fce+dev:41da +vnd:0fce+dev:01d9 +vnd:0fce+dev:51d9 +vnd:0fce+dev:41d9 +vnd:0fce+dev:01db +vnd:0fce+dev:51db +vnd:0fce+dev:41db +vnd:0fce+dev:0189 +vnd:0fce+dev:5189 +vnd:0fce+dev:4189 +vnd:0fce+dev:0197 +vnd:0fce+dev:5197 +vnd:054c+dev:0c1b +vnd:054c+dev:0c44 +vnd:054c+dev:0d97 +vnd:054c+dev:0de3 +vnd:0fce+dev:00d9 +vnd:0fce+dev:00d4 +vnd:0fce+dev:00ef +vnd:0fce+dev:0157 +vnd:0fce+dev:5157 +vnd:0fce+dev:4157 +vnd:0fce+dev:014e +vnd:0fce+dev:d144 +vnd:0fce+dev:0144 +vnd:0fce+dev:e000 +vnd:0fce+dev:0075 +vnd:0fce+dev:514f +vnd:0fce+dev:014f +vnd:0fce+dev:015a +vnd:0fce+dev:515a +vnd:0fce+dev:0156 +vnd:0fce+dev:5156 +vnd:0fce+dev:015d +vnd:0fce+dev:515d +vnd:0fce+dev:0166 +vnd:0fce+dev:5166 +vnd:0fce+dev:0167 +vnd:0fce+dev:5167 +vnd:0fce+dev:0168 +vnd:0fce+dev:5168 +vnd:0fce+dev:4168 +vnd:0fce+dev:0161 +vnd:0fce+dev:5161 +vnd:0fce+dev:00fb +vnd:0fce+dev:0133 +vnd:0fce+dev:013a +vnd:0fce+dev:10c8 +vnd:0fce+dev:00f3 +vnd:0fce+dev:0105 +vnd:0fce+dev:00c6 +vnd:0fce+dev:00b3 +vnd:0fce+dev:00f5 +vnd:0fce+dev:0076 +vnd:0fce+dev:00da +vnd:0fce+dev:0112 +vnd:0fce+dev:516d +vnd:0fce+dev:0146 +vnd:0fce+dev:5146 +vnd:2770+dev:905c +vnd:1782+dev:4001 +vnd:1782+dev:4002 +vnd:1782+dev:4003 +vnd:2770+dev:9120 +vnd:1403+dev:0001 +vnd:2770+dev:905c +vnd:2207+dev:0031 +vnd:2770+dev:913d +vnd:2770+dev:9120 +vnd:0451+dev:d108 +vnd:13d1+dev:7017 +vnd:2367+dev:0102 +vnd:0aa6+dev:3011 +vnd:069b+dev:3035 +vnd:069b+dev:0777 +vnd:069b+dev:0774 +vnd:069b+dev:077c +vnd:069b+dev:301a +vnd:069b+dev:3028 +vnd:4173+dev:8000 +vnd:1f85+dev:6056 +vnd:1390+dev:5455 +vnd:11db+dev:1000 +vnd:0930+dev:0960 +vnd:0930+dev:0963 +vnd:0930+dev:000c +vnd:0930+dev:0009 +vnd:0930+dev:001d +vnd:0930+dev:001a +vnd:0930+dev:0018 +vnd:0930+dev:0011 +vnd:0930+dev:000f +vnd:0930+dev:0010 +vnd:0930+dev:0019 +vnd:0930+dev:0016 +vnd:0930+dev:0014 +vnd:1132+dev:4332 +vnd:1132+dev:4335 +vnd:1132+dev:4334 +vnd:0930+dev:7100 +vnd:2357+dev:0314 +vnd:2357+dev:031a +vnd:2357+dev:033c +vnd:2357+dev:0328 +vnd:2357+dev:0320 +vnd:2357+dev:038c +vnd:0168+dev:3011 +vnd:1e68+dev:0002 +vnd:0402+dev:0611 +vnd:1e68+dev:1045 +vnd:066f+dev:842a +vnd:08ca+dev:0110 +vnd:2207+dev:000b +vnd:2207+dev:0001 +vnd:2207+dev:0011 +vnd:10a9+dev:1105 +vnd:0408+dev:3899 +vnd:2770+dev:9120 +vnd:2770+dev:9120 +vnd:0979+dev:0227 +vnd:093a+dev:010e +vnd:093a+dev:010f +vnd:0c45+dev:800a +vnd:2770+dev:905c +vnd:2d95+dev:6002 +vnd:2d95+dev:6003 +vnd:0e8d+dev:ff00 +vnd:0f88+dev:0684 +vnd:0531+dev:2001 +vnd:0c45+dev:8001 +vnd:2970+dev:201d +vnd:2970+dev:2281 +vnd:2970+dev:2282 +vnd:1e53+dev:0007 +vnd:2717+dev:1360 +vnd:2717+dev:1368 +vnd:2717+dev:1248 +vnd:2717+dev:1240 +vnd:0a9d+dev:ff40 +vnd:2717+dev:f003 +vnd:2717+dev:9039 +vnd:2717+dev:ff40 +vnd:2717+dev:ff48 +vnd:2717+dev:0368 +vnd:2717+dev:0360 +vnd:2717+dev:0660 +vnd:2717+dev:0668 +vnd:2717+dev:ff60 +vnd:2717+dev:ff68 +vnd:2207+dev:0006 +vnd:2916+dev:9139 +vnd:2916+dev:914d +vnd:2916+dev:f003 +vnd:2916+dev:9039 +vnd:1ebf+dev:7f29 +vnd:041e+dev:6000 +vnd:2770+dev:905c +vnd:19d2+dev:2008 +vnd:19d2+dev:0343 +vnd:19d2+dev:ffce +vnd:19d2+dev:0244 +vnd:19d2+dev:0245 +vnd:19d2+dev:0306 +vnd:19d2+dev:0307 +vnd:19d2+dev:0383 +vnd:19d2+dev:ffcf +vnd:2b4c+dev:1004 +vnd:2b4c+dev:1005 +vnd:2b4c+dev:101a +vnd:2b4c+dev:1013 diff --git a/tests/httpcache.c b/tests/httpcache.c index 095b732..a4550fb 100644 --- a/tests/httpcache.c +++ b/tests/httpcache.c @@ -1,10 +1,12 @@ +#include "libglnx.h" +#include "common/flatpak-utils-http-private.h" #include "common/flatpak-utils-private.h" int main (int argc, char *argv[]) { g_autoptr(FlatpakHttpSession) session = flatpak_create_http_session (PACKAGE_STRING); - GError *error = NULL; + g_autoptr(GError) error = NULL; const char *url, *dest; int flags = 0; diff --git a/tests/installed-services/meson.build b/tests/installed-services/meson.build new file mode 100644 index 0000000..ad20f4d --- /dev/null +++ b/tests/installed-services/meson.build @@ -0,0 +1,47 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +foreach triple : [ + ['oci-authenticator', 'org.flatpak.Authenticator.Oci', {}], + ['portal', 'org.freedesktop.portal.Flatpak', { + 'extraargs' : ' --poll-timeout=1', + }], + ['session-helper', 'org.freedesktop.Flatpak', {}], + ['system-helper', 'org.freedesktop.Flatpak.SystemHelper', { + 'extraargs' : ' --session --no-idle-exit', + }], +] + directory = triple[0] + service = triple[1] + options = triple[2] + + configure_file( + input : project_source_root / directory / (service + '.service.in'), + output : service + '.service', + configuration : { + 'extraargs' : options.get('extraargs', ''), + 'libexecdir' : get_option('prefix') / get_option('libexecdir'), + }, + install_dir : installed_testdir / 'services', + ) +endforeach + +foreach service : [ + 'org.flatpak.Authenticator.test', + 'org.freedesktop.impl.portal.desktop.test', +] + configure_file( + input : project_source_root / 'tests' / (service + '.service.in'), + output : service + '.service', + configuration : { + 'libexecdir' : installed_testdir, + }, + install_dir : installed_testdir / 'services', + ) +endforeach + +install_data( + project_source_root / 'tests/test.portal.in', + install_dir : installed_testdir / 'share/xdg-desktop-portal/portals', + rename : 'test.portal', +) diff --git a/tests/installed-tests.sh.in b/tests/installed-tests.sh.in new file mode 100644 index 0000000..e0978ec --- /dev/null +++ b/tests/installed-tests.sh.in @@ -0,0 +1,4 @@ +# Copyright 2024 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +FUSERMOUNT='@FUSERMOUNT@' diff --git a/tests/libtest.sh b/tests/libtest.sh index 36d39ac..d63810e 100644 --- a/tests/libtest.sh +++ b/tests/libtest.sh @@ -38,6 +38,10 @@ else test_builddir=$(dirname $0) fi +if [ -e "$test_srcdir/installed-tests.sh" ]; then + . "$test_srcdir/installed-tests.sh" +fi + # All the asserts and ok functions below are wrapped such that they # don't output any set -x traces of their internals (but still echo # errors to stderr). This way the log output focuses on tracing what @@ -333,7 +337,7 @@ httpd () { rm -f httpd-pipe mkfifo httpd-pipe - PYTHONUNBUFFERED=1 $(dirname $0)/$COMMAND "$DIR" 3> httpd-pipe 2>&1 | tee --append httpd-log >&2 & + PYTHONUNBUFFERED=1 $(dirname $0)/$COMMAND "$DIR" 3> httpd-pipe 2>&1 | tee -a httpd-log >&2 & read < httpd-pipe } @@ -542,7 +546,7 @@ skip_one_without_bwrap () { } skip_without_fuse () { - fusermount --version >/dev/null 2>&1 || skip "no fusermount" + "${FUSERMOUNT}" --version >/dev/null 2>&1 || skip "no fusermount" capsh --print | grep -q 'Bounding set.*[^a-z]cap_sys_admin' || \ skip "No cap_sys_admin in bounding set, can't use FUSE" @@ -608,7 +612,7 @@ commit_to_path () { cleanup () { /bin/kill -9 $DBUS_SESSION_BUS_PID gpg-connect-agent --homedir "${FL_GPG_HOMEDIR}" killagent /bye >&2 || true - fusermount -u $XDG_RUNTIME_DIR/doc >&2 || : + "${FUSERMOUNT}" -u $XDG_RUNTIME_DIR/doc >&2 || : kill $(jobs -p) &> /dev/null || true if test -n "${TEST_SKIP_CLEANUP:-}"; then echo "# Skipping cleanup of ${TEST_DATA_DIR}" diff --git a/tests/list-unused.c b/tests/list-unused.c index 7e2636e..4341fef 100644 --- a/tests/list-unused.c +++ b/tests/list-unused.c @@ -4,10 +4,14 @@ static char **opt_exclude_refs; static gboolean opt_user; +static gboolean opt_filter_eol; +static gboolean opt_filter_autoprune; static GOptionEntry options[] = { { "user", 0, 0, G_OPTION_ARG_NONE, &opt_user, "Work on the user installation", NULL }, { "exclude", 0, 0, G_OPTION_ARG_STRING_ARRAY, &opt_exclude_refs, "Exclude ref", "REF" }, + { "filter-eol", 0, 0, G_OPTION_ARG_NONE, &opt_filter_eol, "Filter results to include end-of-life refs", NULL }, + { "filter-autoprune", 0, 0, G_OPTION_ARG_NONE, &opt_filter_autoprune, "Filter results to include autopruned refs", NULL }, { NULL } }; @@ -19,6 +23,7 @@ main (int argc, char *argv[]) g_autoptr(GError) error = NULL; g_auto(GStrv) refs = NULL; g_autoptr(GOptionContext) context = NULL; + FlatpakDirFilterFlags filter_flags = FLATPAK_DIR_FILTER_NONE; int i; context = g_option_context_new (""); @@ -35,7 +40,13 @@ main (int argc, char *argv[]) else dir = flatpak_dir_get_system_default (); - refs = flatpak_dir_list_unused_refs (dir, NULL, NULL, NULL, (const char * const *)opt_exclude_refs, FALSE, NULL, &error); + if (opt_filter_eol) + filter_flags |= FLATPAK_DIR_FILTER_EOL; + + if (opt_filter_autoprune) + filter_flags |= FLATPAK_DIR_FILTER_AUTOPRUNE; + + refs = flatpak_dir_list_unused_refs (dir, NULL, NULL, NULL, (const char * const *)opt_exclude_refs, filter_flags, NULL, &error); g_assert_nonnull (refs); g_assert_no_error (error); diff --git a/tests/make-test-app.sh b/tests/make-test-app.sh index 36df984..21f7d5b 100755 --- a/tests/make-test-app.sh +++ b/tests/make-test-app.sh @@ -114,6 +114,20 @@ ObjectPath=/org/test/Hello/SearchProvider Version=2 EOF +mkdir -p ${DIR}/files/share/krunner/dbusplugins +cat > ${DIR}/files/share/krunner/dbusplugins/org.test.Hello.desktop <&2 mkdir -p repos diff --git a/tests/meson.build b/tests/meson.build new file mode 100644 index 0000000..cb187d7 --- /dev/null +++ b/tests/meson.build @@ -0,0 +1,416 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +installed_testdir = get_option('prefix') / get_option('libexecdir') / 'installed-tests' / 'Flatpak' +installed_tests_metadir = get_option('prefix') / get_option('datadir') / 'installed-tests' / 'Flatpak' + +if get_option('system_bubblewrap') == '' + env_flatpak_bwrap = project_build_root / 'subprojects' / 'bubblewrap' / 'flatpak-bwrap' +else + env_flatpak_bwrap = get_option('system_bubblewrap') +endif + +if get_option('system_dbus_proxy') == '' + env_flatpak_dbusproxy = project_build_root / 'subprojects' / 'dbus-proxy' / 'flatpak-dbus-proxy' +else + env_flatpak_dbusproxy = get_option('system_dbus_proxy') +endif + +tests_environment = { + 'FLATPAK_CONFIG_DIR' : '/dev/null', + 'FLATPAK_DATA_DIR' : '/dev/null', + 'FLATPAK_PORTAL' : project_build_root / 'portal' / 'flatpak-portal', + 'FLATPAK_REVOKEFS_FUSE' : project_build_root / 'revokefs' / 'revokefs-fuse', + 'FLATPAK_TESTS_DEBUG' : '1', + 'FLATPAK_TESTS_STRICT_TAP' : '1', + 'FLATPAK_TRIGGERSDIR' : project_source_root / 'triggers', + 'FLATPAK_VALIDATE_ICON' : project_build_root / 'icon-validator' / 'flatpak-validate-icon', + 'FUSERMOUNT' : fusermount, + 'G_TEST_BUILDDIR' : meson.current_build_dir(), + 'G_TEST_SRCDIR' : meson.current_source_dir(), + 'FLATPAK_BWRAP' : env_flatpak_bwrap, + 'FLATPAK_DBUSPROXY' : env_flatpak_dbusproxy, +} + +tests_environment_prepend = { + 'GI_TYPELIB_PATH' : project_build_root / 'common', + 'LD_LIBRARY_PATH' : project_build_root / 'common', + 'PATH' : project_build_root / 'app', +} + +lsan_options = 'log_threads=1:suppressions=' + meson.current_source_dir() / 'flatpak-asan.supp' + +if get_option('installed_tests') + configure_file( + input : 'installed-tests.sh.in', + output : 'installed-tests.sh', + configuration : { + 'FUSERMOUNT' : fusermount, + }, + install_dir : installed_testdir, + ) +endif + +# Explicitly doing a find_program() for this avoids lots of output with +# older Meson versions +tap_test = find_program( + files(project_source_root / 'buildutil/tap-test'), +) + +if can_run_host_binaries + runtime_repo = custom_target( + 'runtime-repo', + build_by_default : false, + command : [ + files('make-runtime-repos'), + project_build_root / 'app', + files('make-test-runtime.sh'), + project_build_root / 'tests/runtime-repo', + '@OUTPUT@', + ], + depends : [flatpak_exe], + output : 'runtime-repo.stamp', + ) +endif + +libtestlib = static_library( + 'testlib', + 'testlib.c', + include_directories : [common_include_directories], + dependencies : [ + base_deps, + libglnx_dep, + ], + install : false, +) +libtestlib_dep = declare_dependency( + dependencies : [ + base_deps, + libglnx_dep, + ], + include_directories : [common_include_directories], + link_with : libtestlib, +) + +c_tests = [ + ['testapp', { + 'extra_dependencies' : [ + libflatpak_app_dep, + ], + }], + ['testcommon', {}], + ['testlibrary', { + 'dependencies' : [ + base_deps, + fuse_dep, + libflatpak_dep, + libglnx_dep, + libostree_dep, + ], + 'extra_sources' : [ + 'can-use-fuse.c', + 'testlib.c', + ], + 'timeout' : 150, + }], + ['test-context', {}], + ['test-exports', {}], + ['test-instance', { + 'extra_dependencies' : [ + libglnx_testlib_dep, + ], + }], + ['test-locale-utils', {}], + ['test-portal', { + 'extra_sources' : [ + portal_gdbus[0], + portal_gdbus[1], + ], + }], +] + +foreach testcase : c_tests + name = testcase[0] + options = testcase[1] + + exe = executable( + name, + dependencies : options.get('dependencies', [ + base_deps, + appstream_dep, + json_glib_dep, + libflatpak_common_dep, + libflatpak_common_base_dep, + libglnx_dep, + libostree_dep, + libsoup_dep, + libtestlib_dep, + ] + options.get('extra_dependencies', [])), + sources : [name + '.c'] + options.get('extra_sources', []), + install : get_option('installed_tests'), + install_dir : installed_testdir, + ) + + if get_option('installed_tests') + configure_file( + input : 'tap.test.in', + output : name + '.test', + configuration : { + 'basename' : name, + 'installed_testdir' : installed_testdir, + 'wrapper' : '', + }, + install_dir : installed_tests_metadir, + ) + endif + + test_env = environment(tests_environment) + foreach k, v: tests_environment_prepend + test_env.prepend(k, v) + endforeach + + lsan_log_path = ':log_path=' + meson.current_build_dir() / \ + 'asan_' + name.underscorify() + '.log' + test_env.set('LSAN_OPTIONS', lsan_options + lsan_log_path) + + if can_run_host_binaries + test( + name, + tap_test, + args : [exe], + depends : runtime_repo, + env : test_env, + protocol : 'tap', + timeout : options.get('timeout', 30), + ) + endif +endforeach + +executable( + 'hold-lock', + 'hold-lock.c', + dependencies : [ + base_deps, + libglnx_dep, + ], + include_directories : [common_include_directories], + install : get_option('installed_tests'), + install_dir : installed_testdir, +) + +executable( + 'httpcache', + 'httpcache.c', + dependencies : [ + base_deps, + json_glib_dep, + libflatpak_common_dep, + libflatpak_common_base_dep, + libglnx_dep, + libostree_dep, + libsoup_dep, + ], + include_directories : [common_include_directories], + install : get_option('installed_tests'), + install_dir : installed_testdir, +) + +executable( + 'mock-flatpak', + 'mock-flatpak.c', + dependencies : [ + base_deps, + appstream_dep, + json_glib_dep, + libflatpak_app_dep, + libflatpak_common_dep, + libflatpak_common_base_dep, + libtestlib_dep, + libglnx_dep, + libostree_dep, + libsoup_dep, + ], + install : get_option('installed_tests'), + install_dir : installed_testdir, +) + +executable( + 'test-update-portal', + sources : [ + 'test-update-portal.c', + ] + portal_gdbus, + dependencies : base_deps, + include_directories : [common_include_directories], + install : get_option('installed_tests'), + install_dir : installed_testdir, +) + +executable( + 'test-portal-impl', + 'test-portal-impl.c', + dependencies : base_deps, + include_directories : [common_include_directories], + install : get_option('installed_tests'), + install_dir : installed_testdir, +) + +executable( + 'test-authenticator', + 'test-authenticator.c', + dependencies : [ + base_deps, + libflatpak_common_dep, + libflatpak_common_base_dep, + libglnx_dep, + ], + install : get_option('installed_tests'), + install_dir : installed_testdir, +) + +executable( + 'try-syscall', + 'try-syscall.c', + include_directories : [common_include_directories], + install : get_option('installed_tests'), + install_dir : installed_testdir, + override_options: ['b_sanitize=none'], +) + +executable( + 'list-unused', + 'list-unused.c', + dependencies : [ + base_deps, + libflatpak_common_dep, + libflatpak_common_base_dep, + libglnx_dep, + libostree_dep, + ], + include_directories : [common_include_directories], + install : get_option('installed_tests'), + install_dir : installed_testdir, +) + +subdir('share/xdg-desktop-portal/portals') +subdir('services') +subdir('test-keyring') +subdir('test-keyring2') + +configure_file( + input : 'package_version.txt.in', + output : 'package_version.txt', + configuration : { + 'PACKAGE_VERSION' : meson.project_version(), + }, + install : get_option('installed_tests'), + install_dir : installed_testdir, +) + +if get_option('installed_tests') + subdir('installed-services') + + install_data( + 'http-utils-test-server.py', + 'make-multi-collection-id-repo.sh', + 'make-test-app.sh', + 'make-test-runtime.sh', + 'oci-registry-client.py', + 'oci-registry-server.py', + 'test-webserver.sh', + 'test-wrapper.sh', + 'web-server.py', + + install_dir : installed_testdir, + install_mode : 'rwxr-xr-x', + ) + + install_data( + 'gphoto2-list', + 'libtest.sh', + 'org.flatpak.Authenticator.test.service.in', + 'org.freedesktop.impl.portal.desktop.test.service.in', + 'org.test.Hello.png', + 'session.conf.in', + 'test.filter', + 'test.portal.in', + + install_dir : installed_testdir, + install_mode : 'rw-r--r--', + ) +endif + +shared_module( + 'preload', + 'libpreload.c', + install : get_option('installed_tests'), + install_dir : installed_testdir, + override_options: ['b_sanitize=none'], +) + +wrapped_tests = [] +subdir('test-matrix') + +foreach testcase : wrapped_tests + name = testcase['name'] + script = testcase.get('script', name) + + timeout = { + 'test-bundle.sh' : 60, + 'test-oci-registry.sh' : 60, + 'test-repo.sh' : 300, + 'test-run.sh' : 90, + 'test-summaries.sh' : 60, + 'test-unused.sh' : 90, + 'test-update-portal.sh' : 90, + }.get(script, 30) + + is_parallel = { + 'test-history.sh' : false, + }.get(script, true) + + if get_option('installed_tests') + if name == script + wrapper = '' + else + wrapper = installed_testdir / 'test-wrapper.sh' + endif + + install_data( + script, + install_dir : installed_testdir, + install_mode : 'rwxr-xr-x', + ) + configure_file( + input : 'tap.test.in', + output : name + '.test', + configuration : { + 'basename' : name, + 'installed_testdir' : installed_testdir, + 'wrapper' : wrapper, + }, + install_dir : installed_tests_metadir, + ) + endif + + test_env = environment(tests_environment) + foreach k, v: tests_environment_prepend + test_env.prepend(k, v) + endforeach + + lsan_log_path = ':log_path=' + meson.current_build_dir() / \ + 'asan_' + name.underscorify() + '.log' + test_env.set('LSAN_OPTIONS', lsan_options + lsan_log_path) + + if can_run_host_binaries + test( + name, + tap_test, + args : [meson.current_source_dir() / name], + depends : runtime_repo, + env : test_env, + is_parallel : is_parallel, + protocol : 'tap', + timeout : timeout, + ) + endif +endforeach diff --git a/tests/mock-flatpak.c b/tests/mock-flatpak.c index 0ad14d8..c340c78 100644 --- a/tests/mock-flatpak.c +++ b/tests/mock-flatpak.c @@ -32,7 +32,7 @@ main (int argc, { int i; - g_debug ("This is a mock implementation of `flatpak run` for the portal"); + g_info ("This is a mock implementation of `flatpak run` for the portal"); for (i = 0; i < argc; i++) g_print ("argv[%d] = %s\n", i, argv[i]); diff --git a/tests/package_version.txt b/tests/package_version.txt deleted file mode 100644 index 9beda55..0000000 --- a/tests/package_version.txt +++ /dev/null @@ -1 +0,0 @@ -1.14.10 diff --git a/tests/package_version.txt.in b/tests/package_version.txt.in new file mode 100644 index 0000000..a24f987 --- /dev/null +++ b/tests/package_version.txt.in @@ -0,0 +1 @@ +@PACKAGE_VERSION@ diff --git a/tests/services/meson.build b/tests/services/meson.build new file mode 100644 index 0000000..27eb641 --- /dev/null +++ b/tests/services/meson.build @@ -0,0 +1,28 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +foreach triple : [ + ['oci-authenticator', 'org.flatpak.Authenticator.Oci', {}], + ['portal', 'org.freedesktop.portal.Flatpak', { + 'extraargs' : ' --poll-timeout=1', + }], + ['session-helper', 'org.freedesktop.Flatpak', {}], + ['system-helper', 'org.freedesktop.Flatpak.SystemHelper', { + 'extraargs' : ' --session --no-idle-exit', + }], + ['tests', 'org.flatpak.Authenticator.test', {}], + ['tests', 'org.freedesktop.impl.portal.desktop.test', {}], +] + directory = triple[0] + service = triple[1] + options = triple[2] + + configure_file( + input : project_source_root / directory / (service + '.service.in'), + output : service + '.service', + configuration : { + 'extraargs' : options.get('extraargs', ''), + 'libexecdir' : project_build_root / directory, + } + ) +endforeach diff --git a/tests/share/xdg-desktop-portal/portals/meson.build b/tests/share/xdg-desktop-portal/portals/meson.build new file mode 100644 index 0000000..7364014 --- /dev/null +++ b/tests/share/xdg-desktop-portal/portals/meson.build @@ -0,0 +1,6 @@ +configure_file( + input : project_source_root / 'tests/test.portal.in', + output : 'test.portal', + copy : true, +) + diff --git a/tests/tap.test.in b/tests/tap.test.in new file mode 100644 index 0000000..5289490 --- /dev/null +++ b/tests/tap.test.in @@ -0,0 +1,4 @@ +[Test] +Type=session +Exec=env G_TEST_SRCDIR=@installed_testdir@ G_TEST_BUILDDIR=@installed_testdir@ @wrapper@ @installed_testdir@/@basename@ --tap +Output=TAP diff --git a/tests/test-authenticator.c b/tests/test-authenticator.c index f6b6aa7..521ded4 100644 --- a/tests/test-authenticator.c +++ b/tests/test-authenticator.c @@ -112,7 +112,7 @@ finish_request_ref_tokens (TokenRequestData *data) g_variant_builder_init (&results, G_VARIANT_TYPE ("a{sv}")); g_variant_builder_add (&results, "{sv}", "tokens", g_variant_builder_end (&tokens)); - g_debug ("emitting response"); + g_info ("emitting response"); flatpak_authenticator_request_emit_response (data->request, FLATPAK_AUTH_RESPONSE_OK, g_variant_builder_end (&results)); @@ -130,9 +130,9 @@ http_incoming (GSocketService *service, g_assert_true (data->request != NULL); /* For the test, just assume any connection is a valid use of the web flow */ - g_debug ("handling incoming http request"); + g_info ("handling incoming http request"); - g_debug ("emitting webflow done"); + g_info ("emitting webflow done"); flatpak_authenticator_request_emit_webflow_done (data->request, options); finish_request_ref_tokens (data); @@ -149,7 +149,7 @@ handle_request_close (FlatpakAuthenticatorRequest *object, { TokenRequestData *data = user_data; - g_debug ("handle_request_close"); + g_info ("handle_request_close"); flatpak_authenticator_request_complete_close (object, invocation); @@ -157,7 +157,7 @@ handle_request_close (FlatpakAuthenticatorRequest *object, { GVariantBuilder results; - g_debug ("Webflow was cancelled by client"); + g_info ("Webflow was cancelled by client"); g_variant_builder_init (&results, G_VARIANT_TYPE ("a{sv}")); flatpak_authenticator_request_emit_response (data->request, @@ -166,7 +166,7 @@ handle_request_close (FlatpakAuthenticatorRequest *object, } else { - g_debug ("Ignored webflow cancel by client"); + g_info ("Ignored webflow cancel by client"); finish_request_ref_tokens (data); /* Silently succeed anyway */ } @@ -196,7 +196,7 @@ handle_request_ref_tokens (FlatpakAuthenticator *authenticator, gsize n_refs, i; g_autofree char *options_s = NULL; - g_debug ("handling RequestRefTokens"); + g_info ("handling RequestRefTokens"); options_s = g_variant_print (arg_options, FALSE); write_request (g_strdup_printf ("remote: %s\n" @@ -260,7 +260,7 @@ handle_request_ref_tokens (FlatpakAuthenticator *authenticator, { g_autoptr(GVariant) options = g_variant_ref_sink (g_variant_new_array (G_VARIANT_TYPE ("{sv}"), NULL, 0)); uri = g_strdup_printf ("http://localhost:%d", (int)port); - g_debug ("Requesting webflow %s", uri); + g_info ("Requesting webflow %s", uri); flatpak_authenticator_request_emit_webflow (request, uri, options); } else @@ -279,7 +279,7 @@ on_bus_acquired (GDBusConnection *connection, { GError *error = NULL; - g_debug ("Bus acquired, creating skeleton"); + g_info ("Bus acquired, creating skeleton"); g_dbus_connection_set_exit_on_close (connection, FALSE); @@ -303,7 +303,7 @@ on_name_acquired (GDBusConnection *connection, const gchar *name, gpointer user_data) { - g_debug ("Name acquired"); + g_info ("Name acquired"); } static void @@ -311,7 +311,7 @@ on_name_lost (GDBusConnection *connection, const gchar *name, gpointer user_data) { - g_debug ("Name lost"); + g_info ("Name lost"); } @@ -372,9 +372,9 @@ main (int argc, } if (opt_verbose) - g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG | G_LOG_LEVEL_INFO, message_handler, NULL); + g_log_set_handler (G_LOG_DOMAIN, G_LOG_LEVEL_INFO, message_handler, NULL); - g_debug ("Started test-authenticator"); + g_info ("Started test-authenticator"); session_bus = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &error); if (session_bus == NULL) diff --git a/tests/test-context.c b/tests/test-context.c index 3c4c900..e70e1a1 100644 --- a/tests/test-context.c +++ b/tests/test-context.c @@ -22,7 +22,7 @@ #include #include "flatpak.h" #include "flatpak-context-private.h" -#include "flatpak-run-private.h" +#include "flatpak-metadata-private.h" #include "flatpak-utils-private.h" #include "tests/testlib.h" @@ -501,6 +501,399 @@ test_validate_path_meta (void) } +static void +test_usb_list (void) +{ + const char *gtest_srcdir = NULL; + g_autofree char *test_file_path = NULL; + g_autofree char *content = NULL; + g_autofree char *list = NULL; + gboolean ret = FALSE; + g_autoptr(GError) error = NULL; + g_autoptr(GHashTable) enumerable = g_hash_table_new_full (g_str_hash, g_str_equal, + g_free, (GDestroyNotify) flatpak_usb_query_free); + g_autoptr(GHashTable) hidden = g_hash_table_new_full (g_str_hash, g_str_equal, + g_free, (GDestroyNotify) flatpak_usb_query_free); + + gtest_srcdir = g_getenv ("G_TEST_SRCDIR"); + g_assert (gtest_srcdir); + test_file_path = g_build_filename (gtest_srcdir, "gphoto2-list", NULL); + + ret = g_file_get_contents (test_file_path, &content, NULL, &error); + g_assert (ret); + + ret = flatpak_usb_parse_usb_list (content, enumerable, hidden, &error); + + g_assert (ret); + g_assert_no_error (error); + g_assert_cmpint (g_hash_table_size (hidden), ==, 4); + g_assert_cmpint (g_hash_table_size (enumerable), ==, 2344); + + list = flatpak_context_devices_to_usb_list (hidden, TRUE); + g_assert_cmpstr (list, ==, "!vnd:0502+dev:33c3;!vnd:4102+dev:1213;!vnd:0502+dev:365e;!vnd:0502+dev:387a;"); + + g_hash_table_remove_all (enumerable); + g_hash_table_remove_all (hidden); + ret = flatpak_usb_parse_usb_list (list, enumerable, hidden, &error); + g_assert_cmpint (g_hash_table_size (hidden), ==, 4); + g_assert_cmpint (g_hash_table_size (enumerable), ==, 0); +} + +static void +test_usb_rules_all (void) +{ + g_autoptr(FlatpakUsbRule) usb_rule = NULL; + g_autoptr(GError) local_error = NULL; + gboolean ret = FALSE; + + /* Valid USB 'all' rule */ + ret = flatpak_usb_parse_usb_rule ("all", &usb_rule, &local_error); + g_assert_true (ret); + g_assert_no_error (local_error); + g_assert_cmpint (usb_rule->rule_type, ==, FLATPAK_USB_RULE_TYPE_ALL); + { + g_autoptr(GString) string = g_string_new (NULL); + flatpak_usb_rule_print (usb_rule, string); + g_assert_cmpstr (string->str, ==, "all"); + } + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + + /* Invalid USB 'all' rule */ + ret = flatpak_usb_parse_usb_rule ("all:09", &usb_rule, &local_error); + g_assert_false (ret); + g_assert_null (usb_rule); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_error (&local_error); +} + +static void +test_usb_rules_cls (void) +{ + g_autoptr(FlatpakUsbRule) usb_rule = NULL; + g_autoptr(GError) local_error = NULL; + gboolean ret = FALSE; + + /* Valid USB 'cls' rules */ + ret = flatpak_usb_parse_usb_rule ("cls:09:03", &usb_rule, &local_error); + g_assert_true (ret); + g_assert_no_error (local_error); + g_assert_cmpint (usb_rule->rule_type, ==, FLATPAK_USB_RULE_TYPE_CLASS); + g_assert_cmpint (usb_rule->d.device_class.type, ==, FLATPAK_USB_RULE_CLASS_TYPE_CLASS_SUBCLASS); + g_assert_cmpuint (usb_rule->d.device_class.class, ==, 0x09); + g_assert_cmpuint (usb_rule->d.device_class.subclass, ==, 0x03); + { + g_autoptr(GString) string = g_string_new (NULL); + flatpak_usb_rule_print (usb_rule, string); + g_assert_cmpstr (string->str, ==, "cls:09:03"); + } + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + + ret = flatpak_usb_parse_usb_rule ("cls:09:*", &usb_rule, &local_error); + g_assert_true (ret); + g_assert_no_error (local_error); + g_assert_cmpint (usb_rule->rule_type, ==, FLATPAK_USB_RULE_TYPE_CLASS); + g_assert_cmpint (usb_rule->d.device_class.type, ==, FLATPAK_USB_RULE_CLASS_TYPE_CLASS_ONLY); + g_assert_cmpuint (usb_rule->d.device_class.class, ==, 0x09); + { + g_autoptr(GString) string = g_string_new (NULL); + flatpak_usb_rule_print (usb_rule, string); + g_assert_cmpstr (string->str, ==, "cls:09:*"); + } + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + + ret = flatpak_usb_parse_usb_rule ("cls:00:00", &usb_rule, &local_error); + g_assert_true (ret); + g_assert_no_error (local_error); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + + /* Invalid USB 'cls' rules */ + ret = flatpak_usb_parse_usb_rule ("cls:0009:0003", &usb_rule, &local_error); + g_assert_false (ret); + g_assert_null (usb_rule); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + g_clear_error (&local_error); + + ret = flatpak_usb_parse_usb_rule ("cls:*:03", &usb_rule, &local_error); + g_assert_false (ret); + g_assert_null (usb_rule); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + g_clear_error (&local_error); + + ret = flatpak_usb_parse_usb_rule ("cls:*:*", &usb_rule, &local_error); + g_assert_false (ret); + g_assert_null (usb_rule); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + g_clear_error (&local_error); + + ret = flatpak_usb_parse_usb_rule ("cls:*", &usb_rule, &local_error); + g_assert_false (ret); + g_assert_null (usb_rule); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + g_clear_error (&local_error); + + ret = flatpak_usb_parse_usb_rule ("cls", &usb_rule, &local_error); + g_assert_false (ret); + g_assert_null (usb_rule); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + g_clear_error (&local_error); +} + +static void +test_usb_rules_dev (void) +{ + g_autoptr(FlatpakUsbRule) usb_rule = NULL; + g_autoptr(GError) local_error = NULL; + gboolean ret = FALSE; + + /* Valid USB 'dev' rules */ + ret = flatpak_usb_parse_usb_rule ("dev:0060", &usb_rule, &local_error); + g_assert_true (ret); + g_assert_no_error (local_error); + g_assert_cmpint (usb_rule->rule_type, ==, FLATPAK_USB_RULE_TYPE_DEVICE); + g_assert_cmpuint (usb_rule->d.product.id, ==, 0x0060); + { + g_autoptr(GString) string = g_string_new (NULL); + flatpak_usb_rule_print (usb_rule, string); + g_assert_cmpstr (string->str, ==, "dev:0060"); + } + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + + ret = flatpak_usb_parse_usb_rule ("dev:0000", &usb_rule, &local_error); + g_assert_true (ret); + g_assert_no_error (local_error); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + + /* Invalid USB 'dev' rules */ + ret = flatpak_usb_parse_usb_rule ("dev:00", &usb_rule, &local_error); + g_assert_false (ret); + g_assert_null (usb_rule); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + g_clear_error (&local_error); + + ret = flatpak_usb_parse_usb_rule ("dev:*", &usb_rule, &local_error); + g_assert_false (ret); + g_assert_null (usb_rule); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + g_clear_error (&local_error); + + ret = flatpak_usb_parse_usb_rule ("dev", &usb_rule, &local_error); + g_assert_false (ret); + g_assert_null (usb_rule); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + g_clear_error (&local_error); +} + +static void +test_usb_rules_vnd (void) +{ + g_autoptr(FlatpakUsbRule) usb_rule = NULL; + g_autoptr(GError) local_error = NULL; + gboolean ret = FALSE; + + /* Valid USB 'vnd' rules */ + ret = flatpak_usb_parse_usb_rule ("vnd:0fd9", &usb_rule, &local_error); + g_assert_true (ret); + g_assert_no_error (local_error); + g_assert_cmpint (usb_rule->rule_type, ==, FLATPAK_USB_RULE_TYPE_VENDOR); + g_assert_cmpuint (usb_rule->d.vendor.id, ==, 0x0fd9); + { + g_autoptr(GString) string = g_string_new (NULL); + flatpak_usb_rule_print (usb_rule, string); + g_assert_cmpstr (string->str, ==, "vnd:0fd9"); + } + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + + ret = flatpak_usb_parse_usb_rule ("vnd:0000", &usb_rule, &local_error); + g_assert_true (ret); + g_assert_no_error (local_error); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + + /* Invalid USB 'vnd' rules */ + ret = flatpak_usb_parse_usb_rule ("vnd:00", &usb_rule, &local_error); + g_assert_false (ret); + g_assert_null (usb_rule); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + g_clear_error (&local_error); + + ret = flatpak_usb_parse_usb_rule ("vnd:*", &usb_rule, &local_error); + g_assert_false (ret); + g_assert_null (usb_rule); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + g_clear_error (&local_error); + + ret = flatpak_usb_parse_usb_rule ("vnd", &usb_rule, &local_error); + g_assert_false (ret); + g_assert_null (usb_rule); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_rule, flatpak_usb_rule_free); + g_clear_error (&local_error); +} + +static void +test_usb_query_simple (void) +{ + g_autoptr(FlatpakUsbQuery) usb_query = NULL; + g_autoptr(GError) local_error = NULL; + gboolean ret = FALSE; + + ret = flatpak_usb_parse_usb ("all", &usb_query, &local_error); + g_assert_true (ret); + g_assert_nonnull (usb_query); + g_assert_no_error (local_error); + g_assert_cmpuint (usb_query->rules->len, ==, 1); + { + FlatpakUsbRule *usb_rule = g_ptr_array_index (usb_query->rules, 0); + g_assert_cmpint (usb_rule->rule_type, ==, FLATPAK_USB_RULE_TYPE_ALL); + } + { + g_autoptr(GString) string = g_string_new (NULL); + flatpak_usb_query_print (usb_query, string); + g_assert_cmpstr (string->str, ==, "all"); + } + g_clear_pointer (&usb_query, flatpak_usb_query_free); + + ret = flatpak_usb_parse_usb ("cls:03:*", &usb_query, &local_error); + g_assert_true (ret); + g_assert_nonnull (usb_query); + g_assert_no_error (local_error); + g_assert_cmpuint (usb_query->rules->len, ==, 1); + { + FlatpakUsbRule *usb_rule = g_ptr_array_index (usb_query->rules, 0); + g_assert_cmpint (usb_rule->rule_type, ==, FLATPAK_USB_RULE_TYPE_CLASS); + g_assert_cmpint (usb_rule->d.device_class.type, ==, FLATPAK_USB_RULE_CLASS_TYPE_CLASS_ONLY); + g_assert_cmpuint (usb_rule->d.device_class.class, ==, 0x03); + } + { + g_autoptr(GString) string = g_string_new (NULL); + flatpak_usb_query_print (usb_query, string); + g_assert_cmpstr (string->str, ==, "cls:03:*"); + } + g_clear_pointer (&usb_query, flatpak_usb_query_free); + + ret = flatpak_usb_parse_usb ("vnd:0fd9", &usb_query, &local_error); + g_assert_true (ret); + g_assert_nonnull (usb_query); + g_assert_no_error (local_error); + g_assert_cmpuint (usb_query->rules->len, ==, 1); + { + FlatpakUsbRule *usb_rule = g_ptr_array_index (usb_query->rules, 0); + g_assert_cmpint (usb_rule->rule_type, ==, FLATPAK_USB_RULE_TYPE_VENDOR); + g_assert_cmpuint (usb_rule->d.vendor.id, ==, 0x0fd9); + } + { + g_autoptr(GString) string = g_string_new (NULL); + flatpak_usb_query_print (usb_query, string); + g_assert_cmpstr (string->str, ==, "vnd:0fd9"); + } + g_clear_pointer (&usb_query, flatpak_usb_query_free); + + /* Invalid USB query */ + ret = flatpak_usb_parse_usb ("all:0123", &usb_query, &local_error); + g_assert_false (ret); + g_assert_null (usb_query); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_query, flatpak_usb_query_free); + g_clear_error (&local_error); + + /* Invalid empty USB query */ + ret = flatpak_usb_parse_usb ("", &usb_query, &local_error); + g_assert_false (ret); + g_assert_null (usb_query); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_query, flatpak_usb_query_free); + g_clear_error (&local_error); +} + +static void +test_usb_query_device_and_vendor (void) +{ + g_autoptr(FlatpakUsbQuery) usb_query = NULL; + g_autoptr(GError) local_error = NULL; + gboolean ret = FALSE; + + ret = flatpak_usb_parse_usb ("vnd:0fd9+dev:0063", &usb_query, &local_error); + g_assert_true (ret); + g_assert_no_error (local_error); + g_assert_cmpuint (usb_query->rules->len, ==, 2); + { + FlatpakUsbRule *usb_rule; + + usb_rule = g_ptr_array_index (usb_query->rules, 0); + g_assert_cmpint (usb_rule->rule_type, ==, FLATPAK_USB_RULE_TYPE_VENDOR); + g_assert_cmpuint (usb_rule->d.vendor.id, ==, 0x0fd9); + + usb_rule = g_ptr_array_index (usb_query->rules, 1); + g_assert_cmpint (usb_rule->rule_type, ==, FLATPAK_USB_RULE_TYPE_DEVICE); + g_assert_cmpuint (usb_rule->d.product.id, ==, 0x063); + } + { + g_autoptr(GString) string = g_string_new (NULL); + flatpak_usb_query_print (usb_query, string); + g_assert_cmpstr (string->str, ==, "vnd:0fd9+dev:0063"); + } + g_clear_pointer (&usb_query, flatpak_usb_query_free); + + ret = flatpak_usb_parse_usb ("vnd:0fd9+dev:0063+cls:09:*", &usb_query, &local_error); + g_assert_true (ret); + g_assert_no_error (local_error); + g_assert_cmpuint (usb_query->rules->len, ==, 3); + { + FlatpakUsbRule *usb_rule; + + usb_rule = g_ptr_array_index (usb_query->rules, 0); + g_assert_cmpint (usb_rule->rule_type, ==, FLATPAK_USB_RULE_TYPE_VENDOR); + g_assert_cmpuint (usb_rule->d.vendor.id, ==, 0x0fd9); + + usb_rule = g_ptr_array_index (usb_query->rules, 1); + g_assert_cmpint (usb_rule->rule_type, ==, FLATPAK_USB_RULE_TYPE_DEVICE); + g_assert_cmpuint (usb_rule->d.product.id, ==, 0x063); + + usb_rule = g_ptr_array_index (usb_query->rules, 2); + g_assert_cmpint (usb_rule->rule_type, ==, FLATPAK_USB_RULE_TYPE_CLASS); + g_assert_cmpint (usb_rule->d.device_class.type, ==, FLATPAK_USB_RULE_CLASS_TYPE_CLASS_ONLY); + g_assert_cmpuint (usb_rule->d.device_class.class, ==, 0x09); + } + { + g_autoptr(GString) string = g_string_new (NULL); + flatpak_usb_query_print (usb_query, string); + g_assert_cmpstr (string->str, ==, "vnd:0fd9+dev:0063+cls:09:*"); + } + g_clear_pointer (&usb_query, flatpak_usb_query_free); + + /* Device without vendor is invalid */ + ret = flatpak_usb_parse_usb ("dev:0063", &usb_query, &local_error); + g_assert_false (ret); + g_assert_null (usb_query); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_query, flatpak_usb_query_free); + g_clear_error (&local_error); + + /* 'all' in the query invalidates further rules */ + ret = flatpak_usb_parse_usb ("all+dev:0063", &usb_query, &local_error); + g_assert_false (ret); + g_assert_null (usb_query); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_query, flatpak_usb_query_free); + g_clear_error (&local_error); + + ret = flatpak_usb_parse_usb ("all+vnd:0fd+dev:0063", &usb_query, &local_error); + g_assert_false (ret); + g_assert_null (usb_query); + g_assert_error (local_error, G_OPTION_ERROR, G_OPTION_ERROR_BAD_VALUE); + g_clear_pointer (&usb_query, flatpak_usb_query_free); + g_clear_error (&local_error); +} + int main (int argc, char *argv[]) { @@ -512,5 +905,14 @@ main (int argc, char *argv[]) g_test_add_func ("/context/validate-path-args", test_validate_path_args); g_test_add_func ("/context/validate-path-meta", test_validate_path_meta); + g_test_add_func ("/context/usb-list", test_usb_list); + g_test_add_func ("/context/usb-rules/all", test_usb_rules_all); + g_test_add_func ("/context/usb-rules/cls", test_usb_rules_cls); + g_test_add_func ("/context/usb-rules/dev", test_usb_rules_dev); + g_test_add_func ("/context/usb-rules/vnd", test_usb_rules_vnd); + + g_test_add_func ("/context/usb-query/simple", test_usb_query_simple); + g_test_add_func ("/context/usb-query/device-and-vendor", test_usb_query_device_and_vendor); + return g_test_run (); } diff --git a/tests/test-exports.c b/tests/test-exports.c index 931dcb5..f973cbe 100644 --- a/tests/test-exports.c +++ b/tests/test-exports.c @@ -26,8 +26,9 @@ #include "flatpak-bwrap-private.h" #include "flatpak-context-private.h" #include "flatpak-exports-private.h" -#include "flatpak-run-private.h" +#include "flatpak-metadata-private.h" #include "flatpak-utils-base-private.h" +#include "flatpak-utils-private.h" #include "tests/testlib.h" @@ -225,7 +226,7 @@ test_full_context (void) FLATPAK_METADATA_GROUP_CONTEXT, FLATPAK_METADATA_KEY_SOCKETS, "x11;wayland;pulseaudio;session-bus;system-bus;" - "fallback-x11;ssh-auth;pcsc;cups;"); + "fallback-x11;ssh-auth;pcsc;cups;inherit-wayland-socket;"); g_key_file_set_value (keyfile, FLATPAK_METADATA_GROUP_CONTEXT, FLATPAK_METADATA_KEY_DEVICES, @@ -280,6 +281,7 @@ test_full_context (void) g_assert_cmpuint (context->sockets, ==, (FLATPAK_CONTEXT_SOCKET_X11 | FLATPAK_CONTEXT_SOCKET_WAYLAND | + FLATPAK_CONTEXT_SOCKET_INHERIT_WAYLAND_SOCKET | FLATPAK_CONTEXT_SOCKET_PULSEAUDIO | FLATPAK_CONTEXT_SOCKET_SESSION_BUS | FLATPAK_CONTEXT_SOCKET_SYSTEM_BUS | @@ -340,8 +342,7 @@ test_full_context (void) &n, &error); g_assert_nonnull (strv); /* The order is undefined, so sort them first */ - g_qsort_with_data (strv, n, sizeof (char *), - (GCompareDataFunc) flatpak_strcmp0_ptr, NULL); + qsort (strv, n, sizeof (char *), flatpak_strcmp0_ptr); i = 0; g_assert_cmpstr (strv[i++], ==, "!/opt"); g_assert_cmpstr (strv[i++], ==, "/home"); @@ -355,8 +356,7 @@ test_full_context (void) &n, &error); g_assert_no_error (error); g_assert_nonnull (strv); - g_qsort_with_data (strv, n, sizeof (char *), - (GCompareDataFunc) flatpak_strcmp0_ptr, NULL); + qsort (strv, n, sizeof (char *), flatpak_strcmp0_ptr); i = 0; g_assert_cmpstr (strv[i++], ==, "ipc"); g_assert_cmpstr (strv[i++], ==, "network"); @@ -369,11 +369,11 @@ test_full_context (void) &n, &error); g_assert_no_error (error); g_assert_nonnull (strv); - g_qsort_with_data (strv, n, sizeof (char *), - (GCompareDataFunc) flatpak_strcmp0_ptr, NULL); + qsort (strv, n, sizeof (char *), flatpak_strcmp0_ptr); i = 0; g_assert_cmpstr (strv[i++], ==, "cups"); g_assert_cmpstr (strv[i++], ==, "fallback-x11"); + g_assert_cmpstr (strv[i++], ==, "inherit-wayland-socket"); g_assert_cmpstr (strv[i++], ==, "pcsc"); g_assert_cmpstr (strv[i++], ==, "pulseaudio"); g_assert_cmpstr (strv[i++], ==, "session-bus"); @@ -390,8 +390,7 @@ test_full_context (void) &n, &error); g_assert_no_error (error); g_assert_nonnull (strv); - g_qsort_with_data (strv, n, sizeof (char *), - (GCompareDataFunc) flatpak_strcmp0_ptr, NULL); + qsort (strv, n, sizeof (char *), flatpak_strcmp0_ptr); i = 0; g_assert_cmpstr (strv[i++], ==, "all"); g_assert_cmpstr (strv[i++], ==, "dri"); @@ -406,8 +405,7 @@ test_full_context (void) &n, &error); g_assert_no_error (error); g_assert_nonnull (strv); - g_qsort_with_data (strv, n, sizeof (char *), - (GCompareDataFunc) flatpak_strcmp0_ptr, NULL); + qsort (strv, n, sizeof (char *), flatpak_strcmp0_ptr); i = 0; g_assert_cmpstr (strv[i++], ==, ".openarena"); g_assert_cmpstr (strv[i], ==, NULL); @@ -419,8 +417,7 @@ test_full_context (void) &n, &error); g_assert_no_error (error); g_assert_nonnull (strv); - g_qsort_with_data (strv, n, sizeof (char *), - (GCompareDataFunc) flatpak_strcmp0_ptr, NULL); + qsort (strv, n, sizeof (char *), flatpak_strcmp0_ptr); i = 0; g_assert_cmpstr (strv[i++], ==, "LD_AUDIT"); g_assert_cmpstr (strv[i++], ==, "LD_PRELOAD"); @@ -432,8 +429,7 @@ test_full_context (void) &n, &error); g_assert_no_error (error); g_assert_nonnull (strv); - g_qsort_with_data (strv, n, sizeof (char *), - (GCompareDataFunc) flatpak_strcmp0_ptr, NULL); + qsort (strv, n, sizeof (char *), flatpak_strcmp0_ptr); i = 0; g_assert_cmpstr (strv[i++], ==, "org.example.SessionService"); g_assert_cmpstr (strv[i], ==, NULL); @@ -450,8 +446,7 @@ test_full_context (void) &n, &error); g_assert_no_error (error); g_assert_nonnull (strv); - g_qsort_with_data (strv, n, sizeof (char *), - (GCompareDataFunc) flatpak_strcmp0_ptr, NULL); + qsort (strv, n, sizeof (char *), flatpak_strcmp0_ptr); i = 0; g_assert_cmpstr (strv[i++], ==, "net.example.SystemService"); g_assert_cmpstr (strv[i], ==, NULL); @@ -468,8 +463,7 @@ test_full_context (void) &n, &error); g_assert_no_error (error); g_assert_nonnull (strv); - g_qsort_with_data (strv, n, sizeof (char *), - (GCompareDataFunc) flatpak_strcmp0_ptr, NULL); + qsort (strv, n, sizeof (char *), flatpak_strcmp0_ptr); i = 0; g_assert_cmpstr (strv[i++], ==, "HYPOTHETICAL_PATH"); g_assert_cmpstr (strv[i++], ==, "LD_AUDIT"); @@ -498,8 +492,7 @@ test_full_context (void) &n, &error); g_assert_no_error (error); g_assert_nonnull (strv); - g_qsort_with_data (strv, n, sizeof (char *), - (GCompareDataFunc) flatpak_strcmp0_ptr, NULL); + qsort (strv, n, sizeof (char *), flatpak_strcmp0_ptr); i = 0; g_assert_cmpstr (strv[i++], ==, "Colours"); g_assert_cmpstr (strv[i], ==, NULL); @@ -510,8 +503,7 @@ test_full_context (void) "Colours", &n, &error); g_assert_no_error (error); g_assert_nonnull (strv); - g_qsort_with_data (strv, n, sizeof (char *), - (GCompareDataFunc) flatpak_strcmp0_ptr, NULL); + qsort (strv, n, sizeof (char *), flatpak_strcmp0_ptr); i = 0; g_assert_cmpstr (strv[i++], ==, "blue"); g_assert_cmpstr (strv[i++], ==, "green"); @@ -1007,7 +999,7 @@ test_host_exports_setup (const FakeFile *files, glnx_openat_rdonly (AT_FDCWD, host, TRUE, &fd, &error); g_assert_no_error (error); g_assert_cmpint (fd, >=, 0); - flatpak_exports_take_host_fd (exports, glnx_steal_fd (&fd)); + flatpak_exports_take_host_fd (exports, g_steal_fd (&fd)); if (etc_mode > FLATPAK_FILESYSTEM_MODE_NONE) flatpak_exports_add_host_etc_expose (exports, etc_mode); diff --git a/tests/test-instance.c b/tests/test-instance.c index 8954366..bd6d06b 100644 --- a/tests/test-instance.c +++ b/tests/test-instance.c @@ -30,7 +30,7 @@ #include "flatpak.h" #include "flatpak-instance-private.h" -#include "flatpak-run-private.h" +#include "flatpak-metadata-private.h" #include "libglnx.h" #include "tests/libglnx-testlib.h" diff --git a/tests/test-keyring/meson.build b/tests/test-keyring/meson.build new file mode 100644 index 0000000..b0f4851 --- /dev/null +++ b/tests/test-keyring/meson.build @@ -0,0 +1,17 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +foreach file : [ + 'README', + 'pubring.gpg', + 'secring.gpg', +] + configure_file( + input : file, + output : file, + copy : true, + install : get_option('installed_tests'), + install_dir : installed_testdir / 'test-keyring', + install_mode : 'rw-r--r--', + ) +endforeach diff --git a/tests/test-keyring2/meson.build b/tests/test-keyring2/meson.build new file mode 100644 index 0000000..0c653a0 --- /dev/null +++ b/tests/test-keyring2/meson.build @@ -0,0 +1,17 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +foreach file : [ + 'README', + 'pubring.gpg', + 'secring.gpg', +] + configure_file( + input : file, + output : file, + copy : true, + install : get_option('installed_tests'), + install_dir : installed_testdir / 'test-keyring2', + install_mode : 'rw-r--r--', + ) +endforeach diff --git a/tests/test-locale-utils.c b/tests/test-locale-utils.c new file mode 100644 index 0000000..38e7087 --- /dev/null +++ b/tests/test-locale-utils.c @@ -0,0 +1,212 @@ +/* + * Copyright 2023 Collabora Ltd. + * SPDX-License-Identifier: LGPL-2.1-or-later + */ + +#include "config.h" + +#include +#include "libglnx.h" +#include "flatpak.h" + +#include "flatpak-locale-utils-private.h" + +#include "tests/testlib.h" + +static void +test_get_system_locales (void) +{ + const GPtrArray *result = flatpak_get_system_locales (); + const GPtrArray *again; + gsize i; + + g_test_message ("System locales:"); + + for (i = 0; i < result->len; i++) + { + if (i == result->len - 1) + { + g_test_message ("(end)"); + g_assert_null (g_ptr_array_index (result, i)); + } + else + { + g_assert_nonnull (g_ptr_array_index (result, i)); + g_test_message ("- %s", (char *) g_ptr_array_index (result, i)); + } + } + + again = flatpak_get_system_locales (); + g_assert_cmpuint (again->len, ==, result->len); + + for (i = 0; i < again->len; i++) + g_assert_cmpstr (g_ptr_array_index (again, i), ==, g_ptr_array_index (result, i)); +} + +static void +test_get_user_locales (void) +{ + const GPtrArray *result = flatpak_get_user_locales (); + const GPtrArray *again; + gsize i; + + g_test_message ("User locales:"); + + for (i = 0; i < result->len; i++) + { + if (i == result->len - 1) + { + g_test_message ("(end)"); + g_assert_null (g_ptr_array_index (result, i)); + } + else + { + g_assert_nonnull (g_ptr_array_index (result, i)); + g_test_message ("- %s", (char *) g_ptr_array_index (result, i)); + } + } + + again = flatpak_get_user_locales (); + g_assert_cmpuint (again->len, ==, result->len); + + for (i = 0; i < again->len; i++) + g_assert_cmpstr (g_ptr_array_index (again, i), ==, g_ptr_array_index (result, i)); +} + +static const struct +{ + const char *in; + const char *expected; +} lang_from_locale_tests[] = +{ + { "C", NULL }, + { "C.UTF-8", NULL }, + { "en.ISO-8859-15", "en" }, + { "en@cantab", "en" }, + { "en_GB", "en" }, + { "en_US.utf8", "en" }, + { "sv_FI@euro", "sv" }, +}; + +static void +test_lang_from_locale (void) +{ + gsize i; + + for (i = 0; i < G_N_ELEMENTS (lang_from_locale_tests); i++) + { + const char *in = lang_from_locale_tests[i].in; + const char *expected = lang_from_locale_tests[i].expected; + g_autofree char *actual = NULL; + + g_test_message ("%s", in); + actual = flatpak_get_lang_from_locale (in); + g_test_message ("-> %s", actual ? actual : "(null)"); + g_assert_cmpstr (actual, ==, expected); + } +} + +static void +test_langs_from_accountsservice (void) +{ + g_autoptr(GDBusProxy) proxy = flatpak_locale_get_accounts_dbus_proxy (); + g_autoptr(GPtrArray) langs = g_ptr_array_new_with_free_func (g_free); + gsize i; + + if (proxy == NULL) + { + g_test_skip ("Unable to communicate with accountsservice"); + return; + } + + if (flatpak_get_all_langs_from_accounts_dbus (proxy, langs)) + { + g_test_message ("Languages from accountsservice (new method):"); + + for (i = 0; i < langs->len; i++) + { + g_assert_nonnull (g_ptr_array_index (langs, i)); + g_test_message ("- %s", (char *) g_ptr_array_index (langs, i)); + } + + g_test_message ("(end)"); + } + else + { + g_test_message ("accountsservice doesn't support GetUsersLanguages"); + } + + g_ptr_array_set_size (langs, 0); + flatpak_get_locale_langs_from_accounts_dbus (proxy, langs); + + g_test_message ("Languages from accountsservice (old method):"); + + for (i = 0; i < langs->len; i++) + { + g_assert_nonnull (g_ptr_array_index (langs, i)); + g_test_message ("- %s", (char *) g_ptr_array_index (langs, i)); + } + + g_test_message ("(end)"); + + g_ptr_array_set_size (langs, 0); + flatpak_get_locale_langs_from_accounts_dbus_for_user (proxy, langs, getuid ()); + + g_test_message ("Languages from accountsservice (for uid %u only):", getuid ()); + + for (i = 0; i < langs->len; i++) + { + g_assert_nonnull (g_ptr_array_index (langs, i)); + g_test_message ("- %s", (char *) g_ptr_array_index (langs, i)); + } + + g_test_message ("(end)"); +} + +static void +test_langs_from_localed (void) +{ + g_autoptr(GDBusProxy) proxy = flatpak_locale_get_localed_dbus_proxy (); + g_autoptr(GPtrArray) langs = g_ptr_array_new_with_free_func (g_free); + gsize i; + + if (proxy == NULL) + { + g_test_skip ("Unable to communicate with localed"); + return; + } + + flatpak_get_locale_langs_from_localed_dbus (proxy, langs); + + g_test_message ("Languages from localed:"); + + for (i = 0; i < langs->len; i++) + { + g_assert_nonnull (g_ptr_array_index (langs, i)); + g_test_message ("- %s", (char *) g_ptr_array_index (langs, i)); + } + + g_test_message ("(end)"); +} + +int +main (int argc, char *argv[]) +{ + int res; + + g_test_init (&argc, &argv, NULL); + isolated_test_dir_global_setup (); + + g_test_add_func ("/locale/get-system-locales", test_get_system_locales); + g_test_add_func ("/locale/get-user-locales", test_get_user_locales); + g_test_add_func ("/locale/lang-from-locale", test_lang_from_locale); + g_test_add_func ("/locale/langs-from-accountsservice", + test_langs_from_accountsservice); + g_test_add_func ("/locale/langs-from-localed", test_langs_from_localed); + + res = g_test_run (); + + isolated_test_dir_global_teardown (); + + return res; +} diff --git a/tests/test-matrix/meson.build b/tests/test-matrix/meson.build new file mode 100644 index 0000000..1517604 --- /dev/null +++ b/tests/test-matrix/meson.build @@ -0,0 +1,45 @@ +# This file is autogenerated by ./tests/update-test-matrix, don't edit +wrapped_tests += {'name' : 'test-run@user,nodeltas.wrap', 'script' : 'test-run.sh'} +wrapped_tests += {'name' : 'test-run@user,deltas.wrap', 'script' : 'test-run.sh'} +wrapped_tests += {'name' : 'test-run@system,nodeltas.wrap', 'script' : 'test-run.sh'} +wrapped_tests += {'name' : 'test-run@system,deltas.wrap', 'script' : 'test-run.sh'} +wrapped_tests += {'name' : 'test-run@system-norevokefs,nodeltas.wrap', 'script' : 'test-run.sh'} +wrapped_tests += {'name' : 'test-run@system-norevokefs,deltas.wrap', 'script' : 'test-run.sh'} +wrapped_tests += {'name' : 'test-info@user.wrap', 'script' : 'test-info.sh'} +wrapped_tests += {'name' : 'test-info@system.wrap', 'script' : 'test-info.sh'} +wrapped_tests += {'name' : 'test-repo@user.wrap', 'script' : 'test-repo.sh'} +wrapped_tests += {'name' : 'test-repo@system.wrap', 'script' : 'test-repo.sh'} +wrapped_tests += {'name' : 'test-repo@system-norevokefs.wrap', 'script' : 'test-repo.sh'} +wrapped_tests += {'name' : 'test-repo@user,oldsummary.wrap', 'script' : 'test-repo.sh'} +wrapped_tests += {'name' : 'test-repo@system,oldsummary.wrap', 'script' : 'test-repo.sh'} +wrapped_tests += {'name' : 'test-sideload@user.wrap', 'script' : 'test-sideload.sh'} +wrapped_tests += {'name' : 'test-sideload@system.wrap', 'script' : 'test-sideload.sh'} +wrapped_tests += {'name' : 'test-bundle@user.wrap', 'script' : 'test-bundle.sh'} +wrapped_tests += {'name' : 'test-bundle@system.wrap', 'script' : 'test-bundle.sh'} +wrapped_tests += {'name' : 'test-bundle@system-norevokefs.wrap', 'script' : 'test-bundle.sh'} +wrapped_tests += {'name' : 'test-oci-registry@user.wrap', 'script' : 'test-oci-registry.sh'} +wrapped_tests += {'name' : 'test-oci-registry@system.wrap', 'script' : 'test-oci-registry.sh'} +wrapped_tests += {'name' : 'test-update-remote-configuration@newsummary.wrap', 'script' : 'test-update-remote-configuration.sh'} +wrapped_tests += {'name' : 'test-update-remote-configuration@oldsummary.wrap', 'script' : 'test-update-remote-configuration.sh'} +wrapped_tests += {'name' : 'test-update-portal@user.wrap', 'script' : 'test-update-portal.sh'} +wrapped_tests += {'name' : 'test-update-portal@system.wrap', 'script' : 'test-update-portal.sh'} +wrapped_tests += {'name' : 'test-summaries@user.wrap', 'script' : 'test-summaries.sh'} +wrapped_tests += {'name' : 'test-summaries@system.wrap', 'script' : 'test-summaries.sh'} +wrapped_tests += {'name' : 'test-subset@user.wrap', 'script' : 'test-subset.sh'} +wrapped_tests += {'name' : 'test-subset@system.wrap', 'script' : 'test-subset.sh'} +wrapped_tests += {'name' : 'test-basic.sh', 'script' : 'test-basic.sh'} +wrapped_tests += {'name' : 'test-completion.sh', 'script' : 'test-completion.sh'} +wrapped_tests += {'name' : 'test-config.sh', 'script' : 'test-config.sh'} +wrapped_tests += {'name' : 'test-build-update-repo.sh', 'script' : 'test-build-update-repo.sh'} +wrapped_tests += {'name' : 'test-http-utils.sh', 'script' : 'test-http-utils.sh'} +wrapped_tests += {'name' : 'test-history.sh', 'script' : 'test-history.sh'} +wrapped_tests += {'name' : 'test-default-remotes.sh', 'script' : 'test-default-remotes.sh'} +wrapped_tests += {'name' : 'test-metadata-validation.sh', 'script' : 'test-metadata-validation.sh'} +wrapped_tests += {'name' : 'test-extensions.sh', 'script' : 'test-extensions.sh'} +wrapped_tests += {'name' : 'test-oci.sh', 'script' : 'test-oci.sh'} +wrapped_tests += {'name' : 'test-override.sh', 'script' : 'test-override.sh'} +wrapped_tests += {'name' : 'test-auth.sh', 'script' : 'test-auth.sh'} +wrapped_tests += {'name' : 'test-unused.sh', 'script' : 'test-unused.sh'} +wrapped_tests += {'name' : 'test-prune.sh', 'script' : 'test-prune.sh'} +wrapped_tests += {'name' : 'test-seccomp.sh', 'script' : 'test-seccomp.sh'} +wrapped_tests += {'name' : 'test-repair.sh', 'script' : 'test-repair.sh'} diff --git a/tests/test-portal-impl.c b/tests/test-portal-impl.c index ae53ab5..e5264ff 100644 --- a/tests/test-portal-impl.c +++ b/tests/test-portal-impl.c @@ -100,7 +100,7 @@ on_bus_acquired (GDBusConnection *connection, GError *error = NULL; guint registration_id; - g_debug ("Bus acquired, creating skeleton"); + g_info ("Bus acquired, creating skeleton"); registration_id = g_dbus_connection_register_object (connection, "/org/freedesktop/portal/desktop", (GDBusInterfaceInfo *) &access_interface_info, @@ -114,7 +114,7 @@ on_name_acquired (GDBusConnection *connection, const gchar *name, gpointer user_data) { - g_debug ("Name acquired"); + g_info ("Name acquired"); } static void @@ -122,7 +122,7 @@ on_name_lost (GDBusConnection *connection, const gchar *name, gpointer user_data) { - g_debug ("Name lost"); + g_info ("Name lost"); } int diff --git a/tests/test-portal.c b/tests/test-portal.c index 47d85ed..0dfb752 100644 --- a/tests/test-portal.c +++ b/tests/test-portal.c @@ -78,7 +78,7 @@ launcher_stdout_to_our_stderr (GSubprocessLauncher *launcher) stderr_copy = dup (STDERR_FILENO); g_assert_no_errno (stderr_copy); g_assert_no_errno (fcntl (stderr_copy, F_SETFD, FD_CLOEXEC)); - g_subprocess_launcher_take_stdout_fd (launcher, glnx_steal_fd (&stderr_copy)); + g_subprocess_launcher_take_stdout_fd (launcher, g_steal_fd (&stderr_copy)); } static GSubprocessLauncher * @@ -226,7 +226,7 @@ count_successful_exit_cb (PortalFlatpak *proxy, { gsize *times_exited_p = user_data; - g_debug ("Process %u exited with wait status %u", pid, wait_status); + g_info ("Process %u exited with wait status %u", pid, wait_status); g_assert_true (WIFEXITED (wait_status)); g_assert_cmpuint (WEXITSTATUS (wait_status), ==, 0); (*times_exited_p) += 1; @@ -249,7 +249,7 @@ test_basic (Fixture *f, /* We can't easily tell whether EXPOSE_PIDS ought to be set or not */ g_assert_cmpuint ((portal_flatpak_get_supports (f->proxy) & (~FLATPAK_SPAWN_SUPPORT_FLAGS_EXPOSE_PIDS)), ==, 0); - g_assert_cmpuint (portal_flatpak_get_version (f->proxy), ==, 6); + g_assert_cmpuint (portal_flatpak_get_version (f->proxy), ==, 7); handler_id = g_signal_connect (f->proxy, "spawn-exited", G_CALLBACK (count_successful_exit_cb), @@ -466,6 +466,7 @@ teardown (Fixture *f, tests_dbus_daemon_teardown (&f->dbus_daemon); g_clear_object (&f->portal); g_free (f->portal_path); + g_free (f->mock_flatpak); } int diff --git a/tests/test-prune.sh b/tests/test-prune.sh index 6584907..ec7c1a4 100755 --- a/tests/test-prune.sh +++ b/tests/test-prune.sh @@ -97,7 +97,7 @@ assert_streq $NUM_COMMITMETA2 0 #################### Try a no-op prune, should do nothing but create commitmeta2 objects -cp -ra orig-repo repo # Work on a copy +cp -a orig-repo repo # Work on a copy # Prune with full depth should change nothing $FLATPAK build-update-repo --no-update-summary --no-update-appstream --prune --prune-depth=-1 repo > prune.log @@ -113,7 +113,7 @@ assert_streq $NUM_DIRMETA 2 assert_streq $NUM_COMMITMETA2 $NUM_COMMIT assert_streq $NUM_OBJECT 71 -cp -ra repo incremental-repo # Make a copy of the orig repo with the commitmeta2 objects +cp -a repo incremental-repo # Make a copy of the orig repo with the commitmeta2 objects # Try again with the commitmeta existing @@ -136,7 +136,7 @@ ok "no-op prune" ############# Try various depth prunes, with and without .commitmeta2 rm -rf repo -cp -ra orig-repo repo # Work on a copy +cp -a orig-repo repo # Work on a copy # depth = 2 will only remove one commit from app2 @@ -155,7 +155,7 @@ assert_streq $NUM_COMMITMETA2 $NUM_COMMIT assert_streq $NUM_OBJECT 65 rm -rf repo -cp -ra incremental-repo repo # Work on a copy w/ commitmeta2s +cp -a incremental-repo repo # Work on a copy w/ commitmeta2s # depth = 2 will only remove one commit from app2 @@ -176,7 +176,7 @@ assert_streq $NUM_OBJECT 65 # depth = 1 will only remove 4 commits rm -rf repo -cp -ra orig-repo repo # Work on a copy +cp -a orig-repo repo # Work on a copy $FLATPAK build-update-repo --no-update-summary --no-update-appstream --prune --prune-depth=1 repo > prune.log cat prune.log >&2 @@ -193,7 +193,7 @@ assert_streq $NUM_COMMITMETA2 $NUM_COMMIT assert_streq $NUM_OBJECT 47 rm -rf repo -cp -ra incremental-repo repo # Work on a copy w/ commitmeta2s +cp -a incremental-repo repo # Work on a copy w/ commitmeta2s $FLATPAK build-update-repo --no-update-summary --no-update-appstream --prune --prune-depth=1 repo > prune.log cat prune.log >&2 @@ -214,7 +214,7 @@ ok "depth prune" ############# Try non-reachable prunes, with and without .commitmeta2 rm -rf repo -cp -ra orig-repo repo # Work on a copy +cp -a orig-repo repo # Work on a copy rm repo/refs/heads/app3 # Removes 3 commits @@ -232,7 +232,7 @@ assert_streq $NUM_COMMITMETA2 $NUM_COMMIT assert_streq $NUM_OBJECT 50 rm -rf repo -cp -ra incremental-repo repo # Work on a copy w/ commitmeta2s +cp -a incremental-repo repo # Work on a copy w/ commitmeta2s rm repo/refs/heads/app3 # Removes 3 commits @@ -254,7 +254,7 @@ ok "unreachable prune" # Combine depth and unreachable rm -rf repo -cp -ra orig-repo repo # Work on a copy +cp -a orig-repo repo # Work on a copy rm repo/refs/heads/app3 # Removes 3 commits @@ -272,7 +272,7 @@ assert_streq $NUM_COMMITMETA2 $NUM_COMMIT assert_streq $NUM_OBJECT 44 rm -rf repo -cp -ra incremental-repo repo # Work on a copy w/ commitmeta2s +cp -a incremental-repo repo # Work on a copy w/ commitmeta2s rm repo/refs/heads/app3 # Removes 3 commits @@ -292,7 +292,7 @@ assert_streq $NUM_OBJECT 44 ok "unreachable and depth prune" # Compare last result with ostree prune: -cp -ra orig-repo ostree-repo +cp -a orig-repo ostree-repo rm ostree-repo/refs/heads/app3 # Removes 3 commits ostree prune --refs-only --depth=2 --repo=ostree-repo >&2 rm -rf repo/objects/*/*.commitmeta2 diff --git a/tests/test-repo.sh b/tests/test-repo.sh index 5f1bf76..8020959 100644 --- a/tests/test-repo.sh +++ b/tests/test-repo.sh @@ -439,13 +439,35 @@ ${FLATPAK} build-commit-from --no-update-summary --end-of-life-rebase=org.test.H GPGARGS="${FL_GPGARGS}" $(dirname $0)/make-test-app.sh repos/test-rebase org.test.NewHello master "${REBASE_COLLECTION_ID}" "NEW" > /dev/null update_repo test-rebase -# First do a --no-deploy update and check the old version is still installed +# Temporarily set the minimum free space to something astronomical to make the +# install of the rebased app fail. +orig_min_free_space=$(ostree --repo=$FL_DIR/repo config get core.min-free-space-size || :) +ostree --repo=$FL_DIR/repo config set core.min-free-space-size 999TB + +if ${FLATPAK} ${U} update -y org.test.Hello >&2; then + assert_not_reached "flatpak update should fail with insufficient free space" +fi + +# Check that the old app is still installed and the new app is not installed. +# See https://github.com/flatpak/flatpak/pull/5332 +assert_has_dir $FL_DIR/app/org.test.Hello/$ARCH/master/active/files +assert_not_has_dir $FL_DIR/app/org.test.NewHello/$ARCH/master/active/files + +# Restore the original minimum free space. +if [ -n "$orig_min_free_space" ]; then + ostree --repo=$FL_DIR/repo config set core.min-free-space-size "$orig_min_free_space" +else + ostree --repo=$FL_DIR/repo config unset core.min-free-space-size +fi + +# Now do a --no-deploy update and check the old version is still installed ${FLATPAK} ${U} update -y --no-deploy org.test.Hello >&2 assert_has_dir $HOME/.var/app/org.test.Hello assert_has_file $HOME/.var/app/org.test.Hello/data/a-file assert_not_has_dir $HOME/.var/app/org.test.NewHello +# Finally actually do the update. ${FLATPAK} ${U} update -y org.test.Hello >&2 # Make sure we got the new version installed diff --git a/tests/test-run.sh b/tests/test-run.sh index 3621649..3831a35 100644 --- a/tests/test-run.sh +++ b/tests/test-run.sh @@ -24,7 +24,7 @@ set -euo pipefail skip_without_bwrap skip_revokefs_without_fuse -echo "1..25" +echo "1..26" # Use stable rather than master as the branch so we can test that the run # command automatically finds the branch correctly @@ -50,6 +50,8 @@ assert_has_file $FL_DIR/exports/share/metainfo/org.test.Hello.cmd.appdata.xml assert_file_has_content $FL_DIR/exports/share/applications/org.test.Hello.desktop "^Exec=.*flatpak run --branch=stable --arch=$ARCH --command=hello\.sh org\.test\.Hello$" assert_has_file $FL_DIR/exports/share/gnome-shell/search-providers/org.test.Hello.search-provider.ini assert_file_has_content $FL_DIR/exports/share/gnome-shell/search-providers/org.test.Hello.search-provider.ini "^DefaultDisabled=true$" +assert_has_file $FL_DIR/exports/share/krunner/dbusplugins/org.test.Hello.desktop +assert_file_has_content $FL_DIR/exports/share/krunner/dbusplugins/org.test.Hello.desktop "^X-KDE-PluginInfo-EnabledByDefault=false$" assert_has_file $FL_DIR/exports/share/icons/hicolor/64x64/apps/org.test.Hello.png assert_not_has_file $FL_DIR/exports/share/icons/hicolor/64x64/apps/dont-export.png assert_has_file $FL_DIR/exports/share/icons/HighContrast/64x64/apps/org.test.Hello.png @@ -85,6 +87,13 @@ assert_not_streq "$exit_status" 0 ok "avoided CVE-2024-32462" +true > value-in-sandbox +head value-in-sandbox >&2 +run_sh org.test.Hello 'echo fd passthrough >&5' 5>value-in-sandbox +assert_file_has_content value-in-sandbox '^fd passthrough$' + +ok "redirected fds can pass through to the app" + # XDG_RUNTIME_DIR is set to /runtime by libtest.sh, # so we always have the necessary setup to reproduce #4372 assert_not_streq "$XDG_RUNTIME_DIR" "/run/user/$(id -u)" @@ -563,8 +572,8 @@ ok "--persist=.persist persists a directory" rm -fr "$HOME/.var/app/org.test.Hello" mkdir -p "$HOME/.var/app/org.test.Hello" -# G_DEBUG= to avoid the deprecation warning being fatal -G_DEBUG= run --command=sh --persist=/.persist org.test.Hello -c 'echo can-persist > .persist/rc' +# G_DEBUG='' to avoid the deprecation warning being fatal +G_DEBUG='' run --command=sh --persist=/.persist org.test.Hello -c 'echo can-persist > .persist/rc' sed -e 's,^,#--persist=/.persist# ,g' < "$HOME/.var/app/org.test.Hello/.persist/rc" >&2 assert_file_has_content "$HOME/.var/app/org.test.Hello/.persist/rc" "can-persist" @@ -583,9 +592,9 @@ echo FOO > ${TEST_DATA_DIR}/inaccessible/secret-file rm -fr "$HOME/.var/app/org.test.Hello" mkdir -p "$HOME/.var/app/org.test.Hello" ln -fns "${TEST_DATA_DIR}/inaccessible" "$HOME/.var/app/org.test.Hello/persist" -# G_DEBUG= to avoid the warnings being fatal when we reject a --persist option. +# G_DEBUG='' to avoid the warnings being fatal when we reject a --persist option. # LC_ALL=C so we get the expected non-localized string. -LC_ALL=C G_DEBUG= run --command=ls --persist=persist --persist=relative/../escape org.test.Hello -la ~/persist &> hello_out || true +LC_ALL=C G_DEBUG='' run --command=ls --persist=persist --persist=relative/../escape org.test.Hello -la ~/persist &> hello_out || true sed -e 's,^,#--persist=symlink# ,g' < hello_out >&2 assert_file_has_content hello_out "not allowed to avoid sandbox escape" assert_not_file_has_content hello_out "secret-file" diff --git a/tests/test-unused.sh b/tests/test-unused.sh index f1299e1..3dd0ccf 100755 --- a/tests/test-unused.sh +++ b/tests/test-unused.sh @@ -27,7 +27,7 @@ export USE_SYSTEMDIR=yes skip_without_bwrap skip_revokefs_without_fuse -echo "1..2" +echo "1..3" setup_empty_repo &> /dev/null > /dev/null @@ -305,6 +305,11 @@ verify_unused() { assert_not_file_has_content unused.txt "\.APP" } +verify_autopruned() { + assert_file_has_content autopruned.txt "\.NONACTIVEGL" + assert_not_file_has_content autopruned.txt "PINNED_.\.NONACTIVEGL" +} + # This is used for the autoprune check export FLATPAK_GL_DRIVERS=ACTIVEGL @@ -342,6 +347,9 @@ make_extension USED_G.ACTIVEGL runtime_add_autoprune_extension USED_G USED_G.ACTIVEGL make_extension UNUSED_G.NONACTIVEGL runtime_add_autoprune_extension USED_G UNUSED_G.NONACTIVEGL +make_extension PINNED_G.NONACTIVEGL +runtime_add_autoprune_extension USED_G PINNED_G.NONACTIVEGL +pin_extension PINNED_G.NONACTIVEGL # unused runtime with autopruned extension make_runtime UNUSED_H @@ -389,6 +397,12 @@ verify_unused ok "list unused regular" +${test_builddir}/list-unused --filter-autoprune | sed s@^app/@@g | sed s@^runtime/@@g | sort > autopruned.txt + +verify_autopruned + +ok "list autopruned" + mv unused.txt old-unused.txt ${test_builddir}/list-unused --exclude "app/org.app.APP_A/$ARCH/stable" | sed s@^app/@@g | sed s@^runtime/@@g | sort > unused.txt diff --git a/tests/test-update-portal.c b/tests/test-update-portal.c index f283f18..c073451 100644 --- a/tests/test-update-portal.c +++ b/tests/test-update-portal.c @@ -205,7 +205,7 @@ update_test (PortalFlatpak *portal, int status_pipe) g_autoptr(GError) error = NULL; PortalFlatpakUpdateMonitor *monitor; GVariantBuilder opt_builder; - GMainLoop *loop = g_main_loop_new (NULL, FALSE); + g_autoptr(GMainLoop) loop = g_main_loop_new (NULL, FALSE); UpdateData data = { loop }; monitor = create_monitor (portal, NULL, NULL, &error); @@ -241,7 +241,7 @@ update_null_test (PortalFlatpak *portal, int status_pipe) g_autoptr(GError) error = NULL; PortalFlatpakUpdateMonitor *monitor; GVariantBuilder opt_builder; - GMainLoop *loop = g_main_loop_new (NULL, FALSE); + g_autoptr(GMainLoop) loop = g_main_loop_new (NULL, FALSE); UpdateData data = { loop }; monitor = create_monitor (portal, NULL, NULL, &error); @@ -277,7 +277,7 @@ update_fail_test (PortalFlatpak *portal, int status_pipe) g_autoptr(GError) error = NULL; PortalFlatpakUpdateMonitor *monitor; GVariantBuilder opt_builder; - GMainLoop *loop = g_main_loop_new (NULL, FALSE); + g_autoptr(GMainLoop) loop = g_main_loop_new (NULL, FALSE); UpdateData data = { loop }; monitor = create_monitor (portal, NULL, NULL, &error); @@ -313,7 +313,7 @@ update_notsupp_test (PortalFlatpak *portal, int status_pipe) g_autoptr(GError) error = NULL; PortalFlatpakUpdateMonitor *monitor; GVariantBuilder opt_builder; - GMainLoop *loop = g_main_loop_new (NULL, FALSE); + g_autoptr(GMainLoop) loop = g_main_loop_new (NULL, FALSE); UpdateData data = { loop }; monitor = create_monitor (portal, NULL, NULL, &error); diff --git a/tests/testapp.c b/tests/testapp.c new file mode 100644 index 0000000..f05215b --- /dev/null +++ b/tests/testapp.c @@ -0,0 +1,589 @@ +#include "config.h" + +#include +#include +#include + +#include +#include "flatpak.h" +#include "flatpak-utils-private.h" +#include "flatpak-appdata-private.h" +#include "flatpak-builtins-utils.h" +#include "flatpak-run-private.h" +#include "flatpak-table-printer.h" +#include "flatpak-tty-utils-private.h" +#include "parse-datetime.h" + +static void +test_fancy_output (void) +{ + if (!isatty (STDOUT_FILENO)) + g_assert_false (flatpak_fancy_output ()); // no tty + else + g_assert_true (flatpak_fancy_output ()); // a tty + flatpak_enable_fancy_output (); + g_assert_true (flatpak_fancy_output ()); + flatpak_disable_fancy_output (); + g_assert_false (flatpak_fancy_output ()); +} + +static GString *g_print_buffer; + +static void +my_print_func (const char *string) +{ + g_string_append (g_print_buffer, string); +} + +static void +test_format_choices (void) +{ + GPrintFunc print_func; + const char *choices[] = { "one", "two", "three", NULL }; + const char *many_choices[] = { + "one", "two", "three", "four", "five", "six", + "seven", "eight", "nine", "ten", "eleven", + NULL + }; + + g_assert_null (g_print_buffer); + g_print_buffer = g_string_new (""); + print_func = g_set_print_handler (my_print_func); + + flatpak_format_choices (choices, "A prompt for %d choices:", 3); + + g_assert_cmpstr (g_print_buffer->str, ==, + "A prompt for 3 choices:\n\n" + " 1) one\n" + " 2) two\n" + " 3) three\n" + "\n"); + + g_string_truncate (g_print_buffer, 0); + + flatpak_format_choices (many_choices, "A prompt for %d choices:", 11); + g_assert_cmpstr (g_print_buffer->str, ==, + "A prompt for 11 choices:\n\n" + " 1) one\n" + " 2) two\n" + " 3) three\n" + " 4) four\n" + " 5) five\n" + " 6) six\n" + " 7) seven\n" + " 8) eight\n" + " 9) nine\n" + " 10) ten\n" + " 11) eleven\n" + "\n"); + + g_string_truncate (g_print_buffer, 0); + + g_set_print_handler (print_func); + g_set_print_handler (print_func); + g_string_free (g_print_buffer, TRUE); + g_print_buffer = NULL; +} + +static void +test_yes_no_prompt (void) +{ + GPrintFunc print_func; + gboolean ret; + + g_assert_null (g_print_buffer); + g_print_buffer = g_string_new (""); + print_func = g_set_print_handler (my_print_func); + + /* not a tty, so flatpak_yes_no_prompt will auto-answer 'n' */ + ret = flatpak_yes_no_prompt (TRUE, "Prompt %d ?", 1); + g_assert_false (ret); + g_assert_cmpstr (g_print_buffer->str, ==, "Prompt 1 ? [Y/n]: n\n"); + g_string_truncate (g_print_buffer, 0); + + ret = flatpak_yes_no_prompt (FALSE, "Prompt %d ?", 2); + g_assert_false (ret); + g_assert_cmpstr (g_print_buffer->str, ==, "Prompt 2 ? [y/n]: n\n"); + + g_set_print_handler (print_func); + g_string_free (g_print_buffer, TRUE); + g_print_buffer = NULL; +} + +static void +test_number_prompt (void) +{ + GPrintFunc print_func; + gboolean ret; + + g_assert_null (g_print_buffer); + g_print_buffer = g_string_new (""); + print_func = g_set_print_handler (my_print_func); + + /* not a tty, so flatpak_number_prompt will auto-answer '0' */ + ret = flatpak_number_prompt (TRUE, 0, 8, "Prompt %d ?", 1); + g_assert_false (ret); + g_assert_cmpstr (g_print_buffer->str, ==, "Prompt 1 ? [0-8]: 0\n"); + g_string_truncate (g_print_buffer, 0); + + ret = flatpak_number_prompt (FALSE, 1, 3, "Prompt %d ?", 2); + g_assert_false (ret); + g_assert_cmpstr (g_print_buffer->str, ==, "Prompt 2 ? [1-3]: 0\n"); + + g_set_print_handler (print_func); + g_string_free (g_print_buffer, TRUE); + g_print_buffer = NULL; +} + +static void +assert_numbers (int *num, ...) +{ + va_list args; + int n; + int i; + + g_assert_nonnull (num); + + va_start (args, num); + for (i = 0; num[i]; i++) + { + n = va_arg (args, int); + g_assert_true (n == num[i]); + } + + n = va_arg (args, int); + g_assert_true (n == 0); + va_end (args); +} + +static void +test_parse_numbers (void) +{ + g_autofree int *numbers = NULL; + + numbers = flatpak_parse_numbers ("", 0, 10); + assert_numbers (numbers, 0); + g_clear_pointer (&numbers, g_free); + + numbers = flatpak_parse_numbers ("1", 0, 10); + assert_numbers (numbers, 1, 0); + g_clear_pointer (&numbers, g_free); + + numbers = flatpak_parse_numbers ("1 3 2", 0, 10); + assert_numbers (numbers, 1, 3, 2, 0); + g_clear_pointer (&numbers, g_free); + + numbers = flatpak_parse_numbers ("1-3", 0, 10); + assert_numbers (numbers, 1, 2, 3, 0); + g_clear_pointer (&numbers, g_free); + + numbers = flatpak_parse_numbers ("1", 2, 4); + g_assert_null (numbers); + + numbers = flatpak_parse_numbers ("2-6", 2, 4); + g_assert_null (numbers); + + numbers = flatpak_parse_numbers ("1,2 2", 1, 4); + assert_numbers (numbers, 1, 2, 0); + g_clear_pointer (&numbers, g_free); + + numbers = flatpak_parse_numbers ("1-3,2-4", 1, 4); + assert_numbers (numbers, 1, 2, 3, 4, 0); + g_clear_pointer (&numbers, g_free); + + numbers = flatpak_parse_numbers ("-1", 1, 4); + g_assert_null (numbers); +} + +static void +test_looks_like_branch (void) +{ + g_assert_false (looks_like_branch ("abc/d")); + g_assert_false (looks_like_branch ("ab.c.d")); + g_assert_true (looks_like_branch ("master")); + g_assert_true (looks_like_branch ("stable")); + g_assert_true (looks_like_branch ("3.30")); +} + +static void +test_columns (void) +{ + Column columns[] = { + { "column1", "col1", "col1", 0, 0, 1, 1 }, + { "install", "install", "install", 0, 0, 0, 1 }, + { "helper", "helper", "helper", 0, 0, 1, 0 }, + { "column2", "col2", "col2", 0, 0, 0, 0 }, + { NULL, } + }; + Column *cols; + g_autofree char *help = NULL; + g_autoptr(GError) error = NULL; + const char *args[3]; + + help = column_help (columns); + g_assert_cmpstr (help, ==, + "Available columns:\n" + " column1 col1\n" + " install install\n" + " helper helper\n" + " column2 col2\n" + " all Show all columns\n" + " help Show available columns\n" + "\n" + "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization\n"); + + cols = handle_column_args (columns, FALSE, NULL, &error); + g_assert_no_error (error); + g_assert_cmpstr (cols[0].name, ==, "column1"); + g_assert_cmpstr (cols[1].name, ==, "install"); + g_assert_null (cols[2].name); + g_free (cols); + + cols = handle_column_args (columns, TRUE, NULL, &error); + g_assert_no_error (error); + g_assert_cmpstr (cols[0].name, ==, "column1"); + g_assert_cmpstr (cols[1].name, ==, "install"); + g_assert_cmpstr (cols[2].name, ==, "helper"); + g_assert_null (cols[3].name); + g_free (cols); + + args[0] = "all"; + args[1] = NULL; + cols = handle_column_args (columns, FALSE, args, &error); + g_assert_no_error (error); + g_assert_cmpstr (cols[0].name, ==, "column1"); + g_assert_cmpstr (cols[1].name, ==, "install"); + g_assert_cmpstr (cols[2].name, ==, "helper"); + g_assert_null (cols[3].name); + g_free (cols); + + args[0] = "column1,column2"; + args[1] = "helper"; + args[2] = NULL; + cols = handle_column_args (columns, FALSE, args, &error); + g_assert_no_error (error); + g_assert_cmpstr (cols[0].name, ==, "column1"); + g_assert_cmpstr (cols[1].name, ==, "column2"); + g_assert_cmpstr (cols[2].name, ==, "helper"); + g_assert_null (cols[3].name); + g_free (cols); + + args[0] = "column"; + args[1] = NULL; + cols = handle_column_args (columns, FALSE, args, &error); + g_assert_null (cols); + g_assert_error (error, G_IO_ERROR, G_IO_ERROR_FAILED); + g_clear_error (&error); + + args[0] = "app"; + args[1] = NULL; + cols = handle_column_args (columns, FALSE, args, &error); + g_assert_null (cols); + g_assert_error (error, G_IO_ERROR, G_IO_ERROR_FAILED); + g_clear_error (&error); +} + +typedef struct +{ + const char *in; + int len; + FlatpakEllipsizeMode mode; + const char *out; +} EllipsizeData; + +static EllipsizeData ellipsize[] = { + { "abcdefghijklmnopqrstuvwxyz", 10, FLATPAK_ELLIPSIZE_MODE_NONE, "abcdefghijklmnopqrstuvwxyz" }, + { "abcdefghijklmnopqrstuvwxyz", 10, FLATPAK_ELLIPSIZE_MODE_END, "abcdefghi…" }, + { "abcdefghijklmnopqrstuvwxyz", 10, FLATPAK_ELLIPSIZE_MODE_MIDDLE, "abcde…wxyz" }, + { "abcdefghijklmnopqrstuvwxyz", 10, FLATPAK_ELLIPSIZE_MODE_START, "…rstuvwxyz" }, + { "ģ☢ab", 3, FLATPAK_ELLIPSIZE_MODE_START, "…ab" }, + { "ģ☢ab", 3, FLATPAK_ELLIPSIZE_MODE_MIDDLE, "ģ…b" }, + { "ģ☢ab", 3, FLATPAK_ELLIPSIZE_MODE_END, "ģ☢…" } +}; + +static void +test_string_ellipsize (void) +{ + gsize idx; + + for (idx = 0; idx < G_N_ELEMENTS (ellipsize); idx++) + { + EllipsizeData *data = &ellipsize[idx]; + g_autofree char *ret = NULL; + + ret = ellipsize_string_full (data->in, data->len, data->mode); + g_assert_cmpstr (ret, ==, data->out); + } +} + +static void +test_table (void) +{ + GPrintFunc print_func; + FlatpakTablePrinter *printer; + + g_assert_null (g_print_buffer); + g_print_buffer = g_string_new (""); + print_func = g_set_print_handler (my_print_func); + flatpak_enable_fancy_output (); + + printer = flatpak_table_printer_new (); + + flatpak_table_printer_set_column_title (printer, 0, "Column1"); + flatpak_table_printer_set_column_title (printer, 1, "Column2"); + + flatpak_table_printer_add_column (printer, "text1"); + flatpak_table_printer_add_column (printer, "text2"); + flatpak_table_printer_finish_row (printer); + + flatpak_table_printer_add_column (printer, "text3"); + flatpak_table_printer_add_column (printer, "text4"); + flatpak_table_printer_finish_row (printer); + + flatpak_table_printer_print (printer); + g_assert_cmpstr (g_print_buffer->str, ==, + FLATPAK_ANSI_BOLD_ON + "Column1 Column2" FLATPAK_ANSI_BOLD_OFF "\n" + "text1 text2\n" + "text3 text4\n"); + g_string_truncate (g_print_buffer, 0); + + flatpak_table_printer_set_cell (printer, 0, 0, "newtext1"); + flatpak_table_printer_set_decimal_cell (printer, 0, 1, "0.123"); + flatpak_table_printer_set_decimal_cell (printer, 1, 1, "123.0"); + flatpak_table_printer_print (printer); + g_assert_cmpstr (g_print_buffer->str, ==, + FLATPAK_ANSI_BOLD_ON + "Column1 Column2" FLATPAK_ANSI_BOLD_OFF "\n" + "newtext1 0.123\n" + "text3 123.0\n"); + g_string_truncate (g_print_buffer, 0); + + flatpak_table_printer_free (printer); + + flatpak_disable_fancy_output (); + g_set_print_handler (print_func); + g_string_free (g_print_buffer, TRUE); + g_print_buffer = NULL; +} + +static void +test_table_expand (void) +{ + GPrintFunc print_func; + FlatpakTablePrinter *printer; + int rows, cols; + + g_assert_null (g_print_buffer); + g_print_buffer = g_string_new (""); + print_func = g_set_print_handler (my_print_func); + flatpak_enable_fancy_output (); + + printer = flatpak_table_printer_new (); + + flatpak_table_printer_set_column_title (printer, 0, "Column1"); + flatpak_table_printer_set_column_title (printer, 1, "Column2"); + flatpak_table_printer_set_column_title (printer, 2, "Column3"); + + flatpak_table_printer_add_column (printer, "text1"); + flatpak_table_printer_add_column (printer, "text2"); + flatpak_table_printer_add_column (printer, "text3"); + flatpak_table_printer_finish_row (printer); + flatpak_table_printer_add_span (printer, "012345678901234567890234567890123456789"); + flatpak_table_printer_finish_row (printer); + + flatpak_table_printer_set_column_expand (printer, 0, TRUE); + + flatpak_table_printer_print_full (printer, 0, 40, &rows, &cols); + + g_assert_cmpint (rows, ==, 3); + g_assert_cmpint (cols, ==, 34); + g_assert_cmpstr (g_print_buffer->str, ==, + FLATPAK_ANSI_BOLD_ON + "Column1 Column2 Column3" FLATPAK_ANSI_BOLD_OFF "\n" + "text1 text2 text3" "\n" + "012345678901234567890234567890123456789"); + g_string_truncate (g_print_buffer, 0); + + flatpak_table_printer_set_column_expand (printer, 2, TRUE); + + flatpak_table_printer_print_full (printer, 0, 40, &rows, &cols); + + g_assert_cmpint (rows, ==, 3); + g_assert_cmpint (cols, ==, 34); + g_assert_cmpstr (g_print_buffer->str, ==, + FLATPAK_ANSI_BOLD_ON + "Column1 Column2 Column3" FLATPAK_ANSI_BOLD_OFF "\n" + "text1 text2 text3" "\n" + "012345678901234567890234567890123456789"); + g_string_truncate (g_print_buffer, 0); + + flatpak_table_printer_free (printer); + + flatpak_disable_fancy_output (); + g_set_print_handler (print_func); + g_string_free (g_print_buffer, TRUE); + g_print_buffer = NULL; +} + +static void +test_table_shrink (void) +{ + GPrintFunc print_func; + FlatpakTablePrinter *printer; + int rows, cols; + + g_assert_null (g_print_buffer); + g_print_buffer = g_string_new (""); + print_func = g_set_print_handler (my_print_func); + flatpak_enable_fancy_output (); + + printer = flatpak_table_printer_new (); + + flatpak_table_printer_set_column_title (printer, 0, "Column1"); + flatpak_table_printer_set_column_title (printer, 1, "Column2"); + flatpak_table_printer_set_column_title (printer, 2, "Column3"); + + flatpak_table_printer_add_column (printer, "a very long text"); + flatpak_table_printer_add_column (printer, "text2"); + flatpak_table_printer_add_column (printer, "long text too"); + flatpak_table_printer_finish_row (printer); + + flatpak_table_printer_add_column (printer, "short"); + flatpak_table_printer_add_column (printer, "short"); + flatpak_table_printer_add_column (printer, "short"); + flatpak_table_printer_finish_row (printer); + + flatpak_table_printer_add_span (printer, "0123456789012345678902345"); + flatpak_table_printer_finish_row (printer); + + flatpak_table_printer_set_column_ellipsize (printer, 0, FLATPAK_ELLIPSIZE_MODE_END); + + flatpak_table_printer_print_full (printer, 0, 25, &rows, &cols); + + g_assert_cmpint (rows, ==, 4); + g_assert_cmpint (cols, ==, 25); + g_assert_cmpstr (g_print_buffer->str, ==, + FLATPAK_ANSI_BOLD_ON + "Co… Column2 Column3" FLATPAK_ANSI_BOLD_OFF "\n" + "a … text2 long text too" "\n" + "sh… short short" "\n" + "0123456789012345678902345"); + g_string_truncate (g_print_buffer, 0); + + flatpak_table_printer_set_column_ellipsize (printer, 2, FLATPAK_ELLIPSIZE_MODE_MIDDLE); + + flatpak_table_printer_print_full (printer, 0, 25, &rows, &cols); + + g_assert_cmpint (rows, ==, 4); + g_assert_cmpint (cols, ==, 25); + g_assert_cmpstr (g_print_buffer->str, ==, + FLATPAK_ANSI_BOLD_ON + "Column1 Column2 Column3" FLATPAK_ANSI_BOLD_OFF "\n" + "a very … text2 long…too" "\n" + "short short short" "\n" + "0123456789012345678902345"); + g_string_truncate (g_print_buffer, 0); + + flatpak_table_printer_free (printer); + + flatpak_disable_fancy_output (); + g_set_print_handler (print_func); + g_string_free (g_print_buffer, TRUE); + g_print_buffer = NULL; +} + +static void +test_table_shrink_more (void) +{ + GPrintFunc print_func; + FlatpakTablePrinter *printer; + int rows, cols; + + g_assert_null (g_print_buffer); + g_print_buffer = g_string_new (""); + print_func = g_set_print_handler (my_print_func); + flatpak_enable_fancy_output (); + + printer = flatpak_table_printer_new (); + + flatpak_table_printer_set_column_title (printer, 0, "Column1"); + flatpak_table_printer_set_column_title (printer, 1, "Column2"); + flatpak_table_printer_set_column_title (printer, 2, "Column3"); + + flatpak_table_printer_add_column (printer, "a very long text"); + flatpak_table_printer_add_column (printer, "midsize text"); + flatpak_table_printer_add_column (printer, "another very long text"); + flatpak_table_printer_finish_row (printer); + + flatpak_table_printer_set_column_ellipsize (printer, 1, FLATPAK_ELLIPSIZE_MODE_END); + + flatpak_table_printer_print_full (printer, 0, 25, &rows, &cols); + + g_assert_cmpint (rows, ==, 4); + g_assert_cmpint (cols, ==, 40); + g_assert_cmpstr (g_print_buffer->str, ==, + FLATPAK_ANSI_BOLD_ON + "Column1 … Column3" FLATPAK_ANSI_BOLD_OFF "\n" + "a very long text … another very long text"); + + flatpak_table_printer_free (printer); + + flatpak_disable_fancy_output (); + g_set_print_handler (print_func); + g_string_free (g_print_buffer, TRUE); + g_print_buffer = NULL; +} + +static void +test_parse_datetime (void) +{ + struct timespec ts; + struct timespec now; + gboolean ret; + g_autoptr(GDateTime) dt = NULL; + GTimeVal tv; + + clock_gettime (CLOCK_REALTIME, &now); + ret = parse_datetime (&ts, "NOW", NULL); + g_assert_true (ret); + + g_assert_true (ts.tv_sec == now.tv_sec); // close enough + + ret = parse_datetime (&ts, "2018-10-29 00:19:07 +0000", NULL); + g_assert_true (ret); + dt = g_date_time_new_utc (2018, 10, 29, 0, 19, 7); + g_date_time_to_timeval (dt, &tv); + + g_assert_true (tv.tv_sec == ts.tv_sec && + tv.tv_usec == ts.tv_nsec / 1000); + + ret = parse_datetime (&ts, "nonsense", NULL); + g_assert_false (ret); +} + +int +main (int argc, char *argv[]) +{ + int res; + + g_test_init (&argc, &argv, NULL); + + g_test_add_func ("/app/columns", test_columns); + g_test_add_func ("/app/fancy-output", test_fancy_output); + g_test_add_func ("/app/format-choices", test_format_choices); + g_test_add_func ("/app/looks-like-branch", test_looks_like_branch); + g_test_add_func ("/app/number-prompt", test_number_prompt); + g_test_add_func ("/app/parse-datetime", test_parse_datetime); + g_test_add_func ("/app/parse-numbers", test_parse_numbers); + g_test_add_func ("/app/string-ellipsize", test_string_ellipsize); + g_test_add_func ("/app/table", test_table); + g_test_add_func ("/app/table-expand", test_table_expand); + g_test_add_func ("/app/table-shrink", test_table_shrink); + g_test_add_func ("/app/table-shrink-more", test_table_shrink_more); + g_test_add_func ("/app/yes-no-prompt", test_yes_no_prompt); + + res = g_test_run (); + + return res; +} diff --git a/tests/testcommon.c b/tests/testcommon.c index 8ba3770..d8f0d9c 100644 --- a/tests/testcommon.c +++ b/tests/testcommon.c @@ -8,10 +8,8 @@ #include "flatpak.h" #include "flatpak-utils-private.h" #include "flatpak-appdata-private.h" -#include "flatpak-builtins-utils.h" #include "flatpak-run-private.h" -#include "flatpak-table-printer.h" -#include "parse-datetime.h" +#include "flatpak-run-x11-private.h" static void test_has_path_prefix (void) @@ -32,19 +30,6 @@ test_path_match_prefix (void) g_assert_null (flatpak_path_match_prefix ("/?/pre?", "/a/prefix/x")); } -static void -test_fancy_output (void) -{ - if (!isatty (STDOUT_FILENO)) - g_assert_false (flatpak_fancy_output ()); // no tty - else - g_assert_true (flatpak_fancy_output ()); // a tty - flatpak_enable_fancy_output (); - g_assert_true (flatpak_fancy_output ()); - flatpak_disable_fancy_output (); - g_assert_false (flatpak_fancy_output ()); -} - static void test_arches (void) { @@ -491,42 +476,43 @@ typedef struct gint max; gint expected; gboolean should_fail; + GNumberParserError code; } TestData; const TestData test_data[] = { /* typical cases for unsigned */ - { "-1", 10, 0, 2, 0, TRUE }, - { "1", 10, 0, 2, 1, FALSE }, - { "+1", 10, 0, 2, 0, TRUE }, - { "0", 10, 0, 2, 0, FALSE }, - { "+0", 10, 0, 2, 0, TRUE }, - { "-0", 10, 0, 2, 0, TRUE }, - { "2", 10, 0, 2, 2, FALSE }, - { "+2", 10, 0, 2, 0, TRUE }, - { "3", 10, 0, 2, 0, TRUE }, - { "+3", 10, 0, 2, 0, TRUE }, + { "-1", 10, 0, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, + { "1", 10, 0, 2, 1, FALSE, 0}, + { "+1", 10, 0, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, + { "0", 10, 0, 2, 0, FALSE, 0}, + { "+0", 10, 0, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, + { "-0", 10, 0, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, + { "2", 10, 0, 2, 2, FALSE, 0}, + { "+2", 10, 0, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, + { "3", 10, 0, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_OUT_OF_BOUNDS }, + { "+3", 10, 0, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, /* min == max cases for unsigned */ - { "2", 10, 2, 2, 2, FALSE }, - { "3", 10, 2, 2, 0, TRUE }, - { "1", 10, 2, 2, 0, TRUE }, + { "2", 10, 2, 2, 2, FALSE, 0 }, + { "3", 10, 2, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_OUT_OF_BOUNDS }, + { "1", 10, 2, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_OUT_OF_BOUNDS }, /* invalid inputs */ - { "", 10, 0, 2, 0, TRUE }, - { "a", 10, 0, 2, 0, TRUE }, - { "1a", 10, 0, 2, 0, TRUE }, + { "", 10, 0, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, + { "a", 10, 0, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, + { "1a", 10, 0, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, /* leading/trailing whitespace */ - { " 1", 10, 0, 2, 0, TRUE }, - { "1 ", 10, 0, 2, 0, TRUE }, + { " 1", 10, 0, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, + { "1 ", 10, 0, 2, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, /* hexadecimal numbers */ - { "a", 16, 0, 15, 10, FALSE }, - { "0xa", 16, 0, 15, 0, TRUE }, - { "-0xa", 16, 0, 15, 0, TRUE }, - { "+0xa", 16, 0, 15, 0, TRUE }, - { "- 0xa", 16, 0, 15, 0, TRUE }, - { "+ 0xa", 16, 0, 15, 0, TRUE }, + { "a", 16, 0, 15, 10, FALSE, 0 }, + { "0xa", 16, 0, 15, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, + { "-0xa", 16, 0, 15, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, + { "+0xa", 16, 0, 15, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, + { "- 0xa", 16, 0, 15, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, + { "+ 0xa", 16, 0, 15, 0, TRUE, G_NUMBER_PARSER_ERROR_INVALID }, }; static void @@ -541,19 +527,19 @@ test_string_to_unsigned (void) gboolean result; gint value; guint64 value64 = 0; - result = flatpak_utils_ascii_string_to_unsigned (data->str, - data->base, - data->min, - data->max, - &value64, - &error); + result = g_ascii_string_to_unsigned (data->str, + data->base, + data->min, + data->max, + &value64, + &error); value = value64; g_assert_cmpint (value, ==, value64); if (data->should_fail) { g_assert_false (result); - g_assert_error (error, G_IO_ERROR, G_IO_ERROR_INVALID_ARGUMENT); + g_assert_error (error, G_NUMBER_PARSER_ERROR, data->code); g_clear_error (&error); } else @@ -561,6 +547,7 @@ test_string_to_unsigned (void) g_assert_true (result); g_assert_no_error (error); g_assert_cmpint (value, ==, data->expected); + g_assert_cmpint (data->code, ==, 0); } } } @@ -593,174 +580,6 @@ test_levenshtein (void) } } -static GString *g_print_buffer; - -static void -my_print_func (const char *string) -{ - g_string_append (g_print_buffer, string); -} - -static void -test_format_choices (void) -{ - GPrintFunc print_func; - const char *choices[] = { "one", "two", "three", NULL }; - const char *many_choices[] = { - "one", "two", "three", "four", "five", "six", - "seven", "eight", "nine", "ten", "eleven", - NULL - }; - - g_assert_null (g_print_buffer); - g_print_buffer = g_string_new (""); - print_func = g_set_print_handler (my_print_func); - - flatpak_format_choices (choices, "A prompt for %d choices:", 3); - - g_assert_cmpstr (g_print_buffer->str, ==, - "A prompt for 3 choices:\n\n" - " 1) one\n" - " 2) two\n" - " 3) three\n" - "\n"); - - g_string_truncate (g_print_buffer, 0); - - flatpak_format_choices (many_choices, "A prompt for %d choices:", 11); - g_assert_cmpstr (g_print_buffer->str, ==, - "A prompt for 11 choices:\n\n" - " 1) one\n" - " 2) two\n" - " 3) three\n" - " 4) four\n" - " 5) five\n" - " 6) six\n" - " 7) seven\n" - " 8) eight\n" - " 9) nine\n" - " 10) ten\n" - " 11) eleven\n" - "\n"); - - g_string_truncate (g_print_buffer, 0); - - g_set_print_handler (print_func); - g_set_print_handler (print_func); - g_string_free (g_print_buffer, TRUE); - g_print_buffer = NULL; -} - -static void -test_yes_no_prompt (void) -{ - GPrintFunc print_func; - gboolean ret; - - g_assert_null (g_print_buffer); - g_print_buffer = g_string_new (""); - print_func = g_set_print_handler (my_print_func); - - /* not a tty, so flatpak_yes_no_prompt will auto-answer 'n' */ - ret = flatpak_yes_no_prompt (TRUE, "Prompt %d ?", 1); - g_assert_false (ret); - g_assert_cmpstr (g_print_buffer->str, ==, "Prompt 1 ? [Y/n]: n\n"); - g_string_truncate (g_print_buffer, 0); - - ret = flatpak_yes_no_prompt (FALSE, "Prompt %d ?", 2); - g_assert_false (ret); - g_assert_cmpstr (g_print_buffer->str, ==, "Prompt 2 ? [y/n]: n\n"); - - g_set_print_handler (print_func); - g_string_free (g_print_buffer, TRUE); - g_print_buffer = NULL; -} - -static void -test_number_prompt (void) -{ - GPrintFunc print_func; - gboolean ret; - - g_assert_null (g_print_buffer); - g_print_buffer = g_string_new (""); - print_func = g_set_print_handler (my_print_func); - - /* not a tty, so flatpak_number_prompt will auto-answer '0' */ - ret = flatpak_number_prompt (TRUE, 0, 8, "Prompt %d ?", 1); - g_assert_false (ret); - g_assert_cmpstr (g_print_buffer->str, ==, "Prompt 1 ? [0-8]: 0\n"); - g_string_truncate (g_print_buffer, 0); - - ret = flatpak_number_prompt (FALSE, 1, 3, "Prompt %d ?", 2); - g_assert_false (ret); - g_assert_cmpstr (g_print_buffer->str, ==, "Prompt 2 ? [1-3]: 0\n"); - - g_set_print_handler (print_func); - g_string_free (g_print_buffer, TRUE); - g_print_buffer = NULL; -} - -static void -assert_numbers (int *num, ...) -{ - va_list args; - int n; - int i; - - g_assert_nonnull (num); - - va_start (args, num); - for (i = 0; num[i]; i++) - { - n = va_arg (args, int); - g_assert_true (n == num[i]); - } - - n = va_arg (args, int); - g_assert_true (n == 0); - va_end (args); -} - -static void -test_parse_numbers (void) -{ - g_autofree int *numbers = NULL; - - numbers = flatpak_parse_numbers ("", 0, 10); - assert_numbers (numbers, 0); - g_clear_pointer (&numbers, g_free); - - numbers = flatpak_parse_numbers ("1", 0, 10); - assert_numbers (numbers, 1, 0); - g_clear_pointer (&numbers, g_free); - - numbers = flatpak_parse_numbers ("1 3 2", 0, 10); - assert_numbers (numbers, 1, 3, 2, 0); - g_clear_pointer (&numbers, g_free); - - numbers = flatpak_parse_numbers ("1-3", 0, 10); - assert_numbers (numbers, 1, 2, 3, 0); - g_clear_pointer (&numbers, g_free); - - numbers = flatpak_parse_numbers ("1", 2, 4); - g_assert_null (numbers); - - numbers = flatpak_parse_numbers ("2-6", 2, 4); - g_assert_null (numbers); - - numbers = flatpak_parse_numbers ("1,2 2", 1, 4); - assert_numbers (numbers, 1, 2, 0); - g_clear_pointer (&numbers, g_free); - - numbers = flatpak_parse_numbers ("1-3,2-4", 1, 4); - assert_numbers (numbers, 1, 2, 3, 4, 0); - g_clear_pointer (&numbers, g_free); - - numbers = flatpak_parse_numbers ("-1", 1, 4); - g_assert_null (numbers); -} - static void assert_strv_equal (char **strv1, char **strv2) @@ -813,19 +632,6 @@ test_subpaths_merge (void) g_clear_pointer (&res, g_strfreev); } -static void -test_lang_from_locale (void) -{ - g_autofree char *lang = NULL; - - lang = flatpak_get_lang_from_locale ("en_US.utf8"); - g_assert_cmpstr (lang, ==, "en"); - g_clear_pointer (&lang, g_free); - - lang = flatpak_get_lang_from_locale ("sv_FI@euro"); - g_assert_cmpstr (lang, ==, "sv"); -} - static void test_parse_appdata (void) { @@ -994,379 +800,12 @@ test_name_matching (void) g_assert_true (res); } -static void -test_looks_like_branch (void) -{ - g_assert_false (looks_like_branch ("abc/d")); - g_assert_false (looks_like_branch ("ab.c.d")); - g_assert_true (looks_like_branch ("master")); - g_assert_true (looks_like_branch ("stable")); - g_assert_true (looks_like_branch ("3.30")); -} - -static void -test_columns (void) -{ - Column columns[] = { - { "column1", "col1", "col1", 0, 0, 1, 1 }, - { "install", "install", "install", 0, 0, 0, 1 }, - { "helper", "helper", "helper", 0, 0, 1, 0 }, - { "column2", "col2", "col2", 0, 0, 0, 0 }, - { NULL, } - }; - Column *cols; - g_autofree char *help = NULL; - g_autoptr(GError) error = NULL; - const char *args[3]; - - help = column_help (columns); - g_assert_cmpstr (help, ==, - "Available columns:\n" - " column1 col1\n" - " install install\n" - " helper helper\n" - " column2 col2\n" - " all Show all columns\n" - " help Show available columns\n" - "\n" - "Append :s[tart], :m[iddle], :e[nd] or :f[ull] to change ellipsization\n"); - - cols = handle_column_args (columns, FALSE, NULL, &error); - g_assert_no_error (error); - g_assert_cmpstr (cols[0].name, ==, "column1"); - g_assert_cmpstr (cols[1].name, ==, "install"); - g_assert_null (cols[2].name); - g_free (cols); - - cols = handle_column_args (columns, TRUE, NULL, &error); - g_assert_no_error (error); - g_assert_cmpstr (cols[0].name, ==, "column1"); - g_assert_cmpstr (cols[1].name, ==, "install"); - g_assert_cmpstr (cols[2].name, ==, "helper"); - g_assert_null (cols[3].name); - g_free (cols); - - args[0] = "all"; - args[1] = NULL; - cols = handle_column_args (columns, FALSE, args, &error); - g_assert_no_error (error); - g_assert_cmpstr (cols[0].name, ==, "column1"); - g_assert_cmpstr (cols[1].name, ==, "install"); - g_assert_cmpstr (cols[2].name, ==, "helper"); - g_assert_null (cols[3].name); - g_free (cols); - - args[0] = "column1,column2"; - args[1] = "helper"; - args[2] = NULL; - cols = handle_column_args (columns, FALSE, args, &error); - g_assert_no_error (error); - g_assert_cmpstr (cols[0].name, ==, "column1"); - g_assert_cmpstr (cols[1].name, ==, "column2"); - g_assert_cmpstr (cols[2].name, ==, "helper"); - g_assert_null (cols[3].name); - g_free (cols); - - args[0] = "column"; - args[1] = NULL; - cols = handle_column_args (columns, FALSE, args, &error); - g_assert_null (cols); - g_assert_error (error, G_IO_ERROR, G_IO_ERROR_FAILED); - g_clear_error (&error); - - args[0] = "app"; - args[1] = NULL; - cols = handle_column_args (columns, FALSE, args, &error); - g_assert_null (cols); - g_assert_error (error, G_IO_ERROR, G_IO_ERROR_FAILED); - g_clear_error (&error); -} - -typedef struct -{ - const char *in; - int len; - FlatpakEllipsizeMode mode; - const char *out; -} EllipsizeData; - -static EllipsizeData ellipsize[] = { - { "abcdefghijklmnopqrstuvwxyz", 10, FLATPAK_ELLIPSIZE_MODE_NONE, "abcdefghijklmnopqrstuvwxyz" }, - { "abcdefghijklmnopqrstuvwxyz", 10, FLATPAK_ELLIPSIZE_MODE_END, "abcdefghi…" }, - { "abcdefghijklmnopqrstuvwxyz", 10, FLATPAK_ELLIPSIZE_MODE_MIDDLE, "abcde…wxyz" }, - { "abcdefghijklmnopqrstuvwxyz", 10, FLATPAK_ELLIPSIZE_MODE_START, "…rstuvwxyz" }, - { "ģ☢ab", 3, FLATPAK_ELLIPSIZE_MODE_START, "…ab" }, - { "ģ☢ab", 3, FLATPAK_ELLIPSIZE_MODE_MIDDLE, "ģ…b" }, - { "ģ☢ab", 3, FLATPAK_ELLIPSIZE_MODE_END, "ģ☢…" } -}; - -static void -test_string_ellipsize (void) -{ - gsize idx; - - for (idx = 0; idx < G_N_ELEMENTS (ellipsize); idx++) - { - EllipsizeData *data = &ellipsize[idx]; - g_autofree char *ret = NULL; - - ret = ellipsize_string_full (data->in, data->len, data->mode); - g_assert_cmpstr (ret, ==, data->out); - } -} - -static void -test_table (void) -{ - GPrintFunc print_func; - FlatpakTablePrinter *printer; - - g_assert_null (g_print_buffer); - g_print_buffer = g_string_new (""); - print_func = g_set_print_handler (my_print_func); - flatpak_enable_fancy_output (); - - printer = flatpak_table_printer_new (); - - flatpak_table_printer_set_column_title (printer, 0, "Column1"); - flatpak_table_printer_set_column_title (printer, 1, "Column2"); - - flatpak_table_printer_add_column (printer, "text1"); - flatpak_table_printer_add_column (printer, "text2"); - flatpak_table_printer_finish_row (printer); - - flatpak_table_printer_add_column (printer, "text3"); - flatpak_table_printer_add_column (printer, "text4"); - flatpak_table_printer_finish_row (printer); - - flatpak_table_printer_print (printer); - g_assert_cmpstr (g_print_buffer->str, ==, - FLATPAK_ANSI_BOLD_ON - "Column1 Column2" FLATPAK_ANSI_BOLD_OFF "\n" - "text1 text2\n" - "text3 text4\n"); - g_string_truncate (g_print_buffer, 0); - - flatpak_table_printer_set_cell (printer, 0, 0, "newtext1"); - flatpak_table_printer_set_decimal_cell (printer, 0, 1, "0.123"); - flatpak_table_printer_set_decimal_cell (printer, 1, 1, "123.0"); - flatpak_table_printer_print (printer); - g_assert_cmpstr (g_print_buffer->str, ==, - FLATPAK_ANSI_BOLD_ON - "Column1 Column2" FLATPAK_ANSI_BOLD_OFF "\n" - "newtext1 0.123\n" - "text3 123.0\n"); - g_string_truncate (g_print_buffer, 0); - - flatpak_table_printer_free (printer); - - flatpak_disable_fancy_output (); - g_set_print_handler (print_func); - g_string_free (g_print_buffer, TRUE); - g_print_buffer = NULL; -} - -static void -test_table_expand (void) -{ - GPrintFunc print_func; - FlatpakTablePrinter *printer; - int rows, cols; - - g_assert_null (g_print_buffer); - g_print_buffer = g_string_new (""); - print_func = g_set_print_handler (my_print_func); - flatpak_enable_fancy_output (); - - printer = flatpak_table_printer_new (); - - flatpak_table_printer_set_column_title (printer, 0, "Column1"); - flatpak_table_printer_set_column_title (printer, 1, "Column2"); - flatpak_table_printer_set_column_title (printer, 2, "Column3"); - - flatpak_table_printer_add_column (printer, "text1"); - flatpak_table_printer_add_column (printer, "text2"); - flatpak_table_printer_add_column (printer, "text3"); - flatpak_table_printer_finish_row (printer); - flatpak_table_printer_add_span (printer, "012345678901234567890234567890123456789"); - flatpak_table_printer_finish_row (printer); - - flatpak_table_printer_set_column_expand (printer, 0, TRUE); - - flatpak_table_printer_print_full (printer, 0, 40, &rows, &cols); - - g_assert_cmpint (rows, ==, 3); - g_assert_cmpint (cols, ==, 34); - g_assert_cmpstr (g_print_buffer->str, ==, - FLATPAK_ANSI_BOLD_ON - "Column1 Column2 Column3" FLATPAK_ANSI_BOLD_OFF "\n" - "text1 text2 text3" "\n" - "012345678901234567890234567890123456789"); - g_string_truncate (g_print_buffer, 0); - - flatpak_table_printer_set_column_expand (printer, 2, TRUE); - - flatpak_table_printer_print_full (printer, 0, 40, &rows, &cols); - - g_assert_cmpint (rows, ==, 3); - g_assert_cmpint (cols, ==, 34); - g_assert_cmpstr (g_print_buffer->str, ==, - FLATPAK_ANSI_BOLD_ON - "Column1 Column2 Column3" FLATPAK_ANSI_BOLD_OFF "\n" - "text1 text2 text3" "\n" - "012345678901234567890234567890123456789"); - g_string_truncate (g_print_buffer, 0); - - flatpak_table_printer_free (printer); - - flatpak_disable_fancy_output (); - g_set_print_handler (print_func); - g_string_free (g_print_buffer, TRUE); - g_print_buffer = NULL; -} - -static void -test_table_shrink (void) -{ - GPrintFunc print_func; - FlatpakTablePrinter *printer; - int rows, cols; - - g_assert_null (g_print_buffer); - g_print_buffer = g_string_new (""); - print_func = g_set_print_handler (my_print_func); - flatpak_enable_fancy_output (); - - printer = flatpak_table_printer_new (); - - flatpak_table_printer_set_column_title (printer, 0, "Column1"); - flatpak_table_printer_set_column_title (printer, 1, "Column2"); - flatpak_table_printer_set_column_title (printer, 2, "Column3"); - - flatpak_table_printer_add_column (printer, "a very long text"); - flatpak_table_printer_add_column (printer, "text2"); - flatpak_table_printer_add_column (printer, "long text too"); - flatpak_table_printer_finish_row (printer); - - flatpak_table_printer_add_column (printer, "short"); - flatpak_table_printer_add_column (printer, "short"); - flatpak_table_printer_add_column (printer, "short"); - flatpak_table_printer_finish_row (printer); - - flatpak_table_printer_add_span (printer, "0123456789012345678902345"); - flatpak_table_printer_finish_row (printer); - - flatpak_table_printer_set_column_ellipsize (printer, 0, FLATPAK_ELLIPSIZE_MODE_END); - - flatpak_table_printer_print_full (printer, 0, 25, &rows, &cols); - - g_assert_cmpint (rows, ==, 4); - g_assert_cmpint (cols, ==, 25); - g_assert_cmpstr (g_print_buffer->str, ==, - FLATPAK_ANSI_BOLD_ON - "Co… Column2 Column3" FLATPAK_ANSI_BOLD_OFF "\n" - "a … text2 long text too" "\n" - "sh… short short" "\n" - "0123456789012345678902345"); - g_string_truncate (g_print_buffer, 0); - - flatpak_table_printer_set_column_ellipsize (printer, 2, FLATPAK_ELLIPSIZE_MODE_MIDDLE); - - flatpak_table_printer_print_full (printer, 0, 25, &rows, &cols); - - g_assert_cmpint (rows, ==, 4); - g_assert_cmpint (cols, ==, 25); - g_assert_cmpstr (g_print_buffer->str, ==, - FLATPAK_ANSI_BOLD_ON - "Column1 Column2 Column3" FLATPAK_ANSI_BOLD_OFF "\n" - "a very … text2 long…too" "\n" - "short short short" "\n" - "0123456789012345678902345"); - g_string_truncate (g_print_buffer, 0); - - flatpak_table_printer_free (printer); - - flatpak_disable_fancy_output (); - g_set_print_handler (print_func); - g_string_free (g_print_buffer, TRUE); - g_print_buffer = NULL; -} - -static void -test_table_shrink_more (void) -{ - GPrintFunc print_func; - FlatpakTablePrinter *printer; - int rows, cols; - - g_assert_null (g_print_buffer); - g_print_buffer = g_string_new (""); - print_func = g_set_print_handler (my_print_func); - flatpak_enable_fancy_output (); - - printer = flatpak_table_printer_new (); - - flatpak_table_printer_set_column_title (printer, 0, "Column1"); - flatpak_table_printer_set_column_title (printer, 1, "Column2"); - flatpak_table_printer_set_column_title (printer, 2, "Column3"); - - flatpak_table_printer_add_column (printer, "a very long text"); - flatpak_table_printer_add_column (printer, "midsize text"); - flatpak_table_printer_add_column (printer, "another very long text"); - flatpak_table_printer_finish_row (printer); - - flatpak_table_printer_set_column_ellipsize (printer, 1, FLATPAK_ELLIPSIZE_MODE_END); - - flatpak_table_printer_print_full (printer, 0, 25, &rows, &cols); - - g_assert_cmpint (rows, ==, 4); - g_assert_cmpint (cols, ==, 40); - g_assert_cmpstr (g_print_buffer->str, ==, - FLATPAK_ANSI_BOLD_ON - "Column1 … Column3" FLATPAK_ANSI_BOLD_OFF "\n" - "a very long text … another very long text"); - - flatpak_table_printer_free (printer); - - flatpak_disable_fancy_output (); - g_set_print_handler (print_func); - g_string_free (g_print_buffer, TRUE); - g_print_buffer = NULL; -} - -static void -test_parse_datetime (void) -{ - struct timespec ts; - struct timespec now; - gboolean ret; - g_autoptr(GDateTime) dt = NULL; - GTimeVal tv; - - clock_gettime (CLOCK_REALTIME, &now); - ret = parse_datetime (&ts, "NOW", NULL); - g_assert_true (ret); - - g_assert_true (ts.tv_sec == now.tv_sec); // close enough - - ret = parse_datetime (&ts, "2018-10-29 00:19:07 +0000", NULL); - g_assert_true (ret); - dt = g_date_time_new_utc (2018, 10, 29, 0, 19, 7); - g_date_time_to_timeval (dt, &tv); - - g_assert_true (tv.tv_sec == ts.tv_sec && - tv.tv_usec == ts.tv_nsec / 1000); - - ret = parse_datetime (&ts, "nonsense", NULL); - g_assert_false (ret); -} - /* Test various syntax errors */ static void test_filter_parser (void) { struct { - char *filter; + const char *filter; guint expected_error; } filters[] = { { @@ -1421,7 +860,7 @@ test_filter (void) g_autoptr(GRegex) deny_refs = NULL; gboolean ret; int i; - char *filter = + const char *filter = " # This is a comment\n" "\tallow\t org.foo.*#comment\n" " deny org.* # Comment\n" @@ -1433,7 +872,7 @@ test_filter (void) "allow runtime/com.gazonk\n" "allow runtime/com.gazonk.*\t#comment*a*"; /* Note: lack of last newline to test */ struct { - char *ref; + const char *ref; gboolean expected_result; } filter_refs[] = { /* General denies (org/com)*/ @@ -1918,18 +1357,12 @@ main (int argc, char *argv[]) g_test_add_func ("/common/has-path-prefix", test_has_path_prefix); g_test_add_func ("/common/path-match-prefix", test_path_match_prefix); - g_test_add_func ("/common/fancy-output", test_fancy_output); g_test_add_func ("/common/arches", test_arches); g_test_add_func ("/common/extension-matches", test_extension_matches); g_test_add_func ("/common/valid-name", test_valid_name); g_test_add_func ("/common/string-to-unsigned", test_string_to_unsigned); g_test_add_func ("/common/levenshtein", test_levenshtein); - g_test_add_func ("/common/format-choices", test_format_choices); - g_test_add_func ("/common/yes-no-prompt", test_yes_no_prompt); - g_test_add_func ("/common/number-prompt", test_number_prompt); - g_test_add_func ("/common/parse-numbers", test_parse_numbers); g_test_add_func ("/common/subpaths-merge", test_subpaths_merge); - g_test_add_func ("/common/lang-from-locale", test_lang_from_locale); g_test_add_func ("/common/appdata", test_parse_appdata); g_test_add_func ("/common/name-matching", test_name_matching); g_test_add_func ("/common/filter_parser", test_filter_parser); @@ -1945,15 +1378,6 @@ main (int argc, char *argv[]) g_test_add_func ("/common/string-escape", test_string_escape); g_test_add_func ("/common/validate-path-characters", test_validate_path_characters); - g_test_add_func ("/app/looks-like-branch", test_looks_like_branch); - g_test_add_func ("/app/columns", test_columns); - g_test_add_func ("/app/string-ellipsize", test_string_ellipsize); - g_test_add_func ("/app/table", test_table); - g_test_add_func ("/app/table-expand", test_table_expand); - g_test_add_func ("/app/table-shrink", test_table_shrink); - g_test_add_func ("/app/table-shrink-more", test_table_shrink_more); - g_test_add_func ("/app/parse-datetime", test_parse_datetime); - res = g_test_run (); return res; diff --git a/tests/testlib.h b/tests/testlib.h index 25b096b..44829b8 100644 --- a/tests/testlib.h +++ b/tests/testlib.h @@ -22,11 +22,6 @@ #include #include -#ifndef g_assert_no_errno -#define g_assert_no_errno(expr) \ - g_assert_cmpstr ((expr) >= 0 ? NULL : g_strerror (errno), ==, NULL) -#endif - char *assert_mkdtemp (char *tmpl); extern char *isolated_test_dir; @@ -51,4 +46,52 @@ G_DEFINE_AUTOPTR_CLEANUP_FUNC (TestsStdoutToStderr, tests_stdout_to_stderr_end); #define TESTS_SCOPED_STDOUT_TO_STDERR \ G_GNUC_UNUSED g_autoptr(TestsStdoutToStderr) _tests_stdout_to_stderr = tests_stdout_to_stderr_begin () +/* + * assert_cmpstr_free_lhs: + * @lhs: (transfer full): An expression returning an owned string, + * which will be freed + * @op: Either `==`, `!=`, `<=`, `<`, `>` or `>=` + * @rhs: (transfer none): An expression returning an unowned string + * + * Assert that @lhs has the given relationship with @rhs, then free @lhs. + */ +#define assert_cmpstr_free_lhs(lhs, op, rhs) \ + do { \ + g_autofree char *free_lhs = NULL; \ + g_assert_cmpstr ((free_lhs = (lhs)), op, (rhs)); \ + } while (0) + +/* + * assert_cmpstr_free_rhs: + * @lhs: (transfer none): An expression returning an unowned string + * @op: Either `==`, `!=`, `<=`, `<`, `>` or `>=` + * @rhs: (transfer full): An expression returning an owned string, + * which will be freed + * + * Assert that @lhs has the given relationship with @rhs, then free @rhs. + */ +#define assert_cmpstr_free_rhs(lhs, op, rhs) \ + do { \ + g_autofree char *free_rhs = NULL; \ + g_assert_cmpstr ((lhs), op, (free_rhs = (rhs))); \ + } while (0) + +/* + * assert_cmpstr_free_both: + * @lhs: (transfer full): An expression returning an owned string, + * which will be freed + * @op: Either `==`, `!=`, `<=`, `<`, `>` or `>=` + * @rhs: (transfer full): An expression returning an owned string, + * which will be freed + * + * Assert that @lhs has the given relationship with @rhs, then free both + * strings. + */ +#define assert_cmpstr_free_both(lhs, op, rhs) \ + do { \ + g_autofree char *free_lhs = NULL; \ + g_autofree char *free_rhs = NULL; \ + g_assert_cmpstr ((free_lhs = (lhs)), op, (free_rhs = (rhs))); \ + } while (0) + #endif diff --git a/tests/testlibrary.c b/tests/testlibrary.c index ccf7855..b6537bb 100644 --- a/tests/testlibrary.c +++ b/tests/testlibrary.c @@ -56,13 +56,11 @@ typedef struct static void test_library_version (void) { - g_autofree char *version = NULL; - - version = g_strdup_printf ("%d.%d.%d" G_STRINGIFY (PACKAGE_EXTRA_VERSION), - FLATPAK_MAJOR_VERSION, - FLATPAK_MINOR_VERSION, - FLATPAK_MICRO_VERSION); - g_assert_cmpstr (version, ==, PACKAGE_VERSION); + assert_cmpstr_free_lhs (g_strdup_printf ("%d.%d.%d" G_STRINGIFY (PACKAGE_EXTRA_VERSION), + FLATPAK_MAJOR_VERSION, + FLATPAK_MINOR_VERSION, + FLATPAK_MICRO_VERSION), + ==, PACKAGE_VERSION); } static void @@ -99,8 +97,6 @@ test_user_installation (void) g_autoptr(FlatpakInstallation) inst = NULL; g_autoptr(GError) error = NULL; g_autoptr(GFile) dir = NULL; - g_autofree char *path = NULL; - g_autofree char *expected_path = NULL; inst = flatpak_installation_new_user (NULL, &error); g_assert_no_error (error); @@ -109,9 +105,8 @@ test_user_installation (void) g_assert_true (flatpak_installation_get_is_user (inst)); dir = flatpak_installation_get_path (inst); - path = g_file_get_path (dir); - expected_path = g_build_filename (g_get_user_data_dir (), "flatpak", NULL); - g_assert_cmpstr (path, ==, expected_path); + assert_cmpstr_free_both (g_file_get_path (dir), ==, + g_build_filename (g_get_user_data_dir (), "flatpak", NULL)); } static void @@ -120,7 +115,6 @@ test_system_installation (void) g_autoptr(FlatpakInstallation) inst = NULL; g_autoptr(GError) error = NULL; g_autoptr(GFile) dir = NULL; - g_autofree char *path = NULL; inst = flatpak_installation_new_system (NULL, &error); g_assert_no_error (error); @@ -129,8 +123,7 @@ test_system_installation (void) g_assert_false (flatpak_installation_get_is_user (inst)); dir = flatpak_installation_get_path (inst); - path = g_file_get_path (dir); - g_assert_cmpstr (path, ==, flatpak_systemdir); + assert_cmpstr_free_lhs (g_file_get_path (dir), ==, flatpak_systemdir); } static void @@ -207,7 +200,6 @@ test_installation_config (void) g_autofree char *path = NULL; g_autoptr(GFile) file = NULL; g_autoptr(GError) error = NULL; - g_autofree char *value = NULL; gboolean res; guint64 bytes; @@ -217,8 +209,8 @@ test_installation_config (void) g_assert_no_error (error); g_assert_nonnull (inst); - value = flatpak_installation_get_config (inst, "test", NULL, &error); - g_assert_null (value); + assert_cmpstr_free_lhs (flatpak_installation_get_config (inst, "test", NULL, &error), + ==, NULL); g_assert_error (error, G_KEY_FILE_ERROR, G_KEY_FILE_ERROR_KEY_NOT_FOUND); g_clear_error (&error); @@ -226,10 +218,9 @@ test_installation_config (void) g_assert_true (res); g_assert_no_error (error); - value = flatpak_installation_get_config (inst, "test", NULL, &error); - g_assert_cmpstr (value, ==, "hello"); + assert_cmpstr_free_lhs (flatpak_installation_get_config (inst, "test", NULL, &error), + ==, "hello"); g_assert_no_error (error); - g_clear_pointer (&value, g_free); g_clear_object (&inst); @@ -237,10 +228,9 @@ test_installation_config (void) g_assert_no_error (error); g_assert_nonnull (inst); - value = flatpak_installation_get_config (inst, "test", NULL, &error); - g_assert_cmpstr (value, ==, "hello"); + assert_cmpstr_free_lhs (flatpak_installation_get_config (inst, "test", NULL, &error), + ==, "hello"); g_assert_no_error (error); - g_clear_pointer (&value, g_free); res = flatpak_installation_get_min_free_space_bytes (inst, &bytes, &error); g_assert_true (res); @@ -366,7 +356,6 @@ test_ref (void) { g_autoptr(FlatpakRef) ref = NULL; g_autoptr(GError) error = NULL; - g_autofree char *formatted = NULL; const char *valid; FlatpakRefKind kind; g_autofree char *name = NULL; @@ -455,9 +444,7 @@ test_ref (void) g_assert_cmpstr (flatpak_ref_get_branch (ref), ==, "master"); g_assert_null (flatpak_ref_get_collection_id (ref)); - formatted = flatpak_ref_format_ref (ref); - g_assert_cmpstr (formatted, ==, valid); - g_clear_pointer (&formatted, g_free); + assert_cmpstr_free_lhs (flatpak_ref_format_ref (ref), ==, valid); g_clear_object (&ref); @@ -481,9 +468,7 @@ test_ref (void) g_assert_null (commit); g_assert_null (collection_id); - formatted = flatpak_ref_format_ref (ref); - g_assert_cmpstr (formatted, ==, valid); - g_clear_pointer (&formatted, g_free); + assert_cmpstr_free_lhs (flatpak_ref_format_ref (ref), ==, valid); g_clear_object (&ref); @@ -543,10 +528,11 @@ test_list_remotes (void) { FlatpakRemote *remote1 = g_ptr_array_index (remotes, i); FlatpakRemote *remote2 = g_ptr_array_index (remotes2, i); + g_assert_cmpstr (flatpak_remote_get_name (remote1), ==, flatpak_remote_get_name (remote2)); - g_assert_cmpstr (flatpak_remote_get_url (remote1), ==, - flatpak_remote_get_url (remote2)); + assert_cmpstr_free_both (flatpak_remote_get_url (remote1), ==, + flatpak_remote_get_url (remote2)); } g_ptr_array_unref (remotes2); @@ -579,15 +565,15 @@ test_remote_by_name (void) g_assert_true (FLATPAK_IS_REMOTE (remote)); g_assert_cmpstr (flatpak_remote_get_name (remote), ==, repo_name); - g_assert_cmpstr (flatpak_remote_get_url (remote), ==, repo_url); - g_assert_cmpstr (flatpak_remote_get_title (remote), ==, NULL); + assert_cmpstr_free_lhs (flatpak_remote_get_url (remote), ==, repo_url); + assert_cmpstr_free_lhs (flatpak_remote_get_title (remote), ==, NULL); g_assert_cmpint (flatpak_remote_get_remote_type (remote), ==, FLATPAK_REMOTE_TYPE_STATIC); g_assert_false (flatpak_remote_get_noenumerate (remote)); g_assert_false (flatpak_remote_get_disabled (remote)); g_assert_true (flatpak_remote_get_gpg_verify (remote)); g_assert_cmpint (flatpak_remote_get_prio (remote), ==, 1); - g_assert_cmpstr (flatpak_remote_get_collection_id (remote), ==, repo_collection_id); + assert_cmpstr_free_lhs (flatpak_remote_get_collection_id (remote), ==, repo_collection_id); g_object_get (remote, "name", &name, @@ -623,7 +609,7 @@ test_remote (void) remote = flatpak_installation_get_remote_by_name (inst, repo_name, NULL, &error); g_assert_no_error (error); - g_assert_cmpstr (flatpak_remote_get_collection_id (remote), ==, repo_collection_id); + assert_cmpstr_free_lhs (flatpak_remote_get_collection_id (remote), ==, repo_collection_id); /* Flatpak doesn't provide access to gpg-verify-summary, so use ostree */ res = flatpak_installation_modify_remote (inst, remote, NULL, &error); @@ -656,11 +642,11 @@ test_remote (void) g_assert_true (gpg_verify_summary); flatpak_remote_set_collection_id (remote, repo_collection_id); - g_assert_cmpstr (flatpak_remote_get_collection_id (remote), ==, repo_collection_id); + assert_cmpstr_free_lhs (flatpak_remote_get_collection_id (remote), ==, repo_collection_id); g_assert_cmpstr (flatpak_remote_get_title (remote), ==, NULL); flatpak_remote_set_title (remote, "Test Repo"); - g_assert_cmpstr (flatpak_remote_get_title (remote), ==, "Test Repo"); + assert_cmpstr_free_lhs (flatpak_remote_get_title (remote), ==, "Test Repo"); g_assert_cmpint (flatpak_remote_get_prio (remote), ==, 1); flatpak_remote_set_prio (remote, 15); @@ -680,7 +666,7 @@ test_remote (void) g_assert_null (flatpak_remote_get_default_branch (remote)); flatpak_remote_set_default_branch (remote, "master"); - g_assert_cmpstr (flatpak_remote_get_default_branch (remote), ==, "master"); + assert_cmpstr_free_lhs (flatpak_remote_get_default_branch (remote), ==, "master"); /* It should be an error to disable GPG while a collection ID is set. */ g_assert_true (flatpak_remote_get_gpg_verify (remote)); @@ -705,12 +691,12 @@ test_remote (void) remote = flatpak_installation_get_remote_by_name (inst, repo_name, NULL, &error); g_assert_no_error (error); - g_assert_cmpstr (flatpak_remote_get_title (remote), ==, "Test Repo"); + assert_cmpstr_free_lhs (flatpak_remote_get_title (remote), ==, "Test Repo"); g_assert_cmpint (flatpak_remote_get_prio (remote), ==, 15); g_assert_true (flatpak_remote_get_noenumerate (remote)); g_assert_true (flatpak_remote_get_nodeps (remote)); g_assert_false (flatpak_remote_get_gpg_verify (remote)); - g_assert_cmpstr (flatpak_remote_get_default_branch (remote), ==, "master"); + assert_cmpstr_free_lhs (flatpak_remote_get_default_branch (remote), ==, "master"); /* back to defaults */ flatpak_remote_set_title (remote, NULL); @@ -773,7 +759,7 @@ test_remote_new (void) remote = flatpak_installation_get_remote_by_name (inst, "my-first-remote", NULL, &error); g_assert_no_error (error); - g_assert_cmpstr (flatpak_remote_get_url (remote), ==, "http://127.0.0.1/nowhere"); + assert_cmpstr_free_lhs (flatpak_remote_get_url (remote), ==, "http://127.0.0.1/nowhere"); g_clear_object (&remote); @@ -796,7 +782,7 @@ test_remote_new (void) g_assert_no_error (error); /* Should be the old value */ - g_assert_cmpstr (flatpak_remote_get_url (remote), ==, "http://127.0.0.1/nowhere"); + assert_cmpstr_free_lhs (flatpak_remote_get_url (remote), ==, "http://127.0.0.1/nowhere"); g_clear_object (&remote); @@ -874,13 +860,13 @@ test_remote_new_from_file (void) remote = flatpak_installation_get_remote_by_name (inst, "file-remote", NULL, &error); g_assert_no_error (error); - g_assert_cmpstr (flatpak_remote_get_url (remote), ==, "http://127.0.0.1/repo"); - g_assert_cmpstr (flatpak_remote_get_title (remote), ==, "The Title"); - g_assert_cmpstr (flatpak_remote_get_comment (remote), ==, "The Comment"); - g_assert_cmpstr (flatpak_remote_get_description (remote), ==, "The Description"); - g_assert_cmpstr (flatpak_remote_get_homepage (remote), ==, "https://the.homepage/"); - g_assert_cmpstr (flatpak_remote_get_icon (remote), ==, "https://the.icon/"); - g_assert_cmpstr (flatpak_remote_get_default_branch (remote), ==, "default-branch"); + assert_cmpstr_free_lhs (flatpak_remote_get_url (remote), ==, "http://127.0.0.1/repo"); + assert_cmpstr_free_lhs (flatpak_remote_get_title (remote), ==, "The Title"); + assert_cmpstr_free_lhs (flatpak_remote_get_comment (remote), ==, "The Comment"); + assert_cmpstr_free_lhs (flatpak_remote_get_description (remote), ==, "The Description"); + assert_cmpstr_free_lhs (flatpak_remote_get_homepage (remote), ==, "https://the.homepage/"); + assert_cmpstr_free_lhs (flatpak_remote_get_icon (remote), ==, "https://the.icon/"); + assert_cmpstr_free_lhs (flatpak_remote_get_default_branch (remote), ==, "default-branch"); g_assert_cmpint (flatpak_remote_get_nodeps (remote), ==, TRUE); g_clear_object (&remote); @@ -902,8 +888,8 @@ test_remote_new_from_file (void) remote = flatpak_installation_get_remote_by_name (inst, "file-remote", NULL, &error); g_assert_no_error (error); - g_assert_cmpstr (flatpak_remote_get_url (remote), ==, "http://127.0.0.1/other"); - g_assert_cmpstr (flatpak_remote_get_filter (remote), ==, "/some/path/to/filter"); + assert_cmpstr_free_lhs (flatpak_remote_get_url (remote), ==, "http://127.0.0.1/other"); + assert_cmpstr_free_lhs (flatpak_remote_get_filter (remote), ==, "/some/path/to/filter"); g_clear_object (&remote); @@ -927,8 +913,8 @@ test_remote_new_from_file (void) remote = flatpak_installation_get_remote_by_name (inst, "file-remote", NULL, &error); g_assert_no_error (error); - g_assert_cmpstr (flatpak_remote_get_url (remote), ==, "http://127.0.0.1/other"); - g_assert_cmpstr (flatpak_remote_get_filter (remote), ==, NULL); + assert_cmpstr_free_lhs (flatpak_remote_get_url (remote), ==, "http://127.0.0.1/other"); + assert_cmpstr_free_lhs (flatpak_remote_get_filter (remote), ==, NULL); g_clear_object (&remote); @@ -1220,7 +1206,7 @@ test_update_installed_ref_if_missing_runtime (void) G_GNUC_END_IGNORE_DEPRECATIONS g_assert_no_error (error); g_assert_true (FLATPAK_IS_INSTALLED_REF (iref)); - iref = NULL; + g_clear_object (&iref); /* Install the Locale extension */ G_GNUC_BEGIN_IGNORE_DEPRECATIONS @@ -1234,7 +1220,7 @@ test_update_installed_ref_if_missing_runtime (void) G_GNUC_END_IGNORE_DEPRECATIONS g_assert_no_error (error); g_assert_true (FLATPAK_IS_INSTALLED_REF (iref)); - iref = NULL; + g_clear_object (&iref); updatable_refs = flatpak_installation_list_installed_refs_for_update (inst, NULL, &error); g_assert_cmpint (updatable_refs->len, ==, 1); @@ -1259,6 +1245,7 @@ test_update_installed_ref_if_missing_runtime (void) iref = flatpak_installation_get_installed_ref (inst, FLATPAK_REF_KIND_RUNTIME, "org.test.Platform", NULL, NULL, NULL, &error); g_assert_nonnull (iref); g_assert_no_error (error); + g_clear_object (&iref); } static void @@ -1434,6 +1421,7 @@ test_list_remote_related_refs (void) g_assert_true (should_download); g_assert_true (should_delete); g_assert_false (should_autoprune); + g_clear_pointer (&subpaths, g_strfreev); ref = g_ptr_array_index (refs, 1); g_assert_cmpstr (flatpak_ref_get_name (FLATPAK_REF (ref)), ==, "org.test.Hello.Plugin.fun"); @@ -1623,8 +1611,6 @@ test_install_launch_uninstall (void) g_autoptr(FlatpakInstalledRef) runtime_ref = NULL; FlatpakInstalledRef *ref1 = NULL; GPtrArray *refs = NULL; - g_autofree char *s = NULL; - g_autofree char *s1 = NULL; int progress_count, changed_count; gboolean timeout_reached; guint timeout_id; @@ -1692,10 +1678,8 @@ test_install_launch_uninstall (void) ref1 = g_ptr_array_index (refs, 0); g_assert_cmpstr (flatpak_ref_get_commit (FLATPAK_REF (ref1)), ==, flatpak_ref_get_commit (FLATPAK_REF (ref))); - s = flatpak_ref_format_ref (FLATPAK_REF (ref)); - s1 = flatpak_ref_format_ref (FLATPAK_REF (ref1)); - g_assert_cmpstr (s, ==, s1); - + assert_cmpstr_free_both (flatpak_ref_format_ref (FLATPAK_REF (ref)), ==, + flatpak_ref_format_ref (FLATPAK_REF (ref1))); g_ptr_array_unref (refs); runtime_ref = g_object_ref (ref); @@ -1961,6 +1945,7 @@ mangle_deploy_file (FlatpakInstalledRef *ref) GVariantBuilder metadata_builder; g_autoptr(GError) error = NULL; const char * const previous_ids[] = { "net.example.Goodbye", NULL }; + g_autofree const char **subpaths = NULL; dir = g_file_new_for_path (flatpak_installed_ref_get_deploy_dir (ref)); data = flatpak_load_deploy_data (dir); @@ -1971,9 +1956,10 @@ mangle_deploy_file (FlatpakInstalledRef *ref) g_variant_builder_add (&metadata_builder, "{s@v}", "previous-ids", g_variant_new_variant (g_variant_new_strv (previous_ids, -1))); + subpaths = flatpak_deploy_data_get_subpaths (data); new_data = flatpak_dir_new_deploy_data (flatpak_deploy_data_get_origin (data), flatpak_deploy_data_get_commit (data), - (char **) flatpak_deploy_data_get_subpaths (data), + (char **) subpaths, flatpak_deploy_data_get_installed_size (data), g_variant_builder_end (&metadata_builder)); @@ -2382,7 +2368,7 @@ make_bundle (void) argv[2] = arg2; argv[4] = file; - g_debug ("Making dir %s", path); + g_info ("Making dir %s", path); g_mkdir_with_parents (path, S_IRWXU | S_IRWXG | S_IRWXO); run_test_subprocess (argv, RUN_TEST_SUBPROCESS_DEFAULT); @@ -3013,7 +2999,6 @@ new_op (FlatpakTransaction *transaction, FlatpakTransactionOperation *op, FlatpakTransactionProgress *progress) { - g_autofree char *status = NULL; g_autoptr(FlatpakTransactionOperation) current = NULL; g_auto(GStrv) refs = NULL; @@ -3034,8 +3019,8 @@ new_op (FlatpakTransaction *transaction, g_assert_cmpint (flatpak_transaction_operation_get_operation_type (op), ==, FLATPAK_TRANSACTION_OPERATION_INSTALL); g_assert_true (g_strv_contains ((const gchar * const *) refs, flatpak_transaction_operation_get_ref (op))); - status = flatpak_transaction_progress_get_status (progress); - g_assert_cmpstr (status, ==, "Initializing"); + assert_cmpstr_free_lhs (flatpak_transaction_progress_get_status (progress), + ==, "Initializing"); g_assert_true (flatpak_transaction_progress_get_is_estimating (progress)); g_assert_cmpint (flatpak_transaction_progress_get_progress (progress), ==, 0); } @@ -3071,11 +3056,9 @@ op_done_no_change (FlatpakTransaction *transaction, const char *commit, int result) { - g_autofree char *app = NULL; - - app = g_strdup_printf ("app/org.test.Hello/%s/master", - flatpak_get_default_arch ()); - g_assert_cmpstr (flatpak_transaction_operation_get_ref (op), ==, app); + assert_cmpstr_free_rhs (flatpak_transaction_operation_get_ref (op), ==, + g_strdup_printf ("app/org.test.Hello/%s/master", + flatpak_get_default_arch ())); g_assert_cmpint (flatpak_transaction_operation_get_operation_type (op), ==, FLATPAK_TRANSACTION_OPERATION_UPDATE); g_assert_cmpint (result, ==, FLATPAK_TRANSACTION_RESULT_NO_CHANGE); } @@ -3086,11 +3069,9 @@ op_done_with_change (FlatpakTransaction *transaction, const char *commit, int result) { - g_autofree char *app = NULL; - - app = g_strdup_printf ("app/org.test.Hello/%s/master", - flatpak_get_default_arch ()); - g_assert_cmpstr (flatpak_transaction_operation_get_ref (op), ==, app); + assert_cmpstr_free_rhs (flatpak_transaction_operation_get_ref (op), ==, + g_strdup_printf ("app/org.test.Hello/%s/master", + flatpak_get_default_arch ())); g_assert_cmpint (flatpak_transaction_operation_get_operation_type (op), ==, FLATPAK_TRANSACTION_OPERATION_UPDATE); g_assert_cmpint (result, ==, 0); } @@ -3429,6 +3410,8 @@ test_transaction_install_uninstall (void) g_assert_no_error (error); g_assert_true (res); + g_clear_object (&transaction); + /* uninstall again, expect a not-installed error */ transaction = flatpak_transaction_new_for_installation (inst, NULL, &error); g_assert_no_error (error); @@ -3437,6 +3420,8 @@ test_transaction_install_uninstall (void) res = flatpak_transaction_add_uninstall (transaction, app, &error); g_assert_error (error, FLATPAK_ERROR, FLATPAK_ERROR_NOT_INSTALLED); g_assert_false (res); + + g_clear_object (&transaction); } static int remote_added; @@ -3695,18 +3680,16 @@ ready_check_origin_remote (FlatpakTransaction *transaction) g_autoptr(FlatpakRemoteRef) remote_ref = NULL; g_autoptr(FlatpakRemote) remote = NULL; g_autoptr(GError) error = NULL; - g_autofree char *app = NULL; - installation = flatpak_transaction_get_installation (transaction); - app = g_strdup_printf ("app/org.test.Hello/%s/master", - flatpak_get_default_arch ()); /* The remote should return the ref set as xa.main-ref on it despite having xa.noenumerate set */ remote = flatpak_installation_get_remote_by_name (installation, "hello-origin", NULL, &error); g_assert_no_error (error); g_assert_nonnull (remote); g_assert_true (flatpak_remote_get_noenumerate (remote)); - g_assert_cmpstr (flatpak_remote_get_main_ref (remote), ==, app); + assert_cmpstr_free_both (flatpak_remote_get_main_ref (remote), ==, + g_strdup_printf ("app/org.test.Hello/%s/master", + flatpak_get_default_arch ())); remote_ref = flatpak_installation_fetch_remote_ref_sync (installation, "hello-origin", @@ -3794,17 +3777,15 @@ check_ready1_abort (FlatpakTransaction *transaction) { GList *ops; FlatpakTransactionOperation *op; - g_autofree char *app = NULL; - - app = g_strdup_printf ("app/org.test.Hello/%s/master", - flatpak_get_default_arch ()); ops = flatpak_transaction_get_operations (transaction); g_assert_cmpint (g_list_length (ops), ==, 1); op = ops->data; g_assert_cmpint (flatpak_transaction_operation_get_operation_type (op), ==, FLATPAK_TRANSACTION_OPERATION_INSTALL); - g_assert_cmpstr (flatpak_transaction_operation_get_ref (op), ==, app); + assert_cmpstr_free_rhs (flatpak_transaction_operation_get_ref (op), ==, + g_strdup_printf ("app/org.test.Hello/%s/master", + flatpak_get_default_arch ())); g_list_free_full (ops, g_object_unref); @@ -3816,30 +3797,27 @@ check_ready3_abort (FlatpakTransaction *transaction) { GList *ops; FlatpakTransactionOperation *op; - g_autofree char *app = NULL; - g_autofree char *runtime = NULL; - g_autofree char *locale = NULL; - - app = g_strdup_printf ("app/org.test.Hello/%s/master", - flatpak_get_default_arch ()); - runtime = g_strdup_printf ("runtime/org.test.Platform/%s/master", - flatpak_get_default_arch ()); - locale = g_strdup_printf ("runtime/org.test.Hello.Locale/%s/master", - flatpak_get_default_arch ()); ops = flatpak_transaction_get_operations (transaction); g_assert_cmpint (g_list_length (ops), ==, 3); op = ops->data; g_assert_cmpint (flatpak_transaction_operation_get_operation_type (op), ==, FLATPAK_TRANSACTION_OPERATION_INSTALL); - g_assert_cmpstr (flatpak_transaction_operation_get_ref (op), ==, locale); + assert_cmpstr_free_rhs (flatpak_transaction_operation_get_ref (op), ==, + g_strdup_printf ("runtime/org.test.Hello.Locale/%s/master", + flatpak_get_default_arch ())); op = ops->next->data; g_assert_cmpint (flatpak_transaction_operation_get_operation_type (op), ==, FLATPAK_TRANSACTION_OPERATION_INSTALL); - g_assert_cmpstr (flatpak_transaction_operation_get_ref (op), ==, runtime); + assert_cmpstr_free_rhs (flatpak_transaction_operation_get_ref (op), ==, + g_strdup_printf ("runtime/org.test.Platform/%s/master", + flatpak_get_default_arch ())); + op = ops->next->next->data; g_assert_cmpint (flatpak_transaction_operation_get_operation_type (op), ==, FLATPAK_TRANSACTION_OPERATION_INSTALL); - g_assert_cmpstr (flatpak_transaction_operation_get_ref (op), ==, app); + assert_cmpstr_free_rhs (flatpak_transaction_operation_get_ref (op), ==, + g_strdup_printf ("app/org.test.Hello/%s/master", + flatpak_get_default_arch ())); g_list_free_full (ops, g_object_unref); @@ -4251,9 +4229,8 @@ test_instance (void) g_autoptr(GError) error = NULL; gboolean res; g_autoptr(GPtrArray) instances = NULL; - FlatpakInstance *instance; + g_autoptr(FlatpakInstance) instance = NULL; GKeyFile *info; - g_autofree char *value = NULL; int i; g_autofree char *app = NULL; g_autofree char *runtime = NULL; @@ -4317,12 +4294,10 @@ test_instance (void) g_assert_nonnull (flatpak_instance_get_id (instance)); info = flatpak_instance_get_info (instance); g_assert_nonnull (info); - value = g_key_file_get_string (info, "Application", "name", &error); - g_assert_cmpstr (value, ==, "org.test.Hello"); - g_clear_pointer (&value, g_free); - value = g_key_file_get_string (info, "Instance", "instance-id", &error); - g_assert_cmpstr (value, ==, flatpak_instance_get_id (instance)); - g_clear_pointer (&value, g_free); + assert_cmpstr_free_lhs (g_key_file_get_string (info, "Application", "name", &error), + ==, "org.test.Hello"); + assert_cmpstr_free_lhs (g_key_file_get_string (info, "Instance", "instance-id", &error), + ==, flatpak_instance_get_id (instance)); g_assert_cmpstr (flatpak_instance_get_app (instance), ==, "org.test.Hello"); g_assert_cmpstr (flatpak_instance_get_arch (instance), ==, @@ -4435,7 +4410,6 @@ test_overrides (void) g_autofree char *data = NULL; g_autoptr(GKeyFile) overrides = NULL; gboolean res; - g_autofree char *value = NULL; g_autoptr(FlatpakInstalledRef) ref = NULL; g_auto(GStrv) list = NULL; gsize len; @@ -4482,12 +4456,14 @@ test_overrides (void) G_GNUC_END_IGNORE_DEPRECATIONS g_assert_no_error (error); g_assert_nonnull (ref); + g_clear_object (&ref); G_GNUC_BEGIN_IGNORE_DEPRECATIONS ref = flatpak_installation_install (inst, repo_name, FLATPAK_REF_KIND_RUNTIME, "org.test.Platform", NULL, "master", NULL, NULL, NULL, &error); G_GNUC_END_IGNORE_DEPRECATIONS g_assert_no_error (error); g_assert_nonnull (ref); + g_clear_object (&ref); { TESTS_SCOPED_STDOUT_TO_STDERR; @@ -4505,13 +4481,11 @@ test_overrides (void) g_assert_no_error (error); g_assert_true (res); - value = g_key_file_get_string (overrides, "Context", "devices", &error); - g_assert_cmpstr (value, ==, "dri;!kvm;"); - g_clear_pointer (&value, g_free); + assert_cmpstr_free_lhs (g_key_file_get_string (overrides, "Context", "devices", &error), + ==, "dri;!kvm;"); - value = g_key_file_get_string (overrides, "Context", "features", &error); - g_assert_cmpstr (value, ==, "bluetooth;!canbus;"); - g_clear_pointer (&value, g_free); + assert_cmpstr_free_lhs (g_key_file_get_string (overrides, "Context", "features", &error), + ==, "bluetooth;!canbus;"); list = g_key_file_get_string_list (overrides, "Context", "filesystems", &len, &error); g_assert_cmpint (len, ==, 3); @@ -4526,17 +4500,14 @@ test_overrides (void) g_assert_true (g_strv_contains ((const char * const *) list, "!pulseaudio")); g_clear_pointer (&list, g_strfreev); - value = g_key_file_get_string (overrides, "Session Bus Policy", "hello.bla.bla.*", &error); - g_assert_cmpstr (value, ==, "talk"); - g_clear_pointer (&value, g_free); + assert_cmpstr_free_lhs (g_key_file_get_string (overrides, "Session Bus Policy", "hello.bla.bla.*", &error), + ==, "talk"); - value = g_key_file_get_string (overrides, "Session Bus Policy", "foo.bar.baz", &error); - g_assert_cmpstr (value, ==, "own"); - g_clear_pointer (&value, g_free); + assert_cmpstr_free_lhs (g_key_file_get_string (overrides, "Session Bus Policy", "foo.bar.baz", &error), + ==, "own"); - value = g_key_file_get_string (overrides, "Environment", "FOO", &error); - g_assert_cmpstr (value, ==, "BAR"); - g_clear_pointer (&value, g_free); + assert_cmpstr_free_lhs (g_key_file_get_string (overrides, "Environment", "FOO", &error), + ==, "BAR"); const char *argv2[] = { "flatpak", "override", "--user", "--reset", "org.test.Hello", NULL }; run_test_subprocess ((char **) argv2, RUN_TEST_SUBPROCESS_DEFAULT); @@ -4599,9 +4570,11 @@ test_bundle (void) icon = flatpak_bundle_ref_get_icon (ref, 64); g_assert_nonnull (icon); /* FIXME verify format */ + g_clear_pointer (&icon, g_bytes_unref); icon = flatpak_bundle_ref_get_icon (ref, 128); g_assert_null (icon); + g_clear_pointer (&icon, g_bytes_unref); g_clear_object (&file2); @@ -4737,6 +4710,8 @@ test_list_installed_related_refs (void) g_assert_true (g_strv_length ((char **) flatpak_related_ref_get_subpaths (ref)) == 1); g_assert_cmpstr (flatpak_related_ref_get_subpaths (ref)[0], ==, "/de"); + g_clear_pointer (&refs, g_ptr_array_unref); + // Make the test with extra-languages, instead of languages clean_languages(); configure_extra_languages(); diff --git a/tests/update-test-matrix b/tests/update-test-matrix index 04e6531..2aff6f0 100755 --- a/tests/update-test-matrix +++ b/tests/update-test-matrix @@ -36,4 +36,4 @@ TEST_MATRIX_SOURCE=( 'tests/test-repair.sh' \ ) -"${tests_srcdir}/expand-test-matrix.sh" --automake "${TEST_MATRIX_SOURCE[*]}" > "${tests_srcdir}/Makefile-test-matrix.am.inc" +"${tests_srcdir}/expand-test-matrix.sh" --meson "${TEST_MATRIX_SOURCE[*]}" > "${tests_srcdir}/test-matrix/meson.build" diff --git a/tools/usb/README.md b/tools/usb/README.md new file mode 100644 index 0000000..0cfe667 --- /dev/null +++ b/tools/usb/README.md @@ -0,0 +1,24 @@ +# USB device list generators + +These are examples of functional Python 3 scripts to generate the USB +devices lists from some well-known packages. + +## epsonscan2-parse.py + +This will generate the list for Epson Scan2 based on the udev rules +shipped with the package. + +## gphoto2-parse.py + +This will parse the output of `print-camera-list` from libgphoto to +generate the list of USB devices. + +## libsane-parse.py + +This will generate the list for SANE based on the udev rules shipped +with the package. + +## utsushi-parse.py + +This will parse the SANE .desc shipping with Utsushi to generate the +USB device list. diff --git a/tools/usb/epsonscan2-parse.py b/tools/usb/epsonscan2-parse.py new file mode 100755 index 0000000..d56a9aa --- /dev/null +++ b/tools/usb/epsonscan2-parse.py @@ -0,0 +1,43 @@ +#!/bin/env python3 +# +# Copyright © 2024 GNOME Foundation, Inc. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library. If not, see . +# +# Authors: +# Hubert Figuière +# +# Convert epsonscan2 rules. + + +import re + +vendor_match = re.compile(r"^ATTR\{idVendor\}!=\"([\dabcdef]*)\"") +device_match = re.compile(r"^ATTRS\{idProduct\}==\"([\dabcdef]*)\"") +file = open('epsonscan2.rules', 'r') + +vendor = 0 +while True: + line = file.readline() + if not line: + break + line = line.strip() + m = vendor_match.match(line) + if m is not None: + vendor = m.group(1) + continue + + m = device_match.match(line) + if m is not None: + print("--usb=vnd:{}+dev:{}".format(vendor, m.group(1))) diff --git a/tools/usb/gphoto2-parse.py b/tools/usb/gphoto2-parse.py new file mode 100755 index 0000000..f2b5ac3 --- /dev/null +++ b/tools/usb/gphoto2-parse.py @@ -0,0 +1,38 @@ +#!/bin/env python3 +# +# Copyright © 2024 GNOME Foundation, Inc. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library. If not, see . +# +# Authors: +# Hubert Figuière +# +# Convert the output of libgphoto2 print-camera-list. + +import subprocess +import re + +device_match = re.compile(r"^([\dabcdef]*):([\dabcdef]*)") +file = subprocess.Popen(['./packaging/generic/print-camera-list', 'idlist'], stdout=subprocess.PIPE).stdout + +vendor = 0 +while True: + line = file.readline() + if not line: + break + line = line.decode('utf-8') + m = device_match.match(line) + if m is not None: + print("--usb=vnd:{}+dev:{}".format(m.group(1), m.group(2))) + print("--usb=cls:6") diff --git a/tools/usb/libsane-parse.py b/tools/usb/libsane-parse.py new file mode 100755 index 0000000..f590570 --- /dev/null +++ b/tools/usb/libsane-parse.py @@ -0,0 +1,37 @@ +#!/bin/env python3 +# +# Copyright © 2024 GNOME Foundation, Inc. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library. If not, see . +# +# Authors: +# Hubert Figuière +# +# Convert libsane udev rules. + +import re + +device_match = re.compile(r"ATTR\{idVendor\}==\"([\dabcdef]*)\",[\s]*ATTR\{idProduct\}==\"([\dabcdef]*)\"") +file = open('libsane.rules', 'r') + +vendor = 0 +while True: + line = file.readline() + if not line: + break + + m = device_match.match(line) + if m is not None: + print("--usb=vnd:{}+dev:{}".format(m.group(1), m.group(2))) + diff --git a/tools/usb/utsushi-parse.py b/tools/usb/utsushi-parse.py new file mode 100755 index 0000000..d292e7b --- /dev/null +++ b/tools/usb/utsushi-parse.py @@ -0,0 +1,36 @@ +#!/bin/env python3 +# +# Copyright © 2024 GNOME Foundation, Inc. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library. If not, see . +# +# Authors: +# Hubert Figuière +# +# Convert utsushi device list (SANE .desc). + +import subprocess +import re + +device_match = re.compile(r"^:usbid[\s]+\"0x([\dabcdef]*)\"[\s]+\"0x([\dabcdef]*)\"") +file = open('sane/utsushi.desc', 'r') + +vendor = 0 +while True: + line = file.readline() + if not line: + break + m = device_match.match(line) + if m is not None: + print("--usb=vnd:{}+dev:{}".format(m.group(1), m.group(2))) diff --git a/triggers/meson.build b/triggers/meson.build new file mode 100644 index 0000000..f9f81a3 --- /dev/null +++ b/triggers/meson.build @@ -0,0 +1,9 @@ +# Copyright 2022 Collabora Ltd. +# SPDX-License-Identifier: LGPL-2.1-or-later + +install_data( + 'desktop-database.trigger', + 'gtk-icon-cache.trigger', + 'mime-database.trigger', + install_dir : get_option('datadir') / 'flatpak' / 'triggers', +) diff --git a/uncrustify.cfg b/uncrustify.cfg new file mode 100644 index 0000000..0b936b8 --- /dev/null +++ b/uncrustify.cfg @@ -0,0 +1,139 @@ +newlines lf + +input_tab_size 8 +output_tab_size 8 + +string_escape_char 92 +string_escape_char2 0 + +# indenting +indent_columns 2 +indent_with_tabs 0 +indent_align_string True +indent_brace 2 +indent_braces false +indent_braces_no_func True +indent_func_call_param false +indent_func_def_param false +indent_func_proto_param false +indent_switch_case 0 +indent_case_brace 2 +indent_paren_close 1 + +# spacing +sp_arith Add +sp_assign Add +sp_enum_assign Add +sp_bool Add +sp_compare Add +sp_inside_paren Remove +sp_inside_fparens Remove +sp_func_def_paren Force +sp_func_proto_paren Force +sp_paren_paren Remove +sp_balance_nested_parens False +sp_paren_brace Remove +sp_before_square Remove +sp_before_squares Remove +sp_inside_square Remove +sp_before_ptr_star Add +sp_between_ptr_star Remove +sp_after_comma Add +sp_before_comma Remove +sp_after_cast Add +sp_sizeof_paren Add +sp_not Remove +sp_inv Remove +sp_addr Remove +sp_member Remove +sp_deref Remove +sp_sign Remove +sp_incdec Remove +sp_attribute_paren remove +sp_macro Force +sp_func_call_paren Force +sp_func_call_user_paren Remove +set func_call_user _ N_ C_ g_autoptr g_auto +sp_brace_typedef add +sp_cond_colon add +sp_cond_question add +sp_defined_paren remove + +# alignment +align_keep_tabs False +align_with_tabs False +align_on_tabstop False +align_number_left True +align_func_params True +align_var_def_span 0 +align_var_def_amp_style 1 +align_var_def_colon true +align_enum_equ_span 0 +align_var_struct_span 2 +align_var_def_star_style 2 +align_var_def_amp_style 2 +align_typedef_span 2 +align_typedef_func 0 +align_typedef_star_style 2 +align_typedef_amp_style 2 + +# newlines +nl_assign_leave_one_liners True +nl_enum_leave_one_liners False +nl_func_leave_one_liners False +nl_if_leave_one_liners False +nl_end_of_file Add +nl_assign_brace Remove +nl_fcall_brace Add +nl_enum_brace Remove +nl_struct_brace Force +nl_union_brace Force +nl_if_brace Force +nl_brace_else Force +nl_elseif_brace Force +nl_else_brace Add +nl_for_brace Force +nl_while_brace Force +nl_do_brace Force +nl_brace_while Force +nl_switch_brace Force +nl_before_case True +nl_after_case False +nl_func_type_name Force +nl_func_proto_type_name Remove +nl_func_paren Remove +nl_func_decl_start Remove +nl_func_decl_args Force +nl_func_decl_end Remove +nl_fdef_brace Force +nl_after_return False +nl_define_macro False +nl_create_if_one_liner False +nl_create_for_one_liner False +nl_create_while_one_liner False +nl_after_semicolon True +nl_multi_line_cond true + +eat_blanks_after_open_brace true +eat_blanks_before_close_brace true + +# mod +# I'd like these to be remove, but that removes brackets in if { if { foo } }, which i dislike +# Not clear what to do about that... +#mod_full_brace_for Remove +#mod_full_brace_if Remove +#mod_full_brace_if_chain True +#mod_full_brace_while Remove +#mod_full_brace_do Remove +#mod_full_brace_nl 3 + +mod_paren_on_return Remove + +# line splitting +#code_width = 78 +ls_for_split_full True +ls_func_split_full True + +# positioning +pos_bool Trail +pos_conditional Trail diff --git a/uncrustify.sh b/uncrustify.sh new file mode 100755 index 0000000..4f7a93c --- /dev/null +++ b/uncrustify.sh @@ -0,0 +1,2 @@ +#!/bin/sh +uncrustify -c uncrustify.cfg --no-backup `git ls-tree --name-only -r HEAD | grep \\\.[ch]$ | grep -v common/valgrind-private.h | grep -v app/flatpak-polkit-agent-text-listener\\\.[ch]`